|
À propos
Nouvelles
Télécharger
Utilisation
FAQ
Rétroaction
English
|
Extensions
Outre les possibilités offertes par les normes VRML/ X3D, Démotride supporte plusieurs extensions pour mieux contrôler l'affichage et l'interaction avec la scène.
Ces extensions sont:
-
Arguments de ligne de commande: support d'arguments de ligne de commande pour spécifier la taille de l'affichage.
-
demotride <nom_du_fichier> -f
Lance Démotride en mode plein écran.
-
demotride <nom_du_fichier> -w dimX dimY posX posY
Lance Démotride dans une fenêtre de dimension (dimX, dimY) dont le coin supérieur gauche est situé en (posX, posY).
Les autres extensions concernent les noeuds VRML et sont:
-
Sphere: ajout de deux champs pour choisir le type de sphère et spécifier le nombres de faces.
-
field SFInt32 minFaceCnt 72 #[8..10^6]
Spécifie le nombre minimum garanti de faces sur la sphère créée.
-
field (custom) sphereType ISOCAHEDRON #[GLOBE, ISOCAHEDRON]
Spécifie le type de géométrie employé pour créer la sphère. ISOCAHEDRON a un apparence plus régulière et possède une résolution plus uniforme quant à l'aspect de ses sommets et polygones constituants. Le type GLOBE est plus approprié pour la texture et requiert environ 8 fois moins de mémoire (au détriment d'un rendu plus lent).
-
Cone: ajout d'un champ pour spécifier le nombre de faces sur le côté du cône.
-
Cylinder: ajout d'un champ pour spécifier le nombre de faces sur le côté du cylindre.
-
PointSet: ajout d'un champ pour spécifier la taille des points.
-
IndexedLineSet: ajout de champs pour spécifier la largeur et l'apparence de la ligne (ex.: pointillée, continue, etc.).
-
field SFFloat lineWidth 1.0 [min..max]
L'étendue des valeurs valides dépend du système graphique utilisé mais est typiquement de [0.5..10.0].
-
field SFInt32 lineStipplePattern 0xFFFF [0..0xFFFF]
Spécifie un patron de 16-bit pour dessiner la ligne (chaque bit égal à 1 = 1 pixel de ligne dessiné).
-
field SFInt32 lineStippleFactor 1 [1..255]
Spécifie un facteur d'échelle pour le patron.
NavigationInfo
-
Ajout d'une option pour spécifier le point de rotation de la scène lorsqu'on utilise le type de navigation EXAMINE.
Par défaut, le centre de rotation est le centre de la boîte englobante du monde. Pour spécifier un centre de rotation différent, ajouter un triplet (x,y,z) au champ avatarSize.
-
Ajout des types de navigation appellés «GAZE» et «GAZEPLUS».
-
Ajout d'un champ permettant de contrôler la vitesse de rotation du point de vue pour la navigation qui n'est pas de type EXAMINE.
exposedfield SFFloat rotationSpeed 1.0 ]0..∞[
-
Ajout d'un champ contrôlant la visibilité initiale du curseur lors du lancement de l'application.
exposedfield SFBool showCursor TRUE
-
Ajout d'un champ qui spécifie si la touche 'c' contrôlant la visibilité du curseur est active ou non.
exposedfield SFBool toggleCursor TRUE
KeySensor: nouveau noeud permettant de programmer l'interaction par clavier
exposedfield SFBool enabled TRUE
exposedfield SFBool eventsProcessed FALSE
eventout SFInt32 keyPress
eventout SFInt32 keyRelease
Lorsque le champ eventsProcessed est égal à TRUE, l'interface clavier habituelle est désactivée (à l'exception de la touche d'échappement).
Toutes les touches du clavier peuvent ainsi être programmées.Autrement, les touches habituelles de l'interface clavier sont traitées, en plus des touches programmées.
Anchor: ajouts permettant le lancement simultané de plusieurs hyperliens.
-
eventIn SFTime activate_url
La réception d'un événement de type SFTime lancera l'hyperlien défini par le noeud Anchor.
-
exposedfield SFBool newWindow FALSE
Lorsque assigné la valeur TRUE, le noeud Anchor ouvrira le lien à la scène .wrl dans une nouvelle fenêtre de Démotride sans écraser la scène actuelle.
-
exposedfield MFInt32 size 600 600
Spécifie la taille x,y de la nouvelle fenêtre de Démotride qui servira à ouvrir le fichier *.wrl. Actif seulement lorsque newWindow est égal à TRUE.
-
exposedfield MFInt32 position 0 0
Spécifie la position x,y du coin supérieur gauche de la nouvelle fenêtre de Démotride qui servira à ouvrir le fichier *.wrl. Actif seulement lorsque newWindow est TRUE.
|