Graphiques graphiques
1986/06/01 Iturriotz, J.M. Iturria: Elhuyar aldizkaria
Les programmes que j'ai expliqués jusqu'à présent, même pour le ZX Spectrum, nous pourrions les ouvrir sur n'importe quelle machine sans apporter de changements importants.
Cette fois, vous pardonnerez au lecteur, mais le programme que je vais vous expliquer ici doit être exprimé dans le ZX Spectrum, parce que je vais me baser sur ses propres caractéristiques.
Ce programme n'a pas pour lui-même une grande valeur, mais certaines des instructions qui y sont utilisées peuvent s'avérer d'un grand intérêt pour l'élaboration ou l'élégance de tout programme.
La machine, en particulier le Spectrum, garde une série de positions mémoristiques pour contrôler son système interne. On y trouve la touche qui a finalement été pressée, quelle sera la ligne d'instruction suivante, les couleurs, le traitement de l'écran pour savoir si l'imprimante utilise, etc. (un total de 71 variables système).
Parmi ces 71 variables système il y a deux très intéressantes dans notre cas: Positions 23677 et 23678.
Dans ces positions sont recueillies les coordonnées du point final dessiné. C'est-à-dire : Si vous faites PRINT PEEK 23677, la coordonnée x du point vous apparaîtra à l'écran et si vous faites PRINT PEEK 23678 vous donnera la coordonnée et le point.
Cela nous aide beaucoup dans la conception des programmes.
Le programme ci-dessous est basé sur les variables système suivantes. Le programme réalise des dessins aléatoires et illimités.
Avant d'exécuter l'instruction DRAW x1,y1, vous obtenez les valeurs correctes de x1 et y1 sur les lignes 205 et 230 en utilisant les lignes 210 et 240 pour vérification. Les instructions REM n'ont aucun effet sur le programme, donc si vous le souhaitez, vous pouvez arrêter de taper.
PROJET10 PRINT #0; "TOUCHE D'ARRÊT" 20 LET I=0:REM "Définit la couleur de l'encre" 30 LET x=0:REM x définir 40 LET y=0:REM et définir 50 GOSUB 200 60 INK I 70 DRAW x1,y1 I+1 LET: IF I=7 THEN LET I=0:REM 90 IF INKEY $=" Nombres aléatoires THEN GO TO 50:REM, 100 INK 0 (Ici il n'y a pas de place) 110 STOP 200 REM X1 et Y1 Soulignements 55-NINT* |
Gai honi buruzko eduki gehiago
Elhuyarrek garatutako teknologia