OpenCMISS-Zinc C++ API Documentation
Public Types | Public Member Functions | Friends | List of all members
OpenCMISS::Zinc::GraphicsStreamlines Class Reference

Streamlines visualise the path of a fluid particle tracking along a vector field. More...

#include <graphics.hpp>

Inheritance diagram for OpenCMISS::Zinc::GraphicsStreamlines:
OpenCMISS::Zinc::Graphics

Public Types

enum  ColourDataType { COLOUR_DATA_TYPE_INVALID = CMZN_GRAPHICS_STREAMLINES_COLOUR_DATA_TYPE_INVALID, COLOUR_DATA_TYPE_FIELD = CMZN_GRAPHICS_STREAMLINES_COLOUR_DATA_TYPE_FIELD, COLOUR_DATA_TYPE_MAGNITUDE = CMZN_GRAPHICS_STREAMLINES_COLOUR_DATA_TYPE_MAGNITUDE, COLOUR_DATA_TYPE_TRAVEL_TIME = CMZN_GRAPHICS_STREAMLINES_COLOUR_DATA_TYPE_TRAVEL_TIME }
 
enum  TrackDirection { TRACK_DIRECTION_INVALID = CMZN_GRAPHICS_STREAMLINES_TRACK_DIRECTION_INVALID, TRACK_DIRECTION_FORWARD = CMZN_GRAPHICS_STREAMLINES_TRACK_DIRECTION_FORWARD, TRACK_DIRECTION_REVERSE = CMZN_GRAPHICS_STREAMLINES_TRACK_DIRECTION_REVERSE }
 
- Public Types inherited from OpenCMISS::Zinc::Graphics
enum  RenderPolygonMode { RENDER_POLYGON_MODE_INVALID = CMZN_GRAPHICS_RENDER_POLYGON_MODE_INVALID, RENDER_POLYGON_MODE_SHADED = CMZN_GRAPHICS_RENDER_POLYGON_MODE_SHADED, RENDER_POLYGON_MODE_WIREFRAME = CMZN_GRAPHICS_RENDER_POLYGON_MODE_WIREFRAME }
 
enum  SelectMode {
  SELECT_MODE_INVALID = CMZN_GRAPHICS_SELECT_MODE_INVALID, SELECT_MODE_ON = CMZN_GRAPHICS_SELECT_MODE_ON, SELECT_MODE_OFF = CMZN_GRAPHICS_SELECT_MODE_OFF, SELECT_MODE_DRAW_SELECTED = CMZN_GRAPHICS_SELECT_MODE_DRAW_SELECTED,
  SELECT_MODE_DRAW_UNSELECTED = CMZN_GRAPHICS_SELECT_MODE_DRAW_UNSELECTED
}
 
enum  Type {
  TYPE_INVALID = CMZN_GRAPHICS_TYPE_INVALID, TYPE_POINTS = CMZN_GRAPHICS_TYPE_POINTS, TYPE_LINES = CMZN_GRAPHICS_TYPE_LINES, TYPE_SURFACES = CMZN_GRAPHICS_TYPE_SURFACES,
  TYPE_CONTOURS = CMZN_GRAPHICS_TYPE_CONTOURS, TYPE_STREAMLINES = CMZN_GRAPHICS_TYPE_STREAMLINES
}
 

Public Member Functions

 GraphicsStreamlines (cmzn_graphics_streamlines_id streamlines_id)
 
ColourDataType getColourDataType ()
 
int setColourDataType (ColourDataType dataType)
 
Field getStreamVectorField ()
 
int setStreamVectorField (const Field &field)
 
TrackDirection getTrackDirection ()
 
int setTrackDirection (TrackDirection trackDirection)
 
double getTrackLength ()
 
int setTrackLength (double length)
 
- Public Member Functions inherited from OpenCMISS::Zinc::Graphics
 Graphics (cmzn_graphics_id graphics_id)
 
 Graphics (const Graphics &graphics)
 
Graphicsoperator= (const Graphics &graphics)
 
bool isValid () const
 
cmzn_graphics_id getId () const
 
Field getCoordinateField ()
 
int setCoordinateField (const Field &coordinateField)
 
Field getDataField ()
 
int setDataField (const Field &dataField)
 
double getRenderLineWidth ()
 
int setRenderLineWidth (double width)
 
double getRenderPointSize ()
 
int setRenderPointSize (double size)
 
enum RenderPolygonMode getRenderPolygonMode ()
 
int setRenderPolygonMode (RenderPolygonMode renderPolygonMode)
 
Scene getScene ()
 
enum SelectMode getSelectMode ()
 
int setSelectMode (SelectMode selectMode)
 
Field getSubgroupField ()
 
int setSubgroupField (const Field &subgroupField)
 
Field getTextureCoordinateField ()
 
int setTextureCoordinateField (const Field &textureCoordinateField)
 
Material getMaterial ()
 
int setMaterial (const Material &material)
 
Graphicslineattributes getGraphicslineattributes ()
 
Graphicspointattributes getGraphicspointattributes ()
 
Graphicssamplingattributes getGraphicssamplingattributes ()
 
Material getSelectedMaterial ()
 
int setSelectedMaterial (const Material &material)
 
Spectrum getSpectrum ()
 
int setSpectrum (const Spectrum &spectrum)
 
enum Type getType ()
 
Tessellation getTessellation ()
 
int setTessellation (const Tessellation &tessellation)
 
Field getTessellationField ()
 
int setTessellationField (const Field &tessellationField)
 
bool getVisibilityFlag ()
 
