| IOLink 1.11.0

Loading...
Searching...
No Matches
TransformMatrixFactory.h
1#pragma once
2
3#include <string>
4
5#include <iolink/IOLinkAPI.h>
6#include <iolink/Matrix.h>
7#include <iolink/Vector.h>
8
9 namespace iolink
10{
11
15 class IOLINK_API TransformMatrix3Factory
16{
17 public:
24 static Matrix3d translation(const Vector2d& v);
25
34 static Matrix3d rotation(double angle);
35
42 static Matrix3d scaling(const Vector2d& v);
43};
44
48 class IOLINK_API TransformMatrix4Factory
49{
50 public:
57 static Matrix4d translation(const Vector3d& v);
58
85 static Matrix4d rotationEuler(const Vector3d& angles, const std::string& convention);
86
96 static Matrix4d rotationOnAxis(double angle, const Vector3d& axis);
97
104 static Matrix4d scaling(const Vector3d& v);
105};
106
107} // namespace iolink
iolink::Matrix
An arithmetic square matrix.
Definition Matrix.h:22
iolink::TransformMatrix3Factory
Create matrices for 2D transforms.
Definition TransformMatrixFactory.h:16
iolink::TransformMatrix3Factory::scaling
static Matrix3d scaling(const Vector2d &v)
Create a Scaling matrix.
iolink::TransformMatrix3Factory::translation
static Matrix3d translation(const Vector2d &v)
Create a translation matrix.
iolink::TransformMatrix3Factory::rotation
static Matrix3d rotation(double angle)
Create a rotation matrix.
iolink::TransformMatrix4Factory
Create matrices for 3D transforms.
Definition TransformMatrixFactory.h:49
iolink::TransformMatrix4Factory::scaling
static Matrix4d scaling(const Vector3d &v)
Create a scaling matrix.
iolink::TransformMatrix4Factory::rotationOnAxis
static Matrix4d rotationOnAxis(double angle, const Vector3d &axis)
Create a rotation matrix for a rotation around an axis.
iolink::TransformMatrix4Factory::translation
static Matrix4d translation(const Vector3d &v)
Create a translation matrix.
iolink::TransformMatrix4Factory::rotationEuler
static Matrix4d rotationEuler(const Vector3d &angles, const std::string &convention)
Create a rotation matrix for a rotation using Euler angles.
iolink::Vector
An arithmetic vector.
Definition Vector.h:37
iolink
All IOLink symbols are enclosed in this namespace.
Definition ArrayX.h:8