Changeset 3019 in orxonox.OLD for orxonox/branches
- Timestamp:
- Nov 28, 2004, 1:46:56 PM (20 years ago)
- Location:
- orxonox/branches/bezierTrack/src
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
orxonox/branches/bezierTrack/src/curve.cc
r3018 r3019 17 17 18 18 #include "curve.h" 19 20 21 22 /** 23 \brief adds a new Node to the bezier Curve 24 \param newNode a Vector to the position of the new node 25 */ 26 void Curve::addNode(const Vector& newNode) 27 { 28 if (nodeCount != 0 ) 29 { 30 currentNode = currentNode->next = new PathNode; 31 } 32 currentNode->position = newNode; 33 currentNode->next = 0; // not sure if this really points to NULL!! 34 currentNode->number = (++nodeCount); 35 return; 36 } 37 19 38 20 39 /** … … 48 67 delete tmpNode; 49 68 } 50 }51 52 /**53 \brief adds a new Node to the bezier Curve54 \param newNode a Vector to the position of the new node55 */56 void BezierCurve::addNode(const Vector& newNode)57 {58 if (nodeCount != 0 )59 {60 currentNode = currentNode->next = new PathNode;61 }62 currentNode->position = newNode;63 currentNode->next = 0; // not sure if this really points to NULL!!64 currentNode->number = (++nodeCount);65 return;66 69 } 67 70 … … 136 139 137 140 138 int BezierCurve::ncr(int n, int i)141 int ncr(int n, int i) 139 142 { 140 143 int ret = 1; -
orxonox/branches/bezierTrack/src/curve.h
r3018 r3019 12 12 13 13 14 //! Bezier Curve 15 /** 16 Class to handle bezier curves in 3-dimesnsional space 17 18 needed for the Tracking system in OrxOnoX. 19 */ 20 class BezierCurve 14 15 class Curve 21 16 { 22 pr ivate:17 protected: 23 18 int nodeCount; 24 19 Vector curvePoint; 25 20 26 21 struct PathNode 27 22 { … … 34 29 PathNode* currentNode; 35 30 36 int ncr(int n, int i);31 public: 37 32 33 void addNode (const Vector& newNode); 34 35 }; 36 37 //! Bezier Curve 38 /** 39 Class to handle bezier curves in 3-dimesnsional space 40 41 needed for the Tracking system in OrxOnoX. 42 */ 43 class BezierCurve : public Curve 44 { 45 private: 46 // all from Curve-Class 38 47 public: 39 48 BezierCurve (void); 40 49 ~BezierCurve (void); 41 void addNode (const Vector& newNode); 42 Vector calcPos (float t); 43 Vector calcDir (float t); 50 virtual Vector calcPos (float t); 51 virtual Vector calcDir (float t); 44 52 45 53 Vector getPos () const; 46 54 }; 47 55 56 int ncr(int n, int i); 48 57 49 58
Note: See TracChangeset
for help on using the changeset viewer.