Open Inventor Release 2024.2.0
 
Loading...
Searching...
No Matches
PoGroup3Axis3.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_3_AXIS_3_
25#define _PO_GROUP_3_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
67class PoGroup3Axis3 : public PoBaseAxis {
68
69 SO_KIT_HEADER(PoGroup3Axis3) ;
70
71 /* Define fields for new parts */
72 SO_KIT_CATALOG_ENTRY_HEADER(xAxis) ;
73 SO_KIT_CATALOG_ENTRY_HEADER(yAxis) ;
74 SO_KIT_CATALOG_ENTRY_HEADER(zAxis) ;
75
76
77 public:
78
92
98
99
100
105
110
120
130
135
140
145
150
151
152
153 /* Methods */
154
159 { init(SbVec3f(0., 0., 0.), SbVec3f(1., 1., 1.), LINEAR, LINEAR, LINEAR,
160 Z_AXIS, NULL, NULL, NULL) ; }
161
165 PoGroup3Axis3(const SbVec3f &_start, const SbVec3f &_end, AxisType _xAxisType,
166 AxisType _yAxisType, AxisType _zAxisType, AxisName vertAxis = Z_AXIS,
167 const char *xTtle = NULL, const char *yTtle = NULL,
168 const char *zTtle = NULL)
169 { init(_start, _end, _xAxisType, _yAxisType, _zAxisType, vertAxis, xTtle, yTtle, zTtle) ; }
170
174 virtual void rebuild() ;
175
176 /*----------------------------------------------------------------------------*/
177 private:
178
179 static void initClass() ;
180 static void exitClass() ;
181
182 private:
183 // Methods
184 virtual SbBool setUpConnections(SbBool onOff, SbBool doItAlways = FALSE) ;
185 virtual void setDefaultOnNonWritingFields() ;
186
187 // Destructor
188 virtual ~PoGroup3Axis3() ;
189
190 private:
191 // Init method
192 void init(const SbVec3f &start, const SbVec3f &end, AxisType xAxisType,
193 AxisType yAxisType, AxisType zAxisType, AxisName vertAxis = Z_AXIS,
194 const char *xTtle = NULL, const char *yTtle = NULL,
195 const char *zTtle = NULL) ;
196
197 // Init axis
198 void initAxis(PoCartesianAxis *xaxis, PoCartesianAxis *yaxis,
199 PoCartesianAxis *zaxis, AxisName vertAxis) ;
200
201 SoSFEnum xAxisType, yAxisType, zAxisType ;
202
203 // Sensors
204 FieldSensorList fieldSensorList ;
205
206 // List of fields defined in this class
207 SoFieldList fieldList ;
208
209} ;
210/*----------------------------------------------------------------------------*/
211
212#endif /* _PO_GROUP_3_AXIS_3_ */
213
<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 yTitle
Title of the Y axis.
SoSFString zTitle
Title of the Z axis.
SoSFVec3f end
End coordinates of respectively the X, Y and Z axis.
PoGroup3Axis3()
Default constructor.
AxisType
Type of axis.
@ LINEAR
Linear axis.
@ LOGARITHMIC
Logarithmic axis.
SoSFString xTitle
Title of the X axis.
virtual void rebuild()
Forces node-kit rebuilding.
SoSFVec3f start
Start point of the three axes.
SoSFVec3f gradEnd
Defines the value of the graduation (tick label) corresponding to the end point of this group of axes...
SoSFVec3f gradStart
Defines the value of the graduation (tick label) corresponding to the starting point of this group of...
SoSFEnum verticalAxisName
Name of the vertical axis.
PoGroup3Axis3(const SbVec3f &_start, const SbVec3f &_end, AxisType _xAxisType, AxisType _yAxisType, AxisType _zAxisType, AxisName vertAxis=Z_AXIS, const char *xTtle=NULL, const char *yTtle=NULL, const char *zTtle=NULL)
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