Mundy: Multibody Nonlocal Dynamics Version of the Day
Loading...
Searching...
No Matches
transform.hpp File Reference

Namespaces

namespace  mundy

Functions

Translate
template<ValidPointType PointT, ValidVector3Type Vector3T>
auto mundy::translate (const PointT &point, const Vector3T &disp)
 Translate a point by a given displacement vector.
template<ValidPointType PointT, ValidVector3Type Vector3T>
void mundy::translate_inplace (PointT &point, const Vector3T &disp)
 Translate a point by a given displacement vector (inplace).
template<ValidLineType LineT, ValidVector3Type Vector3T>
auto mundy::translate (const LineT &line, const Vector3T &disp)
 Translate a line by a given displacement vector.
template<ValidLineType LineT, ValidVector3Type Vector3T>
void mundy::translate_inplace (LineT &line, const Vector3T &disp)
 Translate a line by a given displacement vector (inplace).
template<ValidLineSegmentType LineSegmentT, ValidVector3Type Vector3T>
auto mundy::translate (const LineSegmentT &line_segment, const Vector3T &disp)
 Translate a line segment by a given displacement vector.
template<ValidLineSegmentType LineSegmentT, ValidVector3Type Vector3T>
void mundy::translate_inplace (LineSegmentT &line_segment, const Vector3T &disp)
 Translate a line segment by a given displacement vector (inplace).
template<ValidVSegmentType VSegmentT, ValidVector3Type Vector3T>
auto mundy::translate (const VSegmentT &v_segment, const Vector3T &disp)
 Translate a v-segment by a given displacement vector.
template<ValidVSegmentType VSegmentT, ValidVector3Type Vector3T>
void mundy::translate_inplace (VSegmentT &v_segment, const Vector3T &disp)
 Translate a v-segment by a given displacement vector (inplace).
template<ValidCircle3DType Circle3DT, ValidVector3Type Vector3T>
auto mundy::translate (const Circle3DT &circle, const Vector3T &disp)
 Translate a circle3D by a given displacement vector.
template<ValidCircle3DType Circle3DT, ValidVector3Type Vector3T>
void mundy::translate_inplace (Circle3DT &circle, const Vector3T &disp)
 Translate a circle3D by a given displacement vector (inplace).
template<ValidAABBType AABBT, ValidVector3Type Vector3T>
auto mundy::translate (const AABBT &aabb, const Vector3T &disp)
 Translate an AABB by a given displacement vector.
template<ValidAABBType AABBT, ValidVector3Type Vector3T>
void mundy::translate_inplace (AABBT &aabb, const Vector3T &disp)
 Translate an AABB by a given displacement vector (inplace).
template<ValidSphereType SphereT, ValidVector3Type Vector3T>
auto mundy::translate (const SphereT &sphere, const Vector3T &disp)
 Translate a sphere by a given displacement vector.
template<ValidSphereType SphereT, ValidVector3Type Vector3T>
void mundy::translate_inplace (SphereT &sphere, const Vector3T &disp)
 Translate a sphere by a given displacement vector (inplace).
template<ValidSpherocylinderType SpherocylinderT, ValidVector3Type Vector3T>
auto mundy::translate (const SpherocylinderT &spherocylinder, const Vector3T &disp)
 Translate a spherocylinder by a given displacement vector.
template<ValidSpherocylinderType SpherocylinderT, ValidVector3Type Vector3T>
void mundy::translate_inplace (SpherocylinderT &spherocylinder, const Vector3T &disp)
 Translate a spherocylinder by a given displacement vector (inplace).
template<ValidSpherocylinderSegmentType SpherocylinderSegmentT, ValidVector3Type Vector3T>
auto mundy::translate (const SpherocylinderSegmentT &spherocylinder_segment, const Vector3T &disp)
 Translate a spherocylinder segment by a given displacement vector.
template<ValidSpherocylinderSegmentType SpherocylinderSegmentT, ValidVector3Type Vector3T>
void mundy::translate_inplace (SpherocylinderSegmentT &spherocylinder_segment, const Vector3T &disp)
 Translate a spherocylinder segment by a given displacement vector (inplace).
template<ValidRingType RingT, ValidVector3Type Vector3T>
auto mundy::translate (const RingT &ring, const Vector3T &disp)
 Translate a ring by a given displacement vector.
template<ValidRingType RingT, ValidVector3Type Vector3T>
void mundy::translate_inplace (RingT &ring, const Vector3T &disp)
 Translate a ring by a given displacement vector (inplace).
template<ValidEllipsoidType EllipsoidT, ValidVector3Type Vector3T>
auto mundy::translate (const EllipsoidT &ellipsoid, const Vector3T &disp)
 Translate an ellipsoid by a given displacement vector.
template<ValidEllipsoidType EllipsoidT, ValidVector3Type Vector3T>
void mundy::translate_inplace (EllipsoidT &ellipsoid, const Vector3T &disp)
 Translate an ellipsoid by a given displacement vector (inplace).
Rotate (about the origin)
template<ValidPointType PointT, ValidQuaternionType QuaternionT>
Point< typename QuaternionT::value_type > mundy::rotate (const PointT &point, const QuaternionT &q)
 Rotate a point about the origin by a given quaternion.