int setVisibilityFlag (bool visibilityFlag)
 
enum Scenecoordinatesystem getScenecoordinatesystem ()
 
int setScenecoordinatesystem (Scenecoordinatesystem coordinateSystem)
 
Field::DomainType getFieldDomainType ()
 
int setFieldDomainType (Field::DomainType domainType)
 
char * getName ()
 
int setName (const char *name)
 
int setElementFaceType (Element::FaceType faceType)
 
Element::FaceType getElementFaceType ()
 
bool isExterior ()
 
int setExterior (bool exterior)
 
GraphicsContours castContours ()
 
GraphicsLines castLines ()
 
GraphicsPoints castPoints ()
 
GraphicsStreamlines castStreamlines ()
 
GraphicsSurfaces castSurfaces ()
 

Friends

class Scene
 

Additional Inherited Members

- Protected Attributes inherited from OpenCMISS::Zinc::Graphics
cmzn_graphics_id id
 

Detailed Description

Streamlines visualise the path of a fluid particle tracking along a vector field.

Streamlines visualise the path of a fluid particle tracking along a vector field. 2-D and 3-D mesh domains are supported. Seed points for streamlines are sampled from elements according to the graphics sampling attributes and tessellation. Streamlines are drawn as lines, scalable ribbons or extruded circles or squares, as specified by the graphics line attributes. The curl of the stream vector field, or fibre sheet and normal, are visualised by the rotation or lateral orientation of the streamline when viewed with non-line shapes.

See also
Graphicssamplingattributes
Graphicslineattributes

Member Enumeration Documentation

Streamlines graphics algorithm specific methods for colouring by data.

Enumerator
COLOUR_DATA_TYPE_INVALID 

Invalid streamlines colour data type

COLOUR_DATA_TYPE_FIELD 

Default: use the generic graphics data field, or no colouring if none

COLOUR_DATA_TYPE_MAGNITUDE 

Use the magnitude of the stream vector field. More efficient than using a separate magnitude field since already computed in algorithm.

COLOUR_DATA_TYPE_TRAVEL_TIME 

Integrate time along the streamline to show how long it took to reach a point and how long each bit takes. Negated for reverse track direction

Enumeration giving the direction streamlines are tracked relative to the stream vector field.

See also
GraphicsStreamlines::setStreamVectorField
Enumerator
TRACK_DIRECTION_INVALID 

Unspecified track direction

TRACK_DIRECTION_FORWARD 

following stream_vector_field

TRACK_DIRECTION_REVERSE 

the reverse of stream_vector_field is tracked

Member Function Documentation

ColourDataType OpenCMISS::Zinc::GraphicsStreamlines::getColourDataType ( )
inline

Gets the type of data visualised with spectrum colour on the streamlines.

Returns
The current data type for colouring, or DATA_TYPE_INVALID on error.
Field OpenCMISS::Zinc::GraphicsStreamlines::getStreamVectorField ( )
inline

Gets the vector field the streamline is tracking along.

Returns
Handle to stream vector field, or NULL/invalid handle if none or failed.
TrackDirection OpenCMISS::Zinc::GraphicsStreamlines::getTrackDirection ( )
inline

Gets the direction in which streamlines are tracked.

Returns
The current tracking direction, or CMZN_GRAPHICS_STREAMLINES_TRACK_DIRECTION_INVALID on error.
double OpenCMISS::Zinc::GraphicsStreamlines::getTrackLength ( )
inline

Gets the maximum length of time streamlines are tracked along.

Returns
The track length/time, or 0.0 if invalid streamlines graphics.
int OpenCMISS::Zinc::GraphicsStreamlines::setColourDataType ( ColourDataType  dataType)
inline

Sets the type of data visualised with spectrum colour on the streamlines, including algorithm-specific types such as TRAVEL_TIME, as well as colouring by the generic graphics data field. Spectrum must be set for any colouring.

See also
GraphicsStreamlines::ColourDataType
Returns
Status OpenCMISS::Zinc::OK on success, otherwise OpenCMISS::Zinc::ERROR_ARGUMENT.
int OpenCMISS::Zinc::GraphicsStreamlines::setStreamVectorField ( const Field field)
inline

Sets the vector field to track the streamline along. For a 3-D domain with a 3-D coordinate field, can have 3, 6 or 9 components; extra components set the lateral axes for extruded profiles. For a 2-D domain the stream vector may have 2 components.

Parameters
fieldThe field to track the streamline along.
Returns
Status OpenCMISS::Zinc::OK on success, otherwise OpenCMISS::Zinc::ERROR_ARGUMENT.
int OpenCMISS::Zinc::GraphicsStreamlines::setTrackDirection ( TrackDirection  trackDirection)
inline

Sets the direction in which streamlines are tracked relative to the stream vector field.

See also
GraphicsStreamlines::TrackDirection
Parameters
trackDirectionThe new tracking direction.
Returns
Status OpenCMISS::Zinc::OK on success, otherwise OpenCMISS::Zinc::ERROR_ARGUMENT.
int OpenCMISS::Zinc::GraphicsStreamlines::setTrackLength ( double  length)
inline

Sets the maximum length of time to track streamlines along. Default value is 1.0; generally need to adjust this for time scale of model as streamlines can be slow to evaluate.

Parameters
lengthThe maximum length of time to track streamlines along >= 0.
Returns
Status OpenCMISS::Zinc::OK on success, otherwise OpenCMISS::Zinc::ERROR_ARGUMENT.

The documentation for this class was generated from the following file: