Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Autres questions


Index du Forum » Autres questions » Pxl test ?
Blerain Hors ligne Membre Points: 64 Défis: 0 Message

Pxl test ?

Posté le 11/04/2012 19:41

Voilà,
Je ne comprends pas pourquoi mon Pxl ne peut pas aller sur la partie droite de l'écran :/

300ãªÙ
ClrTextÙ
ClrGraphÙ
ViewWindow 1,127,0,1,63,0Ù
S-Gph1 DrawOn,xyLine,List 6,List 7,1,DotÙ
S-Gph2 DrawOffÙ
S-Gph3 DrawOffÙ
{1}ãList 6Ù
{1}ãList 7Ù
DrawStatÙ
32ãAÙ
11ãBÙ
DoÙ
GetkeyÙ
Ans=28×A-1ãAÙ
Ans=37×A+1ãAÙ
Ans=38×B-1ãBÙ
Ans=27×B+1ãBÙ
A<1×1ãAÙ
A>127×127ãAÙ
B<1×1ãBÙ
B>64×64ãBÙ
PxlTest(A,B)ãDÙ
If D=1Ù
Then Ù
Ans=28×A+1ãAÙ
Ans=37×A-1ãAÙ
Ans=38×B+1ãBÙ
Ans=27×B-1ãBÙ
IfEndÙ
PxlOn A,BÙ
Ans=27×PxlOff A,B-1Ù
Ans=38×PxlOff A,B+1Ù
Ans=28×PxlOff A+1,BÙ
Ans=37×PxlOff A-1,BÙ
LpWhile 0=0Ù


Merci =)

Fichier joint


1, 2 Suivante
Blerain Hors ligne Membre Points: 64 Défis: 0 Message

Citer : Posté le 11/04/2012 19:43 | #


Oups,
Comment mettre les lignes de commande en mode " Normal"
Chez moi il pleut 2 fois par an.
Une fois pendant 4 mois.
Une autre pendant 6 mois.
Pierrotll Hors ligne Ancien administrateur Points: 5488 Défis: 41 Message

Citer : Posté le 11/04/2012 19:55 | #


PxlTest, comme toutes les fonctions Pxl, est indépendante du ViewWindow (elle demande des coordonnées en pixel) et demande l'ordonnée avant l'abscisse.
Blerain Hors ligne Membre Points: 64 Défis: 0 Message

Citer : Posté le 11/04/2012 20:02 | #


...
Je ne comprends pas trop la réponse
Je débute en Basic Casio :/
Chez moi il pleut 2 fois par an.
Une fois pendant 4 mois.
Une autre pendant 6 mois.
Smashmaster Hors ligne Ancien modérateur Points: 4561 Défis: 253 Message

Citer : Posté le 11/04/2012 20:37 | #


Syntaxe de la fonction PxlTest : PxlTest(<ordonnée>,<abscisse>).

L'origine du repère se trouve en haut à gauche de l'écran, donc si tu mets par exemple PxlTest(0,0), alors ça teste le pixel qui se trouve en haut à gauche de l'écran
PxlTest(63,0) teste le pixel en bas à gauche de l'écran
PxlTest(63,127) teste le pixel en bas à droite de l'écran
PxlTest(0,127) teste le pixel en haut à droite de l'écran
etc
L'origine du repère de la fonction PxlTest ne dépend pas du ViewWindow choisi.

Blerain Hors ligne Membre Points: 64 Défis: 0 Message

Citer : Posté le 11/04/2012 20:54 | #


Oui,
Je comprends, par contre je ne vois toujours pas où est mon erreur
Chez moi il pleut 2 fois par an.
Une fois pendant 4 mois.
Une autre pendant 6 mois.
Totoyo Hors ligne Membre d'honneur Points: 16102 Défis: 102 Message
Blerain Hors ligne Membre Points: 64 Défis: 0 Message

Citer : Posté le 11/04/2012 21:14 | #


Ok,
j'ai trouvé,
B>64×64ãBÙ
Faut mettre 127 au lieu de 64

Maintenant j'arrive à aller sur la partie droite de l'écran !

Chez moi il pleut 2 fois par an.
Une fois pendant 4 mois.
Une autre pendant 6 mois.
Totoyo Hors ligne Membre d'honneur Points: 16102 Défis: 102 Message

Citer : Posté le 11/04/2012 21:17 | #


