@woosh/meep-engine
Version:
Pure JavaScript game engine. Fully featured and production ready.
143 lines • 3.35 kB
TypeScript
export class TerrainOverlay {
/**
*
* @param {Vector2} size
* @constructor
*/
constructor(size: Vector2);
/**
* width is in fraction between 0 and 1, for example: 0.1 represents 10% border between tiles
* @type {Vector1}
* @readonly
*/
readonly borderWidth: Vector1;
/**
*
* @type {Vector2}
* @readonly
*/
readonly size: Vector2;
/**
*
* @type {ObservedString}
*/
tileImage: ObservedString;
/**
*
* @type {Sampler2D}
*/
sampler: Sampler2D;
texture: DataTexture;
/**
*
* @type {Context[]}
*/
stack: Context[];
/**
*
* @param {string} v
*/
set baseTileImage(v: string);
/**
*
* @returns {string}
*/
get baseTileImage(): string;
/**
* @returns {HTMLCanvasElement}
*/
get canvas(): HTMLCanvasElement;
/**
* Pushes new context onto the stack, allowing you to preserve current state for later
*/
push(): void;
/**
* Pops top context from the stack, restoring previous state
*/
pop(): void;
clear(): void;
update(): void;
/**
*
* @param {number} x
* @param {number} y
* @param {Vector4} result
*/
readPoint(x: number, y: number, result: Vector4): void;
/**
*
* @param {number} x
* @param {number} y
* @param {Vector4} vec4
*/
paintPointAlphaBlend(x: number, y: number, vec4: Vector4): void;
/**
*
* @param {number} x
* @param {number} y
*/
clearPoint(x: number, y: number): void;
/**
*
* @param {number} x
* @param {number} y
* @param {Vector4} vec4
*/
paintPoint(x: number, y: number, vec4: Vector4): void;
/**
*
* @param {Uint8Array|number[]} data
*/
writeData(data: Uint8Array | number[]): void;
/**
*
* @param {HTMLCanvasElement} image
* @param {number} dx
* @param {number} dy
* @param {number} [dWidth]
* @param {number} [dHeight]
*/
paintImage(image: HTMLCanvasElement, dx: number, dy: number, dWidth?: number, dHeight?: number): void;
/**
*
* @param {Sampler2D} source
* @param {number} dx
* @param {number} dy
* @param {number} dWidth
* @param {number} dHeight
*/
paintSampler(source: Sampler2D, dx: number, dy: number, dWidth: number, dHeight: number): void;
}
import Vector1 from "../../../../core/geom/Vector1.js";
import Vector2 from "../../../../core/geom/Vector2.js";
import ObservedString from "../../../../core/model/ObservedString.js";
import { Sampler2D } from "../../../graphics/texture/sampler/Sampler2D.js";
import { DataTexture } from "three";
declare class Context {
/**
*
* @param {Sampler2D} sampler
* @param {number} borderWidth
* @param {string} tileImage
* @constructor
*/
constructor(sampler: Sampler2D, borderWidth: number, tileImage: string);
/**
*
* @type {Sampler2D}
*/
sampler: Sampler2D;
/**
*
* @type {number}
*/
borderWidth: number;
/**
* URL of the tile image
* @type {string}
*/
tileImage: string;
}
import Vector4 from '../../../../core/geom/Vector4.js';
export {};
//# sourceMappingURL=TerrainOverlay.d.ts.map