step/stepcore
world.h
Go to the documentation of this file.
124 virtual ObjectErrors* createObjectErrors() { return NULL; } // XXX: rename to createObjectVariances
276 virtual void getForceLimits(double* forceMin STEPCORE_UNUSED, double* forceMax STEPCORE_UNUSED) {}
280 virtual void getJacobian(GmmSparseRowMatrix* value, GmmSparseRowMatrix* derivative, int offset) = 0;
DynSparseRowMatrix jacobianDerivative
Time-derivative of constraintsJacobian.
Definition: world.h:226
CollisionSolver * removeCollisionSolver()
Get current CollisionSolver and remove it from world.
Definition: world.cc:583
const BodyList & bodies() const
Get list of all items (not including sub-items) in the World.
Definition: world.h:427
Item * item(const QString &name) const
Get any descendant item by its name.
Definition: world.cc:191
void setErrorsCalculation(bool errorsCalculation)
Enable or disable errors calculation.
Definition: world.h:405
Type to and from string convertion helpers.
MappedVector acceleration
Accelerations of the bodies before applying constraints.
Definition: world.h:231
virtual void getInverseMass(VectorXd *inverseMass, DynSparseRowMatrix *variance, int offset)=0
Get inverse mass and (possibly) its variance matrixes.
ConstraintSolver * removeConstraintSolver()
Get current ConstraintSolver and remove it from world.
Definition: world.cc:596
void worldItemRemoved(Item *item)
Recursively call worldItemRemoved for all children objects.
Definition: world.cc:87
Item & operator=(const Item &item)
Assignment operator (copies objectErrors if necessary)
virtual void setGroup(ItemGroup *group)
Set/change pointer to ItemGroup in which this object lives.
Definition: world.h:94
virtual void getVariables(double *position, double *velocity, double *positionVariance, double *velocityVariance)=0
Copy positions, velocities and (possibly) its variances to arrays.
virtual void getConstraintsInfo(ConstraintsInfo *info, int offset)=0
Fill the part of constraints information structure starting at offset.
void setDimension(int newVariablesCount, int newConstraintsCount, int newContactsCount=0)
Set variablesCount, constraintsCount and reset contactsCount, resize all arrays appropriately.
Definition: world.cc:216
virtual void removeItem(Item *item)
Remove item from the group (you should delete item youself)
Definition: world.cc:104
ObjectErrors * tryGetObjectErrors() const
Get ObjectErrors only if it already exists.
Definition: world.h:100
virtual void getAccelerations(double *acceleration, double *accelerationVariance)=0
Copy acceleration (forces left-multiplied by inverse mass) and (possibly) its variances to arrays...
ItemGroup * group() const
Get pointer to ItemGroup in which this object lives.
Definition: world.h:97
virtual void deleteItem(Item *item)
Delete item from the group (it actually deletes item)
Definition: world.h:343
virtual int variablesCount()=0
Get count of dynamic variables (not including velocities)
virtual void resetForce(bool resetVariance)=0
Reset force accomulator and (possibly) its variance to zero.
int childItemIndex(const Item *item) const
Finds direct child item in items()
Definition: world.cc:176
virtual ObjectErrors * createObjectErrors()
Definition: world.h:124
Internal file.
const ForceList & forces() const
Get list of all forces (including sub-items) in the World.
Definition: world.h:429
virtual void addForce(const double *force, const double *forceVariance)=0
Add force and (possibly) its variance to force accomulator.
void setWorld(World *world)
Recursively call setWorld for all children objects.
Definition: world.cc:79
Object, MetaObject and MetaProperty classes.
const JointList & joints() const
Get list of all joints (including sub-items) in the World.
Definition: world.h:431
void setCollisionSolver(CollisionSolver *collisionSolver)
Set new CollisionSolver (and delete the old one)
Definition: world.cc:577
VectorXd inverseMass
Diagonal coefficients of the inverse mass matrix of the system.
Definition: world.h:227
Eigen::DynamicSparseMatrix< double, Eigen::RowMajor > DynSparseRowMatrix
Definition: types.h:38
const ItemList & items() const
Get list of all direct child items in the ItemGroup.
Definition: world.h:326
virtual void setVariables(const double *position, const double *velocity, const double *positionVariance, const double *velocityVariance)=0
Set positions, velocities and (possibly) its variances using values in arrays and also reset accelera...
virtual void setWorld(World *world)
Set/change pointer to World in which this object lives.
Definition: world.h:88
ItemGroup & operator=(const ItemGroup &group)
Assignment operator (deep copy)
Definition: world.cc:137
Contains multiple Item, Solver and general properties such as time.
Definition: world.h:372
int variablesOffset() const
Offset of body's variables in global arrays (meaningless if the body is not a part of the world) ...
Definition: world.h:181
Definition: types.h:42
void setConstraintSolver(ConstraintSolver *constraintSolver)
Set new ConstraintSolver (and delete the old one)
Definition: world.cc:590
Constraints information structure XXX: Move it to constraintsolver.h.
Definition: world.h:216
virtual void worldItemRemoved(Item *item STEPCORE_UNUSED)
Called by the World when any item is about to be removed from the world.
Definition: world.h:119
void setEvolveAbort(bool evolveAbort=true)
Set evolveAbort flag (can be called from separate thread).
Definition: world.h:467
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:16:43 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:16:43 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.