Open Inventor Release 2024.2.1
 
Loading...
Searching...
No Matches
PoGroup4Axis.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_4_AXIS_
25#define _PO_GROUP_4_AXIS_
26
27#include <Inventor/fields/SoSFEnum.h>
28#include <Inventor/fields/SoSFVec2f.h>
29#include <Inventor/fields/SoSFString.h>
30
31#include <MeshViz/graph/PoBaseAxis.h>
32
33class PoCartesianAxis ;
34
65class PoGroup4Axis : public PoBaseAxis {
66
67 SO_KIT_HEADER(PoGroup4Axis) ;
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
75
76 public:
77
91
92
93
94 /* Fields */
95
104
109
119
129
134
139
140
141
142 /* Methods */
143
148 { init(SbVec2f(0., 0.), SbVec2f(1., 1.), LINEAR, LINEAR, NULL, NULL) ; }
149
153 PoGroup4Axis(const SbVec2f &_start, const SbVec2f &_end, AxisType _xAxisType,
154 AxisType _yAxisType, const char *xTtle = NULL, const char *yTtle = NULL)
155 { init(_start, _end, _xAxisType, _yAxisType, xTtle, yTtle) ; }
156
160 virtual void rebuild() ;
161
162 /*----------------------------------------------------------------------------*/
163 private:
164
165 static void initClass() ;
166 static void exitClass() ;
167
168 private:
169 // Methods
170 virtual SbBool setUpConnections(SbBool onOff, SbBool doItAlways = FALSE) ;
171 virtual void setDefaultOnNonWritingFields() ;
172
173 // Destructor
174 virtual ~PoGroup4Axis() ;
175
176 private:
177 // Init method
178 void init(const SbVec2f &start, const SbVec2f &end, AxisType xAxisType,
179 AxisType yAxisType, const char *xTtle = NULL, const char *yTtle = NULL) ;
180
181 // Init axis
182 void initAxis(PoCartesianAxis *xDownAxis, PoCartesianAxis *xUpAxis,
183 PoCartesianAxis *yLeftAxis, PoCartesianAxis *yRightAxis) ;
184
185 SoSFEnum xAxisType, yAxisType ;
186
187 // Sensors
188 FieldSensorList fieldSensorList ;
189
190 // List of fields defined in this class
191 SoFieldList fieldList ;
192
193} ;
194/*----------------------------------------------------------------------------*/
195
196#endif /* _PO_GROUP_4_AXIS_ */
197
<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...
SoSFVec2f start
Start point of the bottom horizontal axis and of the left vertical axis.
SoSFVec2f end
End point of the top horizontal axis and of the right vertical axis.
AxisType
Type of axis.
@ LOGARITHMIC
Logarithmic axis.
@ LINEAR
Linear axis.
SoSFString xTitle
Title of the horizontal axes.
PoGroup4Axis()
Default constructor.
SoSFString yTitle
Title of the vertical axes.
SoSFVec2f gradStart
Defines the value of the graduation (tick label) corresponding to the starting point of this group of...
SoSFVec2f gradEnd
Defines the value of the graduation (tick label) corresponding to the end point of this group of axes...
PoGroup4Axis(const SbVec2f &_start, const SbVec2f &_end, AxisType _xAxisType, AxisType _yAxisType, const char *xTtle=NULL, const char *yTtle=NULL)
Constructor.
virtual void rebuild()
Forces node-kit rebuilding.
2D vector class.
Definition SbVec.h:76
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 two-dimensional vector.
Definition SoSFVec2f.h:78
int SbBool
Boolean type.
Definition SbBase.h:87