28#include <Inventor/fields/SoSFEnum.h>
29#include <Inventor/fields/SoSFFloat.h>
30#include <Inventor/fields/SoMFUShort.h>
31#include <Inventor/fields/SoSFString.h>
34#include <MeshViz/graph/PoCartesianAxis.h>
115 SO_KIT_CATALOG_ENTRY_HEADER(multFactorSep) ;
116 SO_KIT_CATALOG_ENTRY_HEADER(multFactorApp) ;
117 SO_KIT_CATALOG_ENTRY_HEADER(multFactor) ;
119 SO_KIT_CATALOG_ENTRY_HEADER(decadeTextSep) ;
120 SO_KIT_CATALOG_ENTRY_HEADER(decadeTextApp) ;
121 SO_KIT_CATALOG_ENTRY_HEADER(decadeText) ;
294 { init(TRUE,
SbVec3f(0.,0.,0.), 1,
XY,
DECADE_LIST_AUTO, NULL, 0, 0.0,0.0) ; }
302 const unsigned short *_decadeList = NULL,
short _numDecade = 0)
303 { init(FALSE, _start, _end, _type, _decadeListDef, _decadeList, _numDecade, 0.0,0.0) ; }
311 float _gradStart,
float _gradEnd,
313 const unsigned short *_decadeList = NULL,
short _numDecade = 0)
314 { init(FALSE, _start, _end, _type, _decadeListDef, _decadeList, _numDecade, _gradStart, _gradEnd) ; }
343 static void initClass() ;
344 static void exitClass() ;
362 MultFactor multFactor ;
368 double firstAxisCoord;
369 double lastAxisCoord;
377 virtual void setDefaultOnNonWritingFields() ;
380 virtual void saveAxisAttr() ;
388 short numDecade,
float _gradStart,
float _gradEnd) ;
390 void getLogGrads(
float firstVal,
float lastVal,
float &stepValue,
float &firstMainValue,
size_t &numMainGrad);
398 double getGradCoord(
double gradValue)
const;
402 double getGradValue(
double coord)
const;
406 void buildLogGrad(std::vector<float> &mainGradX, std::vector<SecondaryLogGrad> &subGraduations,
410 void computeLogGradFontSize(
size_t numMainGrad,
float stepValue,
const char **main_str,
411 const char **main_ten_pow_str,
size_t numSecdGrad,
412 const char **secd_str,
const char **secd_ten_pow_str,
413 float min_grad_dist,
SbBool main_grad_pres_auto,
414 float &main_font_size,
float &secd_font_size) ;
417 LogAxisAttr logAxisAttr ;
420 FieldSensorList fieldSensorList ;
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Abstract class for carte...
SoSFVec3f start
Defines the start of the axis.
Type
Type of axis orientation.
@ XY
X-Axis in the plane XY.
SoSFFloat end
Defines the end of the axis.
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Class to build a logarit...
SoSFEnum multFactorPosition
Position of the multiplicative factor.
SoSFEnum tenPowerRep
Defines the representation of power of ten graduations.
SoSFEnum decadeListDef
Specifies if the list of decade graduations is given by the user or is automatically computed.
MultFactorPosition
Type of position of the multiplicative factor.
@ MULT_FACTOR_START
The multiplicative factor is at the start of the axis.
@ MULT_FACTOR_EXTR
The multiplicative factor is at the start and at the end of the axis.
@ MULT_FACTOR_GRAD
The multiplicative factor is at the graduations of the axis.
@ MULT_FACTOR_END
The multiplicative factor is at the end of the axis.
PoLogAxis(const SbVec3f &_start, float _end, PoCartesianAxis::Type _type, DecadeListDef _decadeListDef=DECADE_LIST_AUTO, const unsigned short *_decadeList=NULL, short _numDecade=0)
Constructor.
SoSFFloat multFactorDistAxis
Distance from the multiplicative factor to the axis.
DecadeRep
Type of presentation of the axis decades.
@ DECADE_DECIMAL
Decade graduations are displayed in decimals.
@ DECADE_NONE
No decade graduations are displayed.
@ DECADE_DIGIT
Decade graduations are displayed using a digit from 2 to 9
@ DECADE_AUTO
giving the multiple of the power of ten.
@ DECADE_AS_TEN_POWER
Decade graduations are displayed as power of ten graduations.
SoMFUShort decadeList
List of graduations between two power of ten graduations (decade graduations).
SoSFString decadeFontName
Decade font name.
SoSFUShort maxGradNum
Maximum number of logarithmic graduations displayed.
TenPowGradRep
Type of presentation of the power of ten.
@ TEN_POWER_POW10
The graduations are specified in powers of ten.
@ TEN_POWER_AUTO
The graduations are specified in powers of ten or in decimals,.
@ TEN_POWER_DECIMAL
The graduations are specified in decimals.
void getMultFactor(MultFactorPosition &position, float &distAxis) const
Returns the current multiplicative factor attributes (those computed can be different from the associ...
DecadeListDef
Decade list computed automatically or given by the user.
@ DECADE_LIST_NON_AUTO
The list of decade graduations is given by the user.
@ DECADE_LIST_AUTO
The list of decade graduations is automatically computed.
SoSFFloat decadeFontSize
Decade graduations font size.
SoSFEnum decadeRep
Defines the representation of the decade graduations between two power of ten graduations.
void getLogGrad(unsigned short &numDecade, unsigned short decadeList[8], TenPowGradRep &tenPowerRep, DecadeRep &decadeRep, SbString &decadeFontName, float &decadeFontSize) const
Returns the current logarithmic graduations attributes (those computed can be different from the asso...
PoLogAxis(const SbVec3f &_start, float _end, PoCartesianAxis::Type _type, float _gradStart, float _gradEnd, DecadeListDef _decadeListDef=DECADE_LIST_AUTO, const unsigned short *_decadeList=NULL, short _numDecade=0)
Constructor.
virtual void rebuild()
Forces node-kit rebuilding.
Class for smart character strings.
Maintains a list of pointers to fields.
Base class for all group nodes.
Multiple-value field containing any number of unsigned short integers.
Field containing an enumerated value.
Field containing a floating-point value.
Field containing a string.
Field containing an unsigned short integer.