@tuoyuan/map-adapter-lib
Version:
地图适配器库
2 lines (1 loc) • 1.3 kB
JavaScript
"use strict";var a=Object.defineProperty;var h=(i,e,t)=>e in i?a(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t;var s=(i,e,t)=>h(i,typeof e!="symbol"?e+"":e,t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("./Size.js"),m=require("./Pixel.js");class o{constructor(e,t,n,l,c){s(this,"_image");s(this,"_basePlacement");s(this,"_size");s(this,"_placement");s(this,"_offset");this._basePlacement=e,this._image=t,this._size=n||new f.Size(36,36),this._offset=l,this._placement=c}get image(){return this._image}get size(){return this._size}get offset(){return this._offset}get placement(){return this._placement}getRealOffset(){const e={x:0,y:0};this._basePlacement.includes("top")&&(e.y+=.5),this._basePlacement.includes("bottom")&&(e.y-=.5),this._basePlacement.includes("left")&&(e.x+=.5),this._basePlacement.includes("right")&&(e.x-=.5),this.placement.includes("top")&&(e.y-=.5),this.placement.includes("bottom")&&(e.y+=.5),this.placement.includes("left")&&(e.x-=.5),this.placement.includes("right")&&(e.x+=.5);let t=this.size.width*e.x,n=this.size.height*e.y;return t+=this.offset.x,n+=this.offset.y,new m.Pixel(t,n)}setImage(e){this._image=e}setSize(e){this._size=e}setOffset(e){this._offset=e}setPlacement(e){this._placement=e}}exports.Icon=o;