IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

3D Java Discussion :

[Java3D] creer un cube


Sujet :

3D Java

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 45
    Par défaut [Java3D] creer un cube
    Bonjour a tous,

    Je suis débutant en java3D et je cherche des fonctions permettant de créer un cube dont les faces seront de la couleur que je veux.
    Est-il possible (j'espere que oui) de créer des faces a partir de 4 points comme en opengl? Si oui comment?

    Merci de votre aide.

  2. #2
    Rédacteur
    Avatar de eclesia
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    2 109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 109
    Par défaut
    tu as plusieurs tutoriels sur java3D ici :
    http://java.developpez.com/cours/

    mais OpenGL existe pour java (chercher JOGL ou JSR231)

    les changements sont minimes si tu as deja fait du openGL.

  3. #3
    Membre émérite
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Par défaut
    Ca parle de cube et ça parle de 3D. De plus c'est un petit exemple donc je pense que ce lien devrait te convenir

    http://mari.developpez.com/tutoriel/java/3d/chap1/#L2.1

  4. #4
    Membre Expert
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Par défaut
    Citation Envoyé par sironimo
    Ca parle de cube et ça parle de 3D. De plus c'est un petit exemple donc je pense que ce lien devrait te convenir

    http://mari.developpez.com/tutoriel/java/3d/chap1/#L2.1
    Salut

    c'est la base depuis laquel on est parti (je suis avec lui sur le projet) mais ici il y a juse un cube avec ses 6 faces de couleurs différente et que l'on ne peut a priori pas choisir :/

  5. #5
    Membre émérite
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Par défaut
    ok autant pour moi.

    A part vous renvoyer vers JOGL comme l'a dit eclesia ou encore vous conseiller les recherches cube+3d+java ou rumikub+3d+java sous un moteur de recherche (ce que je suis sur que vous avez déjà fait), je ne peux rien dire de plus qui puisse vous aider

  6. #6
    Expert confirmé

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 817
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 817
    Par défaut
    Salut,

    Petite recherche sur le net... http://deven3d.free.fr/java3d/chap03.htm

    Avec le code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    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
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 45
    Par défaut
    Merci beaucoup c'est exactement ce que je voulais ^^. Par contre il manque deux faces XD, mais c'est facile a rajouter quand on a ce code.

  8. #8
    Invité
    Invité(e)
    Par défaut ...
    Je te conseille plutôt JOGL que Java3D car c'est plus rapide. Si tu te contentes d'afficher juste quelques cubes, tu ne verras pas la différence mais si ton projet prend de l'envergure, ce serait nettement mieux.

  9. #9
    Membre Expert
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Par défaut
    Merci pour le conseil mais c'est trop tard le projet est sur le point d'etre achevé, le codage est terminé

  10. #10
    Membre Expert
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Par défaut
    Oulaaa, je retombe sur ce vieux sujet par hazard...
    Premier sur google avec la recherche "Créer un cube java 3D"

    Pour la nostalgie, voila le résultat de ce vieux projet que j'avais gardé dans un coin :
    http://seb33300.free.fr/rubik/

    (un rubik's cube en 3D avec algorithme de résolution)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [JAVA3D] Construire un cube aléatoirement
    Par Vins0 dans le forum 3D
    Réponses: 1
    Dernier message: 02/03/2010, 15h31
  2. Réponses: 5
    Dernier message: 10/08/2007, 13h07
  3. [Java3D] Couleur de la face inférieure d'un cube
    Par Maxi-môme dans le forum 3D
    Réponses: 4
    Dernier message: 10/05/2007, 16h32
  4. [langage] comment créer des fichiers ?
    Par Anonymous dans le forum Langage
    Réponses: 3
    Dernier message: 05/05/2002, 16h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo