// // void step() // Last modified: 27Dec2010 // // Executes the appropriate active behavior. // // Returns: <none> // Parameters: <none> // void Robot::step() { GLfloat collDist = collisionRadius(); vector<Vector> rels = getObjectRelationships(collDist); if (rels.size() > 0) { GLfloat minDist = HUGE; GLint minIndex = 0; for (GLint i = 0, n = rels.size(); i < n; ++i) { GLfloat currDist = rels[i].magnitude(); if (currDist < minDist) { minDist = currDist; minIndex = i; } } //avoid(rels[minIndex], collDist); } if (behavior.isActive()) { translateRelative(getTransVel()); rotateRelative(getAngVel()); } } // step()
void Robot::step() { if (behavior.isActive()) { translateRelative(getTransVel()); rotateRelative(getAngVel()); } } // step()