NL3D::CPSZoneCylinder Class Reference

a caped cylinder More...

#include <ps_zone.h>

Inherits NL3D::CPSZone, and NL3D::IPSMover.

List of all members.

Public Member Functions

virtual void computeCollisions (CPSLocated &target, uint firstInstanceIndex, const NLMISC::CVector *posBefore, const NLMISC::CVector *posAfter)
 Compute collisions for the given target.
virtual void show ()
 Show the zone (edition mode).
 CPSZoneCylinder ()
 NLMISC_DECLARE_CLASS (CPSZoneCylinder)
virtual bool supportUniformScaling (void) const
 Send back true if uniform scaling can be applied If it sends false, uniform scaling leads to undefine results.
virtual bool supportNonUniformScaling (void) const
 Send back true if non-uniform scaling can be applied If it sends false, non-uniform scaling leads to undefine results (default has no effect).
virtual void setMatrix (uint32 index, const NLMISC::CMatrix &m)
virtual NLMISC::CMatrix getMatrix (uint32 index) const
virtual void setScale (uint32 k, float scale)
virtual void setScale (uint32 k, const NLMISC::CVector &s)
virtual NLMISC::CVector getScale (uint32 k) const
virtual void serial (NLMISC::IStream &f) throw (NLMISC::EStream)
 serialization, DERIVER must override this, and call the parent version

Protected Member Functions

NLMISC::CMatrix buildBasis (uint32 index) const
virtual void resize (uint32 size)
 Resize the bindable attributes containers should not be called directly.
virtual void newElement (const CPSEmitterInfo &info)
 Generate a new element for this bindable.
virtual void deleteElement (uint32 index)

Protected Attributes

CPSAttrib< CPlaneBasis_Basis
TPSAttribVector _Dim

Detailed Description

a caped cylinder

Definition at line 290 of file ps_zone.h.


Constructor & Destructor Documentation

NL3D::CPSZoneCylinder::CPSZoneCylinder (  )  [inline]

Member Function Documentation

NLMISC::CMatrix NL3D::CPSZoneCylinder::buildBasis ( uint32  index  )  const [protected]
void NL3D::CPSZoneCylinder::computeCollisions ( CPSLocated target,
uint  firstInstanceIndex,
const NLMISC::CVector posBefore,
const NLMISC::CVector posAfter 
) [virtual]
void NL3D::CPSZoneCylinder::deleteElement ( uint32  index  )  [protected, virtual]

Implements NL3D::CPSLocatedBindable.

Definition at line 1121 of file ps_zone.cpp.

References _Basis, _Dim, NL_PS_FUNC, and NL3D::CPSAttrib< T >::remove().

CMatrix NL3D::CPSZoneCylinder::getMatrix ( uint32  index  )  const [virtual]
CVector NL3D::CPSZoneCylinder::getScale ( uint32  k  )  const [virtual]

Reimplemented from NL3D::IPSMover.

Definition at line 1082 of file ps_zone.cpp.

References _Dim, and NL_PS_FUNC.

void NL3D::CPSZoneCylinder::newElement ( const CPSEmitterInfo info  )  [protected, virtual]

Generate a new element for this bindable.

They are generated according to the propertie of the class

Implements NL3D::CPSLocatedBindable.

Definition at line 1114 of file ps_zone.cpp.

References _Basis, _Dim, NL3D::CPSAttrib< T >::insert(), NLMISC::CVector::K, and NL_PS_FUNC.

NL3D::CPSZoneCylinder::NLMISC_DECLARE_CLASS ( CPSZoneCylinder   ) 
void NL3D::CPSZoneCylinder::resize ( uint32  size  )  [protected, virtual]

Resize the bindable attributes containers should not be called directly.

Call CPSLocated::resize instead

Implements NL3D::CPSLocatedBindable.

Definition at line 1106 of file ps_zone.cpp.

References _Basis, _Dim, NL_PS_FUNC, nlassert, and NL3D::CPSAttrib< T >::resize().

void NL3D::CPSZoneCylinder::serial ( NLMISC::IStream f  )  throw (NLMISC::EStream) [virtual]

serialization, DERIVER must override this, and call the parent version

Reimplemented from NL3D::CPSZone.

Definition at line 1095 of file ps_zone.cpp.

References NL_PS_FUNC, and NL3D::CPSZone::serial().

void NL3D::CPSZoneCylinder::setMatrix ( uint32  index,
const NLMISC::CMatrix m 
) [virtual]
void NL3D::CPSZoneCylinder::setScale ( uint32  k,
const NLMISC::CVector s 
) [virtual]

Reimplemented from NL3D::IPSMover.

Definition at line 1088 of file ps_zone.cpp.

References _Dim, and NL_PS_FUNC.

void NL3D::CPSZoneCylinder::setScale ( uint32  k,
float  scale 
) [virtual]

Reimplemented from NL3D::IPSMover.

Definition at line 1076 of file ps_zone.cpp.

References _Dim, and NL_PS_FUNC.

void NL3D::CPSZoneCylinder::show (  )  [virtual]
virtual bool NL3D::CPSZoneCylinder::supportNonUniformScaling ( void   )  const [inline, virtual]

Send back true if non-uniform scaling can be applied If it sends false, non-uniform scaling leads to undefine results (default has no effect).

Reimplemented from NL3D::IPSMover.

Definition at line 305 of file ps_zone.h.

virtual bool NL3D::CPSZoneCylinder::supportUniformScaling ( void   )  const [inline, virtual]

Send back true if uniform scaling can be applied If it sends false, uniform scaling leads to undefine results.

Reimplemented from NL3D::IPSMover.

Definition at line 304 of file ps_zone.h.


Member Data Documentation

Definition at line 322 of file ps_zone.h.

Referenced by computeCollisions(), deleteElement(), getMatrix(), newElement(), resize(), setMatrix(), and show().

Definition at line 325 of file ps_zone.h.

Referenced by computeCollisions(), deleteElement(), getScale(), newElement(), resize(), setScale(), and show().


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

Generated on Thu Jan 7 08:30:10 2010 for NeL by  doxygen 1.6.1