Bonjour,
j'ai un peu honte de demander ça mais je n'arrive pas à trouver la solution !!!
Voilà, j'ai fait une classe pour gérer des sprites qui commence comme ça :
class Sprite {
PImage Gimage;
int x,y; //Position du point de référence dans l'écran
int dx,dy; //Position du point de référence dans l'image
boolean visible;
int direction; // en degrés
Sprite(PImage Gimage, int x, int y, int dx, int dy,int direction, boolean visible) {
this.Gimage=Gimage;
this.x=x;
this.y=y;
this.dx=dx;
this.dy=dy;
this.visible=visible;
this.direction=direction;
}
void display() {
if (visible) {
--> C'est là que j'ai des problèmes
Je voudrais faire tourner l'image en fonction d'un angle que je mettrais dans la variable "direction" (en degrés, c'est un détail !)
mais je ne veux pas faire tourner l'image en fonction du point en haut à droite mais en fonction d'un point x,y
Le point d'origine de l'image (en haut à droite de celle-ci) étant le point situé aux coordonnées : (x-dx,y-dy).
(dx,dy) étant ce point de référence à l'intérieur de l'image proprement dite par rapport au point situé en haut à gauche de celle-ci
J'ai beau chercher, pour l'instant je nage ! (plutôt la brasse coulée)
Est-ce que quelqu'un aurait une bouée ???
P.S. Je sais bien qu'il faut utiliser les fonctions pushmatrix, popmatrix, translate et rotate mais je n'arrive pas à me dépatouiller avec la fonction image qui prend comme coordonnées le point situé en haut à gauche de celle-ci.
Je dois faire un jeu dans lequel une abeille suit un chemin. Au pire, je ne la ferai pas tourner mais bon !)
Hors ligne
Je crois que tu trouveras ton bonheur avec la mythique fonction atan2 :
http://processing.org/reference/atan2_.html
Hors ligne
Merci beaucoup : c'est l'information qui me manquait !!!
(J'avais pourtant vu cette fonction mais je n'avais pas "percuté" mdr )
je mets ce que j'ai fait là : http://legaou.net/a/sprite0-1/
Hors ligne
Je n'ai pas besoin de "3D" pour mes projets actuels (des petits jeux vidéos pour la page internet d'une association).
mais, c'est bon : ça marche maintenant
Hors ligne
Pages: 1