Manuel Amos Professional  Sommaire  Index

Sprites Materiels


X HARD
fonction : convertir une coordonnee x ecran en coordonnee x materiel
x=X Hard(xcoordonnee)
x=X Hard(numero ecran,xcoordonnee)

Y HARD
fonction : convertir une coordonnee y ecran en coordonnee y materiel
y=Y Hard(ycoordonnee)
y=Y Hard(numero ecran,ycoordonnee)

Ces fonctions convertissent des coordonnees ecran en coordonnees materiel, relatives a l ecran courant. Comme pour X SCREEN et Y SCREEN, un numero d ecran optionnel peut etre donne, auquel cas les coordonnees seront relatives a cet ecran.

Avec ces quatre fonctions, des valeurs coherentes ne peuvent etre obtenues que si l ecran concerne a ete completement initialise. Les commandes SCREEN OPEN et SCREEN DISPLAY ne prennent effet qu au prochain blanc vertical (vertical blank), et les exemples suivants montrent que les bonnes coordonnees (ici 128,50) ne sont retournees qu apres un appel a WAIT VBL.

E> Screen Open 0,320,255,16,Lowres
   Print X Hard(0,0); Y Hard(0,0)

Voici maintenant la version correcte :

E> Screen Open 0,320,255,16,Lowres
   Wait Vbl
   Print X Hard(0,0); Y Hard(0,0)

L ecran par defaut est initialement positionne a la coordonnee materielle (128,50), et si vous trouvez fastidieux ce systeme de conversion entre coordonnees ecran et coordonnees materiel, vous pouvez l ignorer completement.

En definissant le HOT SPOT de vos images de sprite a (-128,-50), le point de reference pour les calculs de position est deplace dans le coin le plus eloigne de l affichage. Une fois l image preparee de cette maniere, elle peut etre assignee a un sprite et deplacee en utilisant les coordonnees ecran normales. Par exemple :

X> Hot Spot 1,-128,-50 : Rem Definir le hot spot
   Sprite 8,160,100,1 : Rem Sprite 8 aux coords ecran 160,100

Le Hot Spot
Chaque fois qu une image est affichee a l ecran via les commandes SPRITE ou BOB, elle est positionnee en utilisant un point de reference invisible appele "hot spot". Ce point de reference est utilise pour tous les calculs de coordonnees.

Retour    Suivant
07.01.10