Logo Search packages:      
Sourcecode: blender version File versions  Download package

ODEPhysicsEnvironment Class Reference

#include <OdePhysicsEnvironment.h>

Inheritance diagram for ODEPhysicsEnvironment:


List of all members.

Detailed Description

OdePhysicsEnvironment.h 14444 2008-04-16 22:40:48Z hos


The contents of this file may be used under the terms of either the GNU General Public License Version 2 or later (the "GPL", see http://www.gnu.org/licenses/gpl.html ), or the Blender License 1.0 or later (the "BL", see http://www.blender.org/BL/ ) which has to be bought from the Blender Foundation to become active, in which case the above mentioned GPL option does not apply.

The Original Code is Copyright (C) 2002 by NaN Holding BV. All rights reserved.

The Original Code is: all of this file.

Contributor(s): none yet.

***** END GPL LICENSE BLOCK ***** Physics Environment takes care of stepping the simulation and is a container for physics entities (rigidbodies,constraints, materials etc.) A derived class may be able to 'construct' entities by loading and/or converting

Definition at line 32 of file OdePhysicsEnvironment.h.

Public Member Functions

virtual void addSensor (PHY_IPhysicsController *ctrl)
virtual void addTouchCallback (int response_class, PHY_ResponseCallback callback, void *user)
virtual void beginFrame ()
virtual PHY_IPhysicsControllerCreateConeController (float coneradius, float coneheight)
virtual int createConstraint (class PHY_IPhysicsController *ctrl, class PHY_IPhysicsController *ctrl2, PHY_ConstraintType type, float pivotX, float pivotY, float pivotZ, float axis0X, float axis0Y, float axis0Z, float axis1X=0, float axis1Y=0, float axis1Z=0, float axis2X=0, float axis2Y=0, float axis2Z=0)=0
virtual int createConstraint (class PHY_IPhysicsController *ctrl, class PHY_IPhysicsController *ctrl2, PHY_ConstraintType type, float pivotX, float pivotY, float pivotZ, float axisX, float axisY, float axisZ)
virtual PHY_IPhysicsControllerCreateSphereController (float radius, const PHY__Vector3 &position)
virtual void endFrame ()
virtual float getAppliedImpulse (int constraintid)
virtual float getFixedTimeStep ()
struct dxSpace * GetOdeSpace ()
struct dxWorld * GetOdeWorld ()
virtual PHY_IVehicle * getVehicleConstraint (int constraintId)=0
 ODEPhysicsEnvironment ()
virtual bool proceedDeltaTime (double curTime, float timeStep)
 Perform an integration step of duration 'timeStep'.
virtual PHY_IPhysicsControllerrayTest (PHY_IPhysicsController *ignoreClient, float fromX, float fromY, float fromZ, float toX, float toY, float toZ, float &hitX, float &hitY, float &hitZ, float &normalX, float &normalY, float &normalZ)
virtual void removeConstraint (int constraintid)=0
virtual void removeConstraint (void *constraintid)
virtual void removeSensor (PHY_IPhysicsController *ctrl)
virtual void requestCollisionCallback (PHY_IPhysicsController *ctrl)
virtual void setCcdMode (int ccdMode)
 continuous collision detection mode, very experimental for Bullet
virtual void setConstraintParam (int constraintId, int param, float value, float value1)=0
virtual void setContactBreakingTreshold (float contactBreakingTreshold)
 setContactBreakingTreshold sets tresholds to do with contact point management
virtual void setDeactivationAngularTreshold (float angTresh)
 setDeactivationAngularTreshold sets the angular velocity treshold, see setDeactivationTime
virtual void setDeactivationLinearTreshold (float linTresh)
 setDeactivationLinearTreshold sets the linear velocity treshold, see setDeactivationTime
virtual void setDeactivationTime (float dTime)
 setDeactivationTime sets the minimum time that an objects has to stay within the velocity tresholds until it gets fully deactivated
virtual void setDebugMode (int debugMode)
 setDebugMode is used to support several ways of debug lines, contact point visualization
virtual void setFixedTimeStep (bool useFixedTimeStep, float fixedTimeStep)
virtual void setGravity (float x, float y, float z)
virtual void setLinearAirDamping (float damping)
 linear air damping for rigidbodies
virtual void setNumIterations (int numIter)
 setNumIterations set the number of iterations for iterative solvers
virtual void setNumTimeSubSteps (int numTimeSubSteps)
 setNumTimeSubSteps set the number of divisions of the timestep. Tradeoff quality versus performance.
virtual void setSolverDamping (float damping)
 setDamping sets the damper constant of a penalty based solver
virtual void setSolverSorConstant (float sor)
 successive overrelaxation constant, in case PSOR is used, values in between 1 and 2 guarantee converging behaviour
virtual void setSolverTau (float tau)
 setTau sets the spring constant of a penalty based solver
virtual void setSolverType (int solverType)
 setSolverType, internal setting, chooses solvertype, PSOR, Dantzig, impulse based, penalty based
virtual void setUseEpa (bool epa)
 penetrationdepth setting

Private Member Functions

void ClearOdeContactGroup ()
int GetNumOdeContacts ()

Static Private Member Functions

static void OdeNearCallback (void *data, struct dxGeom *o1, struct dxGeom *o2)

Private Attributes

float m_currentTime
float m_fixedTimeStep
struct dxJointGroup * m_JointGroup
struct dxJointGroup * m_OdeContactGroup
struct dxSpace * m_OdeSpace
struct dxWorld * m_OdeWorld
bool m_useFixedTimeStep

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

Generated by  Doxygen 1.6.0   Back to index