UNPKG

openfl

Version:

A fast, productive library for 2D cross-platform development.

87 lines (70 loc) 3.42 kB
// Class: openfl.display._internal.DOMTilemap var $global = typeof window != "undefined" ? window : typeof global != "undefined" ? global : typeof self != "undefined" ? self : this $global.Object.defineProperty(exports, "__esModule", {value: true}); var __map_reserved = {}; // Imports var $hxClasses = require("./../../../hxClasses_stub").default; var $hxEnums = require("./../../../hxEnums_stub").default; var $import = require("./../../../import_stub").default; function openfl_display__$internal_DOMDisplayObject() {return require("./../../../openfl/display/_internal/DOMDisplayObject");} function openfl_geom_Matrix() {return require("./../../../openfl/geom/Matrix");} function openfl_display__$internal_CanvasDisplayObject() {return require("./../../../openfl/display/_internal/CanvasDisplayObject");} function openfl_display__$internal_CanvasTilemap() {return require("./../../../openfl/display/_internal/CanvasTilemap");} function openfl_display__$internal_DOMBitmap() {return require("./../../../openfl/display/_internal/DOMBitmap");} // Constructor var DOMTilemap = function(){} // Meta DOMTilemap.__name__ = "openfl.display._internal.DOMTilemap"; DOMTilemap.__isInterface__ = false; DOMTilemap.prototype = { }; DOMTilemap.prototype.__class__ = DOMTilemap.prototype.constructor = $hxClasses["openfl.display._internal.DOMTilemap"] = DOMTilemap; // Init // Statics DOMTilemap.clear = function(tilemap,renderer) { (openfl_display__$internal_DOMDisplayObject().default).clear(tilemap,renderer); if(tilemap.__canvas != null) { renderer.element.removeChild(tilemap.__canvas); tilemap.__canvas = null; tilemap.__style = null; } } DOMTilemap.render = function(tilemap,renderer) { if(tilemap.stage != null && tilemap.__worldVisible && tilemap.__renderable && tilemap.__group.__tiles.length > 0) { if(tilemap.__canvas == null) { tilemap.__canvas = window.document.createElement("canvas"); tilemap.__context = tilemap.__canvas.getContext("2d"); renderer.__initializeElement(tilemap,tilemap.__canvas); } tilemap.__canvas.width = tilemap.__width; tilemap.__canvas.height = tilemap.__height; renderer.__canvasRenderer.context = tilemap.__context; var cacheRenderTransform = tilemap.__renderTransform; tilemap.__renderTransform = (openfl_geom_Matrix().default).__identity; (openfl_display__$internal_CanvasDisplayObject().default).render(tilemap,renderer.__canvasRenderer); (openfl_display__$internal_CanvasTilemap().default).render(tilemap,renderer.__canvasRenderer); tilemap.__renderTransform = cacheRenderTransform; renderer.__canvasRenderer.context = null; renderer.__updateClip(tilemap); renderer.__applyStyle(tilemap,true,false,true); } else { DOMTilemap.clear(tilemap,renderer); } } DOMTilemap.renderDrawable = function(tilemap,renderer) { renderer.__updateCacheBitmap(tilemap,false); if(tilemap.__cacheBitmap != null && !tilemap.__isCacheBitmapRender) { renderer.__renderDrawableClear(tilemap); tilemap.__cacheBitmap.stage = tilemap.stage; (openfl_display__$internal_DOMBitmap().default).render(tilemap.__cacheBitmap,renderer); } else { DOMTilemap.render(tilemap,renderer); } renderer.__renderEvent(tilemap); } DOMTilemap.renderDrawableClear = function(tilemap,renderer) { DOMTilemap.clear(tilemap,renderer); } DOMTilemap.__meta__ = { obj : { SuppressWarnings : ["checkstyle:FieldDocComment"]}} // Export exports.default = DOMTilemap;