Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Changeset 4145 in orxonox.OLD for orxonox/trunk/src/lib


Ignore:
Timestamp:
May 10, 2005, 4:54:00 PM (20 years ago)
Author:
bensch
Message:

orxonox/trunk: every world-entity saves the speed of its own

Location:
orxonox/trunk/src/lib/coord
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • orxonox/trunk/src/lib/coord/p_node.cc

    r3966 r4145  
    9999  this->parent = parent;
    100100  this->objectName = NULL;
    101   this->time = 1.0; /* set time to 1 to make divisions by zero impossible */
    102101}
    103102
     
    281280}
    282281
    283 
    284 
    285 /**
    286    \brief this calculates the current movement speed of the node
    287 */
    288 float PNode::getSpeed() const
    289 {
    290   return (this->absCoordinate - this->lastAbsCoordinate).len() / this->time;
    291 }
    292 
    293 /**
    294    \returns the Velocity of the PNode
    295 */
    296 Vector PNode::getVelocity() const
    297 {
    298   return (this->absCoordinate - this->lastAbsCoordinate) / this->time;
    299 }
    300 
    301282/**
    302283   \brief adds a child and makes this node to a parent
     
    424405{
    425406  this->lastAbsCoordinate = this->absCoordinate;
    426   this->time = dt;
     407
    427408  PRINTF(4)("PNode::update - %s - (%f, %f, %f)\n", this->objectName, this->absCoordinate.x, this->absCoordinate.y, this->absCoordinate.z);
    428409
     
    499480  delete iterator;
    500481
     482  this->velocity = (this->absCoordinate - this->lastAbsCoordinate) / dt;
    501483  this->timeStamp = timeStamp;
    502484  this->bRelCoorChanged = false;
  • orxonox/trunk/src/lib/coord/p_node.h

    r3966 r4145  
    6969  void shiftDir (const Quaternion& shift);
    7070
    71   float getSpeed() const;
    72   Vector getVelocity() const;
     71  /** \returns the Speed of the Node */
     72  inline float getSpeed() const {return this->velocity.len()/1000;} //! \FIX THIS SHOULD NOT BE /1000
     73  /** \returns the Velocity of the Node */
     74  inline const Vector& getVelocity() const {return this->velocity;}
    7375
    7476  void addChild (PNode* pNode, int parentingMode = DEFAULT_MODE);
     
    110112  void init(PNode* parent);
    111113
     114  Vector velocity;          //!< Saves the velocity.
    112115  Vector lastAbsCoordinate; //!< this is used for speedcalculation, it stores the last coordinate
    113   Vector diffCoordinate;    //!< this is stored here for performance reasons, difference to the last vector
    114   float time;                //!< time since last update
    115116};
    116117
Note: See TracChangeset for help on using the changeset viewer.