Ring
pixi-wheels / index / Ring
Class: Ring
Defined in: core/Ring.ts:55
One spinning disc with its sections, pointers and skin.
A single-ring wheel is one of these under a Wheel; a wheel with an
inner and an outer ring is two, sharing the centre and the event stream.
Built by WheelBuilder; consumers reach it through wheel.main or
wheel.ring(id).
Extends#
Container
Implements#
Constructors#
Constructor#
new Ring(params: RingParams): Ring;
Defined in: core/Ring.ts:93
Parameters#
| Parameter | Type |
|---|---|
params | RingParams |
Returns#
Ring
Overrides#
Container.constructor
Properties#
| Property | Modifier | Type | Description | Defined in |
|---|---|---|---|---|
disc | readonly | Container<ContainerChild> | Rotates with the wheel. | core/Ring.ts:62 |
events | readonly | EventEmitter<WheelEvents> | - | core/Ring.ts:60 |
geometry | readonly | RingGeometry | - | core/Ring.ts:59 |
id | readonly | string | - | core/Ring.ts:56 |
idle | readonly | { get isActive(): boolean; start: (config?: IdleConfig) => void; stop: () => void; } | - | core/Ring.ts:296 |
idle.isActive | public | boolean | - | core/Ring.ts:305 |
idle.start | public | (config?: IdleConfig) => void | - | core/Ring.ts:297 |
idle.stop | public | () => void | - | core/Ring.ts:304 |
innerRadius | readonly | number | - | core/Ring.ts:58 |
outerRadius | readonly | number | - | core/Ring.ts:57 |
overlay | readonly | Container<ContainerChild> | Fixed. Pointers and static decoration. | core/Ring.ts:64 |
pointers | readonly | readonly Pointer[] | - | core/Ring.ts:65 |
skin | readonly | RingSkin | - | core/Ring.ts:66 |
Accessors#
activeSpeed#
Get Signature#
get activeSpeed(): string;
Defined in: core/Ring.ts:271
Returns
string
controller#
Get Signature#
get controller(): SpinController;
Defined in: core/Ring.ts:203
The controller, for the debug snapshot.
Returns
direction#
Get Signature#
get direction(): SpinDirection;
Defined in: core/Ring.ts:185
Returns
isDestroyed#
Get Signature#
get isDestroyed(): boolean;
Defined in: core/Ring.ts:456
Returns
boolean
Implementation of#
isSpinning#
Get Signature#
get isSpinning(): boolean;
Defined in: core/Ring.ts:193
Returns
boolean
pegs#
Get Signature#
get pegs(): ResolvedPegs | null;
Defined in: core/Ring.ts:212
The pegs the tongues touch, resolved against the current geometry. Null when the ring has none.
Returns
ResolvedPegs | null
profile#
Get Signature#
get profile(): SpinProfile;
Defined in: core/Ring.ts:275
Returns
rotationDeg#
Get Signature#
get rotationDeg(): number;
Defined in: core/Ring.ts:173
Disc rotation in degrees (clockwise positive), unbounded.
Returns
number
Set Signature#
set rotationDeg(deg: number): void;
Defined in: core/Ring.ts:177
Parameters
| Parameter | Type |
|---|---|
deg | number |
Returns
void
rotationNormalized#
Get Signature#
get rotationNormalized(): number;
Defined in: core/Ring.ts:450
Normalised rotation, 0..360.
Returns
number
sections#
Get Signature#
get sections(): readonly ResolvedSection[];
Defined in: core/Ring.ts:207
Returns
readonly ResolvedSection[]
speed#
Get Signature#
get speed(): number;
Defined in: core/Ring.ts:198
Signed angular speed of the last frame, deg/s.
Returns
number
speedNames#
Get Signature#
get speedNames(): string[];
Defined in: core/Ring.ts:267
Returns
string[]
state#
Get Signature#
get state(): SpinState;
Defined in: core/Ring.ts:189
Returns
step#
Get Signature#
get step(): number | null;
Defined in: core/Ring.ts:313
The step the ring is on, when built with .dynamic({ steps }).
Returns
number | null
stepCount#
Get Signature#
get stepCount(): number;
Defined in: core/Ring.ts:317
Returns
number
Methods#
addSpeed()#
addSpeed(name: string, profile: SpinProfile): void;
Defined in: core/Ring.ts:290
Parameters#
| Parameter | Type |
|---|---|
name | string |
profile | SpinProfile |
Returns#
void
destroy()#
destroy(): void;
Defined in: core/Ring.ts:460
Removes all internal references and listeners as well as removes children from the display list.
Do not use a Container after calling destroy.
Returns#
void
Example#
container.destroy();
container.destroy(true);
container.destroy({ children: true });
container.destroy({ children: true, texture: true, textureSource: true });
Implementation of#
Overrides#
Container.destroy
localAngleUnderPointer()#
localAngleUnderPointer(pointerId?: string): number;
Defined in: core/Ring.ts:237
The wheel-local angle under a pointer right now.
Parameters#
| Parameter | Type |
|---|---|
pointerId? | string |
Returns#
number
nextStep()#
nextStep(options?: WeightTransitionOptions): Promise<void>;
Defined in: core/Ring.ts:337
Move to the next step, wrapping around.
Parameters#
| Parameter | Type |
|---|---|
options? | WeightTransitionOptions |
Returns#
Promise<void>
requestSkip()#
requestSkip(): void;
Defined in: core/Ring.ts:257
Returns#
void
sectionUnderPointer()#
sectionUnderPointer(pointerId?: string): ResolvedSection;
Defined in: core/Ring.ts:230
The section under a pointer right now (the first pointer by default).
Parameters#
| Parameter | Type |
|---|---|
pointerId? | string |
Returns#
setResult()#
setResult(target: WheelTarget, landing?: LandingOptions): void;
Defined in: core/Ring.ts:249
Parameters#
| Parameter | Type |
|---|---|
target | WheelTarget |
landing? | LandingOptions |
Returns#
void
setSpeed()#
setSpeed(name: string): void;
Defined in: core/Ring.ts:279
Parameters#
| Parameter | Type |
|---|---|
name | string |
Returns#
void
setStep()#
setStep(index: number, options?: WeightTransitionOptions): Promise<void>;
Defined in: core/Ring.ts:325
Move to a dynamic step: apply its weights, animated by default. The promise resolves when the boundaries have finished moving.
Parameters#
| Parameter | Type |
|---|---|
index | number |
options | WeightTransitionOptions |
Returns#
Promise<void>
setWeights()#
setWeights(weights: Record<string, number>, options?: WeightTransitionOptions): Promise<void>;
Defined in: core/Ring.ts:347
Change section weights directly. Animated unless durationMs is 0.
Purely cosmetic: a spin already in flight keeps its planned landing.
Parameters#
| Parameter | Type |
|---|---|
weights | Record<string, number> |
options | WeightTransitionOptions |
Returns#
Promise<void>
skip()#
skip(): boolean;
Defined in: core/Ring.ts:253
Returns#
boolean
slamStop()#
slamStop(): void;
Defined in: core/Ring.ts:261
Returns#
void
spin()#
spin(options?: SpinOptions): Promise<WheelSpinResult>;
Defined in: core/Ring.ts:245
Parameters#
| Parameter | Type |
|---|---|
options? | SpinOptions |
Returns#
Promise<WheelSpinResult>
update()#
update(deltaMS: number): void;
Defined in: core/Ring.ts:412
Advance one frame. Called from the ticker; call directly with a fake ticker in tests.
Parameters#
| Parameter | Type |
|---|---|
deltaMS | number |
Returns#
void