Grouping nodes

...
{
 ...
 exposedField MFNode  children   []
 field        SFVec3f bboxCenter 0 0 0    # (-..., ...)
 field        SFVec3f bboxSize   -1 -1 -1 # (0, ...) oppure -1,-1,-1
 ...
}

I campi comuni a questo gruppo di nodi sono

  • children, elenco di nodi figli coinvolti nell’azione svolta del nodo genitore
  • bboxCenter
  • bboxSize, …

Anchor

Anchor
 {
 eventIn MFNode addChildren
 eventIn MFNode removeChildren
 exposedField MFNode children []
 exposedField SFString description ""
 exposedField MFString parameter []
 exposedField MFString url []
 field SFVec3f bboxCenter 0 0 0 # (-..., ...)
 field SFVec3f bboxSize -1 -1 -1 # (0, ...) or -1,-1,-1
 }

Il nodo Anchor permette di introdurre dei punti attivi che si comportano come dei link.

  • children, raggruppa le figure sulle quali apparirà l’ancora al passaggio del mouse
  • description, corrisponde al messaggio che apparirà
  • url, specifica un elenco (gerarchico) di indirizzi
  • parameter, permette di specificare dei parametri per il browser (per esempio “target=_blank”)

Billboard


Collision


Group

Group
{
 eventIn      MFNode  addChildren
 eventIn      MFNode  removeChildren
 exposedField MFNode  children       []
 field        SFVec3f bboxCenter     0 0 0    # (-..., ...)
 field        SFVec3f bboxSize       -1 -1 -1 # (0, ...) oppure -1,-1,-1
}

Corrisponde al nodo Transform senza alcuna trasformazione.


Inline

Inline
 {
 exposedField MFString url        []
 field        SFVec3f  bboxCenter 0 0 0    # (-..., ...)
 field        SFVec3f  bboxSize   -1 -1 -1 # (0, ...) or -1,-1,-1
 }
  • url, sostituisce il campo children: contiene una sequenza di stringhe delimitate da “

Ciascuna stringa è un url di un mondo VRML. Il player caricherà il primo, se qualcosa dovesse andare storto caricherà il secondo, ecc.


LOD


Switch


Transform

Transform
 {
 eventIn      MFNode     addChildren
 eventIn      MFNode     removeChildren
 exposedField SFVec3f    center           0 0 0    # (-..., ...)
 exposedField MFNode     children         []
 exposedField SFRotation rotation         0 0 1 0  # [-1,1],(-..., ...)
 exposedField SFVec3f    scale            1 1 1    # (0, ...)
 exposedField SFRotation scaleOrientation 0 0 1 0  # [-1,1],(-..., ...)
 exposedField SFVec3f    translation      0 0 0    # (-..., ...)
 field        SFVec3f    bboxCenter       0 0 0    # (-..., ...)
 field        SFVec3f    bboxSize         -1 -1 -1 # (0, ...) or -1,-1,-1
 }
  • children, contiene l’enco dei nodi coinvolti
  • translation, specifica lo scostamento lungo l’asse x, y e z rispettivamente
  • scale, specifica il fattore di ingrandimento/riduzione nelle 3 direzioni (0.5, 1, 2 per esempio indicano la metà rispetto a x, e il doppio rispetto a z)
  • rotation, utilizza 4 valori: i primi 3 si riferiscono agli assi coinvolti e l’ultimo all’angolo di rotazione (1 0 0 3.14159 indica una rotazione di 180° rispetto all’asse x)

Lascia un commento