pybotics.geometry module¶
Geometry functions and utilities.
-
class
pybotics.geometry.
OrientationConvention
[source]¶ Bases:
enum.Enum
Orientation of a body with respect to a fixed coordinate system.
-
EULER_XYX
= 'xyx'¶
-
EULER_XYZ
= 'xyz'¶
-
EULER_XZX
= 'xzx'¶
-
EULER_XZY
= 'xzy'¶
-
EULER_YXY
= 'yxy'¶
-
EULER_YXZ
= 'yxz'¶
-
EULER_YZX
= 'yzx'¶
-
EULER_YZY
= 'yzy'¶
-
EULER_ZXY
= 'zxy'¶
-
EULER_ZXZ
= 'zxz'¶
-
EULER_ZYX
= 'zyx'¶
-
EULER_ZYZ
= 'zyz'¶
-
FIXED_XYX
= 'xyx'¶
-
FIXED_XYZ
= 'zyx'¶
-
FIXED_XZX
= 'xzx'¶
-
FIXED_XZY
= 'yzx'¶
-
FIXED_YXY
= 'yxy'¶
-
FIXED_YXZ
= 'zxy'¶
-
FIXED_YZX
= 'xzy'¶
-
FIXED_YZY
= 'yzy'¶
-
FIXED_ZXY
= 'yxz'¶
-
FIXED_ZXZ
= 'zxz'¶
-
FIXED_ZYX
= 'xyz'¶
-
FIXED_ZYZ
= 'zyz'¶
-
-
pybotics.geometry.
matrix_2_vector
(matrix: numpy.ndarray[Any, numpy.dtype[numpy.float64]], convention: pybotics.geometry.OrientationConvention = <OrientationConvention.EULER_ZYX: 'zyx'>) → numpy.ndarray[Any, numpy.dtype[numpy.float64]][source]¶ Convert 4x4 matrix to a vector.
-
pybotics.geometry.
position_from_matrix
(matrix: numpy.ndarray[Any, numpy.dtype[numpy.float64]]) → numpy.ndarray[Any, numpy.dtype[numpy.float64]][source]¶ Get the position values from a 4x4 transform matrix.
-
pybotics.geometry.
rotation_matrix_x
(angle: float) → numpy.ndarray[Any, numpy.dtype[numpy.float64]][source]¶ Generate a basic 4x4 rotation matrix about the X axis.
-
pybotics.geometry.
rotation_matrix_y
(angle: float) → numpy.ndarray[Any, numpy.dtype[numpy.float64]][source]¶ Generate a basic 4x4 rotation matrix about the Y axis.
-
pybotics.geometry.
rotation_matrix_z
(angle: float) → numpy.ndarray[Any, numpy.dtype[numpy.float64]][source]¶ Generate a basic 4x4 rotation matrix about the Z axis.
-
pybotics.geometry.
translation_matrix
(xyz: numpy.ndarray[Any, numpy.dtype[numpy.float64]]) → numpy.ndarray[Any, numpy.dtype[numpy.float64]][source]¶ Generate a basic 4x4 translation matrix.
-
pybotics.geometry.
vector_2_matrix
(vector: numpy.ndarray[Any, numpy.dtype[numpy.float64]], convention: Union[pybotics.geometry.OrientationConvention, str] = <OrientationConvention.EULER_ZYX: 'zyx'>) → numpy.ndarray[Any, numpy.dtype[numpy.float64]][source]¶ Calculate the pose from the position and euler angles.
Parameters: - convention –
- vector – transform vector
Returns: 4x4 transform matrix