Plane

class compas.geometry.Plane(point, normal, **kwargs)[source]

Bases: Primitive

A plane is defined by a base point and a normal vector.

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

  • normal ([float, float, float] | Vector) – The normal vector of the plane.

Attributes
  • point (Plane) – The base point of the plane.

  • normal (Vector) – The normal vector of the plane.

  • d (float, read-only) – The d parameter of the linear equation describing the plane.

  • abcd (list[float], read-only) – The coefficients of the plane equation.

Examples

>>> plane = Plane([0, 0, 0], [0, 0, 1])
>>> plane.point
Point(0.000, 0.000, 0.000)
>>> plane.normal
Vector(0.000, 0.000, 1.000)

Methods

from_abcd

Construct a plane from the plane equation coefficients.

from_data

Construct a plane from its data representation.

from_frame

Construct a plane from a frame.

from_point_and_two_vectors

Construct a plane from a base point and two vectors.

from_three_points

Construct a plane from three points in three-dimensional space.

offset

Returns a new offset plane by a given distance.

transform

Transform this plane.

worldXY

Construct the world XY plane.

Inherited Methods

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.

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.