26        Real dt = this->stateTimeStep()->getValue();
 
   28        auto center = this->stateCenter()->getValue();
 
   29        auto trans_velocity = this->stateVelocity()->getValue();
 
   30        auto angular_velocity = this->stateAngularVelocity()->getValue();
 
   32        auto quat = this->stateQuaternion()->getValue();
 
   34        auto rot = this->stateRotationMatrix()->getValue();
 
   36        auto inertia = this->stateInertia()->getValue();
 
   37        auto initial_inertia = this->stateInitialInertia()->getValue();
 
   39        trans_velocity += this->varGravity()->getValue() * dt;
 
   40        center += trans_velocity * dt;
 
   43        rot = 
quat.toMatrix3x3();
 
   46            Quat(angular_velocity[0], angular_velocity[1], angular_velocity[2], 0.0)
 
   49        inertia = rot * initial_inertia * rot.inverse();
 
   51        this->stateCenter()->setValue(center);
 
   52        this->stateVelocity()->setValue(trans_velocity);
 
   53        this->stateQuaternion()->setValue(
quat);
 
   54        this->stateRotationMatrix()->setValue(rot);
 
   55        this->stateInertia()->setValue(inertia);
 
 
void updateStates() override