20 #ifndef _OPENMBV_ARROW_H_
21 #define _OPENMBV_ARROW_H_
23 #include <openmbvcppinterface/dynamiccoloredbody.h>
24 #include <hdf5serie/vectorserie.h>
57 void createHDF5File();
60 double headDiameter, headLength, diameter, scaleLength;
62 ReferencePoint referencePoint;
71 void setPath(
bool p) { pathStr=(p==
true)?
"true":
"false"; }
73 bool getPath() {
return pathStr==
"true"?
true:
false; }
78 if(data==0)
throw std::runtime_error(
"can not append data to an environment object");
79 if(row.size()!=8)
throw std::runtime_error(
"the dimension does not match");
80 if(!std::isnan(dynamicColor))
82 std::vector<double> tmprow(8);
83 std::copy(&row[0], &row[8], tmprow.begin());
84 tmprow[7]=dynamicColor;
92 std::vector<double>
getRow(
int i) {
return data?data->
getRow(i):std::vector<double>(8); }
96 headDiameter=diameter;
102 headDiameter=diameter;
105 double getHeadDiameter() {
return headDiameter; }
112 double getHeadLength() {
return headLength; }
119 double getDiameter() {
return diameter; }
134 Type getType() {
return type; }
143 referencePoint=referencePoint_;
146 ReferencePoint getReferencePoint() {
return referencePoint; }
153 double getScaleLength() {
return scaleLength; }
158 xercesc::DOMElement *writeXMLFile(xercesc::DOMNode *parent);
void setHeadLength(double length)
Definition: arrow.h:108
virtual void initializeUsingXML(xercesc::DOMElement *element)
Definition: arrow.cc:105
void append(const T &row)
Definition: arrow.h:77
Definition: objectfactory.h:40
void setReferencePoint(ReferencePoint referencePoint_)
Definition: arrow.h:142
void setScaleLength(double scale)
Definition: arrow.h:149
void setHeadDiameter(double diameter)
Definition: arrow.h:101
void setDiameter(double diameter_)
Definition: arrow.h:115
Definition: dynamiccoloredbody.h:28
void setArrowHead(double diameter, double length)
Definition: arrow.h:95
void setType(Type type_)
Definition: arrow.h:130
std::vector< double > getRow(int i)
Definition: arrow.h:92
int getRows()
Definition: arrow.h:91
void setPath(bool p)
Definition: arrow.h:71
void getRow(const int row, size_t size, T data[])
void append(const T data[], size_t size)
std::string getClassName()
Definition: arrow.h:68