# Programmation Basic Casio/Aspects graphiques

Informatique
Et maintenant, un tutoriel sur les possibilités de la programmation graphique, passionnante dans les calculatrices. Ce tutoriel n'est que valable pour les graph 85.
===> CORRECTION : ce tutoriel est aussi valable pour les graph 35+ ( et 35 aussi il me semble ) ainsi qu'en partie aux graph 25+

## L'écran

L'écran d'une calculatrice Casio (je parlerai de la graph 85 car c'est le modèle que j'ai) est divisé en pixel. Il comporte 127 colonnes de 63 pixels.
Pour définir ces points, nous utiliserons les mêmes coordonnées qu'en mathématiques, x et y, à l'exception d'un petit détail: le point d'origine est en haut à gauche... (que sur certaine calculatrices! Testez en faisant un PlotOn 5, 40 et vous verrez)
Ça donne à peu près ça:

## Le « View Window »

Pour afficher quoi que ce soit sur l'écran, vous devez d'abord définir le graphique: on utilise le « ViewWindow ».
ViewWindow: shift, F3, F1
Il faut écrire:
(ceci est le ViewWindow de base). Cependant on peut tres bien utiliser un ViewWindow tel que
Cependant il est assez rare d'utiliser un viewwindow de ce genre... (les valeurs que j'ai mises sont des exemples, elles n'ont rien de particulier)
À noter qu'un utilisateur ne sachant pas manipuler le ViewWindow de sa calculatrice (shift f3) aura des soucis pour tracer des graphiques après avoir utilisé votre programme si vous ne remettez le ViewWindow a sa valeur par défaut à la sortie du programme.

## Le « Text »

Pour afficher un texte, on utilise... le « Text ». Il est l'équivalent du Locate mais contrairement à celui-ci, marche sur les graphiques
Text <=> Graphiques;
Locate <=> Programme "standard"
Text: shift, F4, F6, F6, F2
Il faut écrire;
Oui on définit d'abord le y avant le x pour Text.
Pour locate on utilise
Attention, l'écran du locate n'est pas en 127/63 mais en 21/7 !

## Les « Plot »

Ils permettent d'afficher ou d'effacer un pixel de l'écran. Il y en a trois types:
Plot: shift, F4, F6, F1, F2 ou F3 ou F4
Il faut écrire;

## Les « F-Line »

Ils permettent de tracer des lignes, surprise !
F-Line: shift, F4, F6, F2, F2
On l'utilise de la manière suivante: F-Line [x du point de départ] , [y du point de départ] , [x du point d'arrivée] , [y du point d'arrivée]
Il faut écrire;
Bon, c'est tout ce que j'ai à vous raconter, prenez-en soin!

## La couleur

Si vous possédez une Graph65, Graph65+ ou Graph80 vous pouvez afficher 3 couleurs. On emploie pour ça les fonctions Blue, Green et Orange. Voici la syntaxe:

## Option graphique des Statistiques

En fait, si ce que vous chercher à faire est un jeu, vous vous rendrez vite compte que faire des graphisme en F-Line, c'est impossible. Pourquoi? Simplement parce que c'est trop lent. Il existe un moyen beaucoup plus puissant pour afficher ligne, point, croix... Il s'agit... du... DrawStat !
Qu'est-ce donc?! me direz vous, il s'agit simplement de tracer un graphique à partir des listes statistiques. Si on veut tracer une ligne de coordonnée A(15;20) B(45;50), à la place d'écrire
Qui est simple mais lent, il faudrait écrire
Mais c'est affreusement long !... Certes, pour afficher une ligne ça n'a que peu d'intérêt, mais si cette ligne doit ce déplacer, cela aura déjà un impact significatif sur la fluidité! D'ailleurs, dans les jeux, le DrawStat est généralement compris dans une boucle Do/LpWhile, ce qui fait que vous ne le marquez qu'une fois ; de même, la ligne du S-Graph1 n'est à définir qu'une fois (sauf si vous nettoyez le graph avec ClrGraph...) et les listes également! en fait, si ont veut simplement faire bouger la ligne vers la droite, voici le code nécessaire avec les 2 manières :
Ou bien en Drawstat :
On remarque que la taille du moteur de ce programme (entre Do et LpWhile) est plus ou moins de la même taille, pour une fluidité bien supérieur avec du drawstat. (Ne vous attendez quand même pas à sortir un jeu 3D sur calculatrice, même en Drawstat sa sera lent...).
On peut également placer des points en Drawstat, ce qui permettrai de faire un déplacement qui ne clignote pas autant qu'en PlotOn :
Ce qui donne en Drawstat :
Mieux qu'un point, pourquoi pas un petit carré ou bien même une croix?

## Travaux pratiques

On va faire un logiciel de dessin TRÈS basique... Vous déplacez le curseur avec les flèches et ça dessine!
Connaissez-vous les Getkey?
Vous allez vous servir des flèches pour dessiner... Essayez tout seul. Vous ne trouvez pas ?
La syntaxe est la suivante:
* On annonce le graph avec ViewWindow.
* On annonce les variables, par ex: 20->x et 20->y
* Le tout est dans une boucle.
SI on appuie sur → , c.à.d. Getkey 27, ALORS valeur de x augmente... SI on appuie sur ← , c.à.d. Getkey 38, ALORS valeur de x diminue... etc... ensuite un p'tit Plot de coordonnées x,y et on ferme la boucle.
Corrigé:
N'oubliez pas que cet exemple est basique, vous pouvez le développer !