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

this class adds tunable color to a particle. Can be added using public multiple inheritance. More...

#include <ps_particle_basic.h>

Inheritance diagram for NL3D::CPSColoredParticle:

NL3D::CPSConstraintMesh NL3D::CPSDot NL3D::CPSFanLight NL3D::CPSQuad NL3D::CPSRibbon NL3D::CPSRibbonLookAt NL3D::CPSShockWave NL3D::CPSTailDot List of all members.

Public Methods

void setColorScheme (CPSAttribMaker< CRGBA > *col)
 Set an attribute maker that produce a color It must have been allocated by new It will be deleted by this object. More...

CPSAttribMaker< CRGBA > * getColorScheme (void)
 get the color scheme (NULL if none). More...

const CPSAttribMaker< CRGBA > * getColorScheme (void) const
 get the color scheme (NULL if none) const version. More...

void setColor (NLMISC::CRGBA col)
 Set a constant color for the particles. remove any previous scheme. More...

NLMISC::CRGBA getColor (void) const
 Get the color. More...

 CPSColoredParticle ()
 ctor : default are white particles (constant color). More...

virtual ~CPSColoredParticle ()
 dtor. More...

void serialColorScheme (NLMISC::IStream &f) throw (NLMISC::EStream)
 serialization. More...


Protected Methods

virtual CPSLocatedgetColorOwner (void)=0
 deriver must return their owner there. More...

virtual void updateMatAndVbForColor (void)=0
 Update the material and the vb and the like so that they match the color scheme. More...

void newColorElement (CPSLocated *emitterLocated, uint32 emitterIndex)
void deleteColorElement (uint32 index)
void resizeColor (uint32 size)

Protected Attributes

CRGBA _Color
CPSAttribMaker< CRGBA > * _ColorScheme

Detailed Description

this class adds tunable color to a particle. Can be added using public multiple inheritance.

Definition at line 168 of file ps_particle_basic.h.


Constructor & Destructor Documentation

NL3D::CPSColoredParticle::CPSColoredParticle  
 

ctor : default are white particles (constant color).

Definition at line 143 of file ps_particle_basic.cpp.

NL3D::CPSColoredParticle::~CPSColoredParticle   [virtual]
 

dtor.

Definition at line 148 of file ps_particle_basic.cpp.

References _ColorScheme.


Member Function Documentation

void NL3D::CPSColoredParticle::deleteColorElement uint32    index [inline, protected]
 

Definition at line 214 of file ps_particle_basic.h.

References _ColorScheme, and index.

Referenced by NL3D::CPSTailDot::deleteElement, NL3D::CPSShockWave::deleteElement, NL3D::CPSRibbonLookAt::deleteElement, NL3D::CPSRibbon::deleteElement, NL3D::CPSQuad::deleteElement, NL3D::CPSConstraintMesh::deleteElement, NL3D::CPSFanLight::deleteElement, and NL3D::CPSDot::deleteElement.

NLMISC::CRGBA NL3D::CPSColoredParticle::getColor void    const [inline]
 

Get the color.

Definition at line 188 of file ps_particle_basic.h.

References _Color.

virtual CPSLocated* NL3D::CPSColoredParticle::getColorOwner void    [protected, pure virtual]
 

deriver must return their owner there.

Implemented in NL3D::CPSDot.

Referenced by resizeColor, and setColorScheme.

const CPSAttribMaker<CRGBA>* NL3D::CPSColoredParticle::getColorScheme void    const [inline]
 

get the color scheme (NULL if none) const version.

Definition at line 182 of file ps_particle_basic.h.

References _ColorScheme.

CPSAttribMaker<CRGBA>* NL3D::CPSColoredParticle::getColorScheme void    [inline]
 

get the color scheme (NULL if none).

Definition at line 179 of file ps_particle_basic.h.

References _ColorScheme.

void NL3D::CPSColoredParticle::newColorElement CPSLocated   emitterLocated,
uint32    emitterIndex
[inline, protected]
 

