libpysal.cg.Chain

class libpysal.cg.Chain(vertices: list)[source]

Geometric representation of a chain, also known as a polyline.

Parameters:
verticeslist

A point list or list of point lists.

Examples

>>> c = Chain([Point((0, 0)), Point((1, 0)), Point((1, 1)), Point((2, 1))])
Attributes:
verticeslist

Returns the vertices of the chain in clockwise order.

lenfloat

Returns the geometric length of the chain.

__init__(vertices: list)[source]

Methods

__init__(vertices)

Attributes

arclen

Returns the geometric length of the chain computed using 'arcdistance' (meters).

bounding_box

Returns the bounding box of the chain.

len

Returns the geometric length of the chain.

parts

Returns the parts (lists of libpysal.cg.Point objects) of the chain.

segments

Returns the segments that compose the chain.

vertices

Returns the vertices of the chain in clockwise order.

property arclen: int | float

Returns the geometric length of the chain computed using ‘arcdistance’ (meters).

property bounding_box

Returns the bounding box of the chain.

Returns:
self._bounding_boxlibpysal.cg.Rectangle

The bounding box of the chain.

Examples

>>> c = Chain([Point((0, 0)), Point((2, 0)), Point((2, 1)), Point((0, 1))])
>>> c.bounding_box.left
0.0
>>> c.bounding_box.lower
0.0
>>> c.bounding_box.right
2.0
>>> c.bounding_box.upper
1.0
property len: int

Returns the geometric length of the chain.

Examples

>>> c = Chain([Point((0, 0)), Point((1, 0)), Point((1, 1)), Point((2, 1))])
>>> c.len
3.0
>>> c = Chain(
...     [
...         [Point((0, 0)), Point((1, 0)), Point((1, 1))],
...         [Point((10, 10)), Point((11, 10)), Point((11, 11))]
...     ]
... )
>>> c.len
4.0
property parts: list

Returns the parts (lists of libpysal.cg.Point objects) of the chain.

Examples

>>> c = Chain(
...     [
...         [Point((0, 0)), Point((1, 0)), Point((1, 1)), Point((0, 1))],
...         [Point((2, 1)), Point((2, 2)), Point((1, 2)), Point((1, 1))]
...     ]
... )
>>> len(c.parts)
2
property segments: list

Returns the segments that compose the chain.

property vertices: list

Returns the vertices of the chain in clockwise order.

Examples

>>> c = Chain([Point((0, 0)), Point((1, 0)), Point((1, 1)), Point((2, 1))])
>>> verts = c.vertices
>>> len(verts)
4