53 p(_p),
v(_v),
dv(_dv) {}
101 R(R_),
w(_w),
dw(_dw) {}
155 M(T_.
M,_t.
rot,_dt.
rot),
p(T_.
p,_t.vel,_dt.vel) {}
ATTR_WARN_UNUSED_RESULT const BMVert * v
IMETHOD FrameAcc & operator=(const FrameAcc &arg)
IMETHOD Twist GetTwist() const
IMETHOD FrameAcc Inverse() const
FrameAcc(const Frame &T_)
static IMETHOD FrameAcc Identity()
RotationAcc M
Rotation,angular velocity, and angular acceleration of frame.
IMETHOD Frame GetFrame() const
IMETHOD friend bool Equal(const FrameAcc &r1, const FrameAcc &r2, double eps)
IMETHOD friend bool Equal(const Frame &r1, const FrameAcc &r2, double eps)
VectorAcc p
Translation, velocity and acceleration of origin.
IMETHOD Twist GetAccTwist() const
IMETHOD friend bool Equal(const FrameAcc &r1, const Frame &r2, double eps)
FrameAcc(const RotationAcc &_M, const VectorAcc &_p)
FrameAcc(const Frame &T_, const Twist &_t, const Twist &_dt)
IMETHOD friend FrameAcc operator*(const FrameAcc &f1, const FrameAcc &f2)
represents a frame transformation in 3D space (rotation + translation)
RotationAcc(const Rotation &R_, const Vector &_w, const Vector &_dw)
IMETHOD friend bool Equal(const Rotation &r1, const RotationAcc &r2, double eps)
IMETHOD RotationAcc Inverse() const
IMETHOD friend bool Equal(const RotationAcc &r1, const RotationAcc &r2, double eps)
IMETHOD friend RotationAcc operator*(const RotationAcc &r1, const RotationAcc &r2)
static IMETHOD RotationAcc Identity()
RotationAcc(const Rotation &R_)
IMETHOD RotationAcc & operator=(const RotationAcc &arg)
Vector dw
angular acceration vector
Vector w
angular velocity vector
IMETHOD friend bool Equal(const RotationAcc &r1, const Rotation &r2, double eps)
Rotation R
rotation matrix
represents rotations in 3 dimensional space.
IMETHOD friend bool Equal(const TwistAcc &a, const Twist &b, double eps)
IMETHOD friend TwistAcc operator+(const TwistAcc &lhs, const TwistAcc &rhs)
IMETHOD friend TwistAcc operator*(const doubleAcc &lhs, const TwistAcc &rhs)
IMETHOD friend TwistAcc operator-(const TwistAcc &lhs, const TwistAcc &rhs)
IMETHOD friend TwistAcc operator-(const TwistAcc &arg)
VectorAcc rot
rotational velocity and its 1st and 2nd derivative
IMETHOD TwistAcc & operator+=(const TwistAcc &arg)
IMETHOD friend TwistAcc operator*(const TwistAcc &lhs, double rhs)
IMETHOD friend void SetToZero(TwistAcc &v)
IMETHOD void ReverseSign()
IMETHOD friend TwistAcc operator/(const TwistAcc &lhs, const doubleAcc &rhs)
IMETHOD friend bool Equal(const Twist &a, const TwistAcc &b, double eps)
IMETHOD friend TwistAcc operator*(double lhs, const TwistAcc &rhs)
static IMETHOD TwistAcc Zero()
IMETHOD friend bool Equal(const TwistAcc &a, const TwistAcc &b, double eps)
IMETHOD TwistAcc & operator-=(const TwistAcc &arg)
IMETHOD Twist GetTwistDot() const
IMETHOD TwistAcc RefPoint(const VectorAcc &v_base_AB)
IMETHOD Twist GetTwist() const
TwistAcc(const VectorAcc &_vel, const VectorAcc &_rot)
VectorAcc vel
translational velocity and its 1st and 2nd derivative
IMETHOD friend TwistAcc operator*(const TwistAcc &lhs, const doubleAcc &rhs)
IMETHOD friend TwistAcc operator/(const TwistAcc &lhs, double rhs)
represents both translational and rotational velocities.
IMETHOD friend VectorAcc operator/(const VectorAcc &r1, double r2)
VectorAcc(const Vector &_p)
IMETHOD friend VectorAcc operator+(const VectorAcc &r1, const VectorAcc &r2)
IMETHOD friend bool Equal(const VectorAcc &r1, const Vector &r2, double eps)
IMETHOD friend doubleAcc dot(const Vector &lhs, const VectorAcc &rhs)
IMETHOD friend VectorAcc operator*(const Rotation &R, const VectorAcc &x)
IMETHOD friend doubleAcc dot(const VectorAcc &lhs, const Vector &rhs)
Vector dv
acceleration vector
IMETHOD VectorAcc & operator-=(const VectorAcc &arg)
IMETHOD VectorAcc & operator+=(const VectorAcc &arg)
IMETHOD void ReverseSign()
IMETHOD friend bool Equal(const Vector &r1, const VectorAcc &r2, double eps)
VectorAcc(const Vector &_p, const Vector &_v)
IMETHOD friend doubleAcc dot(const VectorAcc &lhs, const VectorAcc &rhs)
IMETHOD friend VectorAcc operator-(const VectorAcc &r1, const VectorAcc &r2)
VectorAcc(const Vector &_p, const Vector &_v, const Vector &_dv)
IMETHOD friend bool Equal(const VectorAcc &r1, const VectorAcc &r2, double eps)
IMETHOD VectorAcc & operator=(const VectorAcc &arg)
static IMETHOD VectorAcc Zero()
IMETHOD friend VectorAcc operator*(const VectorAcc &r1, const VectorAcc &r2)
A concrete implementation of a 3 dimensional vector class.
local_group_size(16, 16) .push_constant(Type b
local_group_size(16, 16) .push_constant(Type rhs
Rall2d< double, double, double > doubleAcc
double epsilon
default precision while comparing with Equal(..,..) functions. Initialized at 0.0000001.
IMETHOD bool Equal(const VectorAcc &, const VectorAcc &, double=epsilon)