Definition at line 210 of file ps_particle_basic.h.

References _ColorScheme.

Referenced by NL3D::CPSTailDot::newElement, NL3D::CPSShockWave::newElement, NL3D::CPSRibbonLookAt::newElement, NL3D::CPSRibbon::newElement, NL3D::CPSQuad::newElement, NL3D::CPSConstraintMesh::newElement, NL3D::CPSFanLight::newElement, and NL3D::CPSDot::newElement.

void NL3D::CPSColoredParticle::resizeColor uint32    size [inline, protected]
 

Definition at line 218 of file ps_particle_basic.h.

References _ColorScheme, getColorOwner, and nlassert.

Referenced by NL3D::CPSTailDot::resize, NL3D::CPSShockWave::resize, NL3D::CPSRibbonLookAt::resize, NL3D::CPSRibbon::resize, NL3D::CPSQuad::resize, NL3D::CPSConstraintMesh::resize, NL3D::CPSFanLight::resize, and NL3D::CPSDot::resize.

void NL3D::CPSColoredParticle::serialColorScheme NLMISC::IStream   f throw (NLMISC::EStream)
 

serialization.

Definition at line 154 of file ps_particle_basic.cpp.

void NL3D::CPSColoredParticle::setColor NLMISC::CRGBA    col
 

Set a constant color for the particles. remove any previous scheme.

Definition at line 134 of file ps_particle_basic.cpp.

References _Color, _ColorScheme, and updateMatAndVbForColor.

void NL3D::CPSColoredParticle::setColorScheme CPSAttribMaker< CRGBA > *    col
 

Set an attribute maker that produce a color It must have been allocated by new It will be deleted by this object.

Definition at line 124 of file ps_particle_basic.cpp.

References _ColorScheme, getColorOwner, nlassert, and updateMatAndVbForColor.

virtual void NL3D::CPSColoredParticle::updateMatAndVbForColor void    [protected, pure virtual]
 

Update the material and the vb and the like so that they match the color scheme.

Implemented in NL3D::CPSDot.

Referenced by setColor, and setColorScheme.


Member Data Documentation

CRGBA NL3D::CPSColoredParticle::_Color [protected]
 

Definition at line 203 of file ps_particle_basic.h.

Referenced by NL3D::CPSShockWave::draw, NL3D::CPSDot::draw, getColor, setColor, NL3D::CPSTailDot::setupGlobalColor, NL3D::CPSFanLight::setupMaterial, NL3D::CPSRibbon::setupTexturedGlobalColor, NL3D::CPSRibbon::setupUntexturedGlobalColor, and NL3D::CPSQuad::updateMatBeforeRendering.

CPSAttribMaker<CRGBA>* NL3D::CPSColoredParticle::_ColorScheme [protected]
 

Definition at line 205 of file ps_particle_basic.h.

Referenced by NL3D::CPSConstraintMesh::computeColors, deleteColorElement, NL3D::CPSTailDot::displayRibbons, NL3D::CPSRibbonLookAt::displayRibbons, NL3D::CPSRibbon::displayRibbons, NL3D::CPSShockWave::draw, NL3D::CPSDot::draw, getColorScheme, NL3D::CPSFanLight::getVBnIB, NL3D::CPSTailDot::getVBnPB, NL3D::CPSShockWave::getVBnPB, NL3D::CPSRibbonLookAt::getVBnPB, NL3D::CPSRibbon::getVBnPB, newColorElement, resizeColor, NL3D::CPSConstraintMesh::restoreMaterials, setColor, setColorScheme, NL3D::CPSFanLight::setupMaterial, NL3D::CPSRibbon::setupTextureMatrix, NL3D::CPSQuad::updateMatBeforeRendering, NL3D::CPSShockWave::updateVbColNUVForRender, NL3D::CPSQuad::updateVbColNUVForRender, and ~CPSColoredParticle.


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