[Tutoriel] Le Drawstat
Posté le 11/01/2006 21:10
Présentation :
Le drawstat est une application du mode statistiques de la calculatrice. Elle permet de tracer des lignes ou des points à une vitesse incomparable face à F-Line et Plot ou PxlOn.
Exemple :
Mettez ce code dans un programme casio ou téléchargez le fichier joint (en bas du sujet
) et transférez le à votre calculatrice. Regardez bien
ViewWindow 1,127,0,1,63,0
AxesOff
LabelOff
BG-None
FuncOff
S-WindMan
Text 1,1,"WAIT..."
Seq(X,X,1,127,1->List 1
Seq(Int 63Ran# ,X,1,127,1->List 2
Text 1,1,"PLOTON DEMO..."
For 1->A To 127
PlotOn List 1[A],List 2[A
Next[DISP]
Cls
Text 1,1,"DRAWSTAT DEMO"
S-Gph1 DrawOn,Scatter,List 1,List 2,1,Dot
S-Gph2 DrawOff
S-Gph3 DrawOff
DrawStat
Comment ça marche :
Le drawstat dessine des points ou des lignes à partir des listes. il y a plusieurs modes de dessin et vous pouvez régler différents paramètres tels que l'apparence des points (croix, point, carré), dessin en points, ligne, histogramme.
Dans le contexte des jeux on utilise principalement l'affichage de points et de lignes.
Syntaxe :
Il faut d'abord régler la fenêtre de dessin des statistiques de la calculatrice en mode manuel pour pouvoir utiliser le ViewWindow de notre choix pour ceci il faut aller dans le menu [SETUP] (SHIFT+MENU) à l'onglet S-WIN :
S-WindMan //mode manuel
S-WindAuto //mode automatique
On peut tracer 3 ensembles de points ou lignes en même temps. Il faut donc paramétrer chacune de ces "S-Graphs".
Pour ceci il faut aller dans le menu spécial programmation qui ne s'affiche
que lorsque vous éditez un programme. Il s'agit de l'onglet à coté de [TOP] [BOT] etc..
Faites donc [Menu] puis [Stat], vous aurez alors plusieurs onglets : [Draw][Grph]
[Mark]
Pour avoir une explication précise de chaque fonction utilisez la référence des commandes du site : http://www.planete-casio.fr/Fr/reference_basic_casio/index.php
Voici comment paramétrer les graphes statistiques :
S-Gph1 <Activer/désactiver affichage>,<mode de dessin>,<liste des x>,<liste des y>,<fréquence>,<type de point>
S-Grph1, S-Grph2, S-Grph3 se trouvent dans l'onglet [Grph]
Voici quelques exemples :
S-Gph1 DrawOn,Scatter,List 1,List 2,1,Dot
La S-Grph 1sera affichée, en mode points, la liste 1 sera en abscisses, la liste 2 sera en ordonnées, la fréquence sera de 1, les points seront de simples pixels
S-Gph2 DrawOff,xyLine,List 1,List 2,1,Cross
La S-Grph 2 ne sera pas affichée, en mode Lignes, la liste 1 sera en abscisses, la liste 2 sera en ordonnées, la fréquence sera de 1, les points seront des croix
DrawOn/DrawOff se trouvent dans l'onglet [Draw]
Scatter/xyLine se trouvent dans l'onglet [Grph]
List1/List2 etc se trouvent dans l'onglet
Dot/Cross/Square se trouvent dans l'onglet [Mark]
Il suffit de paramétrer les S-Grph une seule fois. Ensuite pour afficher les S-Grph on utilise la commande "Drawstat" qui se trouvent dans le menu [PRGM] à l'onglet [DISP] puis [STAT].
Voila, utilisez cette "technologie" correctement et vous pourrez faire des jeux très rapides 8)
Fichier joint :
télécharger
Fichier joint
Citer : Posté le 01/04/2012 14:16 | #
J'ai découvert un nouveau truc avec le drawstat: il y a une piste à explorer avec les histogrammes.
Par exemple si tu décrémentes une liste, ton histogramme se décale d'un rang vers la gauche. Pour un jeu de plateforme ça peut être sympa.
Le problème est que cette fonction est assez lente lorsque la liste est chargée...
Citer : Posté le 01/04/2012 16:52 | #
On peut tester les pixels de l'histogramme avec PxlTest ?
Vitesse des fonctions en Basic Casio | 7 days CPC | Casio Universal Wiki | Tutoriel Basic Casio
>>> Give me a click Brother <<< >>> Teste mon générateur de mots nouveaux <<<
>>> Random Youtube Video <<<
Citer : Posté le 01/04/2012 17:02 | #
J'ai utilisé l'histogramme pour faire les décors de Flight sur Prizm et ainsi compenser l'affichage graphique relativement lent.
Escape prison
Bloxorz
Free wheel
QR code
Nombre en or
RayCasting Engine
Mario Party
Zelda
et Planète Casio
Citer : Posté le 17/07/2012 23:45 | #
Bonsoir et merci beaucoup pour le tuto ! la rapidite et l'hyper-simplicite du drawstat vont beaucoup m'aider. Si j'y avais pense avant ...
Citer : Posté le 18/03/2014 20:05 | #
J'ai optimisé le code de démonstration et corrigé quelques fautes d'orthographe (oublis d'accent).
Vitesse des fonctions en Basic Casio | 7 days CPC | Casio Universal Wiki | Tutoriel Basic Casio
>>> Give me a click Brother <<< >>> Teste mon générateur de mots nouveaux <<<
>>> Random Youtube Video <<<
Citer : Posté le 06/05/2015 07:00 | #
Bonjour Neuronix
J ai lu ton tuto sur le drawstat (il est d'ailleurs génial ) et j'ai crée un petit programme qui l'utilise
mais j ' ai un problème: quand je lance le drawstat avec les listes 3 et 4
étant vides, le programme me dit Erreur dimension. :aie2:
J'imagine que c est parce que j ai instancié le Sgraph 2 avec les
listes 3 et 4 en coordonees mais il n'est pas dans mon programme!
Donc ma question est : comment 'supprimer' un Sgraph 2 ou 3 pour éviter qu'il se lance quand
on fait Drawstat ? Merci
Stick hero
Citer : Posté le 06/05/2015 07:20 | #
Effectivement c'est parce que tes listes sont vides et que le Drawstat va chercher à tracer tout ce qui a été paramétré même si les S-Gph 2 et 3 ne sont plus dans ton programme.
S-Gph1 <Activer/désactiver affichage>,<mode de dessin>,<liste des x>,<liste des y>,<fréquence>,<type de point>
Il faut donc que tu fasses S-Gph2 DrawOff,... et S-Gph3 DrawOff,...
Citer : Posté le 06/05/2015 15:41 | #
Ah c'était ça.... Merci beaucoup Remiweb
Stick hero
Citer : Posté le 06/05/2015 15:43 | #
Tu as crée un profil juste pour poser cette question ? et omg
Citer : Posté le 06/05/2015 20:40 | #
Tous les comptes commencent par un message... -_-
Citer : Posté le 06/05/2015 21:31 | #
Mais nooon....
Je vais mettre quelques programmes bientôt mais pour ça il me faut mon ordi et j y aie pas trop accès....
Et puis avec mes devoirs j ai pas encore eu le temps de m'installer pour le soumettre
Mais j essaierai de le faire bientôt
Stick hero
Citer : Posté le 06/05/2015 21:40 | #
Oups, pour l'accusation fausse.
Citer : Posté le 07/05/2015 06:55 | #
D'ailleurs est ce quelqu'un sait quels langages ( C, Java, Python , etc ) sont compatibles
avec les CASIO ? :huh:
Stick hero
Citer : Posté le 07/05/2015 18:45 | #
Il y en a pas mal mais ils ont tous plus ou moins des restrictions.
On-calc:
- Basic CASIO. Facile à mettre en oeuvre, mais limité en fonctionnalités.
- Lua. Efficace et concis, porter un interpréteur pour ce langage était bien vu. Il faut juste installer un add-in.
- C. Les add-ins WSC et FVM permettent d'en faire, cependant ils interprètent le code. En pratique, personne ne les utilise.
- Par extension, tout ce qui peut s'interpréter avec un add-in... on n'a pas de compilateur on-calc.
Sur PC:
- Basic CASIO. FA-124 permet d'éditer du Basic, de même que l'IDE en ligne Source Coder 3 sur le site cemetech.net.
- C. Le fx-9860G SDK de CASIO permet de compiler très facilement des add-ins sous Windows. L'IDE WinSDK qu'Intelligide est en train de développer le permet aussi avec plus de possibilités, de même que le fxSDK que j'écris moi-même pour Linux, mais sans bibliothèque standard.
- C++. le fx-9860G SDK gère le C++, mais il ne dispose pas de STL alors que le standard l'exige. En pratique, c'est donc limité à l'usage de classes et de templates. WinSDK et fxSDK permettent tous deux de compiler librement en C++, mais toujours sans bibliothèque standard.
- Plus généralement, sous Linux, on peut compiler un cross-compilateur gcc qui génère le binaire. Donc on peut programmer en tout ce que gcc compile, à savoir en C/C++, Objective-C/Objective-C++, Fortran, Ada et Go, éventuellement du Pascal. Java n'est pas concerné parce qu'il n'est pas compilé.
Citer : Posté le 12/05/2015 06:40 | #
Oula on voit tout de suite le connaisseur (pas comme moi )
En tout cas merci.... Et toi tu programmes tous tes jeux en C ?
Stick hero
Citer : Posté le 12/05/2015 08:24 | #
En effet, je préfère de loin de langage C à tous ceux que j'ai testés.
Il m'arrive aussi d'écrire en C++, mais seulement sur un subset réduit : classes et templates, en limitant au maximum les abstractions inutiles, et sans utiliser les références, les dizaines de casts différents, ni les flux standard du C++ entre autres...
Après c'est surtout une question goût et de préférence.
Citer : Posté le 12/05/2015 19:46 | #
D'accord merci !
Je pense apprendre le C l'année prochaine comme ça je pourrai faire des jeux bien plus jolis qu'avec le Basic !!!
Stick hero
Citer : Posté le 12/05/2015 21:52 | #
Bonne chance dans cette voie. Ce n'est pas la plus facile, mais c'est sans doute celle qui te sera le plus utile pédagogiquement par la suite.
dimitryy Invité
Citer : Posté le 02/06/2018 20:37 | #
wesh les mans, j'ai toujours fait des jeux avec des caracteres et je m'attaque a l'utilisation de pixels singulièrement, savez-vous comment deplacer une picture? et en mettre une qui ne s'efface pas en arrière plan ?
Citer : Posté le 02/06/2018 20:39 | #
Déplacer : c'est impossible (désolé !).
Mettre en arrière-plan : regarde la référence Basic de BG-Pict et BG-None, par ici :
https://www.planet-casio.com/Fr/reference_basic_casio/