From 0ea5fc66924303d1bf73ba283a383e2aadee02f2 Mon Sep 17 00:00:00 2001 From: neodarz Date: Sat, 11 Aug 2018 20:21:34 +0200 Subject: Initial commit --- docs/doxygen/nel/classNL3D_1_1CPSFace.html | 780 +++++++++++++++++++++++++++++ 1 file changed, 780 insertions(+) create mode 100644 docs/doxygen/nel/classNL3D_1_1CPSFace.html (limited to 'docs/doxygen/nel/classNL3D_1_1CPSFace.html') diff --git a/docs/doxygen/nel/classNL3D_1_1CPSFace.html b/docs/doxygen/nel/classNL3D_1_1CPSFace.html new file mode 100644 index 00000000..4695d4e8 --- /dev/null +++ b/docs/doxygen/nel/classNL3D_1_1CPSFace.html @@ -0,0 +1,780 @@ + + + + nevrax.org : docs + + + + + + + + + + + + + + +
# 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::CPSFace Class Reference

A face particle Unlike FaceLookAt, these particle can have an orientation in space. +More... +

+#include <ps_face.h> +

+

Inheritance diagram for NL3D::CPSFace: +

+ +NL3D::CPSQuad +NL3D::CPSRotated3DPlaneParticle +NL3D::CPSHintParticleRotateTheSame +NL3D::CPSParticle +NL3D::CPSColoredParticle +NL3D::CPSTexturedParticle +NL3D::CPSMultiTexturedParticle +NL3D::CPSSizedParticle +NL3D::CPSMaterial +NL3D::CPSLocatedBindable +NLMISC::IStreamable +NLMISC::IClassable + +List of all members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Public Methods

 CPSFace (CSmartPtr< ITexture > tex=NULL)
 ======================================================================================. More...

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

 NLMISC_DECLARE_CLASS (CPSFace)
void hintRotateTheSame (uint32 nbConfiguration, float minAngularVelocity=NLMISC::Pi, float maxAngularVelocity=NLMISC::Pi)
 ======================================================================================. More...

void disableHintRotateTheSame (void)
 disable the hint 'hintRotateTheSame' The previous set scheme for roation is used. More...

uint32 checkHintRotateTheSame (float &min, float &max) const
 check wether a call to hintRotateTheSame was performed. More...


Protected Methods

virtual void step (TPSProcessPass pass, TAnimationTime ellapsedTime, TAnimationTime realEllapsedTime)
 ======================================================================================. More...

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

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

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

void fillIndexesInPrecompBasis (void)
 ======================================================================================. More...

virtual CPSLocatedgetPlaneBasisOwner (void)
 if this is false, constant size will be used instead of a scheme deriver must return their owner there. More...


Protected Attributes

float _MinAngularVelocity
float _MaxAngularVelocity
std::vector< CPlaneBasisPair_PrecompBasis
 a set of precomp basis, before and after transfomation in world space, used if the hint 'RotateTheSame' has been called. More...

std::vector< uint32_IndexInPrecompBasis
 this contain an index in _PrecompBasis for each particle. More...


Friends

class CPSFaceHelper
+

Detailed Description

+A face particle Unlike FaceLookAt, these particle can have an orientation in space. +

+They are drawn with an angle bias of 45° in their local basis (for optimisation purpose) +

+^ y | 0 / \ / \ 3 1--> x \ / \ / 2 If all particle must rotate the same, but with a rotattionnal bias, a hint can be provided, so that there are batch of particle that share the same orientation. The users must give the number of various phase This is the fastest. Other cases need an attribute maker that produce a couple of vectors , giving the x & y direction of the local basis (plane particle) +

+ +

+Definition at line 60 of file ps_face.h.


Constructor & Destructor Documentation

+

+ + + + +
+ + + + + + + + + + +
NL3D::CPSFace::CPSFace CSmartPtr< ITexture  tex = NULL
+
+ + + + + +
+   + + +

+======================================================================================. +

+ +

+Definition at line 205 of file ps_face.cpp. +

+References NL3D::CPSLocatedBindable::_Name.

+


Member Function Documentation

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + +
uint32 NL3D::CPSFace::checkHintRotateTheSame float &   min,
float &   max
const [inline, virtual]
+
+ + + + + +
+   + + +

+check wether a call to hintRotateTheSame was performed. +

+

+Returns:
+0 if the hint is disabled, the number of configurations else
+See also:
+hintRotateTheSame(), CPSRotated3dPlaneParticle
+

+Implements NL3D::CPSHintParticleRotateTheSame. +

+Definition at line 101 of file ps_face.h. +

+References _MaxAngularVelocity, _MinAngularVelocity, _PrecompBasis, and min.

+

+ + + + +
+ + + + + + + + + + +
void NL3D::CPSFace::deleteElement uint32   index [protected, virtual]
+
+ + + + + +
+   + + +

+======================================================================================. +

+ +

+Reimplemented from NL3D::CPSQuad. +

+Definition at line 379 of file ps_face.cpp. +

+References _IndexInPrecompBasis, NL3D::CPSLocatedBindable::_Owner, _PrecompBasis, NL3D::CPSRotated3DPlaneParticle::deletePlaneBasisElement, and index.

+

+ + + + +
+ + + + + + + + + + +
void NL3D::CPSFace::disableHintRotateTheSame void   [inline, virtual]
+
+ + + + + +
+   + + +

+disable the hint 'hintRotateTheSame' The previous set scheme for roation is used. +

+

+See also:
+hintRotateTheSame(), CPSRotated3dPlaneParticle
+

+Implements NL3D::CPSHintParticleRotateTheSame. +

+Definition at line 91 of file ps_face.h. +

