| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 
 | /**
 * Objet geometrique qui represente un cube dont les faces visibles
 * sont colorees
 */
class Cube extends Shape3D {
 
  /**
   * Constructeur
   */
  public Cube() {
    // Les coordonnees des 16 sommets des 4 faces visibles du cube
    // Face 1
    Point3f face1_s1 = new Point3f(-0.5f, 0.5f, 0.5f);
    Point3f face1_s2 = new Point3f(-0.5f, -0.5f, 0.5f);
    Point3f face1_s3 = new Point3f( 0.5f, -0.5f, 0.5f);
    Point3f face1_s4 = new Point3f( 0.5f, 0.5f, 0.5f);
 
    // Face 2
    Point3f face2_s1 = new Point3f( 0.5f, 0.5f, 0.5f);
    Point3f face2_s2 = new Point3f( 0.5f, -0.5f, 0.5f);
    Point3f face2_s3 = new Point3f( 0.5f, -0.5f, -0.5f);
    Point3f face2_s4 = new Point3f( 0.5f, 0.5f, -0.5f);
 
    // Face 3
    Point3f face3_s1 = new Point3f( 0.5f, 0.5f, -0.5f);
    Point3f face3_s2 = new Point3f( 0.5f, -0.5f, -0.5f);
    Point3f face3_s3 = new Point3f(-0.5f, -0.5f, -0.5f);
    Point3f face3_s4 = new Point3f(-0.5f, 0.5f, -0.5f);
 
    // Face 4
    Point3f face4_s1 = new Point3f(-0.5f, 0.5f, -0.5f);
    Point3f face4_s2 = new Point3f(-0.5f, -0.5f, -0.5f);
    Point3f face4_s3 = new Point3f(-0.5f, -0.5f, 0.5f);
    Point3f face4_s4 = new Point3f(-0.5f, 0.5f, 0.5f);
 
    // Les couleurs des 4 faces visibles du cube
    Color3f color1 = new Color3f(Color.red);
    Color3f color2 = new Color3f(Color.green);
    Color3f color3 = new Color3f(Color.blue);
    Color3f color4 = new Color3f(Color.yellow);
 
    // Construction de l'objet geometrique QuadArray constitue de 16
    // points
    QuadArray quadArray = new QuadArray(16,
                                        QuadArray.COORDINATES | QuadArray.COLOR_3);
 
    // Tableau des points constituant les 4 faces (quadrilateres) qui
    // sont visibles
    quadArray.setCoordinates(0, new Point3f[] {
    /* face 1 */             face1_s1, face1_s2, face1_s3, face1_s4,
    /* face 2 */             face2_s1, face2_s2, face2_s3, face2_s4,
    /* face 3 */             face3_s1, face3_s2, face3_s3, face3_s4,
    /* face 4 */             face4_s1, face4_s2, face4_s3, face4_s4
    });
 
    // Tableau des couleurs des 4 sommets de chaque face
    quadArray.setColors(0, new Color3f[] {
    /* couleur face 1 */ color1, color1, color1, color1,
    /* couleur face 2 */ color2, color2, color2, color2,
    /* couleur face 3 */ color3, color3, color3, color3,
    /* couleur face 4 */ color4, color4, color4, color4
    });
 
    this.setGeometry(quadArray);
  } // fin constructeur
} // fin class Cube extends Shape3D | 
Partager