Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

Primitive Class Reference

Base class for classes representing geometry (Mesh, Sphere, Plane). More...

#include <primitive.h>

Inherits Node.

Inherited by Mesh, Plane, and Sphere.

Inheritance diagram for Primitive:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 Primitive (Material *m=0)
 Base class constructor for primitives, sets the material to m.
virtual ~Primitive ()
void setMaterial (Material *m)
 Sets the material of the primitive to the material pointed to by m, or if m is 0, the material is set to the default material (diffuse gray).
MaterialgetMaterial () const
 Returns a pointer to the primitive's material.
void setTransform (Matrix &M)
 Manually set the local transform matrix to M.
void setTranslation (const Vector &T)
 Sets the translation of the node to T.
void setTranslation (float tx, float ty, float tz)
 Sets the translation of the node to (tx,ty,tz).
void setScale (float s)
 Sets the scale uniformly to s.
void setScale (const Vector &S)
 Sets the scale non-uniformly to S.
void setScale (float sx, float sy, float sz)
 Sets the scale non-uniformly to (sx,sy,sz).
void setRotation (const Vector &R)
 Sets the rotation about the x,y,z axes to the components of R.
void setRotation (float rx, float ry, float rz)
 Sets the rotation about the x,y,z axes to (rx,ry,rz) respectively.

Protected Types

typedef std::list< Node
* >::iterator 
t_itr
typedef std::list< Node
* >::const_iterator 
t_constitr

Protected Member Functions

virtual void prepare ()
virtual void getGeometry (std::vector< Intersectable * > &geometry)
void addChild (Node *child)
 Adds a node to the list of children.
bool hasChild (const Node *child) const
 Returns true if a specific node is a child of this node.
void setupTransform (const Matrix &world)
 Setup the local and world transform of the node.

Protected Attributes

MaterialmMaterial
 Ptr to the material used by the primitive.
Vector mT
 Translation.
Vector mS
 Scale.
Vector mR
 Rotation.
bool mTransformSet
 True if the local transform has been setup.
Matrix mLocalTransform
 Local transform, created from the T,S,R parameters.
Matrix mWorldTransform
 Object->World transform (local + inherited transform).
std::list< Node * > mChildren
 List of children attached to the Node.

Detailed Description

Base class for classes representing geometry (Mesh, Sphere, Plane).


The documentation for this class was generated from the following files:
Generated on Tue Mar 14 09:46:41 2006 for ASR by  doxygen 1.4.4