Search this site
Embedded Files
Mon BBC SDL pas à pas
  • Accueil
  • BBC BASIC
  • BBC OS
  • BBC MODULES
  • RUBRIQUES
  • LIENS
Mon BBC SDL pas à pas
  • Accueil
  • BBC BASIC
  • BBC OS
  • BBC MODULES
  • RUBRIQUES
  • LIENS
  • More
    • Accueil
    • BBC BASIC
    • BBC OS
    • BBC MODULES
    • RUBRIQUES
    • LIENS

⇨ MENU ⇨ BBC BASIC

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

vos remarques, vos commentaires et de vos suggestions.

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.

Google Sites
Report abuse
Page details
Page updated
Google Sites
Report abuse