# Scale

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

Bases: Transformation

Class representing a scale transformation.

Parameters

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

Raises

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

Examples

>>> S = Scale.from_factors([1, 2, 3])
>>> S[0, 0] == 1
True
>>> S[1, 1] == 2
True
>>> S[2, 2] == 3
True

>>> from compas.geometry import Point, Frame
>>> point = Point(2, 5, 0)
>>> frame = Frame(point, (1, 0, 0), (0, 1, 0))
>>> points = [point, Point(2, 10, 0)]
>>> S = Scale.from_factors([2.] * 3, frame)
>>> [p.transformed(S) for p in points]
[Point(2.000, 5.000, 0.000), Point(2.000, 15.000, 0.000)]


Methods

 from_factors Construct a scale transformation from scale factors.

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.