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

a gravity class. Mass isn't taken in account (true with a uniform gravity model, near earth ). More...

#include <ps_force.h>

Inheritance diagram for NL3D::CPSGravity:

NL3D::CPSForceIntensityHelper NL3D::CPSForce NL3D::CPSForceIntensity NL3D::CPSTargetLocatedBindable NL3D::CPSLocatedBindable NLMISC::IStreamable NLMISC::IClassable List of all members.

Public Methods

virtual void performDynamic (TAnimationTime ellapsedTime)
 Compute the force on the targets. More...

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

 CPSGravity (float g=9.8f)
virtual void serial (NLMISC::IStream &f) throw (NLMISC::EStream)
 serialization. More...

 NLMISC_DECLARE_CLASS (CPSGravity)
virtual bool isIntegrable (void) const
 check wether this force is integrable over time. The default is false. More...

virtual void integrate (float date, CPSLocated *src, uint32 startIndex, uint32 numObjects, NLMISC::CVector *destPos=NULL, NLMISC::CVector *destSpeed=NULL, bool accumulate=false, uint posStride=sizeof(NLMISC::CVector), uint speedStride=sizeof(NLMISC::CVector))
 inherited from CPSForce. More...

virtual void integrateSingle (float startDate, float deltaT, uint numStep, CPSLocated *src, uint32 indexInLocated, NLMISC::CVector *destPos, bool accumulate=false, uint posStride=sizeof(NLMISC::CVector))
 Compute a trajectory on several steps for a single object, rather than a step for several object. More...


Protected Methods

virtual void setIntensity (float value)
 inherited from CPSForceIntensityHelper. More...

virtual void setIntensityScheme (CPSAttribMaker< float > *scheme)
 inherited from CPSForceIntensityHelper. More...


Detailed Description

a gravity class. Mass isn't taken in account (true with a uniform gravity model, near earth ).

Definition at line 394 of file ps_force.h.


Constructor & Destructor Documentation

NL3D::CPSGravity::CPSGravity float    g = 9.8f [inline]
 

Definition at line 405 of file ps_force.h.

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


Member Function Documentation

void NL3D::CPSGravity::integrate float    date,
CPSLocated   src,
uint32    startIndex,
uint32    numObjects,
NLMISC::CVector   destPos = NULL,
NLMISC::CVector   destSpeed = NULL,
bool    accumulate = false,
uint    posStride = sizeof(NLMISC::CVector),
uint    speedStride = sizeof(NLMISC::CVector)
[virtual]
 

inherited from CPSForce.

Reimplemented from NL3D::CPSForce.

Definition at line 500 of file ps_force.cpp.

References NL3D::CPSForceIntensity::_K, src, NLMISC::CVector::x, NLMISC::CVector::y, and NLMISC::CVector::z.

void NL3D::CPSGravity::integrateSingle float    startDate,
float    deltaT,
uint    numStep,
CPSLocated   src,
uint32    indexInLocated,
NLMISC::CVector   destPos,
bool    accumulate = false,
uint    stride = sizeof(NLMISC::CVector)
[virtual]
 

Compute a trajectory on several steps for a single object, rather than a step for several object.

If the start date is lower than the creation date, the initial position is used NB : works only with integrable forces

Reimplemented from NL3D::CPSForce.

Definition at line 599 of file ps_force.cpp.

References NL3D::CPSForceIntensity::_K, NL3D::FillBufUsingSubdiv, nlassert, NL3D::ScaleFloatGE, src, stride, NLMISC::CVector::x, NLMISC::CVector::y, and NLMISC::CVector::z.

bool NL3D::CPSGravity::isIntegrable void    const [virtual]
 

check wether this force is integrable over time. The default is false.

Reimplemented from NL3D::CPSForce.

Definition at line 495 of file ps_force.cpp.

References NL3D::CPSForceIntensity::_IntensityScheme.

NL3D::CPSGravity::NLMISC_DECLARE_CLASS CPSGravity   
 

void NL3D::CPSGravity::performDynamic TAnimationTime    ellapsedTime [virtual]
 

Compute the force on the targets.

Implements NL3D::CPSForce.

Definition at line 382 of file ps_force.cpp.

References NL3D::CPSForceIntensity::_IntensityScheme, NL3D::CPSForceIntensity::_K, NL3D::CPSLocatedBindable::_Owner, NL3D::CPSTargetLocatedBindable::_Targets, and NL3D::TAnimationTime.

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

serialization.

Reimplemented from NL3D::CPSForceIntensityHelper.

Definition at line 488 of file ps_force.cpp.

void NL3D::CPSGravity::setIntensity float    value [protected, virtual]
 

inherited from CPSForceIntensityHelper.

Reimplemented from NL3D::CPSForceIntensity.

Definition at line 662 of file ps_force.cpp.

References NL3D::CPSForce::renewIntegrable, and value.

Referenced by CPSGravity.

void NL3D::CPSGravity::setIntensityScheme CPSAttribMaker< float > *    scheme [protected, virtual]
 

inherited from CPSForceIntensityHelper.

Reimplemented from NL3D::CPSForceIntensity.

Definition at line 675 of file ps_force.cpp.

References NL3D::CPSForceIntensity::_IntensityScheme, and NL3D::CPSForce::cancelIntegrable.

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

Show the force (edition mode).

Implements NL3D::CPSForce.

Definition at line 415 of file ps_force.cpp.

References NL3D::CPSLocatedBindable::_Owner, NL3D::CPSLocatedBindable::computeI, NL3D::CPSLocatedBindable::getDriver, NL3D::CPSLocatedBindable::getFontGenerator, NL3D::CPSLocatedBindable::getFontManager, NL3D::CPSLocatedBindable::getSysMat, nlassert, and NL3D::TAnimationTime.


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