cables_dev/cables/src/core/cg/cg_canvas.js
- class CgCanvas
- {
- constructor(options)
- {
- if (!options)
- {
- console.error("CgCanvas no options");
- }
- else
- {
- this._canvasEle = options.canvasEle;
- }
-
- if (!options.cg)console.error("CgCanvas options has no cg");
- if (!options.canvasEle)console.error("CgCanvas options has no canvasEle");
-
- this._cg = options.cg;
- this.pixelDensity = 1;
- this.canvasWidth = this.canvasEle.clientWidth;
- this.canvasHeight = this.canvasEle.clientHeight;
-
- this._oldWidthRp = -1;
- this._oldHeightRp = -1;
-
- this.setSize(this.canvasWidth, this.canvasHeight);
- }
-
- get canvasEle() { return this._canvasEle; }
-
-
- setSize(w, h, ignorestyle)
- {
- if (this._oldWidthRp != w * this.pixelDensity || this._oldHeightRp != h * this.pixelDensity)
- {
- this._oldWidthRp = this.canvasEle.width = w * this.pixelDensity;
- this._oldHeightRp = this.canvasEle.height = h * this.pixelDensity;
-
- if (!ignorestyle)
- {
- this.canvasEle.style.width = w + "px";
- this.canvasEle.style.height = h + "px";
- }
-
- this.updateSize();
-
- this._cg.emitEvent("resize");
- }
- }
-
- updateSize()
- {
- this.canvasEle.width = this.canvasWidth = this.canvasEle.clientWidth * this.pixelDensity;
- this.canvasEle.height = this.canvasHeight = this.canvasEle.clientHeight * this.pixelDensity;
- }
-
- dispose()
- {
- this._canvasEle.remove();
- this._canvasEle = null;
- }
- }
-
- export { CgCanvas };