template<ValidPointType PointT, ValidQuaternionType QuaternionT>
void mundy::rotate_inplace (PointT &point, const QuaternionT &q)
 Rotate a point about the origin by a given quaternion (inplace).
template<ValidLineType LineT, ValidQuaternionType QuaternionT>
Line< typename QuaternionT::value_type > mundy::rotate (const LineT &line, const QuaternionT &q)
 Rotate a line about the origin by a given quaternion.
template<ValidLineType LineT, ValidQuaternionType QuaternionT>
void mundy::rotate_inplace (LineT &line, const QuaternionT &q)
 Rotate a line about the origin by a given quaternion (inplace).
template<ValidLineSegmentType LineSegmentT, ValidQuaternionType QuaternionT>
LineSegment< typename QuaternionT::value_type > mundy::rotate (const LineSegmentT &line_segment, const QuaternionT &q)
 Rotate a line segment about the origin by a given quaternion.
template<ValidLineSegmentType LineSegmentT, ValidQuaternionType QuaternionT>
void mundy::rotate_inplace (LineSegmentT &line_segment, const QuaternionT &q)
 Rotate a line segment about the origin by a given quaternion (inplace).
template<ValidVSegmentType VSegmentT, ValidQuaternionType QuaternionT>
VSegment< typename QuaternionT::value_type > mundy::rotate (const VSegmentT &v_segment, const QuaternionT &q)
 Rotate a v-segment about the origin by a given quaternion.
template<ValidVSegmentType VSegmentT, ValidQuaternionType QuaternionT>
void mundy::rotate_inplace (VSegmentT &v_segment, const QuaternionT &q)
 Rotate a v-segment about the origin by a given quaternion (inplace).
template<ValidCircle3DType Circle3DT, ValidQuaternionType QuaternionT>
Circle3D< typename QuaternionT::value_type > mundy::rotate (const Circle3DT &circle, const QuaternionT &q)
 Rotate a circle3D about the origin by a given quaternion.
template<ValidCircle3DType Circle3DT, ValidQuaternionType QuaternionT>
void mundy::rotate_inplace (Circle3DT &circle, const QuaternionT &q)
 Rotate a circle3D about the origin by a given quaternion (inplace).
template<ValidAABBType AABBT, ValidQuaternionType QuaternionT>
AABB< typename QuaternionT::value_type > mundy::rotate (const AABBT &aabb, const QuaternionT &q)
 Rotate an AABB about the origin by a given quaternion.
template<ValidAABBType AABBT, ValidQuaternionType QuaternionT>
void mundy::rotate_inplace (AABBT &aabb, const QuaternionT &q)
 Rotate an AABB about the origin by a given quaternion (inplace).
template<ValidSphereType SphereT, ValidQuaternionType QuaternionT>
Sphere< typename QuaternionT::value_type > mundy::rotate (const SphereT &sphere, const QuaternionT &q)
 Rotate a sphere about the origin by a given quaternion.
template<ValidSphereType SphereT, ValidQuaternionType QuaternionT>
void mundy::rotate_inplace (SphereT &sphere, const QuaternionT &q)
 Rotate a sphere about the origin by a given quaternion (inplace).
template<ValidSpherocylinderType SpherocylinderT, ValidQuaternionType QuaternionT>
Spherocylinder< typename QuaternionT::value_type > mundy::rotate (const SpherocylinderT &spherocylinder, const QuaternionT &q)
 Rotate a spherocylinder about the origin by a given quaternion.
template<ValidSpherocylinderType SpherocylinderT, ValidQuaternionType QuaternionT>
void mundy::rotate_inplace (SpherocylinderT &spherocylinder, const QuaternionT &q)
 Rotate a spherocylinder about the origin by a given quaternion (inplace).
template<ValidSpherocylinderSegmentType SpherocylinderSegmentT, ValidQuaternionType QuaternionT>
SpherocylinderSegment< typename QuaternionT::value_type > mundy::rotate (const SpherocylinderSegmentT &spherocylinder_segment, const QuaternionT &q)
 Rotate a spherocylinder segment about the origin by a given quaternion.
template<ValidSpherocylinderSegmentType SpherocylinderSegmentT, ValidQuaternionType QuaternionT>
void mundy::rotate_inplace (SpherocylinderSegmentT &spherocylinder_segment, const QuaternionT &q)
 Rotate a spherocylinder segment about the origin by a given quaternion (inplace).
template<ValidRingType RingT, ValidQuaternionType QuaternionT>
Ring< typename QuaternionT::value_type > mundy::rotate (const RingT &ring, const QuaternionT &q)
 Rotate a ring about the origin by a given quaternion.
template<ValidRingType RingT, ValidQuaternionType QuaternionT>
void mundy::rotate_inplace (RingT &ring, const QuaternionT &q)
 Rotate a ring about the origin by a given quaternion (inplace).
template<ValidEllipsoidType EllipsoidT, ValidQuaternionType QuaternionT>
Ellipsoid< typename QuaternionT::value_type > mundy::rotate (const EllipsoidT &ellipsoid, const QuaternionT &q)
 Rotate an ellipsoid about the origin by a given quaternion.
template<ValidEllipsoidType EllipsoidT, ValidQuaternionType QuaternionT>
void mundy::rotate_inplace (EllipsoidT &ellipsoid, const QuaternionT &q)
 Rotate an ellipsoid about the origin by a given quaternion (inplace).