Rechercher
 
 

Résultats par :
 


Rechercher Recherche avancée

Connexion

Récupérer mon mot de passe

Chatbox externe


Derniers sujets
» [JEU] Mon voisin du dessous
Mar 10 Oct 2017 - 19:42 par Wistaro

» Lancement du TI-Concours 2017 !
Sam 20 Mai 2017 - 0:27 par Paulo1026

» Chaînes Youtube des membres
Ven 19 Mai 2017 - 22:41 par Wistaro

» cacul du taux d'intêret
Ven 24 Mar 2017 - 21:50 par m@thieu41

» [Projet] Un mario by tout82
Dim 29 Jan 2017 - 14:09 par Wistaro

» Cherche documentation assembleur TI82stat
Mer 25 Jan 2017 - 12:29 par Ti64CLi++

» Probleme Ti-82 Stats fr
Jeu 12 Jan 2017 - 13:56 par Ti64CLi++

» ROM 82 stats.fr
Jeu 15 Déc 2016 - 10:24 par Ti64CLi++

» flappy bird
Jeu 15 Déc 2016 - 10:23 par Ti64CLi++

Partenaires
TI-Planet Espace-TI : Forum

Faire un don à Tout-82...
Où va cet argent ?
Membres donateurs:- Persalteas (10€)
- Wistaro (5€)
- jo2geek (22€)

Les posteurs les plus actifs du mois


[Graphismes] Les fonctions de dessin

Voir le sujet précédent Voir le sujet suivant Aller en bas

[Graphismes] Les fonctions de dessin

Message par persalteas le Sam 26 Oct 2013 - 9:55

Tout d'abord, si vous utilisez des fonctions graphiques, il faut bien penser à:

  • Bien connaitre les dimensions de la fenêtre: pour faciliter le dessin, on utilise souvent les dimensions suivantes: X de 0 à 94 et Y de 0 à 62, car cela permet que chaque pixel aie ses coordonées propres et entières.

  • désactiver les fonctions de maths ( menu [Y=] ) avec la fonction FonctOff, sauf si vous les utilisez pour dessiner aussi...


Donc, une fois ces détails réglés, on peut donc commander à chaque pixel de s'allumer ou s'éteindre.



Je procéderai dans l'ordre:

fonction EffDessin  ( ClrDraw ):

Elle se trouve en faisant: [2nd][prgm][1]

Elle efface de votre écran graphique tout ce qui est dessiné avec les fonctions dont je parlerai dans ce topic.
Utilisez la, vous allez vite comprendre, c'est très simple.

