27#include <Inventor/SbLinear.h>
28#include <MeshViz/3Ddata/PoMesh2D.h>
102 SO_KIT_CATALOG_ENTRY_HEADER(bodySep);
103 SO_KIT_CATALOG_ENTRY_HEADER(bodyApp);
104 SO_KIT_CATALOG_ENTRY_HEADER(bodyGroup);
106 SO_KIT_CATALOG_ENTRY_HEADER(startArrowSep);
107 SO_KIT_CATALOG_ENTRY_HEADER(startArrowApp);
108 SO_KIT_CATALOG_ENTRY_HEADER(startArrowGroup);
110 SO_KIT_CATALOG_ENTRY_HEADER(endArrowSep);
111 SO_KIT_CATALOG_ENTRY_HEADER(endArrowApp);
112 SO_KIT_CATALOG_ENTRY_HEADER(endArrowGroup);
392 static void initClass() ;
393 static void exitClass() ;
407 virtual void setDefaultOnNonWritingFields();
408 virtual void addElementsAllCaches() ;
409 virtual void preRebuild();
412 void startVectorField();
413 void finishVectorField();
415 SoGroup *m_bodyGroupNode, *m_startArrowGroupNode, *m_endArrowGroupNode;
418 const float *m_scalarDataSet;
419 int m_vecIndexToDraw, m_vecIndex;
421 int m_allocVecPoints, m_allocModuleColr, m_allocScalarColr,
422 m_allocModuleTransparencies, m_allocScalarTransparencies,
424 float (*m_vecPoints)[3];
425 float (*m_moduleColr)[3];
426 float (*m_scalarColr)[3];
427 float *m_moduleTransparencies, *m_scalarTransparencies;
432 void drawVectorLine(
int nod_index);
434 void drawVectorLineScalarColr(
int nod_index);
435 void drawVectorLineScalarTranspColr(
int nod_index);
437 void drawVectorLineModuleColr(
int nod_index);
438 void drawVectorLineModuleTranspColr(
int nod_index);
440 void drawVectorLineScalarModuleColr(
int nod_index);
441 void drawVectorLineScalarModuleTranspColr(
int nod_index);
443 void drawVectorElaborated(
int nod_index);
445 void finishQuickVectorField();
446 void finishElaboratedVectorField();
447 void buildVectorFieldBodies();
448 void buildVectorFieldStartArrow();
449 void buildVectorFieldEndArrow();
455 FieldSensorList m_fieldSensorList ;
461 float m_vecLength, m_arrowLength;
463 ArrowColoringType m_bodyColoringType, m_startArrowColoringType, m_endArrowColoringType;
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Defines a cartesian grid...
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Defines an abstract grid...
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Defines a surface mesh o...
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Defines an abstract surf...
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Defines a parallel carte...
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Defines a polar grid sur...
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Defines a regular cartes...
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Base class for all surfa...
<a href="IconLegend.html"><img src="extMV.gif" alt="MeshViz" border="0"></a> Representation of vector...
SoSFEnum endArrowShape
Type of shape to be drawn at the end point of the body.
SoSFEnum startArrowShape
Type of shape to be drawn at the start point of the body.
SoSFEnum startArrowColoringType
Coloring method of the start shape.
SoSFFloat endArrowRadiusFactor
The end-arrow's radius is end-arrow's height * endArrowRadiusFactor.
virtual void rebuild()
Forces node-kit rebuilding.
SoSFEnum bodyRadiusType
Defines type of method to compute the cylinder's radius.
SoSFEnum eliminationStatus
If eliminationStatus = TOO_SMALL, the vectors which module is lower than minLength are not drawn.
BodyLengthType
Type of body lenght.
SoSFFloat startArrowHeightFactor
Height (or Height multiplicative factor) of the arrow shape.
ArrowColoringType
Type of arrow coloring.
SoSFEnum endArrowHeightType
Defines the type of method to compute the arrow height.
SoSFFloat endArrowHeightFactor
Height (or Height multiplicative factor) of the arrow shape.
EliminationStatus
Type of vector elimination.
ArrowShape
Type of arrow shape.
SoSFEnum startArrowHeightType
Defines the type of method to compute the arrow height.
SoSFEnum endArrowColoringType
Coloring method of the end shape.
SoSFFloat bodyLengthFactor
Length (or length multiplicative factor) of the body shape.
BodyRadiusType
Type of body radius.
ArrowHeightType
Type of height of an arrow.
PoMesh2DVec()
Constructor.
SoSFInt32 density
Vector field density filter.
SoSFEnum bodyColoringType
coloring method of the body.
SoSFEnum bodyShape
Type of shape (no body, line, cylinder) used to draw the body.
SoSFFloat bodyRadiusFactor
Radius (or radius multiplicative factor) of the cylinder.
SoSFFloat startArrowRadiusFactor
The start-arrow's radius is start-arrow's height * startArrowRadiusFactor.
SoSFFloat minLength
Minimum length of the vector to be drawn.
SoSFEnum bodyLengthType
If bodyLengthType = CONSTANT_LENGTH, each vector has the same body length = bodyLengthFactor .
BodyShape
Type of body shape.
SoSFFloat maxLength
Maximum length of the vector to be drawn.
Maintains a list of pointers to fields.
Base class for all group nodes.
Field containing an enumerated value.
Field containing a floating-point value.
Field containing a int32_t integer.