ReelAxis
pixi-reels / index / ReelAxis
Interface: ReelAxis
Defined in: core/ReelAxis.ts:29
Immutable projection between screen space and a reel’s travel/cross axes.
One per reel, built by the builder and injected into ReelMotion, Reel,
and every phase. It carries no per-frame allocation on the hot path -
addMain is one property lookup and one +=. See ADR 016 sections 3.1-3.2.
The point is to keep direction (“which way is backwards for this reel”) out
of the sign of a raw delta, and orientation (“which screen axis”) out of a
hardcoded .y. Public geometry stays screen-space (see toLocal/toScreen),
so third-party ReelSymbol subclasses are unaffected.
Properties#
| Property | Modifier | Type | Description | Defined in |
|---|---|---|---|---|
crossProp | readonly | "x" | "y" | Pixi / GSAP property key for the reel-marching axis. | core/ReelAxis.ts:37 |
direction | readonly | Direction | - | core/ReelAxis.ts:31 |
feedEdge | readonly | "start" | "end" | Which strip edge new symbols enter from: ‘start’ when polarity > 0. | core/ReelAxis.ts:39 |
mainProp | readonly | "x" | "y" | Pixi / GSAP property key for the travel axis. | core/ReelAxis.ts:35 |
orientation | readonly | Orientation | - | core/ReelAxis.ts:30 |
polarity | readonly | -1 | 1 | +1 for ‘forward’, -1 for ‘reverse’. | core/ReelAxis.ts:33 |
Methods#
addMain()#
addMain(view: Container, d: number): void;
Defined in: core/ReelAxis.ts:43
Parameters#
| Parameter | Type |
|---|---|
view | Container |
d | number |
Returns#
void
getCross()#
getCross(view: Container): number;
Defined in: core/ReelAxis.ts:44
Parameters#
| Parameter | Type |
|---|---|
view | Container |
Returns#
number
getMain()#
getMain(view: Container): number;
Defined in: core/ReelAxis.ts:41
Parameters#
| Parameter | Type |
|---|---|
view | Container |
Returns#
number
setCross()#
setCross(view: Container, v: number): void;
Defined in: core/ReelAxis.ts:45
Parameters#
| Parameter | Type |
|---|---|
view | Container |
v | number |
Returns#
void
setMain()#
setMain(view: Container, v: number): void;
Defined in: core/ReelAxis.ts:42
Parameters#
| Parameter | Type |
|---|---|
view | Container |
v | number |
Returns#
void
toLocal()#
toLocal(width: number, height: number): {
cross: number;
main: number;
};
Defined in: core/ReelAxis.ts:47
Screen-space (width, height) to (cross size, main size).
Parameters#
| Parameter | Type |
|---|---|
width | number |
height | number |
Returns#
{
cross: number;
main: number;
}
| Name | Type | Defined in |
|---|---|---|
cross | number | core/ReelAxis.ts:47 |
main | number | core/ReelAxis.ts:47 |
toScreen()#
toScreen(cross: number, main: number): {
x: number;
y: number;
};
Defined in: core/ReelAxis.ts:49
(cross, main) to screen-space (x, y).
Parameters#
| Parameter | Type |
|---|---|
cross | number |
main | number |
Returns#
{
x: number;
y: number;
}
| Name | Type | Defined in |
|---|---|---|
x | number | core/ReelAxis.ts:49 |
y | number | core/ReelAxis.ts:49 |