openmbvcppinterface 3.1.0 OpenMBV C++ Interface

Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
OpenMBV::Arrow Class Reference

`#include <arrow.h>`

Inheritance diagram for OpenMBV::Arrow:
[legend]

## Public Types

enum | Type { line, fromHead, toHead, bothHeads, fromDoubleHead, toDoubleHead, bothDoubleHeads }
enum | ReferencePoint { toPoint, fromPoint, midPoint }
Public Types inherited from OpenMBV::Body
enum | DrawStyle { filled, lines, points }

## Public Member Functions

void | setPath (bool p)
bool | getPath ()
template<typename T >
void | append (const T &row)
int | getRows () override
std::vector< double > | getRow (int i) override
void | setArrowHead (double diameter, double length)
void | setHeadDiameter (double diameter)
double | getHeadDiameter ()
void | setHeadLength (double length)
double | getHeadLength ()
void | setDiameter (double diameter_)
double | getDiameter ()
void | setType (Type type_)
Type | getType ()
void | setReferencePoint (ReferencePoint referencePoint_)
ReferencePoint | getReferencePoint ()
void | setScaleLength (double scale)
double | getScaleLength ()
void | initializeUsingXML (xercesc::DOMElement *element) override
xercesc::DOMElement * | writeXMLFile (xercesc::DOMNode *parent) override
Public Member Functions inherited from OpenMBV::DynamicColoredBody
void | setMinimalColorValue (double min)
double | getMinimalColorValue ()
void | setMaximalColorValue (double max)
double | getMaximalColorValue ()
void | setDynamicColor (const double col)
double | getDynamicColor ()
void | setDiffuseColor (const std::vector< double > &hsv)
void | setDiffuseColor (double h, double s, double v)
std::vector< double > | getDiffuseColor ()
void | setTransparency (double t)
double | getTransparency ()
void | initializeUsingXML (xercesc::DOMElement *element) override
xercesc::DOMElement * | writeXMLFile (xercesc::DOMNode *parent) override
Public Member Functions inherited from OpenMBV::Body
void | setOutLine (bool ol)
bool | getOutLine ()
void | setShilouetteEdge (bool ol)
bool | getShilouetteEdge ()
void | setDrawMethod (DrawStyle ds)
DrawStyle | getDrawMethod ()
void | setPointSize (double ps)
double | getPointSize ()
void | setLineWidth (double lw)
double | getLineWidth ()
Public Member Functions inherited from OpenMBV::Object
void | setEnable (bool enable)
bool | getEnable ()
void | setBoundingBox (bool bbox)
bool | getBoundingBox ()
void | setName (const std::string &name_)
std::string | getName ()
virtual std::string | getFullName ()
void | setEnvironment (bool env)
bool | getEnvironment ()
std::shared_ptr< Group > | getTopLevelGroup ()
std::weak_ptr< Group > | getParent ()
H5::GroupBase * | getHDF5Group ()
std::string | getID () const
void | setID (std::string ID_)

## Protected Member Functions

void | createHDF5File () override
void | openHDF5File () override
Protected Member Functions inherited from OpenMBV::Body
void | createHDF5File () override
void | openHDF5File () override

## Protected Attributes

std::string | pathStr
H5::VectorSerie< double > * | data {nullptr}
double | headDiameter {0.5}
double | headLength {0.75}
double | diameter {0.25}
double | scaleLength {1}
Type | type {toHead}
ReferencePoint | referencePoint {toPoint}
Protected Attributes inherited from OpenMBV::DynamicColoredBody
double | minimalColorValue {0}
double | maximalColorValue {1}
double | dynamicColor
std::vector< double > | diffuseColor
double | transparency {0}
Protected Attributes inherited from OpenMBV::Body
std::string | outLineStr
std::string | shilouetteEdgeStr
DrawStyle | drawMethod {filled}
double | pointSize {0}
double | lineWidth {0}
Protected Attributes inherited from OpenMBV::Object
std::string | name
std::string | enableStr
std::string | boundingBoxStr
std::string | ID
std::string | environmentStr
std::weak_ptr< Group > | parent
H5::GroupBase * | hdf5Group {nullptr}
std::string | fullName

## Friends

class | ObjectFactory

## Detailed Description

A arrow with zero, one or two heads

HDF5-Dataset: The HDF5 dataset of this object is a 2D array of double precision values. Each row represents one dataset in time. A row consists of the following columns in order given in world frame: time, "to" point x, "to" point y, "to" point z, delta x, delta y, delta z, color

## Member Function Documentation

## ◆ append()

template<typename T >

void OpenMBV::Arrow::append | ( | const T & | row | ) |

inline

Append the data `row` to the end of the dataset

## ◆ getRow()

std::vector<double> OpenMBV::Arrow::getRow | ( | int | i | ) |

inline override virtual

Get row number i of the default data. NOTE: see also append()

Implements OpenMBV::Body.

## ◆ getRows()

int OpenMBV::Arrow::getRows | ( |  | ) |

inline override virtual

Get the number of rows of the default data. Returns 0, if no default data is avaliable. NOTE: see also append()

Implements OpenMBV::Body.

## ◆ initializeUsingXML()

void OpenMBV::Arrow::initializeUsingXML | ( | xercesc::DOMElement * | element | ) |

override virtual

Initializes the time invariant part of the object using a XML node

Reimplemented from OpenMBV::Object.

## ◆ setArrowHead()

void OpenMBV::Arrow::setArrowHead | ( | double | diameter,
|  | double | length
| ) |  |

inline

Convenience; see setHeadDiameter and setHeadLength

## ◆ setDiameter()

void OpenMBV::Arrow::setDiameter | ( | double | diameter_ | ) |

inline

Set the diameter of the arrow (which is a cylinder)

## ◆ setHeadDiameter()

void OpenMBV::Arrow::setHeadDiameter | ( | double | diameter | ) |

inline

Set the diameter of the arrow head (which is a cone)

## ◆ setHeadLength()

void OpenMBV::Arrow::setHeadLength | ( | double | length | ) |

inline

Set the length of the arrow head (which is a cone)

## ◆ setPath()

void OpenMBV::Arrow::setPath | ( | bool | p | ) |

inline

Draw path of this object in the viewer if true (the default)

## ◆ setReferencePoint()

void OpenMBV::Arrow::setReferencePoint | ( | ReferencePoint | referencePoint_ | ) |

inline

Set the reference point of the arrow. The reference point is the point being stored in the HDF5 file. Use "toPoint" (the default) if the 'to' point is store in the HDF5 file; Use "fromPoint" if the 'from' point is store in the HDF5 file; Use "midPoint" if the 'mid' point is store in the HDF5 file;

## ◆ setScaleLength()

void OpenMBV::Arrow::setScaleLength | ( | double | scale | ) |

inline

Scale the length of the arrow

## ◆ setType()

void OpenMBV::Arrow::setType | ( | Type | type_ | ) |

inline

Set the type of the arrow. Use "line" to draw the arrow as a simple line; Use "fromHead" to draw the arrow with a head at the 'from' point; Use "toHead" to draw the arrow with a head at the 'to' point; Use "bothHeads" to draw the arrow with a head at the 'from' and 'to' point; Use "fromDoubleHead" to draw the arrow with a double head at the 'from' point; Use "toDoubleHead" to draw the arrow with a double head at the 'to' point; Use "bothDoubleHeads" to draw the arrow with a double head at the 'from' and 'to' point;

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

- /mbsim-env/openmbv/openmbvcppinterface/openmbvcppinterface/arrow.h
- /mbsim-env/openmbv/openmbvcppinterface/openmbvcppinterface/arrow.cc