MotionScript

@motion-script/core


@motion-script/core / NodeBox

Interface: NodeBox

Defined in: runtime/node-picking.ts:25

A node's on-screen box at the current frame, in viewport space (origin at the viewport centre, y-up).

Unlike Node.global this folds in any active camera scope, so it describes where the node's pixels actually landed — which is what an editor overlay needs in order to draw a selection box over them.

Properties

bottomLeft

bottomLeft: Vector2

Defined in: runtime/node-picking.ts:36


bottomRight

bottomRight: Vector2

Defined in: runtime/node-picking.ts:35


center

center: Vector2

Defined in: runtime/node-picking.ts:37


height

height: number

Defined in: runtime/node-picking.ts:45


id

id: string

Defined in: runtime/node-picking.ts:27

Per-instance id — changes on every rebuild. Use path to key across rebuilds.


opacity

opacity: number

Defined in: runtime/node-picking.ts:50

Effective alpha; 0 means the node is present but invisible.


path

path: string

Defined in: runtime/node-picking.ts:29

Structural path from the scene root ("" is the root); stable across rebuilds.


rotation

rotation: number

Defined in: runtime/node-picking.ts:47

Folded rotation (degrees clockwise) and uniform scale, camera included.


scale

scale: number

Defined in: runtime/node-picking.ts:48


topLeft

topLeft: Vector2

Defined in: runtime/node-picking.ts:33

Corners in draw order, viewport space. Rotated/scaled — not axis-aligned.


topRight

topRight: Vector2

Defined in: runtime/node-picking.ts:34


type

type: string

Defined in: runtime/node-picking.ts:31

Node class name, e.g. Rect, Text.


width

width: number

Defined in: runtime/node-picking.ts:44

Size of the box before rotation/scale, in scene units — the node's layout size for everything whose drawing fills its cell, and the ink's own extent where the two differ (see Node._localBounds; a Line reports the span of its points, not its layout rect).