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 :

Rotation de la camera en java3D


Sujet :

3D Java

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 78
    Points : 49
    Points
    49
    Par défaut Rotation de la camera en java3D
    Bonjour à tous,
    dans le cadre du développement d'une application en java3D, je cherche à contrôler les mouvements de la caméra.
    En fait j'arrive bien à balayer l'écran avec des translations, mais je voudrais que la caméra soit toujours orientée vers l'origine.

    Voilà à quoi ressemble mon code :

    /**
    * Réalise l'analyse
    *
    */
    public void analyse (float xMin, float xMax, float yMin, float yMax, float z) {

    float x, y; // Variables des boucles de parcours
    Transform3D translation;

    translation = new Transform3D ();

    // Boucle de parcours des x
    for (x = xMin; x <= xMax; x += 0.5) {

    // Boucle de parcours des y
    for (y = yMin; y <= yMax; y += 0.5) {


    translation.setTranslation(new Vector3f (x, y, z));

    /**
    modelisation.getView() retourne le TransformGroup du SimpleUniverse
    view = simpleU.getViewingPlatform().getViewPlatformTransform();
    **/

    modelisation.getView().setTransform(translation);


    }// Fin boucle de parcours des y

    }// Fin boucle de parcours des x

    System.out.println("analyse terminée");


    }//end of method
    Si je ne metrompes pas, dans le code cité ci-dessus, la caméra balaye l'écran par des translation le ong des x et des y, mais regarde toujours devant elle. J'aimerais lui appliquer les rotations nécessaires pour que tout en effectuant ces translations, elle point toujours vers le point d'origine (0,0,0)

    Meri d'avance

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 78
    Points : 49
    Points
    49
    Par défaut
    C'est bon, j'ai résolu mon problème
    Pour ceux que ça intéresse, ça donne ça :
    /**
    * Réalise l'analyse
    *
    */
    public void analyse (float xMin, float xMax, float yMin, float yMax, float z) {

    float x, y; // Variables des boucles de parcours
    Transform3D phiRot, thetaRot, translation;
    double phi, theta;
    Clavier c;



    // Boucle de parcours des x
    for (x = xMin; x <= xMax; x += 0.25f) {

    // Boucle de parcours des y
    for (y = yMin; y <= yMax; y += 0.25f) {

    phiRot = new Transform3D ();
    thetaRot = new Transform3D ();
    translation = new Transform3D ();


    theta = Math.atan(x/z);
    phi = Math.atan(y/z);

    translation.setTranslation(new Vector3f (x, y, z));

    phiRot.rotX(-phi);
    thetaRot.rotY(theta);

    translation.setTranslation(new Vector3f (x, y, z));

    translation.mul(phiRot);
    translation.mul(thetaRot);
    modelisation.getView().setTransform(translation);


    }// Fin boucle de parcours des y

    }// Fin boucle de parcours des x

    System.out.println("analyse terminée");
    Voilà

  3. #3
    Candidat au Club
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2008
    Messages
    3
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2008
    Messages : 3
    Points : 4
    Points
    4
    Par défaut
    Salut, j'ai le même probleme que tu as eu mais je ne comprend pas ton code, pourrais tu m'expliquer à quoi correspond Xmin et xmax...? stp merci, je n'ai pas un niveau trés élèvé en java3D mais dans le cadre d'un travail à l'IUT il faut que l'on puisse tourner la caméra autour du centre de la scene merci de ta réponse ou de celle de quelqu'un d'autre.

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

Discussions similaires

  1. [Java3D] Rotation de la camera
    Par fjxokt dans le forum 3D
    Réponses: 1
    Dernier message: 06/06/2009, 12h34
  2. Recuperation des coordonnees de rotation d'une camera
    Par glamdrig dans le forum OpenSceneGraph
    Réponses: 10
    Dernier message: 18/05/2009, 16h16
  3. Rotation de la Camera, j'y arrive pas!
    Par zitezitoun dans le forum OpenGL
    Réponses: 6
    Dernier message: 24/04/2008, 01h11
  4. calculs mathematiques : rotation camera
    Par zax-tfh dans le forum OpenGL
    Réponses: 8
    Dernier message: 09/01/2006, 14h20
  5. Réponses: 9
    Dernier message: 30/08/2005, 21h18

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