Je te rajoute un code optimisé ET commenté
300ãª
ClrText
ClrGraph
ViewWindow 1,127,0,1,63,0
S-Gph1 DrawOn,xyLine,List 6,List 7,1,Dot
S-Gph2 DrawOff
S-Gph3 DrawOff
{1->List 6 [green]// On peut supprimer toutes les parenthèses, accolades et crochets à fermer à la fin d'une ligne ou du symbole ->[/green]
{1->List 7
DrawStat
32->A
11->B
Do
Do
Getkey
LpWhile Ans [green]//La boucle tourne tant qu'aucune touche n'est appuyée[/green]
A->C
B->D [green]//On stocke les anciennes coordonnées dans C et D[/green]
Ans=28=>A>1=>Dsz A
Ans=37=>A<127=>Isz A
Ans=38=>B>1=>Dsz B
Ans=27=>B<63=>Isz B [green]//Inutile d'ajouter ou de diminuer une coordonnée si ce n'est pas possible, on économise des ressources (vitesse+mémoire)[/green]
If PxlTest(A,B [green]//Si le pixel est allumé, alors ça vaut 1, sinon 0)[/green]
Then C->A:D->B [green]//Je suppose que ça empêche ton pixel d'avancer si l'autre pixel déjà allumé[/green]
IfEnd
A!=C Or B!=D=>PxlOn A,B [green]//PxlOn étant une fonction assez lente, rajouter une petite condition devrait augmenter légèrement les performances du code[/green]
LpWhile 1 [green]//Cela revient au même que 0=0 et c'est plus propre[/green]

Blerain Hors ligne Membre Points: 64 Défis: 0 Message

Citer : Posté le 11/04/2012 21:24 | #


Merci Beaucoup !!
Cela me permet de m'améliorer
Vu que comme je l'ai dis je débute et c'est mon 1er "vrai" programme (avant c'était pgcd/ppcm division euclidienne ...)

Les fonctions Isz et Dsz augmentent-elles les performances ?

Chez moi il pleut 2 fois par an.
Une fois pendant 4 mois.
Une autre pendant 6 mois.
Totoyo Hors ligne Membre d'honneur Points: 16102 Défis: 102 Message

Citer : Posté le 11/04/2012 21:30 | #


Je ne sais plus, il faut regarde ce topic.

Attention, les fonctions Isz et Dsz ont une fonctionnalité cachée : si la valeur vaut 0 (après incrémentation/décrémentation), alors la ligne suivante est ignorée.
Blerain Hors ligne Membre Points: 64 Défis: 0 Message

Citer : Posté le 11/04/2012 22:07 | #


Je n avais pas eus le temps de tester
J ai une erreur syntaxe
If PxlTest(A,BLpWhile 1
Je prévois de mettre ma carte dans liste 6 et 7
Au lieu de 1 et 1

Merci !
Chez moi il pleut 2 fois par an.
Une fois pendant 4 mois.
Une autre pendant 6 mois.
Purobaz Hors ligne Membre d'honneur Points: 2690 Défis: 110 Message

Citer : Posté le 12/04/2012 07:59 | #


If PxlTest(A,BLpWhile 1

Normal, il faut refermer les boucles et les conditions dans le même ordre que tu les as ouverts.
Dans ton cas à mon avis il faut mettre :

LpWhile 1
If PxlTest(A,B

I'll be back !
pour plus de fun
mes programmes fun
de technique
mes projets
et de Swag
les projets que je soutiens
Totoyo Hors ligne Membre d'honneur Points: 16102 Défis: 102 Message

Citer : Posté le 12/04/2012 18:33 | #


Petite faute d'inattention de ma part, il faut supprimer le LpWhile 1 qu'on retrouve à la fin du code.
Blerain Hors ligne Membre Points: 64 Défis: 0 Message

Citer : Posté le 12/04/2012 22:01 | #


Ok merci sa marche à merveille !
Mais parfois les anciens graphismes ne s effacent pas et les nouveaux viennent s ajouter par dessus.
Apparamment la fonction Cls ne règle pas cela.
Quelle est la fonction a utiliser ?
Chez moi il pleut 2 fois par an.
Une fois pendant 4 mois.
Une autre pendant 6 mois.
Nitrosax Hors ligne Ancien rédacteur Points: 1061 Défis: 17 Message

Citer : Posté le 13/04/2012 07:55 | #


Après un Cls, il faut utiliser une fonction graphique pour rafraîchir l'écran.

Exemple
Cls
Pxloff 1,1

Louloux Hors ligne Ancien administrateur Points: 7035 Défis: 61 Message

Citer : Posté le 13/04/2012 14:24 | #


Totoyo a écrit :

Je te rajoute un code optimisé ET commenté

Les commentaires en Basic se font avec un apostrophe en début de ligne
Totoyo Hors ligne Membre d'honneur Points: 16102 Défis: 102 Message
Blerain Hors ligne Membre Points: 64 Défis: 0 Message

Citer : Posté le 15/04/2012 16:58 | #


Merci,

J'ai un autre problème avec ce fichu Pxl Test,
J'ai 58924 Octets Libres mais dès que je lance mon programme il affiche "Erreur mémoire" et il est bloqué au Pxl Test.
Sur la 35+ quand j'avais ce problème, je faisais le ménage puis reset.
Mais là en plus j'ai pas trouvé "reset".
Chez moi il pleut 2 fois par an.
Une fois pendant 4 mois.
Une autre pendant 6 mois.
Javierxd Hors ligne Membre Points: 1899 Défis: 13 Message

Citer : Posté le 15/04/2012 17:53 | #


Efface tes programmes, listes, matrices, etc dont tu n'as pas besoin
Calculatrices: g35+usb modifiée, PRIZM

My program is not working, I have no idea why.
My program is working, I have no idea why.

Programmes
Cliquer pour enrouler
Purobaz Hors ligne Membre d'honneur Points: 2690 Défis: 110 Message

Citer : Posté le 15/04/2012 18:03 | #


Nitrosax a écrit :

Après un Cls, il faut utiliser une fonction graphique pour rafraîchir l'écran.

Exemple
Cls
Pxloff 1,1

I'll be back !
pour plus de fun
mes programmes fun
de technique
mes projets
et de Swag
les projets que je soutiens
1, 2 Suivante

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 96 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd