# 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::CPSEmitterRectangle Class Reference

Emit directionnally in a rectangle (useful to produce snow, drop of water ...). More...

#include <ps_emitter.h>

Inheritance diagram for NL3D::CPSEmitterRectangle:

NL3D::CPSEmitter NL3D::CPSModulatedEmitter NL3D::IPSMover NL3D::CPSDirection NL3D::CPSLocatedBindable NLMISC::IStreamable NLMISC::IClassable List of all members.

Public Methods

 CPSEmitterRectangle ()
virtual void serial (NLMISC::IStream &f) throw (NLMISC::EStream)
 ==========================================================================. More...

 NLMISC_DECLARE_CLASS (CPSEmitterRectangle)
virtual void emit (const NLMISC::CVector &srcPos, uint32 index, NLMISC::CVector &pos, NLMISC::CVector &speed)
 ==========================================================================. More...

virtual void setDir (const NLMISC::CVector &v)
NLMISC::CVector getDir (void) const
void showTool (void)
 ==========================================================================. 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)
 ==========================================================================. More...

virtual NLMISC::CMatrix getMatrix (uint32 index) const
 ==========================================================================. More...

virtual void setScale (uint32 index, float scale)
 ==========================================================================. More...

virtual void setScale (uint32 index, const NLMISC::CVector &s)
 ==========================================================================. More...

NLMISC::CVector getScale (uint32 index) const
 ==========================================================================. More...


Protected Methods

virtual CPSLocatedgetModulatedEmitterOwner (void)
virtual void newElement (CPSLocated *emitterLocated, uint32 emitterIndex)
 ==========================================================================. More...

virtual void deleteElement (uint32 index)
 ==========================================================================. More...

virtual void resize (uint32 size)
 ==========================================================================. More...


Protected Attributes

CPSAttrib< CPlaneBasis_Basis
TPSAttribFloat _Width
TPSAttribFloat _Height
NLMISC::CVector _Dir

Detailed Description

Emit directionnally in a rectangle (useful to produce snow, drop of water ...).

Definition at line 480 of file ps_emitter.h.


Constructor & Destructor Documentation

NL3D::CPSEmitterRectangle::CPSEmitterRectangle   [inline]
 

Definition at line 487 of file ps_emitter.h.

References _Dir, and NL3D::CPSLocatedBindable::_Name.


Member Function Documentation

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

==========================================================================.

Reimplemented from NL3D::CPSEmitter.

Definition at line 1333 of file ps_emitter.cpp.

References _Basis, _Height, _Width, NL3D::CPSModulatedEmitter::deleteEmitteeSpeedElement, and index.

void NL3D::CPSEmitterRectangle::emit const NLMISC::CVector   srcPos,
uint32    index,
NLMISC::CVector   pos,
NLMISC::CVector   speed
[virtual]
 

==========================================================================.

Implements NL3D::CPSEmitter.

Definition at line 1274 of file ps_emitter.cpp.

References _Basis, _Dir, NL3D::CPSModulatedEmitter::_EmitteeSpeed, NL3D::CPSModulatedEmitter::_EmitteeSpeedScheme, _Height, NL3D::CPSLocatedBindable::_Owner, _Width, index, NLMISC::CVector::x, NLMISC::CVector::y, and NLMISC::CVector::z.

NLMISC::CVector NL3D::CPSEmitterRectangle::getDir void    const [inline, virtual]
 

Implements NL3D::CPSDirection.

Definition at line 504 of file ps_emitter.h.

References _Dir.

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

==========================================================================.

Implements NL3D::IPSMover.

Definition at line 1294 of file ps_emitter.cpp.

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

virtual CPSLocated* NL3D::CPSEmitterRectangle::getModulatedEmitterOwner void    [inline, protected, virtual]
 

Implements NL3D::CPSModulatedEmitter.

Definition at line 522 of file ps_emitter.h.

References NL3D::CPSLocatedBindable::_Owner, and NL3D::CPSLocatedBindable::CPSLocated.

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

==========================================================================.

Reimplemented from NL3D::IPSMover.

Definition at line 1317 of file ps_emitter.cpp.

References _Height, _Width, and index.

void NL3D::CPSEmitterRectangle::newElement CPSLocated   emitterLocated,
uint32    emitterIndex
[protected, virtual]
 

==========================================================================.

They are generated according to the propertie of the class

Reimplemented from NL3D::CPSEmitter.

Definition at line 1323 of file ps_emitter.cpp.

References _Basis, _Height, _Width, and NL3D::CPSModulatedEmitter::newEmitteeSpeedElement.

NL3D::CPSEmitterRectangle::NLMISC_DECLARE_CLASS CPSEmitterRectangle   
 

void NL3D::CPSEmitterRectangle::resize uint32    size [protected, virtual]
 

==========================================================================.

DERIVERS SHOULD CALL THEIR PARENT VERSION should not be called directly. Call CPSLocated::resize instead

Reimplemented from NL3D::CPSEmitter.

Definition at line 1343 of file ps_emitter.cpp.

References _Basis, _Height, _Width, nlassert, and NL3D::CPSModulatedEmitter::resizeEmitteeSpeed.

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

==========================================================================.

Reimplemented from NL3D::CPSEmitter.

Definition at line 1261 of file ps_emitter.cpp.

virtual void NL3D::CPSEmitterRectangle::setDir const NLMISC::CVector   v [inline, virtual]
 

Implements NL3D::CPSDirection.

Definition at line 502 of file ps_emitter.h.

References _Dir, and v.

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

==========================================================================.

Implements NL3D::IPSMover.

Definition at line 1284 of file ps_emitter.cpp.

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

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

==========================================================================.

Reimplemented from NL3D::IPSMover.

Definition at line 1310 of file ps_emitter.cpp.

References _Height, _Width, index, and s.

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

==========================================================================.

Reimplemented from NL3D::IPSMover.

Definition at line 1303 of file ps_emitter.cpp.

References _Height, _Width, and index.

void NL3D::CPSEmitterRectangle::showTool void    [virtual]
 

==========================================================================.

Reimplemented from NL3D::CPSEmitter.

Definition at line 1354 of file ps_emitter.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, and NL3D::CPSLocatedBindable::setupDriverModelMatrix.

virtual bool NL3D::CPSEmitterRectangle::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 513 of file ps_emitter.h.

virtual bool NL3D::CPSEmitterRectangle::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 512 of file ps_emitter.h.


Member Data Documentation

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

Definition at line 524 of file ps_emitter.h.

Referenced by deleteElement, emit, getMatrix, newElement, resize, setMatrix, and showTool.

NLMISC::CVector NL3D::CPSEmitterRectangle::_Dir [protected]
 

Definition at line 533 of file ps_emitter.h.

Referenced by CPSEmitterRectangle, emit, getDir, and setDir.

TPSAttribFloat NL3D::CPSEmitterRectangle::_Height [protected]
 

Definition at line 530 of file ps_emitter.h.

Referenced by deleteElement, emit, getScale, newElement, resize, setScale, and showTool.

TPSAttribFloat NL3D::CPSEmitterRectangle::_Width [protected]
 

Definition at line 527 of file ps_emitter.h.

Referenced by deleteElement, emit, getScale, newElement, resize, setScale, and showTool.


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