Plane#

class Plane[source]#

Bases: object

Base class for Axonometry and ReferencePlane.

Mangaing the adding of Point and Line to the various planes.

Methods

draw_line

Add a Line to the current plane.

draw_point

Add a Point to the current plane.

Attributes

drawing

Class attribute set by Axonometry.

lines

All lines contained in the current plane.

objects

Collection of points and lines in current plane.

points

All points contained in the current plane.

Methods#

Plane.draw_line(line: Line, layer_nr: int | None = None, ref_plane_keys: list[Literal['xy', 'yz', 'zx']] = ['xy', 'yz', 'zx']) Line[source]#

Add a Line to the current plane.

By inheritence, two main cases occur, each handled by a set of operations:

  • Adding a line into the axonometric picture plane.

  • Adding the line into one of the three reference planes.

Parameters:
  • line (Line) – The new line to be added.

  • ref_plane_keys (list[Literal['xy', 'yz', 'zx']]) – The reference planes on which to construct the auxiliary projections when adding a line on the axonometric picture plane, defaults to all three i.e. [“xy”, “yz”, “zx”].

  • layer_nr (int | None)

Returns:

The newly added line. If an identical line already exists in the planes’ objects, the existing line is returned instead of a new object.

Return type:

Line

Plane.draw_point(point: Point, ref_plane_keys: list[Literal['xy', 'yz', 'zx']] = ['xy', 'yz', 'zx']) Point[source]#

Add a Point to the current plane.

Note

The Line object operations are basically performed on its points, this method is extensively called in draw_line() and project(), with Line.start and Line.end as parameters.

Parameters:
Return type:

Point

Attributes#

Plane.drawing: Drawing | None = None#

Class attribute set by Axonometry.

Plane.lines#

All lines contained in the current plane.

Plane.objects#

Collection of points and lines in current plane.

Plane.points#

All points contained in the current plane.