+References hintRotateTheSame.

+

+ + + + +
+ + + + + + + + + + +
void NL3D::CPSFace::fillIndexesInPrecompBasis void   [protected]
+
+ + + + + +
+   + + +

+======================================================================================. +

+ +

+Definition at line 353 of file ps_face.cpp. +

+References _IndexInPrecompBasis, NL3D::CPSLocatedBindable::_Owner, and _PrecompBasis. +

+Referenced by hintRotateTheSame.

+

+ + + + +
+ + + + + + + + + + +
virtual CPSLocated* NL3D::CPSFace::getPlaneBasisOwner void   [inline, protected, virtual]
+
+ + + + + +
+   + + +

+if this is false, constant size will be used instead of a scheme deriver must return their owner there. +

+ +

+Implements NL3D::CPSRotated3DPlaneParticle. +

+Definition at line 119 of file ps_face.h. +

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

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
void NL3D::CPSFace::hintRotateTheSame uint32   nbConfiguration,
float   minAngularVelocity = NLMISC::Pi,
float   maxAngularVelocity = NLMISC::Pi
[virtual]
+
+ + + + + +
+   + + +

+======================================================================================. +

+Any previous set scheme for 3d rotation is kept.

+am: the number of rotation configuration we have. The more high it is, the slower it'll be
+ If this is too low, a lot of particles will have the same orientation If it is 0, then the hint is disabled
+Parameters:
+ + + +
minAngularVelocity  +: the maximum angular velocity for particle rotation
maxAngularVelocity  +: the maximum angular velocity for particle rotation
+
+See also:
+CPSRotated3dPlaneParticle
+

+Implements NL3D::CPSHintParticleRotateTheSame. +

+Definition at line 327 of file ps_face.cpp. +

+References _MaxAngularVelocity, _MinAngularVelocity, _PrecompBasis, fillIndexesInPrecompBasis, NL3D::MakeRandomUnitVect, and v. +

+Referenced by disableHintRotateTheSame.

+

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

+======================================================================================. +

+ +

+Reimplemented from NL3D::CPSQuad. +

+Definition at line 367 of file ps_face.cpp. +

+References _IndexInPrecompBasis, NL3D::CPSLocatedBindable::_Owner, _PrecompBasis, and NL3D::CPSRotated3DPlaneParticle::newPlaneBasisElement.

+

+ + + + +
+ + + + + + + + + + +
NL3D::CPSFace::NLMISC_DECLARE_CLASS CPSFace  
+
+ + + + + +
+   + + +

+

+

+ + + + +
+ + + + + + + + + + +
void NL3D::CPSFace::resize uint32   size [protected, virtual]
+
+ + + + + +
+   + + +

+======================================================================================. +

+ +

+Reimplemented from NL3D::CPSQuad. +

+Definition at line 391 of file ps_face.cpp. +

+References _IndexInPrecompBasis, _PrecompBasis, nlassert, and NL3D::CPSRotated3DPlaneParticle::resizePlaneBasis.

+

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

+======================================================================================. +

+ +

+Reimplemented from NL3D::CPSQuad. +

+Definition at line 284 of file ps_face.cpp.

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
void NL3D::CPSFace::step TPSProcessPass   pass,
TAnimationTime   ellapsedTime,
TAnimationTime   realEllapsedTime
[protected, virtual]
+
+ + + + + +
+   + + +

+======================================================================================. +

+ +

+Reimplemented from NL3D::CPSParticle. +

+Definition at line 211 of file ps_face.cpp. +

+References _IndexInPrecompBasis, NL3D::CPSLocatedBindable::_Owner, _PrecompBasis, NL3D::CPSParticle::computeSrcStep, NL3D::CPSQuad::hasOpaqueFaces, NL3D::CPSQuad::hasTransparentFaces, NL3D::PSBlendRender, NL3D::PSMotion, NL3D::PSSolidRender, NL3D::PSToolRender, NL3D::CPSParticle::showTool, step, NL3D::TAnimationTime, NL3D::TIteratorVectStep1616, and NL3D::TPSProcessPass. +

+Referenced by step.

+


Friends And Related Function Documentation

+

+ + + + +
+ + +
friend class CPSFaceHelper [friend] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 111 of file ps_face.h.

+


Member Data Documentation

+

+ + + + +
+ + +
std::vector<uint32> NL3D::CPSFace::_IndexInPrecompBasis [protected] +
+
+ + + + + +
+   + + +

+this contain an index in _PrecompBasis for each particle. +

+ +

+Definition at line 135 of file ps_face.h. +

+Referenced by deleteElement, fillIndexesInPrecompBasis, newElement, resize, and step.

+

+ + + + +
+ + +
float NL3D::CPSFace::_MaxAngularVelocity [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 123 of file ps_face.h. +

+Referenced by checkHintRotateTheSame, and hintRotateTheSame.

+

+ + + + +
+ + +
float NL3D::CPSFace::_MinAngularVelocity [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 122 of file ps_face.h. +

+Referenced by checkHintRotateTheSame, and hintRotateTheSame.

+

+ + + + +
+ + +
std::vector< CPlaneBasisPair > NL3D::CPSFace::_PrecompBasis [protected] +
+
+ + + + + +
+   + + +

+a set of precomp basis, before and after transfomation in world space, used if the hint 'RotateTheSame' has been called. +

+ +

+Definition at line 132 of file ps_face.h. +

+Referenced by checkHintRotateTheSame, deleteElement, fillIndexesInPrecompBasis, hintRotateTheSame, newElement, resize, and step.

+


The documentation for this class was generated from the following files: + + + +
                                                                                                                                                                    +
+ + -- cgit v1.2.1