vrecko
virtual reality framework
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
SampledSpline.h
Go to the documentation of this file.
1 #pragma once
2 #include "spline.h"
3 
4 class SampledSpline : public Spline
5 {
6 public:
9  SampledSpline(double minSampleDistance, bool closed, const Vec3ArrayPtr sampleArray);
10 
12  META_DAObject(SampledSpline, "Sampled Spline");
13 
14  virtual Vec3ArrayPtr getPoints();
15  virtual bool isClosed() { return _closed; }
16 
18  inline void setVertexArray(const Vec3ArrayPtr array);
19  inline Vec3ArrayPtr getVertexArray() const { return _array; }
20 
21  inline double getMinimalSampleDistance() const { return _minDistance; }
22  inline void setMinimalSampleDistance(double val);
23 
24  inline void setClosed(bool val);
25 
26 protected:
28  double _minDistance;
29  bool _closed;
30 };
31 
32 inline void SampledSpline::setVertexArray( const Vec3ArrayPtr array )
33 {
34  if(array.valid()) {
35  _dirty = true;
36  _array = array;
37  }
38 }
39 
40 inline void SampledSpline::setMinimalSampleDistance( double val )
41 {
42  _dirty = true;
43  _minDistance = val;
44 }
45 
46 inline void SampledSpline::setClosed( bool val )
47 {
48  _dirty = true;
49  _closed = val;
50 }
51 
52 typedef osg::ref_ptr<SampledSpline> SampledSplinePtr;