33 #ifndef DART_DYNAMICS_ARROWSHAPE_HPP_
34 #define DART_DYNAMICS_ARROWSHAPE_HPP_
55 double _radius = 0.01,
56 double _headRadiusScale = 2.0,
57 double _headLengthScale = 0.15,
58 double _minHeadLength = 0,
59 double _maxHeadLength = INFINITY,
60 bool _doubleArrow =
false);
73 const Eigen::Vector3d& _tail,
74 const Eigen::Vector3d& _head,
76 const Eigen::Vector4d& _color = Eigen::Vector4d(0.5, 0.5, 1.0, 1.0),
77 std::size_t _resolution = 10);
81 void setPositions(
const Eigen::Vector3d& _tail,
const Eigen::Vector3d& _head);
84 const Eigen::Vector3d&
getTail()
const;
87 const Eigen::Vector3d&
getHead()
const;
99 const Eigen::Vector3d& _tail,
100 const Eigen::Vector3d& _head,
Definition: ArrowShape.hpp:42
void notifyColorUpdated(const Eigen::Vector4d &_color) override
Set the color of this arrow.
Definition: ArrowShape.cpp:101
void setProperties(const Properties &_properties)
Set the properties of this arrow.
Definition: ArrowShape.cpp:95
const Eigen::Vector3d & getTail() const
Get the location of the tail of this arrow.
Definition: ArrowShape.cpp:83
Properties mProperties
Definition: ArrowShape.hpp:109
const Eigen::Vector3d & getHead() const
Get the location of the head of this arrow.
Definition: ArrowShape.cpp:89
const Properties & getProperties() const
Get the properties of this arrow.
Definition: ArrowShape.cpp:115
Eigen::Vector3d mTail
Definition: ArrowShape.hpp:106
Eigen::Vector3d mHead
Definition: ArrowShape.hpp:107
void instantiate(std::size_t resolution)
Definition: ArrowShape.cpp:257
void configureArrow(const Eigen::Vector3d &_tail, const Eigen::Vector3d &_head, const Properties &_properties)
Definition: ArrowShape.cpp:176
ArrowShape(const Eigen::Vector3d &_tail, const Eigen::Vector3d &_head, const Properties &_properties=Properties(), const Eigen::Vector4d &_color=Eigen::Vector4d(0.5, 0.5, 1.0, 1.0), std::size_t _resolution=10)
This will produce an arrow that reaches from _tail to _head with the given properties.
Definition: ArrowShape.cpp:58
void setPositions(const Eigen::Vector3d &_tail, const Eigen::Vector3d &_head)
Set the positions of the tail and head of the arrow without changing any settings.
Definition: ArrowShape.cpp:76
Definition: MeshShape.hpp:47
Definition: BulletCollisionDetector.cpp:65
Definition: ArrowShape.hpp:45
double mMaxHeadLength
Definition: ArrowShape.hpp:66
double mRadius
Definition: ArrowShape.hpp:62
double mHeadLengthScale
Definition: ArrowShape.hpp:64
bool mDoubleArrow
Definition: ArrowShape.hpp:67
double mMinHeadLength
Definition: ArrowShape.hpp:65
Properties(double _radius=0.01, double _headRadiusScale=2.0, double _headLengthScale=0.15, double _minHeadLength=0, double _maxHeadLength=INFINITY, bool _doubleArrow=false)
_radius affects the thickness of the arrow.
Definition: ArrowShape.cpp:41
double mHeadRadiusScale
Definition: ArrowShape.hpp:63