Skip to content

Class: ParcelPuzzle ​

Defined in: puzzle/ParcelPuzzle.ts:42

Renderer-independent puzzle geometry, identity, picking and animated transforms.

Extends ​

Constructors ​

Constructor ​

ts
new ParcelPuzzle(input, options?): ParcelPuzzle;

Defined in: puzzle/ParcelPuzzle.ts:65

Parameters ​

input ​

ParcelPuzzleInput

options? ​

ParcelPuzzleOptions = {}

Returns ​

ParcelPuzzle

Overrides ​

EventEmitter.constructor

Properties ​

group ​

ts
readonly group: Group<Object3DEventMap>;

Defined in: puzzle/ParcelPuzzle.ts:43


geometry ​

ts
readonly geometry: ParcelPuzzleGeometry;

Defined in: puzzle/ParcelPuzzle.ts:44


radius ​

ts
readonly radius: number;

Defined in: puzzle/ParcelPuzzle.ts:45

Accessors ​

selectedParcelId ​

Get Signature ​

ts
get selectedParcelId(): number | null;

Defined in: puzzle/ParcelPuzzle.ts:104

Returns ​

number | null


hoveredParcelId ​

Get Signature ​

ts
get hoveredParcelId(): number | null;

Defined in: puzzle/ParcelPuzzle.ts:105

Returns ​

number | null

Methods ​

on() ​

ts
on<K>(event, listener): UnsubscribeFn;

Defined in: EventEmitter.ts:18

Type Parameters ​

K ​

K extends keyof ParcelPuzzleEvents

Parameters ​

event ​

K

listener ​

TypedEventListener<ParcelPuzzleEvents[K]>

Returns ​

UnsubscribeFn

Inherited from ​

EventEmitter.on


once() ​

ts
once<K>(event, listener): UnsubscribeFn;

Defined in: EventEmitter.ts:30

Type Parameters ​

K ​

K extends keyof ParcelPuzzleEvents

Parameters ​

event ​

K

listener ​

TypedEventListener<ParcelPuzzleEvents[K]>

Returns ​

UnsubscribeFn

Inherited from ​

EventEmitter.once


emit() ​

ts
emit<K>(event, ...args): void;

Defined in: EventEmitter.ts:41

Type Parameters ​

K ​

K extends keyof ParcelPuzzleEvents

Parameters ​

event ​

K

args ​

...EventPayloadArgs<ParcelPuzzleEvents[K]>

Returns ​

void

Inherited from ​

EventEmitter.emit


removeListener() ​

ts
removeListener<K>(event, listenerToRemove): void;

Defined in: EventEmitter.ts:60

Type Parameters ​

K ​

K extends keyof ParcelPuzzleEvents

Parameters ​

event ​

K

listenerToRemove ​

TypedEventListener<ParcelPuzzleEvents[K]>

Returns ​

void

Inherited from ​

EventEmitter.removeListener


removeAllListeners() ​

ts
removeAllListeners(event?): void;

Defined in: EventEmitter.ts:75

Parameters ​

event? ​

keyof ParcelPuzzleEvents

Returns ​

void

Inherited from ​

EventEmitter.removeAllListeners


off() ​

ts
off<K>(event, listener): void;

Defined in: EventEmitter.ts:84

Type Parameters ​

K ​

K extends keyof ParcelPuzzleEvents

Parameters ​

event ​

K

listener ​

TypedEventListener<ParcelPuzzleEvents[K]>

Returns ​

void

Inherited from ​

EventEmitter.off


getSeparation() ​

ts
getSeparation(): number;

Defined in: puzzle/ParcelPuzzle.ts:106

Returns ​

number


getRelief() ​

ts
getRelief(): number;

Defined in: puzzle/ParcelPuzzle.ts:107

Returns ​

number


getPiece() ​

ts
getPiece(id): ParcelPieceGeometry;

Defined in: puzzle/ParcelPuzzle.ts:109

Parameters ​

id ​

number

Returns ​

ParcelPieceGeometry


getParcelColor() ​

ts
getParcelColor(id): Color;

Defined in: puzzle/ParcelPuzzle.ts:110

Parameters ​

id ​

number

Returns ​

Color


getParcelRotation() ​

ts
getParcelRotation(id): Quaternion;

Defined in: puzzle/ParcelPuzzle.ts:113

Copy of the current parcel rotation, in puzzle coordinates.

Parameters ​

id ​

number

Returns ​

Quaternion


getParcelPosition() ​

ts
getParcelPosition(id): Vector3;

Defined in: puzzle/ParcelPuzzle.ts:116

Current parcel center in world coordinates; useful for screen anchors.

Parameters ​

id ​

number

Returns ​

Vector3


getParcelAnchor() ​

ts
getParcelAnchor(id): Vector3;

Defined in: puzzle/ParcelPuzzle.ts:122

Stable resting center in puzzle coordinates.

Parameters ​

id ​

number

Returns ​

Vector3


setSeparation() ​

ts
setSeparation(value): void;

Defined in: puzzle/ParcelPuzzle.ts:126

Parameters ​

value ​

number

Returns ​

void


setRelief() ​

ts
setRelief(value): void;

Defined in: puzzle/ParcelPuzzle.ts:135

Flatten locally without changing atlas identity, source area or the source mesh.

Parameters ​

value ​

number

Returns ​

void


setHoveredParcel() ​

ts
setHoveredParcel(id): void;

Defined in: puzzle/ParcelPuzzle.ts:159

Parameters ​

id ​

number | null

Returns ​

void


selectParcel() ​

ts
selectParcel(id): void;

Defined in: puzzle/ParcelPuzzle.ts:168

Parameters ​

id ​

number | null

Returns ​

void


rotateSelected() ​

ts
rotateSelected(axis, radians): void;

Defined in: puzzle/ParcelPuzzle.ts:180

Parameters ​

axis ​

Vector3

radians ​

number

Returns ​

void


resetSelectedRotation() ​

ts
resetSelectedRotation(): void;

Defined in: puzzle/ParcelPuzzle.ts:194

Returns ​

void


update() ​

ts
update(
   seconds, 
   cameraDirection, 
   immediate?
): boolean;

Defined in: puzzle/ParcelPuzzle.ts:202

Advance easing. Camera direction points from the brain toward the camera. Returns whether another frame is needed.

Parameters ​

seconds ​

number

cameraDirection ​

Vector3

immediate? ​

boolean = false

Returns ​

boolean


pick() ​

ts
pick(raycaster): number | null;

Defined in: puzzle/ParcelPuzzle.ts:245

Picking remains stable as hover pieces move. The floating selected piece takes precedence.

Parameters ​

raycaster ​

Raycaster

Returns ​

number | null


dispose() ​

ts
dispose(): void;

Defined in: puzzle/ParcelPuzzle.ts:256

Returns ​

void

Released under the MIT License.