# Home    # nevrax.com   
Nevrax
Nevrax.org
#News
#Mailing-list
#Documentation
#CVS
#Bugs
#License
Docs
 
Documentation  
Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages   Search  

NL3D::CPSZoneRectangle Class Reference

The same as a plane, but with a rectangle. More...

#include <ps_zone.h>

Inheritance diagram for NL3D::CPSZoneRectangle:

NL3D::CPSZone NL3D::IPSMover NL3D::CPSTargetLocatedBindable NL3D::CPSLocatedBindable NLMISC::IStreamable NLMISC::IClassable List of all members.

Public Methods

virtual void performMotion (TAnimationTime ellapsedTime)
 This is usually called by the step method for the pass dedicated to zone. More...

virtual void show (TAnimationTime ellapsedTime)
 Show the zone (edition mode). More...

 CPSZoneRectangle ()
 NLMISC_DECLARE_CLASS (CPSZoneRectangle)
virtual void serial (NLMISC::IStream &f) throw (NLMISC::EStream)
 serialization, DERIVER must override this, and call the parent version. More...

virtual bool supportUniformScaling (void) const
 Send back true if uniform scaling can be applied If it sends false, uniform scaling leads to undefine results. More...

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). More...

virtual void setMatrix (uint32 index, const NLMISC::CMatrix &m)
virtual NLMISC::CMatrix getMatrix (uint32 index) const
virtual void setScale (uint32 index, float scale)
virtual void setScale (uint32 index, const NLMISC::CVector &s)
virtual NLMISC::CVector getScale (uint32 index) const

Protected Methods

NLMISC::CMatrix buildBasis (uint32 index) const
virtual void resize (uint32 size)
 Resize the bindable attributes containers should not be called directly. More...

virtual void newElement (CPSLocated *emitterLocated, uint32 emitterIndex)
 Generate a new element for this bindable. More...

virtual void deleteElement (uint32 index)
 Delete an element given its index Attributes of the located that hold this bindable (pos etc...) are still accessible for the given index. More...


Protected Attributes

CPSAttrib< CPlaneBasis_Basis
TPSAttribFloat _Width
TPSAttribFloat _Height

Detailed Description

The same as a plane, but with a rectangle.

We don't encode the plane by its normal, however...

Definition at line 342 of file ps_zone.h.


Constructor & Destructor Documentation

NL3D::CPSZoneRectangle::CPSZoneRectangle   [inline]
 

Definition at line 348 of file ps_zone.h.

References NL3D::CPSLocatedBindable::_Name.


Member Function Documentation

NLMISC::CMatrix NL3D::CPSZoneRectangle::buildBasis uint32    index const [protected]
 

void NL3D::CPSZoneRectangle::deleteElement uint32    index [protected, virtual]
 

Delete an element given its index Attributes of the located that hold this bindable (pos etc...) are still accessible for the given index.

index out of range -> nl_assert

Implements NL3D::CPSLocatedBindable.

Definition at line 1462 of file ps_zone.cpp.

References _Basis, _Height, _Width, and index.

CMatrix NL3D::CPSZoneRectangle::getMatrix uint32    index const [virtual]
 

Implements NL3D::IPSMover.

Definition at line 1411 of file ps_zone.cpp.

References _Basis, NL3D::CPSLocatedBindable::_Owner, index, and nlassert.

CVector NL3D::CPSZoneRectangle::getScale uint32    index const [virtual]
 

Reimplemented from NL3D::IPSMover.

Definition at line 1430 of file ps_zone.cpp.

References _Height, _Width, and index.

void NL3D::CPSZoneRectangle::newElement CPSLocated   emitterLocated,
uint32    emitterIndex
[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 1455 of file ps_zone.cpp.

References _Basis, _Height, and _Width.

NL3D::CPSZoneRectangle::NLMISC_DECLARE_CLASS CPSZoneRectangle   
 

void NL3D::CPSZoneRectangle::performMotion TAnimationTime    ellapsedTime [virtual]
 

This is usually called by the step method for the pass dedicated to zone.

Implements NL3D::CPSZone.

Definition at line 1267 of file ps_zone.cpp.

References _Basis, NL3D::CPSZone::_BounceFactor, _Height, NL3D::CPSLocatedBindable::_Owner, NL3D::CPSTargetLocatedBindable::_Targets, _Width, alpha, NLMISC::CPlane::getNormal, NLMISC::CPlane::make, min, NL3D::PSCollideEpsilon, NL3D::TAnimationTime, and NL3D::TPSAttribVector.

void NL3D::CPSZoneRectangle::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 1447 of file ps_zone.cpp.

References _Basis, _Height, _Width, and nlassert.

void NL3D::CPSZoneRectangle::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 1437 of file ps_zone.cpp.

void NL3D::CPSZoneRectangle::setMatrix uint32    index,
const NLMISC::CMatrix   m
[virtual]
 

Implements NL3D::IPSMover.

Definition at line 1401 of file ps_zone.cpp.

References _Basis, NL3D::CPSLocatedBindable::_Owner, index, and nlassert.

void NL3D::CPSZoneRectangle::setScale uint32    index,
const NLMISC::CVector   s
[virtual]
 

Reimplemented from NL3D::IPSMover.

Definition at line 1425 of file ps_zone.cpp.

References _Height, _Width, index, and s.

void NL3D::CPSZoneRectangle::setScale uint32    index,
float    scale
[virtual]
 

Reimplemented from NL3D::IPSMover.

Definition at line 1420 of file ps_zone.cpp.

References _Height, _Width, and index.

void NL3D::CPSZoneRectangle::show TAnimationTime    ellapsedTime [virtual]
 

Show the zone (edition mode).

Implements NL3D::CPSZone.

Definition at line 1367 of file ps_zone.cpp.

References _Basis, _Height, NL3D::CPSLocatedBindable::_Owner, _Width, NL3D::CPSLocatedBindable::CPSLocated, NL3D::CPSLocatedBindable::CPSLocatedBindable, NL3D::CPSLocatedBindable::getDriver, NL3D::CPSLocatedBindable::getFontGenerator, NL3D::CPSLocatedBindable::getFontManager, NL3D::CPSLocatedBindable::getLocatedMat, index, nlassert, NL3D::CPSLocatedBindable::setupDriverModelMatrix, and NL3D::TAnimationTime.

virtual bool NL3D::CPSZoneRectangle::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 364 of file ps_zone.h.

virtual bool NL3D::CPSZoneRectangle::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 363 of file ps_zone.h.


Member Data Documentation

CPSAttrib<CPlaneBasis> NL3D::CPSZoneRectangle::_Basis [protected]
 

Definition at line 374 of file ps_zone.h.

Referenced by deleteElement, getMatrix, newElement, performMotion, resize, setMatrix, and show.

TPSAttribFloat NL3D::CPSZoneRectangle::_Height [protected]
 

Definition at line 380 of file ps_zone.h.

Referenced by deleteElement, getScale, newElement, performMotion, resize, setScale, and show.

TPSAttribFloat NL3D::CPSZoneRectangle::_Width [protected]
 

Definition at line 377 of file ps_zone.h.

Referenced by deleteElement, getScale, newElement, performMotion, resize, setScale, and show.


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