1 #ifndef _DA_CONTROL_POINT_H
2 #define _DA_CONTROL_POINT_H
14 DAGizmo(osg::Group *p_EOOwner, osg::Vec3 position, osg::Vec3 tangent, osg::Vec3 normal, osg::Vec3 binormal,
double radius);
17 osg::ref_ptr <SimpleBox>
getNormal() {
return this->normal; }
18 osg::ref_ptr <SimpleBox>
getBinormal() {
return this->binormal; }
25 osg::Group *visualsOwner;
30 osg::ref_ptr <SimpleBox> tangent;
31 osg::ref_ptr <SimpleBox> normal;
32 osg::ref_ptr <SimpleBox> binormal;
50 DAControlPoint(DAControlPointType p_type, osg::Group *p_EOOwner, osg::Vec3 point, osg::Quat orient);
60 inline osg::Vec3
getNormal() {
return this->normal; }
65 inline double getSpeed() {
return this->speed; }
69 inline DAControlPointType
getType() {
return this->type; }
74 void setCharacteristics(osg::Vec3 tan, osg::Vec3 norm, osg::Vec3 binorm,
double curvature,
double torsion);
75 inline void setNormal(osg::Vec3 nrml) {this->normal = nrml; }
76 inline void setBinormal(osg::Vec3 binrml) {this->binormal = binrml; }
78 void setPosition(osg::Vec3f::value_type x, osg::Vec3f::value_type y, osg::Vec3f::value_type z);
79 inline void setPriority(
double prior) {this->priority = prior; }
81 inline double setSpeed(
double spee) { this->speed = spee; }
82 inline void setTangent(osg::Vec3 tngt) { this->tangent = tngt; }
83 inline void setTvalue(
double tval) {this->tvalue = tval; }
96 DAControlPointType type;
108 osg::Quat orientation;
136 double segmentLength;
147 osg::Group *visualsOwner;
148 bool visibleVisualBox;
150 osg::ref_ptr <SimpleBox> visualBox;
152 osg::ref_ptr<DAGizmo> gizmo;
159 #endif //_DA_CONTROL_POINT_H