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

VPGraphicObj Class Reference

An scene node that is associated with a shape. More...

#include <vpgraphicobj.h>

Inheritance diagram for VPGraphicObj:

VPSceneNode VPMemoryObj VPBox VPCone VPCurve VPCylinder VPImage VPMesh VPMeshObject VPSphere List of all members.

Public Member Functions

 VPGraphicObj ()
void Show ()
 Makes the object visible.
void Hide ()
 Makes the object invisible.
void ToggleVisibility ()
 Toggles the object's visibility.
bool IsVisible ()
 Checks whether the object is visible.
virtual void ComputeBoundingBox ()=0
 Computes the bounding box.
void ComputeRecursiveBoundingBox ()
 Computes the recursive bounding box.
const VPBoundingBoxGetBoundingBox () const
 Returns the bounding box.
const VPBoundingBoxGetRecursiveBoundingBox () const
 Returns the recursive bounding box.

Protected Attributes

bool show
VPBoundingBox bBox
VPBoundingBox recBBox

Detailed Description

An scene node that is associated with a shape.

Abstract class for graphical objects, that is, objects that have shapes to be drawn. A graphical object may, or may not, be visible without affecting scene graph traversal.

Definition at line 19 of file vpgraphicobj.h.


Constructor & Destructor Documentation

VPGraphicObj::VPGraphicObj  ) 
 

Definition at line 28 of file vpgraphicobj.cpp.

References show.


Member Function Documentation

virtual void VPGraphicObj::ComputeBoundingBox  )  [pure virtual]
 

Computes the bounding box.

Implemented in VPCylinder, VPMeshObject, and VPSphere.

void VPGraphicObj::ComputeRecursiveBoundingBox  ) 
 

Computes the recursive bounding box.

This method requires a correct bounding box, therefore it should usually be called after ComputeBoundingBox.

Definition at line 48 of file vpgraphicobj.cpp.

References bBox, VPSceneNode::childList, GetRecursiveBoundingBox(), VPBoundingBox::MergeWith(), and recBBox.

Referenced by VPMeshObject::MakeBox(), VPMeshObject::MergeWith(), VPMeshObject::SetVertices(), and VPMeshObject::Transform().

const VPBoundingBox& VPGraphicObj::GetBoundingBox  )  const [inline]
 

Returns the bounding box.

Definition at line 41 of file vpgraphicobj.h.

References bBox.

const VPBoundingBox& VPGraphicObj::GetRecursiveBoundingBox  )  const [inline]
 

Returns the recursive bounding box.

Definition at line 44 of file vpgraphicobj.h.

References recBBox.

Referenced by VPScene::ComputeBoundingBox(), and ComputeRecursiveBoundingBox().

void VPGraphicObj::Hide  ) 
 

Makes the object invisible.

Definition at line 36 of file vpgraphicobj.cpp.

References show.

bool VPGraphicObj::IsVisible  ) 
 

Checks whether the object is visible.

Definition at line 44 of file vpgraphicobj.cpp.

References show.

void VPGraphicObj::Show  ) 
 

Makes the object visible.

Definition at line 32 of file vpgraphicobj.cpp.

References show.

void VPGraphicObj::ToggleVisibility  ) 
 

Toggles the object's visibility.

Definition at line 40 of file vpgraphicobj.cpp.

References show.


Member Data Documentation

VPBoundingBox VPGraphicObj::bBox [protected]
 

Definition at line 47 of file vpgraphicobj.h.

Referenced by VPSphere::ComputeBoundingBox(), VPMeshObject::ComputeBoundingBox(), VPCylinder::ComputeBoundingBox(), ComputeRecursiveBoundingBox(), and GetBoundingBox().

VPBoundingBox VPGraphicObj::recBBox [protected]
 

Definition at line 48 of file vpgraphicobj.h.

Referenced by ComputeRecursiveBoundingBox(), and GetRecursiveBoundingBox().

bool VPGraphicObj::show [protected]
 

Definition at line 46 of file vpgraphicobj.h.

Referenced by VPMeshObject::DrawInstanceOGL(), Hide(), IsVisible(), Show(), ToggleVisibility(), and VPGraphicObj().


The documentation for this class was generated from the following files:
Generated on Tue Sep 6 10:00:14 2005 for VPAT by  doxygen 1.4.4