⇨ MENU ⇨ BIBLIOTHEQUE ⇨ box2dlib.bbc
PROC_b2DebugMatrix()
⇨ MENU ⇨ BIBLIOTHEQUE ⇨ box2dlib.bbc
PROC_b2DebugMatrix()
DESCRIPTION.
La procédure PROC_b2DebugMatrix() initialise la conversion ces coordonnées des pixels en BBC BASIC vers celles des points des mondes physique Box2d.
SYNTAXE.
PROC_b2DebugMatrix( horizontal , vertical , echelle )
REMARQUES.
horizontal doit être une valeur numérique indiquant le décalage horizontal, c'est-à-dire l'axe des abscisses, entre les pixel en BBC BASIC et les points du monde physique Box2d.
vertical doit être une valeur numérique indiquant le décalage vertical, c'est-à-dire l'axe des ordonnées, entre les pixel en BBC BASIC et les points du monde physique Box2d.
echelle doit être une valeur numérique indiquant l'échelle graphique, en pixels par mètre, pour harmoniser les mondes physiques Box2d, qui travaille en mètres, et la zone graphique de BBC BASIC qui s'exprime en pixels. Les valeurs standards recommandées vont de 20 à 50. Par exemple si echelle vaut 30, cela indique à Box2d que 30 pixels correspondent à 1 mètre.
Note : la procédure PROC_b2DebugMatrix() est appelée automatiquement au démarrage mais peut être rappelée si des changements sont apprendre en compte durant l'exécution du programme.
Box2D travaille dans un repère mathématique où le point d'origine (0,0) est au centre du monde physique et ayant le mètre comme unité de distance. Alors que le BBC BASIC travaille dans un repère écran où le point d'origine est situé dans le coin inférieur gauche et ayant le pixel comme unité de distance.
La procédure PROC_b2DebugMatrix() sert donc à définir la transformation (matrice) qui permet de convertir des coordonnées Box2D en coordonnées de la zone graphique du BBC BASIC pour positionner les corps d'un monde physique à l’écran, de choisir l’échelle de pixels par mètre. Sans cet appel, le dessin de debug Box2D serait invisible ou mal positionné.
Note : la procédure PROC_b2DebugInit() doit avoir été appelé avoir celui de la procédure PROC_b2DebugMatrix().
Voir le module box2dlib.bbc qui permet de créer des mondes Box2d et de gérer les corps et collisions dans ces mondes.
Voir la procédure PROC_b2DebugDraw() qui permet de visualiser les éléments sélectionnés à chaque mise à jour du monde.
La procédure PROC_b2DebugMatrix() est importée depuis le module box2ddbg.bbc.
RUBRIQUES.
Les dessins et les graphismes pour plus de détails sur la création de dessins et de graphismes.
La gestion des couleurs pour plus de détails sur la gestion des couleurs logiques et physiques.
EXEMPLE.
REM --- Importation des modules ---
REM --- Module de la bibliothèque BBC BASIC ---
INSTALL @lib$ + "box2dlib.bbc"
INSTALL @lib$ + "box2ddbg.bbc"
REM --- Initialisation et création du monde ---
PROC_b2Init
kmonde = FN_b2CreateWorld( 0 , 9.81 ) : REM - créer un monde
REM --- Initialisation et activation de debug draw ---
PROC_b2DebugInit( kmonde , 11 , 30 )
PROC_b2DebugMatrix ( 320 , 240 , 30 )
REM --- Fin du programme ---
END
Votre aide est précieuse pour améliorer ce site, alors n'hésitez pas à faire part de
Dans la RETROGICIEL vous trouvez des suggestions simples et classiques pour
TESTER - DÉCOUVRIR - PRATIQUER - APPROFONDIR - EXPLORER
avec un exemple de résolution à télécharger pour vous inspirer.