Intermact API Reference / @intermact/core / Scene2D
Class: Scene2D
Defined in: packages/core/src/scene/scene.ts:34
Minimal 2D Scene (design.md §9.1): registration + build-pass orchestration. Composes a SceneHost for the shared registry/timeline bookkeeping and adds the 2D-specific coordinate transforms, layout, and reactive wiring (M5).
Implements
Constructors
Constructor
new Scene2D(
id,props,registries?):Scene2D
Defined in: packages/core/src/scene/scene.ts:40
Parameters
id
string
props
registries?
Registries = globalRegistries
Registry bundle for custom-animation resolution (default: global, §18).
Returns
Scene2D
Properties
coordinate
readonlycoordinate:CoordinateTransform2D
Defined in: packages/core/src/scene/scene.ts:36
id
readonlyid:string
Defined in: packages/core/src/scene/scene.ts:41
kind
readonlykind:"scene-2d"
Defined in: packages/core/src/scene/scene.ts:35
props
readonlyprops:Scene2DProps
Defined in: packages/core/src/scene/scene.ts:42
Methods
bindReactive()
bindReactive(
engine):void
Defined in: packages/core/src/scene/scene.ts:51
Attach the reactive engine used by registerReactive / addUpdater (M6).
Parameters
engine
Returns
void
buildStoryboard()
buildStoryboard():
Storyboard
Defined in: packages/core/src/scene/scene.ts:185
Finalize the accumulated timeline.
Returns
clear()
clear():
void
Defined in: packages/core/src/scene/scene.ts:177
Remove all objects.
Returns
void
commit()
commit(...
animations):void
Defined in: packages/core/src/scene/scene.ts:156
Apply immediate (duration-0) changes without a visible transition.
Parameters
animations
...Animation[]
Returns
void
free()
free(
target):void
Defined in: packages/core/src/scene/scene.ts:171
Remove an object from the scene.
Parameters
target
Returns
void
getAuthoringTransform()
getAuthoringTransform(
id):ResolvedTransform2D|undefined
Defined in: packages/core/src/scene/scene.ts:139
Authoring transform for reactive updater sync (ReactiveEngine.flush).
Parameters
id
string
Returns
ResolvedTransform2D | undefined
getAxes()
getAxes(
props,transform?):RegisteredAxes2D
Defined in: packages/core/src/scene/scene.ts:99
Create and register coordinate axes (design.md §9.1). Returns a RegisteredAxes2D so visibility and motion use the standard object animation API (fadeIn, create, moveTo, …) instead of Scene-level helpers.
Parameters
props
transform?
Transform2D = {}
Returns
getInitialStates()
getInitialStates():
ReadonlyMap<string,RuntimeState>
Defined in: packages/core/src/scene/scene.ts:200
Baseline runtime states keyed by id.
Returns
ReadonlyMap<string, RuntimeState>
getInitialStatesPristine()
getInitialStatesPristine():
ReadonlyMap<string,RuntimeState>
Defined in: packages/core/src/scene/scene.ts:209
Pristine baseline states captured at registration, before compile-time baseline patches (design.md §17 serialization). Replaying the op-log on these reproduces the post-build initial states exactly.
Returns
ReadonlyMap<string, RuntimeState>
getObjects()
getObjects():
ReadonlyMap<string,IMObject>
Defined in: packages/core/src/scene/scene.ts:195
Object definitions keyed by id (for snapshot building).
Returns
ReadonlyMap<string, IMObject>
getParents()
getParents():
ReadonlyMap<string,string>
Defined in: packages/core/src/scene/scene.ts:74
Parent links keyed by child id (for snapshot world-transform composition).
Returns
ReadonlyMap<string, string>
getTimelineOps()
getTimelineOps(): readonly
TimelineOp[]
Defined in: packages/core/src/scene/scene.ts:190
Ordered build-pass op-log for serialization (design.md §17).
Returns
readonly TimelineOp[]
marker()
marker(
name):void
Defined in: packages/core/src/scene/scene.ts:166
Place a named marker at the current cursor.
Parameters
name
string
Returns
void
parentWorldTransform()
parentWorldTransform(
id):ResolvedTransform2D
Defined in: packages/core/src/scene/scene.ts:84
LayoutHost: composed world transform of an object's parent chain.
Parameters
id
string
Returns
Implementation of
LayoutHost.parentWorldTransform
play()
play(...
animations):Promise<PlaybackResult>
Defined in: packages/core/src/scene/scene.ts:151
Build-pass: append animations in parallel and advance the cursor (§3.2).
Parameters
animations
...Animation[]
Returns
Promise<PlaybackResult>
register()
register(
object,transform?):RegisteredObject2D
Defined in: packages/core/src/scene/scene.ts:56
Register an object definition with an optional initial transform.
Parameters
object
transform?
Transform2D = {}
Returns
registerEmpty()
registerEmpty(
transform?):RegisteredObject2D
Defined in: packages/core/src/scene/scene.ts:146
Register a transform-only empty node for hierarchies.
Parameters
transform?
Transform2D = {}
Returns
registerReactive()
registerReactive(
source,transform?):RegisteredObject2D
Defined in: packages/core/src/scene/scene.ts:124
Register a reactive derived object (design.md §8.2).
Parameters
source
transform?
Transform2D = {}
Returns
relToAbs()
relToAbs(
p):AbsXY
Defined in: packages/core/src/scene/scene.ts:79
LayoutHost: normalized domain UV → absolute world point.
Parameters
p
Returns
Implementation of
replaceObject()
replaceObject(
id,object):void
Defined in: packages/core/src/scene/scene.ts:132
Replace an object's definition in-place (used by the reactive engine).
Parameters
id
string
object
Returns
void
setParent()
setParent(
child,parent):void
Defined in: packages/core/src/scene/scene.ts:69
Parent child under parent in the transform hierarchy (design.md §9.3). The Player composes world transforms at snapshot time; layout/bounds reflect the parent chain.
Parameters
child
parent
RegisteredObject2D | null
Returns
void
wait()
wait(
duration):Promise<void>
Defined in: packages/core/src/scene/scene.ts:161
Hold for duration seconds on the timeline.
Parameters
duration
number
Returns
Promise<void>