fonction Ligne(   ( Line( ):

Elle se trouve en faisant: [2nd][prgm][2]

Elle sert à tracer une ligne d'un point à un autre sur l'écran.
Elle peut même en sortir.

On l'utilise comme ça:
Ligne( Xéxrémité1  ,   Yéxtrémité1 ,  Xéxtrémité2  ,  Yéxtrémité2  , couleur.

Les coordonnées des points dépendent des dimensions de votre fenêtre.

La couleur:  si on ne la précise pas, ou qu'on met 1, ou une variable égale à 1, Les pixels de la ligne s'allument.
Si on met 0 , les pixels de la ligne s'éteignent.


fonction Horizontale   ( Horizontal ):

Elle se trouve en faisant [2nd][prgm][3]

Elle sert à tracer une droite horizontale:
Horizontale 47
va tracer une ligne horizontale sur votre écran en Y=47.

Facile.

fonction Verticale   ( Vertical ):

Elle se trouve en faisant [2nd][prgm][4]

Elle sert à tracer une droite verticale sur votre écran.
Verticale 8
trace une ligne verticale sur votre écran en X=8.

fonction Tangente(   (  Tangent(  ):

Elle se trouve en faisant [2nd][prgm][5]

Elle sert à tracer la tangente en un point d'une courbe qui est tracée sur votre écran graphique.
Tangente( fonction , Xpoint de la courbe

La fonction doit se trouver dans votre éditeur de fonctions (le menu [Y=] ).
vous devez rentrer à cet endroit la son numéro en faisant [var][>][1] et en sélectionnant la bonne fonction.

Exemple, si dans votre éditeur de fonctions, on a:
Y1=X²+2X-3

Et bien, pour tracer la tangente à cette courbe en X=5, on écrit:
Tangente(Y1,5

Moins facile, j'avoue.

fonction DessFonct   ( DrawF  ):

Elle se trouve en faisant [2nd][prgm][6]

Eh bien elle sert à tracer une fonction sans passer par l'éditeur de fonctions.
par exemple: DessFonct 3X+2 vous trace la courbe représentative de la fonction f(x)=3x+2.

Fastoche, pas souvent utile dans les jeux. xD

fonction Ombre()  (  Shade()  ):

Elle se trouve en faisant [2nd][prgm][7]

Alors là, ça se complique:
Elle sert à tracer une zone d'ombre sur le graphique.

On peut l'utiliser de plusieurs façons:

Ombre(  Ybas  ,   Yhaut
vous trace sur toute la largeur de l'écran une zone d'ombre entre les deux ordonnées précisées.

Ombre(  Ybas  ,  Yhaut  ,  Xgauche  ,  Xdroite
vous trace un rectangle d'ombre selon les coordonnées fournies.
petit inconvénient, ça vous fait aussi deux horizontales en Yhaut et Ybas.

Ombre(  Ybas  ,  Yhaut  ,  Xgauche
vous trace une zone d'ombre de la hauteur choisie, depuis le X demandé jusqu'à la droite de l'écran.
on a aussi les deux horizonales, comme pour tous les cas suivants.

Ombre(  Ybas  ,  Yhaut  ,  Xgauche  ,  Xdroite  , nombre
Si nombre=1, l'ombre se trace verticalement.
Si nombre=2, l'ombre se trace horizontalement
Si nombre=3, l'ombre se trace avec une pente dans un sens
Si nombre=4, la même pente, mais dans l'autre sens.


Ombre(  Ybas  ,  Yhaut  ,  Xgauche  ,  Xdroite  ,  nombre  ,  pas
L'ombre va allumer un pixel sur le pas:

pas=2 1 pixel sur 2 , pas=3  1 pixel sur 3... jusqu'à 8.

Et bien sur...
Pour les Y, on peut remplcer les valeurs par des fonctions:

Ombre(3X²-2sin(X),3X²-2sin(X)-5,2,4,2,5

Ombragera l'espace entre les deux fonctions sur l'intervalle de X [2;4], en rayures horizontales, un pixel sur 5.

fonction DessRecip  (  DrawInv  )

On la trouve en faisant [2nd][prgm][8]

Je sais qu'elle sert à dessiner la fonction réciproque de celle que vous allez préciser, mais comme je suis pas très calé en maths, je sais pas ce que c'est.

DessRecip 3X²+2racine(X)  va vous tracer la réciproque de cette fonction.

Que ceux qui utilisent un jour cette fonction dans un prog m'appellent. xD


fonction Cercle(  (  Circle(  )

On la trouve en faisant [2nd][prgm][9]
Eh ben ça trace un cercle.
ça met un petit peu de temps à le tracer, c'est normal ne vous inquiétez pas.

Cercle(  Xcentre  ,  Ycentre  ,  rayon
Attention, le rayon ne se compte pas en pixels, mais selon les dimensions de votre fenêtre.
Si rien n'apparait, c'est que vous avez mis un rayon trop grand.

(Astuce pour les 83+/84+ écrivez: Cercle(X,Y,R,{i , vous allez voir, ça va plus vite Bien Joué)


fonction Texte(  (  Text(  )

On la trouve en faisant [2nd][prgm][0]

Cette fonction permet d'écrire sur la partie graphique.
par contre, elle diffère des autres fonctions car elle ne dépend pas des dimensions de votre fenêtre: pour elle les X vont de 0 à 94, les Y de 62 à 0 (oui, vous avez bien lu, le zéro se trouve en haut et le 62 en bas).

Texte(  Y1ere lettre du texte ,  X1ere lettre du texte  , texte entre guillemets 1  , texte entre guillemets 2 ,  texte entre guillemets 3...

Remarques:
Le texte peut être remplacé par une variable ou un calcul, et dans ce cas, pas besoin de guillemets.

Y1 ne peut pas dépasser 56 car après y'a plus de place sur l'écran.

Attention, si vous mettez un texte trop long il sort de l'écran.

Les coordonées de la lettre:
Si j'ai comme lettre un P:
P
Les coordonées de cette lettre se situent dans son "coin" en haut à gauche.


fonction Pt-On(

On la trouve en faisant [2nd][prgm][>][1]

Elle sert à allumer un point sur votre écran, selon les coordonées de la fenêtre.

Pt-On(X,Y,nombre

Si nombre=1: le pixel seul s'allume
Si nombre=2: le pixel ne s'allume pas, mais tous les autres pixels qu'il touche s'allument (ça fait un petit carré).
Si nombre=3: une croix s'allume.

fonction Pt-Off(

On la trouve en faisant [2nd][prgm][>][2]

Comme Pt-On, mais ça éteint au lieu d'allumer.

fonction Pt-Change(

On la trouve en faisant [2nd][prgm][>][3]

Pt-Change(X,Y
Si le pixel est allumé, il s'éteint, et inversement.

fonction Pxl-On(

On la trouve en faisant [2nd][prgm][>][4]
Elle allume le pixel, mais utilise les mêmes coordonées que Texte().

Pxl-On(Y,X

fonction Pxl-Off(

On la trouve en faisant [2nd][prgm][>][5]

Elle éteint ce que la précédente allume.

fonction Pxl-Change(

On la trouve en faisant [2nd][prgm][>][6]

La même que Pt-Change, mais avec les coordonnées de Texte()
(ne dépend pas de la fenêtre, tout comme les 2 dernières fonctions).

fonction Pxl-Test(

On la trouve en faisant [2nd][prgm][>][7]

Elle sert à savoir si un pixel est allumé ou non.
Elle utilise les mêmes coordonées que les 3 précédentes.

Si Pxl-Test(Y,X)=1  le pixel est allumé
Si Pxl-Test(Y,X)=0  le pixel est éteint.


fonction SauveImage(   (  StorePic  )

On la trouve en faisant [2nd][prgm][<][1]

Elle sert à mettre en mémoire une image dessinée avec votre graphique.
une image prend 764 octets de RAM (ou 767 sur 83+/84+, à cause du flag "archivé?").

SauveImage 0  à  SauveImage 9  (tous les chiffres).

Sur TI-82 basique:

StorePic Pic0 à StorePic Pic9 (les Pic se trouvent en faisant [var][4])


fonction RappelImage(   (  RclPic ou RecallPic  )

On la trouve en faisant [2nd][prgm][<][3]

Elle sert à réafficher l'image enregistrée.
Elle s'utilise de la même manière que SauveImage.

fonction SauveBDG(   (  StoreGDB(  )

On la trouve en faisant [2nd][prgm][<][2]

Elle sert à mettre en mémoire votre menu Y=  (éditeur de fonctions), ainsi que les graphes statistiques, et tous vos réglages concernant le graphique (zoom, axes, etc...)

SauveBDG 0 à SauveBDG 9  (tous les chiffres)

Sur 82 basique:
StoreGDB GDB0 à StoreGDB GDB9 (les GDB se  trouvent en faisant [var][3])

fonction RappelBDG(   (  RclGDB(  )

On la trouve en faisant [2nd][prgm][<][4]

Elle sert à restituer les éditeurs de fonctions mis en mémoire, et s'utilise comme SauveBDG.


BDG veut dire Banque de Données Graphiques.


Voilà, enjoy Wink

Dans d'autres articles qui vont suivre, je parlerai des autres manières de dessiner, les text-sprites, les statplots, etc...


Dernière édition par persalteas le Sam 26 Oct 2013 - 10:46, édité 1 fois

__________________________________________________________________________
Bienvenue sur le nouveau Tout-82, Invité ! Viens discuter sur le chat... What a Face
Depuis que je me suis tatoué une calculatrice sur le bras, vous pouvez compter sur moi ! :P (Best joke ever x) )
avatar
persalteas
----------------------
----------------------

Messages : 482
Points Concours : 152
Productivité : 39
Date d'inscription : 06/12/2012
Localisation : Savoie, France
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur http://tout82.forumactif.org

Revenir en haut Aller en bas

Re: [Graphismes] Les fonctions de dessin

Message par m@thieu41 le Sam 26 Oct 2013 - 10:26

Super tutoriel Bien Joué


Juste quelques détails mineurs à régler:

Pour la partie sur la fonction texte, il y a une faute d'orthographe:
Les coordonées de cette lettre se situent dans sont "coin" en haut à gauche.
Ceci:
[taille=24]fonction Pxl-On([/taille]
Ca ne s'affiche pas bien...


Ensuite:
fonction SauveBDG( ( StoreGDB( )

On la trouve en faisant [2nd][prgm][<][2]

Elle sert à mettre en mémoire votre menu Y= (éditeur de fonctions).
Pas seulement (ça sauvegarde le zoom, et les options liées au graphique (les axes, le quadrillages etc), et les statplot)).

__________________________________________________________________________
ZSNAKE Mon premier (et unique) jeu en ASM:
Un Snake 2 joueurs (2caltos)
-> Je travaille sur une version plus stable du jeu, je poste dès que possible.
avatar
m@thieu41
----------------------
----------------------

Messages : 934
Points Concours : 65
Productivité : 47
Date d'inscription : 02/06/2013
Localisation : Nice, France
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [Graphismes] Les fonctions de dessin

Message par persalteas le Sam 26 Oct 2013 - 10:44

Merci pour les corrections Smile

__________________________________________________________________________
Bienvenue sur le nouveau Tout-82, Invité ! Viens discuter sur le chat... What a Face
Depuis que je me suis tatoué une calculatrice sur le bras, vous pouvez compter sur moi ! :P (Best joke ever x) )
avatar
persalteas
----------------------
----------------------

Messages : 482
Points Concours : 152
Productivité : 39
Date d'inscription : 06/12/2012
Localisation : Savoie, France
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur http://tout82.forumactif.org

Revenir en haut Aller en bas

Re: [Graphismes] Les fonctions de dessin

Message par Wistaro le Sam 26 Oct 2013 - 11:03

Je pensais pas que la fonction Shade() pouvait avoir autant d’arguments...

En fait, je pensais juste qu'elle pouvais tracer une ombre en Yhaut, Ybas ... Smile

Mais en fait, c'est plus rapide de faire avec des boucles et des lignes pour un jeu, même si sa prends plus d'octet :p

__________________________________________________________________________
Clique ici pour retrouver tout mes programmes en TIbasic

Tu es curieux, Invité? Alors clique ici:


Coucou Invité !Ta dernière visite sur ce forum date de . Tu as posté un total de 78 message(s) sur Tout 82 et enfin, tu as 0 ans.
Si nous sommes le 0, je te souhaite un joyeux anniversaire ;-)

avatar
Wistaro
Passioné
Passioné

Messages : 910
Points Concours : 86
Productivité : 28
Date d'inscription : 16/06/2013
Localisation : Tarbes - DUT GEII
Calculatrice(s) :
  • TI-82
  • TI-82 Stats
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur http://www.youtube.com/user/Wistaro

Revenir en haut Aller en bas

Re: [Graphismes] Les fonctions de dessin

Message par m@thieu41 le Sam 26 Oct 2013 - 11:09

Sauf si tu veux faire un scrolling encore une fois Wink
Dans ce cas utiliser cette fonction peut être pratique.

C'est la même chose qu'avec les statplot en fait ça dépend des cas.

__________________________________________________________________________
ZSNAKE Mon premier (et unique) jeu en ASM:
Un Snake 2 joueurs (2caltos)
-> Je travaille sur une version plus stable du jeu, je poste dès que possible.
avatar
m@thieu41
----------------------
----------------------

Messages : 934
Points Concours : 65
Productivité : 47
Date d'inscription : 02/06/2013
Localisation : Nice, France
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: [Graphismes] Les fonctions de dessin

Message par pito2901 le Sam 26 Oct 2013 - 18:50

C'est génial en fait, super tuto ! +1

__________________________________________________________________________
Programmes de Jeux TI 82 Stats.fr à recopier
"Parfois les personnes capables de rien sont celles capables de faire ce que personne n'aurait imaginé" A.Turing
avatar
pito2901
Passioné
Passioné

Messages : 532
Points Concours : 1
Productivité : 12
Date d'inscription : 02/09/2013
Localisation : Nevers
Calculatrice(s) :
  • TI-82 Stats.fr

. : TI-82 Stats.fr

Voir le profil de l'utilisateur http://www.clictune.com/id=179469

Revenir en haut Aller en bas

Re: [Graphismes] Les fonctions de dessin

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum