Polyline
- class compas.geometry.Polyline(points, **kwargs)[source]
Bases:
compas.geometry.primitives._primitive.Primitive
A polyline is a sequence of points connected by line segments.
A polyline is a piecewise linear element. It does not have an interior. It can be open or closed. It can be self-intersecting.
- Parameters
points (list of point) – An ordered list of points. Each consecutive pair of points forms a segment of the polyline.
- Attributes
data (dict) – The data representation of the polyline.
points (list of
compas.geometry.Point
) – The polyline points.lines (list of
compas.geometry.Line
, read-only) – The polyline segments.length (float, read-only) – The length of the polyline.
Examples
>>> polyline = Polyline([[0,0,0], [1,0,0], [2,0,0], [3,0,0]]) >>> polyline.length 3.0
>>> type(polyline.points[0]) == Point True >>> polyline.points[0].x 0.0
>>> type(polyline.lines[0]) == Line True >>> polyline.lines[0].length 1.0
Attributes
DATASCHEMA
The schema of the data of this object.
JSONSCHEMANAME
data
Returns the data dictionary that represents the polyline.
length
The length of the polyline.
lines
The lines of the polyline.
points
The points of the polyline.
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
Divide a polyline in equal segments.
Splits a polyline in segments of a given length.
Construct a polyline from a data dict.
Determine if the polyline is closed.
Determine if the polyline is self-intersecting.
Point on the polyline at a specific normalized parameter.
Splits a polyline at corners larger than the given angle_threshold
Calculates the tangent vector of a point on a polyline
Transform this polyline.
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).