|
|
|
Membre de ClickFR, Reseau francophone Paie-Par-Click |
|
|
Les types contiennent des données. Ces données sont utilisées pour décrire la scène 3D, les objets, les propriétés etc. Ces types sont réutilisés dans la spécification des noeuds VRML.
Certains noeuds VRML génère des événements en réponse à des changements dans l'environnement de la scène ou à des actions de l'utilisateur.
Les événements sont identifiés par les mêmes types que les champs car un événements transporte toujours une ou plusieurs données. Par exemple, le clique sur un objet comportera le moment (en seconde) où l'objet a été cliqué, le déplacement d'un objet comportera ses nouvelles coordonnées.
Les événements générés par des noeuds sont les eventOut. Par défaut, ils ont une source (l'objet émetteur) mais pas de destination. Les événements entrant des noeuds (eventIn) permettent de recevoir les eventOut. Les chemins des événements sont décrits par le noeud ROUTE.
Il y a deux classes générales de champs et événements; ceux qui contiennent
une seule valeur (cette valeur peut etre un chifre un vecteur 3D ou une image..)
et ceux qui contiennent de multiples valeurs.
Le nom des valeurs simple commence par SF
Le nom des valeurs multiples commence par MF
Les valeurs multiples sont écrites comme une série de valeurs entre crochets et séparées par des espaces . Quand il n'y a aucune valeur, il y a seulement les crochets. Lorsqu'il n'y a qu'une valeur, les crochets peuvent être omis. Par exemple, toutes ces écritures sont valides pour une valeur multiple MFInt32:
foo 1
foo [1,]
foo [ 1 ]
Ce document est un extrait des specifications du vrml et decrit la syntaxe generale des fields et events.Les types définis dans cette annexe sont utilisés pour les champs et événement.
Un champ ou événement contenant une seule valeur booléenne. SFBool peut être soit TRUE soit FALSE.
fooBool FALSE
est un champ SFBool, fooBool, qui a pour valeur FALSE.
La valeur par defaut d'un eventOut SFBool est FALSE
SFColor spécifie une couleur RGB, et MFColor zéro ou plus couleurs RGB. Chaque couleur est écrite comme un triplet de valeurs a virgules flottantes dans le format ANSI C comprise entre 0 et 1.Par exemple:
fooColor [ 1.0 0. 0.0, 0 1 0, 0 0 1 ]
est un champ MFColor, fooColor, contenant les trois couleurs primaires.
La valeur par defaut d'un eventOut SFColor est (0 0 0). La valeur par defaut d'un eventOut MFColor est [ ].
SFFloat est une valeur unique a virgule flottante, et MFFloat est zero ou plusieurs valeurs a virgule flottante. SFFloat et MFFloat sont écrits dans le format ANSI C.Par exemple:
fooFloat [ 3.1415926, 12.5e-3, .0001 ]
est un champ MFFloat fooFloat, contenant trois valeurs a virgule flottantes.
La valeur par defaut d'un SFFloat est 0.0.La valeur par defaut d'un MFFloat est [ ].
Le champ ou événement SFImage contient une image a deux dimensions non compressée. SFImage est écrit comme une suite de trois entiers représentant la largeur, la hauteur et le nombre de composants de l'image suivit par largeur*hauteur valeur hexadécimales séparés par des espaces représentant les pixels de l'image. Par exemple:
fooImage <largeur> <hauteur> <nb composantsgt; <pixels>
fooImage 1 2 1 0xFF 0x00
Pour avoir des précisions sur ces valeurs consulter la page 10 sur les textures.
La valeur par défaut d'un eventOut SFImage est (0 0 0).
Le champ ou événement SFInt32 est un entier 32 bits, et MFInt32 est zéro ou plusieurs entier 32 bits. Ils s'écrivent sous forme décimale ou hexadécimale (commencant par 0x).Par exemple:
fooInt32 [ 17, -0xE20, -518820 ]
est un champ MFInt32 comtenant trois valeurs.
La valeur par defaut d'un eventOut SFInt32 est 0. La valeur par defaut d'un eventOut MFInt32 est [ ].
Le champ ou événement SFNode est un noeud vrml,et MFNode est un ou plusieurs noeuds vrml. L'exemple suivant donne la syntaxe exacte pour un MFNode contenant quatre noeuds.
fooNode [ Transform { translation 1 0 0 }
DEF CUBE Box { }
USE CUBEUSE AUTRE_NOEUD ]
SFNode et MFNode peuvent contenir le mot-clef NULL pour indiquer qu'ils sont vides.
La valeur par defaut d'un eventOut SFNode est NULL. La valeur par defaut d'un eventOut MFNode est [ ].
Le champ ou événement SFRotation désigne une rotation sur trois axe, MFRotation en désigne zero ou plus. SFRotation et MFRotation sont écrits comme une suite de quatre virgules flottantes séparés par des espaces. Les trois premières valeurs sont les axes X Y Z et la dernière l'angle en radians.
fooRot 0.0 1.0 0.0 3.14159265
La valeur par defaut d'un eventOut SFRotation est (0 0 1 0). La valeur par defaut d'un evebtOut MFRotation est [ ].
Vous pouvez imprimer cette table, elle est tres pratique.TABLE DE CONVERTION DEGRES RADIANS DEGRES RADIANS DEGRES RADIAN DEGRES RADIANS DEGRES RADIANS 0 0 90 1.57 180 3.14 270 4.71 10 0.17 100 1.74 190 3.32 280 4.89 20 0.35 110 1.92 200 3.49 290 5.06 30 0.52 120 2.09 210 3.66 300 5.24 40 0.70 130 2.27 220 3.84 310 5.41 45 0.78 135 2.36 225 3.93 315 5.50 50 0.87 140 2.44 230 4.01 320 5.58 60 1.05 150 2.62 240 4.19 330 5.76 70 1.22 160 2.79 250 4.36 340 5.93 80 1.40 170 2.97 260 4.54 350 6.11
Les champs ou événements SFString et MFString contiennent des caractères formates selon le jeu de caractères universels UTF-8.SFString contient une chaîne de caractères, MFstring en contient zéro ou plus. Une chaîne de caractères est une séquence d'octets UTF-8 entre guillemets.
Des caractères (saut de ligne et #) peuvent apparaitre.Pour inclure des guillemets dans une chaine,faites les preceder d'un backslash \.Pour inclure un backslash dans une chaine tapez en deux. Par exemple:
fooString [ "Un, Deux, Trois", "Il dit, \"Immel fait le!\"" ]
est un eventOut MFString avec deux chaînes valides.
La valeur par defaut d'un eventOut SFString est quot;quot;. La valeur par defaut d'un eventOut MFString est [ ].
Le champ ou événement SFTime est une valeur temps, MFTime en represente zéro ou plus. Les valeurs temps sont une valeur double précision a virgule flottante Typiquement, SFTime représente le nombre de secondes depuis le 1 janvier 1970.
La valeur par defaut d'un eventOut SFTime est -1. La valeur par defaut d'un eventOut MFTime est [ ].
Un champ ou événement SFVec2f désigne un vecteur a deux dimensions, un MFVec2f en désigne zéro ou plusieurs. Ils sont écrits comme une paire de valeurs a virgule flottante séparés par un espace. Par exemple
fooVec2f [ 42 66.6, 7.1 94 ]
est un champ MFVec2f avec deux vecteurs valides.
La valeur par defaut d'un eventOut SFVec2f est (0 0). La valeur par defaut d'un eventOut MFVec2f est [ ].
Un champ ou événement SFvec3f est un vecteur tri-dimensionnel, un MFvec3f en désigne zéro ou plusieurs. Ils sont écrits comme trois valeurs a virgules flottantes séparés par des espaces.Par exemple:
fooVec3f [ 1 4.2 666, 7 9.4 0 ]
est un champ MFVec3f avec deux vecteurs valides.
La valeur par defaut d'un eventOut SFVec3f est (0 0 0). La valeur par defaut d'un eventOut MFVec3f est [ ].
La liste des champs a été traduite par Sébastien
Marnier
puis repris par
VRML Worlds pour y ajouter ses exemples et commentaires.
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 |