walkmap.edge

Essentially the specification for things we shall consider to be an edge. An edge is a line segment having just a start and an end, with no intervening nodes.

collinear?

(collinear? e1 e2)

True if edges e1 and e2 are collinear with one another.

edge?

(edge? o)

True if o satisfies the conditions for a path. A path shall be a map having the keys :start and :end, such that the values of each of those keys shall be a vertex.

length

(length e)

Return the length of the edge e.

parallel?

(parallel? & edges)

True if all edges passed are parallel with one another.

path->edges

(path->edges o)

if o is a path, a polygon, or a sequence of vertices, return a sequence of edges representing that path, polygon or sequence.

unit-vector

(unit-vector e)

Return an vertex parallel to e starting from the coordinate origin. Two edges which are parallel will have the same unit vector.