Annonce

>>> Bienvenue sur codelab! >>> Première visite ? >>> quelques mots sur codelab //// une carte des membres//// (apéros) codelab


#1 2014-03-23 05:36:04 axe rotation

fabrice54
membre
Date d'inscription: 2012-06-07
Messages: 242

axe rotation



bonjour.

Peut on décaler un axe de rotation.Dans le programme suivant j'aimerais mettre l'axe de rotation sur la gauche et non au centre.

Code (P5) :

float a;
void setup(){
  size(500,500,P3D);
  a=0;
  }
void draw(){
background(200);
  translate(100,150);
  rotateX(1);
  fill(50);
  box(40,40,200);
    translate(140,50);
 fill(100);
    rotate(a);
    box(200,10,150);
 
  if(a<PI/2)
  {
    a=a+0.01;
  }
 
}

Hors ligne

 

#2 2014-03-23 06:22:21 Re : axe rotation

Mushussu
membre
Lieu: Orléans
Date d'inscription: 2012-05-24
Messages: 802

Re: axe rotation



Pour cela, il faut décaler ta figure avant ta rotation. Utilise plutôt la camera pour visualiser dans un angle différent que de faire pivoter la scène.

float a;  
int largeurPorte, epaisseurPorte, gond;

void setup() {  
  size(500, 500, P3D);
  largeurPorte = 200;
  epaisseurPorte = 10;
  gond = 5;
  a=0;
}  

void draw() {  
  background(200);
  camera(width / 2, height, 200.0, width/2.0, height/2.0, 0, 0, 1, 0);

  // Poteau
  translate(150, height / 2, 0);  
  fill(50);  
  box(40, 40, 200);  

  // Gonds
  translate(20 + gond, 0, 0);
  pushMatrix();
  translate(0, 0, -50);
  sphere(gond);
  popMatrix();
  pushMatrix();
  translate(0, 0, 50);
  sphere(gond);
  popMatrix();

  // Porte
  fill(100);  
  rotate(a); 
  translate(largeurPorte / 2 + gond, 0, 0);
  box(largeurPorte, epaisseurPorte, 150);  

  if (a<PI/2) {  
    a=a+0.01;
  }
}

Dernière modification par Mushussu (2014-03-23 06:24:46)

Hors ligne

 

#3 2014-03-23 07:05:51 Re : axe rotation

fabrice54
membre
Date d'inscription: 2012-06-07
Messages: 242

Re: axe rotation



Bonjour.

Merci pour le programme c'est super ;je ne connaissait pas la camera; cela m'a l'air très bien.
Merci.

Hors ligne

 

fil rss de cette discussion : rss

Pied de page des forums

Powered by FluxBB

codelab, graphisme & code : emoc / 2008-2025