CircleNode

open class CircleNode(circle: Circle, var style: ShapeStyle = ShapeStyle.CIRCLE, var tags: Set<String> = emptySet()) : Circle, PrimitiveNode

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

Construction copies circle's components, so the leaf carries the same geometry at full Double precision. Everything a Circle offers is inherited, and every operation typed against Circle accepts the leaf as-is — the shape-preserving operations, canonical included, return through copy and come back as the leaf, style and tags riding along; everything else returns plain shapes.

Parameters

circle

The geometry to decorate; its components are copied.

style

The concrete paint; the circle default when omitted.

tags

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

Constructors

Link copied to clipboard
constructor(circle: Circle, style: ShapeStyle = ShapeStyle.CIRCLE, tags: Set<String> = emptySet())

Builds the leaf around circle's geometry.

constructor(node: CircleNode, 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 val canonical: Circle
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val cw: Double
Link copied to clipboard
val cx: Double
Link copied to clipboard
val cy: Double
Link copied to clipboard
val cz: Double
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open override var style: ShapeStyle
Link copied to clipboard
open override var tags: Set<String>

Functions

Link copied to clipboard
open override fun copy(circle: Circle): CircleNode

Returns a CircleNode around circle, 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