@vuemap/vue-amap
Version:
高德地图vue3版本封装
1 lines • 3.44 kB
Source Map (JSON)
{"version":3,"file":"Tiles3D.vue2.mjs","sources":["../../../../../../packages/layer/data/Tiles3D/Tiles3D.vue"],"sourcesContent":["<template>\r\n <div />\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport {defineOptions} from 'vue';\r\nimport {useRegister} from \"../../../../mixins\";\r\nimport {buildProps} from \"../../../../utils/buildHelper\";\r\nimport {loadScript} from \"../../../../utils\";\r\n\r\ndefineOptions({\r\n name: 'ElAmapLayerTiles3d',\r\n inheritAttrs: false\r\n});\r\n\r\ndefineProps(buildProps({\r\n url: {\r\n type: String,\r\n required: true\r\n },\r\n threeScriptUrl: {\r\n type: String,\r\n default: '//a.amap.com/jsapi_demos/static/data3d/lib/three.117.js'\r\n },\r\n threeGltfLoader: {\r\n type: String,\r\n default: '//a.amap.com/jsapi_demos/static/data3d/lib/GLTFLoader.117.min.js'\r\n },\r\n layerStyle: {\r\n type: Object\r\n }\r\n}));\r\nconst emits = defineEmits(['init']);\r\n\r\nlet $amapComponent: any;\r\n\r\nconst {$$getInstance, parentInstance} = useRegister<any, AMap.Map>((options, parentComponent) => {\r\n return new Promise<any>((resolve) => {\r\n parentComponent.plugin(['AMap.3DTilesLayer'], () => {\r\n if(!window['THREE']){\r\n loadScript(options.threeScriptUrl, () => {\r\n loadScript(options.threeGltfLoader, () => {\r\n createLayer(options);\r\n resolve($amapComponent);\r\n });\r\n });\r\n }else{\r\n createLayer(options);\r\n resolve($amapComponent);\r\n }\r\n });\r\n });\r\n\r\n}, {\r\n emits,\r\n destroyComponent () {\r\n if ($amapComponent) {\r\n $amapComponent = null as any;\r\n }\r\n },\r\n});\r\n\r\nconst createLayer = (options: any) => {\r\n let layerStyle: any = {};\r\n if(options.layerStyle){\r\n layerStyle = JSON.parse(JSON.stringify(options.layerStyle));\r\n }\r\n $amapComponent = new AMap['3DTilesLayer']({\r\n map: parentInstance?.$amapComponent,\r\n url: options.url, // 3d Tiles 入口文件\r\n style: layerStyle\r\n });\r\n};\r\n\r\ndefineExpose({\r\n $$getInstance\r\n});\r\n\r\n</script>\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+BA,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAA;AAEd,IAAI,IAAA,cAAA,CAAA;AAEJ,IAAA,MAAM,EAAC,aAAe,EAAA,cAAA,KAAkB,WAA2B,CAAA,CAAC,SAAS,eAAoB,KAAA;AAC/F,MAAO,OAAA,IAAI,OAAa,CAAA,CAAC,OAAY,KAAA;AACnC,QAAA,eAAA,CAAgB,MAAO,CAAA,CAAC,mBAAmB,CAAA,EAAG,MAAM;AAClD,UAAG,IAAA,CAAC,MAAO,CAAA,OAAO,CAAE,EAAA;AAClB,YAAW,UAAA,CAAA,OAAA,CAAQ,gBAAgB,MAAM;AACvC,cAAW,UAAA,CAAA,OAAA,CAAQ,iBAAiB,MAAM;AACxC,gBAAA,WAAA,CAAY,OAAO,CAAA,CAAA;AACnB,gBAAA,OAAA,CAAQ,cAAc,CAAA,CAAA;AAAA,eACvB,CAAA,CAAA;AAAA,aACF,CAAA,CAAA;AAAA,WACE,MAAA;AACH,YAAA,WAAA,CAAY,OAAO,CAAA,CAAA;AACnB,YAAA,OAAA,CAAQ,cAAc,CAAA,CAAA;AAAA,WACxB;AAAA,SACD,CAAA,CAAA;AAAA,OACF,CAAA,CAAA;AAAA,KAEA,EAAA;AAAA,MACD,KAAA;AAAA,MACA,gBAAoB,GAAA;AAClB,QAAA,IAAI,cAAgB,EAAA;AAClB,UAAiB,cAAA,GAAA,IAAA,CAAA;AAAA,SACnB;AAAA,OACF;AAAA,KACD,CAAA,CAAA;AAED,IAAM,MAAA,WAAA,GAAc,CAAC,OAAiB,KAAA;AACpC,MAAA,IAAI,aAAkB,EAAC,CAAA;AACvB,MAAA,IAAG,QAAQ,UAAW,EAAA;AACpB,QAAA,UAAA,GAAa,KAAK,KAAM,CAAA,IAAA,CAAK,SAAU,CAAA,OAAA,CAAQ,UAAU,CAAC,CAAA,CAAA;AAAA,OAC5D;AACA,MAAiB,cAAA,GAAA,IAAI,IAAK,CAAA,cAAc,CAAE,CAAA;AAAA,QACxC,KAAK,cAAgB,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,cAAA,CAAA,cAAA;AAAA,QACrB,KAAK,OAAQ,CAAA,GAAA;AAAA;AAAA,QACb,KAAO,EAAA,UAAA;AAAA,OACR,CAAA,CAAA;AAAA,KACH,CAAA;AAEA,IAAa,QAAA,CAAA;AAAA,MACX,aAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;"}