Open Inventor Release 2024.2.0
 
Loading...
Searching...
No Matches
PoGroup6Axis3.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_GROUP_6_AXIS_3_
25#define _PO_GROUP_6_AXIS_3_
26
27#include <Inventor/fields/SoSFEnum.h>
28#include <Inventor/fields/SoSFVec3f.h>
29#include <Inventor/fields/SoSFString.h>
30
31#include <MeshViz/graph/PoBaseAxis.h>
32
33class PoCartesianAxis ;
34
65class PoGroup6Axis3 : public PoBaseAxis {
66
67 SO_KIT_HEADER(PoGroup6Axis3) ;
68
69 /* Define fields for new parts */
70 SO_KIT_CATALOG_ENTRY_HEADER(xUpAxis) ;
71 SO_KIT_CATALOG_ENTRY_HEADER(xDownAxis) ;
72 SO_KIT_CATALOG_ENTRY_HEADER(yLeftAxis) ;
73 SO_KIT_CATALOG_ENTRY_HEADER(yRightAxis) ;
74 SO_KIT_CATALOG_ENTRY_HEADER(zUpAxis) ;
75 SO_KIT_CATALOG_ENTRY_HEADER(zDownAxis) ;
76
77
78 public:
79
93
94
95
96 /* Fields */
97
102
107
117
127
132
137
142
143
144
145 /* Methods */
146
151 { init(SbVec3f(0., 0., 0.), SbVec3f(1., 1., 1.), LINEAR, LINEAR, LINEAR,
152 NULL, NULL, NULL) ; }
153
157 PoGroup6Axis3(const SbVec3f &_start, const SbVec3f &_end, AxisType _xAxisType,
158 AxisType _yAxisType, AxisType _zAxisType,
159 const char *xTtle = NULL, const char *yTtle = NULL,
160 const char *zTtle = NULL)
161 { init(_start, _end, _xAxisType, _yAxisType, _zAxisType, xTtle, yTtle, zTtle) ; }
162
166 virtual void rebuild() ;
167
168 /*----------------------------------------------------------------------------*/
169
170
171 private:
172
173 static void initClass() ;
174 static void exitClass() ;
175
176 private:
177 // Methods
178 virtual SbBool setUpConnections(SbBool onOff, SbBool doItAlways = FALSE) ;
179 virtual void setDefaultOnNonWritingFields() ;
180
181 // Destructor
182 virtual ~PoGroup6Axis3() ;
183
184 private:
185 // Init method
186 void init(const SbVec3f &start, const SbVec3f &end, AxisType xAxisType,
187 AxisType yAxisType, AxisType zAxisType,
188 const char *xTtle = NULL, const char *yTtle = NULL,
189 const char *zTtle = NULL) ;
190
191 // Init axis
192 void initAxis(PoCartesianAxis *xDownAxis, PoCartesianAxis *xUpAxis,
193 PoCartesianAxis *yLeftAxis, PoCartesianAxis *yRightAxis,
194 PoCartesianAxis *zDownAxis, PoCartesianAxis *zUpAxis) ;
195
196 SoSFEnum xAxisType, yAxisType, zAxisType ;
197
198 // Sensors
199 FieldSensorList fieldSensorList ;
200
201 // List of fields defined in this class
202 SoFieldList fieldList ;
203
204} ;
205/*----------------------------------------------------------------------------*/
206
207#endif /* _PO_GROUP_6_AXIS_3_ */
208
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Base class for all axis ...
Definition PoBaseAxis.h:37
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Abstract class for carte...
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Class to build a group o...
SoSFString zTitle
Title of the Z axis.
SoSFVec3f end
End point of the cube.
virtual void rebuild()
Forces node-kit rebuilding.
SoSFVec3f gradStart
Defines the value of the graduation (tick label) corresponding to the starting point of this group of...
SoSFVec3f start
Start point of the cube.
AxisType
Type of axis.
@ LINEAR
Linear axis.
@ LOGARITHMIC
Logarithmic axis.
SoSFString yTitle
Title of the Y axis.
SoSFVec3f gradEnd
Defines the value of the graduation (tick label) corresponding to the end point of this group of axes...
PoGroup6Axis3(const SbVec3f &_start, const SbVec3f &_end, AxisType _xAxisType, AxisType _yAxisType, AxisType _zAxisType, const char *xTtle=NULL, const char *yTtle=NULL, const char *zTtle=NULL)
Constructor.
SoSFString xTitle
Title of the X axis.
PoGroup6Axis3()
Default constructor.
3D vector class.
Definition SbVec.h:932
Maintains a list of pointers to fields.
Definition SoFieldList.h:72
Field containing an enumerated value.
Definition SoSFEnum.h:89
Field containing a string.
Definition SoSFString.h:117
Field containing a three-dimensional vector.
Definition SoSFVec3f.h:80
int SbBool
Boolean type.
Definition SbBase.h:87