20 #ifndef _OPENMBV_UTILS_H_
21 #define _OPENMBV_UTILS_H_
23 #include <fmatvec/fmatvec.h>
24 #include <openmbvcppinterface/arrow.h>
25 #include <openmbvcppinterface/frame.h>
26 #include <openmbvcppinterface/sphere.h>
27 #include <openmbvcppinterface/cuboid.h>
28 #include <openmbvcppinterface/frustum.h>
29 #include <openmbvcppinterface/extrusion.h>
30 #include <openmbvcppinterface/coilspring.h>
31 #include <openmbvcppinterface/indexedfaceset.h>
40 void initializeObject(
const std::shared_ptr<OpenMBV::Body> &
object);
41 void initializeUsingXML(xercesc::DOMElement *element);
50 void initializeObject(
const std::shared_ptr<OpenMBV::DynamicColoredBody> &
object);
51 void initializeUsingXML(xercesc::DOMElement *element);
56 OpenMBV::Arrow::Type type;
57 OpenMBV::Arrow::ReferencePoint refPoint;
60 OpenMBVArrow(
const fmatvec::Vec3 &dc=
"[-1;1;1]",
double tp=0,
const OpenMBV::Arrow::Type &type_=OpenMBV::Arrow::toHead,
const OpenMBV::Arrow::ReferencePoint &refPoint_=OpenMBV::Arrow::fromPoint,
double sL_=1,
double sS_=1,
double minCol_=0,
double maxCol_=1) :
OpenMBVDynamicColoredBody(dc,tp), type(type_), refPoint(refPoint_), sL(sL_), sS(sS_) { }
61 void initializeUsingXML(xercesc::DOMElement *element);
62 void initializeObject(
const std::shared_ptr<OpenMBV::Arrow> &
object);
63 std::shared_ptr<OpenMBV::Arrow> createOpenMBV(xercesc::DOMElement* e=0);
71 void initializeUsingXML(xercesc::DOMElement *element);
72 void initializeObject(
const std::shared_ptr<OpenMBV::Frame> &
object);
73 std::shared_ptr<OpenMBV::Frame> createOpenMBV(xercesc::DOMElement* e=0);
82 void initializeUsingXML(xercesc::DOMElement *element);
83 void initializeObject(
const std::shared_ptr<OpenMBV::Sphere> &
object);
84 std::shared_ptr<OpenMBV::Sphere> createOpenMBV(xercesc::DOMElement* e=0);
92 void initializeUsingXML(xercesc::DOMElement *element);
93 void initializeObject(
const std::shared_ptr<OpenMBV::Cuboid> &
object);
94 std::shared_ptr<OpenMBV::Cuboid> createOpenMBV(xercesc::DOMElement* e=0);
102 void initializeUsingXML(xercesc::DOMElement *element);
103 void initializeObject(
const std::shared_ptr<OpenMBV::Cuboid> &
object);
104 std::shared_ptr<OpenMBV::Cuboid> createOpenMBV(xercesc::DOMElement* e=0);
112 void initializeUsingXML(xercesc::DOMElement *element);
113 void initializeObject(
const std::shared_ptr<OpenMBV::Cuboid> &
object);
114 std::shared_ptr<OpenMBV::Cuboid> createOpenMBV(xercesc::DOMElement* e=0);
122 void initializeUsingXML(xercesc::DOMElement *element);
123 void initializeObject(
const std::shared_ptr<OpenMBV::Frustum> &
object);
124 std::shared_ptr<OpenMBV::Frustum> createOpenMBV(xercesc::DOMElement* e=0);
132 void initializeUsingXML(xercesc::DOMElement *element);
133 void initializeObject(
const std::shared_ptr<OpenMBV::Frustum> &
object);
134 std::shared_ptr<OpenMBV::Frustum> createOpenMBV(xercesc::DOMElement* e=0);
142 void initializeUsingXML(xercesc::DOMElement *element);
143 void initializeObject(
const std::shared_ptr<OpenMBV::Extrusion> &
object);
144 std::shared_ptr<OpenMBV::Extrusion> createOpenMBV(xercesc::DOMElement* e=0);
149 double r, cr, sf, n, l, minCol, maxCol;
150 OpenMBV::CoilSpring::Type type;
152 OpenMBVCoilSpring(
double r_=1,
double cr_=-1,
double sf_=1,
double n_=3,
double l_=-1, OpenMBV::CoilSpring::Type type_=OpenMBV::CoilSpring::tube,
const fmatvec::Vec3 &dc=
"[-1;1;1]",
double tp=0,
double minCol_=0,
double maxCol_=1) :
OpenMBVDynamicColoredBody(dc,tp), r(r_), cr(cr_), sf(sf_), n(n_), l(l_), minCol(minCol_), maxCol(maxCol_), type(type_) { }
153 void initializeUsingXML(xercesc::DOMElement *element);
154 void initializeObject(
const std::shared_ptr<OpenMBV::CoilSpring> &
object);
155 std::shared_ptr<OpenMBV::CoilSpring> createOpenMBV(xercesc::DOMElement* e=0);
161 std::shared_ptr<OpenMBV::IndexedFaceSet> createOpenMBV(xercesc::DOMElement* e=0);
Definition: openmbv_utils.h:147
Definition: openmbv_utils.h:87
Definition: openmbv_utils.h:97
Definition: openmbv_utils.h:54
Definition: openmbv_utils.h:76
Definition: openmbv_utils.h:107
Definition: openmbv_utils.h:66
Definition: openmbv_utils.h:44
Definition: openmbv_utils.h:137
Definition: openmbv_utils.h:158
Definition: openmbv_utils.h:127
Definition: openmbv_utils.h:117
Definition: openmbv_utils.h:35