Pointer
pixi-wheels / index / Pointer
Class: Pointer
Defined in: pointer/Pointer.ts:29
A pointer: the fixed mark a ring is read against.
Owns its skin’s view, seats it on the ring, detects the dividers that pass under it each frame (one crossing per divider, however fast the ring turns) and runs the tongue against the ring’s pegs: pushed aside as a peg comes through, carried on its crown, released into a spring. See FlapConfig for the knobs.
Implements#
Constructors#
Constructor#
new Pointer(config: PointerConfig, skin: PointerSkin): Pointer;
Defined in: pointer/Pointer.ts:45
Parameters#
| Parameter | Type |
|---|---|
config | PointerConfig |
skin | PointerSkin |
Returns#
Pointer
Properties#
| Property | Modifier | Type | Defined in |
|---|---|---|---|
angle | readonly | number | pointer/Pointer.ts:31 |
facing | readonly | PointerFacing | pointer/Pointer.ts:32 |
id | readonly | string | pointer/Pointer.ts:30 |
skin | readonly | PointerSkin | pointer/Pointer.ts:35 |
tipInset | readonly | number | pointer/Pointer.ts:33 |
view | readonly | Container<ContainerChild> | pointer/Pointer.ts:34 |
Accessors#
deflection#
Get Signature#
get deflection(): number;
Defined in: pointer/Pointer.ts:75
Current flap deflection, degrees.
Returns
number
engagedPeg#
Get Signature#
get engagedPeg(): number | null;
Defined in: pointer/Pointer.ts:80
Index into the ring’s peg angles of the peg carrying the tongue right now, or null.
Returns
number | null
flap#
Get Signature#
get flap():
| Readonly<Required<FlapConfig>>
| null;
Defined in: pointer/Pointer.ts:85
The flap settings in force, or null for a rigid pointer.
Returns
| Readonly<Required<FlapConfig>>
| null
isDestroyed#
Get Signature#
get isDestroyed(): boolean;
Defined in: pointer/Pointer.ts:212
Returns
boolean
Implementation of#
pinRadius#
Get Signature#
get pinRadius(): number;
Defined in: pointer/Pointer.ts:90
Distance from the pin to the hub, px, after layout().
Returns
number
Methods#
contactHalfWidth()#
contactHalfWidth(pegs: ResolvedPegs): number;
Defined in: pointer/Pointer.ts:95
Half the width of the contact zone at the peg ring, px: peg radius plus half the tongue tip.
Parameters#
| Parameter | Type |
|---|---|
pegs | ResolvedPegs |
Returns#
number
destroy()#
destroy(): void;
Defined in: pointer/Pointer.ts:216
Returns#
void
Implementation of#
layout()#
layout(outerRadius: number, innerRadius: number): void;
Defined in: pointer/Pointer.ts:57
Seat the view on the ring: base rotation and position from the radii.
Parameters#
| Parameter | Type |
|---|---|
outerRadius | number |
innerRadius | number |
Returns#
void
localAngle()#
localAngle(rotationDeg: number): number;
Defined in: pointer/Pointer.ts:100
The wheel-local angle under this pointer for a disc rotation.
Parameters#
| Parameter | Type |
|---|---|
rotationDeg | number |
Returns#
number
update()#
update(
prevRotation: number,
rotation: number,
dt: number,
geometry: RingGeometry,
direction: SpinDirection,
pegs?: ResolvedPegs | null
): PointerCrossing[];
Defined in: pointer/Pointer.ts:109
Advance one frame. Returns every divider that passed under the pointer
between prevRotation and rotation, in the order they passed. pegs
drives the tongue; without them a flapping pointer stays at rest.
Parameters#
| Parameter | Type | Default value |
|---|---|---|
prevRotation | number | undefined |
rotation | number | undefined |
dt | number | undefined |
geometry | RingGeometry | undefined |
direction | SpinDirection | undefined |
pegs | ResolvedPegs | null | null |