Poster un nouveau sujet Poster une réponse
effaceur
Auteur Message
clem494949



Autorisation : Membre
Nb de messages : 37
Inscrit le : Dim 08 Sep 2013, 15:30
Posté le : Sam 14 Sep 2013, 15:38   Citer 

Bonjour,
voici un petit projet : l’effaceur
Voici un programme qui va effacer: une ligne, un cercle, un carré (de base parallèle à crazy.gif, un triangle, un texte ou une figure quelconque sans effacer le reste (sauf croisement de figure)

comment ça marche et bien on vient demander le type et la position de l'item, puis on inverse les pixel d'un rectangle contenant l'objet, on vient "redessiner" l'objet sur lui même puis on ré-inverse le rectangle ce qui efface la forme (au début j'inversait la totalité de l'écran mais c'était long).

Cet outil est encore en fasse de création

Code

menu("qu'effacer","ligne",0,"cercle",1,"carré",2,"triangle",3,"texte",4,"forme",5

Lbl 0
Input("x",A
Input("y",B
Input("x'",C
Input("y'",D
0->Z
Goto 6

Lbl 1
Input("x",E
Input("y",F
Input("rayon",G
E+G->A
F+G->B
E-G->C
F-G->D
1->Z
Goto 6

Lbl 2
Input("x1",A
Input("y1",B
Input("x2",C
Input("y2",D
Input("x3",E
Input("y3",F
2->Z
Goto 6

Lbl 3

Lbl 4
       (pour les figures et les triangles il faut utiliser un système de liste)
Lbl 5

Lbl 6
(ici il faudrait placer un convertisseur de position type dessin au type texte sur 4 autre variable que A,B,C,D)
For(X,A,C
For(Y,B,D
pxl-change(X,Y
End
End
If Z=0
Ligne(A,B,C,D
If Z=1
Cercle(E,F,G
If Z=2
Then
Ligne(A,B,A,D
Ligne(A,B,C,B
Ligne(C,D,A,D
Ligne(C,D,C,B
End
If Z=3

If Z=4

If Z=5
For(X,A,C
For(Y,B,D
pxl-change(X,Y
End
End


Le système restera incomplet tant que je n'ai pas confirmation du fait qu'il n'existe pas de formule qui efface les formes.

----------------------
testeur de touche rapidement :
While 1
codetouche->A
If A=/=0
disp A
End
 Adresse email Haut de page Bas de page 
 
Google_AdSense



Publicité    



 
linkakro



Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Sam 14 Sep 2013, 16:12   Citer 

Seules les lignes, les Pt et les Pxl permettent d'effacer naturellement.

L'idée d'inverser est géniale.
Mais pas utilisable dans un autre programme fluide comme un jeu.

Tu n'auras pas besoin de convertir les repères. Il existe aussi bien Pt-Change que Pxl-Change.

Pour changer de repère ce serait
X2=Xmin2+(X1-Xmin1)*(Xmax2-Xmin2)/(Xmax1-Xmin1)
en adaptant les données.
Remarque : j'ai créé cette formule moi-même, cela n'empêche pas quelqu'un d'autre de l'avoir inventé aussi.

----------------------
ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)

Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store
 Adresse email Haut de page Bas de page 
 
clem494949



Autorisation : Membre
Nb de messages : 37
Inscrit le : Dim 08 Sep 2013, 15:30
Posté le : Sam 14 Sep 2013, 20:55   Citer 

Étant donné que les ligne sont finalement effaçable je pense ne pas me casser la tête et je vais utiliser l'inversion uniquement pour les cercles cela sera plus efficace mais c'est presque decevant de voir mon idée réduite à ce point là maxiangry.gif

Rapidement je n'utilise pas pt-change car il comporte des bugs que j'ai remarqué en faisant le changement total de l'écran et px-change fonctionne mieux
Merci d'avoir mis à ma disposition ce code :-)


PS Au fait les forums types ti 82 ti82 stat et tous : sont-il censé comporté des programmes ou plutôt des problèmes matériel ou en bref suis-je dans la bonne rubrique (car il y a aussi la rubrique programmes des membres)?

----------------------
testeur de touche rapidement :
While 1
codetouche->A
If A=/=0
disp A
End
 Adresse email Haut de page Bas de page 
 
linkakro



Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Sam 14 Sep 2013, 23:15   Citer 

J'espère que ce n'est pas moi qui t'ai blessé par mon manque de tact.
Dommage en effet que le TI-Basic ne permette pas de faire ça efficacement.

Je connais un seul bug sur les Pt. La réinitialisation innattendue de Y par certaines fonctions (dont les Pt) suite à certaines modifications du graphe.
http://tout82.free.fr/forum/sujet.php?sujet=2068

réponse au PS :
Une question sur un modèle donné devrait aller dans la rubrique dédiée, mais une question sur la programmation même d'un modèle précis peut aller dans la rubrique aide à la progra. On a le choix dans des cas comme ça. De même une connexion à une ti82 devrait aller dans la rubrique de connexion, mais on peut la mettre aussi dans ti82...

----------------------
ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)

Pour tout le monde et surtout les débutants, quelques-uns des articles courants :
*Traductions Algorithmie/Ti-Basic.
*Caractères spéciaux sur Tout82
Les défauts du TI-Basic : Goto_versus_algo et DelVar/End/Lbl/guillemet/store
 Adresse email Haut de page Bas de page 
 
Poster un nouveau sujet Poster une réponse





  Powered by Fire-Soft-Board v1.0.10 © 2004 - 2024 Groupe FSB
Page générée en 9 requêtes
BlackOne par Grimmlink