Open Inventor Release 2024.1.3
 
Loading...
Searching...
No Matches
PoCircle3ThreePoints.h
1/*=======================================================================
2 *** THE CONTENT OF THIS WORK IS PROPRIETARY TO FEI S.A.S, (FEI S.A.S.), ***
3 *** AND IS DISTRIBUTED UNDER A LICENSE AGREEMENT. ***
4 *** ***
5 *** REPRODUCTION, DISCLOSURE, OR USE, IN WHOLE OR IN PART, OTHER THAN AS ***
6 *** SPECIFIED IN THE LICENSE ARE NOT TO BE UNDERTAKEN EXCEPT WITH PRIOR ***
7 *** WRITTEN AUTHORIZATION OF FEI S.A.S. ***
8 *** ***
9 *** RESTRICTED RIGHTS LEGEND ***
10 *** USE, DUPLICATION, OR DISCLOSURE BY THE GOVERNMENT OF THE CONTENT OF THIS ***
11 *** WORK OR RELATED DOCUMENTATION IS SUBJECT TO RESTRICTIONS AS SET FORTH IN ***
12 *** SUBPARAGRAPH (C)(1) OF THE COMMERCIAL COMPUTER SOFTWARE RESTRICTED RIGHT ***
13 *** CLAUSE AT FAR 52.227-19 OR SUBPARAGRAPH (C)(1)(II) OF THE RIGHTS IN ***
14 *** TECHNICAL DATA AND COMPUTER SOFTWARE CLAUSE AT DFARS 52.227-7013. ***
15 *** ***
16 *** COPYRIGHT (C) 1996-2014 BY FEI S.A.S, ***
17 *** BORDEAUX, FRANCE ***
18 *** ALL RIGHTS RESERVED ***
19**=======================================================================*/
20/*=======================================================================
21** Author : VSG (MMM YYYY)
22**=======================================================================*/
23
24#ifndef _PO_CIRCLE3_THREE_POINTS_
25#define _PO_CIRCLE3_THREE_POINTS_
26
27#include <MeshViz/graph/PoCircle3.h>
28#include <Inventor/fields/SoSFVec3f.h>
29
30
53
54 SO_KIT_HEADER(PoCircle3ThreePoints) ;
55
56
57 public:
58
59 /* Fields */
60
65
70
75
76
77
78 /* Methods */
79
84 { init(TRUE, SbVec3f(1., 0., 0.), SbVec3f(0., 1., 0.), SbVec3f(-1, 0., 0.)) ; }
85
89 PoCircle3ThreePoints(const SbVec3f &_p, const SbVec3f &_q, const SbVec3f &_r)
90 { init(FALSE, _p, _q, _r) ; }
91
95 virtual void rebuild() ;
96
97 /*----------------------------------------------------------------------------*/
98 private:
99 static void initClass() ;
100 static void exitClass() ;
101
102 private:
103 // Methods
104 // Destructor
105 virtual ~PoCircle3ThreePoints() ;
106 virtual SbBool setUpConnections(SbBool onOff, SbBool doItAlways = FALSE) ;
107 virtual void setDefaultOnNonWritingFields() ;
108
109 private:
110 // Init method
111 void init(SbBool isDefault, const SbVec3f &p, const SbVec3f &q, const SbVec3f &r) ;
112
113 // Sensors
114 FieldSensorList fieldSensorList ;
115
116 // List of fields defined in this class
117 SoFieldList fieldList ;
118
119
120} ;
121
122/*----------------------------------------------------------------------------*/
123
124#endif /* _PO_CIRCLE3_THREE_POINTS_ */
125
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Abstract class for 3D ci...
Definition PoCircle3.h:37
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Class to build a 3D circ...
SoSFVec3f p
First point of the circle.
PoCircle3ThreePoints(const SbVec3f &_p, const SbVec3f &_q, const SbVec3f &_r)
Constructor.
virtual void rebuild()
Forces node-kit rebuilding.
PoCircle3ThreePoints()
Default constructor.
SoSFVec3f r
Third point of the circle.
SoSFVec3f q
Second point of the circle.
3D vector class.
Definition SbVec.h:932
Maintains a list of pointers to fields.
Definition SoFieldList.h:72
Field containing a three-dimensional vector.
Definition SoSFVec3f.h:80
int SbBool
Boolean type.
Definition SbBase.h:87