Outils pour utilisateurs

Outils du site


angle_d_un_vecteur

Ceci est une ancienne révision du document !


Dans Processing, il existe la méthode heading() de PVector pour déterminer l'angle d'un vecteur, mais les valeurs ne sont pas intuitives. Voici deux méthodes permettant d'avoir des valeurs progressant de 0 à 2 * PI :

PVector v;
 
void setup( ) {
  size(400, 400);
  v = new PVector(0, 0);
  stroke(255, 0, 0);
  fill(255, 0, 0);
}
 
void draw() {
  background(255);
  text(degrees(angleHoraire(v.heading())), 20, 30);
  v.set(mouseX - width / 2, mouseY -height / 2);
  v.normalize();
  v.mult(100);
  translate(width / 2, height / 2);
  line(0, 0, v.x, v.y);
}
 
float angleTrigonometrique(float a) {
  if (a < 0) {
    return -a;
  } else {
    return TWO_PI - a;
  }
}
 
float angleHoraire(float a) {
  if (a < 0) {
    return TWO_PI + a;
  } else {
    return a;
  }
}
angle_d_un_vecteur.1587779487.txt.gz · Dernière modification : 2020/04/25 01:51 de Mushussu