csMeshObject Class Reference
This is an abstract implementation of iMeshObject. More...
#include <cstool/meshobjtmpl.h>
Inheritance diagram for csMeshObject:

Public Member Functions | |
virtual csPtr< iMeshObject > | Clone () |
See imesh/object.h for specification. | |
csMeshObject (iEngine *engine) | |
Constructor. | |
virtual bool | GetColor (csColor &color) const |
See imesh/object.h for specification. | |
virtual iMeshObjectFactory * | GetFactory () const =0 |
See imesh/object.h for specification. | |
virtual csFlags & | GetFlags () |
See imesh/object.h for specification. | |
virtual iBase * | GetLogicalParent () const |
See imesh/object.h for specification. | |
virtual iMaterialWrapper * | GetMaterialWrapper () const |
See imesh/object.h for specification. | |
virtual void | GetObjectBoundingBox (csBox3 &bbox) |
See igeom/objmodel.h for specification. | |
virtual iObjectModel * | GetObjectModel () |
See imesh/object.h for specification. | |
virtual void | GetRadius (csVector3 &radius, csVector3 ¢er) |
See igeom/objmodel.h for specification. | |
virtual csRenderMesh ** | GetRenderMeshes (int &num, iRenderView *, iMovable *, uint32) |
See imesh/object.h for specification. | |
virtual iMeshObjectDrawCallback * | GetVisibleCallback () const |
See imesh/object.h for specification. | |
virtual void | HardTransform (const csReversibleTransform &t) |
See imesh/object.h for specification. | |
virtual bool | HitBeamObject (const csVector3 &start, const csVector3 &end, csVector3 &isect, float *pr, int *polygon_idx=0) |
See imesh/object.h for specification. | |
virtual bool | HitBeamOutline (const csVector3 &start, const csVector3 &end, csVector3 &isect, float *pr) |
See imesh/object.h for specification. | |
virtual void | InvalidateMaterialHandles () |
see imesh/object.h for specification. | |
virtual void | NextFrame (csTicks current_time, const csVector3 &pos) |
See imesh/object.h for specification. | |
virtual void | PositionChild (iMeshObject *, csTicks) |
see imesh/object.h for specification. | |
virtual bool | SetColor (const csColor &color) |
See imesh/object.h for specification. | |
virtual void | SetLogicalParent (iBase *logparent) |
See imesh/object.h for specification. | |
virtual bool | SetMaterialWrapper (iMaterialWrapper *material) |
See imesh/object.h for specification. | |
virtual void | SetObjectBoundingBox (const csBox3 &bbox) |
See igeom/objmodel.h for specification. | |
virtual void | SetVisibleCallback (iMeshObjectDrawCallback *cb) |
See imesh/object.h for specification. | |
virtual bool | SupportsHardTransform () const |
See imesh/object.h for specification. | |
virtual | ~csMeshObject () |
Destructor. | |
Public Attributes | |
SCF_DECLARE_IBASE | |
Protected Member Functions | |
void | WantToDie () |
Tell the engine that this object wants to be deleted. | |
Protected Attributes | |
csBox3 | boundingbox |
The bounding box. | |
iEngine * | Engine |
pointer to the engine if available (@@ temporary) | |
csFlags | flags |
Flags. | |
iBase * | LogParent |
logical parent (usually the wrapper object from the engine) | |
csRef< iMeshObjectDrawCallback > | VisCallback |
the drawing callback | |
Friends | |
struct | eiObjectModel |
Classes | |
struct | eiObjectModel |
Detailed Description
This is an abstract implementation of iMeshObject.It can be used to write custom mesh object implementations more easily. Currently it supports the following common functions of mesh objects:
- Implementation of iMeshObject
- Implementation of iObjectModel
- Storing a "visible callback"
- Storing a logical parent
- Storing object model properties
- Default implementation of most methods
Definition at line 68 of file meshobjtmpl.h.
Constructor & Destructor Documentation
|
Constructor.
|
|
Destructor.
|
Member Function Documentation
|
See imesh/object.h for specification. The default implementation does nothing and returns 0. Implements iMeshObject. Definition at line 108 of file meshobjtmpl.h. |
|
See imesh/object.h for specification. The default implementation does not support a base color. Implements iMeshObject. |
|
See imesh/object.h for specification. There is no default implementation for this method. Implements iMeshObject. Implemented in csNewParticleSystem. |
|
See imesh/object.h for specification.
Implements iMeshObject. Definition at line 113 of file meshobjtmpl.h. |
|
See imesh/object.h for specification. This function is handled completely in csMeshObject. Implements iMeshObject. |
|
See imesh/object.h for specification. The default implementation does not support a material. Implements iMeshObject. Reimplemented in csNewParticleSystem. |
|
See igeom/objmodel.h for specification. The default implementation returns an infinite bounding box. Reimplemented in csNewParticleSystem. |
|
See imesh/object.h for specification.
Implements iMeshObject. Definition at line 188 of file meshobjtmpl.h. |
|
See igeom/objmodel.h for specification. The default implementation returns an infinite radius. |
|
See imesh/object.h for specification. The default implementation does nothing and always returns 0. @@ Note: in future it would be better that the default implementation does nothing as this function has to be implemented by mesh objects. Implements iMeshObject. Reimplemented in csNewParticleSystem. Definition at line 121 of file meshobjtmpl.h. |
|
See imesh/object.h for specification. This function is handled completely in csMeshObject. Implements iMeshObject. |
|
See imesh/object.h for specification. The default implementation does nothing. Implements iMeshObject. |
|
See imesh/object.h for specification. The default implementation will always return a miss. Implements iMeshObject. |
|
See imesh/object.h for specification. The default implementation will always return a miss. Implements iMeshObject. |
|
see imesh/object.h for specification. The default implementation does nothing. Implements iMeshObject. Definition at line 218 of file meshobjtmpl.h. |
|
See imesh/object.h for specification. The default implementation does nothing. Implements iMeshObject. Reimplemented in csNewParticleSystem. |
|
see imesh/object.h for specification. The default implementation does nothing. Implements iMeshObject. Definition at line 224 of file meshobjtmpl.h. |
|
See imesh/object.h for specification. The default implementation does not support a base color. Implements iMeshObject. Reimplemented in csNewParticleSystem. |
|
See imesh/object.h for specification. This function is handled completely in csMeshObject. Implements iMeshObject. |
|
See imesh/object.h for specification. The default implementation does not support a material. Implements iMeshObject. Reimplemented in csNewParticleSystem. |
|
See igeom/objmodel.h for specification. Overrides the default bounding box. Reimplemented in csNewParticleSystem. |
|
See imesh/object.h for specification. This function is handled completely in csMeshObject. The actual implementation just has to use the VisCallback variable to perform the callback. Implements iMeshObject. |
|
See imesh/object.h for specification. The default implementation returns false. Implements iMeshObject. |
|
Tell the engine that this object wants to be deleted.
|
Member Data Documentation
|
The bounding box.
Definition at line 87 of file meshobjtmpl.h. |
|
pointer to the engine if available (@@ temporary)
Definition at line 78 of file meshobjtmpl.h. |
|
Flags.
Definition at line 84 of file meshobjtmpl.h. |
|
logical parent (usually the wrapper object from the engine)
Definition at line 75 of file meshobjtmpl.h. |
|
the drawing callback
Definition at line 72 of file meshobjtmpl.h. |
The documentation for this class was generated from the following file:
- cstool/meshobjtmpl.h
Generated for Crystal Space by doxygen 1.4.4