1681-engine / pixel / PixelWindow
Class: PixelWindow ​
Defined in: src/pixel/pixel.ts:369
A grid that stands for one window of a larger picture: it is drawn on in the larger picture's coordinates and keeps only what falls inside [x0, x0 + w) × [y0, y0 + h). A ground painter can paint a crop of a map into one, so the login screen does not paint the whole of two maps to show 17 tiles of each. Every drawing method goes through px/get/inBounds/blend; outline, tint and the whole-grid helpers work in window coordinates.
Extends ​
Constructors ​
Constructor ​
new PixelWindow(
x0,
y0,
w,
h
): PixelWindow;Defined in: src/pixel/pixel.ts:370
Parameters ​
| Parameter | Type |
|---|---|
x0 | number |
y0 | number |
w | number |
h | number |
Returns ​
PixelWindow
Overrides ​
Properties ​
data ​
readonly data: Uint32Array;Defined in: src/pixel/pixel.ts:95
Inherited from ​
h ​
readonly h: number;Defined in: src/pixel/pixel.ts:99
Inherited from ​
w ​
readonly w: number;Defined in: src/pixel/pixel.ts:98
Inherited from ​
x0 ​
readonly x0: number;Defined in: src/pixel/pixel.ts:371
y0 ​
readonly y0: number;Defined in: src/pixel/pixel.ts:372
Methods ​
alphaAt() ​
alphaAt(x, y): number;Defined in: src/pixel/pixel.ts:119
Parameters ​
| Parameter | Type |
|---|---|
x | number |
y | number |
Returns ​
number
Inherited from ​
blend() ​
blend(
x,
y,
c
): void;Defined in: src/pixel/pixel.ts:391
Alpha-blends a color onto an existing pixel.
Parameters ​
| Parameter | Type |
|---|---|
x | number |
y | number |
c | number |
Returns ​
void
Overrides ​
blit() ​
blit(
src,
dx,
dy,
flipX?
): void;Defined in: src/pixel/pixel.ts:285
Parameters ​
| Parameter | Type | Default value |
|---|---|---|
src | PixelGrid | undefined |
dx | number | undefined |
dy | number | undefined |
flipX | boolean | false |
Returns ​
void
Inherited from ​
circle() ​
circle(
cx,
cy,
r,
c
): void;Defined in: src/pixel/pixel.ts:146
Parameters ​
| Parameter | Type |
|---|---|
cx | number |
cy | number |
r | number |
c | number |
Returns ​
void
Inherited from ​
clone() ​
clone(): PixelGrid;Defined in: src/pixel/pixel.ts:343
Returns ​
Inherited from ​
ellipse() ​
ellipse(
cx,
cy,
rx,
ry,
c
): void;Defined in: src/pixel/pixel.ts:136
Filled ellipse; a pixel is inside when its center lies inside the ellipse.
Parameters ​
| Parameter | Type |
|---|---|
cx | number |
cy | number |
rx | number |
ry | number |
c | number |
Returns ​
void
Inherited from ​
equals() ​
equals(other): boolean;Defined in: src/pixel/pixel.ts:327
Same size and same pixels.
Parameters ​
| Parameter | Type |
|---|---|
other | PixelGrid |
Returns ​
boolean
Inherited from ​
get() ​
get(x, y): number;Defined in: src/pixel/pixel.ts:387
Parameters ​
| Parameter | Type |
|---|---|
x | number |
y | number |
Returns ​
number
Overrides ​
hline() ​
hline(
x0,
x1,
y,
c
): void;Defined in: src/pixel/pixel.ts:127
Parameters ​
| Parameter | Type |
|---|---|
x0 | number |
x1 | number |
y | number |
c | number |
Returns ​
void
Inherited from ​
inBounds() ​
inBounds(x, y): boolean;Defined in: src/pixel/pixel.ts:379
Parameters ​
| Parameter | Type |
|---|---|
x | number |
y | number |
Returns ​
boolean
Overrides ​
key() ​
key(): number;Defined in: src/pixel/pixel.ts:334
Cheap hash of the pixels, for grouping identical frames before comparing them.
Returns ​
number
Inherited from ​
line() ​
line(
x0,
y0,
x1,
y1,
c,
thickness?
): void;Defined in: src/pixel/pixel.ts:158
Parameters ​
| Parameter | Type | Default value |
|---|---|---|
x0 | number | undefined |
y0 | number | undefined |
x1 | number | undefined |
y1 | number | undefined |
c | number | undefined |
thickness | number | 1 |
Returns ​
void
Inherited from ​
outline() ​
outline(
c,
diagonal?,
width?
): void;Defined in: src/pixel/pixel.ts:211
Adds width pixels of outline around all opaque pixels, one ring at a time — the same result as calling it width times, but each ring only visits the neighbours of the ring before it instead of the whole grid again. (A pixel next to ring k is always filled by ring k+1, so nothing further back can still be waiting.)
Parameters ​
| Parameter | Type | Default value |
|---|---|---|
c | number | undefined |
diagonal | boolean | false |
width | number | 1 |
Returns ​
void
Inherited from ​
poly() ​
poly(points, c): void;Defined in: src/pixel/pixel.ts:185
Filled polygon (even-odd scanline on pixel centers).
Parameters ​
| Parameter | Type |
|---|---|
points | [number, number][] |
c | number |
Returns ​
void
Inherited from ​
px() ​
px(
x,
y,
c
): void;Defined in: src/pixel/pixel.ts:383
Parameters ​
| Parameter | Type |
|---|---|
x | number |
y | number |
c | number |
Returns ​
void
Overrides ​
recolor() ​
recolor(from, to): void;Defined in: src/pixel/pixel.ts:271
Replaces every pixel whose color matches from.
Parameters ​
| Parameter | Type |
|---|---|
from | number |
to | number |
Returns ​
void
Inherited from ​
rect() ​
rect(
x,
y,
w,
h,
c
): void;Defined in: src/pixel/pixel.ts:123
Parameters ​
| Parameter | Type |
|---|---|
x | number |
y | number |
w | number |
h | number |
c | number |
Returns ​
void
Inherited from ​
ring() ​
ring(
cx,
cy,
r,
thickness,
c
): void;Defined in: src/pixel/pixel.ts:150
Parameters ​
| Parameter | Type |
|---|---|
cx | number |
cy | number |
r | number |
thickness | number |
c | number |
Returns ​
void
Inherited from ​
tint() ​
tint(f, pred): void;Defined in: src/pixel/pixel.ts:276
Multiplies brightness of opaque pixels matching pred.
Parameters ​
| Parameter | Type |
|---|---|
f | number |
pred | (x, y) => boolean |
Returns ​
void
Inherited from ​
toCanvas() ​
toCanvas(): HTMLCanvasElement;Defined in: src/pixel/pixel.ts:349
Returns ​
HTMLCanvasElement
Inherited from ​
upscaled() ​
upscaled(factor): PixelGrid;Defined in: src/pixel/pixel.ts:314
The same picture on a grid factor times as fine, each pixel becoming a square block.
Parameters ​
| Parameter | Type |
|---|---|
factor | number |
Returns ​
Inherited from ​
vline() ​
vline(
x,
y0,
y1,
c
): void;Defined in: src/pixel/pixel.ts:131
Parameters ​
| Parameter | Type |
|---|---|
x | number |
y0 | number |
y1 | number |
c | number |
Returns ​
void
Inherited from ​
from() ​
static from(canvas): PixelGrid;Defined in: src/pixel/pixel.ts:306
Reads a canvas back into a grid (a PNG layer of the paper doll joining the painted ones).
Parameters ​
| Parameter | Type |
|---|---|
canvas | HTMLCanvasElement |