PolylineNode

open class PolylineNode(polyline: Polyline, var style: ShapeStyle = ShapeStyle.POLYLINE, var tags: Set<String> = emptySet()) : Polyline, CompositeNode

A scene-graph leaf that is a Polyline: the chain's geometry carrying the concrete style it renders with, plus optional tags.

Construction reuses polyline's vertex list by reference, so the leaf carries the same geometry at full Double precision. Everything a Polyline offers is inherited, and every operation typed against Polyline accepts the leaf as-is — the shape-preserving operations return through copy and come back as the leaf, style and tags riding along; everything else returns plain shapes.

Parameters

polyline

The geometry to decorate; its vertex list is kept by reference.

style

The concrete paint; the polyline default when omitted.

tags

Free-form tokens riding the leaf; empty by default.

Constructors

Link copied to clipboard
constructor(polyline: Polyline, style: ShapeStyle = ShapeStyle.POLYLINE, tags: Set<String> = emptySet())

Builds the leaf around polyline's vertices.

constructor(node: PolylineNode, style: ShapeStyle = node.style, tags: Set<String> = node.tags)

Builds the leaf as a copy of node: the same geometry, and node's own style and tags unless either is overridden.

Properties

Link copied to clipboard
Link copied to clipboard
open override var style: ShapeStyle
Link copied to clipboard
open override var tags: Set<String>
Link copied to clipboard
Link copied to clipboard

Functions

Link copied to clipboard
open override fun copy(polyline: Polyline): PolylineNode

Returns a PolylineNode around polyline, carrying this leaf's style and tags.

Link copied to clipboard
open operator override fun equals(other: Any?): Boolean

Rounded, style-inclusive identity: equal when the geometry matches at the SCALE quantum and style and tags match exactly.

Link copied to clipboard
open override fun hashCode(): Int

Returns the geometry hash combined with style's and tags', consistent with equals.

Link copied to clipboard
operator fun ShapeNode.times(versor: Versor): ShapeNode

node * Versor => ShapeNode
Returns this leaf with versor's motion applied to its geometry — style and tags untouched.

Link copied to clipboard
open override fun toString(): String

Returns the raw geometry with the style and tags — full stored precision, no rounding.

Link copied to clipboard