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

OpenSceneGraph Discussion :

Classe Transform à quoi ca sert ? [débutant]


Sujet :

OpenSceneGraph

  1. #1
    Membre régulier Avatar de OSryx
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Luxembourg

    Informations forums :
    Inscription : Janvier 2010
    Messages : 70
    Points : 73
    Points
    73
    Par défaut Classe Transform à quoi ca sert ? [débutant]
    Bonjour,

    Je suis débutant en OpenSceneGraph, et je n'arrive pas à saisir le sens des classes Transform() (par ex: PositionAttitudeTransform).

    A quoi ca sert ? j'ai deja lu la doc mais je n'arrive toujours pas à saisir son utilité ?!!!

    doc osg

    bonne journée

  2. #2
    Membre éprouvé
    Avatar de Ange_blond
    Homme Profil pro
    Ingénieur développement en 3D temps réel
    Inscrit en
    Mars 2007
    Messages
    902
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement en 3D temps réel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2007
    Messages : 902
    Points : 1 179
    Points
    1 179
    Par défaut
    Bonjour,

    C'est tres simple si tu es un peu familier avec les graphs de scene.
    Sinon, en quelques mots voilà une explication sommaire :

    Un graph de scene est un arbre. Le noeud racine (root) est le point de départ d'a peu pres toutes les actions.
    Chaque element ajouté dans ta scene sera attaché quelque part dans le graph.

    Au moment du rendu, OSG va parcourir le graph en partant du root et en descendant dans tous les enfants.

    Voilà pour le graph de scene.

    Maintenant, comment fait on pour placer un element dans la scene a l'endroit qu'on veut ?
    C'est là que les Transform interviennent : un transform est un noeud du graph, qui a le meme role qu'un group, et qui en plus a la notion de position/rotation/echelle.

    En somme, ça te permet de positionner/déplacer les elements de ton choix dans ta scene.

    C'est un element relatif comme tous les nodes.
    J'en parle d'ailleurs là : http://www.developpez.net/forums/d54...rtie-objet-3d/

    J'ai pas l'impression d'etre clair mais en résumé : tu charge un modele, tu l'attache à un PositionAttitudeTRansform, et tu attache ce transform au root.
    Tu modifie ensuite la position de ton PAT (positionattitudetransform->setPosition(...) ) et ton modele chargé va changer de position.
    Tous les nodes attachés a ton PAT seront a la position qu'il contient.
    Rien ne t'empeche dans le cas de systeme plus complexe, d'empiler les PAT, car leur position est relative, et donc les enfants vont accumuler les transformations et se placer à l'endroit désigné par la somme de tous ses parents.

    Si ce n'est pas clair n'hesite pas à le préciser là je suis un peu en vrac, mais plus tard je pourrais faire quelques dessins voir un tuto dans les regles sur les transform et leur utilisation

    PS : genre dans ce code http://code.google.com/p/urbanshoote...onCallback.cpp je les utilise pour faire une animation en translation.
    "le langage C permet de tout faire, y compris se tirer dans le pied. Le langage C++ permet de tout faire, y compris se tirer dans le pied - et réutiliser la balle"

  3. #3
    Membre régulier Avatar de OSryx
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Luxembourg

    Informations forums :
    Inscription : Janvier 2010
    Messages : 70
    Points : 73
    Points
    73
    Par défaut
    merci votre explication es tres bien claire

    ps: j'ai bcp apprecié vos tutos Ange3D

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

Discussions similaires

  1. [Débutant] A quoi ca sert les trigger
    Par Vesta dans le forum Développement
    Réponses: 2
    Dernier message: 20/04/2006, 15h18
  2. [XSD] A quoi cela sert-il ? Comment l'utiliser ?
    Par s3r3nity dans le forum Valider
    Réponses: 1
    Dernier message: 18/12/2005, 00h05
  3. SPI_GETPOWEROFFACTIVE à quoi ca sert??
    Par marco62118 dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 10/11/2005, 13h51
  4. [Collections] L'interface "Iterator" à quoi ça sert
    Par Samanta dans le forum Collection et Stream
    Réponses: 8
    Dernier message: 07/04/2005, 17h51
  5. [VB6] [TWIPS] A quoi ça sert ?!
    Par HPJ dans le forum VB 6 et antérieur
    Réponses: 14
    Dernier message: 18/09/2003, 09h04

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