Projection

class compas.geometry.Projection(matrix=None)[source]

Bases: Transformation

Class representing a projection transformation.

Parameters

matrix (list[list[float]], optional) – A 4x4 matrix (or similar) representing a projection transformation.

Raises

ValueError – If the default constructor is used, and the provided transformation matrix is not a shear matrix.

Examples

>>>

Methods

from_entries

Constructs a perspective transformation by the perspective entries of a matrix.

from_plane

Construct an orthogonal projection transformation to project onto a plane.

from_plane_and_direction

Construct a parallel projection transformation to project onto a plane along a specific direction.

from_plane_and_point

Construct a perspective projection transformation to project onto a plane along lines that emanate from a single point, called the center of projection.

Inherited Methods

ToString

Converts the instance to a string.

concatenate

Concatenate another transformation to this transformation.

concatenated

Concatenate two transformations into one Transformation.

copy

Returns a copy of the transformation.

decomposed

Decompose the Transformation into its components.

from_change_of_basis

Construct a change of basis transformation between two frames.

from_data

Construct an object of this type from the provided data.

from_euler_angles

Construct a transformation from a rotation represented by Euler angles.

from_frame

Construct a transformation from world XY to frame.

from_frame_to_frame

Construct a transformation between two frames.

from_json

Construct an object from serialized data contained in a JSON file.

from_jsonstring

Construct an object from serialized data contained in a JSON string.

from_list

Creates a transformation from a list of 16 numbers.

from_matrix

Creates a transformation from a list[list[float]] object.

inverse

Returns the inverse transformation.

invert

Invert this transformation.

inverted

Returns the inverse transformation.

sha256

Compute a hash of the data for comparison during version control using the sha256 algorithm.

to_data

Convert an object to its native data representation.

to_json

Serialize the data representation of an object to a JSON file.

to_jsonstring

Serialize the data representation of an object to a JSON string.

transpose

Transpose the matrix of this transformation.

transposed

Create a transposed copy of this transformation.

validate_data

Validate the object's data against its data schema.

validate_json

Validate the object's data against its json schema.