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] classe Tuple3d manquante


Sujet :

3D Java

  1. #1
    Membre habitué
    Inscrit en
    Avril 2010
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 10
    Par défaut [java3d] classe Tuple3d manquante
    salut a tous;
    j'ai un grave probleme avec eclipse ;
    j'ai un code d'un ColorCube3D ,le code est correcte ,j'ai ajouter les 3 jars (j3d_core,j3d_utils et vecmath) mais j'ai un bleme lors de l'execution du code j'ai les erreurs suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    "Exception in thread "main" java.lang.NoClassDefFoundError: javax/vecmath/Tuple3d
    	at ColorCube3D.<init>(ColorCube3D.java:22)
    	at ColorCube3D.main(ColorCube3D.java:83)
    Caused by: java.lang.ClassNotFoundException: javax.vecmath.Tuple3d
    	at java.net.URLClassLoader$1.run(Unknown Source)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at java.net.URLClassLoader.findClass(Unknown Source)
    	at java.lang.ClassLoader.loadClass(Unknown Source)
    	at java.lang.ClassLoader.loadClass(Unknown Source)
    	at java.lang.ClassLoader.loadClassInternal(Unknown Source)
    	... 2 more"
    pour "at ColorCube3D.<init>(ColorCube3D.java:22)" voici la ligne 22 "
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Canvas3D canvas3D = new Canvas3D(SimpleUniverse.getPreferredConfiguration());"
    elle est correcte mais je sais pas quoi faire ;
    et si je lance le code sous forme d'applet j'ai l'erreur suivante :
    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
    "java.lang.NoClassDefFoundError: javax/vecmath/Tuple3d
    	at ColorCube3D.<init>(ColorCube3D.java:22)
    	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    	at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    	at java.lang.reflect.Constructor.newInstance(Unknown Source)
    	at java.lang.Class.newInstance0(Unknown Source)
    	at java.lang.Class.newInstance(Unknown Source)
    	at sun.applet.AppletPanel.createApplet(Unknown Source)
    	at sun.applet.AppletPanel.runLoader(Unknown Source)
    	at sun.applet.AppletPanel.run(Unknown Source)
    	at java.lang.Thread.run(Unknown Source)
    Caused by: java.lang.ClassNotFoundException: javax.vecmath.Tuple3d
    	at java.net.URLClassLoader$1.run(Unknown Source)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at java.net.URLClassLoader.findClass(Unknown Source)
    	at java.lang.ClassLoader.loadClass(Unknown Source)
    	at java.lang.ClassLoader.loadClass(Unknown Source)
    	at java.lang.ClassLoader.loadClassInternal(Unknown Source)
    	... 11 more"
    et applet non initialisé .
    svp aider moi
    et merci pour votre aide

  2. #2
    Modérateur

    Avatar de Robin56
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2009
    Messages
    5 297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2009
    Messages : 5 297
    Par défaut
    Il est explicitement indiqué qu'il manque la classe Tuple3d se situant dans le jar vecmath.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "Exception in thread "main" java.lang.NoClassDefFoundError: javax/vecmath/Tuple3d
    Donc déjà vérifie que cette classe est bien présente.
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d'un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Architecte Solution
    LinkedIn : https://www.linkedin.com/in/nicolascaudard/

  3. #3
    Membre habitué
    Inscrit en
    Avril 2010
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 10
    Par défaut
    Citation Envoyé par Robin56 Voir le message
    Il est explicitement indiqué qu'il manque la classe Tuple3d se situant dans le jar vecmath.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "Exception in thread "main" java.lang.NoClassDefFoundError: javax/vecmath/Tuple3d
    Donc déjà vérifie que cette classe est bien présente.
    wéé c'est ce que j'ai fais au 1er coup, mais dans la bibliotheque vecmath il y a la classe Tuple3d

  4. #4
    Rédacteur/Modérateur
    Avatar de Logan Mauzaize
    Homme Profil pro
    Architecte technique
    Inscrit en
    Août 2005
    Messages
    2 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Transports

    Informations forums :
    Inscription : Août 2005
    Messages : 2 894
    Par défaut
    Vérifie que le JAR est bien dans le ClassPath lors de l'exécution, tu cliques sur la flèche vers le bas de l'icône . Puis cliques sur "Run configurations ..."

    Ensuite tu sélectionnes ta configuration, dans l'onglet Classpath.
    Java : Cours et tutoriels - FAQ - Java SE 8 API - Programmation concurrente
    Ceylon : Installation - Concepts de base - Typage - Appels et arguments

    ECM = Exemple(reproduit le problème) Complet (code compilable) Minimal (ne postez pas votre application !)
    Une solution vous convient ? N'oubliez pas le tag
    Signature par pitipoisson

  5. #5
    Membre habitué
    Inscrit en
    Avril 2010
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 10
    Par défaut
    tout est correcte le path est là les Jars sont là le code est correcte ;
    mais je sais pas quoi faire , j'ai verifié le path il y a la bibliotheque (qui contient les 3 Jars) que j'ai ajouté ,j'ai verifié aussi la classe tuple3d si elle existe ,elle est là

  6. #6
    Rédacteur/Modérateur
    Avatar de Logan Mauzaize
    Homme Profil pro
    Architecte technique
    Inscrit en
    Août 2005
    Messages
    2 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Transports

    Informations forums :
    Inscription : Août 2005
    Messages : 2 894
    Par défaut
    J'avais lu un peu vite mais regarde si tu as pas une autre exception car "java.lang.NoClassDefFoundError" signifie que le classloader a déjà essayé de charger la classe mais qu'il y a eu une erreur (éventuellement qui ne l'avais pas trouvé, mais ça reste à vérifier).
    Java : Cours et tutoriels - FAQ - Java SE 8 API - Programmation concurrente
    Ceylon : Installation - Concepts de base - Typage - Appels et arguments

    ECM = Exemple(reproduit le problème) Complet (code compilable) Minimal (ne postez pas votre application !)
    Une solution vous convient ? N'oubliez pas le tag
    Signature par pitipoisson

  7. #7
    Modérateur

    Avatar de Robin56
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2009
    Messages
    5 297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2009
    Messages : 5 297
    Par défaut
    Citation Envoyé par Nemek Voir le message
    J'avais lu un peu vite mais regarde si tu as pas une autre exception car "java.lang.NoClassDefFoundError" signifie que le classloader a déjà essayé de charger la classe mais qu'il y a eu une erreur (éventuellement qui ne l'avais pas trouvé, mais ça reste à vérifier).
    Il est écris :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Caused by: java.lang.ClassNotFoundException: javax.vecmath.Tuple3d
    un peu plus bas en tout cas.

    Mais peut être que swattheghost ne nous a pas tout montré ?
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d'un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Architecte Solution
    LinkedIn : https://www.linkedin.com/in/nicolascaudard/

  8. #8
    Membre habitué
    Inscrit en
    Avril 2010
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 10
    Par défaut
    non c toute la zone de l'erreur
    j'ai meme retelecharger le Jar vecmath et au moment de l'ajout dans la bibliotheque j'ai verifié l'existance de la classe Tuple3d et elle est là

  9. #9
    Nouveau candidat au Club
    Femme Profil pro
    Inscrit en
    Mai 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Mai 2011
    Messages : 2
    Par défaut
    Bonjour,
    je cherche à créer une pièce carrée ou rectangulaire (genre salon, chambre), vide, en 3D dans.
    mais ne connaissant pas du tout la 3D, je ne sais pas par quoi commencer pour me lancer sans perdre trop de temps. Je code avec Eclipse.
    Est-ce que quelqu'un a déjà créer ce genre de projet et pourrait me conseiller?
    Est-ce que quelqu'un a un tutrial genre
    Je vous remercie d'avance pour l'aide que vous pourrez m'apporter.

  10. #10
    Membre Expert
    Homme Profil pro
    Inscrit en
    Décembre 2010
    Messages
    734
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 734
    Par défaut
    Citation Envoyé par sondes2011 Voir le message
    Bonjour,
    je cherche à créer une pièce carrée ou rectangulaire (genre salon, chambre), vide, en 3D dans.
    mais ne connaissant pas du tout la 3D, je ne sais pas par quoi commencer pour me lancer sans perdre trop de temps. Je code avec Eclipse.
    Est-ce que quelqu'un a déjà créer ce genre de projet et pourrait me conseiller?
    Est-ce que quelqu'un a un tutrial genre
    Je vous remercie d'avance pour l'aide que vous pourrez m'apporter.
    Euh, premier conseil: crée ta propre discussion au lieu de digresser dans celle de quelqu'un d'autre...
    [EDIT]Ne te sens surtout pas agressé...ce n'est pas mon but, simplement tu seras plus visible sur un fil dédié à ta question, et les réponses de celle-ci seront plus faciles à suivre s'il n'y a qu'une seule question[/EDIT]

  11. #11
    Membre Expert
    Homme Profil pro
    Inscrit en
    Décembre 2010
    Messages
    734
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 734
    Par défaut
    Peut-être qu'il charge la classe mais n'arrive pas à l'initialiser: java3d a des dépendances natives (appel à l'API native pour faire le rendu à l'aide de la carte 3D) -> la lib est-elle référencée par la JVM?
    Pour chercher les lib natives, elle cherche dans les répertoires listés par la propriété suivante:
    java.library.path
    Ca fait aussi partie de la config de l'environnement d'exécution (et pour exécuter en-dehors de l'IDE, il faut passer la bonne valeur à la JVM par -Djava.library.path=<liste de répertoires où sont les libs>

  12. #12
    Rédacteur/Modérateur
    Avatar de Logan Mauzaize
    Homme Profil pro
    Architecte technique
    Inscrit en
    Août 2005
    Messages
    2 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Transports

    Informations forums :
    Inscription : Août 2005
    Messages : 2 894
    Par défaut
    Il devrait avoir une erreur de ce genre dans ce cas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    4 mai 2011 09:15:59 javax.media.j3d.NativePipeline getSupportedOglVendor
    GRAVE: java.lang.UnsatisfiedLinkError: no j3dcore-ogl-chk in java.library.path
    Java : Cours et tutoriels - FAQ - Java SE 8 API - Programmation concurrente
    Ceylon : Installation - Concepts de base - Typage - Appels et arguments

    ECM = Exemple(reproduit le problème) Complet (code compilable) Minimal (ne postez pas votre application !)
    Une solution vous convient ? N'oubliez pas le tag
    Signature par pitipoisson

  13. #13
    Nouveau candidat au Club
    Femme Profil pro
    Inscrit en
    Mai 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Mai 2011
    Messages : 2
    Par défaut
    Bonjour,
    je veux ajouter troirs mur a la scéne
    le pgm :
    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
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    private Texture chercheTexture(String s) { 
    if ( applet ) { 
    try { 
    String adresse = base+s ; 
    URL u1 = new URL(adresse); 
    return(new TextureLoader(u1,this).getTexture()) ; } 
    catch (MalformedURLException e) { return(new Texture2D());} } 
    else 
    return(new TextureLoader(s,this).getTexture()); 
    } 
    public Transform3D Trans_form3D(Vector3d T,Vector3d S,AxisAngle4d r) 
    { 
    Transform3D drehung = new Transform3D(); 
    Transform3D drehung2 = new Transform3D(); 
    drehung2.setTranslation(T); 
    drehung2.setScale(S); 
    drehung2.setRotation(r); 
    drehung.mul(drehung2); 
    return(drehung); 
    } 
    public TransformGroup Transform_Group(Transform3D d,String h) 
    { 
    TransformGroup objDreh1 = new TransformGroup(d); 
    Scene scene = null; 
    if (h.endsWith(".3ds")) 
    { 
    Loader3DS loader = new Loader3DS(); 
    loader.setFlags(Loader3DS.LOAD_ALL); 
    try{ 
    scene = loader.load(h); 
    } 
    catch (Exception e) 
    { 
    scene = null; 
    System.err.println(e); 
    } 
    if( scene == null ) 
    {System.out.printf("kkkk"); 
    System.exit(1); 
    } 
    } 
    if (h.endsWith(".obj")) 
    { 
    ObjectFile file = new ObjectFile(ObjectFile.RESIZE); 
    try { 
    scene = file.load(ClassLoader.getSystemResource(h )); 
    } catch (FileNotFoundException e) { 
    } 
    } 
    BranchGroup rootGroup = null; 
    if (scene != null && (rootGroup = scene.getSceneGroup()) != null) 
    objDreh1.addChild(rootGroup); 
    return(objDreh1); 
    } 
    public void platforme(TransformGroup objTrans) 
    { 
    Appearance a1 = new Appearance(); 
    Texture t = chercheTexture("texture/textuer03.jpg"); 
    a1.setTexture(t); 
    Transform3D t3D = new Transform3D(); 
    t3D.setRotation(new AxisAngle4d(1.0,0.0,0.0,Math.PI / 2.0d));//Math.PI/5.0)) ; 
    objTrans.setTransform(t3D); 
    Box b=new Box(0.5F,0.5F,0.001F,Box.GENERATE_TEXTURE_COORDS|Box.GENERATE_NORMALS|Box.ENABLE_GEOMETRY_PICKING,a1); 
    b.setCapability(Geometry.ALLOW_INTERSECT); 
    PickRotateBehavior behavior1 =new PickRotateBehavior(objRoot, c, largeBounds); 
    behavior1.setMode(PickTool.GEOMETRY); 
    objTrans0.addChild(behavior1); 
    objTrans2.addChild(b); 
    } 
    public TransformGroup TFG(BoundingSphere largeBounds,Vector3d T,Vector3d S,AxisAngle4d r,String h) 
    { Transform3D drehung2 = Trans_form3D(T,S,r); 
    TransformGroup objTrans = new TransformGroup(); 
    objTranss.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE); 
    objTranss.setCapability(TransformGroup.ALLOW_TRANSFORM_READ); 
    objTranss.setCapability(TransformGroup.ENABLE_PICK_REPORTING); 
    { MouseZoom behavior = new MouseZoom(objTranss); 
    objTranss.addChild(behavior); 
    behavior.setSchedulingBounds(largeBounds); } 
    // move platform 
    { MouseRotate behavior = new MouseRotate(objTranss); 
    objTranss.addChild(behavior); 
    behavior.setSchedulingBounds(largeBounds); } 
    if (h!="") 
    objTrans.addChild(Transform_Group(drehung2,h)); 
    return(objTrans); 
    } 
    void objets() 
    { 
    objTrans2=TFG(largeBounds,T2,S,r,""); 
    platforme(objTrans2 ); 
    } 
    public BranchGroup createSceneGraph(SimpleUniverse u) { 
    largeBounds = new BoundingSphere(new Point3d(0.0,0.0,0.0),100.0); 
    { Vector3f ldir = new Vector3f(1.0F,1.0F,-1.0F); 
    Color3f lcouldl = new Color3f(1.0F,1.0F,1.0F); 
    DirectionalLight dl = new DirectionalLight(lcouldl,ldir); 
    dl.setInfluencingBounds(largeBounds); 
    objRoot.addChild(dl); } 
    { Color3f lcoulal = new Color3f(0.3F,0.3F,0.1F); 
    AmbientLight al = new AmbientLight(lcoulal); 
    al.setInfluencingBounds(largeBounds); 
    objRoot.addChild(al); } 
    objets(); 
    /////////////////////// 
    objTranss.addChild(objTrans2); 
    objRoot.addChild(objTranss); 
    /////////////////////////// 
    objRoot.compile(); 
    return objRoot; 
    } 
    public void lanceJava3D() { 
    setLayout(new BorderLayout()); 
    GraphicsConfiguration config; 
    config = SimpleUniverse.getPreferredConfiguration(); 
    c = new Canvas3D(config); 
    add("North",c); 
    u = new SimpleUniverse(c); 
    BranchGroup scene = createSceneGraph(u); 
    Vector3f viewTranslation = new Vector3f(); 
    viewTranslation.z = 3; 
    viewTranslation.x = 0f; 
    viewTranslation.y = .3f; 
    Transform3D viewTransform = new Transform3D(); 
    viewTransform.setTranslation(viewTranslation); 
    rotation.mul(viewTransform); 
    //////////////////////////////////// 
    c.setSize(300, 300); 
    Panel panel = new Panel(); 
    panel.setLayout(new BorderLayout()); 
    panel.setSize(500,500); 
    panel.add(c); 
    add("Center", panel); 
    ////////////////////////////////// 
    u.getViewingPlatform().getViewPlatformTransform().setTransform(rotation); 
    u.addBranchGraph(scene); 
    //u1.getViewingPlatform().getViewPlatformTransform().setTransform(rotation); 
    } 
    public void init() { 
    if ( applet ) { 
    URL url = this.getCodeBase(); 
    base = url.toString(); 
    lanceJava3D(); } 
    } 
    public platform() { 
    if ( !applet ) { 
    lanceJava3D(); } 
    } 
    public static void main(String[] args) { 
    applet = false ; 
    new MainFrame(new platform(),600,150); 
    } 
    @Override 
    public void keyReleased(KeyEvent arg0) { 
    // TODO Auto-generated method stub 
    } 
    @Override 
    public void keyTyped(KeyEvent arg0) { 
    // TODO Auto-generated method stub 
    } 
    @Override 
    public void actionPerformed(ActionEvent e) { 
    } 
    @Override 
    public void keyPressed(KeyEvent e) { 
    // TODO Auto-generated method stub 
    } 
    }

Discussions similaires

  1. Classe TDBPlannerCalendar manquante
    Par sam-sam dans le forum Composants VCL
    Réponses: 7
    Dernier message: 07/10/2008, 10h08
  2. [Java3D] Classe Gravité
    Par akito dans le forum 3D
    Réponses: 8
    Dernier message: 10/04/2007, 13h49
  3. glutCreateMenu et Classe C++, Argument manquant
    Par Sunsawe dans le forum GLUT
    Réponses: 1
    Dernier message: 21/10/2006, 11h26
  4. [DEBUTANT]methode manquante dans ma classe ?
    Par Battosaiii dans le forum Débuter
    Réponses: 3
    Dernier message: 25/08/2006, 11h56
  5. [POI] Classe manquante
    Par Hoegaarden dans le forum Documents
    Réponses: 2
    Dernier message: 12/10/2005, 17h22

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