SIM_RayIntersect Class Reference

#include <SIM_RayIntersect.h>

Inheritance diagram for SIM_RayIntersect:

SIM_Data

List of all members.

Public Member Functions

GU_RayIntersectgetRayIntersect () const

Protected Member Functions

 SIM_RayIntersect (const SIM_DataFactory *factory)
virtual ~SIM_RayIntersect ()
virtual void initializeSubclass ()
 Clears the ray intersection data.
virtual int64 getMemorySizeSubclass () const
virtual bool getIsAlternateRepresentationSubclass () const
virtual void initAlternateRepresentationSubclass (const SIM_Data &)


Detailed Description

This class hold a GU_RayIntersect structure. This is a data structure that can be built from any GU_Detail. As such, this data should be used by attaching it as subdata to a SIM_Geometry, and calling createRayIntersect(). Because this data can be recreated on demand, it returns true from the getIsAlternateRepresentationSubclass() function and is never saved to or loaded from disk. It also gets deleted automatically if the parent SIM_Geomtry data changes.

Definition at line 30 of file SIM_RayIntersect.h.


Constructor & Destructor Documentation

SIM_RayIntersect::SIM_RayIntersect ( const SIM_DataFactory factory  )  [explicit, protected]

virtual SIM_RayIntersect::~SIM_RayIntersect (  )  [protected, virtual]


Member Function Documentation

virtual bool SIM_RayIntersect::getIsAlternateRepresentationSubclass (  )  const [protected, virtual]

Override this method to return true if your data type is built on demand. This is true for data that is just an alternative representation of some other data. This has several consequences. First, it implies that the data can be rebuilt from other data on the object, therefore it is not saved to disk. Also, it is assumed to be represent its parent data, so any modifications to the parent data cause this data to be deleted. If you override this method, do not call the base class implementation.

Reimplemented from SIM_Data.

virtual int64 SIM_RayIntersect::getMemorySizeSubclass (  )  const [protected, virtual]

Returns the information that this data type is built on demand. It can be rebuilt at any time from any SIM_Geometry data.

Reimplemented from SIM_Data.

GU_RayIntersect& SIM_RayIntersect::getRayIntersect (  )  const

Get the ray intersection structure. Note that the ray intersect information is always stored for the geometry without applying the geometry transform. This is unlike the SIM_SDF class, but is required by the nature of the ray intersection data structure, which holdson to primitive pointers.

virtual void SIM_RayIntersect::initAlternateRepresentationSubclass ( const SIM_Data  )  [protected, virtual]

Override this function if getIsAlternateRepresentationSubclass() is overridden to return true. This function is used to initialize the alternate representation based on the data to which it was just attached.

Reimplemented from SIM_Data.

virtual void SIM_RayIntersect::initializeSubclass (  )  [protected, virtual]

Clears the ray intersection data.

Reimplemented from SIM_Data.


The documentation for this class was generated from the following file:

Generated on Fri May 25 00:10:40 2012 for HDK by  doxygen 1.5.9