trimesh.voxel.transforms module¶
- class trimesh.voxel.transforms.Transform(matrix, datastore: DataStore | None = None)¶
Bases:
object
Class for caching metadata associated with 4x4 transformations.
The transformation matrix is used to define relevant properties for the voxels, including pitch and origin.
- __init__(matrix, datastore: DataStore | None = None)¶
Initialize with a transform.
- Parameters:
matrix ((4, 4) float) – Homogeneous transformation matrix
datastore – If passed store the actual values in a reference to another datastore.
- apply_scale(scale)¶
Mutate the transform in-place and return self.
- apply_transform(matrix)¶
Mutate the transform in-place and return self.
- apply_translation(translation)¶
Mutate the transform in-place and return self.
- copy()¶
- property inverse_matrix¶
- inverse_transform_points(points)¶
Apply the inverse transformation to points (not in-place).
- property is_identity¶
Flags this transformation being sufficiently close to eye(4).
- property matrix¶
Get the homogeneous transformation matrix.
- Returns:
matrix – Transformation matrix
- Return type:
(4, 4) float
- property pitch¶
- property scale¶
Get the scale factor of the current transformation.
- Returns:
scale – Scale factor from the matrix
- Return type:
(3,) float
- transform_points(points)¶
Apply the transformation to points (not in-place).
- Parameters:
points ((n, 3) float) – Points in cartesian space
- Returns:
transformed – Points transformed by matrix
- Return type:
(n, 3) float
- property translation¶
Get the translation component of the matrix
- Returns:
translation – Cartesian translation
- Return type:
(3,) float
- property unit_volume¶
Volume of a transformed unit cube.