ofDoc > 3d > ofNode

ofNodefile

ofNodeclass

A generic 3d object in space with transformation (position, rotation, scale).

The ofNode is the base of all things 3d. It lets you represent a location and orientation in 3d space and also allows you to add children or parents so that sets of nodes can move together. This is handy for representing complex 3d models that are linked together, the same way that your hand is linked to your wrist (hopefully), which is linked to your elbow (hopefully), and so on. Nodes are the base of the ofPrimitives, ofCamera, and ofEasyCamera, among other things.

with API to move around in global or local space and virtual draw method

Info: uses right-handed coordinate system ofNodes 'look' along -ve z axis All set* methods work in local space unless stated otherwise

To get the current position, check out: getX(), getY(), getZ(). To get the axis of the node call getXAxis() (or the y and z variants for those other axes). Another really useful feature of the ofNode is that you can get the Eulerian angles of each node: getPitch(), getHeading(), getRoll(). The global transformation matrix of the ofNode is also available using the getGlobalTransformMatrix(), very handy for figuring out things in relation to the OpenGL representation of your OF world. getGlobalOrientation() also is handy, returning a ofQuaternion that you can use to find out whether your node is upside down in relation to the rest of your OF world (really an OpenGL context, but let's not get into that quite yet).

Parent Node

Getters

getX ()
getY ()
getZ ()
getRoll ()

Setters

Modifiers

move ()
truck ()
boom ()
dolly ()
tilt ()
pan ()
roll ()
rotate ()
lookAt ()
orbit ()

OpenGL Transformation

Drawing

draw ()