ELLIPSE
DESCRIPTION.
L'instruction ELLIPSE permet de créer des ellipses de la couleur d'avant-plan, dans les axes de la fenêtre de sortie.
L'instruction ELLIPSE FILL permet de créer des ellipses pleines de la couleur d'avant-plan, dans les axes de la fenêtre de sortie.
SYNTAXE.
ELLIPSE abscisse , ordonnee , largeur , hauteur
ELLIPSE FILL abscisse , ordonnee , largeur , hauteur
REMARQUES.
abscisse, ordonnee, largeur et hauteur doivent être des nombres entiers compris entre −32768 et +32767.
abscisse est l'abscisse du centre de l'ellipse.
ordonnee est l'ordonnée du centre de l'ellipse.
largeur est la taille, en pixels, rayon horizontal.
hauteur est la taille, en pixels, rayon vertical.
Les ellipses tracées avec ELLIPSE ou avec ELLIPSE FILL sont toujours dessinées dans les axes de la fenêtre de sortie.
Important : Après que le tracé soit effectué, les coordonnées du centre deviennent celles du curseur graphique.
Par défaut, tous les tracés l'épaisseur des traits est de 1 pixel. Pour modifier cette épaisseur, on doit utiliser la commande VDU 23 , 23 , epaisseur ou VDU 23 , 23 , epaisseur , 0 , 0 , 0, où epaisseur est un nombre entier définissant la nouvelle épaisseur des tracés à venir. Voir la commande VDU pour plus de détails.
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.
La qualité des tracés et des couleurs dépendent beaucoup du MODE utilisé, mais aussi du matériel et de l'environnement : Linux, Windows, navigateur, ... sur lequel le programme est exécuté. Dans certains cas, des tracés, des figures, voire des coloriages peuvent ne pas être affichés, sans qu'une erreur de script en soit responsable.
Voir le module ellipse.bbc qui permet de dessiner des ellipses inclinées par rapport à l'axe des abscisses.
Voir la procédure PROC_aaellipsefill() du module aagfxlib.bbc qui permet de dessiner une ellipse angulaire remplie.
RUBRIQUES.
Les dessins et les graphismes pour plus de détails sur la création de dessins et de graphismes.
La gestion des couleurs pour plus de détails sur la gestion des couleurs logiques et physiques.
EXEMPLE.
REM --- Initialisation ---
MODE 8
ktype$ = "V"
REM --- Boucle principale ---
REPEAT
REM --- Choix et controle du type de figure ---
PRINT "Entrez V pour dessiner une ellipse vide ou "
PRINT "Entrez P pour dessiner une ellipse pleine ou "
INPUT "Entrez Q pour Quitter " , kchoix$
IF kchoix$ = "Q" OR kchoix$ = "q" THEN EXIT REPEAT
IF kchoix$ = "V" OR kchoix$ = "v" OR kchoix$ = "P" OR kchoix$ = "p" THEN ktype$ = kchoix$
REM --- Choix et controle de l'abscisse ---
INPUT "Entrez l'abscisse (1 a 1279) ... " , kabscisse
IF kabscisse < 1 OR kabscisse > 1279 THEN kabscisse = 639
REM --- Choix et controle de l'abscisse ---
INPUT "Entrez l'ordonnee (1 a 1023) ... " , kordonnee
IF kordonnee < 1 OR kordonnee > 1023 THEN kordonnee = 511
REM --- Choix et controle de la largeur ---
INPUT "Entrez le rayon horizontal (10 a 500) ... " , klargeur
IF klargeur < 10 OR klargeur > 500 THEN klargeur = 250
REM --- Choix et controle de la hauteur---
INPUT "Entrez le rayon horizontal (10 a 500) ... " , khauteur
IF khauteur < 10 OR khauteur > 500 THEN khauteur = 250
REM --- Choix et controle de la couleur ---
INPUT "Entrez la couleur (1 a 15) ... " , kcouleur
IF kcouleur < 1 OR kcouleur > 15 THEN kcouleur = 3
GCOL kcouleur
CLS : CLG
REM --- Dessin ---
IF ktype$ = "V" OR kchoix$ = "v" THEN
ELLIPSE kabscisse , kordonnee , klargeur , khauteur
PRINT "ELLIPSE " ; kabscisse ; " , " ; kordonnee ; " , " ; klargeur ; " , " ; khauteur
ELSE
ELLIPSE FILL kabscisse , kordonnee , klargeur , khauteur
PRINT "ELLIPSE FILL " ; kabscisse ; " , " ; kordonnee ; " , " ; klargeur ; " , " ; khauteur
ENDIF
UNTIL FALSE
REM --- Fin du programme ---
PRINT "Test fini. Au revoir."
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.