/** * a TMX Tile Set Object * @category Tilemap */ export default class TMXTileset { /** * @param {object} tileset - tileset data in JSON format ({@link http://docs.mapeditor.org/en/stable/reference/tmx-map-format/#tileset}) * @param {number} [mapTilewidth] - the map's tile grid width in pixels * @param {number} [mapTileheight] - the map's tile grid height in pixels */ constructor(tileset: object, mapTilewidth?: number, mapTileheight?: number); /** * per-tile properties indexed by gid * @type {Map} * @ignore */ tileProperties: Map; /** * per-tile images for "Collection of Image" tilesets, indexed by gid * @type {Map} * @ignore */ imageCollection: Map; /** * the first global tile ID of this tileset * @type {number} */ firstgid: number; /** * the last global tile ID of this tileset * @type {number} */ lastgid: number; /** * the tileset name * @type {string} */ name: string; /** * the width of each tile in pixels * @type {number} */ tilewidth: number; /** * the height of each tile in pixels * @type {number} */ tileheight: number; /** * the spacing between tiles in pixels * @type {number} * @default 0 */ spacing: number; /** * the margin around tiles in pixels * @type {number} * @default 0 */ margin: number; /** * tile drawing offset * @type {Vector2d} */ tileoffset: Vector2d; /** * Tileset contains animated tiles * @type {boolean} */ isAnimated: boolean; /** * true if the tileset is a "Collection of Image" Tileset * @type {boolean} */ isCollection: boolean; /** * the tileset class (since Tiled 1.9, renamed back to type on tile/object in 1.10) * @type {string} */ class: string; /** * how tiles render relative to the grid (since Tiled 1.9) * @type {string} * @default "tile" */ tilerendersize: string; /** * fill mode when tiles are not rendered at native size (since Tiled 1.9) * @type {string} * @default "stretch" */ fillmode: string; /** * the map's tile grid width (used for tilerendersize="grid") * @type {number} * @ignore */ mapTilewidth: number; /** * the map's tile grid height (used for tilerendersize="grid") * @type {number} * @ignore */ mapTileheight: number; /** * precomputed render scale for tilerendersize="grid" (spritesheet only) * @private */ private _renderScaleX; _renderScaleY: number; _renderDw: number; _renderDh: number; _renderDyOffset: number; _renderDxCenter: number; _renderDyCenter: number; /** * per-tile sub-rectangles (Tiled 1.9+), indexed by local tile id * @type {Map} * @ignore */ tileSubRects: Map; /** * Tileset animations * @private * @type {Map} */ private animations; /** * Remember the last update timestamp to prevent too many animation updates * @private */ private _lastUpdate; /** * Parse individual tile entries for animations, properties, and images. * @param {object[]|object} [tiles] - tile entries (array in JSON, object in XML) * @ignore */ _parseTiles(tiles?: object[] | object): void; /** * Initialize the texture atlas for a spritesheet tileset. * @param {object} tileset - tileset data * @ignore */ _initAtlas(tileset: object): void; image: any; texture: any; atlas: any; /** * return the tile image from a "Collection of Image" tileset * @param {number} gid * @returns {HTMLImageElement|HTMLCanvasElement|undefined} corresponding image or undefined */ getTileImage(gid: number): HTMLImageElement | HTMLCanvasElement | undefined; /** * set the tile properties * @param {number} gid - global tile ID * @param {object} prop - property object * @ignore */ setTileProperty(gid: number, prop: object): void; /** * return true if the gid belongs to the tileset * @param {number} gid * @returns {boolean} */ contains(gid: number): boolean; /** * Get the view (local) tile ID from a GID, with animations applied * @param {number} gid - Global tile ID * @returns {number} View tile ID */ getViewTileId(gid: number): number; /** * return the properties of the specified tile * @param {number} tileId - global tile ID * @returns {object|undefined} tile properties or undefined */ getTileProperties(tileId: number): object | undefined; /** * update tile animations * @param {number} dt - time delta in milliseconds * @returns {boolean} true if any animation frame changed * @ignore */ update(dt: number): boolean; /** * draw a tile at the specified position * @param {CanvasRenderer|WebGLRenderer} renderer - a renderer instance * @param {number} dx - destination x position * @param {number} dy - destination y position * @param {Tile} tmxTile - the tile object to draw * @ignore */ drawTile(renderer: CanvasRenderer | WebGLRenderer, dx: number, dy: number, tmxTile: Tile): void; } import { Vector2d } from "../../math/vector2d.ts"; //# sourceMappingURL=TMXTileset.d.ts.map