29#include <MeshViz/graph/PiNumericFormat.h>
30#include <MeshViz/graph/PiDate.h>
419 PoTimeAxis(
const char *_startDate,
const char *_endDate,
float _coord,
421 {
init(
FALSE, _startDate, _endDate, _coord, _type) ; }
447 static void initClass() ;
448 static void exitClass() ;
450 enum Tdate_elem_form {
473 Tdate_elem_form form;
478 struct Tdate_axis_level_rep {
484 Tdate_elem *date_elems;
487 struct Tdate_axis_rep {
489 Tdate_axis_level_rep *level_rep;
492 struct Tdate_interv {
504 struct TimeAxisAttr {
508 PiNumericFormat numericFormat ;
513 Tdate_axis_rep *date_axis_rep ;
520 virtual void setDefaultOnNonWritingFields() ;
523 virtual void basicObjectChange(
PbBase *basicObj) ;
526 virtual void saveAxisAttr() ;
529 virtual void preRebuild() ;
530 virtual void addElementsAllCaches() ;
539 float &deltaX,
float &deltaY) ;
542 void getDateAxisRep(
const PiDate &date_min,
const PiDate &date_max,
543 Tdate_axis_rep &date_rep) ;
546 static void copyDateRep(Tdate_axis_rep &dst_date_rep,
547 const Tdate_axis_rep &src_date_rep) ;
550 static void initDateStepOfLevel0(Tdate_axis_rep &date_rep,
const PiDate &date_delta) ;
553 static void initDateElem(Tdate_axis_level_rep &level_rep) ;
556 static void initDateNumStep(Tdate_axis_level_rep &level_rep,
const PiDate &date_delta) ;
559 static void freeDateAxisRep(Tdate_axis_rep &axis_rep) ;
562 static void freeDateAxisRepList(
int num_axis_rep, Tdate_axis_rep *axis_rep_list) ;
565 void initAutoRep(
const PiDate &date_delta, Tdate_axis_rep &date_rep) ;
568 void chooseBestDateRep(
int num_rep,
const Tdate_axis_rep *rep,
569 const PiDate &date_delta, Tdate_axis_rep &date_rep) ;
572 void getGradList(
const PiDate &date_1,
const PiDate &date_2,
574 const Tdate_axis_level_rep &level_rep,
575 int &num_gradu,
char ***gradu_string_list,
576 std::vector<float>& x_gradu_list) ;
579 void getFirstDateGrad(
const PiDate &date_1,
const PiDate &date_2,
580 Tdate_step step,
float float_step,
GradFit
581 grad_fit, PiDate &date_ref) ;
584 void getStringDate(
const PiDate &date,
int form_prefixe,
585 Tdate_elem_form form,
char *string_date) ;
588 void buildDateGrads(
const PiDate &date_1,
const PiDate &date_2,
589 const Tdate_axis_rep &date_rep,
SoGroup *group) ;
593 void setDateAxisRep() ;
596 static void parseDateList(
char *form, Tdate_list *dl,
int *err_ind) ;
597 static void parseDateListNewDate(
double num_units,
int units) ;
598 static Tdate_list *date_list ;
603 static void parseAxisRep(
char *form,
int n_l, Tdate_axis_rep *da_rep,
605 static void parseAxisRepNewLevel(
double num_step,
int step,
char *append_str) ;
606 static void parseAxisRepAddToLevel(
int form_prefixe,
int form,
char *append_str) ;
607 static Tdate_axis_rep *date_axis_rep ;
612 TimeAxisAttr timeAxisAttr ;
618 FieldSensorList fieldSensorList ;
#define TRUE
Possible value of SbBool.
#define FALSE
Possible value of SbBool.
#define SO_KIT_HEADER(className)
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Abstract class for all b...
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Abstract class for axis ...
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Class to build a time ax...
virtual void rebuild()
Forces node-kit rebuilding.
@ GRAD_UNFIT
The first graduation is not in round figures.
@ GRAD_FIT
The first graduation is in round figures.
friend int tpaxparse(void)
SoSFEnum gradFit
This flag indicates if the first graduation is in round figures or not.
friend int tpdlparse(void)
PoTimeAxis(const char *_startDate, const char *_endDate, float _coord, Type _type=X)
Constructor.
SoSFString startDate
Start date of the axis.
const PbDateFormatMapping * getDateFormatMapping() const
Gets a reference to a PbDateFormatMapping object for the input date format and for the association da...
SoSFString timesPeriod
String containing gradRep.getNum() -1 sub-strings.
SoSFEnum language
Language of date graduations.
Language
Language used for date.
@ ESPANOL
The date graduations are displayed in Spanish.
@ DEUTSCH
The date graduation are displayed in German.
@ ENGLISH
The date graduations are displayed in English.
@ FRANCAIS
The date graduations are displayed in French.
@ Y
The time axis is a Y-axis.
@ X
The time axis is a X-axis.
SoSFString endDate
End date of the axis.
SoMFString gradRep
List of date representation.
void setDateFormatMapping(PbDateFormatMapping *formatMapping)
Sets a reference to a PbDateFormatMapping object for the input date format and for the association da...
SoSFFloat coord
Abscissa or ordinate of the axis according to the axis type.
Maintains a list of pointers to fields.
Base class for all group nodes.
Multiple-value field containing any number of strings.
Field containing an enumerated value.
Field containing a floating-point value.
Field containing a string.