Line
- class compas.geometry.Line(p1, p2, **kwargs)[source]
Bases:
compas.geometry.primitives._primitive.Primitive
A line is defined by two points.
- Parameters
p1 (point) – The first point.
p2 (point) – The second point.
- Attributes
data (dict) – The data representation of the line.
start (
compas.geometry.Point
) – The first point of the line.end (
compas.geometry.Point
) – The second point of the line.vector (
compas.geometry.Vector
) – A vector pointing fromstart
toend
.direction (
compas.geometry.Vector
) – A unit vector pointing fromstart
toend
.midpoint (
compas.geometry.Point
) – A point half way betweenstart
andend
.length (float, read-only) – The length of the line segment between
start
andend
.
Examples
>>> line = Line([0, 0, 0], [1, 1, 1]) >>> line Line(Point(0.000, 0.000, 0.000), Point(1.000, 1.000, 1.000)) >>> line.start Point(0.000, 0.000, 0.000) >>> line.midpoint Point(0.500, 0.500, 0.500) >>> line.length == math.sqrt(1 + 1 + 1) True >>> line.direction Vector(0.577, 0.577, 0.577)
Attributes
DATASCHEMA
The schema of the data of this object.
JSONSCHEMANAME
data
The data dictionary that represents the line.
direction
A unit vector pointing from start and end.
end
The end point of the line.
length
The length of the vector from start to end.
midpoint
The midpoint between start and end.
start
The start point of the line.
vector
A vector pointing from start to end.
Inherited Attributes
JSONSCHEMA
The schema of the JSON representation of the data of this object.
dtype
The type of the object in the form of a '2-level' import and a class name.
guid
The globally unique identifier of the object.
jsondefinitions
Reusable schema definitions.
jsonstring
The representation of the object data in JSON format.
jsonvalidator
JSON schema validator for draft 7.
name
The name of the object.
Methods
Construct a frame from a data dict.
A point between start and end at a specific normalized parameter.
Transform this line.
Transform a collection of
Line
objects.Create a collection of transformed
Line
objects.Inherited Methods
Make an independent copy of the data object.
Construct an object from serialized data contained in a JSON file.
Construct an object from serialized data contained in a JSON string.
Convert an object to its native data representation.
Serialize the data representation of an object to a JSON file.
Serialize the data representation of an object to a JSON string.
Returns a transformed copy of this geometry.
Validate the object's data against its data schema (self.DATASCHEMA).
Validate the object's data against its json schema (self.JSONSCHEMA).