VRML Worlds, Mondes VRML

Membre de ClickFR, Reseau francophone Paie-Par-Click

L'utilisation de USE et DEF

Utilisation de DEF

DEF permet de nommer un noeud de votre scène 3D. Le nom que vous aller donner à votre noeud pourra être réutilisé par la suite dans votre fichier.

On nomme un noeud en utilise DEF pour deux raisons possibles :

Créer un instance d'un noeud déjà existant : USE

USE permet de créer une nouvelle instance d'un noeud défini par DEF. Dans ce cas, le noeud (par exemple le cube) se trouvera deux fois dans la scène (voir l'exemple).

Attention, le USE ne recopie pas le noeud dans la scène, il créée une deuxième instance du même noeud. Le noeud aura en fait deux parents.

Exemple 1 : Ici, on définit un arbre avec DEF que l'on réutilise avec USE. Pour plus d'explications sur les BillBoard, vous trouverez sur le site un exemple d'arbre.

#VRML V2.0 utf8

Transform {
 # on crée un arbre grâce au noeud Billboard
 # avec DEF, on le nomme arbre1
 children DEF arbre1 Billboard {
  children Shape {
   appearance Appearance {
    texture ImageTexture {
     url "tree.gif"
    }
   }
   geometry IndexedFaceSet {
    coord Coordinate {
     point [ -2.5 0 0,
     2.5 0 0,
     2.5 5 0,
     -2.5 5 0 ]
    }
    coordIndex [ 0, 1, 2, 3, -1 ]
    texCoord TextureCoordinate {
     point [ 0 0,1 0,1 1,0 1 ]
    }
    texCoordIndex [ 0, 1, 2, 3, -1 ]
   }
  }
  axisOfRotation 0 1 0
 }
}

# dans un autre noeud transform, on place un deuxième arbre en utilisant USE
Transform {
 translation 4 0 0
 children USE arbre1
}

Voir le résultat.

Exemple 2 : En crée un noeud l'apparence qui ressemble à du verre que l'on réutilise dans un autre objet.

#VRML V2.0 utf8

#On crée un cube
Shape {
 #on crée un noeud appearance qui va ressembler à du verre
 #On le nommme "verre" grace à DEF 
 appearance DEF verre Appearance {
  material Material {
   diffuseColor 0 0.7 0.8
   transparency 0.5
  }
  texture ImageTexture {
   url "verre.jpg"
  }
 }
 geometry Box {
  size 1 2 1
 }
}

# on va créer un cone
Transform {
 translation .5 0 -3
 children Shape {
  #On utilise la même appearance avec USE
  appearance USE verre
  geometry Cone {
   height 2
  }
 }
}

Voir le résultat.

Télécharger tous les fichiers d'exemple.

Utilisation de ROUTE

La commande ROUTE utilise des noeuds nommé grâce à DEF. Pour plus d'explications, voir la commande ROUTE.


 Accueil de VRML Worlds   CHAT 3D   Autres technologies Web3D 
 Des textures   Apprendre le VRML   Autres mondes multi-user 
 Les objets du chat   Outils pour le VRML   Autres sites 3D 

Réagir, nous proposer un site, participer ...