00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef _PO_CIRCLE_ARC_CTR_RAD_TWO_ANGLE_
00025 #define _PO_CIRCLE_ARC_CTR_RAD_TWO_ANGLE_
00026
00027 #include <MeshViz/graph/PoCircleArc.h>
00028 #include <Inventor/fields/SoSFVec2f.h>
00029 #include <Inventor/fields/SoSFFloat.h>
00030
00055 class PoCircleArcCtrRadTwoAngle : public PoCircleArc {
00056
00057 SO_KIT_HEADER(PoCircleArcCtrRadTwoAngle) ;
00058
00059
00060 public:
00061
00062
00063
00067 SoSFVec2f center ;
00068
00072 SoSFFloat radius ;
00073
00077 SoSFFloat startAngle ;
00078
00082 SoSFFloat endAngle ;
00083
00084
00085
00086
00087
00091 PoCircleArcCtrRadTwoAngle()
00092 { init(SbVec2f(0.0, 0.0), 1.0F, 0.0F, (float)PDEUXPI) ; }
00093
00097 PoCircleArcCtrRadTwoAngle(const SbVec2f &_center, float _radius,
00098 float _startAngle, float _endAngle)
00099 { init(_center, _radius, _startAngle, _endAngle) ; }
00100
00104 virtual void rebuild() ;
00105
00106
00107 private:
00108 static void initClass() ;
00109 static void exitClass() ;
00110
00111 private:
00112
00113
00114 virtual ~PoCircleArcCtrRadTwoAngle() ;
00115 virtual SbBool setUpConnections(SbBool onOff, SbBool doItAlways = FALSE) ;
00116 virtual void setDefaultOnNonWritingFields() ;
00117
00118 private:
00119
00120 void init(const SbVec2f ¢er, float radius,
00121 float startAngle, float endAngle) ;
00122
00123
00124
00125 FieldSensorList fieldSensorList ;
00126
00127
00128 SoFieldList fieldList ;
00129 } ;
00130
00131
00132
00133 #endif
00134
00135