La position donnée est le centre de la boîte (x0,
y0, z0). C'est une différence avec le cylindre, dont l'attribut pos est une des extrémités
du cylindre. Comme pour le cylindre, nous pouvons faire référence aux composantes vectorielles individuelles
de la boîte comme mybox.x,
mybox.y, et mybox.z.
La longueur (le long de l'axe x) vaut L , la hauteur (le long de l'axe y) vaut H
, et la largeur vaut W (le long de l'axe z). Pour cette boîte, nous avons mybox.axis
= (L, 0, 0) . Notez que l'axe de la boîte est semblable à l'axe du cylindre.
Pour une boîte qui n'est pas alignée avec l'axe des coordonnées, des problèmes supplémentaires entrent en jeu.
L'orientation de la longueur de la boîte est donnée par l'axe (voir le second schéma):
L'attribut axis donne une direction pour la longueur de la boîte, et la longueur, la hauteur et la largeur de la boîte
sont données comme avant (si l'attribut length n'est pas donné, la longueur est définie par la norme du vecteur axis).
Il reste à savoir comment orienter la boîte tournant
autour de l'axe spécifié. La règle que Visual utilise est d'orienter la largeur
soit dans le plan orthogonal à la direction "up" de l'affichage,
qui est par défaut l'axe y. Cependant sur le schéma, vous voyez que
la largeur est dans le plan x-z. La hauteur de la boîte est orientée
perpendiculairement à la largeur et à l'axe spécifié de la boîte. Cela aide
de penser à la longueur initialement comme allant le long de l'axe x, la hauteur le long
de l'axe y, et la largeur le long de l'axe z, et quand l'axe est incliné, la largeur
reste dans le plan x-z.
Vous pouvez tourner la boîte selon son propre axe en changeant le vecteur "up" de la boîte,
en spécifiant un attribut up pour la boîte qui est différent du vecteur up du système de coordonnées:
Avec cette instruction, la largeur de la boîte sera dans le plan perpendiculaire au vecteur (q,r,s), et la hauteur de la boîte
sera perpendiculaire à la largeur et au vecteur (a,b,c).
La boîte a les attributs suivants et des valeurs par défaut comme ceux du
cylindre: pos
(0,0,0), x
(0), y(0),
z(0), axis
(1,0,0), length
(1), color (1,1,1)
qui est la couleur color.white, red
(1), green (1),
blue (1), et
up (0,1,0).
Attributs supplémentaires de la boîte:
height Dans la direction y dans les cas simples, par défaut vaut 1
width Dans la direction z dans les cas simples, par défaut vaut 1
Notez que l'attribut pos pour
le cylindre, la flèche, le cône et la pyramide correspond à une des extrémités de l'objet,
alors que pour la boîte, sphère ou anneau, il correspond au centre de l'objet.