Annonce

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


#1 2014-10-04 14:08:44 Problème d'effacement des contours sur un dessin

PHIFO
membre
Date d'inscription: 2014-04-27
Messages: 91

Problème d'effacement des contours sur un dessin



Je travail sur une rotation de boites dans un univers 3 D

Sur celle ci je veux faire passer des cercles de couleur.

le problème est que lorsque je passe sur les boites avec ce cercle, celui ci efface les contours des boites au fure et à mesure de son avancement.

Comment faire pour que l'instruction stroke() des boites ne soit pas effectuée par celle des cercles malgré que celle ci soit encadré par un pushMatrix() et un popMatrix() au niveau des cercles.

Merci d'avance pour la réponse

voici ci dessous le programme que j'ai écrit:


// ROTATION
float a ;  //angle rotation               
float b=2;
float c=64;
int num = 39; 
int lol = 0;// Nombre de boites

//CIRCLES
float L = width/2; float H = height/2;
float m = 0;
float n = 5;
 
void setup() {
  size(1280, 720, P3D);
}


void draw() {
println(frameCount);
frameRate(24);
ROT();
E1();
}
 
void ROT(){ 

  // ROTATION

  if ( frameCount <3200) {
    pushMatrix();
  lights();
  strokeWeight(c);
background(0);
  translate(width/2, height/2);
  float offset = PI/b;  // Angle offset entre boites 
  for(int i = 1; i < num; i++)

   
{
colorMode(HSB, 30,2,150);
   pushMatrix();
  pushMatrix();
    stroke(lol);
    popMatrix();
fill(i,38,150);
    rotateY(-a*20 + offset*i+26);
    rotateX(a/8 + offset/i*6);
    rotateZ(-a*60 + offset*4*i);
    box(450);
   
  popMatrix();
  }
  a += 0.00015;
  b += 0.08;
  c -= 0.047;
    popMatrix();
   
  }
}

void E1() { // CERCLE
   
if (frameCount >500) {
  rectMode(CENTER);
  translate(L, H, 10);
  pushMatrix();
  fill(255,10);
  translate(0, 0,400 );
stroke(#6203FF);
strokeWeight(n);
  ellipse(0, 0, m, m);
  m += 5;
  n += 0.02;
  popMatrix();
}
}

Hors ligne

 

#2 2014-10-04 15:59:11 Re : Problème d'effacement des contours sur un dessin

matheynen
membre
Date d'inscription: 2008-06-09
Messages: 226

Re: Problème d'effacement des contours sur un dessin



Tu peux essayer d'utiler un pushStyle() et un popStyle() autour de ce que tu veux garder intact.


Ce que vous avez fait au plus petit de mes frères, c'est à moi que vous l'avez fait.

Hors ligne

 

#3 2014-10-04 19:11:12 Re : Problème d'effacement des contours sur un dessin

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

Re: Problème d'effacement des contours sur un dessin



Le problème, est que tu dessines une forme 2D dans un univers 3D. Pour résoudre ce problème, il faut après avoir dessiner ta forme en 3D désactiver la 3D pour dessiner ta forme 2D :

void draw() {
  println(frameCount);
  frameRate(24);
  ROT(); 
  hint(DISABLE_DEPTH_TEST);
  camera();
  noLights();
  E1();
  hint(ENABLE_DEPTH_TEST);
}

Hors ligne

 

#4 2014-10-04 22:56:28 Re : Problème d'effacement des contours sur un dessin

PHIFO
membre
Date d'inscription: 2014-04-27
Messages: 91

Re: Problème d'effacement des contours sur un dessin



Merci Mushussu, c'est parfait ça marche et ça m'aura fait comprendre un peu plus le 3D. Dans mon esprit le fait de positionner une surface plane par une instruction 3D ( translate(x,y,z) en faisait une forme 3D.
   L'instruction    hint(DISABLE_DEPTH_TEST); est-elle une instruction java? Il faudra donc que j'étudie aussi java pour complêter processing.

Dernière modification par PHIFO (2014-10-04 23:01:54)

Hors ligne

 

#5 2014-10-05 00:56:12 Re : Problème d'effacement des contours sur un dessin

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

Re: Problème d'effacement des contours sur un dessin



C'est du processing, cette méthode était documentée dans les versions précédentes :
https://www.andrew.cmu.edu/course/60-25 … hint_.html

Mais elle ne l'est plus depuis la 2.0, à priori.

Si tu veux poursuivre ton apprentissage en programmation, l'étude du java t'apportera des compléments pour Processing. Il y a un MOOC actuellement qui est très bien fait :
http://www.coursera.org/course/initprogjava
Et pour poursuivre :
http://www.coursera.org/course/intropoojava

Hors ligne

 

#6 2014-10-05 21:43:25 Re : Problème d'effacement des contours sur un dessin

PHIFO
membre
Date d'inscription: 2014-04-27
Messages: 91

Re: Problème d'effacement des contours sur un dessin



Merci pour les renseignements, je suis allé voir les MOOC , c'est intéressant et je m'y suis inscrit pour pouvoir progresser

Hors ligne

 

fil rss de cette discussion : rss

Pied de page des forums

Powered by FluxBB

codelab, graphisme & code : emoc / 2008-2024