Frame

class compas.geometry.Frame(point, xaxis, yaxis, **kwargs)[source]

Bases: Primitive

A frame is defined by a base point and two orthonormal base vectors.

Parameters
  • point ([float, float, float] | Point) – The origin of the frame.

  • xaxis ([float, float, float] | Vector) – The x-axis of the frame.

  • yaxis ([float, float, float] | Vector) – The y-axis of the frame.

Attributes
  • point (Point) – The base point of the frame.

  • xaxis (Vector) – The local X axis of the frame.

  • yaxis (Vector) – The local Y axis of the frame.

  • zaxis (Vector, read-only) – The Z axis of the frame.

  • normal (Vector, read-only) – The normal of the base plane of the frame.

  • quaternion (Quaternion, read-only) – The quaternion from the rotation given by the frame.

  • axis_angle_vector (Vector, read-only) – The axis-angle vector representing the rotation of the frame.

Notes

All input vectors are orthonormalized when creating a frame, with the first vector as starting point.

Examples

>>> from compas.geometry import Point
>>> from compas.geometry import Vector
>>> f = Frame([0, 0, 0], [1, 0, 0], [0, 1, 0])
>>> f = Frame(Point(0, 0, 0), Vector(1, 0, 0), Vector(0, 1, 0))

Methods

euler_angles

The Euler angles from the rotation given by the frame.

from_axis_angle_vector

Construct a frame from an axis-angle vector representing the rotation.

from_data

Construct a frame from its data representation.

from_euler_angles

Construct a frame from a rotation represented by Euler angles.

from_list

Construct a frame from a list of 12 or 16 float values.

from_matrix

Construct a frame from a matrix.

from_plane

Constructs a frame from a plane.

from_points

Constructs a frame from 3 points.

from_quaternion

Construct a frame from a rotation represented by quaternion coefficients.

from_rotation

Constructs a frame from a Rotation.

from_transformation

Constructs a frame from a Transformation.

local_to_local_coordinates

Returns the object's coordinates in frame1 in the local coordinates of frame2.

to_local_coordinates

Returns the object's coordinates in the local coordinate system of the frame.

to_world_coordinates

Returns the object's coordinates in the global coordinate frame.

transform

Transform the frame.

worldXY

Construct the world XY frame.

worldYZ

Construct the world YZ frame.

worldZX

Construct the world ZX frame.

Inherited Methods

ToString

Converts the instance to a string.

copy

Make an independent copy of the data object.

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.

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.

transformed

Returns a transformed copy of this geometry.

validate_data

Validate the object's data against its data schema.

validate_json

Validate the object's data against its json schema.