Skip to content

Intermact API Reference / @intermact/core / RegisteredCamera3D

Class: RegisteredCamera3D

Defined in: packages/core/src/scene/camera3d.ts:28

A camera registered into a Scene3D as a transform node (design.md §10.1, resolving the v0.1 deferral). It is backed by a RegisteredObject3D so its eye position + look orientation live in the seekable timeline; the renderer reads the camera node's snapshot transform each frame. Motion methods (moveTo/lookAt/orbit/dollyTo) return seekable Animations built from quaternion look-at orientation.

Constructors

Constructor

new RegisteredCamera3D(node_, props?): RegisteredCamera3D

Defined in: packages/core/src/scene/camera3d.ts:42

Parameters

node_

RegisteredObject3D

props?

Camera3DProps = {}

Returns

RegisteredCamera3D

Properties

far

far: number

Defined in: packages/core/src/scene/camera3d.ts:34


fov

fov: number

Defined in: packages/core/src/scene/camera3d.ts:32

Optics (not animated by the timeline; read by the renderer).


kind

readonly kind: "camera-3d"

Defined in: packages/core/src/scene/camera3d.ts:29


near

near: number

Defined in: packages/core/src/scene/camera3d.ts:33


projection

projection: "perspective" | "orthographic"

Defined in: packages/core/src/scene/camera3d.ts:35


zoom

zoom: number

Defined in: packages/core/src/scene/camera3d.ts:36

Accessors

id

Get Signature

get id(): string

Defined in: packages/core/src/scene/camera3d.ts:61

Id of the backing transform node (for renderer lookup).

Returns

string


node

Get Signature

get node(): RegisteredObject3D

Defined in: packages/core/src/scene/camera3d.ts:71

The backing transform node (design.md §10.1). Exposed so the camera can be parented for camera-follow: scene.setParent(camera.node, target) makes the eye position compose with the target's world transform, so the camera tracks a moving object while its local moveTo/orbit still apply.

Returns

RegisteredObject3D


position

Get Signature

get position(): AbsXYZ

Defined in: packages/core/src/scene/camera3d.ts:88

Current authoring eye position (the build-time final value, design.md §10.1). The seekable per-frame eye lives on the node's timeline; renderers read the camera node's snapshot transform, not this getter.

Returns

AbsXYZ


target

Get Signature

get target(): Vec3

Defined in: packages/core/src/scene/camera3d.ts:93

Current authoring look-at target (build-time final value; see position).

Returns

Vec3

Methods

dollyTo()

dollyTo(distance, options?): Animation

Defined in: packages/core/src/scene/camera3d.ts:115

Dolly the eye to distance units from the target along the current view direction (a seekable zoom that preserves perspective).

Parameters

distance

number

options?

TweenOptions

Returns

Animation


follow()

follow(scene, target): void

Defined in: packages/core/src/scene/camera3d.ts:76

Convenience: parent the camera under target so it tracks the target's motion.

Parameters

scene
setParent
target

RegisteredObject3D | null

Returns

void


lookAt()

lookAt(target, options?): Animation

Defined in: packages/core/src/scene/camera3d.ts:105

Re-orient the camera to look at target from the current eye.

Parameters

target

Vec3

options?

TweenOptions

Returns

Animation


moveTo()

moveTo(position, options?): Animation

Defined in: packages/core/src/scene/camera3d.ts:98

Move the eye to position, re-orienting to keep looking at the target.

Parameters

position

AbsXYZ

options?

TweenOptions

Returns

Animation


orbit()

orbit(angle, options?): Animation

Defined in: packages/core/src/scene/camera3d.ts:140

Orbit the eye around the target by angle radians about axis (default the camera up vector), keeping the look-at target fixed.

Parameters

angle

number

options?

TweenOptions & object

Returns

Animation


zoomTo()

zoomTo(distance, options?): Animation

Defined in: packages/core/src/scene/camera3d.ts:132

Alias for dollyTo: zoom in/out by repositioning the eye.

Parameters

distance

number

options?

TweenOptions

Returns

Animation

Intermact v1.0 — 文档覆盖 Phase-1 / Phase-2 / Phase-3(全阶段)