ORIGIN
DESCRIPTION.
L'instruction ORIGIN définit les nouvelles coordonnées, dans la fenêtre de sortie, du point d'origine.
SYNTAXE.
ORIGIN abscisse , ordonnee
REMARQUES.
abscisse et ordonnee doivent être des nombres entiers compris entre −32768 et +32767.
abscisse définit la nouvelle position horizontale du point d'origine, c'est-à-dire sa distance en pixels de la bordure gauche de la fenêtre de sortie.
ordonnee définit la nouvelle position verticale du point d'origine, c'est-à-dire sa distance en pixels de la bordure basse de la fenêtre de sortie.
Par défaut, le point d'origine des dessins est situé à l'intersection des bordures gauche et basse de la fenêtre, le coin inférieur gauche :
- une abscisse est 0 au point origine et :
- augment en se déplaçant vers la droite ;
- diminue en se déplaçant vers la gauche ;
- une ordonnée est 0 au point origine et :
- augment en se déplaçant vers le haut ;
- diminue en se déplaçant vers le bas ;
L'instruction ORIGIN permet de définir les coordonnées du point d'origine, c'est-à-dire le point de la fenêtre qui aura les coordonnées : 0,0. Ces coordonnées peuvent se trouver en dehors de la fenêtre de sortie, mais doivent toujours être comprises entre −32768 et +32767.
Pour connaitre les coordonnées actuelles du point d'origine, par rapport au coin inférieur-gauche de la fenêtre de sortie, on utilisera les variables système :
- @vdu.o.x% , pour obtenir l'abscisse actuelle du point d'origine ;
- @vdu.o.y% , pour obtenir l'ordonnée actuelle du point d'origine.
Rappel : quand on fait appel à une variable système, il est conseillé de fait marque une légère pause au programme avec la fonction WAIT() afin de s'assurer que les traitements en cours sont bien terminés et que les valeurs de ces variables ont bien été mise à jour.
L'origine graphique sera réinitialisée dans le coin inférieur-gauche de la fenêtre de sortie par une instruction MODE ou une commande VDU 26.
ATTENTION : Si les caractéristiques de la surface graphique ont été modifiées avec une commande VDU 24, le point d'origine des graphismes peut se trouver en dehors de la surface graphique.
Pour modifier les caractéristiques de la surface graphique dans la fenêtre de sortie, on utilisera la commande VDU 24 , gauche ; bas ; droite ; haut ;. gauche, bas, droite et haut doivent être exprimés en fonction des coordonnées du point d'origine graphique. Il est donc vivement conseillé d'utiliser l'instruction ORIGIN 0 , 0 avant la commande VDU 24, pour s'assurer que le point d'origine graphique est bien repositionnée dans le coin inférieur gauche de la fenêtre de sortie.
Si la fenêtre est redimensionnée par l'utilisateur, à l'aide de la souris par exemple, la distance du point d'origine avec le coin supérieur-gauche, en haut à gauche, n'est pas modifiée.
Rappel : Avec BBC BASIC SDL 2.0 une points graphique corresponds en réalité à deux pixels. Par exemple, en MODE 8, la fenêtre de sortie a une surface graphique de 640 x 512 points graphiques soit une surface d'image de 1280 x 1024 pixels. Comme les valeurs retournées par certaines variables système sont exprimées en points graphiques, il faudra les multiplier par 2 pour obtenir le nombre de pixels équivalents. Pour pallier à cet inconvénient, il est fortement recommandé de n'utiliser que des valeurs pairs pour désigner les coordonnées des tracés et des dessins.
Rappel : Les dessins et les tracés ne sont affichés qu'à l'intérieur de la surface graphique. Tous points à afficher ayant des coordonnées en dehors de celle-ci seront ignorés, même s'ils sont à l'intérieur de la fenêtre de sortie. Voir la rubrique dessins et graphismes pour plus de détails.
ORIGIN abscisse , ordonnee est un synonyme de la commande VDU 29 , abscisse , ordonnee.
RUBRIQUES.
Les dessins et les graphismes pour plus de détails sur la création de dessins et de graphismes.
EXEMPLE.
MODE 8
CIRCLE FILL 640 , 512 , 10 : REM - dessine un repere au centre de la fenetre de sortie
FOR kabscisse = 350 TO 1280 STEP 35
kordonnee = RND( 1024 )
ORIGIN kabscisse , kordonnee : REM - deplace le point d'origine des future dessins
CIRCLE 0 , 0 , 3 : REM - dessine un repere autour du nouveau point d'origine
WAIT( 10 ) : REM - marque une legere pause pour mettre à jour les variables systeme
PRINT @vdu.o.x% , @vdu.o.y% : REM - affiche l'abscisse et l'ordonnee du point d'origine
NEXT kabscisse
END
Votre aide est précieuse pour améliorer ce site, alors n'hésitez pas à faire part de
Dans la RETROGICIEL vous trouvez des suggestions simples et classiques pour
TESTER - DÉCOUVRIR - PRATIQUER - APPROFONDIR - EXPLORER
avec un exemple de résolution à télécharger pour vous inspirer.