Biorbd
ViaPoint.h
1 #ifndef BIORBD_MUSCLES_VIAPOINT_H
2 #define BIORBD_MUSCLES_VIAPOINT_H
3 
4 #include "biorbdConfig.h"
5 #include "Utils/Vector3d.h"
6 
7 namespace biorbd {
8 namespace utils {
9 class String;
10 }
11 
12 namespace muscles {
16 class BIORBD_API ViaPoint : public biorbd::utils::Vector3d{
17 public:
21  ViaPoint();
22 
29  ViaPoint(
30  const biorbd::utils::Scalar& x,
31  const biorbd::utils::Scalar& y,
32  const biorbd::utils::Scalar& z);
33 
42  ViaPoint(
43  const biorbd::utils::Scalar& x,
44  const biorbd::utils::Scalar& y,
45  const biorbd::utils::Scalar& z,
46  const biorbd::utils::String &name,
47  const biorbd::utils::String &parentName);
48 
53  ViaPoint(
54  const biorbd::utils::Vector3d& other);
55 
60  ViaPoint(
61  const biorbd::muscles::ViaPoint& other);
62 
67  biorbd::muscles::ViaPoint DeepCopy() const;
68 
73  void DeepCopy(const biorbd::muscles::ViaPoint& other);
74 
79  template<typename OtherDerived>
81  this->biorbd::utils::Vector3d::operator=(other);
82  return *this;
83  }
84 };
85 
86 }}
87 
88 #endif // BIORBD_MUSCLES_VIAPOINT_H
biorbd::utils::Vector3d
Wrapper around Eigen Vector3d and attach it to a parent.
Definition: Vector3d.h:24
biorbd::muscles::ViaPoint
Via point of a muscle.
Definition: ViaPoint.h:16
biorbd::muscles::ViaPoint::operator=
biorbd::muscles::ViaPoint & operator=(const biorbd::utils::Vector3d &other)
To be able to use operator "=" when assigning a ViaPoint to a 3D node.
Definition: ViaPoint.h:80
biorbd::utils::String
Wrapper around the std::string class with augmented functionality.
Definition: String.h:17