diff --git a/404.html b/404.html index db80ebb6..87a82064 100644 --- a/404.html +++ b/404.html @@ -5,11 +5,11 @@ 404 | Vue3 Baidu Map Gl - - + + - - + + @@ -22,8 +22,8 @@ -
Skip to content

404

PAGE NOT FOUND

But if you don't change your direction, and if you keep looking, you may end up where you are heading.

Released under the MIT License.

- +
+ \ No newline at end of file diff --git a/assets/app.CCmjgpae.js b/assets/app.CCmjgpae.js new file mode 100644 index 00000000..0784fa0f --- /dev/null +++ b/assets/app.CCmjgpae.js @@ -0,0 +1 @@ +import{R as i}from"./chunks/theme.-bEKLWFY.js";import{U as o,am as u,an as l,ao as c,ap as f,aq as d,ar as m,as as h,at as g,au as A,av as y,d as v,u as w,y as P,x as C,aw as R,ax as b,ay as E,aj as S}from"./chunks/framework.n6hqIsqL.js";function p(e){if(e.extends){const a=p(e.extends);return{...a,...e,async enhanceApp(t){a.enhanceApp&&await a.enhanceApp(t),e.enhanceApp&&await e.enhanceApp(t)}}}return e}const s=p(i),T=v({name:"VitePressApp",setup(){const{site:e,lang:a,dir:t}=w();return P(()=>{C(()=>{document.documentElement.lang=a.value,document.documentElement.dir=t.value})}),e.value.router.prefetchLinks&&R(),b(),E(),s.setup&&s.setup(),()=>S(s.Layout)}});async function x(){globalThis.__VITEPRESS__=!0;const e=D(),a=j();a.provide(l,e);const t=c(e.route);return a.provide(f,t),a.component("Content",d),a.component("ClientOnly",m),Object.defineProperties(a.config.globalProperties,{$frontmatter:{get(){return t.frontmatter.value}},$params:{get(){return t.page.value.params}}}),s.enhanceApp&&await s.enhanceApp({app:a,router:e,siteData:h}),{app:a,router:e,data:t}}function j(){return g(T)}function D(){let e=o,a;return A(t=>{let n=y(t),r=null;return n&&(e&&(a=n),(e||a===n)&&(n=n.replace(/\.js$/,".lean.js")),r=import(n)),o&&(e=!1),r},s.NotFound)}o&&x().then(({app:e,router:a,data:t})=>{a.go().then(()=>{u(a.route,t.site),e.mount("#app")})});export{x as createApp}; diff --git a/assets/chunks/@localSearchIndexroot.BVyFwV8F.js b/assets/chunks/@localSearchIndexroot.BVyFwV8F.js new file mode 100644 index 00000000..1b72c30f --- /dev/null +++ b/assets/chunks/@localSearchIndexroot.BVyFwV8F.js @@ -0,0 +1 @@ +const e=`{"documentCount":278,"nextId":278,"documentIds":{"0":"/vue3-baidu-map-gl/sponsor#赞助作者-☕️","1":"/vue3-baidu-map-gl/sponsor#如何赞助","2":"/vue3-baidu-map-gl/sponsor#当前赞助者","3":"/vue3-baidu-map-gl/zh-CN/components/autoComplete/#bautocomplete-自动填充","4":"/vue3-baidu-map-gl/zh-CN/components/autoComplete/#组件示例","5":"/vue3-baidu-map-gl/zh-CN/components/autoComplete/#动态组件-props","6":"/vue3-baidu-map-gl/zh-CN/components/autoComplete/#组件事件","7":"/vue3-baidu-map-gl/zh-CN/components/control/citylist#bcitylist-城市选择控件","8":"/vue3-baidu-map-gl/zh-CN/components/control/citylist#组件示例","9":"/vue3-baidu-map-gl/zh-CN/components/control/citylist#静态组件-props","10":"/vue3-baidu-map-gl/zh-CN/components/control/citylist#动态组件-props","11":"/vue3-baidu-map-gl/zh-CN/components/control/citylist#anchor","12":"/vue3-baidu-map-gl/zh-CN/components/control/citylist#组件事件","13":"/vue3-baidu-map-gl/zh-CN/components/control/context-menu#bcontextmenu-上下文菜单","14":"/vue3-baidu-map-gl/zh-CN/components/control/context-menu#组件示例","15":"/vue3-baidu-map-gl/zh-CN/components/control/context-menu#静态组件-props","16":"/vue3-baidu-map-gl/zh-CN/components/control/context-menu#动态组件-props","17":"/vue3-baidu-map-gl/zh-CN/components/control/context-menu#contextmenuitem","18":"/vue3-baidu-map-gl/zh-CN/components/control/context-menu#组件事件","19":"/vue3-baidu-map-gl/zh-CN/components/control/copyright#bcopyright-版权控件","20":"/vue3-baidu-map-gl/zh-CN/components/control/copyright#组件示例","21":"/vue3-baidu-map-gl/zh-CN/components/control/copyright#静态组件-props","22":"/vue3-baidu-map-gl/zh-CN/components/control/copyright#动态组件-props","23":"/vue3-baidu-map-gl/zh-CN/components/control/copyright#anchor","24":"/vue3-baidu-map-gl/zh-CN/components/control/copyright#组件事件","25":"/vue3-baidu-map-gl/zh-CN/components/control/custom#bcontrol-自定义控件","26":"/vue3-baidu-map-gl/zh-CN/components/control/custom#组件示例","27":"/vue3-baidu-map-gl/zh-CN/components/control/custom#静态组件-props","28":"/vue3-baidu-map-gl/zh-CN/components/control/custom#动态组件-props","29":"/vue3-baidu-map-gl/zh-CN/components/control/custom#anchor","30":"/vue3-baidu-map-gl/zh-CN/components/control/custom#组件事件","31":"/vue3-baidu-map-gl/zh-CN/components/control/location#blocation-定位控件","32":"/vue3-baidu-map-gl/zh-CN/components/control/location#组件示例","33":"/vue3-baidu-map-gl/zh-CN/components/control/location#静态组件-props","34":"/vue3-baidu-map-gl/zh-CN/components/control/location#动态组件-props","35":"/vue3-baidu-map-gl/zh-CN/components/control/location#anchor","36":"/vue3-baidu-map-gl/zh-CN/components/control/location#组件事件","37":"/vue3-baidu-map-gl/zh-CN/components/control/navigation3d#bnavigation3d-3d-视角导航控件","38":"/vue3-baidu-map-gl/zh-CN/components/control/navigation3d#组件示例","39":"/vue3-baidu-map-gl/zh-CN/components/control/navigation3d#静态组件-props","40":"/vue3-baidu-map-gl/zh-CN/components/control/navigation3d#动态组件-props","41":"/vue3-baidu-map-gl/zh-CN/components/control/navigation3d#anchor","42":"/vue3-baidu-map-gl/zh-CN/components/control/navigation3d#组件事件","43":"/vue3-baidu-map-gl/zh-CN/components/control/panorama-control#bpanoramacontrol-全景控件","44":"/vue3-baidu-map-gl/zh-CN/components/control/panorama-control#组件示例","45":"/vue3-baidu-map-gl/zh-CN/components/control/panorama-control#静态组件-props","46":"/vue3-baidu-map-gl/zh-CN/components/control/panorama-control#动态组件-props","47":"/vue3-baidu-map-gl/zh-CN/components/control/panorama-control#anchor","48":"/vue3-baidu-map-gl/zh-CN/components/control/panorama-control#组件事件","49":"/vue3-baidu-map-gl/zh-CN/components/control/scale#bscale-比例尺控件","50":"/vue3-baidu-map-gl/zh-CN/components/control/scale#组件示例","51":"/vue3-baidu-map-gl/zh-CN/components/control/scale#静态组件-props","52":"/vue3-baidu-map-gl/zh-CN/components/control/scale#动态组件-props","53":"/vue3-baidu-map-gl/zh-CN/components/control/scale#anchor","54":"/vue3-baidu-map-gl/zh-CN/components/control/scale#unit","55":"/vue3-baidu-map-gl/zh-CN/components/control/scale#组件事件","56":"/vue3-baidu-map-gl/zh-CN/components/control/zoom#bzoom-缩放控件","57":"/vue3-baidu-map-gl/zh-CN/components/control/zoom#组件示例","58":"/vue3-baidu-map-gl/zh-CN/components/control/zoom#静态组件-props","59":"/vue3-baidu-map-gl/zh-CN/components/control/zoom#动态组件-props","60":"/vue3-baidu-map-gl/zh-CN/components/control/zoom#anchor","61":"/vue3-baidu-map-gl/zh-CN/components/control/zoom#组件事件","62":"/vue3-baidu-map-gl/zh-CN/components/layer/panorama-coverage#bpanoramacoveragelayer-全景图层","63":"/vue3-baidu-map-gl/zh-CN/components/layer/panorama-coverage#组件示例","64":"/vue3-baidu-map-gl/zh-CN/components/layer/panorama-coverage#静态组件-props","65":"/vue3-baidu-map-gl/zh-CN/components/layer/panorama-coverage#anchor","66":"/vue3-baidu-map-gl/zh-CN/components/layer/panorama-coverage#组件事件","67":"/vue3-baidu-map-gl/zh-CN/components/layer/district-layer#bdistrictlayer-行政区图层","68":"/vue3-baidu-map-gl/zh-CN/components/layer/district-layer#组件示例","69":"/vue3-baidu-map-gl/zh-CN/components/layer/district-layer#静态组件-props","70":"/vue3-baidu-map-gl/zh-CN/components/layer/district-layer#动态组件-props","71":"/vue3-baidu-map-gl/zh-CN/components/layer/district-layer#districttype","72":"/vue3-baidu-map-gl/zh-CN/components/layer/district-layer#组件事件","73":"/vue3-baidu-map-gl/zh-CN/components/map#map-地图","74":"/vue3-baidu-map-gl/zh-CN/components/map#渲染地图","75":"/vue3-baidu-map-gl/zh-CN/components/map#多实例","76":"/vue3-baidu-map-gl/zh-CN/components/map#个性化地图","77":"/vue3-baidu-map-gl/zh-CN/components/map#获取资源","78":"/vue3-baidu-map-gl/zh-CN/components/map#出行主题示例","79":"/vue3-baidu-map-gl/zh-CN/components/map#赛博朋克主题示例","80":"/vue3-baidu-map-gl/zh-CN/components/map#自定义地图加载中","81":"/vue3-baidu-map-gl/zh-CN/components/map#静态组件-props","82":"/vue3-baidu-map-gl/zh-CN/components/map#动态组件-props","83":"/vue3-baidu-map-gl/zh-CN/components/map#地图类型","84":"/vue3-baidu-map-gl/zh-CN/components/map#displayoptions","85":"/vue3-baidu-map-gl/zh-CN/components/map#组件方法","86":"/vue3-baidu-map-gl/zh-CN/components/map#组件事件","87":"/vue3-baidu-map-gl/zh-CN/components/overlay/bezierCurve#bbeziercurve-折线","88":"/vue3-baidu-map-gl/zh-CN/components/overlay/bezierCurve#组件示例","89":"/vue3-baidu-map-gl/zh-CN/components/overlay/bezierCurve#动态组件-props","90":"/vue3-baidu-map-gl/zh-CN/components/overlay/bezierCurve#组件事件","91":"/vue3-baidu-map-gl/zh-CN/components/overlay/circle#bcircle-圆形","92":"/vue3-baidu-map-gl/zh-CN/components/overlay/circle#组件示例","93":"/vue3-baidu-map-gl/zh-CN/components/overlay/circle#静态组件-props","94":"/vue3-baidu-map-gl/zh-CN/components/overlay/circle#动态组件-props","95":"/vue3-baidu-map-gl/zh-CN/components/overlay/circle#组件事件","96":"/vue3-baidu-map-gl/zh-CN/components/overlay/infowindow#binfowindow-信息窗口","97":"/vue3-baidu-map-gl/zh-CN/components/overlay/infowindow#组件示例","98":"/vue3-baidu-map-gl/zh-CN/components/overlay/infowindow#静态组件-props","99":"/vue3-baidu-map-gl/zh-CN/components/overlay/infowindow#动态组件-props","100":"/vue3-baidu-map-gl/zh-CN/components/overlay/infowindow#组件事件","101":"/vue3-baidu-map-gl/zh-CN/components/overlay/ground-overlay#bgroundoverlay-地面叠加层","102":"/vue3-baidu-map-gl/zh-CN/components/overlay/ground-overlay#组件示例","103":"/vue3-baidu-map-gl/zh-CN/components/overlay/ground-overlay#动态组件-props","104":"/vue3-baidu-map-gl/zh-CN/components/overlay/ground-overlay#bounds-图示","105":"/vue3-baidu-map-gl/zh-CN/components/overlay/ground-overlay#groundoverlayurl","106":"/vue3-baidu-map-gl/zh-CN/components/overlay/ground-overlay#组件事件","107":"/vue3-baidu-map-gl/zh-CN/components/overlay/label#blabel-文本标注","108":"/vue3-baidu-map-gl/zh-CN/components/overlay/label#组件示例","109":"/vue3-baidu-map-gl/zh-CN/components/overlay/label#动态组件-props","110":"/vue3-baidu-map-gl/zh-CN/components/overlay/label#组件事件","111":"/vue3-baidu-map-gl/zh-CN/components/overlay/mapMask#bmapmask-掩膜","112":"/vue3-baidu-map-gl/zh-CN/components/overlay/mapMask#组件示例","113":"/vue3-baidu-map-gl/zh-CN/components/overlay/mapMask#动态组件-props","114":"/vue3-baidu-map-gl/zh-CN/components/overlay/mapMask#mapmaskshowregion","115":"/vue3-baidu-map-gl/zh-CN/components/overlay/mapMask#组件事件","116":"/vue3-baidu-map-gl/zh-CN/components/overlay/marker#bmarker-标注点","117":"/vue3-baidu-map-gl/zh-CN/components/overlay/marker#组件示例","118":"/vue3-baidu-map-gl/zh-CN/components/overlay/marker#静态组件-props","119":"/vue3-baidu-map-gl/zh-CN/components/overlay/marker#动态组件-props","120":"/vue3-baidu-map-gl/zh-CN/components/overlay/marker#默认图标可选值","121":"/vue3-baidu-map-gl/zh-CN/components/overlay/marker#自定义图标","122":"/vue3-baidu-map-gl/zh-CN/components/overlay/marker#组件事件","123":"/vue3-baidu-map-gl/zh-CN/components/overlay/marker3d#bmarker3d-带高度的点","124":"/vue3-baidu-map-gl/zh-CN/components/overlay/marker3d#组件示例","125":"/vue3-baidu-map-gl/zh-CN/components/overlay/marker3d#纹理贴图","126":"/vue3-baidu-map-gl/zh-CN/components/overlay/marker3d#静态组件-props","127":"/vue3-baidu-map-gl/zh-CN/components/overlay/marker3d#点形状","128":"/vue3-baidu-map-gl/zh-CN/components/overlay/marker3d#动态组件-props","129":"/vue3-baidu-map-gl/zh-CN/components/overlay/marker3d#自定义纹理贴图","130":"/vue3-baidu-map-gl/zh-CN/components/overlay/marker3d#组件事件","131":"/vue3-baidu-map-gl/zh-CN/components/overlay/polygon#bpolygon-多边形","132":"/vue3-baidu-map-gl/zh-CN/components/overlay/polygon#组件示例","133":"/vue3-baidu-map-gl/zh-CN/components/overlay/polygon#镂空面绘制-行政区域边界","134":"/vue3-baidu-map-gl/zh-CN/components/overlay/polygon#静态组件-props","135":"/vue3-baidu-map-gl/zh-CN/components/overlay/polygon#动态组件-props","136":"/vue3-baidu-map-gl/zh-CN/components/overlay/polygon#组件事件","137":"/vue3-baidu-map-gl/zh-CN/components/overlay/polyline#bpolyline-折线","138":"/vue3-baidu-map-gl/zh-CN/components/overlay/polyline#组件示例","139":"/vue3-baidu-map-gl/zh-CN/components/overlay/polyline#静态组件-props","140":"/vue3-baidu-map-gl/zh-CN/components/overlay/polyline#动态组件-props","141":"/vue3-baidu-map-gl/zh-CN/components/overlay/polyline#组件事件","142":"/vue3-baidu-map-gl/zh-CN/components/overlay/prism#bprism-3d-棱柱","143":"/vue3-baidu-map-gl/zh-CN/components/overlay/prism#示例","144":"/vue3-baidu-map-gl/zh-CN/components/overlay/prism#静态组件-props","145":"/vue3-baidu-map-gl/zh-CN/components/overlay/prism#动态组件-props","146":"/vue3-baidu-map-gl/zh-CN/components/overlay/prism#组件事件","147":"/vue3-baidu-map-gl/zh-CN/expand/bmap-draw#bmap-draw-鼠标测量与绘制","148":"/vue3-baidu-map-gl/zh-CN/expand/bmap-draw#绘制","149":"/vue3-baidu-map-gl/zh-CN/expand/bmap-draw#测量","150":"/vue3-baidu-map-gl/zh-CN/expand/mapv#mapv-可视化","151":"/vue3-baidu-map-gl/zh-CN/expand/mapv#结合方式","152":"/vue3-baidu-map-gl/zh-CN/expand/mapv#_1-通过组件库提供的插件形式-内部以-cdn-方式加载","153":"/vue3-baidu-map-gl/zh-CN/expand/mapv#_2-通过-npm","154":"/vue3-baidu-map-gl/zh-CN/expand/mapv#示例","155":"/vue3-baidu-map-gl/zh-CN/expand/mapv#pointlayer-基础点层图","156":"/vue3-baidu-map-gl/zh-CN/expand/mapv#heatgridlayer-柱状热力图","157":"/vue3-baidu-map-gl/zh-CN/expand/mapv#渲染-3d-模型","158":"/vue3-baidu-map-gl/zh-CN/guide/breaking-changes#breaking-changes","159":"/vue3-baidu-map-gl/zh-CN/guide/breaking-changes#v1-to-v2","160":"/vue3-baidu-map-gl/zh-CN/guide/com-events#全局组件事件","161":"/vue3-baidu-map-gl/zh-CN/guide/config#配置","162":"/vue3-baidu-map-gl/zh-CN/guide/config#配置方式","163":"/vue3-baidu-map-gl/zh-CN/guide/config#_1-通过全局注册配置-ak-与-插件","164":"/vue3-baidu-map-gl/zh-CN/guide/config#_2-组件-bmap-传入-props-配置","165":"/vue3-baidu-map-gl/zh-CN/guide/config#扩展插件-plugins","166":"/vue3-baidu-map-gl/zh-CN/guide/config#更换插件资源链接","167":"/vue3-baidu-map-gl/zh-CN/guide/config#自定义资源加载插件","168":"/vue3-baidu-map-gl/zh-CN/guide/faq#faq","169":"/vue3-baidu-map-gl/zh-CN/guide/faq#是否支持-vue2","170":"/vue3-baidu-map-gl/zh-CN/guide/faq#uncaught-typeerror-cannot-read-properties-of-undefined-reading-getmapinstance","171":"/vue3-baidu-map-gl/zh-CN/guide/faq#服务器打包部署后地图不显示","172":"/vue3-baidu-map-gl/zh-CN/guide/installation#安装","173":"/vue3-baidu-map-gl/zh-CN/guide/installation#使用包管理器","174":"/vue3-baidu-map-gl/zh-CN/guide/installation#浏览器直接引入","175":"/vue3-baidu-map-gl/zh-CN/guide/installation#hello-world","176":"/vue3-baidu-map-gl/zh-CN/guide/introduction#vue3-baidumap-gl","177":"/vue3-baidu-map-gl/zh-CN/guide/introduction#特性","178":"/vue3-baidu-map-gl/zh-CN/guide/introduction#环境支持","179":"/vue3-baidu-map-gl/zh-CN/guide/introduction#组件库","180":"/vue3-baidu-map-gl/zh-CN/guide/introduction#baidu-map-gl-api-兼容性","181":"/vue3-baidu-map-gl/zh-CN/guide/introduction#贡献者","182":"/vue3-baidu-map-gl/zh-CN/guide/introduction#license","183":"/vue3-baidu-map-gl/zh-CN/guide/quick-start#快速开始","184":"/vue3-baidu-map-gl/zh-CN/guide/quick-start#用法","185":"/vue3-baidu-map-gl/zh-CN/guide/quick-start#完整引入","186":"/vue3-baidu-map-gl/zh-CN/guide/quick-start#volar-支持","187":"/vue3-baidu-map-gl/zh-CN/guide/quick-start#按需导入","188":"/vue3-baidu-map-gl/zh-CN/guide/quick-start#申请-ak-密钥","189":"/vue3-baidu-map-gl/zh-CN/guide/quick-start#配置","190":"/vue3-baidu-map-gl/zh-CN/guide/quick-start#开始使用","191":"/vue3-baidu-map-gl/zh-CN/hooks/useAddressGeocoder#useaddressgeocoder","192":"/vue3-baidu-map-gl/zh-CN/hooks/useAddressGeocoder#单个地址解析","193":"/vue3-baidu-map-gl/zh-CN/hooks/useAddressGeocoder#批量解析地址","194":"/vue3-baidu-map-gl/zh-CN/hooks/useAddressGeocoder#用法","195":"/vue3-baidu-map-gl/zh-CN/hooks/useAddressGeocoder#参数","196":"/vue3-baidu-map-gl/zh-CN/hooks/useAddressGeocoder#返回值","197":"/vue3-baidu-map-gl/zh-CN/hooks/useAddressGeocoder#point","198":"/vue3-baidu-map-gl/zh-CN/hooks/useAddressGeocoder#ts-类型定义参考","199":"/vue3-baidu-map-gl/zh-CN/hooks/useAreaBoundary#useareaboundary","200":"/vue3-baidu-map-gl/zh-CN/hooks/useAreaBoundary#示例","201":"/vue3-baidu-map-gl/zh-CN/hooks/useAreaBoundary#用法","202":"/vue3-baidu-map-gl/zh-CN/hooks/useAreaBoundary#参数","203":"/vue3-baidu-map-gl/zh-CN/hooks/useAreaBoundary#返回值","204":"/vue3-baidu-map-gl/zh-CN/hooks/useAreaBoundary#代码示例","205":"/vue3-baidu-map-gl/zh-CN/hooks/useAreaBoundary#ts-类型定义参考","206":"/vue3-baidu-map-gl/zh-CN/hooks/useBrowserLocation#usebrowserlocation","207":"/vue3-baidu-map-gl/zh-CN/hooks/useBrowserLocation#示例","208":"/vue3-baidu-map-gl/zh-CN/hooks/useBrowserLocation#用法","209":"/vue3-baidu-map-gl/zh-CN/hooks/useBrowserLocation#参数","210":"/vue3-baidu-map-gl/zh-CN/hooks/useBrowserLocation#usebrowserlocationoptions","211":"/vue3-baidu-map-gl/zh-CN/hooks/useBrowserLocation#返回值","212":"/vue3-baidu-map-gl/zh-CN/hooks/useBrowserLocation#location","213":"/vue3-baidu-map-gl/zh-CN/hooks/useBrowserLocation#status","214":"/vue3-baidu-map-gl/zh-CN/hooks/useBrowserLocation#address","215":"/vue3-baidu-map-gl/zh-CN/hooks/useBrowserLocation#ts-类型定义参考","216":"/vue3-baidu-map-gl/zh-CN/hooks/useDefaultMarkerIcons#usedefaultmarkericons","217":"/vue3-baidu-map-gl/zh-CN/hooks/useDefaultMarkerIcons#用法","218":"/vue3-baidu-map-gl/zh-CN/hooks/useDefaultMarkerIcons#参数","219":"/vue3-baidu-map-gl/zh-CN/hooks/useDefaultMarkerIcons#返回值","220":"/vue3-baidu-map-gl/zh-CN/hooks/useDefaultMarkerIcons#代码示例","221":"/vue3-baidu-map-gl/zh-CN/hooks/useDefaultMarkerIcons#ts-类型定义参考","222":"/vue3-baidu-map-gl/zh-CN/hooks/useIpLocation#useiplocation","223":"/vue3-baidu-map-gl/zh-CN/hooks/useIpLocation#示例","224":"/vue3-baidu-map-gl/zh-CN/hooks/useIpLocation#用法","225":"/vue3-baidu-map-gl/zh-CN/hooks/useIpLocation#参数","226":"/vue3-baidu-map-gl/zh-CN/hooks/useIpLocation#返回值","227":"/vue3-baidu-map-gl/zh-CN/hooks/useIpLocation#ts-类型定义参考","228":"/vue3-baidu-map-gl/zh-CN/hooks/usePoint#usepoint","229":"/vue3-baidu-map-gl/zh-CN/hooks/usePoint#用法","230":"/vue3-baidu-map-gl/zh-CN/hooks/usePoint#参数","231":"/vue3-baidu-map-gl/zh-CN/hooks/usePoint#返回值","232":"/vue3-baidu-map-gl/zh-CN/hooks/usePoint#代码示例","233":"/vue3-baidu-map-gl/zh-CN/hooks/usePoint#ts-类型定义参考","234":"/vue3-baidu-map-gl/zh-CN/hooks/usePointConvertor#usepointconvertor-坐标点转换","235":"/vue3-baidu-map-gl/zh-CN/hooks/usePointConvertor#示例","236":"/vue3-baidu-map-gl/zh-CN/hooks/usePointConvertor#用法","237":"/vue3-baidu-map-gl/zh-CN/hooks/usePointConvertor#参数","238":"/vue3-baidu-map-gl/zh-CN/hooks/usePointConvertor#返回值","239":"/vue3-baidu-map-gl/zh-CN/hooks/usePointConvertor#coordinatesfromtype","240":"/vue3-baidu-map-gl/zh-CN/hooks/usePointConvertor#coordinatestotype","241":"/vue3-baidu-map-gl/zh-CN/hooks/usePointConvertor#usepointconvertorstatus","242":"/vue3-baidu-map-gl/zh-CN/hooks/usePointConvertor#代码示例","243":"/vue3-baidu-map-gl/zh-CN/hooks/usePointConvertor#ts-类型定义参考","244":"/vue3-baidu-map-gl/zh-CN/hooks/usePointGeocoder#usepointgeocoder","245":"/vue3-baidu-map-gl/zh-CN/hooks/usePointGeocoder#单个坐标点解析","246":"/vue3-baidu-map-gl/zh-CN/hooks/usePointGeocoder#批量解析坐标点","247":"/vue3-baidu-map-gl/zh-CN/hooks/usePointGeocoder#用法","248":"/vue3-baidu-map-gl/zh-CN/hooks/usePointGeocoder#参数","249":"/vue3-baidu-map-gl/zh-CN/hooks/usePointGeocoder#usepointgeocoderoptions","250":"/vue3-baidu-map-gl/zh-CN/hooks/usePointGeocoder#返回值","251":"/vue3-baidu-map-gl/zh-CN/hooks/usePointGeocoder#point","252":"/vue3-baidu-map-gl/zh-CN/hooks/usePointGeocoder#pointgeocoderresult","253":"/vue3-baidu-map-gl/zh-CN/hooks/usePointGeocoder#addresscomponent","254":"/vue3-baidu-map-gl/zh-CN/hooks/usePointGeocoder#localresultpoi","255":"/vue3-baidu-map-gl/zh-CN/hooks/usePointGeocoder#poitype","256":"/vue3-baidu-map-gl/zh-CN/hooks/usePointGeocoder#ts-类型定义参考","257":"/vue3-baidu-map-gl/zh-CN/hooks/useTrackAnimation#usetrackanimation","258":"/vue3-baidu-map-gl/zh-CN/hooks/useTrackAnimation#示例","259":"/vue3-baidu-map-gl/zh-CN/hooks/useTrackAnimation#用法","260":"/vue3-baidu-map-gl/zh-CN/hooks/useTrackAnimation#参数","261":"/vue3-baidu-map-gl/zh-CN/hooks/useTrackAnimation#trackanimationoptions","262":"/vue3-baidu-map-gl/zh-CN/hooks/useTrackAnimation#返回值","263":"/vue3-baidu-map-gl/zh-CN/hooks/useTrackAnimation#pathpoint","264":"/vue3-baidu-map-gl/zh-CN/hooks/useTrackAnimation#animationstatus","265":"/vue3-baidu-map-gl/zh-CN/hooks/useTrackAnimation#ts-类型定义参考","266":"/vue3-baidu-map-gl/zh-CN/hooks/useViewAnimation#useviewanimation","267":"/vue3-baidu-map-gl/zh-CN/hooks/useViewAnimation#示例","268":"/vue3-baidu-map-gl/zh-CN/hooks/useViewAnimation#用法","269":"/vue3-baidu-map-gl/zh-CN/hooks/useViewAnimation#参数","270":"/vue3-baidu-map-gl/zh-CN/hooks/useViewAnimation#viewanimationoptions","271":"/vue3-baidu-map-gl/zh-CN/hooks/useViewAnimation#返回值","272":"/vue3-baidu-map-gl/zh-CN/hooks/useViewAnimation#viewanimationkeyframes","273":"/vue3-baidu-map-gl/zh-CN/hooks/useViewAnimation#animationstatus","274":"/vue3-baidu-map-gl/zh-CN/hooks/useViewAnimation#事件监听","275":"/vue3-baidu-map-gl/zh-CN/hooks/useViewAnimation#faq","276":"/vue3-baidu-map-gl/zh-CN/hooks/useViewAnimation#为什么事件监听可以同步-而其他方法需要等到-setkeyframes-方法调用后才可以使用","277":"/vue3-baidu-map-gl/zh-CN/hooks/useViewAnimation#ts-类型定义参考"},"fieldIds":{"title":0,"titles":1,"text":2},"fieldLength":{"0":[2,1,12],"1":[1,2,8],"2":[1,2,20],"3":[2,1,14],"4":[1,2,3],"5":[2,2,17],"6":[1,2,29],"7":[2,1,10],"8":[1,2,16],"9":[2,2,23],"10":[2,2,11],"11":[1,2,13],"12":[1,2,13],"13":[2,1,9],"14":[1,2,4],"15":[2,2,11],"16":[2,2,16],"17":[1,2,24],"18":[1,2,27],"19":[2,1,14],"20":[1,2,8],"21":[2,2,20],"22":[2,2,11],"23":[1,2,13],"24":[1,2,13],"25":[2,1,14],"26":[1,2,3],"27":[2,2,20],"28":[2,2,11],"29":[1,2,13],"30":[1,2,13],"31":[2,1,10],"32":[1,2,3],"33":[2,2,19],"34":[2,2,11],"35":[1,2,13],"36":[1,2,19],"37":[3,1,14],"38":[1,3,3],"39":[2,3,20],"40":[2,3,11],"41":[1,3,13],"42":[1,3,13],"43":[2,1,18],"44":[1,2,5],"45":[2,2,19],"46":[2,2,11],"47":[1,2,13],"48":[1,2,13],"49":[2,1,10],"50":[1,2,3],"51":[2,2,20],"52":[2,2,17],"53":[1,2,13],"54":[1,2,9],"55":[1,2,13],"56":[2,1,10],"57":[1,2,3],"58":[2,2,20],"59":[2,2,11],"60":[1,2,13],"61":[1,2,13],"62":[2,1,18],"63":[1,2,5],"64":[2,2,19],"65":[1,2,13],"66":[1,2,13],"67":[2,1,9],"68":[1,2,3],"69":[2,2,33],"70":[2,2,11],"71":[1,2,10],"72":[1,2,19],"73":[2,1,14],"74":[1,2,3],"75":[1,2,3],"76":[1,2,21],"77":[1,3,8],"78":[1,3,3],"79":[1,3,3],"80":[1,2,61],"81":[2,2,47],"82":[2,2,100],"83":[1,2,16],"84":[1,2,37],"85":[1,2,22],"86":[1,2,91],"87":[2,1,18],"88":[1,2,3],"89":[2,2,48],"90":[1,2,36],"91":[2,1,9],"92":[1,2,3],"93":[2,2,20],"94":[2,2,58],"95":[1,2,36],"96":[2,1,20],"97":[1,2,4],"98":[2,2,16],"99":[2,2,43],"100":[1,2,23],"101":[2,1,13],"102":[1,2,3],"103":[2,2,37],"104":[2,4,1],"105":[1,4,12],"106":[1,2,30],"107":[2,1,9],"108":[1,2,3],"109":[2,2,38],"110":[1,2,36],"111":[2,1,28],"112":[1,2,3],"113":[2,2,30],"114":[1,4,16],"115":[1,2,34],"116":[2,1,9],"117":[1,2,7],"118":[2,2,23],"119":[2,2,40],"120":[1,2,31],"121":[1,2,47],"122":[1,2,47],"123":[2,1,9],"124":[1,2,4],"125":[1,2,4],"126":[2,2,21],"127":[1,2,9],"128":[2,2,37],"129":[1,2,46],"130":[1,2,36],"131":[2,1,9],"132":[1,2,4],"133":[2,2,4],"134":[2,2,24],"135":[2,2,55],"136":[1,2,36],"137":[2,1,9],"138":[1,2,3],"139":[2,2,27],"140":[2,2,49],"141":[1,2,36],"142":[3,1,15],"143":[1,3,3],"144":[2,3,14],"145":[2,3,37],"146":[1,3,36],"147":[3,1,33],"148":[1,3,4],"149":[1,3,8],"150":[2,1,15],"151":[2,2,4],"152":[6,4,29],"153":[3,4,32],"154":[1,2,12],"155":[2,3,11],"156":[2,3,11],"157":[3,3,10],"158":[2,1,1],"159":[3,2,6],"160":[1,1,15],"161":[1,1,6],"162":[1,1,25],"163":[5,2,43],"164":[4,2,9],"165":[2,1,55],"166":[1,3,20],"167":[1,3,38],"168":[1,1,1],"169":[2,1,11],"170":[10,1,6],"171":[1,1,6],"172":[1,1,1],"173":[1,1,25],"174":[1,1,62],"175":[2,1,2],"176":[3,1,18],"177":[2,3,46],"178":[1,3,1],"179":[1,4,31],"180":[5,4,19],"181":[1,3,3],"182":[1,3,3],"183":[1,1,5],"184":[1,1,1],"185":[1,2,23],"186":[2,3,17],"187":[1,2,32],"188":[3,1,12],"189":[1,1,2],"190":[1,1,6],"191":[1,1,9],"192":[1,1,27],"193":[1,1,29],"194":[1,1,18],"195":[1,2,17],"196":[1,2,35],"197":[1,3,7],"198":[2,1,38],"199":[1,1,11],"200":[1,1,4],"201":[1,1,17],"202":[1,2,12],"203":[1,2,19],"204":[1,1,27],"205":[2,1,34],"206":[1,1,42],"207":[1,1,3],"208":[1,1,20],"209":[1,2,17],"210":[1,3,30],"211":[1,2,21],"212":[1,3,14],"213":[1,3,17],"214":[1,3,17],"215":[2,1,74],"216":[1,1,16],"217":[1,1,15],"218":[1,2,2],"219":[1,2,13],"220":[1,1,26],"221":[2,1,41],"222":[1,1,12],"223":[1,1,3],"224":[1,1,17],"225":[1,2,14],"226":[1,2,21],"227":[2,1,33],"228":[1,1,13],"229":[1,1,15],"230":[1,2,2],"231":[1,2,21],"232":[1,1,32],"233":[2,1,29],"234":[2,1,9],"235":[1,2,3],"236":[1,2,18],"237":[1,3,2],"238":[1,3,25],"239":[1,3,38],"240":[1,3,22],"241":[1,3,36],"242":[1,2,32],"243":[2,2,27],"244":[1,1,9],"245":[1,1,27],"246":[1,1,28],"247":[1,1,19],"248":[1,2,19],"249":[1,3,18],"250":[1,2,24],"251":[1,3,7],"252":[1,3,19],"253":[1,4,15],"254":[1,4,33],"255":[1,4,9],"256":[2,1,57],"257":[1,1,27],"258":[1,1,3],"259":[1,1,22],"260":[1,2,15],"261":[1,3,29],"262":[1,2,29],"263":[1,3,7],"264":[1,3,12],"265":[2,1,69],"266":[1,1,30],"267":[1,1,3],"268":[1,1,21],"269":[1,2,15],"270":[1,3,26],"271":[1,2,33],"272":[1,3,23],"273":[1,3,12],"274":[1,2,25],"275":[1,1,1],"276":[5,2,11],"277":[2,1,81]},"averageFieldLength":[1.4784172661870507,1.9136690647482015,19.255395683453244],"storedFields":{"0":{"title":"赞助作者 ☕️","titles":[]},"1":{"title":"如何赞助","titles":["赞助作者 ☕️"]},"2":{"title":"当前赞助者","titles":["赞助作者 ☕️"]},"3":{"title":"BAutoComplete 自动填充","titles":[]},"4":{"title":"组件示例","titles":["BAutoComplete 自动填充"]},"5":{"title":"动态组件 Props","titles":["BAutoComplete 自动填充"]},"6":{"title":"组件事件","titles":["BAutoComplete 自动填充"]},"7":{"title":"BCityList 城市选择控件","titles":[]},"8":{"title":"组件示例","titles":["BCityList 城市选择控件"]},"9":{"title":"静态组件 Props","titles":["BCityList 城市选择控件"]},"10":{"title":"动态组件 Props","titles":["BCityList 城市选择控件"]},"11":{"title":"anchor","titles":["BCityList 城市选择控件"]},"12":{"title":"组件事件","titles":["BCityList 城市选择控件"]},"13":{"title":"BContextMenu 上下文菜单","titles":[]},"14":{"title":"组件示例","titles":["BContextMenu 上下文菜单"]},"15":{"title":"静态组件 Props","titles":["BContextMenu 上下文菜单"]},"16":{"title":"动态组件 Props","titles":["BContextMenu 上下文菜单"]},"17":{"title":"ContextMenuItem","titles":["BContextMenu 上下文菜单"]},"18":{"title":"组件事件","titles":["BContextMenu 上下文菜单"]},"19":{"title":"BCopyright 版权控件","titles":[]},"20":{"title":"组件示例","titles":["BCopyright 版权控件"]},"21":{"title":"静态组件 Props","titles":["BCopyright 版权控件"]},"22":{"title":"动态组件 Props","titles":["BCopyright 版权控件"]},"23":{"title":"anchor","titles":["BCopyright 版权控件"]},"24":{"title":"组件事件","titles":["BCopyright 版权控件"]},"25":{"title":"BControl 自定义控件","titles":[]},"26":{"title":"组件示例","titles":["BControl 自定义控件"]},"27":{"title":"静态组件 Props","titles":["BControl 自定义控件"]},"28":{"title":"动态组件 Props","titles":["BControl 自定义控件"]},"29":{"title":"anchor","titles":["BControl 自定义控件"]},"30":{"title":"组件事件","titles":["BControl 自定义控件"]},"31":{"title":"BLocation 定位控件","titles":[]},"32":{"title":"组件示例","titles":["BLocation 定位控件"]},"33":{"title":"静态组件 Props","titles":["BLocation 定位控件"]},"34":{"title":"动态组件 Props","titles":["BLocation 定位控件"]},"35":{"title":"anchor","titles":["BLocation 定位控件"]},"36":{"title":"组件事件","titles":["BLocation 定位控件"]},"37":{"title":"BNavigation3d 3D 视角导航控件","titles":[]},"38":{"title":"组件示例","titles":["BNavigation3d 3D 视角导航控件"]},"39":{"title":"静态组件 Props","titles":["BNavigation3d 3D 视角导航控件"]},"40":{"title":"动态组件 Props","titles":["BNavigation3d 3D 视角导航控件"]},"41":{"title":"anchor","titles":["BNavigation3d 3D 视角导航控件"]},"42":{"title":"组件事件","titles":["BNavigation3d 3D 视角导航控件"]},"43":{"title":"BPanoramaControl 全景控件","titles":[]},"44":{"title":"组件示例","titles":["BPanoramaControl 全景控件"]},"45":{"title":"静态组件 Props","titles":["BPanoramaControl 全景控件"]},"46":{"title":"动态组件 Props","titles":["BPanoramaControl 全景控件"]},"47":{"title":"anchor","titles":["BPanoramaControl 全景控件"]},"48":{"title":"组件事件","titles":["BPanoramaControl 全景控件"]},"49":{"title":"BScale 比例尺控件","titles":[]},"50":{"title":"组件示例","titles":["BScale 比例尺控件"]},"51":{"title":"静态组件 Props","titles":["BScale 比例尺控件"]},"52":{"title":"动态组件 Props","titles":["BScale 比例尺控件"]},"53":{"title":"anchor","titles":["BScale 比例尺控件"]},"54":{"title":"unit","titles":["BScale 比例尺控件"]},"55":{"title":"组件事件","titles":["BScale 比例尺控件"]},"56":{"title":"BZoom 缩放控件","titles":[]},"57":{"title":"组件示例","titles":["BZoom 缩放控件"]},"58":{"title":"静态组件 Props","titles":["BZoom 缩放控件"]},"59":{"title":"动态组件 Props","titles":["BZoom 缩放控件"]},"60":{"title":"anchor","titles":["BZoom 缩放控件"]},"61":{"title":"组件事件","titles":["BZoom 缩放控件"]},"62":{"title":"BPanoramaCoverageLayer 全景图层","titles":[]},"63":{"title":"组件示例","titles":["BPanoramaCoverageLayer 全景图层"]},"64":{"title":"静态组件 Props","titles":["BPanoramaCoverageLayer 全景图层"]},"65":{"title":"anchor","titles":["BPanoramaCoverageLayer 全景图层"]},"66":{"title":"组件事件","titles":["BPanoramaCoverageLayer 全景图层"]},"67":{"title":"BDistrictLayer 行政区图层","titles":[]},"68":{"title":"组件示例","titles":["BDistrictLayer 行政区图层"]},"69":{"title":"静态组件 Props","titles":["BDistrictLayer 行政区图层"]},"70":{"title":"动态组件 Props","titles":["BDistrictLayer 行政区图层"]},"71":{"title":"DistrictType","titles":["BDistrictLayer 行政区图层"]},"72":{"title":"组件事件","titles":["BDistrictLayer 行政区图层"]},"73":{"title":"Map 地图","titles":[]},"74":{"title":"渲染地图","titles":["Map 地图"]},"75":{"title":"多实例","titles":["Map 地图"]},"76":{"title":"个性化地图","titles":["Map 地图"]},"77":{"title":"获取资源","titles":["Map 地图","个性化地图"]},"78":{"title":"出行主题示例","titles":["Map 地图","个性化地图"]},"79":{"title":"赛博朋克主题示例","titles":["Map 地图","个性化地图"]},"80":{"title":"自定义地图加载中","titles":["Map 地图"]},"81":{"title":"静态组件 props","titles":["Map 地图"]},"82":{"title":"动态组件 Props","titles":["Map 地图"]},"83":{"title":"地图类型","titles":["Map 地图"]},"84":{"title":"displayOptions","titles":["Map 地图"]},"85":{"title":"组件方法","titles":["Map 地图"]},"86":{"title":"组件事件","titles":["Map 地图"]},"87":{"title":"BBezierCurve 折线","titles":[]},"88":{"title":"组件示例","titles":["BBezierCurve 折线"]},"89":{"title":"动态组件 Props","titles":["BBezierCurve 折线"]},"90":{"title":"组件事件","titles":["BBezierCurve 折线"]},"91":{"title":"BCircle 圆形","titles":[]},"92":{"title":"组件示例","titles":["BCircle 圆形"]},"93":{"title":"静态组件 Props","titles":["BCircle 圆形"]},"94":{"title":"动态组件 Props","titles":["BCircle 圆形"]},"95":{"title":"组件事件","titles":["BCircle 圆形"]},"96":{"title":"BInfoWindow 信息窗口","titles":[]},"97":{"title":"组件示例","titles":["BInfoWindow 信息窗口"]},"98":{"title":"静态组件 Props","titles":["BInfoWindow 信息窗口"]},"99":{"title":"动态组件 Props","titles":["BInfoWindow 信息窗口"]},"100":{"title":"组件事件","titles":["BInfoWindow 信息窗口"]},"101":{"title":"BGroundOverlay 地面叠加层","titles":[]},"102":{"title":"组件示例","titles":["BGroundOverlay 地面叠加层"]},"103":{"title":"动态组件 Props","titles":["BGroundOverlay 地面叠加层"]},"104":{"title":"bounds 图示","titles":["BGroundOverlay 地面叠加层","动态组件 Props"]},"105":{"title":"GroundOverlayUrl","titles":["BGroundOverlay 地面叠加层","动态组件 Props"]},"106":{"title":"组件事件","titles":["BGroundOverlay 地面叠加层"]},"107":{"title":"BLabel 文本标注","titles":[]},"108":{"title":"组件示例","titles":["BLabel 文本标注"]},"109":{"title":"动态组件 Props","titles":["BLabel 文本标注"]},"110":{"title":"组件事件","titles":["BLabel 文本标注"]},"111":{"title":"BMapMask 掩膜","titles":[]},"112":{"title":"组件示例","titles":["BMapMask 掩膜"]},"113":{"title":"动态组件 Props","titles":["BMapMask 掩膜"]},"114":{"title":"MapMaskShowRegion","titles":["BMapMask 掩膜","动态组件 Props"]},"115":{"title":"组件事件","titles":["BMapMask 掩膜"]},"116":{"title":"BMarker 标注点","titles":[]},"117":{"title":"组件示例","titles":["BMarker 标注点"]},"118":{"title":"静态组件 Props","titles":["BMarker 标注点"]},"119":{"title":"动态组件 Props","titles":["BMarker 标注点"]},"120":{"title":"默认图标可选值","titles":["BMarker 标注点"]},"121":{"title":"自定义图标","titles":["BMarker 标注点"]},"122":{"title":"组件事件","titles":["BMarker 标注点"]},"123":{"title":"BMarker3d 带高度的点","titles":[]},"124":{"title":"组件示例","titles":["BMarker3d 带高度的点"]},"125":{"title":"纹理贴图","titles":["BMarker3d 带高度的点"]},"126":{"title":"静态组件 Props","titles":["BMarker3d 带高度的点"]},"127":{"title":"点形状","titles":["BMarker3d 带高度的点"]},"128":{"title":"动态组件 Props","titles":["BMarker3d 带高度的点"]},"129":{"title":"自定义纹理贴图","titles":["BMarker3d 带高度的点"]},"130":{"title":"组件事件","titles":["BMarker3d 带高度的点"]},"131":{"title":"BPolygon 多边形","titles":[]},"132":{"title":"组件示例","titles":["BPolygon 多边形"]},"133":{"title":"镂空面绘制 / 行政区域边界","titles":["BPolygon 多边形"]},"134":{"title":"静态组件 Props","titles":["BPolygon 多边形"]},"135":{"title":"动态组件 Props","titles":["BPolygon 多边形"]},"136":{"title":"组件事件","titles":["BPolygon 多边形"]},"137":{"title":"BPolyline 折线","titles":[]},"138":{"title":"组件示例","titles":["BPolyline 折线"]},"139":{"title":"静态组件 Props","titles":["BPolyline 折线"]},"140":{"title":"动态组件 Props","titles":["BPolyline 折线"]},"141":{"title":"组件事件","titles":["BPolyline 折线"]},"142":{"title":"BPrism 3d 棱柱","titles":[]},"143":{"title":"示例","titles":["BPrism 3d 棱柱"]},"144":{"title":"静态组件 Props","titles":["BPrism 3d 棱柱"]},"145":{"title":"动态组件 Props","titles":["BPrism 3d 棱柱"]},"146":{"title":"组件事件","titles":["BPrism 3d 棱柱"]},"147":{"title":"bmap-draw 鼠标测量与绘制","titles":[]},"148":{"title":"绘制","titles":["bmap-draw 鼠标测量与绘制"]},"149":{"title":"测量","titles":["bmap-draw 鼠标测量与绘制"]},"150":{"title":"mapv 可视化","titles":[]},"151":{"title":"结合方式:","titles":["mapv 可视化"]},"152":{"title":"1. 通过组件库提供的插件形式(内部以 cdn 方式加载)","titles":["mapv 可视化","结合方式:"]},"153":{"title":"2. 通过 npm","titles":["mapv 可视化","结合方式:"]},"154":{"title":"示例","titles":["mapv 可视化"]},"155":{"title":"PointLayer 基础点层图","titles":["mapv 可视化","示例"]},"156":{"title":"HeatGridLayer 柱状热力图","titles":["mapv 可视化","示例"]},"157":{"title":"渲染 3d 模型","titles":["mapv 可视化","示例"]},"158":{"title":"Breaking Changes","titles":[]},"159":{"title":"v1 to v2","titles":["Breaking Changes"]},"160":{"title":"全局组件事件","titles":[]},"161":{"title":"配置","titles":[]},"162":{"title":"配置方式","titles":["配置"]},"163":{"title":"1. 通过全局注册配置 ak 与 插件","titles":["配置","配置方式"]},"164":{"title":"2. 组件 BMap 传入","titles":["配置","配置方式"]},"165":{"title":"扩展插件 plugins","titles":["配置"]},"166":{"title":"更换插件资源链接","titles":["配置","扩展插件 plugins"]},"167":{"title":"自定义资源加载插件","titles":["配置","扩展插件 plugins"]},"168":{"title":"FAQ","titles":[]},"169":{"title":"是否支持 vue2","titles":["FAQ"]},"170":{"title":"Uncaught TypeError: Cannot read properties of undefined (reading 'getMapInstance')","titles":["FAQ"]},"171":{"title":"服务器打包部署后地图不显示","titles":["FAQ"]},"172":{"title":"安装","titles":[]},"173":{"title":"使用包管理器","titles":["安装"]},"174":{"title":"浏览器直接引入","titles":["安装"]},"175":{"title":"Hello World","titles":["安装"]},"176":{"title":"Vue3 BaiduMap Gl","titles":[]},"177":{"title":"✨ 特性","titles":["Vue3 BaiduMap Gl"]},"178":{"title":"环境支持","titles":["Vue3 BaiduMap Gl"]},"179":{"title":"组件库","titles":["Vue3 BaiduMap Gl","环境支持"]},"180":{"title":"Baidu Map GL Api 兼容性","titles":["Vue3 BaiduMap Gl","环境支持"]},"181":{"title":"贡献者","titles":["Vue3 BaiduMap Gl"]},"182":{"title":"License","titles":["Vue3 BaiduMap Gl"]},"183":{"title":"快速开始","titles":[]},"184":{"title":"用法","titles":["快速开始"]},"185":{"title":"完整引入","titles":["快速开始","用法"]},"186":{"title":"Volar 支持","titles":["快速开始","用法","完整引入"]},"187":{"title":"按需导入","titles":["快速开始","用法"]},"188":{"title":"申请 ak 密钥","titles":["快速开始"]},"189":{"title":"配置","titles":["快速开始"]},"190":{"title":"开始使用","titles":["快速开始"]},"191":{"title":"useAddressGeocoder","titles":[]},"192":{"title":"单个地址解析","titles":["useAddressGeocoder"]},"193":{"title":"批量解析地址","titles":["useAddressGeocoder"]},"194":{"title":"用法","titles":["useAddressGeocoder"]},"195":{"title":"参数","titles":["useAddressGeocoder","用法"]},"196":{"title":"返回值","titles":["useAddressGeocoder","用法"]},"197":{"title":"Point","titles":["useAddressGeocoder","用法","返回值"]},"198":{"title":"TS 类型定义参考","titles":["useAddressGeocoder"]},"199":{"title":"useAreaBoundary","titles":[]},"200":{"title":"示例","titles":["useAreaBoundary"]},"201":{"title":"用法","titles":["useAreaBoundary"]},"202":{"title":"参数","titles":["useAreaBoundary","用法"]},"203":{"title":"返回值","titles":["useAreaBoundary","用法"]},"204":{"title":"代码示例","titles":["useAreaBoundary"]},"205":{"title":"TS 类型定义参考","titles":["useAreaBoundary"]},"206":{"title":"useBrowserLocation","titles":[]},"207":{"title":"示例","titles":["useBrowserLocation"]},"208":{"title":"用法","titles":["useBrowserLocation"]},"209":{"title":"参数","titles":["useBrowserLocation","用法"]},"210":{"title":"UseBrowserLocationOptions","titles":["useBrowserLocation","用法","参数"]},"211":{"title":"返回值","titles":["useBrowserLocation","用法"]},"212":{"title":"Location","titles":["useBrowserLocation","用法","返回值"]},"213":{"title":"Status","titles":["useBrowserLocation","用法","返回值"]},"214":{"title":"Address","titles":["useBrowserLocation","用法","返回值"]},"215":{"title":"TS 类型定义参考","titles":["useBrowserLocation"]},"216":{"title":"useDefaultMarkerIcons","titles":[]},"217":{"title":"用法","titles":["useDefaultMarkerIcons"]},"218":{"title":"参数","titles":["useDefaultMarkerIcons","用法"]},"219":{"title":"返回值","titles":["useDefaultMarkerIcons","用法"]},"220":{"title":"代码示例","titles":["useDefaultMarkerIcons"]},"221":{"title":"TS 类型定义参考","titles":["useDefaultMarkerIcons"]},"222":{"title":"useIpLocation","titles":[]},"223":{"title":"示例","titles":["useIpLocation"]},"224":{"title":"用法","titles":["useIpLocation"]},"225":{"title":"参数","titles":["useIpLocation","用法"]},"226":{"title":"返回值","titles":["useIpLocation","用法"]},"227":{"title":"TS 类型定义参考","titles":["useIpLocation"]},"228":{"title":"usePoint","titles":[]},"229":{"title":"用法","titles":["usePoint"]},"230":{"title":"参数","titles":["usePoint","用法"]},"231":{"title":"返回值","titles":["usePoint","用法"]},"232":{"title":"代码示例","titles":["usePoint"]},"233":{"title":"TS 类型定义参考","titles":["usePoint"]},"234":{"title":"usePointConvertor 坐标点转换","titles":[]},"235":{"title":"示例","titles":["usePointConvertor 坐标点转换"]},"236":{"title":"用法","titles":["usePointConvertor 坐标点转换"]},"237":{"title":"参数","titles":["usePointConvertor 坐标点转换","用法"]},"238":{"title":"返回值","titles":["usePointConvertor 坐标点转换","用法"]},"239":{"title":"CoordinatesFromType","titles":["usePointConvertor 坐标点转换","用法"]},"240":{"title":"CoordinatesToType","titles":["usePointConvertor 坐标点转换","用法"]},"241":{"title":"UsePointConvertorStatus","titles":["usePointConvertor 坐标点转换","用法"]},"242":{"title":"代码示例","titles":["usePointConvertor 坐标点转换"]},"243":{"title":"TS 类型定义参考","titles":["usePointConvertor 坐标点转换"]},"244":{"title":"usePointGeocoder","titles":[]},"245":{"title":"单个坐标点解析","titles":["usePointGeocoder"]},"246":{"title":"批量解析坐标点","titles":["usePointGeocoder"]},"247":{"title":"用法","titles":["usePointGeocoder"]},"248":{"title":"参数","titles":["usePointGeocoder","用法"]},"249":{"title":"UsePointGeocoderOptions","titles":["usePointGeocoder","用法","参数"]},"250":{"title":"返回值","titles":["usePointGeocoder","用法"]},"251":{"title":"Point","titles":["usePointGeocoder","用法","返回值"]},"252":{"title":"PointGeocoderResult","titles":["usePointGeocoder","用法","返回值"]},"253":{"title":"AddressComponent","titles":["usePointGeocoder","用法","返回值","PointGeocoderResult"]},"254":{"title":"LocalResultPoi","titles":["usePointGeocoder","用法","返回值","PointGeocoderResult"]},"255":{"title":"PoiType","titles":["usePointGeocoder","用法","返回值","PointGeocoderResult"]},"256":{"title":"TS 类型定义参考","titles":["usePointGeocoder"]},"257":{"title":"useTrackAnimation","titles":[]},"258":{"title":"示例","titles":["useTrackAnimation"]},"259":{"title":"用法","titles":["useTrackAnimation"]},"260":{"title":"参数","titles":["useTrackAnimation","用法"]},"261":{"title":"TrackAnimationOptions","titles":["useTrackAnimation","用法","参数"]},"262":{"title":"返回值","titles":["useTrackAnimation","用法"]},"263":{"title":"PathPoint","titles":["useTrackAnimation","用法","返回值"]},"264":{"title":"AnimationStatus","titles":["useTrackAnimation","用法","返回值"]},"265":{"title":"TS 类型定义参考","titles":["useTrackAnimation"]},"266":{"title":"useViewAnimation","titles":[]},"267":{"title":"示例","titles":["useViewAnimation"]},"268":{"title":"用法","titles":["useViewAnimation"]},"269":{"title":"参数","titles":["useViewAnimation","用法"]},"270":{"title":"ViewAnimationOptions","titles":["useViewAnimation","用法","参数"]},"271":{"title":"返回值","titles":["useViewAnimation","用法"]},"272":{"title":"ViewAnimationKeyFrames","titles":["useViewAnimation","用法","返回值"]},"273":{"title":"AnimationStatus","titles":["useViewAnimation","用法","返回值"]},"274":{"title":"事件监听","titles":["useViewAnimation","用法"]},"275":{"title":"FAQ","titles":["useViewAnimation"]},"276":{"title":"为什么事件监听可以同步,而其他方法需要等到 setKeyFrames 方法调用后才可以使用 ?","titles":["useViewAnimation","FAQ"]},"277":{"title":"TS 类型定义参考","titles":["useViewAnimation"]}},"dirtCount":0,"index":[["再由内部添加监听到视角动画实例上",{"2":{"276":1}}],["等到setkeyframes方法调用后",{"2":{"276":1}}],["先缓存了视角动画初始化前的事件监听",{"2":{"276":1}}],["之所以事件监听可以同步",{"2":{"276":1}}],["最后一次循环结束时不触发",{"2":{"274":1}}],["次时",{"2":{"274":1}}],["后触发",{"2":{"274":1}}],["即可通过viewanimation返回值来添加事件监听",{"2":{"274":1}}],["即高德地图",{"2":{"239":1,"240":1}}],["\\t动画持续时间",{"2":{"277":1}}],["\\t动画开始延迟时间",{"2":{"277":1}}],["\\t表示当前关键帧处于动画过程的百分比",{"2":{"272":1,"277":1}}],["\\t地图旋转角度",{"2":{"272":1,"277":1}}],["\\t地图倾斜角度",{"2":{"272":1,"277":1}}],["\\t地图缩放级别",{"2":{"272":1,"277":1}}],["\\t地图中心点",{"2":{"272":1,"277":1}}],["循环次数",{"2":{"270":1,"277":1}}],["出现视野中看不到地图的现象",{"2":{"266":1}}],["出行主题示例",{"0":{"78":1}}],["就已经进入下一帧的播放",{"2":{"266":1}}],["否则会导致当前帧的资源还未加载完毕",{"2":{"266":1}}],["其次",{"2":{"266":1}}],["其余图标可根据下图自行定位裁切",{"2":{"120":1}}],["过渡动画效果",{"2":{"266":1}}],["继续播放动画",{"2":{"265":1}}],["继续播放动画函数",{"2":{"262":1,"271":1}}],["轨迹动画配置",{"2":{"265":1}}],["轨迹动画",{"2":{"265":1}}],["暂停动画",{"2":{"265":1}}],["暂停动画函数",{"2":{"262":1,"271":1}}],["暂停中",{"2":{"264":1,"273":1}}],["播放中",{"2":{"264":1,"273":1}}],["取消动画",{"2":{"265":1}}],["取消动画函数",{"2":{"262":1,"271":1}}],["取值范围0~1",{"2":{"272":1,"277":1}}],["取值范围",{"2":{"99":2,"249":1}}],["调整地图到能看到整个轨迹的视野",{"2":{"261":1,"265":1}}],["调用useviewanimation后",{"2":{"274":1}}],["调用",{"2":{"231":1}}],["调用方法时会触发此事件",{"2":{"86":1}}],["调用的方法",{"2":{"6":1,"12":1,"18":1,"24":1,"30":1,"36":1,"42":1,"48":1,"55":1,"61":1,"66":1,"72":1,"90":1,"95":1,"100":1,"106":1,"110":1,"115":1,"122":1,"130":1,"136":1,"141":1,"146":1}}],["动画中途被终止时触发",{"2":{"274":1}}],["动画结束时触发",{"2":{"274":1}}],["动画开始时触发",{"2":{"274":1}}],["动画开始延迟",{"2":{"261":1,"265":1,"270":1}}],["动画播放时禁止鼠标拖动",{"2":{"270":1,"277":1}}],["动画",{"2":{"266":1}}],["动画状态",{"2":{"262":1,"265":1,"271":1}}],["动画持续时常",{"2":{"261":1,"265":1,"270":1}}],["动态组件",{"0":{"5":1,"10":1,"16":1,"22":1,"28":1,"34":1,"40":1,"46":1,"52":1,"59":1,"70":1,"82":1,"89":1,"94":1,"99":1,"103":1,"109":1,"113":1,"119":1,"128":1,"135":1,"140":1,"145":1},"1":{"104":1,"105":1,"114":1}}],["初始化路径后",{"2":{"259":1}}],["初始地图的中心点需要设置到掩膜区域内",{"2":{"111":1}}],["属于正常现象",{"2":{"257":1,"266":1}}],["属性值",{"2":{"98":1}}],["属性",{"2":{"5":1,"9":1,"10":1,"15":1,"16":1,"17":1,"21":1,"22":1,"27":1,"28":1,"33":1,"34":1,"39":1,"40":1,"45":1,"46":1,"51":1,"52":1,"58":1,"59":1,"64":1,"69":1,"70":1,"81":1,"82":1,"84":1,"89":1,"93":1,"94":1,"98":1,"99":1,"100":1,"103":1,"109":1,"113":1,"118":1,"119":1,"121":3,"126":1,"127":1,"128":1,"129":2,"134":1,"135":1,"139":1,"140":1,"144":1,"145":1,"163":1,"210":1,"212":1,"214":1,"249":1,"252":1,"253":1,"254":1,"261":1,"270":1}}],["刚开始播放动画时画面可能会卡顿",{"2":{"257":1,"266":1}}],["数据资源是随着当前方位和坐标的改变而实时加载的",{"2":{"257":1,"266":1}}],["数组中首个元素表示地面颜色",{"2":{"84":1}}],["数组",{"2":{"81":1}}],["前",{"2":{"257":1}}],["前缀",{"2":{"159":1}}],["公交车站位置点",{"2":{"255":1}}],["公尺",{"2":{"54":1}}],["餐馆等",{"2":{"254":1}}],["邮政编码",{"2":{"254":1}}],["电话",{"2":{"254":1}}],["注册",{"2":{"257":1}}],["注",{"2":{"254":1}}],["注意",{"2":{"83":1,"111":1,"147":1,"153":1,"206":1,"257":1,"266":1}}],["门牌号码",{"2":{"253":1}}],["代表此点所属的商圈",{"2":{"252":1,"256":1}}],["代码示例",{"0":{"204":1,"220":1,"232":1,"242":1}}],["商圈字段",{"2":{"252":1,"256":1}}],["结果的名称标题",{"2":{"254":1}}],["结构化的地址描述",{"2":{"252":1,"256":1}}],["结合方式",{"0":{"151":1},"1":{"152":1,"153":1}}],["米",{"2":{"249":1}}],["附近的poi点",{"2":{"256":1}}],["附近的",{"2":{"252":1}}],["附近",{"2":{"249":1}}],["解析配置",{"2":{"248":1}}],["解决",{"2":{"121":1,"129":1}}],["超过限制",{"2":{"241":1}}],["超时事件",{"2":{"215":1}}],["超时时间",{"2":{"210":1}}],["个",{"2":{"249":1}}],["个数非法",{"2":{"241":1}}],["个性化地图样式",{"2":{"82":2}}],["个性化地图",{"0":{"76":1},"1":{"77":1,"78":1,"79":1}}],["非法",{"2":{"241":2}}],["非常感谢您的支持",{"2":{"1":1}}],["坐标点",{"2":{"252":1,"256":1}}],["坐标点解析结果",{"2":{"250":1}}],["坐标点转换",{"0":{"234":1},"1":{"235":1,"236":1,"237":1,"238":1,"239":1,"240":1,"241":1,"242":1,"243":1}}],["坐标",{"2":{"241":1}}],["转换失败",{"2":{"241":1}}],["服务请求正常召回",{"2":{"241":1}}],["服务器打包部署后地图不显示",{"0":{"171":1}}],["正常",{"2":{"241":1}}],["正方形",{"2":{"127":1}}],["会拒绝响应",{"2":{"241":1}}],["会优先就近原则",{"2":{"162":1}}],["警告",{"2":{"241":1}}],["谷歌坐标和mapabc等地图使用的坐标",{"2":{"239":1,"240":1}}],["腾讯地图",{"2":{"239":1,"240":1}}],["火星坐标对应的墨卡托平面坐标",{"2":{"239":1}}],["火星坐标",{"2":{"239":1,"240":1}}],["搜狗地图坐标",{"2":{"239":1}}],["原坐标类型",{"2":{"239":1}}],["目标坐标类型",{"2":{"240":1}}],["目标坐标点数组",{"2":{"238":1}}],["目前只支持",{"2":{"169":1}}],["目前支持两种方式",{"2":{"162":1}}],["目前这个组件所使用的百度地图",{"2":{"3":1}}],["4",{"2":{"239":1,"241":1}}],["40",{"2":{"232":1,"242":1}}],["424333",{"2":{"82":1}}],["42b883",{"2":{"80":1}}],["无需等待setkeyframes方法调用",{"2":{"274":1}}],["无限循环",{"2":{"270":1,"277":1}}],["无",{"2":{"218":1,"230":1,"237":1}}],["无法直接复制使用",{"2":{"76":1}}],["且开启了定位sdk辅助定位功能后生效",{"2":{"215":1}}],["街道名称",{"2":{"253":1}}],["街道",{"2":{"214":1}}],["省份名称",{"2":{"253":1}}],["省份",{"2":{"214":1}}],["省级",{"2":{"71":1}}],["城市名称",{"2":{"253":1}}],["城市",{"2":{"214":3}}],["城市选择控件",{"0":{"7":1},"1":{"8":1,"9":1,"10":1,"11":1,"12":1}}],["国家",{"2":{"214":1}}],["没有权限",{"2":{"213":1}}],["没有使用",{"2":{"121":1,"129":1}}],["经纬度点",{"2":{"212":1}}],["允许返回指定事件内的缓存结果",{"2":{"210":1,"215":1}}],["允许地图可被鼠标滚轮缩放",{"2":{"82":1}}],["页面",{"2":{"210":1}}],["适用于安卓",{"2":{"210":1}}],["进行辅助",{"2":{"206":1}}],["安卓",{"2":{"206":1}}],["安装",{"0":{"172":1},"1":{"173":1,"174":1,"175":1},"2":{"153":1,"173":1}}],["询问后方可获取精确的定位",{"2":{"206":1}}],["系统浏览器默认关闭位置请求",{"2":{"206":1}}],["有时候飘半个中国",{"2":{"206":1}}],["有时候很精准",{"2":{"206":1}}],["有效",{"2":{"121":1,"129":1}}],["但稳定性并不高",{"2":{"206":1}}],["但可能还在载入地图图块",{"2":{"86":1}}],["相比ip",{"2":{"206":1}}],["相关库",{"2":{"153":1}}],["相关资源结合有如下两种方式",{"2":{"151":1}}],["相关资源",{"2":{"150":1}}],["相关构造函数",{"2":{"147":1}}],["辅助定位",{"2":{"206":1,"210":1}}],["根据数据部分提供",{"2":{"254":4}}],["根据法律规定",{"2":{"241":1}}],["根据用户",{"2":{"222":1}}],["根据浏览器原生定位或者结合安卓定位",{"2":{"206":1}}],["根据地图",{"2":{"25":1}}],["由坐标点解析地址信息",{"2":{"244":1}}],["由地址解析坐标点",{"2":{"198":1,"256":1}}],["由于在渲染动画时",{"2":{"257":1,"266":1}}],["由于浏览器原生定位成功率并不高",{"2":{"206":1}}],["由于",{"2":{"179":1,"206":1}}],["为什么事件监听可以同步",{"0":{"276":1}}],["为",{"2":{"262":1,"271":1}}],["为了减少加载数据资源的性能损耗",{"2":{"257":1,"266":1}}],["为保证定位成功率和精度",{"2":{"206":1}}],["为数组",{"2":{"196":1}}],["为实线",{"2":{"89":1,"94":1,"135":1,"140":1}}],["批量解析坐标点",{"0":{"246":1}}],["批量解析时",{"2":{"196":1}}],["批量解析地址时",{"2":{"196":1}}],["批量解析地址",{"0":{"193":1}}],["参考",{"2":{"216":1}}],["参考配置",{"2":{"189":1}}],["参数为",{"2":{"270":1,"277":1}}],["参数类型为数字时循环固定次数",{"2":{"270":1,"277":1}}],["参数错误",{"2":{"241":1}}],["参数",{"0":{"195":1,"202":1,"209":1,"218":1,"225":1,"230":1,"237":1,"248":1,"260":1,"269":1},"1":{"210":1,"249":1,"261":1,"270":1},"2":{"195":1,"196":1,"202":1,"209":1,"225":1,"248":1,"260":1,"269":1,"274":1}}],["依赖于",{"2":{"194":1,"201":1,"208":1,"217":1,"224":1,"229":1,"236":1,"247":1,"259":1,"268":1}}],["内部做了处理",{"2":{"276":1}}],["内部可推断result为可推断为pointgeocoderresult",{"2":{"246":1}}],["内部可推断point为可推断为point",{"2":{"193":1}}],["内部错误",{"2":{"241":1}}],["内部以",{"0":{"152":1}}],["官方密钥",{"2":{"188":1}}],["官方示例",{"2":{"154":1}}],["详细请阅读下面两个链接的内容",{"2":{"188":1}}],["详见",{"2":{"82":3,"210":1}}],["才可调用",{"2":{"262":1,"271":1}}],["才可以使用",{"2":{"43":1,"62":1}}],["才能正确的渲染地图",{"2":{"188":1}}],["密钥后",{"2":{"188":1}}],["密钥",{"0":{"188":1},"2":{"188":1}}],["申请开发者密钥",{"2":{"188":1}}],["申请指引",{"2":{"188":1}}],["申请",{"0":{"188":1}}],["功能",{"2":{"187":1}}],["按需导入",{"0":{"187":1}}],["来指定全局组件类型",{"2":{"186":1}}],["那么可以在",{"2":{"186":1}}],["那么使用完整导入会更方便",{"2":{"185":1}}],["那么ak",{"2":{"162":1}}],["失去",{"2":{"185":1}}],["用于展示地图的",{"2":{"266":1}}],["用于将其他坐标系的坐标转换为百度坐标",{"2":{"234":1}}],["用于获取用户所在的城市位置信息",{"2":{"206":1,"222":1}}],["用法",{"0":{"184":1,"194":1,"201":1,"208":1,"217":1,"224":1,"229":1,"236":1,"247":1,"259":1,"268":1},"1":{"185":1,"186":1,"187":1,"195":1,"196":1,"197":1,"202":1,"203":1,"209":1,"210":1,"211":1,"212":1,"213":1,"214":1,"218":1,"219":1,"225":1,"226":1,"230":1,"231":1,"237":1,"238":1,"239":1,"240":1,"241":1,"248":1,"249":1,"250":1,"251":1,"252":1,"253":1,"254":1,"255":1,"260":1,"261":1,"262":1,"263":1,"264":1,"269":1,"270":1,"271":1,"272":1,"273":1,"274":1}}],["用户请移步",{"2":{"169":1}}],["用户可以拖拽地图从不同的角度浏览真实的街景效果",{"2":{"43":1,"62":1}}],["本节将介绍如何在项目中使用",{"2":{"183":1}}],["本章节将为你讲述如何配置",{"2":{"161":1}}],["本章节将演示一下通过插件的形式和",{"2":{"150":1}}],["快速开始",{"0":{"183":1},"1":{"184":1,"185":1,"186":1,"187":1,"188":1,"189":1,"190":1}}],["快抢沙发",{"2":{"2":1}}],["贡献者",{"0":{"181":1}}],["确保不同浏览器环境的用户都可以完成地图的基本渲染",{"2":{"180":1}}],["若仍然存在兼容性问题",{"2":{"180":1}}],["兼容性",{"0":{"180":1}}],["7",{"2":{"239":1}}],["78",{"2":{"179":1}}],["79",{"2":{"179":1}}],["730",{"2":{"99":2}}],["≥",{"2":{"179":4}}],["环境支持",{"0":{"178":1},"1":{"179":1,"180":1}}],["🌏",{"2":{"177":1}}],["🧩",{"2":{"177":1}}],["完整引入",{"0":{"185":1},"1":{"186":1}}],["完整的",{"2":{"177":1}}],["完成后的回调函数",{"2":{"6":1}}],["⚡",{"2":{"177":1}}],["简约的",{"2":{"177":1}}],["遵循直觉的",{"2":{"177":1}}],["🔨",{"2":{"177":1}}],["📐",{"2":{"177":1}}],["📦",{"2":{"177":1}}],["🚀",{"2":{"177":2}}],["封装",{"2":{"177":1,"179":1}}],["封装进组件",{"2":{"177":1}}],["封装设计的",{"2":{"176":1}}],["将百度地图繁琐的",{"2":{"177":1}}],["将街道场景带入到地图产品中",{"2":{"43":1,"62":1}}],["特性",{"0":{"177":1}}],["✨",{"0":{"177":1}}],["对于每个组件或",{"2":{"190":1}}],["对于",{"2":{"180":1}}],["对于用户的浏览器环境有兼容性要求",{"2":{"180":1}}],["对地图",{"2":{"176":1,"177":1}}],["对象",{"2":{"103":1}}],["基于",{"2":{"180":1}}],["基于百度地图",{"2":{"176":1,"177":1}}],["基础点层图",{"0":{"155":1}}],["基础库",{"2":{"153":1}}],["引入",{"2":{"174":1}}],["供应商",{"2":{"174":1}}],["举例",{"2":{"174":1}}],["不支持将任何类型的坐标转换为",{"2":{"241":1}}],["不再支持",{"2":{"179":1}}],["不同的",{"2":{"174":1}}],["不了解贝塞尔曲线的小伙伴可以先学习一下",{"2":{"87":1}}],["了",{"2":{"174":1,"257":1}}],["直接通过浏览器的",{"2":{"174":1}}],["浏览器直接报跨域请求",{"2":{"241":1}}],["浏览器直接引入",{"0":{"174":1}}],["浏览器定位配置项",{"2":{"209":1}}],["浏览器",{"2":{"179":1}}],["浏览区域限制类",{"2":{"165":1}}],["然后在项目中配置",{"2":{"188":1}}],["然后就可以使用全局变量",{"2":{"174":1}}],["然后您就可以使用打包工具",{"2":{"173":1}}],["然后自定义叠加园区模型",{"2":{"111":1,"114":1}}],["或",{"2":{"173":2}}],["或者通过组件配置插件",{"2":{"152":1}}],["或者自定义的",{"2":{"103":1}}],["或者点状线",{"2":{"89":1,"94":1,"135":1,"140":1}}],["或者地图实例",{"2":{"25":1}}],["或者",{"2":{"0":1,"166":1,"167":1}}],["升级时受到非兼容性更新的影响",{"2":{"174":1}}],["升级",{"2":{"170":1,"171":1}}],["尝试将",{"2":{"170":1,"171":1}}],["语法设计",{"2":{"169":1}}],["便于通过",{"2":{"167":1}}],["你可以直接导入组件并使用它",{"2":{"187":1}}],["你可以通过提供loading具名插槽来自定义地图加载中显示效果",{"2":{"80":1}}],["你只需关注组件本身",{"2":{"177":1}}],["你只需定义一个返回promise的函数即可",{"2":{"167":1}}],["你也可以使用其它的",{"2":{"174":1}}],["你还可以通过自定义插件扩展",{"2":{"167":1}}],["除了提供的插件外",{"2":{"167":1}}],["沿路线运动",{"2":{"165":1}}],["路书类",{"2":{"165":1}}],["路书",{"2":{"165":1}}],["富",{"2":{"165":1}}],["富标注",{"2":{"165":1}}],["关闭按钮样式等",{"2":{"165":1}}],["关闭事件的回调函数",{"2":{"122":1}}],["更好的体验",{"2":{"177":1}}],["更好的性能",{"2":{"177":1}}],["更好的访问",{"2":{"167":1}}],["更换插件资源链接",{"0":{"166":1}}],["更有灵活性",{"2":{"165":1}}],["更多示例见及文档请参考",{"2":{"154":1}}],["区县名称",{"2":{"253":1}}],["区域名",{"2":{"205":1}}],["区域边界数据",{"2":{"203":1,"205":1}}],["区域限制",{"2":{"165":1}}],["区级",{"2":{"71":1}}],["几何运算",{"2":{"165":1}}],["测距工具类",{"2":{"165":1}}],["测距工具",{"2":{"165":1}}],["测量距离",{"2":{"149":1}}],["测量",{"0":{"149":1}}],["测量等多种几何图形操作能力",{"2":{"147":1}}],["圆",{"2":{"165":1}}],["圆形的半径",{"2":{"94":1}}],["圆形中心点经纬度",{"2":{"94":1,"113":1}}],["圆形",{"0":{"91":1},"1":{"92":1,"93":1,"94":1,"95":1},"2":{"127":1}}],["矩形",{"2":{"165":1}}],["线",{"2":{"165":1}}],["类",{"2":{"165":1}}],["类似于",{"2":{"165":1}}],["类提供视角轨迹动画展示效果",{"2":{"165":1}}],["类型定义参考",{"0":{"198":1,"205":1,"215":1,"221":1,"227":1,"233":1,"243":1,"256":1,"265":1,"277":1}}],["类型",{"2":{"5":1,"6":1,"9":1,"10":1,"12":1,"15":1,"16":1,"17":1,"18":1,"21":1,"22":1,"24":1,"27":1,"28":1,"30":1,"33":1,"34":1,"36":1,"39":1,"40":1,"42":1,"45":1,"46":1,"48":1,"51":1,"52":1,"55":1,"58":1,"59":1,"61":1,"64":1,"66":1,"69":1,"70":1,"72":1,"81":1,"82":1,"84":1,"85":1,"86":1,"89":1,"90":1,"93":1,"94":1,"95":1,"98":1,"99":1,"103":1,"106":1,"109":1,"110":1,"113":1,"115":1,"118":1,"119":1,"121":1,"122":1,"126":1,"128":1,"129":1,"130":1,"134":1,"135":1,"136":1,"139":1,"140":1,"141":1,"144":1,"145":1,"146":1,"160":1,"163":1,"195":1,"196":1,"202":1,"203":1,"209":1,"210":1,"211":1,"212":1,"214":1,"219":1,"225":1,"226":1,"231":1,"238":1,"248":1,"249":1,"250":1,"252":1,"253":1,"254":2,"260":1,"261":1,"262":1,"269":1,"270":1,"271":1}}],["扩展插件",{"0":{"165":1},"1":{"166":1,"167":1}}],["插件名和插件所导出的类",{"2":{"167":1}}],["插件名称",{"2":{"165":1}}],["插件",{"0":{"163":1}}],["插件加载完毕会触发此事件",{"2":{"86":1}}],["都提供了",{"2":{"162":1}}],["都支持两种来源",{"2":{"162":1}}],["从而避免遍历时",{"2":{"193":1,"246":1}}],["从而避免读取值时",{"2":{"192":1,"245":1}}],["从而获得更好的类型提示",{"2":{"186":1}}],["从而形成渐变",{"2":{"84":1}}],["从组件",{"2":{"162":1}}],["传入",{"0":{"164":1},"2":{"162":1}}],["并实现一个自定义插件",{"2":{"161":1}}],["并展示几个示例",{"2":{"150":1}}],["每个组件都有这两个事件",{"2":{"160":1}}],["避免与其他组件库冲突",{"2":{"159":1}}],["避免重叠",{"2":{"20":1}}],["所在城市",{"2":{"254":1}}],["所处于的最大半径",{"2":{"249":1}}],["所有内置的",{"2":{"219":1}}],["所有地址都未解析到正确坐标点",{"2":{"196":1}}],["所有组件名字增加",{"2":{"159":1}}],["所以需要在",{"2":{"194":1,"201":1,"208":1,"217":1,"224":1,"229":1,"236":1,"247":1,"259":1,"268":1}}],["所以需要监听",{"2":{"152":1}}],["所以通过",{"2":{"153":1}}],["所以只能使用异步加载",{"2":{"147":1}}],["所以当地图上有多个infowindow组件同时绑定v",{"2":{"96":1}}],["模块分包",{"2":{"177":1}}],["模型",{"0":{"157":1}}],["模式渲染子节点向地图添加信息窗口",{"2":{"96":1}}],["渲染",{"0":{"157":1}}],["渲染地图",{"0":{"74":1}}],["柱状热力图",{"0":{"156":1}}],["我们建议使用",{"2":{"174":1}}],["我们建议您使用包管理器",{"2":{"173":1}}],["我们在这里以",{"2":{"174":1}}],["我们更推荐以插件形式使用",{"2":{"153":1}}],["我们会在下面展示您的昵称信息",{"2":{"1":1}}],["导致打包大小臃肿",{"2":{"153":1}}],["格式非法",{"2":{"241":1}}],["格式打包",{"2":{"153":1}}],["格式图片或者没有使用",{"2":{"121":1,"129":1}}],["均使用",{"2":{"153":1}}],["均与",{"2":{"76":1}}],["因为资源是通过异步方式加载",{"2":{"152":1}}],["全局注册",{"2":{"163":1}}],["全局注册配置和组件",{"2":{"162":1}}],["全局配置和组件",{"2":{"162":1}}],["全局配置插件",{"2":{"152":1}}],["全局组件事件",{"0":{"160":1}}],["全景图层",{"0":{"62":1},"1":{"63":1,"64":1,"65":1,"66":1}}],["全景地图刻画真实世界",{"2":{"43":1,"62":1}}],["全景地图服务属于百度地图高级服务",{"2":{"43":1,"62":1}}],["全景地图服务",{"2":{"43":1,"62":1}}],["全景控件",{"0":{"43":1},"1":{"44":1,"45":1,"46":1,"47":1,"48":1}}],["与插件以及更换资源链接",{"2":{"161":1}}],["与",{"0":{"163":1},"2":{"151":1}}],["形式加载",{"2":{"150":1}}],["面",{"2":{"165":1}}],["面积",{"2":{"149":1}}],["面填充的透明度",{"2":{"94":1,"135":1}}],["面填充颜色",{"2":{"94":1,"135":1}}],["绘制",{"0":{"148":1},"2":{"180":1}}],["绘制跨精度",{"2":{"93":1,"134":1,"139":1}}],["而其他方法需要等到",{"0":{"276":1}}],["而非",{"2":{"153":1}}],["而",{"2":{"147":1}}],["助力开发者开箱即用式快速实现自己的几何图形编辑器",{"2":{"147":1}}],["移动",{"2":{"147":1}}],["移除一个自定义地图图层时触发此事件",{"2":{"86":1}}],["复制黏贴",{"2":{"147":1}}],["合并",{"2":{"147":1}}],["裁切",{"2":{"147":1}}],["编辑",{"2":{"147":1}}],["提供了基于",{"2":{"187":1}}],["提供了鼠标绘制",{"2":{"147":1}}],["提供商有不同的引入方式",{"2":{"174":1}}],["提供若干几何算法",{"2":{"165":1}}],["提供鼠标绘制点",{"2":{"165":1}}],["提供",{"2":{"162":1}}],["提示",{"2":{"8":1,"20":1,"62":1,"76":1,"87":1,"96":1,"109":1,"174":1}}],["是因为useviewanimationhooks",{"2":{"276":1}}],["是一样的效果",{"2":{"276":1}}],["是一款基于",{"2":{"150":1}}],["是一个基于百度地图",{"2":{"147":1}}],["是异步加载",{"2":{"147":1}}],["是否出错",{"2":{"238":1}}],["是否定位出错",{"2":{"211":1}}],["是否要求浏览器获取最佳效果",{"2":{"210":1,"215":1}}],["是否加载中",{"2":{"203":1,"205":1,"238":1}}],["是否有解析结果",{"2":{"196":1,"250":1}}],["是否在动画结束后总览视图缩放",{"2":{"261":1,"265":1}}],["是否在获取中",{"2":{"196":1,"211":1,"226":1,"250":1}}],["是否在调用",{"2":{"89":1,"94":1,"109":1,"119":1,"128":1,"135":1,"140":1,"145":1}}],["是否支持",{"0":{"169":1}}],["是否自动根据多边形居中地图",{"2":{"134":1,"144":1}}],["是否自动根据地面叠加物显示区域居中地图",{"2":{"103":1}}],["是否是行政区域的边界多边形",{"2":{"134":1,"144":1}}],["是否参与掩膜",{"2":{"113":1}}],["是否开启sdk辅助定位",{"2":{"215":2}}],["是否开启点击地图关闭信息窗口",{"2":{"99":1}}],["是否开启信息窗口打开时地图自动移动",{"2":{"99":1}}],["是否开启信息窗体",{"2":{"99":1}}],["是否开启大地线模式",{"2":{"93":1,"134":1,"139":1}}],["是否进行跨经度",{"2":{"93":1,"134":1,"139":1}}],["是否响应点击事件",{"2":{"93":1,"118":1,"134":1,"139":1,"144":1}}],["是否启用安卓定位",{"2":{"210":1}}],["是否启用拖拽",{"2":{"119":1}}],["是否启用线编辑",{"2":{"94":1}}],["是否启用底图可点击",{"2":{"82":1}}],["是否启用交通路况图层",{"2":{"82":1}}],["是否限制中心",{"2":{"81":1}}],["是否禁用该菜单项",{"2":{"17":1}}],["是否显示路网",{"2":{"84":1}}],["是否显示叠加图层",{"2":{"84":1}}],["是否显示覆盖物",{"2":{"84":1}}],["是否显示地图上的地点标识图标",{"2":{"84":1}}],["是否显示地图上的地点标识文字",{"2":{"84":1}}],["是否显示地图上的地点标识",{"2":{"84":1}}],["是否显示室内图",{"2":{"81":1,"84":1}}],["是否显示",{"2":{"10":1,"16":1,"22":1,"28":1,"34":1,"40":1,"46":1,"52":1,"59":1,"70":1,"84":1,"89":1,"94":1,"103":1,"109":1,"113":1,"119":1,"128":1,"135":1,"140":1,"145":1}}],["侧面填充颜色透明度",{"2":{"145":1}}],["侧面填充颜色",{"2":{"145":1}}],["顶面填充颜色透明度",{"2":{"145":1}}],["顶面填充颜色",{"2":{"145":1}}],["顶面和侧面的颜色",{"2":{"142":1}}],["示例",{"0":{"143":1,"154":1,"200":1,"207":1,"223":1,"235":1,"258":1,"267":1},"1":{"155":1,"156":1,"157":1}}],["棱柱高度",{"2":{"145":1}}],["棱柱",{"0":{"142":1},"1":{"143":1,"144":1,"145":1,"146":1},"2":{"142":1}}],["度",{"2":{"261":1}}],["度经线绘制问题",{"2":{"139":1}}],["度裁剪",{"2":{"93":1,"134":1,"139":1}}],["±180",{"2":{"139":1}}],["配置插件",{"2":{"165":1}}],["配置方式",{"0":{"162":1},"1":{"163":1,"164":1}}],["配置",{"0":{"161":1,"189":1},"1":{"162":1,"163":1,"164":1,"165":1,"166":1,"167":1}}],["配置天空的颜色",{"2":{"84":1}}],["配合clip解决跨",{"2":{"139":1}}],["连接右线",{"2":{"139":1}}],["镂空面绘制",{"0":{"133":1}}],["贴图所用图像资源的位置",{"2":{"129":1}}],["贴图所用的图片的大小",{"2":{"129":1}}],["贴图所用的图片相对于可视区域的偏移值",{"2":{"129":1}}],["贴图的定位点相对于贴图左上角的偏移值",{"2":{"129":1}}],["高质量的开箱即用",{"2":{"177":1}}],["高度",{"2":{"142":1}}],["高",{"2":{"126":1}}],["宽",{"2":{"126":1}}],["点",{"2":{"252":1,"257":1,"266":1}}],["点个数",{"2":{"249":1}}],["点坐标转换方法",{"2":{"238":1}}],["点填充的透明度",{"2":{"128":1}}],["点填充颜色",{"2":{"128":1}}],["点的图或自定义纹理贴图",{"2":{"128":1}}],["点的坐标",{"2":{"128":1}}],["点的形状",{"2":{"126":1}}],["点形状",{"0":{"127":1}}],["点大小",{"2":{"126":1}}],["点高度",{"2":{"126":1}}],["点击信息窗口的关闭按钮时触发此事件",{"2":{"100":1}}],["点击热区时触发此事件",{"2":{"86":1}}],["纹理贴图",{"0":{"125":1}}],["带高度的点",{"0":{"123":1},"1":{"124":1,"125":1,"126":1,"127":1,"128":1,"129":1,"130":1}}],["打包有冗余代码",{"2":{"185":1}}],["打开事件的回调函数",{"2":{"122":1}}],["打印图片的",{"2":{"121":1,"129":1}}],["则不会触发",{"2":{"274":1}}],["则在",{"2":{"274":1}}],["则每次请求都获取最新的定位结果",{"2":{"210":1,"215":1}}],["则会降级到瓦片图渲染",{"2":{"180":1}}],["则会尝试合并两个配置",{"2":{"162":1}}],["则只支持组件",{"2":{"162":1}}],["则可以通过该方式自定义",{"2":{"166":1}}],["则可以通过initd事件暴露百度地图实例来自由的使用",{"2":{"160":1}}],["则可忽略此配置",{"2":{"121":1,"129":1}}],["则信息窗口的高度将按照其内容自动调整",{"2":{"99":1}}],["则信息窗口的宽度将按照其内容自动调整",{"2":{"99":1}}],["技术",{"2":{"121":1,"129":1}}],["滤镜导致的错位问题",{"2":{"121":1,"129":1}}],["该结果所在的地理位置",{"2":{"254":1}}],["该值才为false",{"2":{"196":1}}],["该",{"2":{"194":1,"201":1,"208":1,"217":1,"224":1,"229":1,"236":1,"247":1,"259":1,"266":1,"268":1}}],["该组件库是基于",{"2":{"179":1}}],["该组件库是完全基于",{"2":{"169":1}}],["该组件库中",{"2":{"147":1}}],["该方式也支持两种形式",{"2":{"166":1}}],["该打印图片只针对",{"2":{"121":1,"129":1}}],["该覆盖物被移除的回调函数",{"2":{"90":1,"95":1,"110":1,"122":1,"130":1,"136":1,"141":1,"146":1}}],["中使用批量解析坐标点时",{"2":{"245":1,"246":1}}],["中使用批量解析地址时",{"2":{"193":1}}],["中使用单个解析地址时",{"2":{"192":1}}],["中配置",{"2":{"186":1}}],["中配置文件中包含同步调用",{"2":{"147":1}}],["中获取",{"2":{"162":1}}],["中的background",{"2":{"129":1}}],["中的",{"2":{"121":2,"129":1}}],["中心点不变",{"2":{"82":1}}],["此外",{"2":{"266":1}}],["此功能的作用等同于",{"2":{"121":2,"129":2}}],["此属性值需遵循",{"2":{"118":1}}],["蓝色图标",{"2":{"120":1}}],["红色图标",{"2":{"120":1}}],["旋转角度",{"2":{"119":1}}],["拖拽覆盖物结束事件的回调函数",{"2":{"122":1}}],["拖拽覆盖物开始事件的回调函数",{"2":{"122":1}}],["拖拽标注时",{"2":{"118":1}}],["拖拽标注时的鼠标指针样式",{"2":{"118":1}}],["拖拽地图过程中触发",{"2":{"86":1}}],["上一次结束既下一次开始时触发",{"2":{"274":1}}],["上的显示内容",{"2":{"118":1}}],["上下文菜单",{"0":{"13":1},"1":{"14":1,"15":1,"16":1,"17":1,"18":1}}],["指定显示图标",{"2":{"117":1}}],["通过该",{"2":{"199":1,"216":1,"228":1,"257":1}}],["通过该组件可在地图上绘制",{"2":{"142":1}}],["通过地址解析坐标点",{"2":{"191":1}}],["通过全局注册配置",{"0":{"163":1}}],["通过组件库提供的插件形式",{"0":{"152":1}}],["通过",{"0":{"153":1},"2":{"117":1,"165":1,"177":1}}],["通过指定",{"2":{"76":1}}],["楼块是否参与掩膜",{"2":{"113":1}}],["楼块等",{"2":{"111":1,"114":1}}],["展示区域内部还是外部",{"2":{"113":1}}],["级时使用",{"2":{"111":1}}],["比如可以定制",{"2":{"165":1}}],["比如隐藏掉指定园区范围的地图元素",{"2":{"111":1,"114":1}}],["比",{"2":{"165":1}}],["比例尺单位制",{"2":{"52":1}}],["比例尺控件",{"0":{"49":1},"1":{"50":1,"51":1,"52":1,"53":1,"54":1,"55":1},"2":{"49":1}}],["隐藏掉局部区域地图元素",{"2":{"111":1,"114":1}}],["隐藏掉区域外的地图元素以突出重点",{"2":{"111":1,"114":1}}],["局部隐藏适用于地图大级别情况",{"2":{"111":1}}],["局部隐藏",{"2":{"111":1,"114":1}}],["局部显示",{"2":{"111":1,"114":1}}],["底图上的",{"2":{"113":1}}],["底图是否参与掩膜",{"2":{"113":1}}],["底图",{"2":{"111":1,"114":1}}],["标签导入",{"2":{"174":1}}],["标注是否开启离开地图表面效果",{"2":{"118":1}}],["标注点的图标",{"2":{"119":1}}],["标注点的像素偏移",{"2":{"119":1}}],["标注点的坐标",{"2":{"119":1}}],["标注点",{"0":{"116":1},"1":{"117":1,"118":1,"119":1,"120":1,"121":1,"122":1}}],["标注",{"2":{"111":1,"114":1}}],["标准地图",{"2":{"83":1}}],["控制地图元素的局部显示与隐藏",{"2":{"111":1}}],["控件",{"2":{"19":1,"37":1}}],["控件的偏移值",{"2":{"9":1,"21":1,"27":1,"33":1,"39":1,"45":1,"51":1,"58":1,"64":1}}],["控件的停靠位置",{"2":{"9":1,"21":1,"27":1,"33":1,"39":1,"45":1,"51":1,"58":1,"64":1}}],["掩膜",{"0":{"111":1},"1":{"112":1,"113":1,"114":1,"115":1}}],["样式属性需使用驼峰命名法",{"2":{"109":1}}],["样式",{"2":{"109":1}}],["样式影响",{"2":{"8":1}}],["文本标注的坐标",{"2":{"109":1}}],["文本标注的像素偏移",{"2":{"109":1}}],["文本标注",{"0":{"107":1},"1":{"108":1,"109":1,"110":1}}],["文字居中",{"2":{"80":1}}],["图吧地图坐标",{"2":{"239":1}}],["图标可选值",{"2":{"216":1}}],["图标可视区域的大小",{"2":{"121":1}}],["图标所用图像资源的位置",{"2":{"121":1}}],["图标所用的图片的大小",{"2":{"121":1}}],["图标所用的图片相对于可视区域的偏移值",{"2":{"121":1}}],["图标的定位点相对于图标左上角的偏移值",{"2":{"121":1}}],["图示",{"0":{"104":1}}],["图层等需作为其子组件",{"2":{"73":1}}],["透明度等属性来绘制不规则的棱柱体",{"2":{"142":1}}],["透明度",{"2":{"103":1}}],["见图示",{"2":{"103":2}}],["显示层级",{"2":{"109":1,"119":1}}],["显示区域结束点",{"2":{"103":1}}],["显示区域开始点",{"2":{"103":1}}],["显示代码",{"2":{"80":1}}],["叠加物",{"2":{"103":1}}],["uid",{"2":{"254":1}}],["utils",{"2":{"233":1}}],["utf",{"2":{"174":1}}],["umd",{"2":{"153":1}}],["useviewanimationoptions",{"2":{"277":2}}],["useviewanimation",{"0":{"266":1},"1":{"267":1,"268":1,"269":1,"270":1,"271":1,"272":1,"273":1,"274":1,"275":1,"276":1,"277":1},"2":{"266":1,"267":1,"268":1,"277":1}}],["usetrackanimationoptions",{"2":{"265":2}}],["usetrackanimation",{"0":{"257":1},"1":{"258":1,"259":1,"260":1,"261":1,"262":1,"263":1,"264":1,"265":1},"2":{"257":1,"258":1,"259":1,"265":1}}],["usepointgeocoderoptions",{"0":{"249":1},"2":{"248":1}}],["usepointgeocoder",{"0":{"244":1},"1":{"245":1,"246":1,"247":1,"248":1,"249":1,"250":1,"251":1,"252":1,"253":1,"254":1,"255":1,"256":1},"2":{"244":1,"245":3,"246":3,"247":1,"256":1}}],["usepointconvertorstatus",{"0":{"241":1},"2":{"238":1}}],["usepointconvertor",{"0":{"234":1},"1":{"235":1,"236":1,"237":1,"238":1,"239":1,"240":1,"241":1,"242":1,"243":1},"2":{"234":1,"235":1,"236":1}}],["usepoint",{"0":{"228":1},"1":{"229":1,"230":1,"231":1,"232":1,"233":1},"2":{"228":1,"229":1,"232":1,"233":1,"242":1,"243":1}}],["useiplocation",{"0":{"222":1},"1":{"223":1,"224":1,"225":1,"226":1,"227":1},"2":{"222":1,"223":1,"224":1,"227":1}}],["usedefaultmarkericons",{"0":{"216":1},"1":{"217":1,"218":1,"219":1,"220":1,"221":1},"2":{"216":1,"217":1,"220":1,"221":1}}],["usebrowserlocationoptions",{"0":{"210":1},"2":{"209":1,"215":2}}],["usebrowserlocation",{"0":{"206":1},"1":{"207":1,"208":1,"209":1,"210":1,"211":1,"212":1,"213":1,"214":1,"215":1},"2":{"206":1,"207":1,"208":1,"215":1}}],["useareaboundary",{"0":{"199":1},"1":{"200":1,"201":1,"202":1,"203":1,"204":1,"205":1},"2":{"199":1,"201":1,"204":2,"205":1,"220":1,"232":1,"242":1}}],["useaddressgeocoder",{"0":{"191":1},"1":{"192":1,"193":1,"194":1,"195":1,"196":1,"197":1,"198":1},"2":{"191":1,"192":2,"193":2,"194":1,"198":1}}],["use",{"2":{"152":1,"163":1,"166":1,"167":1,"174":1,"185":1}}],["url",{"2":{"103":3,"121":1,"129":1,"254":1}}],["unavailable",{"2":{"213":1,"215":1}}],["unpkgjsdelivr",{"2":{"174":1}}],["unpkg",{"2":{"174":3}}],["undefined>",{"2":{"198":1,"215":1,"256":1}}],["undefined",{"0":{"170":1},"2":{"195":1,"196":1}}],["uncaught",{"0":{"170":1}}],["unit",{"0":{"54":1},"2":{"52":3,"54":2}}],["unload",{"2":{"6":1,"12":1,"18":1,"24":1,"30":1,"36":1,"42":1,"48":1,"55":1,"61":1,"66":1,"72":1,"86":1,"90":1,"95":1,"100":1,"106":1,"110":1,"115":1,"122":1,"130":1,"136":1,"141":1,"146":1,"160":1}}],["视角动画实例",{"2":{"271":1}}],["视角跟随移动",{"2":{"257":1}}],["视角展示地图",{"2":{"176":1,"177":1}}],["视角轨迹动画",{"2":{"165":1}}],["视角导航控件",{"0":{"37":1},"1":{"38":1,"39":1,"40":1,"41":1,"42":1}}],["视频",{"2":{"101":1}}],["信息窗高度",{"2":{"99":1}}],["信息窗宽度",{"2":{"99":1}}],["信息窗标题文字",{"2":{"99":1}}],["信息窗体所在坐标",{"2":{"99":1}}],["信息窗位置偏移值",{"2":{"98":1}}],["信息窗口被打开时触发此事件",{"2":{"100":1}}],["信息窗口被关闭时触发此事件",{"2":{"100":1}}],["信息窗口",{"0":{"96":1},"1":{"97":1,"98":1,"99":1,"100":1}}],["只有导入的组件才会被打包",{"2":{"187":1}}],["只有最后一个",{"2":{"96":1}}],["只打包你想要的的",{"2":{"177":1}}],["只展示指定区域的地图及地图元素",{"2":{"111":1,"114":1}}],["只对卫星图和地球模式有效",{"2":{"84":1}}],["quot",{"2":{"96":2}}],["使用该",{"2":{"257":1}}],["使用坐标点对象数组作为",{"2":{"246":1}}],["使用坐标点对象作为",{"2":{"245":1}}],["使用泛型pointgeocoderresult",{"2":{"246":1}}],["使用泛型pointgeocoderresult内部可推断result为可推断为pointgeocoderresult",{"2":{"245":1}}],["使用泛型point",{"2":{"193":1}}],["使用泛型point内部可推断point为可推断为point",{"2":{"192":1}}],["使用地址字符串数组作为",{"2":{"193":1}}],["使用地址字符串作为",{"2":{"192":1}}],["使用了",{"2":{"176":1}}],["使用包管理器",{"0":{"173":1}}],["使用的方式同样也有两种",{"2":{"167":1}}],["使用方式请参考官方文档",{"2":{"147":1}}],["使用",{"2":{"96":1,"121":1,"129":1,"153":1}}],["两点连线将以大地线的形式",{"2":{"93":1,"134":1,"139":1}}],["时必现",{"2":{"241":1}}],["时为了优化效果",{"2":{"93":1,"134":1,"139":1}}],["时",{"2":{"93":1,"134":1,"139":1}}],["清除此覆盖物",{"2":{"89":1,"94":1,"109":1,"119":1,"128":1,"135":1,"140":1,"145":1}}],["虚线",{"2":{"89":1,"94":1,"135":1,"140":1}}],["范围",{"2":{"89":1,"94":2,"103":1,"128":1,"135":2,"140":1}}],["颜色",{"2":{"89":1,"94":2,"128":1,"135":2,"140":1}}],["同浏览器定位接口参数",{"2":{"210":1,"215":1}}],["同样",{"2":{"166":1}}],["同",{"2":{"89":1,"94":2,"128":1,"135":2,"140":1}}],["同时按下其中两个键可使地图进行对角移动",{"2":{"82":1}}],["贝塞尔曲线控制点的坐标数组",{"2":{"89":1}}],["贝塞尔曲线的坐标数组",{"2":{"89":1}}],["javascript",{"2":{"87":1,"176":1,"180":1}}],["jsdelivr",{"2":{"174":3}}],["jsdemo",{"2":{"8":1}}],["js",{"2":{"153":1}}],["jsapi",{"2":{"147":1}}],["json",{"2":{"82":1,"186":3}}],["zindex",{"2":{"109":1,"119":1}}],["zh",{"2":{"87":1}}],["zoomend",{"2":{"86":1}}],["zoomstart",{"2":{"86":1}}],["zoom",{"2":{"57":1,"82":1,"111":1,"261":1,"265":1,"272":1,"277":1}}],["折线长度等",{"2":{"149":1}}],["折线",{"0":{"87":1,"137":1},"1":{"88":1,"89":1,"90":1,"138":1,"139":1,"140":1,"141":1}}],["长按事件",{"2":{"86":1}}],["触摸结束时触发此事件",{"2":{"86":1}}],["触摸移动时触发此事件",{"2":{"86":1}}],["触摸开始时触发此事件",{"2":{"86":1}}],["仅当使用环境为移动web混合开发",{"2":{"215":1}}],["仅适用移动设备",{"2":{"86":4}}],["仅支持",{"2":{"84":1}}],["缩放层级已经确定",{"2":{"86":1}}],["缩放控件",{"0":{"56":1},"1":{"57":1,"58":1,"59":1,"60":1,"61":1},"2":{"7":1,"56":1}}],["添加一个自定义地图图层时触发此事件",{"2":{"86":1}}],["添加分割线",{"2":{"16":1}}],["停止拖拽地图时触发",{"2":{"86":1}}],["开始动画函数",{"2":{"271":1}}],["开始动画",{"2":{"262":1,"265":1}}],["开始使用",{"0":{"190":1}}],["开始拖拽地图时触发",{"2":{"86":1}}],["开箱即用的",{"2":{"187":1}}],["开发",{"2":{"180":1}}],["开发体验良好",{"2":{"176":1}}],["开启可编辑模式",{"2":{"135":1,"140":1}}],["开启图区",{"2":{"82":1}}],["开启双击平滑缩放效果",{"2":{"82":1}}],["产生的事件序列为",{"2":{"86":2,"90":1,"95":1,"106":1,"110":1,"115":1,"122":1,"130":1,"136":1,"141":1,"146":1}}],["当动画循环大于",{"2":{"274":1}}],["当结果点类型为公交站或地铁站时",{"2":{"254":1}}],["当转换不被允许的坐标系",{"2":{"241":1}}],["当前状态",{"2":{"238":1}}],["当前赞助者",{"0":{"2":1}}],["当同时指定的时候",{"2":{"162":1}}],["当地图所有图块完成加载时触发此事件",{"2":{"86":1}}],["当使用方法一次性移除全部覆盖物时会触发此事件",{"2":{"86":1}}],["当组件被移除时会触发此事件",{"2":{"86":2}}],["当组件被挂载到地图中时会触发此事件",{"2":{"86":2}}],["当双击时",{"2":{"86":2,"90":1,"95":1,"106":1,"110":1,"115":1,"122":1,"130":1,"136":1,"141":1,"146":1}}],["设计",{"2":{"177":1}}],["设计初衷主要是为了解决大数据量的三维地理数据展示问题及一些炫酷的三维效果",{"2":{"150":1}}],["设置动画关键帧函数",{"2":{"271":1}}],["设置动画中的缩放级别",{"2":{"261":1,"265":1}}],["设置动画中的地图倾斜角度",{"2":{"261":1,"265":1}}],["设置路径后且",{"2":{"262":1,"271":1}}],["设置路径动画路径",{"2":{"262":1,"265":1}}],["设置实例点坐标",{"2":{"233":1,"243":1}}],["设置实例点坐标方法",{"2":{"231":1}}],["设置",{"2":{"121":1,"129":1}}],["设置文本标注的样式",{"2":{"109":1}}],["设置文本标注的内容",{"2":{"109":1}}],["设置地图是否可拖动",{"2":{"85":1}}],["设定返回结果的所属范围",{"2":{"5":1}}],["重置地图中心",{"2":{"85":1}}],["外部获取",{"2":{"85":1}}],["父组件",{"2":{"85":1}}],["父组件获取",{"2":{"85":1}}],["实例对象",{"2":{"231":1,"233":1,"243":1}}],["实例对象键值对",{"2":{"219":1}}],["实例方法",{"2":{"85":1}}],["实现",{"2":{"165":1}}],["实际使用不受影响",{"2":{"8":1}}],["方式",{"2":{"162":1}}],["方式使用代码不利于构建工具",{"2":{"153":1}}],["方式加载",{"0":{"152":1}}],["方式渲染的地图",{"2":{"84":1}}],["方法调用后才可以使用",{"0":{"276":1}}],["方法和数据才可用",{"2":{"259":1}}],["方法后其他方法和数据才可用",{"2":{"268":1}}],["方法后才可用",{"2":{"231":1}}],["方法后数据才可用",{"2":{"194":1,"201":1,"208":1,"217":1,"224":1,"229":1,"236":1,"247":1}}],["方法参数批量解析坐标点",{"2":{"246":1}}],["方法参数批量解析地址",{"2":{"193":1}}],["方法参数解析单个坐标点",{"2":{"245":1}}],["方法参数解析单个地址",{"2":{"192":1}}],["方法",{"2":{"85":1}}],["支持欠佳的浏览器会降级为",{"2":{"180":1}}],["支持",{"0":{"186":1},"2":{"99":1,"176":1,"177":4}}],["支持只传入一个元素",{"2":{"84":1}}],["支付宝",{"2":{"1":1}}],["第二个元素表示天空颜色",{"2":{"84":1}}],["建议在",{"2":{"111":1}}],["建议将图片和文字拆分成两个自定义版权",{"2":{"20":1}}],["建筑物",{"2":{"84":1}}],["一般位置点",{"2":{"255":1}}],["一般用于离线地图",{"2":{"81":1,"163":1}}],["一个对象",{"2":{"167":1}}],["一致的交互体验",{"2":{"83":1}}],["普通卫星地图",{"2":{"83":1}}],["描边的样式",{"2":{"89":1,"94":1,"135":1,"140":1}}],["描边的透明度",{"2":{"89":1,"94":1,"135":1,"140":1}}],["描边的宽度",{"2":{"89":1,"94":1,"135":1,"140":1}}],["描边的颜色",{"2":{"89":1,"94":1,"135":1,"140":1}}],["描边线透明度",{"2":{"69":1}}],["描边线条粗细",{"2":{"69":1}}],["描边线条颜色",{"2":{"69":1}}],["描述",{"2":{"83":1,"114":1,"165":1,"195":1,"196":1,"202":1,"203":1,"209":1,"210":1,"211":1,"212":1,"213":1,"214":1,"219":1,"225":1,"226":1,"231":1,"238":1,"241":1,"248":1,"249":1,"250":1,"252":1,"253":1,"254":1,"255":1,"260":1,"261":1,"262":1,"269":1,"270":1,"271":1,"274":1}}],["999",{"2":{"82":1}}],["加载完成后可",{"2":{"167":1}}],["加载相关资源",{"2":{"167":1}}],["加载文字图颜色",{"2":{"82":1}}],["加载背景图颜色",{"2":{"82":1}}],["+",{"2":{"82":1}}],["的标签",{"2":{"254":1}}],["的报错",{"2":{"192":1,"193":1,"245":1,"246":1}}],["的用法",{"2":{"190":1}}],["的用户在链接地址上锁定版本",{"2":{"174":1}}],["的功能",{"2":{"185":1}}],["的现代浏览器来支持渲染",{"2":{"180":1}}],["的浏览器上运行",{"2":{"179":1}}],["的编辑工具条的开源代码库",{"2":{"165":1}}],["的地理信息点线面数据",{"2":{"150":1}}],["的地理信息可视化库",{"2":{"150":1}}],["的轻量级鼠标绘制库",{"2":{"147":1}}],["的cursor属性规范",{"2":{"118":1}}],["的大小",{"2":{"82":1}}],["的实例化对象",{"2":{"73":1}}],["键会使地图放大或缩小一级",{"2":{"82":1}}],["键会使地图平移其",{"2":{"82":1}}],["键盘的上",{"2":{"82":1}}],["键盘或者鼠标移动",{"2":{"6":1}}],["下能支持的地图交互操作有限",{"2":{"83":1}}],["下",{"2":{"82":1}}],["启用自动适应容器尺寸变化",{"2":{"82":1}}],["启用双指缩放地图",{"2":{"82":1}}],["启用键盘操作",{"2":{"82":1}}],["启用地图双击缩放",{"2":{"82":1}}],["启用地图惯性拖拽",{"2":{"82":1}}],["启用地图拖拽",{"2":{"82":1}}],["表示经纬度",{"2":{"82":1}}],["也可自定义图标",{"2":{"119":1}}],["也可以使用对象如",{"2":{"82":1}}],["也可在留言中说明",{"2":{"1":1}}],["55",{"2":{"261":2,"265":1}}],["550px",{"2":{"82":1}}],["51",{"2":{"239":1}}],["51地图坐标",{"2":{"239":1}}],["5",{"2":{"239":1,"240":1}}],["50",{"2":{"80":3,"126":1}}],["需要用户设置手机为允许",{"2":{"206":1}}],["需要在map组件initd事件触发后才可调用",{"2":{"196":1,"211":1,"226":1,"231":1,"238":1,"250":1,"262":1,"271":1}}],["需要完整支持",{"2":{"180":1}}],["需要注册的插件",{"2":{"81":1,"163":1}}],["需要向",{"2":{"43":1,"62":1}}],["资源地址",{"2":{"81":1,"163":1}}],["keyframes",{"2":{"80":2,"277":1}}],["kind",{"2":{"69":1}}],["wgs84的平面墨卡托坐标",{"2":{"239":1}}],["wgs84",{"2":{"239":2}}],["wgs84坐标",{"2":{"239":1}}],["world",{"0":{"175":1}}],["would",{"2":{"174":1}}],["withimg",{"2":{"125":1}}],["width",{"2":{"15":1,"80":2,"82":1,"99":1,"121":2,"129":1}}],["webview",{"2":{"210":1}}],["webpack",{"2":{"173":1}}],["webgl",{"2":{"84":1,"150":1,"176":1,"177":1,"180":3}}],["webkit",{"2":{"80":7}}],["64",{"2":{"179":1}}],["650",{"2":{"99":2}}],["600",{"2":{"210":1}}],["60",{"2":{"99":2}}],["60px",{"2":{"80":2}}],["6",{"2":{"80":1,"239":1,"240":1}}],["047363",{"2":{"232":1,"242":1}}],["000",{"2":{"94":1,"210":1}}],["000000",{"2":{"89":1,"135":1,"140":1}}],["0",{"2":{"80":8,"81":3,"82":2,"89":1,"94":5,"98":2,"99":6,"103":1,"128":3,"135":4,"140":1,"145":2,"180":1,"241":1,"255":1,"261":1,"265":1,"270":1}}],["duration",{"2":{"261":1,"265":1,"270":1,"277":1}}],["default",{"2":{"265":5}}],["defaultmarkericons",{"2":{"219":1,"221":2}}],["denied",{"2":{"213":1,"215":1}}],["declare",{"2":{"198":2,"205":2,"215":2,"221":2,"227":1,"233":2,"243":2,"256":1,"265":4,"277":3}}],["delay",{"2":{"80":2,"261":1,"265":1,"270":1,"274":2,"277":1}}],["d",{"2":{"174":1}}],["drawingmanager",{"2":{"165":1}}],["drawscene",{"2":{"147":1}}],["draw",{"0":{"147":1},"1":{"148":1,"149":1},"2":{"147":4,"148":2,"149":1}}],["dragend",{"2":{"86":1,"122":1}}],["draggingcursor",{"2":{"118":1}}],["dragging",{"2":{"86":1,"122":1}}],["dragstart",{"2":{"86":1,"122":1}}],["dynmicinfowindow",{"2":{"97":1}}],["docs",{"2":{"154":1,"155":1,"156":1}}],["dotted",{"2":{"89":1,"94":1,"135":1,"140":1}}],["double",{"2":{"80":5}}],["dashed",{"2":{"89":1,"94":1,"135":1,"140":1}}],["dblclick",{"2":{"86":2,"90":2,"95":2,"106":2,"110":2,"115":2,"122":2,"130":2,"136":2,"141":2,"146":2}}],["div>",{"2":{"80":3}}],["div",{"2":{"80":3}}],["distancetool",{"2":{"165":1}}],["district",{"2":{"214":1,"215":1,"253":1,"256":1}}],["districttype",{"0":{"71":1},"2":{"69":2}}],["districtlayer",{"2":{"68":1}}],["displayoptions",{"0":{"84":1},"2":{"82":1}}],["disabledragging",{"2":{"270":1,"277":1}}],["disabled",{"2":{"17":1}}],["赛博朋克主题示例",{"0":{"79":1}}],["知悉",{"2":{"77":1}}],["百度地图采用的墨卡托平面坐标",{"2":{"239":1,"240":1}}],["百度地图采用的经纬度坐标",{"2":{"239":1,"240":1}}],["百度地图ak",{"2":{"163":1,"164":1}}],["百度地图",{"2":{"81":1,"163":1}}],["百度地图个性化地图相关文档",{"2":{"77":1}}],["百度地图申请",{"2":{"43":1,"62":1}}],["获取坐标点信息方法",{"2":{"250":1}}],["获取一个地图经纬度点实例",{"2":{"233":1,"243":1}}],["获取定位方法",{"2":{"211":1,"226":1}}],["获取指定区域边界",{"2":{"205":1}}],["获取指定区域边界方法",{"2":{"203":1}}],["获取成功后的回调函数",{"2":{"205":1}}],["获取地图区域边界",{"2":{"205":1}}],["获取地址到坐标点方法",{"2":{"196":1}}],["获取行政区域成功后的回调函数",{"2":{"202":1}}],["获取以及相关注意事项",{"2":{"77":1}}],["获取资源",{"0":{"77":1}}],["域名绑定",{"2":{"76":1}}],["以提高定位精准度",{"2":{"206":1}}],["以优雅的方式完成百度地图的接入",{"2":{"176":1}}],["以免将来",{"2":{"174":1}}],["以上系统等已不再支持非安全域的浏览器定位请求",{"2":{"206":1}}],["以上",{"2":{"170":1,"171":1}}],["以下示例均来自于",{"2":{"154":1}}],["以下示例使用的",{"2":{"76":1}}],["以及与地图相关的一些交互",{"2":{"96":1}}],["以获得",{"2":{"73":1}}],["请确保trackanimation插件正确的",{"2":{"257":1}}],["请尽快升级您的站点到",{"2":{"206":1}}],["请参考对应的文档",{"2":{"190":1}}],["请参考官方示例为准",{"2":{"8":1}}],["请自行添加",{"2":{"179":1}}],["请使用普通卫星图模式",{"2":{"83":1}}],["请访问",{"2":{"77":1}}],["请先检查mapstyleid或mapstylejson是否正确",{"2":{"76":1}}],["多边形的坐标数组",{"2":{"135":1,"140":1,"145":1}}],["多边形",{"0":{"131":1},"1":{"132":1,"133":1,"134":1,"135":1,"136":1},"2":{"165":1}}],["多实例",{"0":{"75":1}}],["多个相同位置版权控件会自动排列",{"2":{"20":1}}],["覆盖物等进行渲染",{"2":{"176":1,"177":1}}],["覆盖物拖拽中事件的回调函数",{"2":{"122":1}}],["覆盖物可以是图片",{"2":{"101":1}}],["覆盖物被编辑后的回调函数",{"2":{"90":1,"95":1,"110":1,"136":1,"141":1,"146":1}}],["覆盖物",{"2":{"73":1}}],["鼠标绘制工具条库",{"2":{"165":1}}],["鼠标测量与绘制",{"0":{"147":1},"1":{"148":1,"149":1}}],["鼠标右键单击事件的回调函数",{"2":{"115":1,"122":1,"130":1}}],["鼠标指针在该覆盖物移动的事件的回调函数",{"2":{"106":1}}],["鼠标指针移入该覆盖物事件的回调函数",{"2":{"90":1,"95":1,"106":1,"110":1,"115":1,"122":1,"130":1,"136":1,"141":1,"146":1}}],["鼠标指针移出该覆盖物事件的回调函数",{"2":{"90":1,"95":1,"106":1,"110":1,"115":1,"122":1,"130":1,"136":1,"141":1,"146":1}}],["鼠标左键在该覆盖物上抬起的回调函数",{"2":{"90":1,"95":1,"110":1,"115":1,"122":1,"130":1,"136":1,"141":1,"146":1}}],["鼠标左键在该覆盖物上按下的回调函数",{"2":{"90":1,"95":1,"110":1,"115":1,"122":1,"130":1,"136":1,"141":1,"146":1}}],["鼠标左键双击事件的回调函数",{"2":{"90":1,"95":1,"106":1,"110":1,"115":1,"122":1,"130":1,"136":1,"141":1,"146":1}}],["鼠标左键单击事件的回调函数",{"2":{"90":1,"95":1,"106":1,"110":1,"115":1,"122":1,"130":1,"136":1,"141":1,"146":1}}],["鼠标在地图区域移动过程中触发此事件",{"2":{"86":1}}],["鼠标双击地图时会触发此事件",{"2":{"86":1}}],["鼠标移到",{"2":{"118":1}}],["鼠标移至热区时触发此事件",{"2":{"86":1}}],["鼠标移出热区时触发此事件",{"2":{"86":1}}],["鼠标移出地图区域时触发此事件",{"2":{"86":1}}],["鼠标移出行政区域时触发此事件",{"2":{"72":1}}],["鼠标移入地图区域时触发此事件",{"2":{"86":1}}],["鼠标移入行政区域时触发此事件",{"2":{"72":1}}],["鼠标点击或回车选中某条记录后触发",{"2":{"6":1}}],["县",{"2":{"71":1}}],["市级",{"2":{"71":1}}],["26",{"2":{"241":1}}],["25",{"2":{"241":1}}],["297611",{"2":{"232":1,"242":1}}],["20+",{"2":{"177":1}}],["200¥",{"2":{"2":1}}],["24",{"2":{"159":1,"241":1}}],["245",{"2":{"81":3}}],["22",{"2":{"241":1}}],["220",{"2":{"99":2}}],["228604",{"2":{"82":1}}],["2",{"0":{"153":1,"164":1},"2":{"82":1,"89":1,"94":1,"135":1,"140":1,"239":1}}],["21",{"2":{"81":3,"241":1}}],["2s",{"2":{"80":2}}],["231cf8",{"2":{"69":1}}],["填充透明度",{"2":{"69":1}}],["填充颜色",{"2":{"69":1}}],["行政区",{"2":{"214":1}}],["行政区域边界",{"0":{"133":1}}],["行政区类型",{"2":{"69":1}}],["行政区名字",{"2":{"69":1}}],["行政区图层",{"0":{"67":1},"1":{"68":1,"69":1,"70":1,"71":1,"72":1}}],["英尺",{"2":{"54":1}}],["ip定位",{"2":{"227":1}}],["ip",{"2":{"206":1,"222":1}}],["ios15",{"2":{"206":2}}],["ios10",{"2":{"206":1}}],["ie",{"2":{"179":1}}],["ie11",{"2":{"179":1}}],["ie6",{"2":{"121":2,"129":2}}],["icon>",{"2":{"221":1}}],["icons",{"2":{"217":1,"219":1,"220":1}}],["icon",{"2":{"117":1,"119":1,"121":2,"128":1,"129":2,"216":1,"219":2}}],["iserror",{"2":{"208":1,"211":1,"215":1,"236":1,"238":1}}],["isempty",{"2":{"194":1,"196":1,"198":1,"247":1,"250":1,"256":1}}],["isloading",{"2":{"194":1,"196":1,"198":1,"201":1,"203":1,"204":1,"205":2,"208":1,"211":1,"215":1,"224":1,"226":1,"227":1,"236":1,"238":1,"247":1,"250":1,"256":1}}],["isboundary",{"2":{"134":1,"144":1}}],["isbuildingmask",{"2":{"113":1}}],["ispoimask",{"2":{"113":1}}],["ismapmask",{"2":{"113":1}}],["import",{"2":{"153":2,"163":2,"174":4,"185":1,"187":1,"198":1,"204":1,"215":1,"220":1,"227":1,"232":1,"233":1,"242":1,"256":1}}],["imperial",{"2":{"54":1}}],["imageurl",{"2":{"121":1,"129":1}}],["imagesize",{"2":{"121":1,"129":1}}],["imageoffset",{"2":{"121":1,"129":1}}],["image",{"2":{"103":2}}],["id",{"2":{"82":1,"254":1}}],["initial",{"2":{"262":1,"264":2,"265":1,"271":1,"273":2,"277":1}}],["initd=",{"2":{"204":1,"220":1,"232":1,"242":1}}],["initd",{"2":{"6":1,"12":1,"18":1,"24":1,"30":1,"36":1,"42":1,"48":1,"55":1,"61":1,"66":1,"72":1,"86":1,"90":1,"95":1,"100":1,"106":1,"110":1,"115":1,"122":1,"130":1,"136":1,"141":1,"146":1,"160":1}}],["interface",{"2":{"215":2,"227":1,"256":1,"272":1,"277":2}}],["install",{"2":{"173":1}}],["instance",{"2":{"6":1,"12":1,"18":1,"24":1,"30":1,"36":1,"42":1,"48":1,"55":1,"61":1,"66":1,"72":1,"86":1,"90":1,"95":1,"100":1,"106":1,"110":1,"115":1,"122":1,"130":1,"136":1,"141":1,"146":1,"160":1}}],["inside",{"2":{"113":1,"114":1}}],["infobox",{"2":{"165":1}}],["infowindowopen",{"2":{"122":1}}],["infowindowoffset",{"2":{"98":1}}],["infowindowclose",{"2":{"122":1}}],["infowindow",{"2":{"97":1,"122":2,"165":2}}],["infowindow组件会在地图上显示",{"2":{"96":1}}],["info",{"2":{"87":1}}],["infinite",{"2":{"80":2,"270":2,"277":2}}],["indoor",{"2":{"84":1}}],["index",{"2":{"4":1,"14":1,"124":1,"132":1,"154":1,"192":1,"245":1}}],["in",{"2":{"80":2}}],["input",{"2":{"6":1}}],["单个坐标点解析",{"0":{"245":1}}],["单个地址解析",{"0":{"192":1}}],["单独使用该组件无法查看全景地图",{"2":{"63":1}}],["单独使用该组件不会显示全景地图覆盖情况",{"2":{"44":1}}],["单位ms",{"2":{"265":1,"277":2}}],["单位像素",{"2":{"99":2}}],["单位为毫秒",{"2":{"210":1,"215":2}}],["单位为米",{"2":{"94":1}}],["单位为像素",{"2":{"89":1,"94":1,"135":1,"140":1}}],["单位",{"2":{"15":1,"261":1,"270":1}}],["3",{"2":{"94":1,"135":1,"174":3,"177":1,"179":1,"239":1,"240":1,"255":1}}],["31",{"2":{"82":1}}],["360°",{"2":{"43":1,"62":1}}],["3dmodel",{"2":{"157":1}}],["3d",{"0":{"37":1,"142":1,"157":1},"1":{"38":1,"39":1,"40":1,"41":1,"42":1,"143":1,"144":1,"145":1,"146":1},"2":{"19":1,"37":1,"84":1,"142":1,"145":1,"150":1,"176":1,"177":1,"266":2}}],["numpois",{"2":{"249":1}}],["number",{"2":{"9":2,"15":1,"21":2,"27":2,"33":2,"39":2,"45":2,"51":2,"58":2,"64":2,"69":3,"81":3,"82":7,"89":5,"94":6,"98":2,"99":4,"103":5,"109":5,"113":2,"119":6,"121":8,"126":2,"128":3,"129":6,"135":4,"140":3,"145":5,"197":2,"210":2,"212":3,"214":1,"215":4,"226":1,"227":1,"231":2,"233":2,"238":4,"243":4,"249":2,"251":2,"261":3,"263":2,"265":6,"270":3,"272":6,"277":9}}],["null>",{"2":{"233":1,"243":1}}],["null",{"2":{"195":1,"196":1,"198":1,"231":1,"248":1,"250":1,"256":2}}],["net",{"2":{"174":2}}],["new",{"2":{"167":1}}],["npm",{"0":{"153":1},"2":{"150":1,"153":4,"173":1,"174":2}}],["normal",{"2":{"82":1,"83":2}}],["nabledragging",{"2":{"85":1}}],["name",{"2":{"69":1,"226":1,"227":1}}],["navigation3d",{"2":{"38":1}}],["定位被拒绝",{"2":{"213":1}}],["定位不可用",{"2":{"213":1}}],["定位超时",{"2":{"213":1}}],["定位地址",{"2":{"212":1}}],["定位精度",{"2":{"212":1}}],["定位状态",{"2":{"211":1}}],["定位信息",{"2":{"211":1,"226":1}}],["定位",{"2":{"206":2}}],["定位问题",{"2":{"206":1}}],["定位权限的开启方式请参见",{"2":{"206":1}}],["定位获取的信息更丰富",{"2":{"206":1}}],["定位成功",{"2":{"213":1}}],["定位成功后的回调函数",{"2":{"195":1,"209":1,"225":1,"248":1}}],["定位成功时会调用此方法",{"2":{"36":1}}],["定位失败时会调用此方法",{"2":{"36":1}}],["定位控件",{"0":{"31":1},"1":{"32":1,"33":1,"34":1,"35":1,"36":1},"2":{"31":1}}],["自然也不再支持",{"2":{"179":1}}],["自建或其他地址的资源链接",{"2":{"166":2}}],["自建地图",{"2":{"81":1,"163":1}}],["自定义插件",{"2":{"167":1}}],["自定义插件资源地址",{"2":{"81":1,"163":1}}],["自定义的方式也很简单",{"2":{"167":1}}],["自定义的插件将在地图加载完毕后执行与处理",{"2":{"167":1}}],["自定义资源加载插件",{"0":{"167":1}}],["自定义信息窗口",{"2":{"165":1}}],["自定义纹理贴图",{"0":{"129":1}}],["自定义图标",{"0":{"121":1}}],["自定义",{"2":{"101":1}}],["自定义地图属性",{"2":{"82":1}}],["自定义地图加载中",{"0":{"80":1}}],["自定义控件",{"0":{"25":1},"1":{"26":1,"27":1,"28":1,"29":1,"30":1},"2":{"25":1}}],["自动定位到城市",{"2":{"222":1}}],["自动加载百度地图",{"2":{"177":1}}],["自动聚焦地图中心",{"2":{"69":1}}],["自动填充",{"0":{"3":1},"1":{"4":1,"5":1,"6":1}}],["8+",{"2":{"177":1}}],["8",{"2":{"128":1,"174":1,"239":1}}],["83",{"2":{"21":1,"27":1,"39":1,"51":1,"58":1}}],["88¥",{"2":{"2":1}}],["88",{"2":{"2":1}}],["倾斜",{"2":{"19":1,"37":1}}],["可实现轨迹动画",{"2":{"257":1}}],["可能不会响应返回以下错误",{"2":{"241":1}}],["可联系百度地图提供",{"2":{"206":1}}],["可获取一个地图实例点",{"2":{"228":1}}],["可获取一些内置的地图图标",{"2":{"216":1}}],["可获取行政区域的边界",{"2":{"199":1}}],["可获取加载好的插件类",{"2":{"165":1}}],["可视化",{"0":{"150":1},"1":{"151":1,"152":1,"153":1,"154":1,"155":1,"156":1,"157":1}}],["可用于实现高清屏的高清效果",{"2":{"121":1,"129":1}}],["可使用默认图标",{"2":{"119":1}}],["可使用城市名",{"2":{"82":1}}],["可以尝试",{"2":{"206":1}}],["可以传数组一次解析多个地址",{"2":{"196":1}}],["可以在支持",{"2":{"179":1}}],["可以用来展示大量基于",{"2":{"150":1}}],["可以基于位置经纬度",{"2":{"142":1}}],["可以是任何符合规范的",{"2":{"109":1}}],["可以控制地图的旋转",{"2":{"19":1,"37":1}}],["可根据示例主题名字到百度地图个性化编辑器创建后使用",{"2":{"76":1}}],["可选值",{"2":{"5":1,"9":1,"10":1,"16":1,"17":1,"21":1,"22":1,"27":1,"28":1,"33":1,"34":1,"39":1,"40":1,"45":1,"46":1,"51":1,"52":1,"58":1,"59":1,"64":1,"69":1,"70":1,"81":1,"89":1,"94":1,"99":1,"113":1,"119":1,"128":1,"135":1,"139":1,"140":1,"145":1,"163":1}}],["地铁车站位置点",{"2":{"255":1}}],["地点",{"2":{"254":1}}],["地址信息为经过该站点的所有车次",{"2":{"254":1}}],["地址",{"2":{"254":1}}],["地址描述",{"2":{"252":1,"256":1}}],["地址解析出来的坐标点",{"2":{"196":1}}],["地址检索关键词提示",{"2":{"3":1}}],["地面叠加物类型",{"2":{"103":1}}],["地面叠加层",{"0":{"101":1},"1":{"102":1,"103":1,"104":1,"105":1,"106":1}}],["地球模式暂不支持",{"2":{"84":1}}],["地球模式",{"2":{"83":2}}],["地图组件实例返回值",{"2":{"265":1}}],["地图视角动画的配置",{"2":{"260":1,"269":1}}],["地图经纬度点",{"2":{"233":1,"243":1}}],["地图上只能同时显示一个infowindow",{"2":{"96":1}}],["地图可视区域大小发生变化时会触发此事件",{"2":{"86":1}}],["地图更改缩放级别结束时触发触发此事件",{"2":{"86":1}}],["地图更改缩放级别开始时触发触发此事件",{"2":{"86":1}}],["地图移动结束时触发此事件",{"2":{"86":1}}],["地图移动过程中触发此事件",{"2":{"86":1}}],["地图移动开始时触发此事件",{"2":{"86":1}}],["地图缩放级别",{"2":{"82":1}}],["地图类型发生变化时触发此事件",{"2":{"86":1}}],["地图类型",{"0":{"83":1},"2":{"82":1}}],["地图倾斜角度",{"2":{"82":1}}],["地图旋转角度",{"2":{"82":1}}],["地图默认中心点",{"2":{"82":1}}],["地图显示高度",{"2":{"82":1}}],["地图显示宽度",{"2":{"82":1}}],["地图背景颜色",{"2":{"81":1}}],["地图允许展示的最大级别",{"2":{"81":1}}],["地图允许展示的最小级别",{"2":{"81":1}}],["地图加载中效果是map",{"2":{"80":1}}],["地图控件",{"2":{"73":1}}],["地图核心对象",{"2":{"73":1}}],["地图",{"0":{"73":1},"1":{"74":1,"75":1,"76":1,"77":1,"78":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1},"2":{"19":1,"37":1}}],["版",{"2":{"176":1,"177":1}}],["版权控件",{"0":{"19":1},"1":{"20":1,"21":1,"22":1,"23":1,"24":1}}],["版本",{"2":{"10":1,"16":1,"22":1,"28":1,"34":1,"36":1,"40":1,"46":1,"52":1,"59":1,"69":1,"70":1,"81":1,"82":1,"89":1,"94":1,"99":1,"103":1,"109":1,"113":1,"119":1,"121":1,"128":1,"135":1,"139":1,"140":1,"145":1,"163":1,"165":1}}],["分别表示菜单开启时的地理和像素坐标点",{"2":{"18":2}}],["和相应的",{"2":{"179":1}}],["和",{"2":{"18":2,"76":1,"77":1,"82":1,"162":1,"174":1,"206":1}}],["事件监听",{"0":{"274":1}}],["事件",{"2":{"152":1,"274":1}}],["事件参数",{"2":{"18":2}}],["事件名",{"2":{"6":1,"12":1,"18":1,"24":1,"30":1,"36":1,"42":1,"48":1,"55":1,"61":1,"66":1,"72":1,"86":1,"90":1,"95":1,"100":1,"106":1,"110":1,"115":1,"122":1,"130":1,"136":1,"141":1,"146":1,"160":1}}],["overallview",{"2":{"261":1,"265":1}}],["overlay",{"2":{"84":1,"86":4,"88":1,"92":1,"97":2,"102":1,"108":1,"112":1,"117":1,"124":1,"125":1,"132":1,"133":1,"138":1,"143":1,"200":1}}],["ok",{"2":{"241":1}}],["of",{"0":{"170":1}}],["offset",{"2":{"9":1,"21":1,"27":1,"33":1,"39":1,"45":1,"51":1,"58":1,"64":1,"98":1,"109":1,"119":1}}],["or",{"2":{"153":3}}],["outside",{"2":{"114":1}}],["out",{"2":{"80":2}}],["options",{"2":{"85":1,"163":1,"208":1,"209":1,"215":1,"247":1,"248":1,"256":1,"259":1,"260":1,"265":2,"268":1,"269":1,"277":1}}],["opacity",{"2":{"80":1,"103":1}}],["open",{"2":{"18":1,"100":1}}],["richmarker",{"2":{"165":1}}],["rightdblclick",{"2":{"86":2}}],["rightclick",{"2":{"86":3,"115":1,"122":1,"130":1}}],["right",{"2":{"11":2,"23":2,"29":2,"33":1,"35":2,"41":2,"45":1,"47":2,"53":2,"60":2,"64":1,"65":2}}],["rotation",{"2":{"119":1}}],["raiseondrag",{"2":{"118":1}}],["radius",{"2":{"80":1,"94":1}}],["rgba",{"2":{"81":1}}],["reading",{"0":{"170":1}}],["read",{"0":{"170":1}}],["returns",{"2":{"205":1,"265":1}}],["return",{"2":{"167":1}}],["rect",{"2":{"126":1,"127":1}}],["record",{"2":{"81":1,"163":1,"219":1,"221":1}}],["red9",{"2":{"120":1,"221":1}}],["red8",{"2":{"120":1,"221":1}}],["red7",{"2":{"120":1,"221":1}}],["red6",{"2":{"120":1,"221":1}}],["red5",{"2":{"120":1,"221":1}}],["red4",{"2":{"120":1,"221":1}}],["red3",{"2":{"120":1,"221":1}}],["red2",{"2":{"120":1,"221":1}}],["red10",{"2":{"120":1,"221":1}}],["red1",{"2":{"120":1,"221":1}}],["red",{"2":{"119":1,"120":2,"221":2}}],["ref",{"2":{"105":2,"195":1,"196":1,"198":5,"203":1,"205":4,"209":1,"215":6,"225":1,"227":4,"233":2,"243":2,"248":1,"250":1,"256":5,"260":1,"262":1,"265":2,"269":1,"271":1,"277":2}}],["removeeventlistener",{"2":{"277":1}}],["remove",{"2":{"90":1,"95":1,"110":1,"122":1,"130":1,"136":1,"141":1,"146":1}}],["removetilelayer",{"2":{"86":1}}],["removecontrol",{"2":{"86":1}}],["removeoverlay",{"2":{"86":1}}],["result",{"2":{"236":1,"238":1,"245":1,"246":1,"247":1,"248":1,"250":1,"256":1}}],["resolve",{"2":{"167":3}}],["resetcenter",{"2":{"85":1}}],["resize",{"2":{"82":1,"86":1}}],["restrictcenter",{"2":{"81":1}}],["relative",{"2":{"80":1}}],["required",{"2":{"17":2,"69":1,"89":2,"94":2,"99":1,"103":4,"109":2,"113":1,"119":1,"121":2,"126":1,"128":1,"129":2,"135":1,"140":1,"145":2,"260":1,"269":1}}],["菜单项点击触发的回调函数",{"2":{"17":1}}],["菜单项文字",{"2":{"17":1}}],["菜单项",{"2":{"16":1}}],["菜单宽度",{"2":{"15":1}}],["ms",{"2":{"261":1,"270":1}}],["mc",{"2":{"239":3,"240":1}}],["mit",{"2":{"182":1}}],["minzoom",{"2":{"81":1}}],["module",{"2":{"187":1}}],["model",{"2":{"99":1}}],["model=",{"2":{"96":1}}],["mount",{"2":{"163":1}}],["mouseup",{"2":{"90":1,"95":1,"110":1,"115":1,"122":1,"130":1,"136":1,"141":1,"146":1}}],["mousedown",{"2":{"90":1,"95":1,"110":1,"115":1,"122":1,"130":1,"136":1,"141":1,"146":1}}],["mousemove",{"2":{"86":1,"106":1}}],["mouseout",{"2":{"72":1,"86":1,"90":1,"95":1,"106":1,"110":1,"115":1,"122":1,"130":1,"136":1,"141":1,"146":1}}],["mouseover",{"2":{"72":1,"86":1,"90":1,"95":1,"106":1,"110":1,"115":1,"122":1,"130":1,"136":1,"141":1,"146":1}}],["moveend",{"2":{"86":1}}],["movestart",{"2":{"86":1}}],["moving",{"2":{"86":1}}],["maximumage",{"2":{"210":1,"215":1}}],["maxzoom",{"2":{"81":1}}],["marker3d",{"2":{"124":1,"125":1}}],["marker",{"2":{"117":1,"118":1,"165":2,"216":1}}],["margin",{"2":{"80":1}}],["map地图组件ref引用",{"2":{"260":1,"269":1}}],["mapbar",{"2":{"239":1}}],["map>",{"2":{"204":1,"220":1,"232":1,"242":1}}],["mapmaskshowregion",{"0":{"114":1},"2":{"113":1}}],["mapmask",{"2":{"112":1}}],["maptypechange",{"2":{"86":1}}],["maptype",{"2":{"82":2}}],["mapvthreedoc",{"2":{"157":1}}],["mapvthree",{"2":{"81":2,"152":3,"153":2,"165":1}}],["mapv",{"0":{"150":1},"1":{"151":1,"152":1,"153":1,"154":1,"155":1,"156":1,"157":1},"2":{"81":2,"150":1,"151":1,"152":3,"153":10,"154":2,"155":2,"156":2,"157":1,"165":1}}],["mapvglthreelayers",{"2":{"165":1}}],["mapvgl",{"2":{"81":2,"150":1,"152":3,"153":6,"165":1}}],["mapstylejson",{"2":{"77":1,"82":1}}],["mapstyleid",{"2":{"76":1,"77":1,"82":1}}],["mapstyleid会优先生效",{"2":{"76":1}}],["mapstyleid或者mapstylejson来展示个性化地图",{"2":{"76":1}}],["map",{"0":{"73":1,"180":1},"1":{"74":1,"75":1,"76":1,"77":1,"78":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1},"2":{"3":1,"5":2,"6":1,"7":1,"12":1,"13":1,"17":1,"18":1,"19":1,"24":1,"25":1,"30":1,"31":1,"36":1,"37":1,"42":1,"43":1,"48":1,"49":1,"55":1,"56":1,"61":1,"62":1,"66":1,"67":1,"72":1,"73":2,"74":1,"75":1,"76":1,"78":1,"79":1,"82":1,"83":6,"85":2,"86":2,"87":1,"89":1,"90":1,"91":1,"94":1,"95":1,"96":1,"100":1,"101":1,"106":1,"107":1,"109":1,"110":1,"111":1,"115":1,"116":1,"119":1,"122":1,"123":1,"128":1,"130":1,"131":1,"135":1,"136":1,"137":1,"140":1,"141":1,"142":1,"145":1,"146":1,"160":1,"163":1,"169":1,"173":3,"174":2,"185":1,"186":1,"187":1,"191":1,"192":1,"193":1,"194":1,"198":1,"199":1,"201":1,"204":2,"206":1,"208":1,"215":1,"216":1,"217":1,"220":2,"222":1,"224":1,"227":1,"228":1,"229":1,"232":2,"234":1,"236":1,"242":2,"244":1,"245":1,"246":1,"247":1,"256":1,"257":1,"259":2,"260":2,"265":2,"266":1,"268":2,"269":2,"277":1}}],["multiinstance",{"2":{"75":1}}],["meta",{"2":{"174":1}}],["meterage",{"2":{"149":1}}],["metric",{"2":{"52":1,"54":1}}],["menuitems",{"2":{"16":1}}],["menu",{"2":{"14":1}}],["右键双击地图时触发此事件",{"2":{"86":1}}],["右键双击缩小",{"2":{"82":1}}],["右键单击地图时触发此事件",{"2":{"86":1}}],["右键可连续移动地图",{"2":{"82":1}}],["右键菜单关闭时触发",{"2":{"18":1}}],["右键菜单打开时触发",{"2":{"18":1}}],["右下",{"2":{"11":1,"23":1,"29":1,"35":1,"41":1,"47":1,"53":1,"60":1,"65":1}}],["右上",{"2":{"11":1,"23":1,"29":1,"35":1,"41":1,"47":1,"53":1,"60":1,"65":1}}],["左键单击地图时触发此事件",{"2":{"86":1}}],["左键双击放大",{"2":{"82":1}}],["左",{"2":{"82":1}}],["左下",{"2":{"11":1,"23":1,"29":1,"35":1,"41":1,"47":1,"53":1,"60":1,"65":1}}],["左上",{"2":{"11":1,"23":1,"29":1,"35":1,"41":1,"47":1,"53":1,"60":1,"65":1}}],["值",{"2":{"11":1,"23":1,"29":1,"35":1,"41":1,"47":1,"53":1,"54":1,"60":1,"65":1,"71":1,"83":1,"114":1,"255":1}}],["firefox",{"2":{"179":1}}],["fillopacity",{"2":{"69":1,"94":1,"128":1,"135":1}}],["fillcolor",{"2":{"69":1,"94":1,"128":1,"135":1}}],["faq",{"0":{"168":1,"275":1},"1":{"169":1,"170":1,"171":1,"276":1}}],["false",{"2":{"9":1,"17":1,"69":1,"81":1,"82":3,"93":1,"94":1,"99":1,"113":3,"118":1,"134":2,"135":1,"139":1,"140":1,"144":1,"210":2}}],["function",{"2":{"152":1,"198":1,"204":1,"205":1,"215":1,"220":1,"221":1,"227":1,"232":1,"233":1,"242":1,"243":1,"256":1,"265":1,"277":1}}],["f00",{"2":{"128":1}}],["fff",{"2":{"94":1,"135":1,"145":2}}],["f1f1f1",{"2":{"82":1}}],["featuretype",{"2":{"82":1}}],["fdfd27",{"2":{"69":1}}],["from",{"2":{"3":1,"7":1,"13":1,"19":1,"25":1,"31":1,"37":1,"43":1,"49":1,"56":1,"62":1,"67":1,"73":1,"87":1,"91":1,"96":1,"101":1,"107":1,"111":1,"116":1,"123":1,"131":1,"137":1,"142":1,"153":3,"163":3,"185":2,"187":1,"191":1,"192":1,"193":1,"198":2,"199":1,"204":1,"205":1,"206":1,"215":2,"216":1,"220":1,"222":1,"227":2,"228":1,"232":1,"233":2,"234":1,"241":1,"242":1,"243":1,"244":1,"245":1,"246":1,"256":2,"257":1,"265":1,"266":1,"277":1}}],["you",{"2":{"174":1}}],["yarn",{"2":{"173":1}}],["y",{"2":{"9":2,"21":2,"27":2,"33":2,"39":2,"45":2,"51":2,"58":2,"64":2,"98":2,"109":1,"119":1,"121":2,"129":2}}],["x→gps",{"2":{"241":2}}],["x3c",{"2":{"80":14,"105":2,"152":10,"164":1,"166":1,"167":1,"174":18,"187":8,"192":1,"193":1,"198":5,"204":4,"205":3,"215":5,"220":6,"221":1,"227":3,"232":4,"233":1,"242":4,"243":1,"245":1,"246":1,"256":6,"265":1,"277":1}}],["x",{"2":{"9":2,"21":2,"27":2,"33":2,"39":2,"45":2,"51":2,"58":2,"64":2,"98":2,"109":1,"119":1,"121":2,"129":2,"169":2}}],["静态组件",{"0":{"9":1,"15":1,"21":1,"27":1,"33":1,"39":1,"45":1,"51":1,"58":1,"64":1,"69":1,"81":1,"93":1,"98":1,"118":1,"126":1,"134":1,"139":1,"144":1}}],["licenses",{"2":{"182":1}}],["license",{"0":{"182":1}}],["linkright",{"2":{"139":1}}],["lineupdate",{"2":{"90":1,"95":1,"110":1,"136":1,"141":1,"146":1}}],["lushu",{"2":{"165":1}}],["lng",{"2":{"82":2,"89":2,"94":1,"99":1,"103":2,"109":1,"113":1,"119":1,"128":1,"135":1,"140":1,"145":1,"197":1,"212":1,"231":1,"232":1,"233":2,"238":2,"242":1,"243":3,"251":1,"263":1,"265":1,"272":1,"277":1}}],["lt",{"2":{"81":1,"163":1,"195":1,"196":1,"203":1,"209":1,"219":1,"225":1,"248":1,"250":1,"260":1,"262":1,"269":1,"271":1}}],["label",{"2":{"108":1}}],["latest",{"2":{"174":1}}],["latlng",{"2":{"86":4}}],["lat",{"2":{"82":2,"89":2,"94":1,"99":1,"103":2,"109":1,"113":1,"119":1,"128":1,"135":1,"140":1,"145":1,"197":1,"212":1,"231":1,"232":1,"233":2,"238":2,"242":1,"243":3,"251":1,"263":1,"265":1,"272":1,"277":1}}],["lang=",{"2":{"80":1,"152":1,"187":1,"204":1,"220":1,"232":1,"242":1}}],["layer",{"2":{"63":1,"68":1,"84":1}}],["loop",{"2":{"270":1,"277":1}}],["log",{"2":{"167":1}}],["localresultpoi>",{"2":{"256":1}}],["localresultpoi",{"0":{"254":1},"2":{"252":1}}],["locationoptions",{"2":{"256":1}}],["location>",{"2":{"215":2,"227":2}}],["locationerror",{"2":{"36":1}}],["locationsuccess",{"2":{"36":1}}],["location",{"0":{"212":1},"2":{"5":1,"32":1,"120":1,"208":1,"209":2,"211":2,"215":3,"221":1,"224":1,"225":2,"226":1,"227":3}}],["loc",{"2":{"120":2,"221":2}}],["longpress",{"2":{"86":1}}],["load",{"2":{"86":1}}],["loadingtextcolor",{"2":{"82":1}}],["loadingbgcolor",{"2":{"82":1}}],["loading>",{"2":{"80":1}}],["loading",{"2":{"80":1,"181":1}}],["left",{"2":{"9":1,"11":2,"21":1,"23":2,"27":1,"29":2,"35":2,"39":1,"41":2,"47":2,"51":1,"53":2,"58":1,"60":2,"65":2,"80":1}}],["lbsyun",{"2":{"147":1,"157":1}}],["lbs",{"2":{"8":1}}],["handleinitd",{"2":{"204":2,"220":2,"232":2,"242":2}}],["handlepluginready",{"2":{"152":2}}],["hooks",{"2":{"177":1,"190":1,"192":1,"193":1,"194":1,"199":1,"201":1,"207":1,"208":1,"216":1,"217":1,"223":1,"224":1,"228":1,"229":1,"235":1,"236":1,"245":1,"246":1,"247":1,"257":2,"258":1,"259":1,"266":1,"267":1,"268":1}}],["hotspotout",{"2":{"86":1}}],["hotspotover",{"2":{"86":1}}],["hotspotclick",{"2":{"86":1}}],["home",{"2":{"82":1}}],["hello",{"0":{"175":1}}],["head>",{"2":{"174":4}}],["heading",{"2":{"82":1,"272":1,"277":1}}],["heatgridlayer",{"0":{"156":1},"2":{"156":2}}],["height",{"2":{"80":2,"82":1,"99":1,"121":2,"126":1,"129":1}}],["htmlcanvaselement",{"2":{"105":4}}],["html",{"2":{"80":1,"154":1,"155":1,"156":1,"164":1,"166":1,"167":1,"174":3,"204":1,"232":1,"242":1}}],["htm",{"2":{"8":1}}],["https",{"2":{"8":1,"87":1,"147":1,"154":1,"155":1,"156":1,"157":1,"174":4,"206":1}}],["highlight",{"2":{"6":1}}],["chrome",{"2":{"179":1,"206":1}}],["charset=",{"2":{"174":1}}],["changes",{"0":{"158":1},"1":{"159":1}}],["createapp",{"2":{"163":2,"185":2}}],["cdn",{"0":{"152":1},"2":{"174":5}}],["cal",{"2":{"194":1,"195":1,"198":1,"201":1,"202":1,"205":2,"208":1,"209":1,"215":1,"224":1,"225":1,"227":1,"247":1,"248":1,"256":1,"277":2}}],["callback",{"2":{"17":1,"277":2}}],["cancel",{"2":{"259":1,"262":1,"265":1,"268":1,"271":1,"277":1}}],["cannot",{"0":{"170":1}}],["canvas",{"2":{"101":1,"103":2,"180":1}}],["circle",{"2":{"92":1,"126":2,"127":1}}],["city表示地址所属的城市",{"2":{"196":1}}],["city",{"2":{"71":1,"196":1,"198":1,"214":2,"215":2,"253":1,"254":1,"256":1}}],["citylist",{"2":{"8":1}}],["curve",{"2":{"87":1}}],["customplugin",{"2":{"167":3}}],["custom",{"2":{"26":1}}],["cn",{"2":{"87":1}}],["center",{"2":{"82":1,"94":1,"272":1,"277":1}}],["cssstyledeclaration",{"2":{"109":1}}],["css",{"2":{"80":1,"89":1,"94":2,"109":1,"118":1,"121":3,"128":1,"129":3,"135":2,"140":1}}],["clip",{"2":{"93":1,"134":1,"139":1}}],["clickclose",{"2":{"100":1}}],["click",{"2":{"86":3,"90":3,"95":3,"106":3,"110":3,"115":3,"122":3,"130":3,"136":3,"141":3,"146":3}}],["clearoverlays",{"2":{"86":1,"89":1,"94":1,"109":1,"119":1,"128":1,"135":1,"140":1,"145":1}}],["class=",{"2":{"80":3}}],["close",{"2":{"18":1,"100":1}}],["ccitylist",{"2":{"8":1}}],["coords",{"2":{"241":2}}],["coordinates",{"2":{"239":8,"240":3}}],["coordinatestotype",{"0":{"240":1},"2":{"238":1,"240":1}}],["coordinatesfromtype",{"0":{"239":1},"2":{"238":1,"239":1}}],["code",{"2":{"214":3,"215":1,"226":1,"227":1,"241":2}}],["country",{"2":{"214":1,"215":1}}],["color",{"2":{"80":1}}],["copyright",{"2":{"20":1}}],["compileroptions",{"2":{"186":2}}],["composition",{"2":{"177":1}}],["com",{"2":{"8":1,"147":1,"154":1,"155":1,"156":1,"157":1,"174":2}}],["convert",{"2":{"236":2,"238":1}}],["console",{"2":{"167":1}}],["const",{"2":{"163":1,"185":1,"192":1,"193":1,"204":1,"220":1,"232":1,"242":1,"245":1,"246":1}}],["contributors",{"2":{"181":1}}],["controlpoints",{"2":{"89":1}}],["control",{"2":{"8":1,"20":1,"26":1,"32":1,"38":1,"44":1,"50":1,"57":1}}],["content",{"2":{"109":1}}],["contextmenuitem",{"0":{"17":1},"2":{"16":1}}],["context",{"2":{"14":1}}],["confirm",{"2":{"6":1}}],["默认1000",{"2":{"277":1}}],["默认0",{"2":{"277":1}}],["默认55度",{"2":{"265":1}}],["默认状态",{"2":{"264":1,"273":1}}],["默认会根据轨迹情况调整到一个合适的级别",{"2":{"261":1,"265":1}}],["默认",{"2":{"261":1}}],["默认开启",{"2":{"261":1,"265":1}}],["默认为1",{"2":{"277":1}}],["默认为10秒",{"2":{"215":1}}],["默认为10分钟",{"2":{"210":1,"215":1}}],["默认为",{"2":{"231":1,"249":2}}],["默认为false",{"2":{"215":1}}],["默认为空数组",{"2":{"203":1}}],["默认图标可选值",{"0":{"120":1}}],["默认情况下在地图上打开的信息窗底端的尖角将指向其地理坐标",{"2":{"98":1}}],["默认情况下",{"2":{"80":1}}],["默认显示在地图左下角",{"2":{"49":1}}],["默认列表是否展开",{"2":{"9":1}}],["默认位于地图右下角",{"2":{"7":1,"19":1,"31":1,"37":1,"56":1}}],["默认值为地图当前旋转角度",{"2":{"272":1,"277":1}}],["默认值为地图当前状态中心点",{"2":{"277":1}}],["默认值为地图当前状态倾斜角度",{"2":{"272":1,"277":1}}],["默认值为地图当前状态缩放级别",{"2":{"272":1,"277":1}}],["默认值",{"2":{"5":1,"9":1,"10":1,"15":1,"16":1,"17":1,"21":1,"22":1,"27":1,"28":1,"33":1,"34":1,"39":1,"40":1,"45":1,"46":1,"51":1,"52":1,"58":1,"59":1,"64":1,"69":1,"70":1,"81":1,"82":1,"84":1,"89":1,"93":1,"94":1,"98":1,"99":1,"103":1,"109":1,"113":1,"118":1,"119":1,"121":1,"126":1,"128":1,"129":1,"134":1,"135":1,"139":1,"140":1,"144":1,"145":1,"163":1,"195":1,"202":1,"209":1,"210":1,"225":1,"248":1,"260":1,"261":1,"269":1,"270":1}}],["某条记录高亮之后",{"2":{"6":1}}],["volar",{"0":{"186":1},"2":{"177":1,"186":2}}],["void",{"2":{"6":3,"17":1,"18":2,"85":4,"90":8,"95":8,"106":5,"110":8,"115":7,"122":13,"130":8,"136":8,"141":8,"146":8,"195":1,"196":1,"198":2,"202":1,"203":1,"205":2,"209":1,"211":1,"215":2,"225":1,"226":1,"227":2,"231":1,"233":1,"238":1,"243":1,"248":1,"250":1,"256":2,"262":5,"265":5,"271":5,"277":7}}],["version",{"2":{"174":2}}],["v4",{"2":{"170":1,"171":1}}],["v2",{"0":{"159":1}}],["v1",{"0":{"159":1},"2":{"180":1}}],["vue2",{"0":{"169":1},"2":{"169":1}}],["vue",{"2":{"152":2,"163":2,"169":1,"174":3,"177":1,"179":1,"185":1,"187":1,"198":1,"205":1,"215":1,"220":1,"227":1,"233":1,"243":1,"256":1,"265":1,"277":1}}],["vue3baidumapgl",{"2":{"174":2,"185":2}}],["vue3",{"0":{"176":1},"1":{"177":1,"178":1,"179":1,"180":1,"181":1,"182":1},"2":{"3":1,"7":1,"13":1,"19":1,"25":1,"31":1,"37":1,"43":1,"49":1,"56":1,"62":1,"67":1,"73":1,"87":1,"91":1,"96":1,"101":1,"107":1,"111":1,"116":1,"123":1,"131":1,"137":1,"142":1,"163":1,"169":2,"173":4,"174":7,"176":1,"179":2,"183":1,"185":1,"186":1,"187":2,"191":1,"192":1,"193":1,"198":1,"199":1,"204":1,"206":1,"215":1,"216":1,"220":1,"222":1,"227":1,"228":1,"232":1,"234":1,"242":1,"244":1,"245":1,"246":1,"256":1,"257":1,"266":1}}],["v",{"2":{"99":1}}],["viewanimationkeyframes",{"0":{"272":1},"2":{"271":1,"272":1,"277":2}}],["viewanimation",{"2":{"271":2,"277":1}}],["viewanimationoptions",{"0":{"270":1},"2":{"269":1}}],["viewport",{"2":{"69":1}}],["vite",{"2":{"170":1,"171":1,"173":1}}],["vitepress",{"2":{"8":1}}],["video",{"2":{"103":2}}],["visible",{"2":{"10":1,"16":1,"22":1,"28":1,"34":1,"40":1,"46":1,"52":1,"59":1,"70":1,"89":1,"94":1,"103":1,"109":1,"113":1,"119":1,"128":1,"135":1,"140":1,"145":1}}],["gps",{"2":{"241":1}}],["gps标准坐标",{"2":{"239":1}}],["gcj02的平面墨卡托坐标",{"2":{"239":1}}],["gcj02",{"2":{"239":2,"240":1}}],["gcj02坐标",{"2":{"239":1,"240":1}}],["groundoverlayurl",{"0":{"105":1},"2":{"103":1,"105":1}}],["groundoverlay",{"2":{"102":1}}],["geoutils",{"2":{"165":1}}],["geodesic",{"2":{"93":1,"134":1,"139":1}}],["get方法调用后才可用",{"2":{"203":1}}],["get",{"2":{"192":1,"193":1,"194":2,"196":1,"198":1,"201":2,"203":1,"204":2,"205":3,"208":2,"211":1,"215":1,"224":2,"226":1,"227":1,"245":1,"246":1,"247":2,"250":1,"256":1}}],["getbasemapoptions",{"2":{"85":1}}],["getmapinstance",{"0":{"170":1},"2":{"85":1}}],["gt",{"2":{"6":3,"17":1,"18":2,"81":1,"85":4,"90":8,"95":10,"106":7,"110":10,"111":1,"115":9,"122":15,"130":10,"136":10,"141":8,"146":10,"163":1,"195":2,"196":2,"202":1,"203":2,"209":2,"211":1,"219":1,"225":2,"226":1,"231":1,"238":1,"248":2,"250":2,"260":1,"262":6,"269":1,"271":6}}],["gl扩展库",{"2":{"153":1}}],["gl",{"0":{"176":1,"180":1},"1":{"177":1,"178":1,"179":1,"180":1,"181":1,"182":1},"2":{"3":1,"7":1,"13":1,"19":1,"25":1,"31":1,"37":1,"43":1,"49":1,"56":1,"62":1,"67":1,"73":1,"87":1,"91":1,"96":1,"101":1,"107":1,"111":1,"116":1,"123":1,"131":1,"137":1,"142":1,"154":1,"155":1,"156":1,"163":1,"173":4,"174":6,"176":1,"177":1,"179":1,"180":1,"183":1,"185":1,"186":1,"187":2,"191":1,"192":1,"193":1,"198":1,"199":1,"204":1,"206":1,"215":1,"216":1,"220":1,"222":1,"227":1,"228":1,"232":1,"234":1,"242":1,"244":1,"245":1,"246":1,"256":1,"257":1,"266":1}}],["=18",{"2":{"111":1}}],["=>",{"2":{"105":1,"147":1,"167":2,"198":2,"205":2,"215":2,"227":2,"233":1,"243":1,"256":2,"265":5,"277":5}}],["=",{"2":{"6":3,"17":1,"18":2,"85":4,"90":8,"95":8,"105":1,"106":5,"110":8,"115":7,"122":13,"130":8,"136":8,"141":8,"146":8,"163":1,"167":1,"185":1,"192":1,"193":1,"194":1,"195":1,"196":1,"197":1,"198":2,"201":1,"202":1,"203":1,"204":1,"205":1,"208":1,"209":1,"211":1,"215":1,"217":1,"220":1,"221":1,"224":1,"225":1,"226":1,"229":1,"231":1,"232":1,"233":1,"236":1,"238":1,"239":8,"240":3,"242":1,"243":1,"245":1,"246":1,"247":1,"248":1,"250":1,"251":1,"256":1,"259":1,"262":5,"263":1,"264":1,"265":3,"268":1,"271":5,"272":1,"273":1,"277":3}}],["err",{"2":{"213":3,"215":3}}],["example",{"2":{"205":1}}],["extends",{"2":{"198":2,"256":2}}],["export",{"2":{"198":2,"205":2,"215":1,"221":1,"227":1,"233":2,"243":2,"256":2,"265":3,"277":3}}],["expand",{"2":{"9":1,"148":1,"149":1,"155":1,"156":1,"157":1}}],["edge",{"2":{"179":1}}],["es",{"2":{"187":1}}],["es2018",{"2":{"179":1}}],["esm",{"2":{"153":1}}],["earth",{"2":{"83":2}}],["ease",{"2":{"80":2}}],["enum",{"2":{"239":1,"240":1}}],["endpoint",{"2":{"103":1}}],["end",{"2":{"82":1,"120":1,"221":1}}],["enablehighaccuracy",{"2":{"210":1,"215":1}}],["enablesdklocation",{"2":{"210":1,"215":1}}],["enablescrollwheelzoom",{"2":{"82":1}}],["enableautopan",{"2":{"99":1}}],["enableautoresize",{"2":{"82":1}}],["enableediting",{"2":{"94":1,"135":1,"140":1}}],["enablecloseonclick",{"2":{"99":1}}],["enableclicking",{"2":{"93":1,"118":1,"134":1,"139":1,"144":1}}],["enablecontinuouszoom",{"2":{"82":1}}],["enablemassclear",{"2":{"89":1,"94":1,"109":1,"119":1,"128":1,"135":1,"140":1,"145":1}}],["enableiconclick",{"2":{"82":1}}],["enableinertialdragging",{"2":{"82":1}}],["enablepinchtozoom",{"2":{"82":1}}],["enablekeyboard",{"2":{"82":1}}],["enabledoubleclickzoom",{"2":{"82":1}}],["enabledragging",{"2":{"82":1,"119":1}}],["enableresizeoncenter",{"2":{"82":1}}],["enabletraffic",{"2":{"82":1}}],["event",{"2":{"6":3,"18":2,"36":2,"90":8,"95":8,"100":3,"106":5,"110":8,"115":7,"122":13,"130":8,"136":8,"141":8,"146":8,"277":2}}],["e",{"2":{"6":3,"18":2,"90":8,"95":8,"106":5,"110":8,"115":7,"122":13,"130":8,"136":8,"141":8,"146":8}}],["发起列表检索",{"2":{"6":1}}],["框中输入字符后",{"2":{"6":1}}],["在后面添加监听",{"2":{"276":1}}],["在定义关键帧时相邻两个关键帧的坐标点不宜距离太远",{"2":{"266":1}}],["在播放动画时隐藏了地图上的",{"2":{"257":1,"266":1}}],["在轨迹动态播放的同时",{"2":{"257":1}}],["在百度地图中展示该结果点的详情信息链接",{"2":{"254":1}}],["在开始使用前",{"2":{"188":1}}],["在线演示",{"2":{"175":1}}],["在地图底面上叠加覆盖物",{"2":{"101":1}}],["在地图上添加标记点",{"2":{"117":1}}],["在地图上添加自定义内容的右键菜单",{"2":{"13":1}}],["在地图上显示文本标注",{"2":{"107":1}}],["在地图上显示行政区划分",{"2":{"67":1}}],["在地图上绘制简单的折线",{"2":{"137":1}}],["在地图上绘制简单的多边形",{"2":{"131":1}}],["在地图上绘制简单的圆形",{"2":{"91":1}}],["在地图上绘制带高度的点覆盖物",{"2":{"123":1}}],["在地图上绘制点",{"2":{"116":1}}],["在地图上绘制二阶贝塞尔曲线",{"2":{"87":1}}],["在标注上打开的信息窗底端尖角的位置取决于标注所用图标的",{"2":{"98":1}}],["在",{"2":{"6":1,"192":1,"193":1,"245":1,"246":1}}],["在写这个组件时候深有体会",{"2":{"3":1}}],["返回的",{"2":{"249":1}}],["返回值",{"0":{"196":1,"203":1,"211":1,"219":1,"226":1,"231":1,"238":1,"250":1,"262":1,"271":1},"1":{"197":1,"212":1,"213":1,"214":1,"251":1,"252":1,"253":1,"254":1,"255":1,"263":1,"264":1,"272":1,"273":1},"2":{"196":1,"203":1,"211":1,"219":1,"226":1,"231":1,"238":1,"250":1,"262":1,"271":1}}],["返回一个地图实例",{"2":{"6":1,"12":1,"18":1,"24":1,"30":1,"36":1,"42":1,"48":1,"55":1,"61":1,"66":1,"72":1,"86":1,"90":1,"95":1,"100":1,"106":1,"110":1,"115":1,"122":1,"130":1,"136":1,"141":1,"146":1,"160":1}}],["返回数据类型",{"2":{"5":1}}],["组件初始化完毕调用",{"2":{"194":1,"201":1,"208":1,"217":1,"224":1,"229":1,"236":1,"247":1,"259":1,"268":1}}],["组件初始化后会触发此事件",{"2":{"86":1,"160":1}}],["组件初始化后",{"2":{"6":1,"12":1,"18":1,"24":1,"30":1,"36":1,"42":1,"48":1,"55":1,"61":1,"66":1,"72":1,"90":1,"95":1,"100":1,"106":1,"110":1,"115":1,"122":1,"130":1,"136":1,"141":1,"146":1}}],["组件提供完善的代码提示",{"2":{"177":1}}],["组件提供的",{"2":{"25":1}}],["组件以及",{"2":{"177":1}}],["组件库",{"0":{"179":1},"2":{"176":1}}],["组件卸载时会触发此事件",{"2":{"86":1,"160":1}}],["组件卸载时会调用此方法",{"2":{"6":1,"12":1,"18":1,"24":1,"30":1,"36":1,"42":1,"48":1,"55":1,"61":1,"66":1,"72":1,"90":1,"95":1,"100":1,"106":1,"110":1,"115":1,"122":1,"130":1,"136":1,"141":1,"146":1}}],["组件",{"0":{"164":1},"2":{"85":1,"165":1}}],["组件方法",{"0":{"85":1}}],["组件的",{"2":{"76":1}}],["组件事件",{"0":{"6":1,"12":1,"18":1,"24":1,"30":1,"36":1,"42":1,"48":1,"55":1,"61":1,"66":1,"72":1,"86":1,"90":1,"95":1,"100":1,"106":1,"110":1,"115":1,"122":1,"130":1,"136":1,"141":1,"146":1}}],["组件示例样式被",{"2":{"8":1}}],["组件示例",{"0":{"4":1,"8":1,"14":1,"20":1,"26":1,"32":1,"38":1,"44":1,"50":1,"57":1,"63":1,"68":1,"88":1,"92":1,"97":1,"102":1,"108":1,"112":1,"117":1,"124":1,"132":1,"138":1}}],["business",{"2":{"252":1,"256":1}}],["building",{"2":{"84":1}}],["bd09mc",{"2":{"239":1,"240":1}}],["bd09",{"2":{"239":2,"240":2}}],["bd09ll",{"2":{"239":1,"240":1}}],["bdistrictlayer",{"0":{"67":1},"1":{"68":1,"69":1,"70":1,"71":1,"72":1},"2":{"67":1}}],["better",{"2":{"174":1}}],["beziercurve",{"2":{"88":1}}],["bezier",{"2":{"87":1}}],["b",{"2":{"159":1}}],["breaking",{"0":{"158":1},"1":{"159":1}}],["bprism",{"0":{"142":1},"1":{"143":1,"144":1,"145":1,"146":1},"2":{"142":1}}],["bpolyline",{"0":{"137":1},"1":{"138":1,"139":1,"140":1,"141":1},"2":{"137":1}}],["bpolygon",{"0":{"131":1},"1":{"132":1,"133":1,"134":1,"135":1,"136":1},"2":{"131":1}}],["bpanoramacoveragelayer",{"0":{"62":1},"1":{"63":1,"64":1,"65":1,"66":1},"2":{"62":1}}],["bpanoramacontrol",{"0":{"43":1},"1":{"44":1,"45":1,"46":1,"47":1,"48":1},"2":{"43":1}}],["bmarker3d",{"0":{"123":1},"1":{"124":1,"125":1,"126":1,"127":1,"128":1,"129":1,"130":1},"2":{"123":1}}],["bmarker",{"0":{"116":1},"1":{"117":1,"118":1,"119":1,"120":1,"121":1,"122":1},"2":{"116":1}}],["bmapmask",{"0":{"111":1},"1":{"112":1,"113":1,"114":1,"115":1},"2":{"111":1}}],["bmap>",{"2":{"80":2,"152":2,"187":2}}],["bmap",{"0":{"147":1,"164":1},"1":{"148":1,"149":1},"2":{"9":1,"11":4,"21":1,"23":4,"25":1,"27":1,"29":4,"33":1,"35":4,"39":1,"41":4,"45":1,"47":4,"51":1,"52":1,"53":4,"54":2,"58":1,"60":4,"64":1,"65":4,"73":1,"82":1,"83":6,"126":3,"127":2,"147":4,"148":1,"149":1,"152":2,"164":1,"165":1,"166":1,"167":1,"187":1,"213":1,"215":1}}],["bmapgl",{"2":{"5":2,"6":1,"12":1,"17":1,"18":1,"24":1,"30":1,"36":1,"42":1,"48":1,"55":1,"61":1,"66":1,"72":1,"86":1,"90":1,"95":1,"100":1,"106":1,"110":1,"115":1,"122":1,"130":1,"136":1,"141":1,"146":1,"147":2,"160":1,"194":1,"201":1,"208":1,"216":1,"217":1,"219":2,"221":1,"224":1,"228":1,"229":1,"231":2,"233":2,"236":1,"243":2,"247":1,"256":2,"259":1,"268":1,"271":1,"277":2}}],["blue9",{"2":{"120":1,"221":1}}],["blue8",{"2":{"120":1,"221":1}}],["blue7",{"2":{"120":1,"221":1}}],["blue6",{"2":{"120":1,"221":1}}],["blue5",{"2":{"120":1,"221":1}}],["blue4",{"2":{"120":1,"221":1}}],["blue3",{"2":{"120":1,"221":1}}],["blue2",{"2":{"120":1,"221":1}}],["blue10",{"2":{"120":1,"221":1}}],["blue1",{"2":{"120":1,"221":1}}],["blue",{"2":{"119":1,"120":2,"221":2}}],["blabel",{"0":{"107":1},"1":{"108":1,"109":1,"110":1},"2":{"107":1}}],["blocation",{"0":{"31":1},"1":{"32":1,"33":1,"34":1,"35":1,"36":1},"2":{"31":1}}],["bgroundoverlay",{"0":{"101":1},"1":{"102":1,"103":1,"104":1,"105":1,"106":1},"2":{"101":1}}],["binfowindow",{"0":{"96":1},"1":{"97":1,"98":1,"99":1,"100":1},"2":{"96":1}}],["bbeziercurve",{"0":{"87":1},"1":{"88":1,"89":1,"90":1},"2":{"87":1}}],["bzoom",{"0":{"56":1},"1":{"57":1,"58":1,"59":1,"60":1,"61":1},"2":{"56":1,"187":2}}],["bscale",{"0":{"49":1},"1":{"50":1,"51":1,"52":1,"53":1,"54":1,"55":1},"2":{"49":1}}],["bnavigation3d",{"0":{"37":1},"1":{"38":1,"39":1,"40":1,"41":1,"42":1},"2":{"37":1}}],["bcircle",{"0":{"91":1},"1":{"92":1,"93":1,"94":1,"95":1},"2":{"91":1}}],["bcitylist",{"0":{"7":1},"1":{"8":1,"9":1,"10":1,"11":1,"12":1},"2":{"7":1}}],["bcontrol",{"0":{"25":1},"1":{"26":1,"27":1,"28":1,"29":1,"30":1},"2":{"25":1}}],["bcontextmenu",{"0":{"13":1},"1":{"14":1,"15":1,"16":1,"17":1,"18":1},"2":{"13":1}}],["bcopyright",{"0":{"19":1},"1":{"20":1,"21":1,"22":1,"23":1,"24":1},"2":{"19":1}}],["boundaries",{"2":{"133":1,"200":1,"201":1,"202":1,"203":1,"204":1,"205":3}}],["bounds",{"0":{"104":1}}],["bounce",{"2":{"80":4}}],["bounce2",{"2":{"80":3}}],["bounce1",{"2":{"80":2}}],["border",{"2":{"80":1,"165":1}}],["boolean>",{"2":{"198":2,"205":1,"215":2,"227":1,"256":2}}],["boolean",{"2":{"9":1,"10":1,"16":1,"17":1,"22":1,"28":1,"34":1,"40":1,"46":1,"52":1,"59":1,"69":1,"70":1,"81":2,"82":11,"84":8,"85":1,"89":2,"93":3,"94":3,"99":3,"103":2,"109":2,"113":4,"118":2,"119":3,"128":2,"134":5,"135":3,"139":4,"140":3,"144":3,"145":2,"196":2,"203":1,"210":2,"211":2,"215":3,"226":1,"238":2,"250":2,"252":1,"261":2,"265":1,"270":1,"277":1}}],["bottom",{"2":{"9":1,"11":2,"21":1,"23":2,"27":1,"29":2,"33":1,"35":2,"39":1,"41":2,"45":1,"47":2,"51":1,"53":2,"58":1,"60":2,"65":2}}],["batch",{"2":{"193":1,"246":1}}],["babel",{"2":{"179":1}}],["bashnpm",{"2":{"173":1}}],["bashyarn",{"2":{"173":1}}],["bashpnpm",{"2":{"173":1}}],["base",{"2":{"74":1}}],["backgroundcolor",{"2":{"81":1}}],["background",{"2":{"80":1,"121":2,"129":1}}],["baidumap",{"0":{"176":1},"1":{"177":1,"178":1,"179":1,"180":1,"181":1,"182":1},"2":{"152":1,"163":2,"166":1,"167":1,"173":1,"174":4,"179":1,"183":1,"187":1}}],["baidu",{"0":{"180":1},"2":{"3":1,"7":1,"8":1,"13":1,"19":1,"25":1,"31":1,"37":1,"43":1,"49":1,"56":1,"62":1,"67":1,"73":1,"87":1,"91":1,"96":1,"101":1,"107":1,"111":1,"116":1,"123":1,"131":1,"137":1,"142":1,"147":1,"154":1,"155":1,"156":1,"157":1,"163":1,"169":1,"173":3,"174":2,"185":1,"186":1,"187":1,"191":1,"192":1,"193":1,"198":1,"199":1,"204":1,"206":1,"215":1,"216":1,"220":1,"222":1,"227":1,"228":1,"232":1,"234":1,"242":1,"244":1,"245":1,"246":1,"256":1,"257":1,"266":1}}],["bautocomplete",{"0":{"3":1},"1":{"4":1,"5":1,"6":1},"2":{"3":1}}],["percentage",{"2":{"272":1,"277":1}}],["permission",{"2":{"213":1,"215":1}}],["playing",{"2":{"264":2,"265":1,"273":2,"277":1}}],["pluginclass",{"2":{"167":1}}],["pluginname",{"2":{"167":1}}],["pluginid",{"2":{"163":2,"165":1}}],["pluginread",{"2":{"167":1}}],["pluginready=",{"2":{"152":1}}],["pluginready",{"2":{"86":1,"152":1,"165":1}}],["pluginrecord",{"2":{"86":1}}],["plugins=",{"2":{"152":2,"164":1,"166":1,"167":1}}],["pluginssourcelink=",{"2":{"166":1}}],["pluginssourcelink",{"2":{"81":1,"162":1,"163":1,"166":1}}],["plugins",{"0":{"165":1},"1":{"166":1,"167":1},"2":{"81":1,"152":1,"162":1,"163":2,"166":1,"167":1}}],["phonenumber",{"2":{"254":1}}],["pnpmyarnnpm",{"2":{"173":1}}],["pnpm",{"2":{"153":3,"173":1}}],["png",{"2":{"121":2,"129":2}}],["prism",{"2":{"143":1}}],["printimageurl",{"2":{"121":1,"129":1}}],["proceed",{"2":{"259":1,"262":1,"265":1,"268":1,"271":1,"277":1}}],["properties",{"0":{"170":1}}],["props",{"0":{"5":1,"9":1,"10":1,"15":1,"16":1,"21":1,"22":1,"27":1,"28":1,"33":1,"34":1,"39":1,"40":1,"45":1,"46":1,"51":1,"52":1,"58":1,"59":1,"64":1,"69":1,"70":1,"81":1,"82":1,"89":1,"93":1,"94":1,"98":1,"99":1,"103":1,"109":1,"113":1,"118":1,"119":1,"126":1,"128":1,"134":1,"135":1,"139":1,"140":1,"144":1,"145":1},"1":{"104":1,"105":1,"114":1},"2":{"25":1,"162":5}}],["promise",{"2":{"167":1}}],["province",{"2":{"71":1,"214":1,"215":1,"253":1,"256":1}}],["param",{"2":{"205":2,"265":2}}],["pathpoint",{"0":{"263":1},"2":{"262":1,"263":1,"265":2}}],["path",{"2":{"89":1,"113":1,"135":1,"140":1,"145":1,"262":1,"265":1,"271":1}}],["panoramacoverage",{"2":{"63":1}}],["panoramacontrol",{"2":{"44":1}}],["pgdn",{"2":{"82":1}}],["pgup",{"2":{"82":1}}],["postcode",{"2":{"254":1}}],["position",{"2":{"80":2,"99":1,"109":1,"119":1,"121":1,"128":1,"129":1,"213":2,"215":2}}],["polyfill",{"2":{"179":1}}],["polyline",{"2":{"138":1}}],["polygon",{"2":{"132":1,"133":1,"200":1}}],["poitype",{"0":{"255":1},"2":{"254":1}}],["poitext",{"2":{"84":1}}],["poiradius",{"2":{"249":1}}],["poiicon",{"2":{"84":1}}],["poi",{"2":{"84":1,"111":1,"113":1,"114":1,"249":2,"252":1,"254":1,"257":1,"266":1}}],["pointgeocoderresult>",{"2":{"245":1}}],["pointgeocoderresult",{"0":{"252":1},"1":{"253":1,"254":1,"255":1},"2":{"245":1,"246":2,"248":2,"250":2,"256":6}}],["points",{"2":{"193":1}}],["point>",{"2":{"192":1}}],["pointlayer",{"0":{"155":1},"2":{"155":2}}],["point",{"0":{"197":1,"251":1},"2":{"5":1,"17":1,"18":2,"86":5,"100":2,"192":2,"193":3,"194":1,"195":3,"196":4,"197":1,"198":6,"212":1,"215":3,"226":2,"227":3,"228":1,"229":1,"231":3,"232":1,"233":6,"242":1,"243":4,"250":3,"251":1,"252":1,"254":2,"256":7,"272":2,"277":2}}],["pixel",{"2":{"17":1,"18":2,"86":9}}],["px",{"2":{"15":1}}],["|",{"2":{"5":2,"16":1,"81":3,"103":2,"105":7,"126":1,"195":3,"196":4,"198":3,"215":5,"221":27,"233":1,"243":1,"248":2,"250":3,"256":5,"264":2,"265":2,"270":1,"273":2,"277":6}}],["北京市",{"2":{"5":1,"82":2,"204":1,"205":1}}],["例如",{"2":{"5":1,"173":1}}],["说明",{"2":{"5":1,"6":1,"9":1,"10":1,"11":1,"12":1,"15":1,"16":1,"17":1,"18":1,"21":1,"22":1,"23":1,"24":1,"27":1,"28":1,"29":1,"30":1,"33":1,"34":1,"35":1,"36":1,"39":1,"40":1,"41":1,"42":1,"45":1,"46":1,"47":1,"48":1,"51":1,"52":1,"53":1,"54":1,"55":1,"58":1,"59":1,"60":1,"61":1,"64":1,"65":1,"66":1,"69":1,"70":1,"71":1,"72":1,"81":1,"82":1,"84":1,"85":1,"86":1,"89":1,"90":1,"93":1,"94":1,"95":1,"98":1,"99":1,"100":1,"103":1,"106":1,"109":1,"110":1,"113":1,"115":1,"118":1,"119":1,"121":1,"122":1,"126":1,"127":1,"128":1,"129":1,"130":1,"134":1,"135":1,"136":1,"139":1,"140":1,"141":1,"144":1,"145":1,"146":1,"160":1,"163":1}}],["还需要检查是否与",{"2":{"76":1}}],["还需要搭配bpanoramacontrol组件使用",{"2":{"63":1}}],["还需要搭配bpanoramacoveragelayer组件使用",{"2":{"44":1}}],["还不稳定",{"2":{"3":1}}],["还没有小伙伴赞助",{"2":{"2":1}}],["tags",{"2":{"254":1}}],["target",{"2":{"17":1,"72":2,"86":33,"100":3}}],["t>",{"2":{"198":1,"256":1}}],["t",{"2":{"198":3,"256":3}}],["three",{"2":{"153":5}}],["then",{"2":{"147":1}}],["theme2",{"2":{"79":1}}],["theme1",{"2":{"78":1}}],["tstype",{"2":{"197":1,"251":1,"263":1,"272":1}}],["tsconfig",{"2":{"186":2}}],["tsconst",{"2":{"167":1,"194":1,"201":1,"208":1,"217":1,"224":1,"229":1,"236":1,"247":1,"259":1,"268":1}}],["ts",{"0":{"198":1,"205":1,"215":1,"221":1,"227":1,"233":1,"243":1,"256":1,"265":1,"277":1},"2":{"152":2,"166":1,"167":1,"187":1,"192":2,"193":2,"204":1,"220":1,"232":1,"242":1,"245":2,"246":2,"264":1,"273":1}}],["tsexport",{"2":{"105":1,"221":1,"239":1,"240":1}}],["tsimport",{"2":{"3":1,"7":1,"13":1,"19":1,"25":1,"31":1,"37":1,"43":1,"49":1,"56":1,"62":1,"67":1,"73":1,"87":1,"91":1,"96":1,"101":1,"107":1,"111":1,"116":1,"123":1,"131":1,"137":1,"142":1,"147":1,"153":1,"163":1,"185":1,"191":1,"192":1,"193":1,"198":1,"199":1,"205":1,"206":1,"215":1,"216":1,"222":1,"227":1,"228":1,"233":1,"234":1,"243":1,"244":1,"245":1,"246":1,"256":1,"257":1,"265":1,"266":1,"277":1}}],["to",{"0":{"159":1},"2":{"241":1}}],["touchend",{"2":{"86":1}}],["touchmove",{"2":{"86":1}}],["touchstart",{"2":{"86":1}}],["topfillopacity",{"2":{"145":1}}],["topfillcolor",{"2":{"145":1}}],["top",{"2":{"11":2,"23":2,"29":2,"35":2,"41":2,"47":2,"53":2,"60":2,"64":1,"65":2,"80":1}}],["timeout",{"2":{"210":1,"213":1,"215":2}}],["title",{"2":{"99":1,"118":1,"254":1}}],["tilesloaded",{"2":{"86":1}}],["tilt",{"2":{"82":1,"261":1,"265":1,"272":1,"277":1}}],["tip",{"2":{"3":1,"43":1,"162":1,"192":1,"193":1,"194":1,"201":1,"208":1,"217":1,"224":1,"229":1,"236":1,"245":1,"246":1,"247":1,"259":1,"268":1}}],["tree",{"2":{"153":1,"177":1,"185":1,"187":1}}],["trackanimationoptions",{"0":{"261":1},"2":{"260":1,"265":1}}],["trackanimation",{"2":{"81":2,"163":1,"164":1,"165":2,"166":4}}],["transform",{"2":{"80":6}}],["true",{"2":{"10":1,"16":1,"22":1,"28":1,"34":1,"40":1,"46":1,"52":1,"59":1,"70":1,"81":1,"82":8,"84":8,"89":2,"93":3,"94":2,"96":1,"99":2,"103":2,"109":2,"113":1,"118":1,"119":3,"128":2,"134":4,"135":2,"139":4,"140":2,"144":2,"145":2,"261":1,"265":1,"270":1}}],["template",{"2":{"80":1}}],["template>",{"2":{"80":3,"152":4,"187":2,"220":2}}],["text",{"2":{"17":1}}],["typeerror",{"0":{"170":1}}],["type",{"2":{"72":2,"86":33,"100":3,"103":1,"105":1,"198":2,"205":1,"215":2,"221":1,"227":1,"233":1,"243":1,"254":1,"264":1,"265":3,"273":1,"277":3}}],["typescript",{"2":{"177":1}}],["types",{"2":{"5":1,"186":2}}],[">",{"2":{"2":1,"80":4,"152":2,"164":1,"166":1,"167":1,"174":10,"187":3,"193":1,"204":2,"205":1,"220":2,"232":2,"242":2,"246":1,"256":1}}],["┭┮",{"2":{"2":2}}],["116",{"2":{"232":1,"242":1}}],["12",{"2":{"179":1}}],["121",{"2":{"82":1}}],["14",{"2":{"82":1}}],["1s",{"2":{"80":2}}],["1",{"0":{"152":1,"163":1},"2":{"69":3,"80":3,"82":1,"89":2,"94":5,"103":1,"128":2,"135":4,"140":2,"145":2,"239":1,"241":1,"255":1,"270":1,"274":1}}],["10",{"2":{"64":2,"249":1}}],["1000",{"2":{"270":1}}],["10000",{"2":{"210":1,"261":1,"265":1}}],["100px",{"2":{"80":1}}],["100",{"2":{"15":1,"80":4,"81":1,"82":1,"249":1}}],["10¥",{"2":{"2":1}}],["180",{"2":{"93":2,"134":2,"139":2}}],["18",{"2":{"9":2,"21":1,"27":1,"33":2,"39":1,"45":2,"51":1,"58":1}}],["15¥",{"2":{"2":1}}],["小马",{"2":{"2":1}}],["热心",{"2":{"2":1}}],["满",{"2":{"2":1}}],["成眷",{"2":{"2":1}}],["丶",{"2":{"2":1}}],["surroundingpois",{"2":{"252":1,"256":1}}],["success",{"2":{"213":1,"215":1}}],["safari",{"2":{"179":1}}],["satellite",{"2":{"83":2}}],["sdklocation",{"2":{"215":1}}],["sdk",{"2":{"177":2,"206":2,"210":1}}],["src=",{"2":{"174":4}}],["script>",{"2":{"152":1,"174":4,"187":1,"204":1,"220":1,"232":1,"242":1}}],["script",{"2":{"152":1,"174":4,"187":1,"204":1,"220":1,"232":1,"242":1}}],["scale",{"2":{"50":1,"80":6}}],["shaking",{"2":{"153":1,"177":1,"185":1,"187":1}}],["shape",{"2":{"126":4,"127":2}}],["shell",{"2":{"153":1}}],["showregion",{"2":{"113":1}}],["show",{"2":{"99":2}}],["showcontrols",{"2":{"81":1}}],["specify",{"2":{"174":1}}],["sprites",{"2":{"121":1,"129":1}}],["spinner",{"2":{"80":2}}],["sidefillopacity",{"2":{"145":1}}],["sidefillcolor",{"2":{"145":1}}],["size属性",{"2":{"129":1}}],["size",{"2":{"121":2,"126":1}}],["simple",{"2":{"119":2,"120":2,"221":2}}],["slot",{"2":{"96":1}}],["solutions",{"2":{"157":1}}],["solid",{"2":{"89":1,"94":2,"135":1,"140":1}}],["song",{"2":{"2":1}}],["setkeyframes",{"0":{"276":1},"2":{"268":2,"271":2,"277":1}}],["setpath",{"2":{"259":2,"262":2,"265":2}}],["set",{"2":{"217":1,"229":2,"231":2,"232":2,"233":1,"242":2,"243":1}}],["setup",{"2":{"187":1,"204":1,"220":1,"232":1,"242":1}}],["setup>",{"2":{"152":1}}],["setdragging",{"2":{"85":1}}],["searchcomplete",{"2":{"6":1}}],["skycolors",{"2":{"84":1}}],["stopping",{"2":{"264":2,"265":1,"273":2,"277":1}}],["stop",{"2":{"259":1,"262":1,"265":2,"268":1,"271":1,"277":1}}],["status",{"0":{"213":1},"2":{"208":1,"211":2,"213":2,"215":4,"236":1,"238":1,"259":1,"262":2,"265":1,"268":1,"271":2,"277":1}}],["start",{"2":{"120":1,"221":1,"259":1,"262":1,"265":2,"268":1,"271":1,"277":1}}],["startpoint",{"2":{"103":1}}],["star",{"2":{"0":1}}],["style>",{"2":{"80":1}}],["style",{"2":{"80":1,"109":2}}],["streetnumber",{"2":{"253":1,"256":1}}],["street",{"2":{"84":1,"214":2,"215":2,"253":1,"256":1}}],["strokestyle",{"2":{"89":1,"94":1,"135":1,"140":1}}],["strokeopacity",{"2":{"69":1,"89":1,"94":1,"135":1,"140":1}}],["strokeweight",{"2":{"69":1,"89":1,"94":1,"135":1,"140":1}}],["strokecolor",{"2":{"69":1,"89":1,"94":1,"135":1,"140":1}}],["string>",{"2":{"105":2}}],["string",{"2":{"5":2,"9":1,"17":1,"21":1,"27":1,"33":1,"39":1,"45":1,"51":1,"52":1,"58":1,"64":1,"69":3,"81":3,"82":8,"84":2,"89":3,"94":3,"99":1,"105":1,"109":1,"118":2,"119":1,"121":2,"128":2,"129":2,"135":4,"140":3,"145":2,"163":3,"196":3,"198":3,"202":1,"203":2,"205":4,"214":7,"215":7,"226":1,"227":1,"252":3,"253":5,"254":8,"256":7}}],["array",{"2":{"256":1}}],["areaboundary>",{"2":{"205":1}}],["areaboundary",{"2":{"205":1}}],["arearestriction",{"2":{"165":1}}],["area",{"2":{"69":1,"71":1,"205":2}}],["accuracy",{"2":{"212":1,"215":1}}],["as",{"2":{"153":3}}],["app",{"2":{"152":1,"163":7,"166":1,"167":1,"185":3}}],["apiurl",{"2":{"81":1,"161":1,"162":1,"163":1}}],["api",{"0":{"180":1},"2":{"3":1,"81":1,"163":1,"176":1,"177":3,"180":1}}],["altitude",{"2":{"145":1}}],["addeventlistener",{"2":{"277":1}}],["addresscomponents",{"2":{"256":1}}],["addresscomponent",{"0":{"253":1},"2":{"252":2}}],["addressgeocoderresult>",{"2":{"198":1}}],["addressgeocoderresult",{"2":{"198":2}}],["address",{"0":{"214":1},"2":{"196":1,"198":1,"212":2,"215":1,"254":1,"256":1}}],["address表示要解析的地址",{"2":{"196":1}}],["add",{"2":{"153":6,"173":2}}],["addtilelayer",{"2":{"86":1}}],["addcontrol",{"2":{"86":1}}],["addoverlay",{"2":{"86":1}}],["any",{"2":{"265":2,"277":1}}],["animationlistenertype",{"2":{"277":3}}],["animationcancel",{"2":{"274":1,"277":1}}],["animationend",{"2":{"274":1,"277":1}}],["animationiterations",{"2":{"274":1,"277":1}}],["animationstart",{"2":{"274":1,"277":1}}],["animationstatus>",{"2":{"265":1,"277":1}}],["animationstatus",{"0":{"264":1,"273":1},"2":{"262":1,"264":1,"265":1,"271":1,"273":1,"277":1}}],["animation",{"2":{"80":4}}],["anchor",{"0":{"11":1,"23":1,"29":1,"35":1,"41":1,"47":1,"53":1,"60":1,"65":1},"2":{"9":3,"11":4,"21":3,"23":4,"27":3,"29":4,"33":3,"35":4,"39":3,"41":4,"45":3,"47":4,"51":3,"53":4,"58":3,"60":4,"64":3,"65":4,"121":1,"129":1}}],["absolute",{"2":{"80":1}}],["autocenter",{"2":{"103":1,"134":1,"144":1}}],["autocomplete",{"2":{"4":1}}],["auto",{"2":{"80":1,"261":1,"265":1}}],["ak=",{"2":{"164":1}}],["ak",{"0":{"163":1,"188":1},"2":{"76":1,"81":2,"161":1,"163":3,"188":4,"206":1}}],["ak申请的账号一致",{"2":{"76":1}}],["a",{"2":{"2":1,"174":1}}],["友",{"2":{"2":1}}],["充电",{"2":{"2":1}}],["昵称",{"2":{"2":1}}],["微信",{"2":{"1":1}}],["您还需在百度地图开发者后台申请百度地图",{"2":{"188":1}}],["您可以自定义从地图上某一地点切换到另一地点的",{"2":{"266":1}}],["您可以从现在起启动您的项目",{"2":{"190":1}}],["您可以为信息窗添加偏移量来改变默认位置",{"2":{"98":1}}],["您可以通过微信或者支付宝扫描下面二维码进行赞助",{"2":{"1":1}}],["您的赞助将激励我们更加积极地更新和改进项目",{"2":{"0":1}}],["如商务大厦",{"2":{"254":1}}],["如下图",{"2":{"186":1}}],["如您需要卫星地图支持和标准地图",{"2":{"83":1}}],["如",{"2":{"82":1,"173":1,"241":1}}],["如果动画中途被终止",{"2":{"274":1}}],["如果动态内容中有图片会导致闪烁",{"2":{"20":1}}],["如果配置了",{"2":{"274":1}}],["如果为0",{"2":{"210":1,"215":1}}],["如果定位精准在城市级别",{"2":{"206":1}}],["如果你在使用",{"2":{"186":1}}],["如果你对打包后的文件大小不是很在乎",{"2":{"185":1}}],["如果你是按需加载使用方式",{"2":{"162":1}}],["如果你是全局注册使用方式",{"2":{"162":1}}],["如果需要自建或其他地址的资源链接",{"2":{"166":1}}],["如果全局注册配置和组件",{"2":{"162":1}}],["如果该组件库提供的功能不能满足开发需求",{"2":{"160":1}}],["如果不能满足你的需求",{"2":{"80":1}}],["如果是通过mapstyleid实现",{"2":{"76":1}}],["如果个性化地图没有生效",{"2":{"76":1}}],["如果同时指定",{"2":{"76":1}}],["如果您确实需要支持旧版本的浏览器",{"2":{"179":1}}],["如果您的",{"2":{"121":1,"129":1}}],["如果您指定高度为",{"2":{"99":1}}],["如果您指定宽度为",{"2":{"99":1}}],["如果您介意展示",{"2":{"1":1}}],["如果您觉得这个项目对您有所帮助",{"2":{"0":1}}],["如何赞助",{"0":{"1":1}}],["增加项目的曝光度和受欢迎程度",{"2":{"0":1}}],["这和你等到setkeyframes调用时",{"2":{"276":1}}],["这只是为了使用开发者使用体验更好",{"2":{"276":1}}],["这种情况下",{"2":{"187":1}}],["这表示位置",{"2":{"86":1}}],["这将有助于让更多的人知道我们的项目",{"2":{"0":1}}],["这对于我们来说意义重大",{"2":{"0":1}}],["⭐️",{"2":{"0":1}}],["给我们的项目点个",{"2":{"0":1}}],["考虑用一杯咖啡的价格来鼓励和支持我们的工作",{"2":{"0":1}}],["维护和开发一个开源项目需要花费大量时间和精力",{"2":{"0":1}}],["☕️",{"0":{"0":1},"1":{"1":1,"2":1}}],["赞助作者",{"0":{"0":1},"1":{"1":1,"2":1}}]],"serializationVersion":2}`;export{e as default}; diff --git a/assets/chunks/VPLocalSearchBox.6F88UWle.js b/assets/chunks/VPLocalSearchBox.6F88UWle.js new file mode 100644 index 00000000..78356972 --- /dev/null +++ b/assets/chunks/VPLocalSearchBox.6F88UWle.js @@ -0,0 +1,7 @@ +var Ft=Object.defineProperty;var Ot=(a,e,t)=>e in a?Ft(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t;var Ce=(a,e,t)=>Ot(a,typeof e!="symbol"?e+"":e,t);import{X as Rt,s as ne,h as ve,az as et,aA as Ct,aB as Mt,v as je,aC as At,d as Lt,G as ye,aD as tt,aE as Dt,aF as zt,x as Pt,aG as Vt,y as Me,R as de,Q as we,aH as jt,af as $t,Y as Bt,U as Wt,a1 as Kt,o as H,b as Jt,j as x,a2 as Ut,k as D,a7 as qt,aa as Gt,aI as Ht,c as Z,n as st,e as _e,E as nt,F as it,a as he,t as fe,aJ as Qt,p as Yt,l as Zt,aK as rt,aL as Xt,ap as es,av as ts,aM as ss,_ as ns}from"./framework.n6hqIsqL.js";import{u as is,c as rs}from"./theme.-bEKLWFY.js";const as={root:()=>Rt(()=>import("./@localSearchIndexroot.BVyFwV8F.js"),[])};/*! +* tabbable 6.2.0 +* @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE +*/var mt=["input:not([inert])","select:not([inert])","textarea:not([inert])","a[href]:not([inert])","button:not([inert])","[tabindex]:not(slot):not([inert])","audio[controls]:not([inert])","video[controls]:not([inert])",'[contenteditable]:not([contenteditable="false"]):not([inert])',"details>summary:first-of-type:not([inert])","details:not([inert])"],Te=mt.join(","),gt=typeof Element>"u",re=gt?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,Ne=!gt&&Element.prototype.getRootNode?function(a){var e;return a==null||(e=a.getRootNode)===null||e===void 0?void 0:e.call(a)}:function(a){return a==null?void 0:a.ownerDocument},ke=function a(e,t){var s;t===void 0&&(t=!0);var n=e==null||(s=e.getAttribute)===null||s===void 0?void 0:s.call(e,"inert"),r=n===""||n==="true",i=r||t&&e&&a(e.parentNode);return i},os=function(e){var t,s=e==null||(t=e.getAttribute)===null||t===void 0?void 0:t.call(e,"contenteditable");return s===""||s==="true"},bt=function(e,t,s){if(ke(e))return[];var n=Array.prototype.slice.apply(e.querySelectorAll(Te));return t&&re.call(e,Te)&&n.unshift(e),n=n.filter(s),n},yt=function a(e,t,s){for(var n=[],r=Array.from(e);r.length;){var i=r.shift();if(!ke(i,!1))if(i.tagName==="SLOT"){var o=i.assignedElements(),c=o.length?o:i.children,l=a(c,!0,s);s.flatten?n.push.apply(n,l):n.push({scopeParent:i,candidates:l})}else{var h=re.call(i,Te);h&&s.filter(i)&&(t||!e.includes(i))&&n.push(i);var v=i.shadowRoot||typeof s.getShadowRoot=="function"&&s.getShadowRoot(i),f=!ke(v,!1)&&(!s.shadowRootFilter||s.shadowRootFilter(i));if(v&&f){var b=a(v===!0?i.children:v.children,!0,s);s.flatten?n.push.apply(n,b):n.push({scopeParent:i,candidates:b})}else r.unshift.apply(r,i.children)}}return n},wt=function(e){return!isNaN(parseInt(e.getAttribute("tabindex"),10))},ie=function(e){if(!e)throw new Error("No node provided");return e.tabIndex<0&&(/^(AUDIO|VIDEO|DETAILS)$/.test(e.tagName)||os(e))&&!wt(e)?0:e.tabIndex},cs=function(e,t){var s=ie(e);return s<0&&t&&!wt(e)?0:s},ls=function(e,t){return e.tabIndex===t.tabIndex?e.documentOrder-t.documentOrder:e.tabIndex-t.tabIndex},_t=function(e){return e.tagName==="INPUT"},us=function(e){return _t(e)&&e.type==="hidden"},ds=function(e){var t=e.tagName==="DETAILS"&&Array.prototype.slice.apply(e.children).some(function(s){return s.tagName==="SUMMARY"});return t},hs=function(e,t){for(var s=0;ssummary:first-of-type"),i=r?e.parentElement:e;if(re.call(i,"details:not([open]) *"))return!0;if(!s||s==="full"||s==="legacy-full"){if(typeof n=="function"){for(var o=e;e;){var c=e.parentElement,l=Ne(e);if(c&&!c.shadowRoot&&n(c)===!0)return at(e);e.assignedSlot?e=e.assignedSlot:!c&&l!==e.ownerDocument?e=l.host:e=c}e=o}if(ms(e))return!e.getClientRects().length;if(s!=="legacy-full")return!0}else if(s==="non-zero-area")return at(e);return!1},bs=function(e){if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(e.tagName))for(var t=e.parentElement;t;){if(t.tagName==="FIELDSET"&&t.disabled){for(var s=0;s=0)},ws=function a(e){var t=[],s=[];return e.forEach(function(n,r){var i=!!n.scopeParent,o=i?n.scopeParent:n,c=cs(o,i),l=i?a(n.candidates):o;c===0?i?t.push.apply(t,l):t.push(o):s.push({documentOrder:r,tabIndex:c,item:n,isScope:i,content:l})}),s.sort(ls).reduce(function(n,r){return r.isScope?n.push.apply(n,r.content):n.push(r.content),n},[]).concat(t)},_s=function(e,t){t=t||{};var s;return t.getShadowRoot?s=yt([e],t.includeContainer,{filter:$e.bind(null,t),flatten:!1,getShadowRoot:t.getShadowRoot,shadowRootFilter:ys}):s=bt(e,t.includeContainer,$e.bind(null,t)),ws(s)},xs=function(e,t){t=t||{};var s;return t.getShadowRoot?s=yt([e],t.includeContainer,{filter:Fe.bind(null,t),flatten:!0,getShadowRoot:t.getShadowRoot}):s=bt(e,t.includeContainer,Fe.bind(null,t)),s},ae=function(e,t){if(t=t||{},!e)throw new Error("No node provided");return re.call(e,Te)===!1?!1:$e(t,e)},Ss=mt.concat("iframe").join(","),Ae=function(e,t){if(t=t||{},!e)throw new Error("No node provided");return re.call(e,Ss)===!1?!1:Fe(t,e)};/*! +* focus-trap 7.5.4 +* @license MIT, https://github.com/focus-trap/focus-trap/blob/master/LICENSE +*/function ot(a,e){var t=Object.keys(a);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(a);e&&(s=s.filter(function(n){return Object.getOwnPropertyDescriptor(a,n).enumerable})),t.push.apply(t,s)}return t}function ct(a){for(var e=1;e0){var s=e[e.length-1];s!==t&&s.pause()}var n=e.indexOf(t);n===-1||e.splice(n,1),e.push(t)},deactivateTrap:function(e,t){var s=e.indexOf(t);s!==-1&&e.splice(s,1),e.length>0&&e[e.length-1].unpause()}},Ns=function(e){return e.tagName&&e.tagName.toLowerCase()==="input"&&typeof e.select=="function"},ks=function(e){return(e==null?void 0:e.key)==="Escape"||(e==null?void 0:e.key)==="Esc"||(e==null?void 0:e.keyCode)===27},me=function(e){return(e==null?void 0:e.key)==="Tab"||(e==null?void 0:e.keyCode)===9},Fs=function(e){return me(e)&&!e.shiftKey},Os=function(e){return me(e)&&e.shiftKey},ut=function(e){return setTimeout(e,0)},dt=function(e,t){var s=-1;return e.every(function(n,r){return t(n)?(s=r,!1):!0}),s},pe=function(e){for(var t=arguments.length,s=new Array(t>1?t-1:0),n=1;n1?m-1:0),E=1;E=0)u=s.activeElement;else{var d=i.tabbableGroups[0],m=d&&d.firstTabbableNode;u=m||h("fallbackFocus")}if(!u)throw new Error("Your focus-trap needs to have at least one focusable element");return u},f=function(){if(i.containerGroups=i.containers.map(function(u){var d=_s(u,r.tabbableOptions),m=xs(u,r.tabbableOptions),S=d.length>0?d[0]:void 0,E=d.length>0?d[d.length-1]:void 0,k=m.find(function(p){return ae(p)}),F=m.slice().reverse().find(function(p){return ae(p)}),M=!!d.find(function(p){return ie(p)>0});return{container:u,tabbableNodes:d,focusableNodes:m,posTabIndexesFound:M,firstTabbableNode:S,lastTabbableNode:E,firstDomTabbableNode:k,lastDomTabbableNode:F,nextTabbableNode:function(g){var N=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,O=d.indexOf(g);return O<0?N?m.slice(m.indexOf(g)+1).find(function(P){return ae(P)}):m.slice(0,m.indexOf(g)).reverse().find(function(P){return ae(P)}):d[O+(N?1:-1)]}}}),i.tabbableGroups=i.containerGroups.filter(function(u){return u.tabbableNodes.length>0}),i.tabbableGroups.length<=0&&!h("fallbackFocus"))throw new Error("Your focus-trap must have at least one container with at least one tabbable node in it at all times");if(i.containerGroups.find(function(u){return u.posTabIndexesFound})&&i.containerGroups.length>1)throw new Error("At least one node with a positive tabindex was found in one of your focus-trap's multiple containers. Positive tabindexes are only supported in single-container focus-traps.")},b=function I(u){var d=u.activeElement;if(d)return d.shadowRoot&&d.shadowRoot.activeElement!==null?I(d.shadowRoot):d},y=function I(u){if(u!==!1&&u!==b(document)){if(!u||!u.focus){I(v());return}u.focus({preventScroll:!!r.preventScroll}),i.mostRecentlyFocusedNode=u,Ns(u)&&u.select()}},_=function(u){var d=h("setReturnFocus",u);return d||(d===!1?!1:u)},w=function(u){var d=u.target,m=u.event,S=u.isBackward,E=S===void 0?!1:S;d=d||xe(m),f();var k=null;if(i.tabbableGroups.length>0){var F=l(d,m),M=F>=0?i.containerGroups[F]:void 0;if(F<0)E?k=i.tabbableGroups[i.tabbableGroups.length-1].lastTabbableNode:k=i.tabbableGroups[0].firstTabbableNode;else if(E){var p=dt(i.tabbableGroups,function(T){var L=T.firstTabbableNode;return d===L});if(p<0&&(M.container===d||Ae(d,r.tabbableOptions)&&!ae(d,r.tabbableOptions)&&!M.nextTabbableNode(d,!1))&&(p=F),p>=0){var g=p===0?i.tabbableGroups.length-1:p-1,N=i.tabbableGroups[g];k=ie(d)>=0?N.lastTabbableNode:N.lastDomTabbableNode}else me(m)||(k=M.nextTabbableNode(d,!1))}else{var O=dt(i.tabbableGroups,function(T){var L=T.lastTabbableNode;return d===L});if(O<0&&(M.container===d||Ae(d,r.tabbableOptions)&&!ae(d,r.tabbableOptions)&&!M.nextTabbableNode(d))&&(O=F),O>=0){var P=O===i.tabbableGroups.length-1?0:O+1,V=i.tabbableGroups[P];k=ie(d)>=0?V.firstTabbableNode:V.firstDomTabbableNode}else me(m)||(k=M.nextTabbableNode(d))}}else k=h("fallbackFocus");return k},R=function(u){var d=xe(u);if(!(l(d,u)>=0)){if(pe(r.clickOutsideDeactivates,u)){o.deactivate({returnFocus:r.returnFocusOnDeactivate});return}pe(r.allowOutsideClick,u)||u.preventDefault()}},C=function(u){var d=xe(u),m=l(d,u)>=0;if(m||d instanceof Document)m&&(i.mostRecentlyFocusedNode=d);else{u.stopImmediatePropagation();var S,E=!0;if(i.mostRecentlyFocusedNode)if(ie(i.mostRecentlyFocusedNode)>0){var k=l(i.mostRecentlyFocusedNode),F=i.containerGroups[k].tabbableNodes;if(F.length>0){var M=F.findIndex(function(p){return p===i.mostRecentlyFocusedNode});M>=0&&(r.isKeyForward(i.recentNavEvent)?M+1=0&&(S=F[M-1],E=!1))}}else i.containerGroups.some(function(p){return p.tabbableNodes.some(function(g){return ie(g)>0})})||(E=!1);else E=!1;E&&(S=w({target:i.mostRecentlyFocusedNode,isBackward:r.isKeyBackward(i.recentNavEvent)})),y(S||i.mostRecentlyFocusedNode||v())}i.recentNavEvent=void 0},J=function(u){var d=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;i.recentNavEvent=u;var m=w({event:u,isBackward:d});m&&(me(u)&&u.preventDefault(),y(m))},Q=function(u){if(ks(u)&&pe(r.escapeDeactivates,u)!==!1){u.preventDefault(),o.deactivate();return}(r.isKeyForward(u)||r.isKeyBackward(u))&&J(u,r.isKeyBackward(u))},W=function(u){var d=xe(u);l(d,u)>=0||pe(r.clickOutsideDeactivates,u)||pe(r.allowOutsideClick,u)||(u.preventDefault(),u.stopImmediatePropagation())},j=function(){if(i.active)return lt.activateTrap(n,o),i.delayInitialFocusTimer=r.delayInitialFocus?ut(function(){y(v())}):y(v()),s.addEventListener("focusin",C,!0),s.addEventListener("mousedown",R,{capture:!0,passive:!1}),s.addEventListener("touchstart",R,{capture:!0,passive:!1}),s.addEventListener("click",W,{capture:!0,passive:!1}),s.addEventListener("keydown",Q,{capture:!0,passive:!1}),o},$=function(){if(i.active)return s.removeEventListener("focusin",C,!0),s.removeEventListener("mousedown",R,!0),s.removeEventListener("touchstart",R,!0),s.removeEventListener("click",W,!0),s.removeEventListener("keydown",Q,!0),o},Re=function(u){var d=u.some(function(m){var S=Array.from(m.removedNodes);return S.some(function(E){return E===i.mostRecentlyFocusedNode})});d&&y(v())},A=typeof window<"u"&&"MutationObserver"in window?new MutationObserver(Re):void 0,U=function(){A&&(A.disconnect(),i.active&&!i.paused&&i.containers.map(function(u){A.observe(u,{subtree:!0,childList:!0})}))};return o={get active(){return i.active},get paused(){return i.paused},activate:function(u){if(i.active)return this;var d=c(u,"onActivate"),m=c(u,"onPostActivate"),S=c(u,"checkCanFocusTrap");S||f(),i.active=!0,i.paused=!1,i.nodeFocusedBeforeActivation=s.activeElement,d==null||d();var E=function(){S&&f(),j(),U(),m==null||m()};return S?(S(i.containers.concat()).then(E,E),this):(E(),this)},deactivate:function(u){if(!i.active)return this;var d=ct({onDeactivate:r.onDeactivate,onPostDeactivate:r.onPostDeactivate,checkCanReturnFocus:r.checkCanReturnFocus},u);clearTimeout(i.delayInitialFocusTimer),i.delayInitialFocusTimer=void 0,$(),i.active=!1,i.paused=!1,U(),lt.deactivateTrap(n,o);var m=c(d,"onDeactivate"),S=c(d,"onPostDeactivate"),E=c(d,"checkCanReturnFocus"),k=c(d,"returnFocus","returnFocusOnDeactivate");m==null||m();var F=function(){ut(function(){k&&y(_(i.nodeFocusedBeforeActivation)),S==null||S()})};return k&&E?(E(_(i.nodeFocusedBeforeActivation)).then(F,F),this):(F(),this)},pause:function(u){if(i.paused||!i.active)return this;var d=c(u,"onPause"),m=c(u,"onPostPause");return i.paused=!0,d==null||d(),$(),U(),m==null||m(),this},unpause:function(u){if(!i.paused||!i.active)return this;var d=c(u,"onUnpause"),m=c(u,"onPostUnpause");return i.paused=!1,d==null||d(),f(),j(),U(),m==null||m(),this},updateContainerElements:function(u){var d=[].concat(u).filter(Boolean);return i.containers=d.map(function(m){return typeof m=="string"?s.querySelector(m):m}),i.active&&f(),U(),this}},o.updateContainerElements(e),o};function Ms(a,e={}){let t;const{immediate:s,...n}=e,r=ne(!1),i=ne(!1),o=f=>t&&t.activate(f),c=f=>t&&t.deactivate(f),l=()=>{t&&(t.pause(),i.value=!0)},h=()=>{t&&(t.unpause(),i.value=!1)},v=ve(()=>{const f=et(a);return(Array.isArray(f)?f:[f]).map(b=>{const y=et(b);return typeof y=="string"?y:Ct(y)}).filter(Mt)});return je(v,f=>{f.length&&(t=Cs(f,{...n,onActivate(){r.value=!0,e.onActivate&&e.onActivate()},onDeactivate(){r.value=!1,e.onDeactivate&&e.onDeactivate()}}),s&&o())},{flush:"post"}),At(()=>c()),{hasFocus:r,isPaused:i,activate:o,deactivate:c,pause:l,unpause:h}}class ce{constructor(e,t=!0,s=[],n=5e3){this.ctx=e,this.iframes=t,this.exclude=s,this.iframesTimeout=n}static matches(e,t){const s=typeof t=="string"?[t]:t,n=e.matches||e.matchesSelector||e.msMatchesSelector||e.mozMatchesSelector||e.oMatchesSelector||e.webkitMatchesSelector;if(n){let r=!1;return s.every(i=>n.call(e,i)?(r=!0,!1):!0),r}else return!1}getContexts(){let e,t=[];return typeof this.ctx>"u"||!this.ctx?e=[]:NodeList.prototype.isPrototypeOf(this.ctx)?e=Array.prototype.slice.call(this.ctx):Array.isArray(this.ctx)?e=this.ctx:typeof this.ctx=="string"?e=Array.prototype.slice.call(document.querySelectorAll(this.ctx)):e=[this.ctx],e.forEach(s=>{const n=t.filter(r=>r.contains(s)).length>0;t.indexOf(s)===-1&&!n&&t.push(s)}),t}getIframeContents(e,t,s=()=>{}){let n;try{const r=e.contentWindow;if(n=r.document,!r||!n)throw new Error("iframe inaccessible")}catch{s()}n&&t(n)}isIframeBlank(e){const t="about:blank",s=e.getAttribute("src").trim();return e.contentWindow.location.href===t&&s!==t&&s}observeIframeLoad(e,t,s){let n=!1,r=null;const i=()=>{if(!n){n=!0,clearTimeout(r);try{this.isIframeBlank(e)||(e.removeEventListener("load",i),this.getIframeContents(e,t,s))}catch{s()}}};e.addEventListener("load",i),r=setTimeout(i,this.iframesTimeout)}onIframeReady(e,t,s){try{e.contentWindow.document.readyState==="complete"?this.isIframeBlank(e)?this.observeIframeLoad(e,t,s):this.getIframeContents(e,t,s):this.observeIframeLoad(e,t,s)}catch{s()}}waitForIframes(e,t){let s=0;this.forEachIframe(e,()=>!0,n=>{s++,this.waitForIframes(n.querySelector("html"),()=>{--s||t()})},n=>{n||t()})}forEachIframe(e,t,s,n=()=>{}){let r=e.querySelectorAll("iframe"),i=r.length,o=0;r=Array.prototype.slice.call(r);const c=()=>{--i<=0&&n(o)};i||c(),r.forEach(l=>{ce.matches(l,this.exclude)?c():this.onIframeReady(l,h=>{t(l)&&(o++,s(h)),c()},c)})}createIterator(e,t,s){return document.createNodeIterator(e,t,s,!1)}createInstanceOnIframe(e){return new ce(e.querySelector("html"),this.iframes)}compareNodeIframe(e,t,s){const n=e.compareDocumentPosition(s),r=Node.DOCUMENT_POSITION_PRECEDING;if(n&r)if(t!==null){const i=t.compareDocumentPosition(s),o=Node.DOCUMENT_POSITION_FOLLOWING;if(i&o)return!0}else return!0;return!1}getIteratorNode(e){const t=e.previousNode();let s;return t===null?s=e.nextNode():s=e.nextNode()&&e.nextNode(),{prevNode:t,node:s}}checkIframeFilter(e,t,s,n){let r=!1,i=!1;return n.forEach((o,c)=>{o.val===s&&(r=c,i=o.handled)}),this.compareNodeIframe(e,t,s)?(r===!1&&!i?n.push({val:s,handled:!0}):r!==!1&&!i&&(n[r].handled=!0),!0):(r===!1&&n.push({val:s,handled:!1}),!1)}handleOpenIframes(e,t,s,n){e.forEach(r=>{r.handled||this.getIframeContents(r.val,i=>{this.createInstanceOnIframe(i).forEachNode(t,s,n)})})}iterateThroughNodes(e,t,s,n,r){const i=this.createIterator(t,e,n);let o=[],c=[],l,h,v=()=>({prevNode:h,node:l}=this.getIteratorNode(i),l);for(;v();)this.iframes&&this.forEachIframe(t,f=>this.checkIframeFilter(l,h,f,o),f=>{this.createInstanceOnIframe(f).forEachNode(e,b=>c.push(b),n)}),c.push(l);c.forEach(f=>{s(f)}),this.iframes&&this.handleOpenIframes(o,e,s,n),r()}forEachNode(e,t,s,n=()=>{}){const r=this.getContexts();let i=r.length;i||n(),r.forEach(o=>{const c=()=>{this.iterateThroughNodes(e,o,t,s,()=>{--i<=0&&n()})};this.iframes?this.waitForIframes(o,c):c()})}}let As=class{constructor(e){this.ctx=e,this.ie=!1;const t=window.navigator.userAgent;(t.indexOf("MSIE")>-1||t.indexOf("Trident")>-1)&&(this.ie=!0)}set opt(e){this._opt=Object.assign({},{element:"",className:"",exclude:[],iframes:!1,iframesTimeout:5e3,separateWordSearch:!0,diacritics:!0,synonyms:{},accuracy:"partially",acrossElements:!1,caseSensitive:!1,ignoreJoiners:!1,ignoreGroups:0,ignorePunctuation:[],wildcards:"disabled",each:()=>{},noMatch:()=>{},filter:()=>!0,done:()=>{},debug:!1,log:window.console},e)}get opt(){return this._opt}get iterator(){return new ce(this.ctx,this.opt.iframes,this.opt.exclude,this.opt.iframesTimeout)}log(e,t="debug"){const s=this.opt.log;this.opt.debug&&typeof s=="object"&&typeof s[t]=="function"&&s[t](`mark.js: ${e}`)}escapeStr(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}createRegExp(e){return this.opt.wildcards!=="disabled"&&(e=this.setupWildcardsRegExp(e)),e=this.escapeStr(e),Object.keys(this.opt.synonyms).length&&(e=this.createSynonymsRegExp(e)),(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(e=this.setupIgnoreJoinersRegExp(e)),this.opt.diacritics&&(e=this.createDiacriticsRegExp(e)),e=this.createMergedBlanksRegExp(e),(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(e=this.createJoinersRegExp(e)),this.opt.wildcards!=="disabled"&&(e=this.createWildcardsRegExp(e)),e=this.createAccuracyRegExp(e),e}createSynonymsRegExp(e){const t=this.opt.synonyms,s=this.opt.caseSensitive?"":"i",n=this.opt.ignoreJoiners||this.opt.ignorePunctuation.length?"\0":"";for(let r in t)if(t.hasOwnProperty(r)){const i=t[r],o=this.opt.wildcards!=="disabled"?this.setupWildcardsRegExp(r):this.escapeStr(r),c=this.opt.wildcards!=="disabled"?this.setupWildcardsRegExp(i):this.escapeStr(i);o!==""&&c!==""&&(e=e.replace(new RegExp(`(${this.escapeStr(o)}|${this.escapeStr(c)})`,`gm${s}`),n+`(${this.processSynomyms(o)}|${this.processSynomyms(c)})`+n))}return e}processSynomyms(e){return(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(e=this.setupIgnoreJoinersRegExp(e)),e}setupWildcardsRegExp(e){return e=e.replace(/(?:\\)*\?/g,t=>t.charAt(0)==="\\"?"?":""),e.replace(/(?:\\)*\*/g,t=>t.charAt(0)==="\\"?"*":"")}createWildcardsRegExp(e){let t=this.opt.wildcards==="withSpaces";return e.replace(/\u0001/g,t?"[\\S\\s]?":"\\S?").replace(/\u0002/g,t?"[\\S\\s]*?":"\\S*")}setupIgnoreJoinersRegExp(e){return e.replace(/[^(|)\\]/g,(t,s,n)=>{let r=n.charAt(s+1);return/[(|)\\]/.test(r)||r===""?t:t+"\0"})}createJoinersRegExp(e){let t=[];const s=this.opt.ignorePunctuation;return Array.isArray(s)&&s.length&&t.push(this.escapeStr(s.join(""))),this.opt.ignoreJoiners&&t.push("\\u00ad\\u200b\\u200c\\u200d"),t.length?e.split(/\u0000+/).join(`[${t.join("")}]*`):e}createDiacriticsRegExp(e){const t=this.opt.caseSensitive?"":"i",s=this.opt.caseSensitive?["aàáảãạăằắẳẵặâầấẩẫậäåāą","AÀÁẢÃẠĂẰẮẲẴẶÂẦẤẨẪẬÄÅĀĄ","cçćč","CÇĆČ","dđď","DĐĎ","eèéẻẽẹêềếểễệëěēę","EÈÉẺẼẸÊỀẾỂỄỆËĚĒĘ","iìíỉĩịîïī","IÌÍỈĨỊÎÏĪ","lł","LŁ","nñňń","NÑŇŃ","oòóỏõọôồốổỗộơởỡớờợöøō","OÒÓỎÕỌÔỒỐỔỖỘƠỞỠỚỜỢÖØŌ","rř","RŘ","sšśșş","SŠŚȘŞ","tťțţ","TŤȚŢ","uùúủũụưừứửữựûüůū","UÙÚỦŨỤƯỪỨỬỮỰÛÜŮŪ","yýỳỷỹỵÿ","YÝỲỶỸỴŸ","zžżź","ZŽŻŹ"]:["aàáảãạăằắẳẵặâầấẩẫậäåāąAÀÁẢÃẠĂẰẮẲẴẶÂẦẤẨẪẬÄÅĀĄ","cçćčCÇĆČ","dđďDĐĎ","eèéẻẽẹêềếểễệëěēęEÈÉẺẼẸÊỀẾỂỄỆËĚĒĘ","iìíỉĩịîïīIÌÍỈĨỊÎÏĪ","lłLŁ","nñňńNÑŇŃ","oòóỏõọôồốổỗộơởỡớờợöøōOÒÓỎÕỌÔỒỐỔỖỘƠỞỠỚỜỢÖØŌ","rřRŘ","sšśșşSŠŚȘŞ","tťțţTŤȚŢ","uùúủũụưừứửữựûüůūUÙÚỦŨỤƯỪỨỬỮỰÛÜŮŪ","yýỳỷỹỵÿYÝỲỶỸỴŸ","zžżźZŽŻŹ"];let n=[];return e.split("").forEach(r=>{s.every(i=>{if(i.indexOf(r)!==-1){if(n.indexOf(i)>-1)return!1;e=e.replace(new RegExp(`[${i}]`,`gm${t}`),`[${i}]`),n.push(i)}return!0})}),e}createMergedBlanksRegExp(e){return e.replace(/[\s]+/gmi,"[\\s]+")}createAccuracyRegExp(e){const t="!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~¡¿";let s=this.opt.accuracy,n=typeof s=="string"?s:s.value,r=typeof s=="string"?[]:s.limiters,i="";switch(r.forEach(o=>{i+=`|${this.escapeStr(o)}`}),n){case"partially":default:return`()(${e})`;case"complementary":return i="\\s"+(i||this.escapeStr(t)),`()([^${i}]*${e}[^${i}]*)`;case"exactly":return`(^|\\s${i})(${e})(?=$|\\s${i})`}}getSeparatedKeywords(e){let t=[];return e.forEach(s=>{this.opt.separateWordSearch?s.split(" ").forEach(n=>{n.trim()&&t.indexOf(n)===-1&&t.push(n)}):s.trim()&&t.indexOf(s)===-1&&t.push(s)}),{keywords:t.sort((s,n)=>n.length-s.length),length:t.length}}isNumeric(e){return Number(parseFloat(e))==e}checkRanges(e){if(!Array.isArray(e)||Object.prototype.toString.call(e[0])!=="[object Object]")return this.log("markRanges() will only accept an array of objects"),this.opt.noMatch(e),[];const t=[];let s=0;return e.sort((n,r)=>n.start-r.start).forEach(n=>{let{start:r,end:i,valid:o}=this.callNoMatchOnInvalidRanges(n,s);o&&(n.start=r,n.length=i-r,t.push(n),s=i)}),t}callNoMatchOnInvalidRanges(e,t){let s,n,r=!1;return e&&typeof e.start<"u"?(s=parseInt(e.start,10),n=s+parseInt(e.length,10),this.isNumeric(e.start)&&this.isNumeric(e.length)&&n-t>0&&n-s>0?r=!0:(this.log(`Ignoring invalid or overlapping range: ${JSON.stringify(e)}`),this.opt.noMatch(e))):(this.log(`Ignoring invalid range: ${JSON.stringify(e)}`),this.opt.noMatch(e)),{start:s,end:n,valid:r}}checkWhitespaceRanges(e,t,s){let n,r=!0,i=s.length,o=t-i,c=parseInt(e.start,10)-o;return c=c>i?i:c,n=c+parseInt(e.length,10),n>i&&(n=i,this.log(`End range automatically set to the max value of ${i}`)),c<0||n-c<0||c>i||n>i?(r=!1,this.log(`Invalid range: ${JSON.stringify(e)}`),this.opt.noMatch(e)):s.substring(c,n).replace(/\s+/g,"")===""&&(r=!1,this.log("Skipping whitespace only range: "+JSON.stringify(e)),this.opt.noMatch(e)),{start:c,end:n,valid:r}}getTextNodes(e){let t="",s=[];this.iterator.forEachNode(NodeFilter.SHOW_TEXT,n=>{s.push({start:t.length,end:(t+=n.textContent).length,node:n})},n=>this.matchesExclude(n.parentNode)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT,()=>{e({value:t,nodes:s})})}matchesExclude(e){return ce.matches(e,this.opt.exclude.concat(["script","style","title","head","html"]))}wrapRangeInTextNode(e,t,s){const n=this.opt.element?this.opt.element:"mark",r=e.splitText(t),i=r.splitText(s-t);let o=document.createElement(n);return o.setAttribute("data-markjs","true"),this.opt.className&&o.setAttribute("class",this.opt.className),o.textContent=r.textContent,r.parentNode.replaceChild(o,r),i}wrapRangeInMappedTextNode(e,t,s,n,r){e.nodes.every((i,o)=>{const c=e.nodes[o+1];if(typeof c>"u"||c.start>t){if(!n(i.node))return!1;const l=t-i.start,h=(s>i.end?i.end:s)-i.start,v=e.value.substr(0,i.start),f=e.value.substr(h+i.start);if(i.node=this.wrapRangeInTextNode(i.node,l,h),e.value=v+f,e.nodes.forEach((b,y)=>{y>=o&&(e.nodes[y].start>0&&y!==o&&(e.nodes[y].start-=h),e.nodes[y].end-=h)}),s-=h,r(i.node.previousSibling,i.start),s>i.end)t=i.end;else return!1}return!0})}wrapMatches(e,t,s,n,r){const i=t===0?0:t+1;this.getTextNodes(o=>{o.nodes.forEach(c=>{c=c.node;let l;for(;(l=e.exec(c.textContent))!==null&&l[i]!=="";){if(!s(l[i],c))continue;let h=l.index;if(i!==0)for(let v=1;v{let c;for(;(c=e.exec(o.value))!==null&&c[i]!=="";){let l=c.index;if(i!==0)for(let v=1;vs(c[i],v),(v,f)=>{e.lastIndex=f,n(v)})}r()})}wrapRangeFromIndex(e,t,s,n){this.getTextNodes(r=>{const i=r.value.length;e.forEach((o,c)=>{let{start:l,end:h,valid:v}=this.checkWhitespaceRanges(o,i,r.value);v&&this.wrapRangeInMappedTextNode(r,l,h,f=>t(f,o,r.value.substring(l,h),c),f=>{s(f,o)})}),n()})}unwrapMatches(e){const t=e.parentNode;let s=document.createDocumentFragment();for(;e.firstChild;)s.appendChild(e.removeChild(e.firstChild));t.replaceChild(s,e),this.ie?this.normalizeTextNode(t):t.normalize()}normalizeTextNode(e){if(e){if(e.nodeType===3)for(;e.nextSibling&&e.nextSibling.nodeType===3;)e.nodeValue+=e.nextSibling.nodeValue,e.parentNode.removeChild(e.nextSibling);else this.normalizeTextNode(e.firstChild);this.normalizeTextNode(e.nextSibling)}}markRegExp(e,t){this.opt=t,this.log(`Searching with expression "${e}"`);let s=0,n="wrapMatches";const r=i=>{s++,this.opt.each(i)};this.opt.acrossElements&&(n="wrapMatchesAcrossElements"),this[n](e,this.opt.ignoreGroups,(i,o)=>this.opt.filter(o,i,s),r,()=>{s===0&&this.opt.noMatch(e),this.opt.done(s)})}mark(e,t){this.opt=t;let s=0,n="wrapMatches";const{keywords:r,length:i}=this.getSeparatedKeywords(typeof e=="string"?[e]:e),o=this.opt.caseSensitive?"":"i",c=l=>{let h=new RegExp(this.createRegExp(l),`gm${o}`),v=0;this.log(`Searching with expression "${h}"`),this[n](h,1,(f,b)=>this.opt.filter(b,l,s,v),f=>{v++,s++,this.opt.each(f)},()=>{v===0&&this.opt.noMatch(l),r[i-1]===l?this.opt.done(s):c(r[r.indexOf(l)+1])})};this.opt.acrossElements&&(n="wrapMatchesAcrossElements"),i===0?this.opt.done(s):c(r[0])}markRanges(e,t){this.opt=t;let s=0,n=this.checkRanges(e);n&&n.length?(this.log("Starting to mark with the following ranges: "+JSON.stringify(n)),this.wrapRangeFromIndex(n,(r,i,o,c)=>this.opt.filter(r,i,o,c),(r,i)=>{s++,this.opt.each(r,i)},()=>{this.opt.done(s)})):this.opt.done(s)}unmark(e){this.opt=e;let t=this.opt.element?this.opt.element:"*";t+="[data-markjs]",this.opt.className&&(t+=`.${this.opt.className}`),this.log(`Removal selector "${t}"`),this.iterator.forEachNode(NodeFilter.SHOW_ELEMENT,s=>{this.unwrapMatches(s)},s=>{const n=ce.matches(s,t),r=this.matchesExclude(s);return!n||r?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT},this.opt.done)}};function Ls(a){const e=new As(a);return this.mark=(t,s)=>(e.mark(t,s),this),this.markRegExp=(t,s)=>(e.markRegExp(t,s),this),this.markRanges=(t,s)=>(e.markRanges(t,s),this),this.unmark=t=>(e.unmark(t),this),this}function Ie(a,e,t,s){function n(r){return r instanceof t?r:new t(function(i){i(r)})}return new(t||(t=Promise))(function(r,i){function o(h){try{l(s.next(h))}catch(v){i(v)}}function c(h){try{l(s.throw(h))}catch(v){i(v)}}function l(h){h.done?r(h.value):n(h.value).then(o,c)}l((s=s.apply(a,[])).next())})}const Ds="ENTRIES",xt="KEYS",St="VALUES",z="";class Le{constructor(e,t){const s=e._tree,n=Array.from(s.keys());this.set=e,this._type=t,this._path=n.length>0?[{node:s,keys:n}]:[]}next(){const e=this.dive();return this.backtrack(),e}dive(){if(this._path.length===0)return{done:!0,value:void 0};const{node:e,keys:t}=oe(this._path);if(oe(t)===z)return{done:!1,value:this.result()};const s=e.get(oe(t));return this._path.push({node:s,keys:Array.from(s.keys())}),this.dive()}backtrack(){if(this._path.length===0)return;const e=oe(this._path).keys;e.pop(),!(e.length>0)&&(this._path.pop(),this.backtrack())}key(){return this.set._prefix+this._path.map(({keys:e})=>oe(e)).filter(e=>e!==z).join("")}value(){return oe(this._path).node.get(z)}result(){switch(this._type){case St:return this.value();case xt:return this.key();default:return[this.key(),this.value()]}}[Symbol.iterator](){return this}}const oe=a=>a[a.length-1],zs=(a,e,t)=>{const s=new Map;if(e===void 0)return s;const n=e.length+1,r=n+t,i=new Uint8Array(r*n).fill(t+1);for(let o=0;o{const c=r*i;e:for(const l of a.keys())if(l===z){const h=n[c-1];h<=t&&s.set(o,[a.get(l),h])}else{let h=r;for(let v=0;vt)continue e}Et(a.get(l),e,t,s,n,h,i,o+l)}};class X{constructor(e=new Map,t=""){this._size=void 0,this._tree=e,this._prefix=t}atPrefix(e){if(!e.startsWith(this._prefix))throw new Error("Mismatched prefix");const[t,s]=Oe(this._tree,e.slice(this._prefix.length));if(t===void 0){const[n,r]=Je(s);for(const i of n.keys())if(i!==z&&i.startsWith(r)){const o=new Map;return o.set(i.slice(r.length),n.get(i)),new X(o,e)}}return new X(t,e)}clear(){this._size=void 0,this._tree.clear()}delete(e){return this._size=void 0,Ps(this._tree,e)}entries(){return new Le(this,Ds)}forEach(e){for(const[t,s]of this)e(t,s,this)}fuzzyGet(e,t){return zs(this._tree,e,t)}get(e){const t=Be(this._tree,e);return t!==void 0?t.get(z):void 0}has(e){const t=Be(this._tree,e);return t!==void 0&&t.has(z)}keys(){return new Le(this,xt)}set(e,t){if(typeof e!="string")throw new Error("key must be a string");return this._size=void 0,De(this._tree,e).set(z,t),this}get size(){if(this._size)return this._size;this._size=0;const e=this.entries();for(;!e.next().done;)this._size+=1;return this._size}update(e,t){if(typeof e!="string")throw new Error("key must be a string");this._size=void 0;const s=De(this._tree,e);return s.set(z,t(s.get(z))),this}fetch(e,t){if(typeof e!="string")throw new Error("key must be a string");this._size=void 0;const s=De(this._tree,e);let n=s.get(z);return n===void 0&&s.set(z,n=t()),n}values(){return new Le(this,St)}[Symbol.iterator](){return this.entries()}static from(e){const t=new X;for(const[s,n]of e)t.set(s,n);return t}static fromObject(e){return X.from(Object.entries(e))}}const Oe=(a,e,t=[])=>{if(e.length===0||a==null)return[a,t];for(const s of a.keys())if(s!==z&&e.startsWith(s))return t.push([a,s]),Oe(a.get(s),e.slice(s.length),t);return t.push([a,e]),Oe(void 0,"",t)},Be=(a,e)=>{if(e.length===0||a==null)return a;for(const t of a.keys())if(t!==z&&e.startsWith(t))return Be(a.get(t),e.slice(t.length))},De=(a,e)=>{const t=e.length;e:for(let s=0;a&&s{const[t,s]=Oe(a,e);if(t!==void 0){if(t.delete(z),t.size===0)It(s);else if(t.size===1){const[n,r]=t.entries().next().value;Tt(s,n,r)}}},It=a=>{if(a.length===0)return;const[e,t]=Je(a);if(e.delete(t),e.size===0)It(a.slice(0,-1));else if(e.size===1){const[s,n]=e.entries().next().value;s!==z&&Tt(a.slice(0,-1),s,n)}},Tt=(a,e,t)=>{if(a.length===0)return;const[s,n]=Je(a);s.set(n+e,t),s.delete(n)},Je=a=>a[a.length-1],Ue="or",Nt="and",Vs="and_not";class le{constructor(e){if((e==null?void 0:e.fields)==null)throw new Error('MiniSearch: option "fields" must be provided');const t=e.autoVacuum==null||e.autoVacuum===!0?Ve:e.autoVacuum;this._options=Object.assign(Object.assign(Object.assign({},Pe),e),{autoVacuum:t,searchOptions:Object.assign(Object.assign({},ht),e.searchOptions||{}),autoSuggestOptions:Object.assign(Object.assign({},Ks),e.autoSuggestOptions||{})}),this._index=new X,this._documentCount=0,this._documentIds=new Map,this._idToShortId=new Map,this._fieldIds={},this._fieldLength=new Map,this._avgFieldLength=[],this._nextId=0,this._storedFields=new Map,this._dirtCount=0,this._currentVacuum=null,this._enqueuedVacuum=null,this._enqueuedVacuumConditions=Ke,this.addFields(this._options.fields)}add(e){const{extractField:t,tokenize:s,processTerm:n,fields:r,idField:i}=this._options,o=t(e,i);if(o==null)throw new Error(`MiniSearch: document does not have ID field "${i}"`);if(this._idToShortId.has(o))throw new Error(`MiniSearch: duplicate ID ${o}`);const c=this.addDocumentId(o);this.saveStoredFields(c,e);for(const l of r){const h=t(e,l);if(h==null)continue;const v=s(h.toString(),l),f=this._fieldIds[l],b=new Set(v).size;this.addFieldLength(c,f,this._documentCount-1,b);for(const y of v){const _=n(y,l);if(Array.isArray(_))for(const w of _)this.addTerm(f,c,w);else _&&this.addTerm(f,c,_)}}}addAll(e){for(const t of e)this.add(t)}addAllAsync(e,t={}){const{chunkSize:s=10}=t,n={chunk:[],promise:Promise.resolve()},{chunk:r,promise:i}=e.reduce(({chunk:o,promise:c},l,h)=>(o.push(l),(h+1)%s===0?{chunk:[],promise:c.then(()=>new Promise(v=>setTimeout(v,0))).then(()=>this.addAll(o))}:{chunk:o,promise:c}),n);return i.then(()=>this.addAll(r))}remove(e){const{tokenize:t,processTerm:s,extractField:n,fields:r,idField:i}=this._options,o=n(e,i);if(o==null)throw new Error(`MiniSearch: document does not have ID field "${i}"`);const c=this._idToShortId.get(o);if(c==null)throw new Error(`MiniSearch: cannot remove document with ID ${o}: it is not in the index`);for(const l of r){const h=n(e,l);if(h==null)continue;const v=t(h.toString(),l),f=this._fieldIds[l],b=new Set(v).size;this.removeFieldLength(c,f,this._documentCount,b);for(const y of v){const _=s(y,l);if(Array.isArray(_))for(const w of _)this.removeTerm(f,c,w);else _&&this.removeTerm(f,c,_)}}this._storedFields.delete(c),this._documentIds.delete(c),this._idToShortId.delete(o),this._fieldLength.delete(c),this._documentCount-=1}removeAll(e){if(e)for(const t of e)this.remove(t);else{if(arguments.length>0)throw new Error("Expected documents to be present. Omit the argument to remove all documents.");this._index=new X,this._documentCount=0,this._documentIds=new Map,this._idToShortId=new Map,this._fieldLength=new Map,this._avgFieldLength=[],this._storedFields=new Map,this._nextId=0}}discard(e){const t=this._idToShortId.get(e);if(t==null)throw new Error(`MiniSearch: cannot discard document with ID ${e}: it is not in the index`);this._idToShortId.delete(e),this._documentIds.delete(t),this._storedFields.delete(t),(this._fieldLength.get(t)||[]).forEach((s,n)=>{this.removeFieldLength(t,n,this._documentCount,s)}),this._fieldLength.delete(t),this._documentCount-=1,this._dirtCount+=1,this.maybeAutoVacuum()}maybeAutoVacuum(){if(this._options.autoVacuum===!1)return;const{minDirtFactor:e,minDirtCount:t,batchSize:s,batchWait:n}=this._options.autoVacuum;this.conditionalVacuum({batchSize:s,batchWait:n},{minDirtCount:t,minDirtFactor:e})}discardAll(e){const t=this._options.autoVacuum;try{this._options.autoVacuum=!1;for(const s of e)this.discard(s)}finally{this._options.autoVacuum=t}this.maybeAutoVacuum()}replace(e){const{idField:t,extractField:s}=this._options,n=s(e,t);this.discard(n),this.add(e)}vacuum(e={}){return this.conditionalVacuum(e)}conditionalVacuum(e,t){return this._currentVacuum?(this._enqueuedVacuumConditions=this._enqueuedVacuumConditions&&t,this._enqueuedVacuum!=null?this._enqueuedVacuum:(this._enqueuedVacuum=this._currentVacuum.then(()=>{const s=this._enqueuedVacuumConditions;return this._enqueuedVacuumConditions=Ke,this.performVacuuming(e,s)}),this._enqueuedVacuum)):this.vacuumConditionsMet(t)===!1?Promise.resolve():(this._currentVacuum=this.performVacuuming(e),this._currentVacuum)}performVacuuming(e,t){return Ie(this,void 0,void 0,function*(){const s=this._dirtCount;if(this.vacuumConditionsMet(t)){const n=e.batchSize||We.batchSize,r=e.batchWait||We.batchWait;let i=1;for(const[o,c]of this._index){for(const[l,h]of c)for(const[v]of h)this._documentIds.has(v)||(h.size<=1?c.delete(l):h.delete(v));this._index.get(o).size===0&&this._index.delete(o),i%n===0&&(yield new Promise(l=>setTimeout(l,r))),i+=1}this._dirtCount-=s}yield null,this._currentVacuum=this._enqueuedVacuum,this._enqueuedVacuum=null})}vacuumConditionsMet(e){if(e==null)return!0;let{minDirtCount:t,minDirtFactor:s}=e;return t=t||Ve.minDirtCount,s=s||Ve.minDirtFactor,this.dirtCount>=t&&this.dirtFactor>=s}get isVacuuming(){return this._currentVacuum!=null}get dirtCount(){return this._dirtCount}get dirtFactor(){return this._dirtCount/(1+this._documentCount+this._dirtCount)}has(e){return this._idToShortId.has(e)}getStoredFields(e){const t=this._idToShortId.get(e);if(t!=null)return this._storedFields.get(t)}search(e,t={}){const s=this.executeQuery(e,t),n=[];for(const[r,{score:i,terms:o,match:c}]of s){const l=o.length||1,h={id:this._documentIds.get(r),score:i*l,terms:Object.keys(c),queryTerms:o,match:c};Object.assign(h,this._storedFields.get(r)),(t.filter==null||t.filter(h))&&n.push(h)}return e===le.wildcard&&t.boostDocument==null&&this._options.searchOptions.boostDocument==null||n.sort(pt),n}autoSuggest(e,t={}){t=Object.assign(Object.assign({},this._options.autoSuggestOptions),t);const s=new Map;for(const{score:r,terms:i}of this.search(e,t)){const o=i.join(" "),c=s.get(o);c!=null?(c.score+=r,c.count+=1):s.set(o,{score:r,terms:i,count:1})}const n=[];for(const[r,{score:i,terms:o,count:c}]of s)n.push({suggestion:r,terms:o,score:i/c});return n.sort(pt),n}get documentCount(){return this._documentCount}get termCount(){return this._index.size}static loadJSON(e,t){if(t==null)throw new Error("MiniSearch: loadJSON should be given the same options used when serializing the index");return this.loadJS(JSON.parse(e),t)}static loadJSONAsync(e,t){return Ie(this,void 0,void 0,function*(){if(t==null)throw new Error("MiniSearch: loadJSON should be given the same options used when serializing the index");return this.loadJSAsync(JSON.parse(e),t)})}static getDefault(e){if(Pe.hasOwnProperty(e))return ze(Pe,e);throw new Error(`MiniSearch: unknown option "${e}"`)}static loadJS(e,t){const{index:s,documentIds:n,fieldLength:r,storedFields:i,serializationVersion:o}=e,c=this.instantiateMiniSearch(e,t);c._documentIds=Se(n),c._fieldLength=Se(r),c._storedFields=Se(i);for(const[l,h]of c._documentIds)c._idToShortId.set(h,l);for(const[l,h]of s){const v=new Map;for(const f of Object.keys(h)){let b=h[f];o===1&&(b=b.ds),v.set(parseInt(f,10),Se(b))}c._index.set(l,v)}return c}static loadJSAsync(e,t){return Ie(this,void 0,void 0,function*(){const{index:s,documentIds:n,fieldLength:r,storedFields:i,serializationVersion:o}=e,c=this.instantiateMiniSearch(e,t);c._documentIds=yield Ee(n),c._fieldLength=yield Ee(r),c._storedFields=yield Ee(i);for(const[h,v]of c._documentIds)c._idToShortId.set(v,h);let l=0;for(const[h,v]of s){const f=new Map;for(const b of Object.keys(v)){let y=v[b];o===1&&(y=y.ds),f.set(parseInt(b,10),yield Ee(y))}++l%1e3===0&&(yield kt(0)),c._index.set(h,f)}return c})}static instantiateMiniSearch(e,t){const{documentCount:s,nextId:n,fieldIds:r,averageFieldLength:i,dirtCount:o,serializationVersion:c}=e;if(c!==1&&c!==2)throw new Error("MiniSearch: cannot deserialize an index created with an incompatible version");const l=new le(t);return l._documentCount=s,l._nextId=n,l._idToShortId=new Map,l._fieldIds=r,l._avgFieldLength=i,l._dirtCount=o||0,l._index=new X,l}executeQuery(e,t={}){if(e===le.wildcard)return this.executeWildcardQuery(t);if(typeof e!="string"){const f=Object.assign(Object.assign(Object.assign({},t),e),{queries:void 0}),b=e.queries.map(y=>this.executeQuery(y,f));return this.combineResults(b,f.combineWith)}const{tokenize:s,processTerm:n,searchOptions:r}=this._options,i=Object.assign(Object.assign({tokenize:s,processTerm:n},r),t),{tokenize:o,processTerm:c}=i,v=o(e).flatMap(f=>c(f)).filter(f=>!!f).map(Ws(i)).map(f=>this.executeQuerySpec(f,i));return this.combineResults(v,i.combineWith)}executeQuerySpec(e,t){const s=Object.assign(Object.assign({},this._options.searchOptions),t),n=(s.fields||this._options.fields).reduce((_,w)=>Object.assign(Object.assign({},_),{[w]:ze(s.boost,w)||1}),{}),{boostDocument:r,weights:i,maxFuzzy:o,bm25:c}=s,{fuzzy:l,prefix:h}=Object.assign(Object.assign({},ht.weights),i),v=this._index.get(e.term),f=this.termResults(e.term,e.term,1,e.termBoost,v,n,r,c);let b,y;if(e.prefix&&(b=this._index.atPrefix(e.term)),e.fuzzy){const _=e.fuzzy===!0?.2:e.fuzzy,w=_<1?Math.min(o,Math.round(e.term.length*_)):_;w&&(y=this._index.fuzzyGet(e.term,w))}if(b)for(const[_,w]of b){const R=_.length-e.term.length;if(!R)continue;y==null||y.delete(_);const C=h*_.length/(_.length+.3*R);this.termResults(e.term,_,C,e.termBoost,w,n,r,c,f)}if(y)for(const _ of y.keys()){const[w,R]=y.get(_);if(!R)continue;const C=l*_.length/(_.length+R);this.termResults(e.term,_,C,e.termBoost,w,n,r,c,f)}return f}executeWildcardQuery(e){const t=new Map,s=Object.assign(Object.assign({},this._options.searchOptions),e);for(const[n,r]of this._documentIds){const i=s.boostDocument?s.boostDocument(r,"",this._storedFields.get(n)):1;t.set(n,{score:i,terms:[],match:{}})}return t}combineResults(e,t=Ue){if(e.length===0)return new Map;const s=t.toLowerCase(),n=js[s];if(!n)throw new Error(`Invalid combination operator: ${t}`);return e.reduce(n)||new Map}toJSON(){const e=[];for(const[t,s]of this._index){const n={};for(const[r,i]of s)n[r]=Object.fromEntries(i);e.push([t,n])}return{documentCount:this._documentCount,nextId:this._nextId,documentIds:Object.fromEntries(this._documentIds),fieldIds:this._fieldIds,fieldLength:Object.fromEntries(this._fieldLength),averageFieldLength:this._avgFieldLength,storedFields:Object.fromEntries(this._storedFields),dirtCount:this._dirtCount,index:e,serializationVersion:2}}termResults(e,t,s,n,r,i,o,c,l=new Map){if(r==null)return l;for(const h of Object.keys(i)){const v=i[h],f=this._fieldIds[h],b=r.get(f);if(b==null)continue;let y=b.size;const _=this._avgFieldLength[f];for(const w of b.keys()){if(!this._documentIds.has(w)){this.removeTerm(f,w,t),y-=1;continue}const R=o?o(this._documentIds.get(w),t,this._storedFields.get(w)):1;if(!R)continue;const C=b.get(w),J=this._fieldLength.get(w)[f],Q=Bs(C,y,this._documentCount,J,_,c),W=s*n*v*R*Q,j=l.get(w);if(j){j.score+=W,Js(j.terms,e);const $=ze(j.match,t);$?$.push(h):j.match[t]=[h]}else l.set(w,{score:W,terms:[e],match:{[t]:[h]}})}}return l}addTerm(e,t,s){const n=this._index.fetch(s,vt);let r=n.get(e);if(r==null)r=new Map,r.set(t,1),n.set(e,r);else{const i=r.get(t);r.set(t,(i||0)+1)}}removeTerm(e,t,s){if(!this._index.has(s)){this.warnDocumentChanged(t,e,s);return}const n=this._index.fetch(s,vt),r=n.get(e);r==null||r.get(t)==null?this.warnDocumentChanged(t,e,s):r.get(t)<=1?r.size<=1?n.delete(e):r.delete(t):r.set(t,r.get(t)-1),this._index.get(s).size===0&&this._index.delete(s)}warnDocumentChanged(e,t,s){for(const n of Object.keys(this._fieldIds))if(this._fieldIds[n]===t){this._options.logger("warn",`MiniSearch: document with ID ${this._documentIds.get(e)} has changed before removal: term "${s}" was not present in field "${n}". Removing a document after it has changed can corrupt the index!`,"version_conflict");return}}addDocumentId(e){const t=this._nextId;return this._idToShortId.set(e,t),this._documentIds.set(t,e),this._documentCount+=1,this._nextId+=1,t}addFields(e){for(let t=0;tObject.prototype.hasOwnProperty.call(a,e)?a[e]:void 0,js={[Ue]:(a,e)=>{for(const t of e.keys()){const s=a.get(t);if(s==null)a.set(t,e.get(t));else{const{score:n,terms:r,match:i}=e.get(t);s.score=s.score+n,s.match=Object.assign(s.match,i),ft(s.terms,r)}}return a},[Nt]:(a,e)=>{const t=new Map;for(const s of e.keys()){const n=a.get(s);if(n==null)continue;const{score:r,terms:i,match:o}=e.get(s);ft(n.terms,i),t.set(s,{score:n.score+r,terms:n.terms,match:Object.assign(n.match,o)})}return t},[Vs]:(a,e)=>{for(const t of e.keys())a.delete(t);return a}},$s={k:1.2,b:.7,d:.5},Bs=(a,e,t,s,n,r)=>{const{k:i,b:o,d:c}=r;return Math.log(1+(t-e+.5)/(e+.5))*(c+a*(i+1)/(a+i*(1-o+o*s/n)))},Ws=a=>(e,t,s)=>{const n=typeof a.fuzzy=="function"?a.fuzzy(e,t,s):a.fuzzy||!1,r=typeof a.prefix=="function"?a.prefix(e,t,s):a.prefix===!0,i=typeof a.boostTerm=="function"?a.boostTerm(e,t,s):1;return{term:e,fuzzy:n,prefix:r,termBoost:i}},Pe={idField:"id",extractField:(a,e)=>a[e],tokenize:a=>a.split(Us),processTerm:a=>a.toLowerCase(),fields:void 0,searchOptions:void 0,storeFields:[],logger:(a,e)=>{typeof(console==null?void 0:console[a])=="function"&&console[a](e)},autoVacuum:!0},ht={combineWith:Ue,prefix:!1,fuzzy:!1,maxFuzzy:6,boost:{},weights:{fuzzy:.45,prefix:.375},bm25:$s},Ks={combineWith:Nt,prefix:(a,e,t)=>e===t.length-1},We={batchSize:1e3,batchWait:10},Ke={minDirtFactor:.1,minDirtCount:20},Ve=Object.assign(Object.assign({},We),Ke),Js=(a,e)=>{a.includes(e)||a.push(e)},ft=(a,e)=>{for(const t of e)a.includes(t)||a.push(t)},pt=({score:a},{score:e})=>e-a,vt=()=>new Map,Se=a=>{const e=new Map;for(const t of Object.keys(a))e.set(parseInt(t,10),a[t]);return e},Ee=a=>Ie(void 0,void 0,void 0,function*(){const e=new Map;let t=0;for(const s of Object.keys(a))e.set(parseInt(s,10),a[s]),++t%1e3===0&&(yield kt(0));return e}),kt=a=>new Promise(e=>setTimeout(e,a)),Us=/[\n\r\p{Z}\p{P}]+/u;class qs{constructor(e=10){Ce(this,"max");Ce(this,"cache");this.max=e,this.cache=new Map}get(e){let t=this.cache.get(e);return t!==void 0&&(this.cache.delete(e),this.cache.set(e,t)),t}set(e,t){this.cache.has(e)?this.cache.delete(e):this.cache.size===this.max&&this.cache.delete(this.first()),this.cache.set(e,t)}first(){return this.cache.keys().next().value}clear(){this.cache.clear()}}const K=a=>(Yt("data-v-fa8ead94"),a=a(),Zt(),a),Gs=["aria-owns"],Hs={class:"shell"},Qs=["title"],Ys=K(()=>x("span",{"aria-hidden":"true",class:"vpi-search search-icon local-search-icon"},null,-1)),Zs=[Ys],Xs={class:"search-actions before"},en=["title"],tn=K(()=>x("span",{class:"vpi-arrow-left local-search-icon"},null,-1)),sn=[tn],nn=["placeholder"],rn={class:"search-actions"},an=["title"],on=K(()=>x("span",{class:"vpi-layout-list local-search-icon"},null,-1)),cn=[on],ln=["disabled","title"],un=K(()=>x("span",{class:"vpi-delete local-search-icon"},null,-1)),dn=[un],hn=["id","role","aria-labelledby"],fn=["aria-selected"],pn=["href","aria-label","onMouseenter","onFocusin"],vn={class:"titles"},mn=K(()=>x("span",{class:"title-icon"},"#",-1)),gn=["innerHTML"],bn=K(()=>x("span",{class:"vpi-chevron-right local-search-icon"},null,-1)),yn={class:"title main"},wn=["innerHTML"],_n={key:0,class:"excerpt-wrapper"},xn={key:0,class:"excerpt",inert:""},Sn=["innerHTML"],En=K(()=>x("div",{class:"excerpt-gradient-bottom"},null,-1)),In=K(()=>x("div",{class:"excerpt-gradient-top"},null,-1)),Tn={key:0,class:"no-results"},Nn={class:"search-keyboard-shortcuts"},kn=["aria-label"],Fn=K(()=>x("span",{class:"vpi-arrow-up navigate-icon"},null,-1)),On=[Fn],Rn=["aria-label"],Cn=K(()=>x("span",{class:"vpi-arrow-down navigate-icon"},null,-1)),Mn=[Cn],An=["aria-label"],Ln=K(()=>x("span",{class:"vpi-corner-down-left navigate-icon"},null,-1)),Dn=[Ln],zn=["aria-label"],Pn=Lt({__name:"VPLocalSearchBox",emits:["close"],setup(a,{emit:e}){var F,M;const t=e,s=ye(),n=ye(),r=ye(as),i=is(),{activate:o}=Ms(s,{immediate:!0,allowOutsideClick:!0,clickOutsideDeactivates:!0,escapeDeactivates:!0}),{localeIndex:c,theme:l}=i,h=tt(async()=>{var p,g,N,O,P,V,T,L,q;return rt(le.loadJSON((N=await((g=(p=r.value)[c.value])==null?void 0:g.call(p)))==null?void 0:N.default,{fields:["title","titles","text"],storeFields:["title","titles"],searchOptions:{fuzzy:.2,prefix:!0,boost:{title:4,text:2,titles:1},...((O=l.value.search)==null?void 0:O.provider)==="local"&&((V=(P=l.value.search.options)==null?void 0:P.miniSearch)==null?void 0:V.searchOptions)},...((T=l.value.search)==null?void 0:T.provider)==="local"&&((q=(L=l.value.search.options)==null?void 0:L.miniSearch)==null?void 0:q.options)}))}),f=ve(()=>{var p,g;return((p=l.value.search)==null?void 0:p.provider)==="local"&&((g=l.value.search.options)==null?void 0:g.disableQueryPersistence)===!0}).value?ne(""):Dt("vitepress:local-search-filter",""),b=zt("vitepress:local-search-detailed-list",((F=l.value.search)==null?void 0:F.provider)==="local"&&((M=l.value.search.options)==null?void 0:M.detailedView)===!0),y=ve(()=>{var p,g,N;return((p=l.value.search)==null?void 0:p.provider)==="local"&&(((g=l.value.search.options)==null?void 0:g.disableDetailedView)===!0||((N=l.value.search.options)==null?void 0:N.detailedView)===!1)}),_=ve(()=>{var g,N,O,P,V,T,L;const p=((g=l.value.search)==null?void 0:g.options)??l.value.algolia;return((V=(P=(O=(N=p==null?void 0:p.locales)==null?void 0:N[c.value])==null?void 0:O.translations)==null?void 0:P.button)==null?void 0:V.buttonText)||((L=(T=p==null?void 0:p.translations)==null?void 0:T.button)==null?void 0:L.buttonText)||"Search"});Pt(()=>{y.value&&(b.value=!1)});const w=ye([]),R=ne(!1);je(f,()=>{R.value=!1});const C=tt(async()=>{if(n.value)return rt(new Ls(n.value))},null),J=new qs(16);Vt(()=>[h.value,f.value,b.value],async([p,g,N],O,P)=>{var ge,qe,Ge,He;(O==null?void 0:O[0])!==p&&J.clear();let V=!1;if(P(()=>{V=!0}),!p)return;w.value=p.search(g).slice(0,16),R.value=!0;const T=N?await Promise.all(w.value.map(B=>Q(B.id))):[];if(V)return;for(const{id:B,mod:ee}of T){const te=B.slice(0,B.indexOf("#"));let Y=J.get(te);if(Y)continue;Y=new Map,J.set(te,Y);const G=ee.default??ee;if(G!=null&&G.render||G!=null&&G.setup){const se=Xt(G);se.config.warnHandler=()=>{},se.provide(es,i),Object.defineProperties(se.config.globalProperties,{$frontmatter:{get(){return i.frontmatter.value}},$params:{get(){return i.page.value.params}}});const Qe=document.createElement("div");se.mount(Qe),Qe.querySelectorAll("h1, h2, h3, h4, h5, h6").forEach(ue=>{var Xe;const be=(Xe=ue.querySelector("a"))==null?void 0:Xe.getAttribute("href"),Ye=(be==null?void 0:be.startsWith("#"))&&be.slice(1);if(!Ye)return;let Ze="";for(;(ue=ue.nextElementSibling)&&!/^h[1-6]$/i.test(ue.tagName);)Ze+=ue.outerHTML;Y.set(Ye,Ze)}),se.unmount()}if(V)return}const L=new Set;if(w.value=w.value.map(B=>{const[ee,te]=B.id.split("#"),Y=J.get(ee),G=(Y==null?void 0:Y.get(te))??"";for(const se in B.match)L.add(se);return{...B,text:G}}),await de(),V)return;await new Promise(B=>{var ee;(ee=C.value)==null||ee.unmark({done:()=>{var te;(te=C.value)==null||te.markRegExp(k(L),{done:B})}})});const q=((ge=s.value)==null?void 0:ge.querySelectorAll(".result .excerpt"))??[];for(const B of q)(qe=B.querySelector('mark[data-markjs="true"]'))==null||qe.scrollIntoView({block:"center"});(He=(Ge=n.value)==null?void 0:Ge.firstElementChild)==null||He.scrollIntoView({block:"start"})},{debounce:200,immediate:!0});async function Q(p){const g=ts(p.slice(0,p.indexOf("#")));try{if(!g)throw new Error(`Cannot find file for id: ${p}`);return{id:p,mod:await import(g)}}catch(N){return console.error(N),{id:p,mod:{}}}}const W=ne(),j=ve(()=>{var p;return((p=f.value)==null?void 0:p.length)<=0});function $(p=!0){var g,N;(g=W.value)==null||g.focus(),p&&((N=W.value)==null||N.select())}Me(()=>{$()});function Re(p){p.pointerType==="mouse"&&$()}const A=ne(-1),U=ne(!1);je(w,p=>{A.value=p.length?0:-1,I()});function I(){de(()=>{const p=document.querySelector(".result.selected");p==null||p.scrollIntoView({block:"nearest"})})}we("ArrowUp",p=>{p.preventDefault(),A.value--,A.value<0&&(A.value=w.value.length-1),U.value=!0,I()}),we("ArrowDown",p=>{p.preventDefault(),A.value++,A.value>=w.value.length&&(A.value=0),U.value=!0,I()});const u=jt();we("Enter",p=>{if(p.isComposing||p.target instanceof HTMLButtonElement&&p.target.type!=="submit")return;const g=w.value[A.value];if(p.target instanceof HTMLInputElement&&!g){p.preventDefault();return}g&&(u.go(g.id),t("close"))}),we("Escape",()=>{t("close")});const m=rs({modal:{displayDetails:"Display detailed list",resetButtonTitle:"Reset search",backButtonTitle:"Close search",noResultsText:"No results for",footer:{selectText:"to select",selectKeyAriaLabel:"enter",navigateText:"to navigate",navigateUpKeyAriaLabel:"up arrow",navigateDownKeyAriaLabel:"down arrow",closeText:"to close",closeKeyAriaLabel:"escape"}}});Me(()=>{window.history.pushState(null,"",null)}),$t("popstate",p=>{p.preventDefault(),t("close")});const S=Bt(Wt?document.body:null);Me(()=>{de(()=>{S.value=!0,de().then(()=>o())})}),Kt(()=>{S.value=!1});function E(){f.value="",de().then(()=>$(!1))}function k(p){return new RegExp([...p].sort((g,N)=>N.length-g.length).map(g=>`(${ss(g)})`).join("|"),"gi")}return(p,g)=>{var N,O,P,V;return H(),Jt(Qt,{to:"body"},[x("div",{ref_key:"el",ref:s,role:"button","aria-owns":(N=w.value)!=null&&N.length?"localsearch-list":void 0,"aria-expanded":"true","aria-haspopup":"listbox","aria-labelledby":"localsearch-label",class:"VPLocalSearchBox"},[x("div",{class:"backdrop",onClick:g[0]||(g[0]=T=>p.$emit("close"))}),x("div",Hs,[x("form",{class:"search-bar",onPointerup:g[4]||(g[4]=T=>Re(T)),onSubmit:g[5]||(g[5]=Ut(()=>{},["prevent"]))},[x("label",{title:_.value,id:"localsearch-label",for:"localsearch-input"},Zs,8,Qs),x("div",Xs,[x("button",{class:"back-button",title:D(m)("modal.backButtonTitle"),onClick:g[1]||(g[1]=T=>p.$emit("close"))},sn,8,en)]),qt(x("input",{ref_key:"searchInput",ref:W,"onUpdate:modelValue":g[2]||(g[2]=T=>Ht(f)?f.value=T:null),placeholder:_.value,id:"localsearch-input","aria-labelledby":"localsearch-label",class:"search-input"},null,8,nn),[[Gt,D(f)]]),x("div",rn,[y.value?_e("",!0):(H(),Z("button",{key:0,class:st(["toggle-layout-button",{"detailed-list":D(b)}]),type:"button",title:D(m)("modal.displayDetails"),onClick:g[3]||(g[3]=T=>A.value>-1&&(b.value=!D(b)))},cn,10,an)),x("button",{class:"clear-button",type:"reset",disabled:j.value,title:D(m)("modal.resetButtonTitle"),onClick:E},dn,8,ln)])],32),x("ul",{ref_key:"resultsEl",ref:n,id:(O=w.value)!=null&&O.length?"localsearch-list":void 0,role:(P=w.value)!=null&&P.length?"listbox":void 0,"aria-labelledby":(V=w.value)!=null&&V.length?"localsearch-label":void 0,class:"results",onMousemove:g[7]||(g[7]=T=>U.value=!1)},[(H(!0),Z(it,null,nt(w.value,(T,L)=>(H(),Z("li",{key:T.id,role:"option","aria-selected":A.value===L?"true":"false"},[x("a",{href:T.id,class:st(["result",{selected:A.value===L}]),"aria-label":[...T.titles,T.title].join(" > "),onMouseenter:q=>!U.value&&(A.value=L),onFocusin:q=>A.value=L,onClick:g[6]||(g[6]=q=>p.$emit("close"))},[x("div",null,[x("div",vn,[mn,(H(!0),Z(it,null,nt(T.titles,(q,ge)=>(H(),Z("span",{key:ge,class:"title"},[x("span",{class:"text",innerHTML:q},null,8,gn),bn]))),128)),x("span",yn,[x("span",{class:"text",innerHTML:T.title},null,8,wn)])]),D(b)?(H(),Z("div",_n,[T.text?(H(),Z("div",xn,[x("div",{class:"vp-doc",innerHTML:T.text},null,8,Sn)])):_e("",!0),En,In])):_e("",!0)])],42,pn)],8,fn))),128)),D(f)&&!w.value.length&&R.value?(H(),Z("li",Tn,[he(fe(D(m)("modal.noResultsText"))+' "',1),x("strong",null,fe(D(f)),1),he('" ')])):_e("",!0)],40,hn),x("div",Nn,[x("span",null,[x("kbd",{"aria-label":D(m)("modal.footer.navigateUpKeyAriaLabel")},On,8,kn),x("kbd",{"aria-label":D(m)("modal.footer.navigateDownKeyAriaLabel")},Mn,8,Rn),he(" "+fe(D(m)("modal.footer.navigateText")),1)]),x("span",null,[x("kbd",{"aria-label":D(m)("modal.footer.selectKeyAriaLabel")},Dn,8,An),he(" "+fe(D(m)("modal.footer.selectText")),1)]),x("span",null,[x("kbd",{"aria-label":D(m)("modal.footer.closeKeyAriaLabel")},"esc",8,zn),he(" "+fe(D(m)("modal.footer.closeText")),1)])])])],8,Gs)])}}}),Kn=ns(Pn,[["__scopeId","data-v-fa8ead94"]]);export{Kn as default}; diff --git a/assets/chunks/bmap-draw.min.4O0BZXxI.js b/assets/chunks/bmap-draw.min.4O0BZXxI.js new file mode 100644 index 00000000..21546668 --- /dev/null +++ b/assets/chunks/bmap-draw.min.4O0BZXxI.js @@ -0,0 +1,84 @@ +import{c as Hi}from"./commonjsHelpers.Cpj98o6Y.js";function Zi(_e,Te){for(var de=0;deM[_]})}}}return Object.freeze(Object.defineProperty(_e,Symbol.toStringTag,{value:"Module"}))}var _t={exports:{}};(function(_e,Te){var de={};(function(M,_){_(Te)})(Hi,function(M){function _(r){return _=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},_(r)}function L(r,t){if(!(r instanceof t))throw new TypeError("Cannot call a class as a function")}function Kn(r,t){for(var n=0;t.length>n;n++){var e=t[n];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(r,(i=void 0,typeof(i=function(s,o){if(typeof s!="object"||s===null)return s;var a=s[Symbol.toPrimitive];if(a!==void 0){var l=a.call(s,o||"default");if(typeof l!="object")return l;throw new TypeError("@@toPrimitive must return a primitive value.")}return(o==="string"?String:Number)(s)}(e.key,"string"))=="symbol"?i:i+""),e)}var i}function x(r,t,n){return t&&Kn(r.prototype,t),Object.defineProperty(r,"prototype",{writable:!1}),r}function S(r,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");r.prototype=Object.create(t&&t.prototype,{constructor:{value:r,writable:!0,configurable:!0}}),Object.defineProperty(r,"prototype",{writable:!1}),t&&$e(r,t)}function J(r){return J=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},J(r)}function $e(r,t){return $e=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(n,e){return n.__proto__=e,n},$e(r,t)}function Le(r){if(r===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return r}function Tt(r,t){if(t&&(typeof t=="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Le(r)}function P(r){var t=function(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}();return function(){var n,e=J(r);if(t){var i=J(this).constructor;n=Reflect.construct(e,arguments,i)}else n=e.apply(this,arguments);return Tt(this,n)}}function $(){return $=typeof Reflect<"u"&&Reflect.get?Reflect.get.bind():function(r,t,n){var e=function(s,o){for(;!Object.prototype.hasOwnProperty.call(s,o)&&(s=J(s))!==null;);return s}(r,t);if(e){var i=Object.getOwnPropertyDescriptor(e,t);return i.get?i.get.call(3>arguments.length?r:n):i.value}},$.apply(this,arguments)}function Ft(r,t){return function(n){if(Array.isArray(n))return n}(r)||function(n,e){var i=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(i!=null){var s,o,a,l,u=[],c=!0,h=!1;try{if(a=(i=i.call(n)).next,e!==0)for(;!(c=(s=a.call(i)).done)&&(u.push(s.value),u.length!==e);c=!0);}catch(p){h=!0,o=p}finally{try{if(!c&&i.return!=null&&(l=i.return(),Object(l)!==l))return}finally{if(h)throw o}}return u}}(r,t)||Wt(r,t)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function Wt(r,t){if(r){if(typeof r=="string")return zt(r,t);var n=Object.prototype.toString.call(r).slice(8,-1);return n==="Object"&&r.constructor&&(n=r.constructor.name),n==="Map"||n==="Set"?Array.from(r):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?zt(r,t):void 0}}function zt(r,t){(t==null||t>r.length)&&(t=r.length);for(var n=0,e=Array(t);t>n;n++)e[n]=r[n];return e}function jt(r,t){var n=typeof Symbol<"u"&&r[Symbol.iterator]||r["@@iterator"];if(!n){if(Array.isArray(r)||(n=Wt(r))||t){n&&(r=n);var e=0,i=function(){};return{s:i,n:function(){return r.length>e?{done:!1,value:r[e++]}:{done:!0}},e:function(l){throw l},f:i}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var s,o=!0,a=!1;return{s:function(){n=n.call(r)},n:function(){var l=n.next();return o=l.done,l},e:function(l){a=!0,s=l},f:function(){try{o||n.return==null||n.return()}finally{if(a)throw s}}}}(function(r,t){t===void 0&&(t={});var n=t.insertAt;if(typeof document<"u"){var e=document.head||document.getElementsByTagName("head")[0],i=document.createElement("style");i.type="text/css",n==="top"&&e.firstChild?e.insertBefore(i,e.firstChild):e.appendChild(i),i.styleSheet?i.styleSheet.cssText=r:i.appendChild(document.createTextNode(r))}})(".BMap_Draw_Panel{height:47px;border-radius:5px;overflow:hidden;box-shadow:0 2px 6px 0 rgba(27,124,236,.5);float:left}.BMap_Drawing .BMapDraw_Box{border-right:1px solid #d2d2d2;float:left;width:64px;height:100%;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAYUAAABjCAMAAABDl+xRAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2RpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo4RUY1MTQyNzhBNThFMjExQTlDQ0JCMTMzNEIzNTNBQSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo4M0ExRDlFOTU4OEMxMUUyOUNDMkFCOUMwMUQzOTI2RSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo4M0ExRDlFODU4OEMxMUUyOUNDMkFCOUMwMUQzOTI2RSIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IFdpbmRvd3MiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo5MUY1MTQyNzhBNThFMjExQTlDQ0JCMTMzNEIzNTNBQSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo4RUY1MTQyNzhBNThFMjExQTlDQ0JCMTMzNEIzNTNBQSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PkLjstsAAAMAUExURR9zsKfJ4eHr8dPk8EGMv+Lp7id8tx1vrOnu8hxtq1max0WOwCl8tpO61ou104a11mGeye3y9Sp/uDKCumKaxJO92lycyKvJ3vL3+xtqqXSmyzR8tGikzb3U5HypzHqu0sLa6x5xruXs8fL09sHW5SB1soOtzlWYxbXS5rXO4VyWwr3S4S6BuXWr0ZzD3iR5tI662VGVxazN49bh6uXv9rzW6NLg6tzn7iBzrOjx902Swu7w8napzSNvpI241srZ5rDN4TSEu6LF3UmRwsrd6s3e6oGy1BxrqabH3UyLtiN2sn2u0NDj74Wz07PL3iFuq6LB2FaWxNLj7ix8tt/p8aLG4KvG22iexmymzeLs8zqAtprC3St0rmWgylKOvDeGvDiFu2OgyyJ5tZG2032w07jR4rnU5yVyrS55sbrS5EyJurbQ4sje7VGRwNnl7D2EuKnL4rHQ5J7C29fn8fb5+maizPDz9TSCuNfX1+Pt9Dt+tCV1sUODtoOv0DqIvTiHvZrB25m+2MbZ5oKx0fj6+8ba6dPi7NHf6VSTwWmhyT+Kvyx/uNrk69fk7tjj6yNxpkeErzKEu97o7vPz8yh6tW6hyFGQv0+Uw6DD3EuMvD2KvvT09CZ6tSl3sf///1WVw/X19f7+/vb29vn5+fv7+/z8/P39/fr6+vf39/j4+CJ4syF0riF3siF0rR9vpiJ5tNLS0iJyqSNyqRtpqE2NuUyNuSuAuSF2sx9yrzyJviZ7tiN4tCV6tU6Ouil+uE6UxB5wrfz9/vr8/ff6/O30+R90seDs9ery+Mvf7vX5/O/2+iV7tpfA3N3r9M7h7r7Y6R9wqB5soiByqyF2sB9upXCoz9Pk7+Lu9Z/F34q42PT19sbc7Nvp8/r7/CJroCJyqCNyqK7O5PHy8iZ5tb/U4/T19bnP4e7z9+Tr8E6OuUiFsEiJu/b393KhxvT29zSAt06Nt5i818zb502MvKfD2VGUwtzl7Ch9t0SFuCJ1sT6IvMbc68nd7KzK4DB/t////2zsHaoAAAEAdFJOU////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wBT9wclAAAO8ElEQVR42uyaeViUxx3HF8EXdje4KyuIJwjoIiwKCBrQqLhRNKJ4BCUeAV5RUGmMEjQ1McTUqAVjorlMjNNIWgKRtklQFLUv7HLfuYhnbpvQJq0xabJNE21n911g3wOYmVeWp8/zfv/g4d053pn5vDPzm/n9FOA4T4U8/YGr33P0+usPH3+9U685qthRRRwVcPTw8Vf5OiquZ8X1cOGzfUq8QvvrulvAbRm31Y794fSUMwac0eGOHH9gu4ccKI5LpPAmkEjhTSCRwptAIoXuFhBScBgDIgrHZQoyBZmCTEGmIFOQKcgUZApYFPYk+ZQdyvGXKQwkhWpVmU2aAaQw1VOlLzPoVZ77Bp5C2KE5OBQuHSrrQQaNCZ3CaC99VmFDcLnXHFIKcy/p3crc9Jq5hBQmGrubHjsbl8JNba5x4eDbQWHv5sfT9bllZS8PxaBgKOtRBvS58LOXW3VhS13hh2WPPURE4amcrtem7SWgME3vxZF+GhYFP9uby/cRU/jrHO9pd89flBNrfXmK3k9VZlQNRafg1YvQKWiYpMIwxivJFMb4k1DYqnN4rW42NoWgXFju5UVjBh89OnjMopfhQ24QBoWbXl4GvdrLK3Y6KYXNbNMrkjXz53pY94Whl3NUgTgUti7j6EObgrEoJFt+WWaxWHRVzZZIAgqzefhnY1IIMjBM3O7pneM1ffchhjEEoVN4kTE88eznoxlmPSmF2QwTtvEpW4PvHfO4X4RBPehymk8gKgWGYe4T252jYAI6hXTL1jZIwRKlsUTjU9gLB5Ejw91YFB7ItVjUBx1H7KDaYsk9gEzBwOjh3zEMs5uQwvYXtfDLCQg64qfXWVipBwVqfR4fhEYB5henABPQKQRT+mgKKiGF+QqfgsrClwqLgp6i1AHcIQtQU5QemcJjlsfgWrTNYplPSCE9z+ObIXEUR+qAoRTlhkYBZhenABPQKXykP6s+C6U+ewnfRnqys926CF3nv0EYFGbDklP5YzYVVjUblcIMivLZfENHWX4ko7De8kTBcIovo0eKcykUZqeet0n/ED6FdLbRliOwxcO92IeFGBQgf0/hoHnCbwKVwkHdWZt+Q2QjBRyJ8yyYmn+WL2qon+4wGgWYW5wCTMA5O9etnQwVvofg1GZkGz3TtpWFsw9GdApB58+nThcO2nT4XQShWqr7foBfkJfn50QUYs/nv+rhdl4gdfEPPoi7M8wtTgEmYN0jRVsprL0V+ws2hbhXbI0OsFHwYHsQh05h0eTJC8VuMODvi5BPbZth45cSnp1TJy/fvvfWZIGSA+/QIFKAuUUp/Bom4FE4x0q3bBkmhbNso1mz7hv24RV0CkvPnQsSoxB07txSZAoTJVCYu/CO+QUTzwl04+5zExEpwNziFGACEoWPbq6N1SbtKYwu6dIPvlgUUtlG21pcPIZ9SEWnsKOkxEOMgkdJyQ50CtZ3zujWzAM4u/Pw5+YWzCzha8y2knsRKcDcg0QpwAQkCprTVq39KPp0t2ZiUdCyjU6dBls87T/sgxadwhennxO/U33u9BfoFE7zdKsDx1JdmNpRtJZfRcDIHainNphbnAJMQKJwfbxN6dHjuxU7fxkGhTn2Vi8fOWfGHfb/j6BTmDx+sjgFmIBMIXQ8X+txKAT+bullD7efOBWkFrtpUSnA7OIUYAIShZnLa6z6ybvGUffcRKcw9JZgCG55oFO4VVNzWIzC4ZqaW8gUAq7X8DQR6wajY8euogeWcyrQDr1nJioFmF2cAkxA250btQqrtig4uo5xdt7GH4GabRhn5/0KxTUxCtcUiv3o/oWDQ0Z26zrsAB6Fgu/uuVm08SfHERgSpNiISgFmF6cAExBtpD37z4gI5zbvt1yCipWXMSjsOjNO1FLddebMLkIvz69g+zEpFMw5NrXI03EA1t84E4BKAWYXpwATUC3Ve0+MEwqHwj9DOAD3B+LcqV4bN26U2Knt+rhxoYQUXoDtx6VQNHaLR9FKhwHoWLkF+WYbZhenABOQzwsjKwV6BMu/sH2YQ/NDtuP5F7ZUVq4TUlhXWbmF0OPp+QjswEtzMSkEvhByefvXXQPw/GurViJTgPlFKdwHE5Ap/Owu0BY8X9vllV3NHxaI6Wsb7u5+THibd8zdfTgZhQlsD45NwfR4BozaVTQtky28cmrxkspdyBRgCXEKMAGZgmkVH4JyP6bfeftL9pIvbcf2O9/v7r6KZ953wBZ9T+b9/zHDPWPI4hB39+cxKXwzK2NxUVAl7MOwfcXFhyvdVzmXQuEMJV9jCzG9/wGjbBAyA/C9/1MylcpVnC93yiqlMnMKGYUlSiVc4KaPUmZie/+XZEwtuqEM+a6oaO/zlUplCDIFOGDiFGACOoX1AgobsSNhrtnKDSeJhAlNVCoz1nV7PNdlKJWJoYSRMOuUysWwkvuVidgUCkau8iiaUlTwxDBlpmdHULGTKXyVGM9V4lf48UgjleznQxAJE7oGvjNzbChclzpCx2bChzWhpPFIi+PjQz4/Oisx/lH8SJjATSFHi768P37nkkCsqDDY4M1iFMbABIw71a95FIYRRIV5rInPGEwYFXZg0wiONh0gjgqb/uiI0lGbEkeMWEIQjzQoY8TOEf9egRubN6IXYVBYxyv6JEls3oTSseSxeSt2lnZp5wopsXnfrbFVsvJVkqiwxNL4L/EjJONLexTOXPBI5BQNIYqQ7Mg4LCVCctaETY+Wlj66acIsiRGSg/+xM/H7f5HF5k0onUAQpzo2sUcIY3G8PLsdi665jyxOdYUcLSxHzssUZAoyBZmCTEGmIFOQKcgUZAoyBSkUgExhwCkAxX9lDbxkCjIFWTIFmYIsDoU/SdIH7z7z8bsfSCn/8d+llLdW8IykCm5HF56R2gXFHyXpvXcW3PXOe1LK3/WtlPLWChZIquB2dGGB1C4oSiTp/TsXPH3n+1LKP/2tlPLSK4A1fCu1CwukdkFR8mcpKjlx6pMTJVLKf/I3KeWtFZyUVAGs4eSn0rrw6SmJXfhU8QYtRW+cOPXWiTeklH/rL1LKWys4KakCWMPJt6V14e1TErvwtkxBpiBTkCn8X1Cg5rWCKn+tTGEgKegSgE1JA0jBGF7vajK51ocbB57CZ1XzcCisNoMeZErCoNAGXFU0014N5pFSiFjtGgNiXCdFEFIY3dLd9JZkXArtV3xbXOJuBwXjaI2Lqy8A1fkYFEygR5nQKfiAGB3tlkJXmBoZIgrqtq7X+hsJKJS3ctveWo5F4UFboWojMYWm9PA8vd/FtqvWenxdXepNLa356BRAL0KncBHOgc+AaR69FfiQUEiucnhtVTs2BVUjLFc3ySeFplN8JtXBh0YVBoVkAMwJFwDIpkgpjGabnr1htV+EzvqDgWqrZ3AotFeIKBmLQjBQVVjHj7oEwggotPPwt2NSUMFltUHT1WlG0wCHVYVOIRuY9XTTBgDSSCnA4YpMU7PTUqt50NV8IZfyz2IwKIhO3nIsCi6gPc06fOWTQA4+hVj+3mSOwKKQVw1ArZvjL261cH3JQ6ZgBq22ZRVoCClQ2f7J1mk4zyWhwd6H2lzG/4qm3JkUkkFCjvXVEY0mHT6FesFaWI9FAZav5b1WVytWSU8U6kAdXIvSQW8TuVcKSVE6urmR24eWFAMAUc6k0JQAbCZKLWjGt5FUne1ucO38kMR3lx4owNWgQS3Y7qGZkoxKIRLaBGlwGTOVk1HIMenpMMGndFVXDS44kwKtrrbbJhQ+BRe7SWY1csPsi5MLBgXI/5Iw8yX4NaJSyPNl3zqJyEaKS28Mp41VQhsz38U3z6kU6DibqendRHBqy2Yb7W17CLcbG+gU4FSqE7FGKGgpqVAtVbX10FkV3kREIRtUNRlqhSZmC+3qTzuXAm3bnaMbXPXYFOzTKIVd0NmHRnQKzQBcFMsNf29GPrWl9bgZ9U2hDtqGal8hha2MuXlAKFjHL7YCk4L94Mh+z02iJ8beKGQBIEpeD0CWUyhUXKwKo3OEFDQRYLSzKDSFRbv6p1NdFKAS8rEoxLCl2BZr2YcYdApwKom+Lx8aq1gU6ly6FZ6HszuHVcV2LqUO8pknHNr+orDa9sboJgcK9iUelYL98iLG2vG8C+xDGzoFM6gSf10VMGNR4KhRh2OpXoyKozfwq4iLrHPaqc2+qic59iPBLxaDgl+noRrp92CnqeqHQ8EsTsGMQcFH8CVrcSg0ZV1pMlzlVhBFX412GgVv+750iWulhaFTMDQKhqDRgLUipYjlTsFZkQx1/CakYd1gxMVMot24O/SGfFO4824wDNG2l17gdqIO4+ycLqCQjnF2zhJapJ0WLPruTOeFO+wKddgU6ApzMq3lXFCH+4jMp/6zkaj6vi9ke7/NC+aVDW7CoNDcw2nLG8dSFV6pYFKAO7SR1nAmkwbEOfM2z80kkQLlzymaReHcqVpPbSIFqBjhPUh/UqCTanWczykluJZ2JgW7k4SjKiz/AhPtUNSfwfMvSL/B4EljvY1IMGJSoOr9m5jsrl58Rl8Idi4FvZBCLRYFmur+iqIpGo9CMgC+0m7zBEuczWPmhkcB7tDNdLndZAw2QtOv2bkU6CgBhSw8CjST0GnlMjQmhZ5utltpIgq58AASngMnZyQmBTrCPJpWWVfnDXAelZsEF6r97+Xh6yImBfglsTZqHI1NwU3cy+NGRiHM5uyhonow83rz/vs1qOl5oK0CTsVIk+jRs18pCG9R0nAp2A9OyTQ+BckeT+6uAGz+wiuih8E+YjBcWgw0XBz1G0C1JkXc892PFHR8K8lkwKZgm1DRNAmFLu8/XJd0BN5//mUG3JpizaK3631QoFrbmmhtFqj169HM64mCqKdYi3en6sq3+Gl8Cjpf0JBLRkFqJAxnJKGdE1VfJe7+7CseKaUB1ILs9l660I+RMIIbRT0BBXp1H86uXqPCkh38LLXYUWGOMrJ2TiRNQIE2A5O21y70Y1QYncJ1+LXRJBRSGsrJKdB0hXcr/IyzW717cXAgnRfiXFqqstppIgrNvXree6Iw6fZESELTwEHV5UQU6HZaCoW+JUfO03LMtkxBpiBTkCnIFGQKMgWZgkxBpiBTkCn0M4X/CTAAQMqViQc6GXMAAAAASUVORK5CYII=);cursor:pointer}.BMap_Drawing .BMapDraw_last{border-right:none}.BMap_Drawing .BMapDraw_hander{background-position:0 0}.BMap_Drawing .BMapDraw_hander_hover{background-position:0 -52px}.BMap_Drawing .BMapDraw_marker{background-position:-65px 0}.BMap_Drawing .BMapDraw_marker_hover{background-position:-65px -52px}.BMap_Drawing .BMapDraw_circle{background-position:-130px 0}.BMap_Drawing .BMapDraw_circle_hover{background-position:-130px -52px}.BMap_Drawing .BMapDraw_polyline{background-position:-195px 0}.BMap_Drawing .BMapDraw_polyline_hover{background-position:-195px -52px}.BMap_Drawing .BMapDraw_polygon{background-position:-260px 0}.BMap_Drawing .BMapDraw_polygon_hover{background-position:-260px -52px}.BMap_Drawing .BMapDraw_rectangle{background-position:-325px 0}.BMap_Drawing .BMapDraw_rectangle_hover{background-position:-325px -52px}.BMapDraw_tip{position:absolute;top:50px;display:none;overflow:hidden;width:162px;height:40px;border:1px solid #ccc;line-height:20px;border-radius:4px;background-color:#fff;text-align:center;font-size:12px}.BMapDraw_tip_text{font-size:12px;color:#999}.BMapDraw_tip.polyline{right:135px}.BMapDraw_tip.rectangle{right:65px}.BMapDraw_tip.polygon{right:5px}.BMapDraw_tip.circle{right:-45px}.BMapDraw_tip p{margin:0}.screenshot{position:absolute;background:#fff;border:1px solid #e9e9e9;border-radius:2px;color:#333;padding:0 4px;font-size:12px}.screenshot .unit{display:block;color:#999;width:12px;float:right}.screenshot .circlShot{width:50px;text-align:center;line-height:30px;height:30px}.screenshot #screenshotNum{display:inline-block;height:30px;text-align:center;cursor:text}.screenshot #circleInput{display:none;border:none;width:34px;height:30px;margin-top:-1px;outline:none;-moz-user-select:none;user-select:none;-moz-appearance:listitem;appearance:listitem;-webkit-user-select:none;-webkit-appearance:listitem;padding:0;font-family:inherit;font-size:inherit;line-height:inherit;color:inherit}.screenshot #circleInput:focus{outline:none;border:none}.screenshot .rectWH{width:120px;height:30px;line-height:30px;padding:2px 0}.screenshot .rectWH span{display:inline-block;width:10px;text-align:center}.screenshot .rectWH .multiple{color:#999}.screenshot .rectWH .wh{display:inline-block;width:45px}.screenshot .rectWH .wh #rectHeight,.screenshot .rectWH .wh #rectWidth{width:33px;cursor:text}.screenshot .rectWH .wh #rectHeightInput,.screenshot .rectWH .wh #rectWidthInput{display:none;border:none;width:34px;height:30px;margin-top:-1px;outline:none;-moz-user-select:none;user-select:none;-moz-appearance:listitem;appearance:listitem;-webkit-user-select:none;-webkit-appearance:listitem;padding:0;font-family:inherit;font-size:inherit;line-height:inherit;color:inherit}.screenshot .rectWH .wh #rectHeightInput:focus,.screenshot .rectWH .wh #rectWidthInput:focus{outline:none;border:none;padding:0}.screenshot:focus-within,.screenshot:hover{border:1px solid #5e87db}.operateWindow{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none}.operateWindow>.containerbox{width:270px;height:35px}.operateWindow>div>span{display:block;float:left;margin:2px 0;text-align:center;cursor:pointer}.operateWindow div #confirmOperate{margin-left:15px;background:#fff url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAAAXNSR0IArs4c6QAAAwxJREFUaAXtmE1oE0EUx2fWNCkpfkA9iXeN0tbqYVNUFISCJ1GoiPhxELWtx3oQRBA8iR48iEkPJYIeilK8qChFxJOJSlNsxYhFFKviIVQqqTUm+5wpmTIpm+xHNpspfXt5szOzb/6//+zO7iwheKAD6AA6gA6gA+gAOoAOoAPoADqADqADK88BupyQhzI7V+d/zd4AQg4x4T81CgNn9clHThiWDfDdpL7mN5l7CgBRAcjEzxMSiPR1jX8WdVZRs+qgQrsZLNfFZrqZUNjtRKPywJVgBSSlxpQo24lKA1vBEkoTvfrESzugoo+ywCXYJ/IzK0TzSCkZXq9vPi3X2SkruWhJsF1mEBy2VY8cO0zvF83aq9UpB1xPWG6EUsD1hlUK2A9YZYD9glUC2E9Yx8CPP+4PTc/8iIQg+PWk/irLE9Ry+A3Ltdp+D8ded3R+yU5PFYqFdM6Y+xZPtp/3AJZ/G3v+6qmmyzYwFI0YE7exlCxkgHEtlmy/Xi15pTZpZhc3AnLfWt6zch6zsm1gArB1aQIAY+BWsm0Q4LLtPBKsrzMrtNsWyr7lXoiLyiLAmXhy5M5z2Bsoqzc5aTQsl2QbuInQXgb9yYSDbdPgaCaVHeGLmlk7r1MBlutw9KU1NNa5IZ//NwpAtvCLlx6U0GctYXrgRMfbnNxW+lPh+wIlaxBl2zPMLzi1Pf1dC4T2MLAxkUCObKb35f7AaCK9bZ2oVwmWa3I0wwJi8M2OtcXC34fsXt4l6soiJePNwaZuCIfn2T8oJWZW6HMFzC9m0GEG/YBBd4tkcqSUfmDnM9X2s263ePI4TsuugflA9971BLOzmWF2Kx90MnA937NWOmoCXoCGnlXZ1PsEW8iOWw3G2xsJuzC+HZFWfdhtS+OptpsMur9a30bDcm2OVulKMOx5hb7o5Dmi0auV+7j/LVMpp5t6T4DFwP36xAWiaRfFuYgqzOyiFlHwMrJNxRFCjEvsFm+hRLvdGt10xc0PNy81YS50AB1AB9ABdAAdQAfQAXQAHUAH0AF0YCU78B/Xn4einv7Y7QAAAABJRU5ErkJggg==) no-repeat top;background-size:contain}.operateWindow div #cancelOperate,.operateWindow div #confirmOperate{float:left;width:50px;height:30px;box-shadow:0 2px 4px 0 rgba(0,0,0,.3);border-radius:2px}.operateWindow div #cancelOperate{margin-left:8px;background:#fff url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAAAXNSR0IArs4c6QAAAupJREFUaAXtmTtvFDEQx2eWQ4ICISRaegq6hI4CCSEkQgkRgi6QkhRwCOiOGlIAouIhUhGSAqVFQgr1HWW+AvcBIo7myDB25GjX571drx8NY+m0a589M7//+rVeAEmigCggCogCooAoIAqIAqKAKCAKiAKiwP+nAIYi051LZ2D65w0Q3ODfGI7hU/wy2gm1a9rTzYUHgPgYgE6y/U9w4dQzHOxOzf++18K3wUx9BXsAdzmY0/zfefhLX+nW4r2Zeh0KaHnhJTd7DUTn2P5Zvu/D3n6/g6mjJuHA6slWE3KA70Khuf06C/moalrl0PY3W2VOSQzgscN+ELSGJXrosMs9m345y1sWhgPzmGVf5PDXCVp34zpYgAkcL547fLUuCgbWExTiagxoDevsxppnAj1cws/DvdZ0jorBs7Sxqccsj13Ou2wSz7SruD36YOrb11awm6Ndu51v3hWcr42j+l2hc8GqQKMCK4O+0DlhkwD7QOeGTQbcDhq+8dx+TdV1pMMJKsKYtW1H79JlBw3du1y1fJ8MVjlJCqwceEInhc0C7AGdHFbFErzxUEaakl5/kcdsfeJ1mt5igjFru8wCrGfj+glKxcTbUOzr7m9HGDmffgyrV7z67aKN07gjsxv45pM+4YZ1NtoLhw90MuAG2AkU+IIDzQ6dBLgRVr31bI2eMPT93NDRx3Ar2NJsTMuLK3BA7xncFUv0Me1y4jMkKnV9YU3jnNDRgHlJWefjF/exjDqpwOI6bg9/GEj7mgs6CnAorIHPAR0MzN14jdfZVyboyhXhN2/mluY92Up9zjRC94qruDn8brdrmw+fpXmH5HTWAVbZ4dn749zZe0qOo1tnBM7CcGD1RcBOHWGNmQboWX+mYYtrOLD6/FFOgbDGVC10QVV/pkHLa/gYHlzuHX7+0F8ExnyUOgg9Si3HTrcvXgHVjZFO8Eq9gVs/N8r/y70oIAqIAqKAKCAKiAKigCggCogCooAo0EGBf6iFZapSQC/BAAAAAElFTkSuQmCC) no-repeat top;background-size:contain}.operateWindow div #warnOperate{float:left;width:200px;height:30px;margin-left:4px;line-height:30px;background:#fffbcc;border:1px solid #e1e1e1;border-radius:2px;font-family:PingFangSC-Regular;font-size:14px;color:#703a04;letter-spacing:0;cursor:default}.operateLeft p span{float:right}");var I={STATUS_FREE:"free",STATUS_DRAWING:"drawing",STATUS_EDITER:"editer",STATUS_MOVE:"move"},k={INIT:"operate-init",COMPLETE:"operate-ok",CANCEL:"operate-cancel",CHANGE:"operate-change",CLICK:"mouse-click",RIGHTCLICK:"right-click",MOVE:"mouse-move"},et={AREA_END:"measure-area-end",LENGTH_END:"measure-length-end"},X={DRAW_ON_MAP:"draw-on-map",EDIT_ON_MAP:"edit-on-map",SELECT_ON_MAP:"select-on-map",MOVE_ON_MAP:"move-on-map",DRAW_NO_MAP:"draw-no-map",SELECT_NO_MAP:"select-no-map",DRAW_ON_MAP_CANCEL:"draw-on-map-cancel",EDIT_ON_MAP_CANCEL:"edit-on-map-cancel",SELECT_ON_MAP_CANCEL:"select-on-map-cancel",MOVE_ON_MAP_CANCEL:"move-on-map-cancel"},B={DRAWING_POINT:"point",DRAWING_MARKER:"marker",DRAWING_POLYLINE:"polyline",DRAWING_POLYGON:"polygon",DRAWING_CIRCLE:"circle",DRAWING_RECTANGLE:"rectangle"},Ut=`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAAXNSR0IArs4c6Q + AAAd9JREFUOBGtVc8rRFEUPufOvELMguTHwkbKjxRlo9gqNpjyFyhTit3I8i1ldpQa5S9QmA1lS9koSn6UZmMxSCyGkPlx3O+9mTe8Zl4z + w7eZ7rnn++aee893HlMRzEXFeLh6m2LJTpHwEJG022mcIJZTYbXX2lu/txnilJvO7sDkYnJaC0REqNO993PNTHEiDsfWAru/4vmFaYo6e3 + 5dEZIwYh1tPhobNmig20/NjcpKe3rJ0vlNmg5PUnR3n7FiTBwZbGpYNk3OIuCccHIhuQoxv49lNljD4yMG6VMUhT49HRynaGvnU9IZ0Wkc + ia0HlhxBlCkiOxAz5+u4v8tXVMgdvLjNkLnxbosyB1E+4wEeL5PXuLPQTC1NjBpunud6/yhF0e0PVBNv6Qv0KLwmxHBnKLNSgAMuNKClrN + bQKniAUnfm9SfggAtAS9l9RtZrehG99tAJFnTP6n6wmzbfGl7EUnsFrrTbDVYqs4q4FtR20kDTVosClxMK3oQQHFAtHK7WUjA6hGAnOKBS + gAMuAC2FqYGmhDdhp0oBDrjQgJayRxBbAwHehJ3KBXLBsfM5DC3H/v81HHIdSYQRpMcX6ekRhjcPjr/KGV+6Unt8xXJlOSfMl/lvAzYviN + +/fAK+AW5jAVefzjWGAAAAAElFTkSuQmCC`,Yt=new BMapGL.Icon("//mapopen.bj.bcebos.com/cms/images/mapctrls.gif",new BMapGL.Size(12,12),{imageSize:new BMapGL.Size(82,174),imageOffset:new BMapGL.Size(0,14)}),Jt=new BMapGL.Icon("//mapopen.bj.bcebos.com/cms/images/mapctrls.png",new BMapGL.Size(12,12),{imageSize:new BMapGL.Size(37,442),imageOffset:new BMapGL.Size(25,312)}),Hn=new BMapGL.Icon("//maponline0.bdimg.com/sty/map_icons2x/MapRes/shenghui_1.png",new BMapGL.Size(10,10),{offset:new BMapGL.Size(5,5)}),Zn=new BMapGL.Icon("//bj.bcebos.com/v1/mapopen-pub-jsapigl/bmap-draw/static/edit1.png",new BMapGL.Size(10,10),{offset:new BMapGL.Size(5,5)}),tt=new BMapGL.Icon("//bj.bcebos.com/v1/mapopen-pub-jsapigl/bmap-draw/static/edit2.png",new BMapGL.Size(10,10),{offset:new BMapGL.Size(5,5)}),xe={borderRadius:"2px",background:"#FFFBCC",border:"1px solid #E1E1E1",color:"#703A04",fontSize:"12px",letterSpacing:"0",padding:"5px"},qn={operate:null,isOpen:!1,isOnMap:!0,isSeries:!0,skipEditing:!1,isSelectDraw:!1,enableCalculate:!1,enableSnap:!0,snapDistance:10,drawCursor:"crosshair",keyCode:87,baseOpts:{icon:Hn,node:Zn,nodeT:tt,fillColor:"#1990FF",fillOpacity:.2,strokeColor:"#877efb",strokeWeight:3,strokeOpacity:1,enableDragging:!0},labelOptions:xe,matchOverlay:{type:"Circle",radius:2,icon:tt,strokeColor:"#fff",strokeStyle:"solid",strokeWeight:2},centerIcon:new BMapGL.Icon(`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAAXNSR0IArs4c6Q + AAAs1JREFUWAnNmb9v01AQx989SzVI8dIBJNZ27Mb/QRpExMiOKAW1Mw3MRVCB2BlRECF/CBtjuwbBwGJL1JXs474vtuU4Tkho4tyTGr9f + fvfxvV93VzL/mfYPLndSumqT4buG6Y4MI3+MpyQayc/IEI/Y0DfLW8Ov725cuKYlf2iZ/p3j8FZylT4hQx1m3lvmXSL6zoYH3pZ9PzgNfi + 367kKA3R634t/REXF6zMa0Fh28rp8IjJjsqb/det3vUVTXp1z3T8DOs/B+kvIHw3y7/OK180Q/PUuPB2+DL/PGsrMaZQrp3tPwJEn488rh + IFQ+GGNDBmTN4qht6D7nm3ESfpRBurNeXGk9Ud/3gkf9N/SnOu6UBvE1jcKBSBQBmXWanAJsH0YvGtNcWV0C6WSX6yQ/McVuQ2DNycFW6d + dQkdjz6EF54xQg46MkPMfibYimXozsbn872M2PoGKKcc5tHA7IoiDHkuE7DeKGSOP04rqHcL1Klq8VqMj6dgc3jtMgx+mBFjh8DlhwpSI/ + BiTaR0FTwn0PHnJWiYnPNcHlLNb4uxYmU16h7Qk26+w5bWQZD9hsZmzqRBRDGJsks4JVMgIwN9M1ArIAykRrRHNMwoY1+EMtoLBhDcID05 + pGMsWsF1DYLPxWrepzPjWcaq2AYLPw+OFUa4MEE9jG1ox4/NoAEYUAkwNEOAJGohZIsICpAITlinCEFkCw5PEbp0GAIVZixGHZOKRzmoQl + SwUgvCjESsSG3eDVJ26nMOQeHRgLQBScP0r0EvmNJJFd9onBIOtxMiH80D4MPzUeXZD4zPAseCjHy8QMTmgQqOiAQI5k+pPoayxlwaMqnO + OZJXasSRenOVlfKES0JdM6PGu9qoObC5iDqw1g5oBYtIiVGLK9VRzmbgwZC2NWN0Qus/yc2iTlxmoeIRIXhRBHX5bAXrV9XlmmcH1B9DrB + Tf0b4i99lUEMOuku/wAAAABJRU5ErkJggg==`,new BMapGL.Size(20,20)),circleMoveIcon:new BMapGL.Icon(`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAABQCAYAAACOEfKtAAAAAXNSR0IArs + 4c6QAABcdJREFUeAHtm0FoHFUYx7+ZbDfJJiZUqcEgBU3BqtGKRdGLHsSTSGxL8agUT230YtGTDQl6EKt4CD1JqPQkastSPImIvVSUQINR + K1jrQVNSRRGz3WST3fH/f5k3THY3mmzejLub74Mv8/bNzJv3fnwz773v+yKiogSUgBJQAkpACSgBJaAElIASUAJKQAkoASWgBJSAElACSk + AJKIH2J+A1OsQgCIZw7wh0P3Qwpr0oN7MsoHNzMZ1GOe953pVGOr0pgIB2Kx4yCj0AHW7kgU18zyz6dg46CZjXN9rPDQEEOFrVy9DjUGNh + haIEX8+WvEuXy/LbnxX5468AWpHF0kYf/f9c190psrPPl5v7Pdm105cH9nbIQ8PZoKdbLAta6Eno2wDJ8r+KvWndiwDvIE6egg7wooszy/ + LJhZJ8e6UslQprWl98X+TeoQ556rGsPLpvhx3QPApHAfGsrah3XBcgwPHcCegY1Pv+pxU5nV+Sy1fL9dppm7q9d3TI8yOdcvedGY4pgI5D + JwCS5RqpCxDwunHl+9DDlUCCqbOL3vkvmvzdrBna1iqefjwrRw52Bb5nXu0P0dpzgFisbrUGYGh5H+DCw4ViELw5dcOb+aG9ra4aiv2976 + 4OefVIDt9Hj5wI8dlqS8TbXyN8bQ28V94pbFt4pELDIQMaEplAyWaNrAEYThhjfG1peb/Mt8kssWbIm/tBBmRBJrhzLGQUNRIBxAkuTzjb + evzmbdfXNiITK5AFmZAN9FTIylwRAcQvrvMGONtutwnDkPiPP2RCNmQEJSsjBiCIcofBRbJZqpgzjv88cn8GC1azNHDW8qEns7L7trgNOG + u6bkNcxoVyPGQm9ukv4kQvF8lJrfN6cx5mtG6nEG/p9+X10VxqEMmGjMgKOsqCBfgMf3CHkZQsw/p3ZNxCLOPL3n9TuhBjjOgPEB+mSK/K + MPe23J4lJdPfLcvfhcApxM++XJZyOV2IZERWZEZ2tEC6pOSrb0peknvbhRsir00WnEL8ea4ib50upgqRjMiKzCAjBEh/nlxKYbdx9deKc4 + gXZ1ZShxhb4u0nQDpD5Xe4pNKQdoBI910ogxFA+vPSklaHGGMVBxhRTYVjK0Ok4zgUA9CYnvE32OqUjoSIfaZ5ml3i3D7Al6Jx4TfRLni5 + xJk4lpPObOPt1bszxipgb6/xIrq50xa40eG87Ioem/+8JFt1YAzu8uXAE6vEuE6cOrcoS46XtzFW10iNESoTI4hGkkKB8CaO9cie3R3maR + 99uiRnzkdbpYZ6QHhvvJTDWHwhvHfPFOXCtNm/NtTeejcxnhLKXASQAZa0pJXhkVGMlQHIuKjQ+5qGtDo8MmIkL5Rpml2ePx6+LxswOpWk + tAM8MmIYNOSU9+HjZ0R+FoPzGNpLSjJo2vU3r6/XS+WbF2dCRmRFZmRnbY4ReRMXjV/ssvzgPRmnEwb7xshZ0hNGNQPGjkMxzCzASVQuMK + jMuGgS0tezOnO5mG1t/xAtS3S2tc+xR7IJA+/MWCCzVX8gTJG5IExnMEFlHl0L41ou4bF/SS5V6o2fAfdQTobMonwQgW+LXtYfoQPvfbzo + PC6SgTd/xfGSLIssjJJxENtxJXfk5+KFQ2bRP4+n7AFAWmHkkZaw4ijqAkbkXS9rXMNj59OCRxZkQjZQ5ssYeOyD/QayTIhMpBlnOgMj8l + vdl5pGW/wPGZBFmOIxHjKKRhXtSWwNXmXWaWoHIGwktaMGIEECInaqmlzUUHIRAVJCSzyB4hhU09s2k95GgFYAUhMsLYw6x7qvcPV1gMgl + Tk2KL6NTDEYxntIqKb5d2Ehw92JTfPmdox8g3J5x6JxhuSZ2k+LLFq0AJFNAmMXAQPywrW+T4yzGkUySeT1AgDmEesaUGRZlZM8qrbWZhR + ZGJ7LVLf2bQzMPVPumBJSAElACSkAJKAEloASUgBJQAkpACSgBJaAElIASUAJKQAkoAVcE/gG4Wba8Vno8+QAAAABJRU5ErkJggg==`,new BMapGL.Size(40,20),{imageOffset:new BMapGL.Size(0,10)}),moveIcon:new BMapGL.Icon(Ut,new BMapGL.Size(10,10)),limitPoint:-1},$n={tips:"测距",unit:"kilometers",startLabel:"单击确定起点",followLabel:"单击确定地点,双击结束测量",skipEditing:!0,enableCalculate:!0,turnIcon:null,closeIcon:null,isSeries:!1,baseOpts:{strokeColor:"#f00",strokeWeight:2,strokeOpacity:.8,fillOpacity:.2},labelOptions:xe},ei={unit:"kilometers",startLabel:"单击确定起点",followLabel:"单击确定地点,双击结束测量",turnIcon:null,closeIcon:null,isSeries:!1,baseOpts:{strokeColor:"#f00",strokeWeight:2,strokeOpacity:1},labelOptions:xe},Xt={icon:tt,nodeT:null,node:null,fillColor:"#fff",fillOpacity:.1,strokeColor:"#00f",strokeWeight:2,strokeOpacity:.6,strokeStyle:"dashed"},ti={strokeColor:"#fff",strokeStyle:"solid",strokeWeight:"2"},ni=["marker","polyline","polygon","circle","rectangle"],m={grid:"$BAIDU$",guid:function(){return window[m.grid]||(window[m.grid]={}),window[m.grid]._counter=window[m.grid]._counter||1,window[m.grid]._instances=window[m.grid]._instances||{},"TANGRAM__"+(window[m.grid]._counter++).toString(36)},isString:function(r){return Object.prototype.toString.call(r)==="[object String]"},isFunction:function(r){return Object.prototype.toString.call(r)==="[object Function]"},isArray:function(r){return Array.isArray?Array.isArray(r):Object.prototype.toString.call(r)==="[object Array]"},isObject:function(r){return Object.prototype.toString.call(r)==="[object Object]"},copyOptionsToNew:function(r,t,n){for(var e in t)if(r.hasOwnProperty(e)){if(!t[e]||t[e]instanceof Array||t[e]instanceof BMapGL.Icon||t[e]instanceof BMapGL.Symbol||t[e].ignore){n[e]=t[e];continue}if(t[e]!==null&&_(t[e])==="object"&&Object.keys(t[e]).length===0)continue;t[e]!==null&&_(t[e])==="object"&&Object.keys(t[e]).length>0?(n[e]={},this.copyOptionsToNew(r[e],t[e],n[e])):n[e]=t[e]}},copyNotExitOptions:function(r,t){var n=this,e=function(s){if(r.hasOwnProperty(s))["baseOpts","labelOptions","matchOverlay"].findIndex(function(o){return s===o})!==-1&&n.copyNotExitOptions(r[s],t[s]);else{if(!t[s]||t[s]instanceof Array||t[s]instanceof BMapGL.Icon||t[s]instanceof BMapGL.Symbol||t[s].ignore)return r[s]=t[s],"continue";t[s]!==null&&_(t[s])==="object"?(r[s]={},n.copyNotExitOptions(r[s],t[s])):r[s]=t[s]}};for(var i in t)e(i)},copyOptions:function(r,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[];for(var e in t)if(r&&r.hasOwnProperty(e)){if(t[e]instanceof Array||t[e]instanceof BMapGL.Icon||t[e]instanceof BMapGL.Symbol||this.shotObject(t[e],n)){r[e]=t[e];continue}t[e]!==null&&_(t[e])==="object"?this.copyOptions(r[e],t[e],n):r[e]=t[e]}},shotObject:function(r,t){var n=!1;return t.forEach(function(e){if(r instanceof e)return n=!0,!0}),n},deepCopy:function(r){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:2,n=arguments.length>2?arguments[2]:void 0,e=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,i=arguments.length>4?arguments[4]:void 0;for(var s in n?e++:(n={},e=1),r)r[s]instanceof Array||r[s]instanceof BMapGL.Icon||r[s]instanceof BMapGL.Symbol||this.shotObject(r[s],i)?n[s]=r[s]:t>=e&&m.isObject(r[s])&&Object.keys(r[s]).length>0?(n[s]={},this.deepCopy(r[s],t,n[s],e,i)):n[s]=r[s]},getTarget:function(r){var t=window.event||r;return t.target||t.srcElement},getEvent:function(r){return window.event||r},preventDefault:function(r){var t=m.getEvent(r);t.preventDefault?t.preventDefault():t.returnValue=!1},stopBubble:function(r){var t=m.getEvent(r);t.stopPropagation?t.stopPropagation():t.cancelBubble=!0},on:function(r,t,n,e){t=t.replace(/^on/i,""),r=m.getdom(r);var i=n,s=t;return t=t.toLowerCase(),r.addEventListener?r.addEventListener(s,i,!1):r.attachEvent&&r.attachEvent("on"+s,i),r},un:function(r,t,n,e){r=m.getdom(r);for(var i,s,o,a=e.length,l=!n;a--;)(i=e[a])[1]!==t||i[0]!==r||!l&&i[2]!==n||(s=i[4],o=i[3],r.removeEventListener?r.removeEventListener(s,o,!1):r.detachEvent&&r.detachEvent("on"+s,o),e.splice(a,1));return r},getdom:function(r){return m.isString(r)?document.getElementById(r):r},addClass:function(r,t){r=m.getdom(r);for(var n=t.split(/\s+/),e=r.className,i=" "+e+" ",s=n.length,o=0;s>o;o++)0>i.indexOf(" "+n[o]+" ")&&(e+=(e?" ":"")+n[o]);return r.className=e,r},mc2ll:function(r,t){var n=t.mercatorToLnglat(r.lng,r.lat);return new BMapGL.Point(n[0],n[1])},ll2mc:function(r,t){var n=t.lnglatToMercator(r.lng,r.lat);return new BMapGL.Point(n[0],n[1])},getPointByDistance:function(r,t,n){var e,i,s,o=t/6378800,a=Math.PI/180*r.lat,l=Math.PI/180*r.lng;switch(n){case"North":case"north":case"N":case"n":e=0,i=r.lng;break;case"West":case"west":case"W":case"w":e=90,s=r.lat;break;case"South":case"south":case"S":case"s":e=180,i=r.lng;break;case"East":case"east":case"E":case"e":e=270,s=r.lat;break;default:e=~~n}var u=Math.PI/180*e,c=Math.asin(Math.sin(a)*Math.cos(o)+Math.cos(a)*Math.sin(o)*Math.cos(u)),h=new BMapGL.Point(i||((l-Math.atan2(Math.sin(u)*Math.sin(o)*Math.cos(a),Math.cos(o)-Math.sin(a)*Math.sin(c))+Math.PI)%(2*Math.PI)-Math.PI)*(180/Math.PI),s||c*(180/Math.PI));return h.lng=parseFloat(h.lng.toFixed(6)),h.lat=parseFloat(h.lat.toFixed(6)),h},throttle:function(r,t,n){if(typeof r!="function")return Function();var e=null,i=null;return function(s){var o=s,a=+new Date;!i&&(i=a),n&&a-i>n?(r(o),i=a):(clearTimeout(e),e=setTimeout(function(){r(o),i=null},t))}}},nt=function(r){for(var t=arguments.length,n=Array(t>1?t-1:0),e=1;t>e;e++)n[e-1]=arguments[e];var i=function(o){S(l,o);var a=P(l);function l(){var u;L(this,l);for(var c=arguments.length,h=Array(c),p=0;c>p;p++)h[p]=arguments[p];return u=a.call.apply(a,[this].concat(h)),n.forEach(function(f){s(Le(u),new f)}),u}return x(l)}(r),s=function(o,a){Object.getOwnPropertyNames(a).concat(Object.getOwnPropertySymbols(a)).forEach(function(l){l.match(/^(?:constructor|prototype|arguments|caller|name|bind|call|apply|toString|length)$/)||Object.defineProperty(o,l,Object.getOwnPropertyDescriptor(a,l))})};return n.forEach(function(o){s(i.prototype,o.prototype),s(i,o)}),i},A=x(function r(t,n){L(this,r),this.type=t,this.returnValue=!0,this.target=n||null,this.currentTarget=null}),j=function(){function r(){L(this,r),this._listeners={}}return x(r,[{key:"addEventListener",value:function(t,n,e){if(m.isFunction(n)){!this._listeners&&(this._listeners={});var i,s=this._listeners;if(typeof e=="string"&&e){if(/[^\w\-]/.test(e))throw"nonstandard key:"+e;n.hashCode=e,i=e}t.indexOf("on")!==0&&(t="on"+t),_(s[t])!=="object"&&(s[t]={}),i=i||m.guid(),n.hashCode=i,s[t][i]=n}}},{key:"removeEventListener",value:function(t,n){if(m.isFunction(n))n=n.hashCode;else if(!m.isString(n))return;!this._listeners&&(this._listeners={}),t.indexOf("on")!==0&&(t="on"+t);var e=this._listeners;e[t]&&e[t][n]&&delete e[t][n]}},{key:"dispatchEvent",value:function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};for(var e in!this._listeners&&(this._listeners={}),m.isString(t)&&(t=new A(t)),n)t[e]=n[e];var i=this._listeners,s=t.type;if(s.indexOf("on")!==0&&(s="on"+s),m.isFunction(this[s])&&this[s].apply(this,arguments),_(i[s])==="object")for(var o in i[s])i[s][o].apply(this,arguments);return t.returnValue}},{key:"dispose",value:function(){for(var t in this._listeners)for(var n in this._listeners[t])delete this._listeners[t][n]}},{key:"defineProperty",value:function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:2,e=arguments.length>2?arguments[2]:void 0,i=arguments.length>3?arguments[3]:void 0;for(var s in e===void 0?(e=this,i=1):i++,t)e&&e.hasOwnProperty(s)&&(t[s]instanceof Array||t[s]instanceof BMapGL.Icon||t[s]instanceof BMapGL.Symbol?e[s]=t[s]:n>i&&m.isObject(t[s])&&Object.keys(t[s]).length>0?this.defineProperty(t[s],n,e[s],i):e[s]=t[s])}},{key:"setSnapPointType",value:function(t){var n,e;((n=t.matchOverlay)===null||n===void 0?void 0:n.type)==="Marker"?this.matchOverlay=new BMapGL.Marker(new BMapGL.Point(116.395,39.935),t.matchOverlay):((e=t.matchOverlay)===null||e===void 0?void 0:e.type)==="Circle"?(!t.matchOverlay.radius||(this.matchOverlayRadius=t.matchOverlay.radius),this.matchOverlay=new BMapGL.Circle(new BMapGL.Point(116.395,39.935),this.matchOverlayRadius,t.matchOverlay)):this.matchOverlay=new BMapGL.Circle(new BMapGL.Point(116.395,39.935),this.matchOverlayRadius,ti)}},{key:"setSceneStatus",value:function(t){this.scene.currentStatus=t}}]),r}(),it=function(r){S(n,r);var t=P(n);function n(e){var i;return L(this,n),(i=t.call(this)).delayLimit=100,i.minLimit=200,i.overlayData=[],i.click=void 0,i.mousemove=void 0,i.rightclick=void 0,i.map=e,i.open(),i}return x(n,[{key:"open",value:function(){this.openClick(),this.openMouse(),this.openRightClick()}},{key:"linkOverlayData",value:function(e){this.overlayData=e}},{key:"clickAction",value:function(e){this.dispatchEvent(new A(k.CLICK,e))}},{key:"rightclickAction",value:function(e){this.dispatchEvent(new A(k.RIGHTCLICK,e))}},{key:"mouseAction",value:function(e){e&&this.dispatchEvent(new A(k.MOVE,e))}},{key:"openClick",value:function(){this.click||this.map.addEventListener("click",this.click=this.clickAction.bind(this))}},{key:"openRightClick",value:function(){this.rightclick||this.map.addEventListener("rightclick",this.rightclick=this.rightclickAction.bind(this))}},{key:"openMouse",value:function(){this.mousemove||(this.mousemove=m.throttle(this.mouseAction.bind(this),this.delayLimit,this.minLimit).bind(this),this.map.addEventListener("mousemove",this.mousemove))}},{key:"close",value:function(){this.closeClick(),this.closeMouse()}},{key:"closeClick",value:function(){this.click&&(this.map.removeEventListener("click",this.click),this.click=null)}},{key:"closeMouse",value:function(){this.mousemove&&(this.map.removeEventListener("mousemove",this.mousemove),this.mousemove=null)}},{key:"intersectOverlays",value:function(e){for(var i=[],s=0;this.overlayData.length>s;s++){var o=this.overlayData[s];if(""+o!="Marker"){var a=(""+o!="Polyline"?o._getInPnpoly(e.point):o._getProximity(e.point)).dist;a>=0&&o._config.mouseOverTolerance>a&&i.push(o)}else o._getInPnBox(e.pixel)&&i.push(o)}return i.length>0?i:null}}]),n}(j),D=63710088e-1,rt={centimeters:100*D,centimetres:100*D,degrees:D/111325,feet:3.28084*D,inches:39.37*D,kilometers:D/1e3,kilometres:D/1e3,meters:D,metres:D,miles:D/1609.344,millimeters:1e3*D,millimetres:1e3*D,nauticalmiles:D/1852,radians:1,yards:1.0936*D},st={acres:247105e-9,centimeters:1e4,centimetres:1e4,feet:10.763910417,hectares:1e-4,inches:1550.003100006,kilometers:1e-6,kilometres:1e-6,meters:1,metres:1,miles:386e-9,millimeters:1e6,millimetres:1e6,yards:1.195990046};function U(r,t,n){n===void 0&&(n={});var e={type:"Feature"};return(n.id===0||n.id)&&(e.id=n.id),n.bbox&&(e.bbox=n.bbox),e.properties=t||{},e.geometry=r,e}function G(r,t,n){if(n===void 0&&(n={}),!r)throw Error("coordinates is required");if(!Array.isArray(r))throw Error("coordinates must be an Array");if(2>r.length)throw Error("coordinates must be at least 2 numbers long");if(!je(r[0])||!je(r[1]))throw Error("coordinates must contain numbers");return U({type:"Point",coordinates:r},t,n)}function ge(r,t,n){n===void 0&&(n={});for(var e=0,i=r;i.length>e;e++){var s=i[e];if(4>s.length)throw Error("Each LinearRing of a Polygon must have 4 or more Positions.");for(var o=0;s[s.length-1].length>o;o++)if(s[s.length-1][o]!==s[0][o])throw Error("First and last Position are not equivalent.")}return U({type:"Polygon",coordinates:r},t,n)}function R(r,t,n){if(n===void 0&&(n={}),2>r.length)throw Error("coordinates must be an array of two or more positions");return U({type:"LineString",coordinates:r},t,n)}function V(r,t){t===void 0&&(t={});var n={type:"FeatureCollection"};return t.id&&(n.id=t.id),t.bbox&&(n.bbox=t.bbox),n.features=r,n}function Fe(r,t,n){return n===void 0&&(n={}),U({type:"MultiLineString",coordinates:r},t,n)}function Vt(r,t,n){return n===void 0&&(n={}),U({type:"MultiPoint",coordinates:r},t,n)}function Oe(r,t,n){return n===void 0&&(n={}),U({type:"MultiPolygon",coordinates:r},t,n)}function ot(r,t){t===void 0&&(t="kilometers");var n=rt[t];if(!n)throw Error(t+" units is invalid");return r*n}function We(r,t){t===void 0&&(t="kilometers");var n=rt[t];if(!n)throw Error(t+" units is invalid");return r/n}function Qt(r,t){return me(We(r,t))}function me(r){return 180*(r%(2*Math.PI))/Math.PI}function T(r){return r%360*Math.PI/180}function ze(r,t,n){if(t===void 0&&(t="kilometers"),n===void 0&&(n="kilometers"),r<0)throw Error("length must be a positive number");return ot(We(r,t),n)}function je(r){return!isNaN(r)&&r!==null&&!Array.isArray(r)}function Ae(r){return!!r&&r.constructor===Object}var ii=Object.freeze({__proto__:null,earthRadius:D,factors:rt,unitsFactors:{centimeters:100,centimetres:100,degrees:1/111325,feet:3.28084,inches:39.37,kilometers:.001,kilometres:.001,meters:1,metres:1,miles:1/1609.344,millimeters:1e3,millimetres:1e3,nauticalmiles:1/1852,radians:1/D,yards:1.0936133},areaFactors:st,feature:U,geometry:function(r,t,n){switch(r){case"Point":return G(t).geometry;case"LineString":return R(t).geometry;case"Polygon":return ge(t).geometry;case"MultiPoint":return Vt(t).geometry;case"MultiLineString":return Fe(t).geometry;case"MultiPolygon":return Oe(t).geometry;default:throw Error(r+" is invalid")}},point:G,points:function(r,t,n){return n===void 0&&(n={}),V(r.map(function(e){return G(e,t)}),n)},polygon:ge,polygons:function(r,t,n){return n===void 0&&(n={}),V(r.map(function(e){return ge(e,t)}),n)},lineString:R,lineStrings:function(r,t,n){return n===void 0&&(n={}),V(r.map(function(e){return R(e,t)}),n)},featureCollection:V,multiLineString:Fe,multiPoint:Vt,multiPolygon:Oe,geometryCollection:function(r,t,n){return n===void 0&&(n={}),U({type:"GeometryCollection",geometries:r},t,n)},round:function(r,t){if(t===void 0&&(t=0),t&&t<0)throw Error("precision must be a positive number");var n=Math.pow(10,t||0);return Math.round(r*n)/n},radiansToLength:ot,lengthToRadians:We,lengthToDegrees:Qt,bearingToAzimuth:function(r){var t=r%360;return 0>t&&(t+=360),t},radiansToDegrees:me,degreesToRadians:T,convertLength:ze,convertArea:function(r,t,n){if(t===void 0&&(t="meters"),n===void 0&&(n="kilometers"),r<0)throw Error("area must be a positive number");var e=st[t];if(!e)throw Error("invalid original units");var i=st[n];if(!i)throw Error("invalid final units");return r/e*i},isNumber:je,isObject:Ae,validateBBox:function(r){if(!r)throw Error("bbox is required");if(!Array.isArray(r))throw Error("bbox must be an Array");if(r.length!==4&&r.length!==6)throw Error("bbox must be an Array of 4 or 6 numbers");r.forEach(function(t){if(!je(t))throw Error("bbox must only contain numbers")})},validateId:function(r){if(!r)throw Error("id is required");if(["string","number"].indexOf(typeof r)===-1)throw Error("id must be a number or a string")}});function re(r,t,n){if(r!==null)for(var e,i,s,o,a,l,u,c,h=0,p=0,f=r.type,v=f==="FeatureCollection",g=f==="Feature",d=v?r.features.length:1,y=0;d>y;y++){a=(c=!!(u=v?r.features[y].geometry:g?r.geometry:r)&&u.type==="GeometryCollection")?u.geometries.length:1;for(var w=0;a>w;w++){var b=0,E=0;if((o=c?u.geometries[w]:u)!==null){l=o.coordinates;var O=o.type;switch(h=!n||O!=="Polygon"&&O!=="MultiPolygon"?0:1,O){case null:break;case"Point":if(t(l,p,y,b,E)===!1)return!1;p++,b++;break;case"LineString":case"MultiPoint":for(e=0;l.length>e;e++){if(t(l[e],p,y,b,E)===!1)return!1;p++,O==="MultiPoint"&&b++}O==="LineString"&&b++;break;case"Polygon":case"MultiLineString":for(e=0;l.length>e;e++){for(i=0;l[e].length-h>i;i++){if(t(l[e][i],p,y,b,E)===!1)return!1;p++}O==="MultiLineString"&&b++,O==="Polygon"&&E++}O==="Polygon"&&b++;break;case"MultiPolygon":for(e=0;l.length>e;e++){for(E=0,i=0;l[e].length>i;i++){for(s=0;l[e][i].length-h>s;s++){if(t(l[e][i][s],p,y,b,E)===!1)return!1;p++}E++}b++}break;case"GeometryCollection":for(e=0;o.geometries.length>e;e++)if(re(o.geometries[e],t,n)===!1)return!1;break;default:throw Error("Unknown Geometry Type")}}}}}function Kt(r,t){var n;switch(r.type){case"FeatureCollection":for(n=0;r.features.length>n&&t(r.features[n].properties,n)!==!1;n++);break;case"Feature":t(r.properties,0)}}function ye(r,t){if(r.type==="Feature")t(r,0);else if(r.type==="FeatureCollection")for(var n=0;r.features.length>n&&t(r.features[n],n)!==!1;n++);}function Ht(r,t,n){var e=n;return ye(r,function(i,s){e=s===0&&n===void 0?i:t(e,i,s)}),e}function at(r,t){var n,e,i,s,o,a,l,u,c,h,p=0,f=r.type==="FeatureCollection",v=r.type==="Feature",g=f?r.features.length:1;for(n=0;g>n;n++){for(u=f?r.features[n].properties:v?r.properties:{},c=f?r.features[n].bbox:v?r.bbox:void 0,h=f?r.features[n].id:v?r.id:void 0,o=(l=!!(a=f?r.features[n].geometry:v?r.geometry:r)&&a.type==="GeometryCollection")?a.geometries.length:1,i=0;o>i;i++)if((s=l?a.geometries[i]:a)!==null)switch(s.type){case"Point":case"LineString":case"MultiPoint":case"Polygon":case"MultiLineString":case"MultiPolygon":if(t(s,p,u,c,h)===!1)return!1;break;case"GeometryCollection":for(e=0;s.geometries.length>e;e++)if(t(s.geometries[e],p,u,c,h)===!1)return!1;break;default:throw Error("Unknown Geometry Type")}else if(t(null,p,u,c,h)===!1)return!1;p++}}function Zt(r,t,n){var e=n;return at(r,function(i,s,o,a,l){e=s===0&&n===void 0?i:t(e,i,s,o,a,l)}),e}function ee(r,t){at(r,function(n,e,i,s,o){var a,l=n===null?null:n.type;switch(l){case null:case"Point":case"LineString":case"Polygon":return t(U(n,i,{bbox:s,id:o}),e,0)!==!1&&void 0}switch(l){case"MultiPoint":a="Point";break;case"MultiLineString":a="LineString";break;case"MultiPolygon":a="Polygon"}for(var u=0;n.coordinates.length>u;u++)if(t(U({type:a,coordinates:n.coordinates[u]},i),e,u)===!1)return!1})}function lt(r,t){ee(r,function(n,e,i){var s=0;if(n.geometry){var o=n.geometry.type;if(o!=="Point"&&o!=="MultiPoint"){var a,l=0,u=0,c=0;return re(n,function(h,p,f,v,g){if(a===void 0||e>l||v>u||g>c)return a=h,l=e,u=v,c=g,void(s=0);var d=R([a,h],n.properties);if(t(d,e,i,g,s)===!1)return!1;s++,a=h})!==!1&&void 0}}})}function qt(r,t,n){var e=n,i=!1;return lt(r,function(s,o,a,l,u){e=i===!1&&n===void 0?s:t(e,s,o,a,l,u),i=!0}),e}function $t(r,t){if(!r)throw Error("geojson is required");ee(r,function(n,e,i){if(n.geometry!==null){var s=n.geometry.coordinates;switch(n.geometry.type){case"LineString":if(t(n,e,i,0,0)===!1)return!1;break;case"Polygon":for(var o=0;s.length>o;o++)if(t(R(s[o],n.properties),e,i,o)===!1)return!1}}})}var ri=Object.freeze({__proto__:null,coordAll:function(r){var t=[];return re(r,function(n){t.push(n)}),t},coordEach:re,coordReduce:function(r,t,n,e){var i=n;return re(r,function(s,o,a,l,u){i=o===0&&n===void 0?s:t(i,s,o,a,l,u)},e),i},featureEach:ye,featureReduce:Ht,findPoint:function(r,t){if(!Ae(t=t||{}))throw Error("options is invalid");var n,e=t.featureIndex||0,i=t.multiFeatureIndex||0,s=t.geometryIndex||0,o=t.coordIndex||0,a=t.properties;switch(r.type){case"FeatureCollection":0>e&&(e=r.features.length+e),a=a||r.features[e].properties,n=r.features[e].geometry;break;case"Feature":a=a||r.properties,n=r.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":n=r;break;default:throw Error("geojson is invalid")}if(n===null)return null;var l=n.coordinates;switch(n.type){case"Point":return G(l,a,t);case"MultiPoint":return 0>i&&(i=l.length+i),G(l[i],a,t);case"LineString":return 0>o&&(o=l.length+o),G(l[o],a,t);case"Polygon":return 0>s&&(s=l.length+s),0>o&&(o=l[s].length+o),G(l[s][o],a,t);case"MultiLineString":return 0>i&&(i=l.length+i),0>o&&(o=l[i].length+o),G(l[i][o],a,t);case"MultiPolygon":return 0>i&&(i=l.length+i),0>s&&(s=l[i].length+s),0>o&&(o=l[i][s].length-o),G(l[i][s][o],a,t)}throw Error("geojson is invalid")},findSegment:function(r,t){if(!Ae(t=t||{}))throw Error("options is invalid");var n,e=t.featureIndex||0,i=t.multiFeatureIndex||0,s=t.geometryIndex||0,o=t.segmentIndex||0,a=t.properties;switch(r.type){case"FeatureCollection":0>e&&(e=r.features.length+e),a=a||r.features[e].properties,n=r.features[e].geometry;break;case"Feature":a=a||r.properties,n=r.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":n=r;break;default:throw Error("geojson is invalid")}if(n===null)return null;var l=n.coordinates;switch(n.type){case"Point":case"MultiPoint":return null;case"LineString":return 0>o&&(o=l.length+o-1),R([l[o],l[o+1]],a,t);case"Polygon":return 0>s&&(s=l.length+s),0>o&&(o=l[s].length+o-1),R([l[s][o],l[s][o+1]],a,t);case"MultiLineString":return 0>i&&(i=l.length+i),0>o&&(o=l[i].length+o-1),R([l[i][o],l[i][o+1]],a,t);case"MultiPolygon":return 0>i&&(i=l.length+i),0>s&&(s=l[i].length+s),0>o&&(o=l[i][s].length-o-1),R([l[i][s][o],l[i][s][o+1]],a,t)}throw Error("geojson is invalid")},flattenEach:ee,flattenReduce:function(r,t,n){var e=n;return ee(r,function(i,s,o){e=s===0&&o===0&&n===void 0?i:t(e,i,s,o)}),e},geomEach:at,geomReduce:Zt,lineEach:$t,lineReduce:function(r,t,n){var e=n;return $t(r,function(i,s,o,a){e=s===0&&n===void 0?i:t(e,i,s,o,a)}),e},propEach:Kt,propReduce:function(r,t,n){var e=n;return Kt(r,function(i,s){e=s===0&&n===void 0?i:t(e,i,s)}),e},segmentEach:lt,segmentReduce:qt});function se(r){var t=[1/0,1/0,-1/0,-1/0];return re(r,function(n){t[0]>n[0]&&(t[0]=n[0]),t[1]>n[1]&&(t[1]=n[1]),n[0]>t[2]&&(t[2]=n[0]),n[1]>t[3]&&(t[3]=n[1])}),t}se.default=se;var si=Object.freeze({__proto__:null,default:se});function F(r){if(!r)throw Error("coord is required");if(!Array.isArray(r)){if(r.type==="Feature"&&r.geometry!==null&&r.geometry.type==="Point")return r.geometry.coordinates;if(r.type==="Point")return r.coordinates}if(Array.isArray(r)&&r.length>=2&&!Array.isArray(r[0])&&!Array.isArray(r[1]))return r;throw Error("coord must be GeoJSON Point or an Array of numbers")}function Q(r){if(Array.isArray(r))return r;if(r.type==="Feature"){if(r.geometry!==null)return r.geometry.coordinates}else if(r.coordinates)return r.coordinates;throw Error("coords must be GeoJSON Feature, Geometry Object or an Array")}function en(r,t,n){if(!r)throw Error("No feature passed");if(!n)throw Error(".featureOf() requires a name");if(!r||r.type!=="Feature"||!r.geometry)throw Error("Invalid input to "+n+", Feature with geometry required");if(!r.geometry||r.geometry.type!==t)throw Error("Invalid input to "+n+": must be a "+t+", given "+r.geometry.type)}function K(r){return r.type==="Feature"?r.geometry:r}function ut(r,t){return r.type==="FeatureCollection"?"FeatureCollection":r.type==="GeometryCollection"?"GeometryCollection":r.type==="Feature"&&r.geometry!==null?r.geometry.type:r.type}function Ue(r){if(r.__esModule)return r;var t=Object.defineProperty({},"__esModule",{value:!0});return Object.keys(r).forEach(function(n){var e=Object.getOwnPropertyDescriptor(r,n);Object.defineProperty(t,n,e.get?e:{enumerable:!0,get:function(){return r[n]}})}),t}function te(r,t,n){if(n===void 0&&(n={}),!r)throw Error("point is required");if(!t)throw Error("polygon is required");var e=F(r),i=K(t),s=i.type,o=t.bbox,a=i.coordinates;if(o&&function(p,f){return!(f[0]>p[0]||f[1]>p[1]||p[0]>f[2]||p[1]>f[3])}(e,o)===!1)return!1;s==="Polygon"&&(a=[a]);for(var l=!1,u=0;a.length>u&&!l;u++)if(tn(e,a[u][0],n.ignoreBoundary)){for(var c=!1,h=1;a[u].length>h&&!c;)tn(e,a[u][h],!n.ignoreBoundary)&&(c=!0),h++;c||(l=!0)}return l}function tn(r,t,n){var e=!1;t[0][0]===t[t.length-1][0]&&t[0][1]===t[t.length-1][1]&&(t=t.slice(0,t.length-1));for(var i=0,s=t.length-1;t.length>i;s=i++){var o=t[i][0],a=t[i][1],l=t[s][0],u=t[s][1];if(r[1]*(o-l)+a*(l-r[0])+u*(r[0]-o)==0&&0>=(o-r[0])*(l-r[0])&&0>=(a-r[1])*(u-r[1]))return!n;a>r[1]!=u>r[1]&&(l-o)*(r[1]-a)/(u-a)+o>r[0]&&(e=!e)}return e}function H(r,t,n){n===void 0&&(n={});var e=F(r),i=F(t),s=T(i[1]-e[1]),o=T(i[0]-e[0]),a=T(e[1]),l=T(i[1]),u=Math.pow(Math.sin(s/2),2)+Math.pow(Math.sin(o/2),2)*Math.cos(a)*Math.cos(l);return ot(2*Math.atan2(Math.sqrt(u),Math.sqrt(1-u)),n.units)}function nn(r){if(!r)throw Error("geojson is required");switch(r.type){case"Feature":return rn(r);case"FeatureCollection":return function(t){var n={type:"FeatureCollection"};return Object.keys(t).forEach(function(e){switch(e){case"type":case"features":return;default:n[e]=t[e]}}),n.features=t.features.map(function(e){return rn(e)}),n}(r);case"Point":case"LineString":case"Polygon":case"MultiPoint":case"MultiLineString":case"MultiPolygon":case"GeometryCollection":return ct(r);default:throw Error("unknown GeoJSON type")}}function rn(r){var t={type:"Feature"};return Object.keys(r).forEach(function(n){switch(n){case"type":case"properties":case"geometry":return;default:t[n]=r[n]}}),t.properties=sn(r.properties),t.geometry=ct(r.geometry),t}function sn(r){var t={};return r&&Object.keys(r).forEach(function(n){var e=r[n];t[n]=typeof e=="object"?e===null?null:Array.isArray(e)?e.map(function(i){return i}):sn(e):e}),t}function ct(r){var t={type:r.type};return r.bbox&&(t.bbox=r.bbox),r.type==="GeometryCollection"?(t.geometries=r.geometries.map(function(n){return ct(n)}),t):(t.coordinates=on(r.coordinates),t)}function on(r){var t=r;return typeof t[0]!="object"?t.slice():t.map(function(n){return on(n)})}function ht(r,t,n,e){e===void 0&&(e={});var i=F(r),s=T(i[0]),o=T(i[1]),a=T(n),l=We(t,e.units),u=Math.asin(Math.sin(o)*Math.cos(l)+Math.cos(o)*Math.sin(l)*Math.cos(a));return G([me(s+Math.atan2(Math.sin(a)*Math.sin(l)*Math.cos(o),Math.cos(l)-Math.sin(o)*Math.sin(u))),me(u)],e.properties)}function pt(r,t,n){if(n===void 0&&(n={}),n.final===!0)return function(u,c){var h=pt(c,u);return h=(h+180)%360}(r,t);var e=F(r),i=F(t),s=T(e[0]),o=T(i[0]),a=T(e[1]),l=T(i[1]);return me(Math.atan2(Math.sin(o-s)*Math.cos(l),Math.cos(a)*Math.sin(l)-Math.sin(a)*Math.cos(l)*Math.cos(o-s)))}function vt(r){if(!r)throw Error("geojson is required");var t=[];return ee(r,function(n){(function(e,i){var s=[],o=e.geometry;if(o!==null){switch(o.type){case"Polygon":s=Q(o);break;case"LineString":s=[Q(o)]}s.forEach(function(a){var l=function(u,c){var h=[];return u.reduce(function(p,f){var v,g,d,y,w,b,E=R([p,f],c);return E.bbox=[(w=(g=f)[0])>(d=(v=p)[0])?d:w,(b=g[1])>(y=v[1])?y:b,d>w?d:w,y>b?y:b],h.push(E),f}),h}(a,e.properties);l.forEach(function(u){u.id=i.length,i.push(u)})})}})(n,t)}),V(t)}function oi(r,t,n,e,i){an(r,t,n||0,e||r.length-1,i||ai)}function an(r,t,n,e,i){for(;e>n;){if(e-n>600){var s=e-n+1,o=t-n+1,a=Math.log(s),l=.5*Math.exp(2*a/3),u=.5*Math.sqrt(a*l*(s-l)/s)*(0>o-s/2?-1:1);an(r,t,Math.max(n,Math.floor(t-o*l/s+u)),Math.min(e,Math.floor(t+(s-o)*l/s+u)),i)}var c=r[t],h=n,p=e;for(Se(r,n,t),i(r[e],c)>0&&Se(r,n,e);p>h;){for(Se(r,h,p),h++,p--;0>i(r[h],c);)h++;for(;i(r[p],c)>0;)p--}i(r[n],c)===0?Se(r,n,p):Se(r,++p,e),p>t||(n=p+1),t>p||(e=p-1)}}function Se(r,t,n){var e=r[t];r[t]=r[n],r[n]=e}function ai(r,t){return t>r?-1:r>t?1:0}function li(r,t,n){if(!n)return t.indexOf(r);for(let e=0;t.length>e;e++)if(n(r,t[e]))return e;return-1}function be(r,t){Pe(r,0,r.children.length,t,r)}function Pe(r,t,n,e,i){i||(i=we(null)),i.minX=1/0,i.minY=1/0,i.maxX=-1/0,i.maxY=-1/0;for(let s=t;n>s;s++){const o=r.children[s];Be(i,r.leaf?e(o):o)}return i}function Be(r,t){return r.minX=Math.min(r.minX,t.minX),r.minY=Math.min(r.minY,t.minY),r.maxX=Math.max(r.maxX,t.maxX),r.maxY=Math.max(r.maxY,t.maxY),r}function ui(r,t){return r.minX-t.minX}function ci(r,t){return r.minY-t.minY}function ft(r){return(r.maxX-r.minX)*(r.maxY-r.minY)}function Ye(r){return r.maxX-r.minX+(r.maxY-r.minY)}function hi(r,t){const n=Math.max(r.minX,t.minX),e=Math.max(r.minY,t.minY),i=Math.min(r.maxX,t.maxX),s=Math.min(r.maxY,t.maxY);return Math.max(0,i-n)*Math.max(0,s-e)}function gt(r,t){return!(r.minX>t.minX||r.minY>t.minY||t.maxX>r.maxX||t.maxY>r.maxY)}function Je(r,t){return!(t.minX>r.maxX||t.minY>r.maxY||r.minX>t.maxX||r.minY>t.maxY)}function we(r){return{children:r,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}function ln(r,t,n,e,i){const s=[t,n];for(;s.length;){if(e>=(n=s.pop())-(t=s.pop()))continue;const o=t+Math.ceil((n-t)/e/2)*e;oi(r,o,t,n,i),s.push(t,o,o,n)}}var pi=Object.freeze({__proto__:null,default:class{constructor(r=9){this._maxEntries=Math.max(4,r),this._minEntries=Math.max(2,Math.ceil(.4*this._maxEntries)),this.clear()}all(){return this._all(this.data,[])}search(r){let t=this.data;const n=[];if(!Je(r,t))return n;const e=this.toBBox,i=[];for(;t;){for(let s=0;t.children.length>s;s++){const o=t.children[s],a=t.leaf?e(o):o;Je(r,a)&&(t.leaf?n.push(o):gt(r,a)?this._all(o,n):i.push(o))}t=i.pop()}return n}collides(r){let t=this.data;if(!Je(r,t))return!1;const n=[];for(;t;){for(let e=0;t.children.length>e;e++){const i=t.children[e],s=t.leaf?this.toBBox(i):i;if(Je(r,s)){if(t.leaf||gt(r,s))return!0;n.push(i)}}t=n.pop()}return!1}load(r){if(!r||!r.length)return this;if(this._minEntries>r.length){for(let n=0;r.length>n;n++)this.insert(r[n]);return this}let t=this._build(r.slice(),0,r.length-1,0);if(this.data.children.length)if(this.data.height===t.height)this._splitRoot(this.data,t);else{if(t.height>this.data.height){const n=this.data;this.data=t,t=n}this._insert(t,this.data.height-t.height-1,!0)}else this.data=t;return this}insert(r){return r&&this._insert(r,this.data.height-1),this}clear(){return this.data=we([]),this}remove(r,t){if(!r)return this;let n=this.data;const e=this.toBBox(r),i=[],s=[];let o,a,l;for(;n||i.length;){if(n||(n=i.pop(),a=i[i.length-1],o=s.pop(),l=!0),n.leaf){const u=li(r,n.children,t);if(u!==-1)return n.children.splice(u,1),i.push(n),this._condense(i),this}l||n.leaf||!gt(n,e)?a?(o++,n=a.children[o],l=!1):n=null:(i.push(n),s.push(o),o=0,a=n,n=n.children[0])}return this}toBBox(r){return r}compareMinX(r,t){return r.minX-t.minX}compareMinY(r,t){return r.minY-t.minY}toJSON(){return this.data}fromJSON(r){return this.data=r,this}_all(r,t){const n=[];for(;r;)r.leaf?t.push(...r.children):n.push(...r.children),r=n.pop();return t}_build(r,t,n,e){const i=n-t+1;let s,o=this._maxEntries;if(o>=i)return s=we(r.slice(t,n+1)),be(s,this.toBBox),s;e||(o=Math.ceil(i/Math.pow(o,(e=Math.ceil(Math.log(i)/Math.log(o)))-1))),s=we([]),s.leaf=!1,s.height=e;const a=Math.ceil(i/o),l=a*Math.ceil(Math.sqrt(o));ln(r,t,n,l,this.compareMinX);for(let u=t;n>=u;u+=l){const c=Math.min(u+l-1,n);ln(r,u,c,a,this.compareMinY);for(let h=u;c>=h;h+=a)s.children.push(this._build(r,h,Math.min(h+a-1,c),e-1))}return be(s,this.toBBox),s}_chooseSubtree(r,t,n,e){for(;e.push(t),!t.leaf&&e.length-1!==n;){let o,a=1/0,l=1/0;for(let u=0;t.children.length>u;u++){const c=t.children[u],h=ft(c),p=(Math.max((s=c).maxX,(i=r).maxX)-Math.min(s.minX,i.minX))*(Math.max(s.maxY,i.maxY)-Math.min(s.minY,i.minY))-h;l>p?(l=p,a=a>h?h:a,o=c):p===l&&a>h&&(a=h,o=c)}t=o||t.children[0]}var i,s;return t}_insert(r,t,n){const e=n?r:this.toBBox(r),i=[],s=this._chooseSubtree(e,this.data,t,i);for(s.children.push(r),Be(s,e);t>=0&&i[t].children.length>this._maxEntries;)this._split(i,t),t--;this._adjustParentBBoxes(e,i,t)}_split(r,t){const n=r[t],e=n.children.length,i=this._minEntries;this._chooseSplitAxis(n,i,e);const s=this._chooseSplitIndex(n,i,e),o=we(n.children.splice(s,n.children.length-s));o.height=n.height,o.leaf=n.leaf,be(n,this.toBBox),be(o,this.toBBox),t?r[t-1].children.push(o):this._splitRoot(n,o)}_splitRoot(r,t){this.data=we([r,t]),this.data.height=r.height+1,this.data.leaf=!1,be(this.data,this.toBBox)}_chooseSplitIndex(r,t,n){let e,i=1/0,s=1/0;for(let o=t;n-t>=o;o++){const a=Pe(r,0,o,this.toBBox),l=Pe(r,o,n,this.toBBox),u=hi(a,l),c=ft(a)+ft(l);i>u?(i=u,e=o,s=s>c?c:s):u===i&&s>c&&(s=c,e=o)}return e||n-t}_chooseSplitAxis(r,t,n){const e=r.leaf?this.compareMinX:ui,i=r.leaf?this.compareMinY:ci,s=this._allDistMargin(r,t,n,e);this._allDistMargin(r,t,n,i)>s&&r.children.sort(e)}_allDistMargin(r,t,n,e){r.children.sort(e);const i=this.toBBox,s=Pe(r,0,t,i),o=Pe(r,n-t,n,i);let a=Ye(s)+Ye(o);for(let l=t;n-t>l;l++){const u=r.children[l];Be(s,r.leaf?i(u):u),a+=Ye(s)}for(let l=n-t-1;l>=t;l--){const u=r.children[l];Be(o,r.leaf?i(u):u),a+=Ye(o)}return a}_adjustParentBBoxes(r,t,n){for(let e=n;e>=0;e--)Be(t[e],r)}_condense(r){for(let t,n=r.length-1;n>=0;n--)r[n].children.length===0?n>0?(t=r[n-1].children,t.splice(t.indexOf(r[n]),1)):this.clear():be(r[n],this.toBBox)}}}),ne=Ue(pi),vi=Ue(ii),fi=Ue(ri),Ee=Ue(si).default,gi=fi.featureEach,un=vi.featureCollection;function cn(r){var t=new ne(r);return t.insert=function(n){if(n.type!=="Feature")throw Error("invalid feature");return n.bbox=n.bbox?n.bbox:Ee(n),ne.prototype.insert.call(this,n)},t.load=function(n){var e=[];return Array.isArray(n)?n.forEach(function(i){if(i.type!=="Feature")throw Error("invalid features");i.bbox=i.bbox?i.bbox:Ee(i),e.push(i)}):gi(n,function(i){if(i.type!=="Feature")throw Error("invalid features");i.bbox=i.bbox?i.bbox:Ee(i),e.push(i)}),ne.prototype.load.call(this,e)},t.remove=function(n,e){if(n.type!=="Feature")throw Error("invalid feature");return n.bbox=n.bbox?n.bbox:Ee(n),ne.prototype.remove.call(this,n,e)},t.clear=function(){return ne.prototype.clear.call(this)},t.search=function(n){var e=ne.prototype.search.call(this,this.toBBox(n));return un(e)},t.collides=function(n){return ne.prototype.collides.call(this,this.toBBox(n))},t.all=function(){var n=ne.prototype.all.call(this);return un(n)},t.toJSON=function(){return ne.prototype.toJSON.call(this)},t.fromJSON=function(n){return ne.prototype.fromJSON.call(this,n)},t.toBBox=function(n){var e;if(n.bbox)e=n.bbox;else if(Array.isArray(n)&&n.length===4)e=n;else if(Array.isArray(n)&&n.length===6)e=[n[0],n[1],n[3],n[4]];else if(n.type==="Feature")e=Ee(n);else{if(n.type!=="FeatureCollection")throw Error("invalid geojson");e=Ee(n)}return{minX:e[0],minY:e[1],maxX:e[2],maxY:e[3]}},t}var Xe=cn;function ke(r,t){var n={},e=[];if(r.type==="LineString"&&(r=U(r)),t.type==="LineString"&&(t=U(t)),r.type==="Feature"&&t.type==="Feature"&&r.geometry!==null&&t.geometry!==null&&r.geometry.type==="LineString"&&t.geometry.type==="LineString"&&r.geometry.coordinates.length===2&&t.geometry.coordinates.length===2){var i=hn(r,t);return i&&e.push(i),V(e)}var s=Xe();return s.load(vt(t)),ye(vt(r),function(o){ye(s.search(o),function(a){var l=hn(o,a);if(l){var u=Q(l).join(",");n[u]||(n[u]=!0,e.push(l))}})}),V(e)}function hn(r,t){var n=Q(r),e=Q(t);if(n.length!==2)throw Error(" line1 must only contain 2 coordinates");if(e.length!==2)throw Error(" line2 must only contain 2 coordinates");var i=n[0][0],s=n[0][1],o=n[1][0],a=n[1][1],l=e[0][0],u=e[0][1],c=e[1][0],h=e[1][1],p=(h-u)*(o-i)-(c-l)*(a-s),f=(c-l)*(s-u)-(h-u)*(i-l),v=(o-i)*(s-u)-(a-s)*(i-l);if(p===0)return null;var g=f/p,d=v/p;return 0>g||g>1||0>d||d>1?null:G([i+g*(o-i),s+g*(a-s)])}function pn(r,t,n){n===void 0&&(n={});var e=G([1/0,1/0],{dist:1/0}),i=0;return ee(r,function(s){for(var o=Q(s),a=0;o.length-1>a;a++){var l=G(o[a]);l.properties.dist=H(t,l,n);var u=G(o[a+1]);u.properties.dist=H(t,u,n);var c=H(l,u,n),h=Math.max(l.properties.dist,u.properties.dist),p=pt(l,u),f=ht(t,h,p+90,n),v=ht(t,h,p-90,n),g=ke(R([f.geometry.coordinates,v.geometry.coordinates]),R([l.geometry.coordinates,u.geometry.coordinates])),d=null;g.features.length>0&&((d=g.features[0]).properties.dist=H(t,d,n),d.properties.location=i+H(l,d,n)),e.properties.dist>l.properties.dist&&((e=l).properties.index=a,e.properties.location=i),e.properties.dist>u.properties.dist&&((e=u).properties.index=a+1,e.properties.location=i+c),d&&e.properties.dist>d.properties.dist&&((e=d).properties.index=a),i+=c}}),e}function vn(r,t,n){n===void 0&&(n={});var e=F(r),i=F(t);i[0]+=i[0]-e[0]>180?-360:e[0]-i[0]>180?360:0;var s=function(o,a,l){var u=l=l===void 0?D:Number(l),c=o[1]*Math.PI/180,h=a[1]*Math.PI/180,p=h-c,f=Math.abs(a[0]-o[0])*Math.PI/180;f>Math.PI&&(f-=2*Math.PI);var v=Math.log(Math.tan(h/2+Math.PI/4)/Math.tan(c/2+Math.PI/4)),g=Math.abs(v)>1e-11?p/v:Math.cos(c);return Math.sqrt(p*p+g*g*f*f)*u}(e,i);return ze(s,"meters",n.units)}function di(r,t,n){if(n===void 0&&(n={}),n.method||(n.method="geodesic"),n.units||(n.units="kilometers"),!r)throw Error("pt is required");if(Array.isArray(r)?r=G(r):r.type==="Point"?r=U(r):en(r,"Point","point"),!t)throw Error("line is required");Array.isArray(t)?t=R(t):t.type==="LineString"?t=U(t):en(t,"LineString","line");var e=1/0,i=r.geometry.coordinates;return lt(t,function(s){var o=function(a,l,u,c){var h=[u[0]-l[0],u[1]-l[1]],p=[a[0]-l[0],a[1]-l[1]],f=fn(p,h);if(0>=f)return dt(a,l,{method:c.method,units:"degrees"});var v=fn(h,h);if(f>=v)return dt(a,u,{method:c.method,units:"degrees"});var g=f/v,d=[l[0]+g*h[0],l[1]+g*h[1]];return dt(a,d,{method:c.method,units:"degrees"})}(i,s.geometry.coordinates[0],s.geometry.coordinates[1],n);e>o&&(e=o)}),ze(e,"degrees",n.units)}function fn(r,t){return r[0]*t[0]+r[1]*t[1]}function dt(r,t,n){return n.method==="planar"?vn(r,t,n):H(r,t,n)}Xe.default=cn;var gn=6378137;function mi(r){return Zt(r,function(t,n){return t+function(e){var i,s=0;switch(e.type){case"Polygon":return dn(e.coordinates);case"MultiPolygon":for(i=0;e.coordinates.length>i;i++)s+=dn(e.coordinates[i]);return s;case"Point":case"MultiPoint":case"LineString":case"MultiLineString":return 0}return 0}(n)},0)}function dn(r){var t=0;if(r&&r.length>0){t+=Math.abs(mn(r[0]));for(var n=1;r.length>n;n++)t-=Math.abs(mn(r[n]))}return t}function mn(r){var t,n,e,i,s,o,a=0,l=r.length;if(l>2){for(o=0;l>o;o++)o===l-2?(e=l-2,i=l-1,s=0):o===l-1?(e=l-1,i=0,s=1):(e=o,i=o+1,s=o+2),t=r[e],n=r[i],a+=(mt(r[s][0])-mt(t[0]))*Math.sin(mt(n[1]));a=a*gn*gn/2}return a}function mt(r){return r*Math.PI/180}function Me(r,t,n){n===void 0&&(n={});for(var e=F(r),i=Q(t),s=0;i.length-1>s;s++){var o=!1;if(n.ignoreEndVertices&&(s===0&&(o="start"),s===i.length-2&&(o="end"),s===0&&s+1===i.length-1&&(o="both")),yi(i[s],i[s+1],e,o,n.epsilon===void 0?null:n.epsilon))return!0}return!1}function yi(r,t,n,e,i){var s=n[0],o=n[1],a=r[0],l=r[1],u=t[0],c=t[1],h=u-a,p=c-l,f=(n[0]-a)*p-(n[1]-l)*h;if(i!==null){if(Math.abs(f)>i)return!1}else if(f!==0)return!1;return e?e==="start"?Math.abs(p)>Math.abs(h)?p>0?o>l&&c>=o:o>=c&&l>o:h>0?s>a&&u>=s:s>=u&&a>s:e==="end"?Math.abs(p)>Math.abs(h)?p>0?o>=l&&c>o:o>c&&l>=o:h>0?s>=a&&u>s:s>u&&a>=s:e==="both"&&(Math.abs(p)>Math.abs(h)?p>0?o>l&&c>o:o>c&&l>o:h>0?s>a&&u>s:s>u&&a>s):Math.abs(p)>Math.abs(h)?p>0?o>=l&&c>=o:o>=c&&l>=o:h>0?s>=a&&u>=s:s>=u&&a>=s}function bi(r,t){t===void 0&&(t={});var n=t.precision,e=t.coordinates,i=t.mutate;if(n=n==null||isNaN(n)?6:n,e=e==null||isNaN(e)?3:e,!r)throw Error(" is required");if(typeof n!="number")throw Error(" must be a number");if(typeof e!="number")throw Error(" must be a number");i!==!1&&i!==void 0||(r=JSON.parse(JSON.stringify(r)));var s=Math.pow(10,n);return re(r,function(o){(function(a,l,u){a.length>u&&a.splice(u,a.length);for(var c=0;a.length>c;c++)a[c]=Math.round(a[c]*l)/l})(o,s,e)}),r}function yn(r,t){var n=[],e=Xe();return ee(t,function(i){if(n.forEach(function(a,l){a.id=l}),n.length){var s=e.search(i);if(s.features.length){var o=bn(i,s);n=n.filter(function(a){return a.id!==o.id}),e.remove(o),ye(yt(o,i),function(a){n.push(a),e.insert(a)})}}else(n=yt(r,i).features).forEach(function(a){a.bbox||(a.bbox=function(l){var u=l[0],c=l[1],h=l[2],p=l[3],f=H(l.slice(0,2),[h,c]);if(H(l.slice(0,2),[u,p])>f){var v=(u+h)/2;return[v-(p-c)/2,c,v+(p-c)/2,p]}var g=(c+p)/2;return[u,g-(h-u)/2,h,g+(h-u)/2]}(se(a)))}),e.load(V(n))}),V(n)}function yt(r,t){var n=[],e=Q(r)[0],i=Q(r)[r.geometry.coordinates.length-1];if(bt(e,F(t))||bt(i,F(t)))return V([r]);var s=Xe(),o=vt(r);s.load(o);var a=s.search(t);if(!a.features.length)return V([r]);var l=bn(t,a),u=Ht(o,function(c,h,p){var f=Q(h)[1],v=F(t);return p===l.id?(c.push(v),n.push(R(c)),bt(v,f)?[v]:[v,f]):(c.push(f),c)},[e]);return u.length>1&&n.push(R(u)),V(n)}function bn(r,t){if(!t.features.length)throw Error("lines must contain features");if(t.features.length===1)return t.features[0];var n,e=1/0;return ye(t,function(i){var s=pn(i,r).properties.dist;e>s&&(n=i,e=s)}),n}function bt(r,t){return r[0]===t[0]&&r[1]===t[1]}function wt(r,t){t===void 0&&(t={});var n=K(r);switch(t.properties||r.type!=="Feature"||(t.properties=r.properties),n.type){case"Polygon":return function(e,i){i===void 0&&(i={});var s=K(e),o=s.coordinates,a=i.properties?i.properties:e.type==="Feature"?e.properties:{};return wn(o,a)}(n,t);case"MultiPolygon":return function(e,i){i===void 0&&(i={});var s=K(e),o=s.coordinates,a=i.properties?i.properties:e.type==="Feature"?e.properties:{},l=[];return o.forEach(function(u){l.push(wn(u,a))}),V(l)}(n,t);default:throw Error("invalid poly")}}function wn(r,t){return r.length>1?Fe(r,t):R(r[0],t)}function wi(r,t){var n,e,i;t===void 0&&(t={});var s=t.properties,o=(n=t.autoComplete)===null||n===void 0||n,a=(e=t.orderCoords)===null||e===void 0||e;if((i=t.mutate)!==null&&i!==void 0&&i||(r=nn(r)),r.type==="FeatureCollection"){var l=[];return r.features.forEach(function(u){l.push(Q(En(u,{},o,a)))}),Oe(l,s)}return En(r,s,o,a)}function En(r,t,n,e){t=t||(r.type==="Feature"?r.properties:{});var i=K(r),s=i.coordinates,o=i.type;if(!s.length)throw Error("line must contain coordinates");switch(o){case"LineString":return n&&(s=kn(s)),ge([s],t);case"MultiLineString":var a=[],l=0;return s.forEach(function(u){if(n&&(u=kn(u)),e){var c=function(h){var p=h[0],f=h[1],v=h[2],g=h[3];return Math.abs(p-v)*Math.abs(f-g)}(se(R(u)));c>l?(a.unshift(u),l=c):a.push(u)}else a.push(u)}),ge(a,t);default:throw Error("geometry type "+o+" is not supported")}}function kn(r){var t=r[0],n=r[r.length-1];return t[0]===n[0]&&t[1]===n[1]||r.push(t),r}function Mn(r,t){var n=T(r[1]),e=T(t[1]),i=T(t[0]-r[0]);return i>Math.PI&&(i-=2*Math.PI),-Math.PI>i&&(i+=2*Math.PI),(me(Math.atan2(i,Math.log(Math.tan(e/2+Math.PI/4)/Math.tan(n/2+Math.PI/4))))+360)%360}function Ei(r,t,n,e){e===void 0&&(e={});var i=0>t,s=ze(Math.abs(t),e.units,"meters");i&&(s=-Math.abs(s));var o=F(r),a=function(l,u,c,h){h=h===void 0?D:Number(h);var p=u/h,f=l[0]*Math.PI/180,v=T(l[1]),g=T(c),d=p*Math.cos(g),y=v+d;Math.abs(y)>Math.PI/2&&(y=y>0?Math.PI-y:-Math.PI-y);var w=Math.log(Math.tan(y/2+Math.PI/4)/Math.tan(v/2+Math.PI/4)),b=Math.abs(w)>1e-11?d/w:Math.cos(v);return[(180*(f+p*Math.sin(g)/b)/Math.PI+540)%360-180,180*y/Math.PI]}(o,s,n);return a[0]+=a[0]-o[0]>180?-360:o[0]-a[0]>180?360:0,G(a,e.properties)}function Ve(r){var t=r[0],n=r[1];return[n[0]-t[0],n[1]-t[1]]}function Et(r,t){return r[0]*t[1]-t[0]*r[1]}function ki(r,t){return!function(n,e){return Et(Ve(n),Ve(e))===0}(r,t)&&function(n,e){var i,s,o=n[0],a=Ve(n),l=e[0],u=Ve(e),c=Et(a,u),h=function(p,f){return[p[0]+f[0],p[1]+f[1]]}(o,function(p,f){return[p*f[0],p*f[1]]}(Et([(i=l)[0]-(s=o)[0],i[1]-s[1]],u)/c,a));return h}(r,t)}function Ln(r,t,n){if(!Ae(n=n||{}))throw Error("options is invalid");var e=n.units;if(!r)throw Error("geojson is required");if(t==null||isNaN(t))throw Error("distance is required");var i=ut(r),s=r.properties;switch(i){case"LineString":return xn(r,t,e);case"MultiLineString":var o=[];return ee(r,function(a){o.push(xn(a,t,e).geometry.coordinates)}),Fe(o,s);default:throw Error("geometry "+i+" is not supported")}}function xn(r,t,n){var e=[],i=Qt(t,n),s=Q(r),o=[];return s.forEach(function(a,l){if(l!==s.length-1){var u=[[(p=a)[0]+(v=i)*((f=s[l+1])[1]-p[1])/(g=Math.sqrt((p[0]-f[0])*(p[0]-f[0])+(p[1]-f[1])*(p[1]-f[1]))),p[1]+v*(p[0]-f[0])/g],[f[0]+v*(f[1]-p[1])/g,f[1]+v*(p[0]-f[0])/g]];if(e.push(u),l>0){var c=e[l-1],h=ki(u,c);h!==!1&&(c[1]=h,u[0]=h),o.push(c[0]),l===s.length-2&&(o.push(u[0]),o.push(u[1]))}s.length===2&&(o.push(u[0]),o.push(u[1]))}var p,f,v,g}),R(o,r.properties)}function kt(r,t){var n=!0;return ee(r,function(e){ee(t,function(i){if(n===!1)return!1;n=function(s,o){switch(s.type){case"Point":switch(o.type){case"Point":return!((a=s.coordinates)[0]===(l=o.coordinates)[0]&&a[1]===l[1]);case"LineString":return!On(o,s);case"Polygon":return!te(s,o)}break;case"LineString":switch(o.type){case"Point":return!On(s,o);case"LineString":return!function(u,c){return ke(u,c).features.length>0}(s,o);case"Polygon":return!An(o,s)}break;case"Polygon":switch(o.type){case"Point":return!te(o,s);case"LineString":return!An(s,o);case"Polygon":return!function(u,c){for(var h=0,p=u.coordinates[0];p.length>h;h++)if(te(p[h],c))return!0;for(var f=0,v=c.coordinates[0];v.length>f;f++)if(te(v[f],u))return!0;var g=ke(wt(u),wt(c));return g.features.length>0}(o,s)}}var a,l;return!1}(e.geometry,i.geometry)})}),n}function On(r,t){for(var n=0;r.coordinates.length-1>n;n++)if(Mi(r.coordinates[n],r.coordinates[n+1],t.coordinates))return!0;return!1}function An(r,t){for(var n=0,e=t.coordinates;e.length>n;n++)if(te(e[n],r))return!0;return ke(t,wt(r)).features.length>0}function Mi(r,t,n){var e=t[0]-r[0],i=t[1]-r[1];return(n[0]-r[0])*i-(n[1]-r[1])*e==0&&(Math.abs(i)>Math.abs(e)?i>0?n[1]>=r[1]&&t[1]>=n[1]:n[1]>=t[1]&&r[1]>=n[1]:e>0?n[0]>=r[0]&&t[0]>=n[0]:n[0]>=t[0]&&r[0]>=n[0])}function Li(r,t){var n=K(r),e=K(t),i=n.type,s=e.type,o=n.coordinates,a=e.coordinates;switch(i){case"Point":if(s==="Point")return Mt(o,a);throw Error("feature2 "+s+" geometry not supported");case"MultiPoint":switch(s){case"Point":return function(l,u){var c,h=!1;for(c=0;l.coordinates.length>c;c++)if(Mt(l.coordinates[c],u.coordinates)){h=!0;break}return h}(n,e);case"MultiPoint":return function(l,u){for(var c=0,h=u.coordinates;h.length>c;c++){for(var p=h[c],f=!1,v=0,g=l.coordinates;g.length>v;v++)if(Mt(p,g[v])){f=!0;break}if(!f)return!1}return!0}(n,e);default:throw Error("feature2 "+s+" geometry not supported")}case"LineString":switch(s){case"Point":return Me(e,n,{ignoreEndVertices:!0});case"LineString":return function(l,u){for(var c=!1,h=0,p=u.coordinates;p.length>h;h++){var f=p[h];if(Me({type:"Point",coordinates:f},l,{ignoreEndVertices:!0})&&(c=!0),!Me({type:"Point",coordinates:f},l,{ignoreEndVertices:!1}))return!1}return c}(n,e);case"MultiPoint":return function(l,u){for(var c=!1,h=0,p=u.coordinates;p.length>h;h++){var f=p[h];if(Me(f,l,{ignoreEndVertices:!0})&&(c=!0),!Me(f,l))return!1}return!!c}(n,e);default:throw Error("feature2 "+s+" geometry not supported")}case"Polygon":switch(s){case"Point":return te(e,n,{ignoreBoundary:!0});case"LineString":return function(l,u){var c=!1,h=0,p=se(l),f=se(u);if(!Sn(p,f))return!1;for(;u.coordinates.length-1>h;h++)if(te({type:"Point",coordinates:xi(u.coordinates[h],u.coordinates[h+1])},l,{ignoreBoundary:!0})){c=!0;break}return c}(n,e);case"Polygon":return function(l,u){if(l.type==="Feature"&&l.geometry===null||u.type==="Feature"&&u.geometry===null)return!1;var c=se(l),h=se(u);if(!Sn(c,h))return!1;for(var p=K(u).coordinates,f=0,v=p;v.length>f;f++)for(var g=0,d=v[f];d.length>g;g++)if(!te(d[g],l))return!1;return!0}(n,e);case"MultiPoint":return function(l,u){for(var c=0,h=u.coordinates;h.length>c;c++)if(!te(h[c],l,{ignoreBoundary:!0}))return!1;return!0}(n,e);default:throw Error("feature2 "+s+" geometry not supported")}default:throw Error("feature1 "+i+" geometry not supported")}}function Sn(r,t){return t[0]>=r[0]&&r[2]>=t[2]&&t[1]>=r[1]&&t[3]<=r[3]}function Mt(r,t){return r[0]===t[0]&&r[1]===t[1]}function xi(r,t){return[(r[0]+t[0])/2,(r[1]+t[1])/2]}/** + * splaytree v3.1.2 + * Fast Splay tree for Node and browser + * + * @author Alexander Milevski + * @license MIT + * @preserve + *//*! ***************************************************************************** + Copyright (c) Microsoft Corporation. All rights reserved. + Licensed under the Apache License, Version 2.0 (the "License"); you may not use + this file except in compliance with the License. You may obtain a copy of the + License at http://www.apache.org/licenses/LICENSE-2.0 + + THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED + WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, + MERCHANTABLITY OR NON-INFRINGEMENT. + + See the Apache Version 2.0 License for specific language governing permissions + and limitations under the License. + ***************************************************************************** */function Oi(r,t){var n,e,i,s,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return s={next:a(0),throw:a(1),return:a(2)},typeof Symbol=="function"&&(s[Symbol.iterator]=function(){return this}),s;function a(l){return function(u){return function(c){if(n)throw new TypeError("Generator is already executing.");for(;o;)try{if(n=1,e&&(i=2&c[0]?e.return:c[0]?e.throw||((i=e.return)&&i.call(e),0):e.next)&&!(i=i.call(e,c[1])).done)return i;switch(e=0,i&&(c=[2&c[0],i.value]),c[0]){case 0:case 1:i=c;break;case 4:return o.label++,{value:c[1],done:!1};case 5:o.label++,e=c[1],c=[0];continue;case 7:c=o.ops.pop(),o.trys.pop();continue;default:if(i=o.trys,!((i=i.length>0&&i[i.length-1])||c[0]!==6&&c[0]!==2)){o=0;continue}if(c[0]===3&&(!i||c[1]>i[0]&&i[3]>c[1])){o.label=c[1];break}if(c[0]===6&&i[1]>o.label){o.label=i[1],i=c;break}if(i&&i[2]>o.label){o.label=i[2],o.ops.push(c);break}i[2]&&o.ops.pop(),o.trys.pop();continue}c=t.call(r,o)}catch(h){c=[6,h],e=0}finally{n=i=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}([l,u])}}}var ue=function(r,t){this.next=null,this.key=r,this.data=t,this.left=null,this.right=null};function Ai(r,t){return r>t?1:t>r?-1:0}function ce(r,t,n){for(var e=new ue(null,null),i=e,s=e;;){var o=n(r,t.key);if(0>o){if(t.left===null||0>n(r,t.left.key)&&(t.left=(a=t.left).right,a.right=t,(t=a).left===null))break;s.left=t,s=t,t=t.left}else{if(0>=o||t.right===null)break;var a;if(n(r,t.right.key)>0&&(t.right=(a=t.right).left,a.left=t,(t=a).right===null))break;i.right=t,i=t,t=t.right}}return i.right=t.left,s.left=t.right,t.left=e.right,t.right=e.left,t}function Lt(r,t,n,e){var i=new ue(r,t);if(n===null)return i.left=i.right=null,i;var s=e(r,(n=ce(r,n,e)).key);return 0>s?(i.left=n.left,i.right=n,n.left=null):0>s||(i.right=n.right,i.left=n,n.right=null),i}function Pn(r,t,n){var e=null,i=null;if(t){var s=n((t=ce(r,t,n)).key,r);s===0?(e=t.left,i=t.right):0>s?(i=t.right,t.right=null,e=t):(e=t.left,t.left=null,i=t)}return{left:e,right:i}}function xt(r,t,n,e,i){if(r){e(t+(n?"└── ":"├── ")+i(r)+` +`);var s=t+(n?" ":"│ ");r.left&&xt(r.left,s,!1,e,i),r.right&&xt(r.right,s,!0,e,i)}}var Ot=function(){function r(t){t===void 0&&(t=Ai),this._root=null,this._size=0,this._comparator=t}return r.prototype.insert=function(t,n){return this._size++,this._root=Lt(t,n,this._root,this._comparator)},r.prototype.add=function(t,n){var e=new ue(t,n);this._root===null&&(e.left=e.right=null,this._size++,this._root=e);var i=this._comparator,s=ce(t,this._root,i),o=i(t,s.key);return o===0?this._root=s:(0>o?(e.left=s.left,e.right=s,s.left=null):o>0&&(e.right=s.right,e.left=s,s.right=null),this._size++,this._root=e),this._root},r.prototype.remove=function(t){this._root=this._remove(t,this._root,this._comparator)},r.prototype._remove=function(t,n,e){var i;return n===null?null:e(t,(n=ce(t,n,e)).key)===0?(n.left===null?i=n.right:(i=ce(t,n.left,e)).right=n.right,this._size--,i):n},r.prototype.pop=function(){var t=this._root;if(t){for(;t.left;)t=t.left;return this._root=ce(t.key,this._root,this._comparator),this._root=this._remove(t.key,this._root,this._comparator),{key:t.key,data:t.data}}return null},r.prototype.findStatic=function(t){for(var n=this._root,e=this._comparator;n;){var i=e(t,n.key);if(i===0)return n;n=0>i?n.left:n.right}return null},r.prototype.find=function(t){return this._root&&(this._root=ce(t,this._root,this._comparator),this._comparator(t,this._root.key)!==0)?null:this._root},r.prototype.contains=function(t){for(var n=this._root,e=this._comparator;n;){var i=e(t,n.key);if(i===0)return!0;n=0>i?n.left:n.right}return!1},r.prototype.forEach=function(t,n){for(var e=this._root,i=[],s=!1;!s;)e!==null?(i.push(e),e=e.left):i.length!==0?(e=i.pop(),t.call(n,e),e=e.right):s=!0;return this},r.prototype.range=function(t,n,e,i){for(var s=[],o=this._comparator,a=this._root;s.length!==0||a;)if(a)s.push(a),a=a.left;else{if(o((a=s.pop()).key,n)>0)break;if(o(a.key,t)>=0&&e.call(i,a))return this;a=a.right}return this},r.prototype.keys=function(){var t=[];return this.forEach(function(n){return t.push(n.key)}),t},r.prototype.values=function(){var t=[];return this.forEach(function(n){return t.push(n.data)}),t},r.prototype.min=function(){return this._root?this.minNode(this._root).key:null},r.prototype.max=function(){return this._root?this.maxNode(this._root).key:null},r.prototype.minNode=function(t){if(t===void 0&&(t=this._root),t)for(;t.left;)t=t.left;return t},r.prototype.maxNode=function(t){if(t===void 0&&(t=this._root),t)for(;t.right;)t=t.right;return t},r.prototype.at=function(t){for(var n=this._root,e=!1,i=0,s=[];!e;)if(n)s.push(n),n=n.left;else if(s.length>0){if(n=s.pop(),i===t)return n;i++,n=n.right}else e=!0;return null},r.prototype.next=function(t){var n=this._root,e=null;if(t.right){for(e=t.right;e.left;)e=e.left;return e}for(var i=this._comparator;n;){var s=i(t.key,n.key);if(s===0)break;0>s?(e=n,n=n.left):n=n.right}return e},r.prototype.prev=function(t){var n=this._root,e=null;if(t.left!==null){for(e=t.left;e.right;)e=e.right;return e}for(var i=this._comparator;n;){var s=i(t.key,n.key);if(s===0)break;0>s?n=n.left:(e=n,n=n.right)}return e},r.prototype.clear=function(){return this._root=null,this._size=0,this},r.prototype.toList=function(){return function(t){for(var n=t,e=[],i=!1,s=new ue(null,null),o=s;!i;)n?(e.push(n),n=n.left):e.length>0?n=(n=o=o.next=e.pop()).right:i=!0;return o.next=null,s.next}(this._root)},r.prototype.load=function(t,n,e){n===void 0&&(n=[]),e===void 0&&(e=!1);var i=t.length,s=this._comparator;if(e&&Pt(t,n,0,i-1,s),this._root===null)this._root=At(t,n,0,i),this._size=i;else{var o=function(a,l,u){for(var c=new ue(null,null),h=c,p=a,f=l;p!==null&&f!==null;)0>u(p.key,f.key)?(h.next=p,p=p.next):(h.next=f,f=f.next),h=h.next;return p!==null?h.next=p:f!==null&&(h.next=f),c.next}(this.toList(),function(a,l){for(var u=new ue(null,null),c=u,h=0;a.length>h;h++)c=c.next=new ue(a[h],l[h]);return c.next=null,u.next}(t,n),s);this._root=St({head:o},0,i=this._size+i)}return this},r.prototype.isEmpty=function(){return this._root===null},Object.defineProperty(r.prototype,"size",{get:function(){return this._size},enumerable:!0,configurable:!0}),Object.defineProperty(r.prototype,"root",{get:function(){return this._root},enumerable:!0,configurable:!0}),r.prototype.toString=function(t){t===void 0&&(t=function(e){return e.key+""});var n=[];return xt(this._root,"",!0,function(e){return n.push(e)},t),n.join("")},r.prototype.update=function(t,n,e){var i=this._comparator,s=Pn(t,this._root,i),o=s.left,a=s.right;0>i(t,n)?a=Lt(n,e,a,i):o=Lt(n,e,o,i),this._root=function(l,u,c){return u===null?l:(l===null||((u=ce(l.key,u,c)).left=l),u)}(o,a,i)},r.prototype.split=function(t){return Pn(t,this._root,this._comparator)},r.prototype[Symbol.iterator]=function(){var t,n,e;return Oi(this,function(i){switch(i.label){case 0:t=this._root,n=[],e=!1,i.label=1;case 1:return e?[3,6]:t===null?[3,2]:(n.push(t),t=t.left,[3,5]);case 2:return n.length===0?[3,4]:[4,t=n.pop()];case 3:return i.sent(),t=t.right,[3,5];case 4:e=!0,i.label=5;case 5:return[3,1];case 6:return[2]}})},r}();function At(r,t,n,e){var i=e-n;if(i>0){var s=n+Math.floor(i/2),o=new ue(r[s],t[s]);return o.left=At(r,t,n,s),o.right=At(r,t,s+1,e),o}return null}function St(r,t,n){var e=n-t;if(e>0){var i=t+Math.floor(e/2),s=St(r,t,i),o=r.head;return o.left=s,r.head=r.head.next,o.right=St(r,i+1,n),o}return null}function Pt(r,t,n,e,i){if(e>n){for(var s=r[n+e>>1],o=n-1,a=e+1;;){do o++;while(0>i(r[o],s));do a--;while(i(r[a],s)>0);if(o>=a)break;var l=r[o];r[o]=r[a],r[a]=l,l=t[o],t[o]=t[a],t[a]=l}Pt(r,t,n,a,i),Pt(r,t,a+1,e,i)}}function Z(r,t){if(!(r instanceof t))throw new TypeError("Cannot call a class as a function")}function Bn(r,t){for(var n=0;t.length>n;n++){var e=t[n];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(r,e.key,e)}}function W(r,t,n){return t&&Bn(r.prototype,t),n&&Bn(r,n),r}var Ge=function(r,t){return!(r.ll.x>t.x||t.x>r.ur.x||r.ll.y>t.y||t.y>r.ur.y)},Bt=function(r,t){return r.ll.x>t.ur.x||t.ll.x>r.ur.x||r.ll.y>t.ur.y||t.ll.y>r.ur.y?null:{ll:{x:t.ll.x>r.ll.x?t.ll.x:r.ll.x,y:t.ll.y>r.ll.y?t.ll.y:r.ll.y},ur:{x:t.ur.x>r.ur.x?r.ur.x:t.ur.x,y:t.ur.y>r.ur.y?r.ur.y:t.ur.y}}},he=Number.EPSILON;he===void 0&&(he=Math.pow(2,-52));var Si=he*he,Gt=function(r,t){if(r>-he&&he>r&&t>-he&&he>t)return 0;var n=r-t;return Si*r*t>n*n?0:t>r?-1:1},Pi=function(){function r(){Z(this,r),this.reset()}return W(r,[{key:"reset",value:function(){this.xRounder=new Gn,this.yRounder=new Gn}},{key:"round",value:function(t,n){return{x:this.xRounder.round(t),y:this.yRounder.round(n)}}}]),r}(),Gn=function(){function r(){Z(this,r),this.tree=new Ot,this.round(0)}return W(r,[{key:"round",value:function(t){var n=this.tree.add(t),e=this.tree.prev(n);if(e!==null&&Gt(n.key,e.key)===0)return this.tree.remove(t),e.key;var i=this.tree.next(n);return i!==null&&Gt(n.key,i.key)===0?(this.tree.remove(t),i.key):t}}]),r}(),Ie=new Pi,Ce=function(r,t){return r.x*t.y-r.y*t.x},In=function(r,t){return r.x*t.x+r.y*t.y},Cn=function(r,t,n){var e=Ce({x:t.x-r.x,y:t.y-r.y},{x:n.x-r.x,y:n.y-r.y});return Gt(e,0)},Qe=function(r){return Math.sqrt(In(r,r))},Bi=function(r,t,n){var e={x:t.x-r.x,y:t.y-r.y},i={x:n.x-r.x,y:n.y-r.y};return In(i,e)/Qe(i)/Qe(e)},Rn=function(r,t,n){return t.y===0?null:{x:r.x+t.x/t.y*(n-r.y),y:n}},Nn=function(r,t,n){return t.x===0?null:{x:n,y:r.y+t.y/t.x*(n-r.x)}},ie=function(){function r(t,n){Z(this,r),t.events===void 0?t.events=[this]:t.events.push(this),this.point=t,this.isLeft=n}return W(r,null,[{key:"compare",value:function(t,n){var e=r.comparePoints(t.point,n.point);return e!==0?e:(t.point!==n.point&&t.link(n),t.isLeft!==n.isLeft?t.isLeft?1:-1:Ke.compare(t.segment,n.segment))}},{key:"comparePoints",value:function(t,n){return n.x>t.x?-1:t.x>n.x?1:n.y>t.y?-1:t.y>n.y?1:0}}]),W(r,[{key:"link",value:function(t){if(t.point===this.point)throw Error("Tried to link already linked events");for(var n=t.point.events,e=0,i=n.length;i>e;e++){var s=n[e];this.point.events.push(s),s.point=this.point}this.checkForConsuming()}},{key:"checkForConsuming",value:function(){for(var t=this.point.events.length,n=0;t>n;n++){var e=this.point.events[n];if(e.segment.consumedBy===void 0)for(var i=n+1;t>i;i++){var s=this.point.events[i];s.consumedBy===void 0&&e.otherSE.point.events===s.otherSE.point.events&&e.segment.consume(s.segment)}}}},{key:"getAvailableLinkedEvents",value:function(){for(var t=[],n=0,e=this.point.events.length;e>n;n++){var i=this.point.events[n];i!==this&&!i.segment.ringOut&&i.segment.isInResult()&&t.push(i)}return t}},{key:"getLeftmostComparator",value:function(t){var n=this,e=new Map,i=function(s){var o,a,l,u,c,h=s.otherSE;e.set(s,{sine:(o=n.point,a=t.point,l=h.point,u={x:a.x-o.x,y:a.y-o.y},c={x:l.x-o.x,y:l.y-o.y},Ce(c,u)/Qe(c)/Qe(u)),cosine:Bi(n.point,t.point,h.point)})};return function(s,o){e.has(s)||i(s),e.has(o)||i(o);var a=e.get(s),l=a.sine,u=a.cosine,c=e.get(o),h=c.sine,p=c.cosine;return 0>l||0>h?0>l&&0>h?p>u?-1:u>p?1:0:l>h?-1:h>l?1:0:p>u?1:u>p?-1:0}}}]),r}(),Gi=0,Ke=function(){function r(t,n,e,i){Z(this,r),this.id=++Gi,this.leftSE=t,t.segment=this,t.otherSE=n,this.rightSE=n,n.segment=this,n.otherSE=t,this.rings=e,this.windings=i}return W(r,null,[{key:"compare",value:function(t,n){var e=t.leftSE.point.x,i=n.leftSE.point.x,s=t.rightSE.point.x,o=n.rightSE.point.x;if(e>o)return 1;if(i>s)return-1;var a=t.leftSE.point.y,l=n.leftSE.point.y,u=t.rightSE.point.y,c=n.rightSE.point.y;if(i>e){if(a>l&&u>l)return 1;if(l>a&&l>u)return-1;var h=t.comparePoint(n.leftSE.point);if(0>h)return 1;if(h>0)return-1;var p=n.comparePoint(t.rightSE.point);return p!==0?p:-1}if(e>i){if(l>a&&c>a)return-1;if(a>l&&a>c)return 1;var f=n.comparePoint(t.leftSE.point);if(f!==0)return f;var v=t.comparePoint(n.rightSE.point);return 0>v?1:v>0?-1:1}if(l>a)return-1;if(a>l)return 1;if(o>s){var g=n.comparePoint(t.rightSE.point);if(g!==0)return g}if(s>o){var d=t.comparePoint(n.rightSE.point);if(0>d)return 1;if(d>0)return-1}if(s!==o){var y=u-a,w=s-e,b=c-l,E=o-i;if(y>w&&E>b)return 1;if(w>y&&b>E)return-1}return s>o?1:o>s||c>u?-1:u>c?1:n.id>t.id?-1:t.id>n.id?1:0}}]),W(r,[{key:"replaceRightSE",value:function(t){this.rightSE=t,this.rightSE.segment=this,this.rightSE.otherSE=this.leftSE,this.leftSE.otherSE=this.rightSE}},{key:"bbox",value:function(){var t=this.leftSE.point.y,n=this.rightSE.point.y;return{ll:{x:this.leftSE.point.x,y:n>t?t:n},ur:{x:this.rightSE.point.x,y:t>n?t:n}}}},{key:"vector",value:function(){return{x:this.rightSE.point.x-this.leftSE.point.x,y:this.rightSE.point.y-this.leftSE.point.y}}},{key:"isAnEndpoint",value:function(t){return t.x===this.leftSE.point.x&&t.y===this.leftSE.point.y||t.x===this.rightSE.point.x&&t.y===this.rightSE.point.y}},{key:"comparePoint",value:function(t){if(this.isAnEndpoint(t))return 0;var n=this.leftSE.point,e=this.rightSE.point,i=this.vector();if(n.x===e.x)return t.x===n.x?0:n.x>t.x?1:-1;if(t.x===n.x+(t.y-n.y)/i.y*i.x)return 0;var s=n.y+(t.x-n.x)/i.x*i.y;return t.y===s?0:s>t.y?-1:1}},{key:"getIntersection",value:function(t){var n=this.bbox(),e=t.bbox(),i=Bt(n,e);if(i===null)return null;var s=this.leftSE.point,o=this.rightSE.point,a=t.leftSE.point,l=t.rightSE.point,u=Ge(n,a)&&this.comparePoint(a)===0,c=Ge(e,s)&&t.comparePoint(s)===0,h=Ge(n,l)&&this.comparePoint(l)===0,p=Ge(e,o)&&t.comparePoint(o)===0;if(c&&u)return p&&!h?o:!p&&h?l:null;if(c)return h&&s.x===l.x&&s.y===l.y?null:s;if(u)return p&&o.x===a.x&&o.y===a.y?null:a;if(p&&h)return null;if(p)return o;if(h)return l;var f=function(v,g,d,y){if(g.x===0)return Nn(d,y,v.x);if(y.x===0)return Nn(v,g,d.x);if(g.y===0)return Rn(d,y,v.y);if(y.y===0)return Rn(v,g,d.y);var w=Ce(g,y);if(w==0)return null;var b={x:d.x-v.x,y:d.y-v.y},E=Ce(b,g)/w,O=Ce(b,y)/w;return{x:(v.x+O*g.x+(d.x+E*y.x))/2,y:(v.y+O*g.y+(d.y+E*y.y))/2}}(s,this.vector(),a,t.vector());return f===null?null:Ge(i,f)?Ie.round(f.x,f.y):null}},{key:"split",value:function(t){var n=[],e=t.events!==void 0,i=new ie(t,!0),s=new ie(t,!1),o=this.rightSE;this.replaceRightSE(s),n.push(s),n.push(i);var a=new r(i,o,this.rings.slice(),this.windings.slice());return ie.comparePoints(a.leftSE.point,a.rightSE.point)>0&&a.swapEvents(),ie.comparePoints(this.leftSE.point,this.rightSE.point)>0&&this.swapEvents(),e&&(i.checkForConsuming(),s.checkForConsuming()),n}},{key:"swapEvents",value:function(){var t=this.rightSE;this.rightSE=this.leftSE,this.leftSE=t,this.leftSE.isLeft=!0,this.rightSE.isLeft=!1;for(var n=0,e=this.windings.length;e>n;n++)this.windings[n]*=-1}},{key:"consume",value:function(t){for(var n=this,e=t;n.consumedBy;)n=n.consumedBy;for(;e.consumedBy;)e=e.consumedBy;var i=r.compare(n,e);if(i!==0){if(i>0){var s=n;n=e,e=s}if(n.prev===e){var o=n;n=e,e=o}for(var a=0,l=e.rings.length;l>a;a++){var u=e.rings[a],c=e.windings[a],h=n.rings.indexOf(u);h===-1?(n.rings.push(u),n.windings.push(c)):n.windings[h]+=c}e.rings=null,e.windings=null,e.consumedBy=n,e.leftSE.consumedBy=n.leftSE,e.rightSE.consumedBy=n.rightSE}}},{key:"prevInResult",value:function(){return this._prevInResult!==void 0||(this._prevInResult=this.prev?this.prev.isInResult()?this.prev:this.prev.prevInResult():null),this._prevInResult}},{key:"beforeState",value:function(){return this._beforeState!==void 0?this._beforeState:(this.prev?this._beforeState=(this.prev.consumedBy||this.prev).afterState():this._beforeState={rings:[],windings:[],multiPolys:[]},this._beforeState)}},{key:"afterState",value:function(){if(this._afterState!==void 0)return this._afterState;var t=this.beforeState();this._afterState={rings:t.rings.slice(0),windings:t.windings.slice(0),multiPolys:[]};for(var n=this._afterState.rings,e=this._afterState.windings,i=this._afterState.multiPolys,s=0,o=this.rings.length;o>s;s++){var a=this.rings[s],l=this.windings[s],u=n.indexOf(a);u===-1?(n.push(a),e.push(l)):e[u]+=l}for(var c=[],h=[],p=0,f=n.length;f>p;p++)if(e[p]!==0){var v=n[p],g=v.poly;if(h.indexOf(g)===-1)if(v.isExterior)c.push(g);else{h.indexOf(g)===-1&&h.push(g);var d=c.indexOf(v.poly);d!==-1&&c.splice(d,1)}}for(var y=0,w=c.length;w>y;y++){var b=c[y].multiPoly;i.indexOf(b)===-1&&i.push(b)}return this._afterState}},{key:"isInResult",value:function(){if(this.consumedBy)return!1;if(this._isInResult!==void 0)return this._isInResult;var t=this.beforeState().multiPolys,n=this.afterState().multiPolys;switch(oe.type){case"union":this._isInResult=t.length===0!=(n.length===0);break;case"intersection":var e,i;n.length>t.length?(e=t.length,i=n.length):(e=n.length,i=t.length),this._isInResult=i===oe.numMultiPolys&&i>e;break;case"xor":this._isInResult=Math.abs(t.length-n.length)%2==1;break;case"difference":var s=function(o){return o.length===1&&o[0].isSubject};this._isInResult=s(t)!==s(n);break;default:throw Error("Unrecognized operation type found ".concat(oe.type))}return this._isInResult}}],[{key:"fromRing",value:function(t,n,e){var i,s,o,a=ie.comparePoints(t,n);if(0>a)i=t,s=n,o=1;else{if(0>=a)throw Error("Tried to create degenerate segment at [".concat(t.x,", ").concat(t.y,"]"));i=n,s=t,o=-1}return new r(new ie(i,!0),new ie(s,!1),[e],[o])}}]),r}(),Dn=function(){function r(t,n,e){if(Z(this,r),!Array.isArray(t)||t.length===0||(this.poly=n,this.isExterior=e,this.segments=[],typeof t[0][0]!="number"||typeof t[0][1]!="number"))throw Error("Input geometry is not a valid Polygon or MultiPolygon");var i=Ie.round(t[0][0],t[0][1]);this.bbox={ll:{x:i.x,y:i.y},ur:{x:i.x,y:i.y}};for(var s=i,o=1,a=t.length;a>o;o++){if(typeof t[o][0]!="number"||typeof t[o][1]!="number")throw Error("Input geometry is not a valid Polygon or MultiPolygon");var l=Ie.round(t[o][0],t[o][1]);l.x===s.x&&l.y===s.y||(this.segments.push(Ke.fromRing(s,l,this)),this.bbox.ll.x>l.x&&(this.bbox.ll.x=l.x),this.bbox.ll.y>l.y&&(this.bbox.ll.y=l.y),l.x>this.bbox.ur.x&&(this.bbox.ur.x=l.x),l.y>this.bbox.ur.y&&(this.bbox.ur.y=l.y),s=l)}i.x===s.x&&i.y===s.y||this.segments.push(Ke.fromRing(s,i,this))}return W(r,[{key:"getSweepEvents",value:function(){for(var t=[],n=0,e=this.segments.length;e>n;n++){var i=this.segments[n];t.push(i.leftSE),t.push(i.rightSE)}return t}}]),r}(),Ii=function(){function r(t,n){if(Z(this,r),!Array.isArray(t))throw Error("Input geometry is not a valid Polygon or MultiPolygon");this.exteriorRing=new Dn(t[0],this,!0),this.bbox={ll:{x:this.exteriorRing.bbox.ll.x,y:this.exteriorRing.bbox.ll.y},ur:{x:this.exteriorRing.bbox.ur.x,y:this.exteriorRing.bbox.ur.y}},this.interiorRings=[];for(var e=1,i=t.length;i>e;e++){var s=new Dn(t[e],this,!1);this.bbox.ll.x>s.bbox.ll.x&&(this.bbox.ll.x=s.bbox.ll.x),this.bbox.ll.y>s.bbox.ll.y&&(this.bbox.ll.y=s.bbox.ll.y),s.bbox.ur.x>this.bbox.ur.x&&(this.bbox.ur.x=s.bbox.ur.x),s.bbox.ur.y>this.bbox.ur.y&&(this.bbox.ur.y=s.bbox.ur.y),this.interiorRings.push(s)}this.multiPoly=n}return W(r,[{key:"getSweepEvents",value:function(){for(var t=this.exteriorRing.getSweepEvents(),n=0,e=this.interiorRings.length;e>n;n++)for(var i=this.interiorRings[n].getSweepEvents(),s=0,o=i.length;o>s;s++)t.push(i[s]);return t}}]),r}(),_n=function(){function r(t,n){if(Z(this,r),!Array.isArray(t))throw Error("Input geometry is not a valid Polygon or MultiPolygon");try{typeof t[0][0][0]=="number"&&(t=[t])}catch{}this.polys=[],this.bbox={ll:{x:1/0,y:1/0},ur:{x:-1/0,y:-1/0}};for(var e=0,i=t.length;i>e;e++){var s=new Ii(t[e],this);this.bbox.ll.x>s.bbox.ll.x&&(this.bbox.ll.x=s.bbox.ll.x),this.bbox.ll.y>s.bbox.ll.y&&(this.bbox.ll.y=s.bbox.ll.y),s.bbox.ur.x>this.bbox.ur.x&&(this.bbox.ur.x=s.bbox.ur.x),s.bbox.ur.y>this.bbox.ur.y&&(this.bbox.ur.y=s.bbox.ur.y),this.polys.push(s)}this.isSubject=n}return W(r,[{key:"getSweepEvents",value:function(){for(var t=[],n=0,e=this.polys.length;e>n;n++)for(var i=this.polys[n].getSweepEvents(),s=0,o=i.length;o>s;s++)t.push(i[s]);return t}}]),r}(),Ci=function(){function r(t){Z(this,r),this.events=t;for(var n=0,e=t.length;e>n;n++)t[n].segment.ringOut=this;this.poly=null}return W(r,null,[{key:"factory",value:function(t){for(var n=[],e=0,i=t.length;i>e;e++){var s=t[e];if(s.isInResult()&&!s.ringOut){for(var o=null,a=s.leftSE,l=s.rightSE,u=[a],c=a.point,h=[];o=a,u.push(a=l),a.point!==c;)for(;;){var p=a.getAvailableLinkedEvents();if(p.length===0){var f=u[0].point,v=u[u.length-1].point;throw Error("Unable to complete output ring starting at [".concat(f.x,",")+" ".concat(f.y,"]. Last matching segment found ends at")+" [".concat(v.x,", ").concat(v.y,"]."))}if(p.length===1){l=p[0].otherSE;break}for(var g=null,d=0,y=h.length;y>d;d++)if(h[d].point===a.point){g=d;break}if(g===null){h.push({index:u.length,point:a.point});var w=a.getLeftmostComparator(o);l=p.sort(w)[0].otherSE;break}var b=h.splice(g)[0],E=u.splice(b.index);E.unshift(E[0].otherSE),n.push(new r(E.reverse()))}n.push(new r(u))}}return n}}]),W(r,[{key:"getGeom",value:function(){for(var t=this.events[0].point,n=[t],e=1,i=this.events.length-1;i>e;e++){var s=this.events[e].point;Cn(s,t,this.events[e+1].point)!==0&&(n.push(s),t=s)}if(n.length===1)return null;Cn(n[0],t,n[1])===0&&n.shift(),n.push(n[0]);for(var o=this.isExteriorRing()?1:-1,a=this.isExteriorRing()?0:n.length-1,l=this.isExteriorRing()?n.length:-1,u=[],c=a;c!=l;c+=o)u.push([n[c].x,n[c].y]);return u}},{key:"isExteriorRing",value:function(){if(this._isExteriorRing===void 0){var t=this.enclosingRing();this._isExteriorRing=!t||!t.isExteriorRing()}return this._isExteriorRing}},{key:"enclosingRing",value:function(){return this._enclosingRing===void 0&&(this._enclosingRing=this._calcEnclosingRing()),this._enclosingRing}},{key:"_calcEnclosingRing",value:function(){for(var t=this.events[0],n=1,e=this.events.length;e>n;n++){var i=this.events[n];ie.compare(t,i)>0&&(t=i)}for(var s=t.segment.prevInResult(),o=s?s.prevInResult():null;;){if(!s)return null;if(!o)return s.ringOut;if(o.ringOut!==s.ringOut)return o.ringOut.enclosingRing()!==s.ringOut?s.ringOut:s.ringOut.enclosingRing();s=o.prevInResult(),o=s?s.prevInResult():null}}}]),r}(),Tn=function(){function r(t){Z(this,r),this.exteriorRing=t,t.poly=this,this.interiorRings=[]}return W(r,[{key:"addInterior",value:function(t){this.interiorRings.push(t),t.poly=this}},{key:"getGeom",value:function(){var t=[this.exteriorRing.getGeom()];if(t[0]===null)return null;for(var n=0,e=this.interiorRings.length;e>n;n++){var i=this.interiorRings[n].getGeom();i!==null&&t.push(i)}return t}}]),r}(),Ri=function(){function r(t){Z(this,r),this.rings=t,this.polys=this._composePolys(t)}return W(r,[{key:"getGeom",value:function(){for(var t=[],n=0,e=this.polys.length;e>n;n++){var i=this.polys[n].getGeom();i!==null&&t.push(i)}return t}},{key:"_composePolys",value:function(t){for(var n=[],e=0,i=t.length;i>e;e++){var s=t[e];if(!s.poly)if(s.isExteriorRing())n.push(new Tn(s));else{var o=s.enclosingRing();o.poly||n.push(new Tn(o)),o.poly.addInterior(s)}}return n}}]),r}(),Ni=function(){function r(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Ke.compare;Z(this,r),this.queue=t,this.tree=new Ot(n),this.segments=[]}return W(r,[{key:"process",value:function(t){var n=t.segment,e=[];if(t.consumedBy)return t.isLeft?this.queue.remove(t.otherSE):this.tree.remove(n),e;var i=t.isLeft?this.tree.insert(n):this.tree.find(n);if(!i)throw Error("Unable to find segment #".concat(n.id," ")+"[".concat(n.leftSE.point.x,", ").concat(n.leftSE.point.y,"] -> ")+"[".concat(n.rightSE.point.x,", ").concat(n.rightSE.point.y,"] ")+"in SweepLine tree. Please submit a bug report.");for(var s=i,o=i,a=void 0,l=void 0;a===void 0;)(s=this.tree.prev(s))===null?a=null:s.key.consumedBy===void 0&&(a=s.key);for(;l===void 0;)(o=this.tree.next(o))===null?l=null:o.key.consumedBy===void 0&&(l=o.key);if(t.isLeft){var u=null;if(a){var c=a.getIntersection(n);if(c!==null&&(n.isAnEndpoint(c)||(u=c),!a.isAnEndpoint(c)))for(var h=this._splitSafely(a,c),p=0,f=h.length;f>p;p++)e.push(h[p])}var v=null;if(l){var g=l.getIntersection(n);if(g!==null&&(n.isAnEndpoint(g)||(v=g),!l.isAnEndpoint(g)))for(var d=this._splitSafely(l,g),y=0,w=d.length;w>y;y++)e.push(d[y])}if(u!==null||v!==null){var b=null;u===null?b=v:v===null?b=u:b=ie.comparePoints(u,v)>0?v:u,this.queue.remove(n.rightSE),e.push(n.rightSE);for(var E=n.split(b),O=0,Y=E.length;Y>O;O++)e.push(E[O])}e.length>0?(this.tree.remove(n),e.push(t)):(this.segments.push(n),n.prev=a)}else{if(a&&l){var C=a.getIntersection(l);if(C!==null){if(!a.isAnEndpoint(C))for(var z=this._splitSafely(a,C),q=0,ve=z.length;ve>q;q++)e.push(z[q]);if(!l.isAnEndpoint(C))for(var le=this._splitSafely(l,C),fe=0,Dt=le.length;Dt>fe;fe++)e.push(le[fe])}}this.tree.remove(n)}return e}},{key:"_splitSafely",value:function(t,n){this.tree.remove(t);var e=t.rightSE;this.queue.remove(e);var i=t.split(n);return i.push(e),t.consumedBy===void 0&&this.tree.insert(t),i}}]),r}(),Fn=typeof process<"u"&&de.POLYGON_CLIPPING_MAX_QUEUE_SIZE||1e6,Di=typeof process<"u"&&de.POLYGON_CLIPPING_MAX_SWEEPLINE_SEGMENTS||1e6,oe=new(function(){function r(){Z(this,r)}return W(r,[{key:"run",value:function(t,n,e){oe.type=t,Ie.reset();for(var i=[new _n(n,!0)],s=0,o=e.length;o>s;s++)i.push(new _n(e[s],!1));if(oe.numMultiPolys=i.length,oe.type==="difference")for(var a=i[0],l=1;i.length>l;)Bt(i[l].bbox,a.bbox)!==null?l++:i.splice(l,1);if(oe.type==="intersection"){for(var u=0,c=i.length;c>u;u++)for(var h=i[u],p=u+1,f=i.length;f>p;p++)if(Bt(h.bbox,i[p].bbox)===null)return[]}for(var v=new Ot(ie.compare),g=0,d=i.length;d>g;g++)for(var y=i[g].getSweepEvents(),w=0,b=y.length;b>w;w++)if(v.insert(y[w]),v.size>Fn)throw Error("Infinite loop when putting segment endpoints in a priority queue (queue size too big). Please file a bug report.");for(var E=new Ni(v),O=v.size,Y=v.pop();Y;){var C=Y.key;if(v.size===O){var z=C.segment;throw Error("Unable to pop() ".concat(C.isLeft?"left":"right"," SweepEvent ")+"[".concat(C.point.x,", ").concat(C.point.y,"] from segment #").concat(z.id," ")+"[".concat(z.leftSE.point.x,", ").concat(z.leftSE.point.y,"] -> ")+"[".concat(z.rightSE.point.x,", ").concat(z.rightSE.point.y,"] from queue. ")+"Please file a bug report.")}if(v.size>Fn)throw Error("Infinite loop when passing sweep line over endpoints (queue size too big). Please file a bug report.");if(E.segments.length>Di)throw Error("Infinite loop when passing sweep line over endpoints (too many sweep line segments). Please file a bug report.");for(var q=E.process(C),ve=0,le=q.length;le>ve;ve++){var fe=q[ve];fe.consumedBy===void 0&&v.insert(fe)}O=v.size,Y=v.pop()}Ie.reset();var Dt=Ci.factory(E.segments);return new Ri(Dt).getGeom()}}]),r}()),_i=function(r){for(var t=arguments.length,n=Array(t>1?t-1:0),e=1;t>e;e++)n[e-1]=arguments[e];return oe.run("union",r,n)},Ti=function(r){for(var t=arguments.length,n=Array(t>1?t-1:0),e=1;t>e;e++)n[e-1]=arguments[e];return oe.run("difference",r,n)};function Wn(r,t,n){n===void 0&&(n={});var e=K(r),i=K(t),s=_i(e.coordinates,i.coordinates);return s.length===0?null:s.length===1?ge(s[0],n.properties):Oe(s,n.properties)}var N={getLineCenter:function(r,t){r instanceof BMapGL.Point&&t instanceof BMapGL.Point&&(r=G([r.lng,r.lat]),t=G([t.lng,t.lat]));var n=function(e,i){return ht(e,H(e,i)/2,pt(e,i))}(r,t);return{geoCenter:n,bdCenter:new BMapGL.Point(n.geometry.coordinates[0],n.geometry.coordinates[1])}},getDistance:function(r,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"kilometers";return r instanceof BMapGL.Point&&t instanceof BMapGL.Point&&(r=G([r.lng,r.lat]),t=G([t.lng,t.lat])),H(r,t,{units:n})},getLength:function(r){var t;return(t={units:arguments.length>1&&arguments[1]!==void 0?arguments[1]:"kilometers"})===void 0&&(t={}),qt(r,function(n,e){var i=e.geometry.coordinates;return n+H(i[0],i[1],t)},0)},getPolygonCenter:function(r){var t=function(n,e){e===void 0&&(e={});var i=0,s=0,o=0;return re(n,function(a){i+=a[0],s+=a[1],o++},!0),G([i/o,s/o],e.properties)}(r);return{geoCenter:t,bdCenter:new BMapGL.Point(t.geometry.coordinates[0],t.geometry.coordinates[1])}},getPolygonArea:function(r){return r instanceof BMapGL.Polygon&&(r=r.toGeoJSON()),mi(r)/1e6},unionPolygon:function(r){for(var t=r[0],n=0,e=r.length;e>n;n++)t=Wn(t,r[n]);return t},isDisjoint:function(r,t){return!kt(r,t)},intersect:function(r,t){var n=[];if(t.__proto__ instanceof BMapGL.Overlay){if(!t.toGeoJSON)return n;t=t.toGeoJSON()}return r.forEach(function(e){var i=e;if(e.__proto__ instanceof BMapGL.Overlay){if(!e.toGeoJSON)return!0;i=e.toGeoJSON()}N.isDisjoint(i,t)&&n.push(e)}),n},isContains:function(r,t){return Li(r,t)},isPointOnLine:function(r,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{ignoreEndVertices:!1};return r instanceof BMapGL.Point&&(r=r.toGeoJSON()),t instanceof BMapGL.Polyline&&(t=t.toGeoJSON()),Me(r,t,n)},isPointInPolygon:function(r,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{ignoreBoundary:!0};return r instanceof BMapGL.Point&&(r=r.toGeoJSON()),t instanceof BMapGL.Polygon&&(t=t.toGeoJSON()),te(r,t,n)},getDistance2Lines:function(r,t){return di(G([r.lng,r.lat]),R(t))},getNearestPointOnLine:function(r,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"kilometers",e=G([r.lng,r.lat]),i=[];t.geometry.type==="Polygon"?i=t.geometry.coordinates[0]:t.geometry.type==="LineString"&&(i=t.geometry.coordinates);var s=pn(R(i),e,n),o=new BMapGL.Point(s.geometry.coordinates[0],s.geometry.coordinates[1]);return{geoPoint:e,geoNearestPoint:s,toLineDistance:H(e,s),bdNearestPoint:o}}},Fi=function(r){S(n,r);var t=P(n);function n(e){var i;return L(this,n),(i=t.call(this)).point=void 0,i.overlay=void 0,i.map=e,i}return x(n,[{key:"confirmOperate",value:function(){var e=""+this.overlay;e==="Polyline"||e==="Polygon"?this.overlay.disableEditing():e==="Marker"&&this.overlay.disableDragging(),this.dispatchEvent(new A("ok",this.overlay))}},{key:"cancelOperate",value:function(){this.dispatchEvent(new A("cancel",this.overlay))}},{key:"setPosition",value:function(e,i){this.point=e;var s=this.map.pointToOverlayPixel(this.point);i?(this.div.classList.remove("operateLeft"),this.div.style.left=s.x+15+"px"):(this.div.classList.add("operateLeft"),this.div.style.left=s.x-105+"px"),this.div.style.top=s.y-16+"px"}},{key:"draw",value:function(){var e=this.map.pointToOverlayPixel(this.point);this.div.style.left=e.x+15+"px",this.div.style.top=e.y-16+"px"}},{key:"calculateOverlay",value:function(){var e={data:0};switch(""+this.overlay){case"Polyline":e.data=1e3*N.getLength(this.overlay.toGeoJSON());break;case"Polygon":e.data=1e6*N.getPolygonArea(this.overlay);break;case"Circle":var i=this.overlay.getRadius();e.data=Math.PI*i*i}return e.data=!e.data||0>e.data?0:e.data.toFixed(2),e}}]),n}(nt(BMapGL.Overlay,j)),Re=function(r){S(n,r);var t=P(n);function n(e,i){var s;return L(this,n),(s=t.call(this,e)).limit=void 0,s.element=i,s}return x(n,[{key:"setData",value:function(e){for(var i in e)e.hasOwnProperty(i)&&(this[i]=e[i]);this.type=""+this.overlay,this.type==="Marker"?(this.overlayTypeText="可以拖动图标改变位置",this.unit=this.type==="Polyline"?"万米":"万平方米"):this.overlayTypeText=this.type==="Polyline"?"长度不超过"+(this.limit||1e10)/1e4+"万米!":"面积不超过"+(this.limit||1e10)/1e4+"万平方米!"}},{key:"initialize",value:function(e){var i;return this.element?(i=this.div=this.element).className="operateWindow":((i=this.div=document.createElement("div")).className="operateWindow",i.innerHTML=`
+ + + `.concat(this.overlayTypeText,` +
`)),e.getPanes().markerPane.appendChild(this.div),this.bind(),this.updateWindow(),i}},{key:"bind",value:function(){var e=this;if(this.element)throw console.log("自定义operate必须重写bind方法"),{errMsg:"自定义operate必须重写bind方法"};document.getElementById("confirmOperate").addEventListener("click",function(i){var s=e.calculateOverlay();e.overlay.geometryCalculate=s,e.confirmOperate()}),document.getElementById("cancelOperate").addEventListener("click",function(i){e.cancelOperate()})}},{key:"updateWindow",value:function(){if(this.element)throw console.log("自定义operate必须重写updateWindow方法"),{errMsg:"自定义operate必须重写updateWindow方法"};var e=this.limit||1e7,i=this.calculateOverlay();document.getElementById("confirmOperate")&&(i.data>~~e?(document.getElementById("confirmOperate").style.display="none",document.getElementById("warnOperate").style.display="block"):(document.getElementById("confirmOperate").style.display="block",document.getElementById("warnOperate").style.display="none"))}}]),n}(Fi),zn=function(r){S(n,r);var t=P(n);function n(e,i){var s;return L(this,n),(s=t.call(this))._enableEdgeMove=!1,s.cursor="crosshair",s.container=void 0,s.map=e,i&&(s.cursor=i),s}return x(n,[{key:"initialize",value:function(e){var i=this;this.dispose();var s=e.getSize(),o=this.container=document.createElement("div");return o.style.cssText=`position:absolute;background:transparent; + cursor:`.concat(this.cursor,";width:").concat(s.width,"px;height:").concat(s.height,"px"),e.addEventListener("resize",function(a){i.adjustSize(a.size)}),e.getPanes().floatPane.appendChild(o),this.bindEvent(),o}},{key:"draw",value:function(){var e=this.map.pixelToPoint(new BMapGL.Pixel(0,0)),i=this.map.pointToOverlayPixel(e);this.container.style.left=i.x+"px",this.container.style.top=i.y+"px"}},{key:"setCursor",value:function(e){this.cursor=e,this.container&&(this.container.style.cursor=e)}},{key:"adjustSize",value:function(e){this.container.style.width=e.width+"px",this.container.style.height=e.height+"px"}},{key:"bindEvent",value:function(){for(var e=this,i=null,s=null,o=function(c){return{x:c.clientX,y:c.clientY}},a=function(c){var h=c.type,p=e.getDrawLatlngPoint(c),f=function(g){c.point=p,e.dispatchEvent(c)};h==="mousedown"&&(i=o(c));var v=o(c);h==="click"?5>Math.abs(v.x-i.x)&&5>Math.abs(v.y-i.y)&&(s&&5>Math.abs(v.x-s.x)&&5>Math.abs(v.y-s.y)?s=null:(f(),s=o(c))):f()},l=["click","mousedown","mousemove","mouseup","dblclick","rightclick"],u=l.length;u--;)m.on(this.container,l[u],a,this._listeners);m.on(this.container,"mousemove",function(c){e._enableEdgeMove&&e.mousemoveAction(c)},this._listeners)}},{key:"mousemoveAction",value:function(e){var i=this,s=this.map.pointToPixel(this.getDrawLatlngPoint(e)),o=function(a){var l=a.clientX,u=a.clientY;return a.changedTouches&&(l=a.changedTouches[0].clientX,u=a.changedTouches[0].clientY),new BMapGL.Pixel(l,u)}(e);s=new BMapGL.Pixel(o.x-(o.x-s.x),o.y-(o.y-s.y)),this.draggingMovePixel=s,this.panByX=this.panByY=0,s.x>=4&&20>=s.x||s.x>=this.map.width-20&&this.map.width-4>=s.x||s.y>=4&&50>=s.y||s.y>=this.map.height-10&&this.map.height-4>=s.y?(s.x>20?this.map.width-20>s.x||(this.panByX=-8):this.panByX=8,s.y>50?this.map.height-10>s.y||(this.panByY=-8):this.panByY=8,this.edgeMoveTimer||(this.edgeMoveTimer=setInterval(function(){i.map.panBy(i.panByX,i.panByY,{noAnimation:!0})},30))):this.edgeMoveTimer&&(clearInterval(this.edgeMoveTimer),this.edgeMoveTimer=null)}},{key:"getDrawLatlngPoint",value:function(e){var i=m.getTarget(e),s=e.offsetX||e.layerX||0,o=e.offsetY||e.layerY||0;for(i.nodeType!==1&&(i=i.parentNode);i&&i!==this.map.getContainer();)i.clientWidth===0&&i.clientHeight===0&&i.offsetParent&&i.offsetParent.nodeName==="TD"||(s+=i.offsetLeft||0,o+=i.offsetTop||0),i=i.offsetParent;var a=new BMapGL.Pixel(s,o);return this.map.pixelToPoint(a)}},{key:"enableEdgeMove",value:function(){this._enableEdgeMove=!0}},{key:"disableEdgeMove",value:function(){clearInterval(this.edgeMoveTimer),this._enableEdgeMove=!1}}]),n}(nt(BMapGL.Overlay,j)),He=function(r){S(n,r);var t=P(n);function n(e){var i,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(L(this,n),(i=t.call(this)).isOpen=void 0,i.drawType=void 0,i.instances=[],i.selectInstance=[],i.mask=void 0,i.map=void 0,i.operate=void 0,i._currentStatus=I.STATUS_FREE,i._runningAction=null,i._stopClick=!1,!(e instanceof BMapGL.Map))throw Error("Scene实例化必须输入map参数");return i.options={},m.deepCopy(qn,2,i.options,0,[Re]),m.copyOptions(i.options,s,[Re]),i.map=e,i.mask=new zn(e,i.options.drawCursor),i.operate=i.options.operate||new Re(e),i.options.operate&&(i.options.operate.ignore=!0),i.addMapListener(e),document.onkeydown=function(o){o.keyCode===i.options.keyCode&&(i._stopClick=!0)},document.onkeyup=function(o){o.keyCode===i.options.keyCode&&(i._stopClick=!1)},i}return x(n,[{key:"currentStatus",get:function(){return this._currentStatus},set:function(e){this._currentStatus=e,this.updateMapListenerControl(e)}},{key:"runningAction",get:function(){return this._runningAction},set:function(e){this._runningAction=e}},{key:"addMapListener",value:function(e){var i=this;this.mapSelect=new it(e),this.mapSelect.addEventListener(k.CLICK,function(s){i._currentStatus!==I.STATUS_MOVE&&i.dispatchEvent(s)}),this.mapSelect.addEventListener(k.RIGHTCLICK,function(s){i._currentStatus!==I.STATUS_MOVE&&i.dispatchEvent(s)}),this.mapSelect.addEventListener(k.MOVE,function(s){i._currentStatus!==I.STATUS_DRAWING&&i._currentStatus!==I.STATUS_EDITER&&i._currentStatus!==I.STATUS_MOVE&&i.dispatchEvent(s)})}},{key:"updateMapListenerControl",value:function(e){if(this.mapSelect)switch(e){case I.STATUS_FREE:this.mapSelect.open();break;case I.STATUS_EDITER:this.mapSelect.openClick(),this.mapSelect.openMouse();break;case I.STATUS_DRAWING:case I.STATUS_MOVE:this.mapSelect.closeClick(),this.mapSelect.openMouse();break;default:this.mapSelect.open()}}},{key:"open",value:function(){return this.isOpen=!0,this.mask||(this.mask=new zn(this.map,this.options.drawCursor)),this.map.addOverlay(this.mask),this.setCurrentDrawType(this.drawType),!0}},{key:"close",value:function(){var e=0>=arguments.length||arguments[0]===void 0||arguments[0];this.isOpen=!1,this.closeRunningAction(),e&&(this.currentStatus=I.STATUS_FREE),this.mask&&this.map.removeOverlay(this.mask)}},{key:"closeRunningAction",value:function(){this.runningAction&&this.runningAction.close instanceof Function&&this.runningAction.close()}},{key:"addOverlay",value:function(e){this.instances.find(function(i){return i===e})||this.instances.push(e)}},{key:"removeOverlay",value:function(e){var i=this.instances.findIndex(function(s){return s===e});i!==-1&&(this.map.removeOverlay(this.instances[i]),this.instances.splice(i)),this.operate&&this.map.removeOverlay(this.operate)}},{key:"clearData",value:function(){var e=this;this.instances.forEach(function(i){e.map.removeOverlay(i)}),this.instances.length=0}},{key:"addSelectDrawData",value:function(e){this.selectInstance.find(function(i){return i===e})||this.selectInstance.push(e)}},{key:"hasOverlay",value:function(e){var i=this.instances.findIndex(function(s){return s===e});return i>-1||(i=this.selectInstance.findIndex(function(s){return s===e}))>-1}},{key:"clearSelectDrawData",value:function(){var e=this;this.selectInstance.forEach(function(i){e.map.removeOverlay(i)}),this.selectInstance.length=0}},{key:"setCurrentDrawType",value:function(e){this.drawType=e}},{key:"attachSnapSource",value:function(e){this._attachSnapSource=e}},{key:"setDrawCursor",value:function(e){this.mask&&this.mask.setCursor(e)}},{key:"getStopStatus",value:function(){return this._stopClick}}]),n}(j),pe=function(r,t,n,e){var i,s=arguments.length>4&&arguments[4]!==void 0?arguments[4]:[],o=(i=e.getZoom(),Math.pow(2,18-i));n*=o;var a,l=jt(t);try{var u=function(){var h=a.value;if(s.find(function(C){return h===C}))return"continue";if(h instanceof BMapGL.Marker){var p=h.getPosition(),f=1e3*N.getDistance(r,p,"kilometers");return n>f?{v:p}:"continue"}if(h.toGeoJSON){for(var v=h.getPath(),g=[],d=h.toGeoJSON(),y=0;v.length-1>y;y++)g.push(N.getLineCenter(v[y],v[y+1]).bdCenter);var w,b=jt(v.concat(g));try{for(b.s();!(w=b.n()).done;){var E=w.value,O=1e3*N.getDistance(r,E,"kilometers");if(n>O)return{v:E}}}catch(C){b.e(C)}finally{b.f()}var Y=N.getNearestPointOnLine(r,d);if(n>1e3*Y.toLineDistance)return{v:Y.bdNearestPoint}}};for(l.s();!(a=l.n()).done;){var c=u();if(c!=="continue"&&_(c)==="object")return c.v}}catch(h){l.e(h)}finally{l.f()}return null},ae=function(r){S(n,r);var t=P(n);function n(e){var i,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(L(this,n),(i=t.call(this)).type=void 0,i.isOpen=void 0,i.isOnMap=!0,i.isSeries=!0,i.skipEditing=!1,i.isSelectDraw=!1,i.enableCalculate=!1,i.enableSnap=!0,i.snapDistance=10,i.enableDragging=!1,i.mouseLnglat=void 0,i.match=null,i.matchOverlay=null,i.matchOverlayRadius=5,i.limitPoint=-1,!e)return Tt(i);if(!(e instanceof He))throw Error("DrawBase实例化必须输入scene参数");i.scene=e;var o={};return m.copyOptionsToNew(i.scene.options,s,o),m.copyNotExitOptions(o,i.scene.options),i.defineProperty(o),i.options=o,i.setSnapPointType(i.options),i.setBaseOptions(i.options.baseOpts),i}return x(n,[{key:"bindEvent",value:function(){}},{key:"setBaseOptions",value:function(){this.baseOptions=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{}}},{key:"setCurrentStatus",value:function(e){this.scene.currentStatus=e}},{key:"skipEdit",value:function(e){e||this.skipEditing?this.scene.operate.confirmOperate():this.scene.mask.hide()}},{key:"emitEventIsonmap",value:function(e){var i=X.DRAW_ON_MAP;this.isSelectDraw&&(i=X.SELECT_ON_MAP);var s=new A(k.COMPLETE,{overlay:e,from:i});this.dispatchEvent(s),this.scene.dispatchEvent(s)}},{key:"emitEventIsnomap",value:function(e){this.scene.currentStatus=I.STATUS_FREE;var i=X.DRAW_NO_MAP;this.isSelectDraw&&(i=X.SELECT_NO_MAP);var s=new A(k.COMPLETE,{overlay:e,from:i});this.dispatchEvent(s),this.scene.dispatchEvent(s)}},{key:"registEvent",value:function(e){var i=this;e.addEventListener(k.INIT,function(s){i.skipEdit()}),e.addEventListener(k.COMPLETE,function(s){i.isSelectDraw?i.scene.addSelectDrawData(s.target.overlay):i.scene.addOverlay(s.target.overlay),s.continue!==!1&&i.isSeries&&(i.isOpen=!0,i.scene.mask.show(),i.bindEvent()),i.dispatchEvent(s),i.editOpe=null}),e.addEventListener(k.CANCEL,function(s){i.isSeries&&(i.isOpen=!0,i.scene.mask.show(),i.bindEvent()),i.dispatchEvent(s),i.editOpe=null})}},{key:"setRunningAction",value:function(e,i){if(e){if(this.isSeries&&this.scene.runningAction===this)return void i();this.scene.closeRunningAction(),this.scene.mask.show(),this.scene.runningAction=this,i(),this.callback&&this.callback()}else this.scene.runningAction=null,this.isOpen=!1,this.scene.mask.hide()}},{key:"closeEdit",value:function(){this.editOpe&&this.editOpe.close()}},{key:"closeAll",value:function(){this.close(),this.closeEdit(),this.scene.mask.disableEdgeMove()}},{key:"open",value:function(e){this.scene&&(this.callback=e,this.scene.drawType=this.type,this.scene.open(),this.isOpen=!0,this.bindEvent())}},{key:"close",value:function(e){e&&e()}},{key:"addLabel",value:function(e){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},s=new BMapGL.Label(e,{position:i.position,offset:i.offset||new BMapGL.Size(0,0)});return s.setStyle(i.labelOptions),s}},{key:"setRadius",value:function(){var e=this.scene.map.getZoomUnits();this.matchOverlay.setRadius(this.matchOverlayRadius*e)}},{key:"addMatchOverlay",value:function(e){this.matchOverlay instanceof BMapGL.Circle?(this.setRadius(),this.matchOverlay.setCenter(e),this.scene.map.addEventListener("zoomend",this._setRadius=this.setRadius.bind(this)),this.scene.map.addOverlay(this.matchOverlay)):(this.scene.map.addOverlay(this.matchOverlay),this.matchOverlay.setPosition(e))}},{key:"removeMatchOverlay",value:function(){this.scene.map.removeOverlay(this.matchOverlay),this._setRadius&&(this.scene.map.removeEventListener("zoomend",this._setRadius),this._setRadius=null)}},{key:"getSnap",value:function(e){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.scene.instances,s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:this.snapDistance,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.scene.map,l=null;return this.removeMatchOverlay(),l||(l=pe(e,i,o,a)),!l&&this.scene._attachSnapSource&&(l=pe(e,this.scene._attachSnapSource,o,a)),l||(l=pe(e,s,o,a)),l&&this.addMatchOverlay(l),l}}]),n}(j),It=function(r){S(n,r);var t=P(n);function n(e){var i,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return L(this,n),(i=t.call(this,e,s)).type=B.DRAWING_MARKER,i.scene.setCurrentDrawType(i.type),i.mouseMoveModel=s.mouseMove||!1,i.isOpen&&i.open(),i}return x(n,[{key:"clickAction",value:function(e){var i=this;this.scene.getStopStatus()||this.marker&&!this.isOnMap||(this.scene.mask.removeEventListener("mousemove",this.mousemove),this.scene.mask.removeEventListener("click",this.click),this.marker=new BMapGL.Marker(e.point,this.baseOptions),this.scene.map.addOverlay(this.marker),this.isSeries?this.isOnMap||this.bindEvent():this.scene.mask.hide(),this.isOnMap?(this.isSeries?(this.scene.mask.show(),this.bindEvent()):this.setCurrentStatus(I.STATUS_FREE),this.scene.addOverlay(this.marker),this.emitEventIsonmap(this.marker),this.enableDragging&&(this.marker.enableDragging(),this.marker.addEventListener("dragstart",this.centerDragstart.bind(this)),this.marker.addEventListener("dragging",this.centerDragging.bind(this)),this.marker.addEventListener("dragend",this.centerDragend.bind(this)))):(setTimeout(function(){i.scene.map.removeOverlay(i.marker),i.marker=null},200),this.emitEventIsnomap(this.marker)))}},{key:"moveAction",value:function(e){var i=new A(k.MOVE,e);this.dispatchEvent(i)}},{key:"centerDragstart",value:function(e){if(this.enableSnap){var i,s=e.target,o=BMapGL.Projection.convertMC2LL(s.point);(i=this.getSnap(o,this.scene.instances))&&(e.point=BMapGL.Projection.convertLL2MC(i),s.setPoint(e.point))}}},{key:"centerDragging",value:function(e){if(this.enableSnap){var i,s=e.target,o=BMapGL.Projection.convertMC2LL(s.point);(i=this.getSnap(o,this.scene.instances))&&(e.point=BMapGL.Projection.convertLL2MC(i),s.setPoint(e.point))}}},{key:"centerDragend",value:function(e){this.emitEventIsonmap(this.marker)}},{key:"bindEvent",value:function(){var e=this;this.isOpen&&$(J(n.prototype),"setRunningAction",this).call(this,!0,function(){e.setCurrentStatus(I.STATUS_DRAWING),e.mouseMoveModel&&e.scene.mask.addEventListener("mousemove",e.mousemove=e.moveAction.bind(e)),e.scene.mask.addEventListener("click",e.click=e.clickAction.bind(e))})}},{key:"close",value:function(e){$(J(n.prototype),"setRunningAction",this).call(this,!1),this.scene.mask.removeEventListener("click",this.click),this.mouseMoveModel&&this.scene.mask.addEventListener("mousemove",this.mousemove),e&&e()}}]),n}(ae),Ze=function(r){S(n,r);var t=P(n);function n(e,i){var s,o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(L(this,n),(s=t.call(this)).overlay=null,s.centerIcon=null,s.moveIcon=null,s.circleMoveIcon=null,!(e instanceof He))throw Error("EditBase实例化必须输入scene参数");s.scene=e;var a={};return m.copyOptionsToNew(s.scene.options,o,a),m.copyNotExitOptions(a,s.scene.options),s.target=i||Le(s),s.setOptions(a),s}return x(n,[{key:"setOptions",value:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.defineProperty(e),this.baseOptions=this.target.__proto__ instanceof ae?this.target.baseOptions:e.baseOpts}},{key:"saveSouce",value:function(e){this.source=this.type===B.DRAWING_CIRCLE?{center:e.getCenterIn().latLng,radius:e.getRadius()}:e.toGeoJSON()}},{key:"restoreSouce",value:function(e){this.source&&(this.type===B.DRAWING_CIRCLE?(e.setCenter(this.source.center),e.setRadius(this.source.radius)):e.updateByGeoJSON(this.source),this.restoreOpe(e))}},{key:"restoreOpe",value:function(){}},{key:"open",value:function(e,i,s){var o=this;this.scene&&(this.originStyle={icon:e._config.icon,fillColor:e._config.fillColor,fillOpacity:e._config.fillOpacity,strokeColor:e._config.strokeColor,strokeWeight:e._config.strokeWeight,strokeOpacity:e._config.strokeOpacity},this.overlay=e,this.overlay.setOptions(this.baseOptions),this.setRunningAction(!0,function(){o.setSceneStatus(I.STATUS_EDITER),o.edit(e,i),s&&s()}))}},{key:"emitOkEvent",value:function(e){var i=1>=arguments.length||arguments[1]===void 0||arguments[1],s=arguments.length>2&&arguments[2]!==void 0&&arguments[2],o=X.DRAW_ON_MAP;this.target.__proto__ instanceof ae?this.target.isSelectDraw&&(o=X.SELECT_ON_MAP):o=X.EDIT_ON_MAP;var a=new A(k.COMPLETE,{overlay:e,from:o});a.continue=i,this.dispatchEvent(a),(s||this.type!==B.DRAWING_MARKER)&&this.scene.dispatchEvent(a)}},{key:"close",value:function(){var e=arguments.length>0&&arguments[0]!==void 0&&arguments[0],i=arguments.length>1?arguments[1]:void 0;this.overlay&&(this.overlay.setOptions(this.originStyle),this.setRunningAction(!1),this.setSceneStatus(I.STATUS_FREE),this.operateWindow&&(this.removeAttachOverlays(),this.scene.map.removeOverlay(this.operateWindow)),e||this.emitOkEvent(this.overlay,e),this.type!==B.DRAWING_POLYLINE&&this.type!==B.DRAWING_POLYGON||this.overlay.removeEventListener("lineupdate",this.lineUpdate),this.closeOpe(this.overlay),i&&i())}},{key:"setRunningAction",value:function(e,i){e?(this.scene.closeRunningAction(),this.scene.runningAction=this,i()):this.scene.runningAction=null}},{key:"closeOpe",value:function(e){}},{key:"addOperateWindow",value:function(e){var i=this,s=X.DRAW_ON_MAP;this.target.__proto__ instanceof ae?this.target.isSelectDraw&&(s=X.SELECT_ON_MAP):(this.saveSouce(e.overlay),s=X.EDIT_ON_MAP);var o=this.operateWindow=this.scene.operate||new Re(this.scene.map);return o.setData(e),o.addEventListener("ok",function(a){i.removeAttachOverlays(),i.close(!0),i.emitOkEvent(a.target),o._listeners={}}),o.addEventListener("cancel",function(a){i.removeAttachOverlays(),i.close(!0),i.target.__proto__ instanceof ae?i.scene.map.removeOverlay(e.overlay):i.restoreSouce(e.overlay);var l=new A(k.CANCEL,{overlay:a.target,from:s+="-cancel"});i.dispatchEvent(l),i.scene.dispatchEvent(l),o._listeners={}}),this.scene.map.addOverlay(o),o}},{key:"removeAttachOverlays",value:function(){for(var e=this.scene.map,i=this.overlays,s=0;i.length>s;s++)if(Array.isArray(i[s]))for(var o in i[s])e.removeOverlay(i[s][o]);else e.removeOverlay(i[s])}},{key:"getSnap",value:function(e){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:this.target.snapDistance,o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.scene.map,a=null;return a||(a=pe(e,arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.scene.instances,s,o)),a||(a=pe(e,i,s,o)),a}}]),n}(j),Ct=function(r){S(n,r);var t=P(n);function n(e,i,s){var o;return L(this,n),(o=t.call(this,e,i,s)).type=B.DRAWING_POLYLINE,o.scene.setCurrentDrawType(o.type),o}return x(n,[{key:"edit",value:function(e,i){var s=this;this.overlay=e;var o=!1;this instanceof n&&this.target.__proto__ instanceof ae&&(o=!0);var a={limit:i||null,point:this.getNorthEast(e.getPath()),overlay:e};this.overlays=[];var l=this.addOperateWindow(a);this.lineUpdate=function(u){var c=s.getNorthEast(u.currentTarget.getPath());l.setPosition(c,!0),l.updateWindow();var h=new A(k.CHANGE,u.currentTarget);s.target.dispatchEvent(h)},this.onlinevertexdragging=function(u){var c=u.overlay,h=BMapGL.Projection.convertMC2LL(c.getPoint()),p=null;(p=o?s.getSnap(h,s.scene.instances,[s.overlay]):s.getSnap(h,s.scene.instances))&&(u.from.point=BMapGL.Projection.convertLL2MC(p),c.setPoint(u.from.point))},e.enableEditing(),e.addEventListener("lineupdate",this.lineUpdate),e.addEventListener("onlinevertexdragging",this.onlinevertexdragging),this.dispatchEvent(new A(k.INIT))}},{key:"restoreOpe",value:function(e){e.disableEditing()}},{key:"closeOpe",value:function(e){e.disableEditing()}},{key:"getNorthEast",value:function(e){for(var i=0,s=0,o=0;e.length>o;o++)e[o].lng>i&&(i=e[o].lng,s=o);return e[s]}}]),n}(Ze),jn=function(r){S(n,r);var t=P(n);function n(e,i,s){var o;return L(this,n),(o=t.call(this,e,i,s)).type=B.DRAWING_POLYGON,o.scene.setCurrentDrawType(o.type),o}return x(n)}(Ct),Ne=function(r){S(n,r);var t=P(n);function n(e){var i,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return L(this,n),(i=t.call(this,e,s)).type=B.DRAWING_POLYLINE,i.points=[],i.drawPoint=[],i.overlay=null,i.isBinded=!1,i.tipLabel=null,i.measureRes=0,i.scene.setCurrentDrawType(i.type),i.isOpen&&i.open(),i}return x(n,[{key:"getNorthEast",value:function(e){for(var i=0,s=0,o=0;e.length>o;o++)e[o].lng>i&&(i=e[o].lng,s=o);return e[s]}},{key:"startAction",value:function(e){this.scene.getStopStatus()||(this.points.push(this.match?this.match:e.point),this.drawPoint=this.points.concat(this.points[this.points.length-1]),this.points.length===1?(this.scene.drawType===B.DRAWING_POLYLINE?this.overlay=new BMapGL.Polyline(this.drawPoint,this.baseOptions):this.scene.drawType===B.DRAWING_POLYGON&&(this.overlay=new BMapGL.Polygon(this.drawPoint,this.baseOptions)),this.scene.map.addOverlay(this.overlay)):(this.overlay.setPath(this.drawPoint),this.limitPoint>0&&this.points.length>=this.limitPoint&&this.scene.drawType===B.DRAWING_POLYLINE&&this.dblclickAction(e)),this.isBinded||(this.isBinded=!0,this.scene.mask.enableEdgeMove(),this.scene.mask.removeEventListener("mousemove",this.mousemove),this.scene.mask.addEventListener("mousemove",this.mousemove=this.moveAction.bind(this)),this.scene.mask.addEventListener("dblclick",this.dblclick=this.dblclickAction.bind(this))))}},{key:"moveAction",value:function(e){if(this.scene.getStopStatus())this.scene.map.removeOverlay(this.tipLabel);else{var i=e.point;if(this.enableSnap){var s=[];if(this.overlay.points.length>2){var o=this.overlay.getPath().slice(0,this.overlay.points.length-1);s.push(new this.overlay.constructor(o))}if(this.match=this.getSnap(i,this.scene.instances,s),this.match)return void this.overlay.setPositionAt(this.drawPoint.length-1,this.match)}this.match=null,this.overlay.setPositionAt(this.drawPoint.length-1,e.point),this.scene.map.removeOverlay(this.tipLabel),this.tipLabel=new BMapGL.Label("单击绘制下一个点,双击完成绘制",{position:e.point,offset:new BMapGL.Size(10,10)}),this.tipLabel.setStyle(this.options.labelOptions),this.scene.map.addOverlay(this.tipLabel)}}},{key:"mousemoveAction",value:function(e){this.scene.getStopStatus()?this.scene.map.removeOverlay(this.tipLabel):(m.preventDefault(e),m.stopBubble(e),this.enableSnap&&(this.match=this.getSnap(e.point,this.scene.instances)),this.scene.map.removeOverlay(this.tipLabel),this.tipLabel=new BMapGL.Label("单击确认起点",{position:e.point,offset:new BMapGL.Size(10,10)}),this.tipLabel.setStyle(this.options.labelOptions),this.scene.map.addOverlay(this.tipLabel))}},{key:"dblclickAction",value:function(e){if(m.preventDefault(e),m.stopBubble(e),this.isBinded=!1,this.scene.map.removeOverlay(this.matchOverlay),this.scene.map.removeOverlay(this.tipLabel),this.scene.mask.disableEdgeMove(),this.scene.mask.removeEventListener("mousedown",this.mousedown),this.scene.mask.removeEventListener("mousemove",this.mousemove),this.scene.mask.removeEventListener("dblclick",this.dblclick),this.overlay.setPath(this.points),this.isSeries?this.isOnMap||this.bindEvent():this.scene.mask.hide(),this.isOnMap){var i=null;this.limit&&(i=this.scene.drawingType==="polygon"?this.limit.area:this.limit.distance),this.editOpe=this.type===B.DRAWING_POLYLINE?new Ct(this.scene,this):new jn(this.scene,this);var s=this.editOpe;this.registEvent(s),s.open(this.overlay,i)}else this.scene.map.removeOverlay(this.overlay),this.emitEventIsnomap(this.overlay)}},{key:"bindEvent",value:function(){var e=this;this.isOpen&&$(J(n.prototype),"setRunningAction",this).call(this,!0,function(){e.points.length=0,e.drawPoint.length=0,e.setCurrentStatus(I.STATUS_DRAWING),e.mousedown&&e.mousemove&&(e.isBinded=!1,e.scene.mask.removeEventListener("mousedown",e.mousedown),e.scene.mask.removeEventListener("mousemove",e.mousemove)),e.scene.mask.addEventListener("mousemove",e.mousemove=e.mousemoveAction.bind(e)),e.scene.mask.addEventListener("mousedown",e.mousedown=e.startAction.bind(e))})}},{key:"close",value:function(e){this.isBinded=!1,this.scene.map.removeOverlay(this.tipLabel),this.scene.map.removeOverlay(this.matchOverlay),this.scene.mask.removeEventListener("mousedown",this.mousedown),this.scene.mask.removeEventListener("mousemove",this.mousemove),this.scene.mask.removeEventListener("dblclick",this.dblclick),$(J(n.prototype),"setRunningAction",this).call(this,!1),e&&e()}}]),n}(ae),qe=function(r){S(n,r);var t=P(n);function n(e){var i,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return L(this,n),(i=t.call(this,e,s)).type=B.DRAWING_POLYGON,i.scene.setCurrentDrawType(i.type),i}return x(n)}(Ne),Un=function(r){S(n,r);var t=P(n);function n(e,i,s,o,a){var l;return L(this,n),(l=t.call(this)).scene=a,l.type=e,l.point=i,l.number=s,l.overlay=o,l}return x(n,[{key:"initialize",value:function(e){this.map=e;var i,s=this.div=document.createElement("div");return s.className="screenshot",this.type==="circle"?i=` +
+ `.concat(this.number,` + + +
+ `):this.type==="rectangle"&&(i=` +
+
+ `.concat(this.number.width,` + +
+ x +
+ `).concat(this.number.height,` + +
+ +
+ `)),s.innerHTML=i,s.addEventListener("mousemove",function(o){m.preventDefault(o),m.stopBubble(o)}),s.addEventListener("dblclick",function(o){m.preventDefault(o),m.stopBubble(o)}),this.map.getPanes().markerPane.appendChild(s),this.bind(),s}},{key:"bind",value:function(){this.setNumber(this.number),this.type==="circle"?this.bindCircleEvent():this.bindRectEvent()}},{key:"bindCircleEvent",value:function(){var e=this,i=document.getElementById("screenshotNum"),s=document.getElementById("circleInput");i.addEventListener("click",function(o){var a=i.innerText;i.style.display="none",s.value=a,s.style.display="inline-block",s.focus()}),s.addEventListener("click",function(o){s.focus()}),s.addEventListener("keydown",function(o){if(o.keyCode===13){var a=s.value;s.style.display="none",i.innerText=a,e.dispatchRadiusChange({radius:a,overlay:e.overlay})}}),s.addEventListener("blur",function(o){var a=s.value;s.style.display="none",i.style.display="inline-block",i.innerText=a,e.dispatchRadiusChange({radius:a,overlay:e.overlay})})}},{key:"bindRectEvent",value:function(){var e=this,i=document.getElementById("rectWidth"),s=document.getElementById("rectWidthInput"),o=document.getElementById("rectHeight"),a=document.getElementById("rectHeightInput");s.value=i.innerText,a.value=o.innerText,i.addEventListener("click",function(l){var u=i.innerText;i.style.display="none",s.value=u,s.style.display="inline-block",s.focus()}),o.addEventListener("click",function(l){var u=o.innerText;o.style.display="none",a.value=u,a.style.display="inline-block",a.focus()}),s.addEventListener("click",function(l){s.focus()}),a.addEventListener("click",function(l){a.focus()}),s.addEventListener("keydown",function(l){if(l.keyCode===13){var u=s.value,c=a.value;a.style.display="none",a.style.display="none",i.style.display="inline-block",a.style.display="inline-block",i.innerText=u,o.innerText=c,e.dispatchRectWHChange({width:u,height:c,overlay:e.overlay})}}),a.addEventListener("keydown",function(l){if(l.keyCode===13){var u=s.value,c=a.value;s.style.display="none",a.style.display="none",i.style.display="inline-block",o.style.display="inline-block",i.innerText=u,o.innerText=c,e.dispatchRectWHChange({width:u,height:c,overlay:e.overlay})}})}},{key:"setInfo",value:function(e,i){this.setNumber(i),this.setPosition(e)}},{key:"setNumber",value:function(e){this.type==="circle"?document.getElementById("screenshotNum").textContent=e:(document.getElementById("rectWidth").textContent=e.width,document.getElementById("rectHeight").textContent=e.height)}},{key:"setPosition",value:function(e){this.point=e;var i=this.type,s=this.map.pointToOverlayPixel(this.point);i==="circle"?(this.div.style.left=s.x-30+"px",this.div.style.top=s.y-40+"px"):i==="rectangle"&&(this.div.style.left=s.x+"px",this.div.style.top=s.y-45+"px")}},{key:"draw",value:function(){var e=this.map.pointToOverlayPixel(this.point);this.type==="circle"?(this.div.style.left=e.x-30+"px",this.div.style.top=e.y-40+"px"):this.type==="rectangle"&&(this.div.style.left=e.x+"px",this.div.style.top=e.y-45+"px")}},{key:"dispatchRadiusChange",value:function(e){var i=new A("radiuschange",e);this.dispatchEvent(i)}},{key:"dispatchRectWHChange",value:function(e){var i=new A("rectwhchange",e);this.dispatchEvent(i)}}]),n}(nt(BMapGL.Overlay,j)),Yn=function(r){S(n,r);var t=P(n);function n(e,i,s){var o;return L(this,n),(o=t.call(this,e,i,s)).type=B.DRAWING_RECTANGLE,o.scene.setCurrentDrawType(o.type),o}return x(n,[{key:"setIcon",value:function(e){this.moveIcon=e}},{key:"edit",value:function(e,i){var s=this;this.overlay=e;for(var o=this.getBox(e.getPath()),a=o.startPoint,l=o.endPoint,u=[],c=this.getRectAllPoints(a,l),h=[],p=this.scene.map.getDistance(a,c[2]).toFixed(0),f=this.scene.map.getDistance(a,c[6]).toFixed(0),v=new Un("rectangle",c[0],{width:p,height:f},e,this.scene),g=0;c.length>g;g++){var d=new BMapGL.Marker(c[g]);d.setIcon(this.target&&this.target.moveIcon?this.target.moveIcon:this.moveIcon),d.enableDragging(),u.push(d),this.scene.map.addOverlay(d),h[g]=m.mc2ll(d.point,this.scene.map),d.addEventListener("mousedown",function(w){l=m.mc2ll(w.target.point,s.scene.map)}),d.addEventListener("dragging",function(w){for(var b=w.latLng,E=0;h.length>E;E++)l.lng==h[E].lng&&(c[E].lng=b.lng),l.lat==h[E].lat&&(c[E].lat=b.lat);c=s.getRectAllPoints(c[0],c[4]);for(var O=0;u.length>O;O++)u[O].setPosition(c[O]);p=s.scene.map.getDistance(c[0],c[2]).toFixed(0),f=s.scene.map.getDistance(c[0],c[6]).toFixed(0),v.setInfo(c[0],{width:p,height:f}),y.setPosition(c[3],!0),e.setPath(c)}),d.addEventListener("dragend",function(w){for(var b=0;u.length>b;b++)h[b]=m.mc2ll(u[b].point,s.scene.map);y.updateWindow();var E=new A(k.CHANGE,e);s.target.dispatchEvent(E)})}v.addEventListener("rectwhchange",function(w){var b=w.target.width,E=w.target.height,O=m.getPointByDistance(c[0],b,"east"),Y=m.getPointByDistance(c[0],E,"south");c[4].lng=O.lng,c[4].lat=Y.lat,c=s.getRectAllPoints(c[0],c[4]);for(var C=0;u.length>C;C++)u[C].setPosition(c[C]);v.setInfo(c[0],{width:b,height:E}),y.setPosition(c[3],!0),e.setPath(c);for(var z=0;u.length>z;z++)h[z]=m.mc2ll(u[z].point,s.scene.map);y.updateWindow();var q=new A(k.CHANGE,e);s.target.dispatchEvent(q)}),this.overlays=[u,v];var y=this.addOperateWindow({limit:i,point:c[3],overlay:e});this.scene.map.addOverlay(v),this.dispatchEvent(new A(k.INIT)),this.onlinevertexdragging=function(w){console.log(w);var b,E=w.overlay,O=BMapGL.Projection.convertMC2LL(E.getPoint());(b=s.getSnap(O,s.scene.instances))&&(w.from.point=BMapGL.Projection.convertLL2MC(b),E.setPoint(w.from.point))},e.addEventListener("onlinevertexdragging",this.onlinevertexdragging)}},{key:"getBox",value:function(e){var i=1/0,s=-1/0,o=-1/0,a=1/0;return e.forEach(function(l){i>l.lng&&(i=l.lng),l.lat>s&&(s=l.lat),l.lng>o&&(o=l.lng),a>l.lat&&(a=l.lat)}),{startPoint:new BMapGL.Point(i,s),endPoint:new BMapGL.Point(o,a)}}},{key:"getRectAllPoints",value:function(e,i){var s=new BMapGL.Point(e.lng,e.lat),o=new BMapGL.Point(i.lng,e.lat),a=new BMapGL.Point(i.lng,i.lat),l=new BMapGL.Point(e.lng,i.lat);return[s,new BMapGL.Point((e.lng+i.lng)/2,e.lat),o,new BMapGL.Point(i.lng,(e.lat+i.lat)/2),a,new BMapGL.Point((e.lng+i.lng)/2,i.lat),l,new BMapGL.Point(e.lng,(e.lat+i.lat)/2)]}},{key:"getRectanglePoint",value:function(e,i){return[new BMapGL.Point(e.lng,e.lat),new BMapGL.Point(i.lng,e.lat),new BMapGL.Point(i.lng,i.lat),new BMapGL.Point(e.lng,i.lat)]}}]),n}(Ze),Rt=function(r){S(n,r);var t=P(n);function n(e){var i,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return L(this,n),(i=t.call(this,e,s)).type=B.DRAWING_RECTANGLE,i.polygon=null,i.startPoint=null,i.scene.setCurrentDrawType(i.type),i.moveIcon=new BMapGL.Icon(Ut,new BMapGL.Size(10,10)),i.moveIcon.setImageSize(new BMapGL.Size(10,10)),i.isOpen&&i.open(),i}return x(n,[{key:"getRectAllPoints",value:function(e,i){var s=new BMapGL.Point(e.lng,e.lat),o=new BMapGL.Point(i.lng,e.lat),a=new BMapGL.Point(i.lng,i.lat),l=new BMapGL.Point(e.lng,i.lat);return[s,new BMapGL.Point((e.lng+i.lng)/2,e.lat),o,new BMapGL.Point(i.lng,(e.lat+i.lat)/2),a,new BMapGL.Point((e.lng+i.lng)/2,i.lat),l,new BMapGL.Point(e.lng,(e.lat+i.lat)/2)]}},{key:"getRectanglePoint",value:function(e,i){return[new BMapGL.Point(e.lng,e.lat),new BMapGL.Point(i.lng,e.lat),new BMapGL.Point(i.lng,i.lat),new BMapGL.Point(e.lng,i.lat)]}},{key:"startAction",value:function(e){if(!this.scene.getStopStatus()){m.stopBubble(e),m.preventDefault(e);var i=this.startPoint=e.point;this.enableSnap&&this.match&&(i=this.startPoint=this.match);var s=this.endPoint=i;this.polygon=new BMapGL.Polygon(this.getRectanglePoint(i,s),this.baseOptions),this.scene.map.addOverlay(this.polygon),this.scene.mask.enableEdgeMove(),this.scene.mask.removeEventListener("mousedown",this.mousedown),this.scene.mask.removeEventListener("mousemove",this.mousemove),this.scene.mask.addEventListener("mousemove",this.mousemove=this.moveAction.bind(this)),this.scene.mask.addEventListener("mouseup",this.mouseup=this.endAction.bind(this))}}},{key:"moveAction",value:function(e){if(this.scene.map.removeOverlay(this.tipLabel),!this.scene.getStopStatus())if(this.enableSnap&&(this.match=this.getSnap(e.point,this.scene.instances),this.match))this.polygon.setPath(this.getRectanglePoint(this.startPoint,this.match));else{this.match=null,this.polygon.setPath(this.getRectanglePoint(this.startPoint,e.point));var i=this.getRectAllPoints(this.startPoint,e.point),s=this.scene.map.getDistance(this.startPoint,i[2]).toFixed(0),o=this.scene.map.getDistance(this.startPoint,i[6]).toFixed(0);this.tipLabel=new BMapGL.Label("尺寸:"+s+"米 x "+o+"米
松开结束绘制",{position:e.point,offset:new BMapGL.Size(10,10)}),this.tipLabel.setStyle(this.options.labelOptions),this.scene.map.addOverlay(this.tipLabel)}}},{key:"endAction",value:function(e){if(!this.scene.getStopStatus())if(this.scene.map.removeOverlay(this.tipLabel),this.scene.mask.removeEventListener("mousemove",this.mousemove),this.scene.mask.removeEventListener("mouseup",this.mouseup),this.scene.mask.disableEdgeMove(),this.enableSnap?(this.match=this.getSnap(e.point,this.scene.instances),this.match&&this.polygon.setPath(this.getRectanglePoint(this.startPoint,this.match))):this.polygon.setPath(this.getRectanglePoint(this.startPoint,e.point)),this.isSeries?this.isOnMap||this.bindEvent():this.scene.mask.hide(),this.isOnMap){var i=null;this.options.limit&&(i=this.options.limit.area);var s=this.editOpe=new Yn(this.scene,this);this.registEvent(s),s.open(this.polygon,i)}else this.scene.map.removeOverlay(this.polygon),this.emitEventIsnomap(this.polygon)}},{key:"mousemoveAction",value:function(e){this.scene.getStopStatus()?this.scene.map.removeOverlay(this.tipLabel):(m.preventDefault(e),m.stopBubble(e),this.enableSnap&&(this.match=this.getSnap(e.point,this.scene.instances)),this.scene.map.removeOverlay(this.tipLabel),this.tipLabel=new BMapGL.Label("按住确认起点,拖拽进行绘制",{position:e.point,offset:new BMapGL.Size(10,10)}),this.tipLabel.setStyle(this.options.labelOptions),this.scene.map.addOverlay(this.tipLabel))}},{key:"bindEvent",value:function(){var e=this;this.isOpen&&$(J(n.prototype),"setRunningAction",this).call(this,!0,function(){e.setCurrentStatus(I.STATUS_DRAWING),e.mousedown&&e.mousemove&&(e.scene.mask.removeEventListener("mousedown",e.mousedown),e.scene.mask.removeEventListener("mousemove",e.mousemove)),e.scene.mask.addEventListener("mousemove",e.mousemove=e.mousemoveAction.bind(e)),e.scene.mask.addEventListener("mousedown",e.mousedown=e.startAction.bind(e))})}},{key:"close",value:function(e){this.scene.map.removeOverlay(this.tipLabel),this.scene.map.removeOverlay(this.matchOverlay),this.scene.mask.removeEventListener("mouseup",this.mouseup),this.scene.mask.removeEventListener("mousedown",this.mousedown),this.scene.mask.removeEventListener("mousemove",this.mousemove),$(J(n.prototype),"setRunningAction",this).call(this,!1),e&&e()}}]),n}(ae),Jn=function(r){S(n,r);var t=P(n);function n(e,i,s){var o;return L(this,n),(o=t.call(this,e,i,s)).type=B.DRAWING_CIRCLE,o.scene.setCurrentDrawType(o.type),o}return x(n,[{key:"setCenterIcon",value:function(e){this.centerIcon=e}},{key:"setMoveIcon",value:function(e){this.moveIcon=e}},{key:"edit",value:function(e,i){var s=this;this.overlay=e,this.centerPoint=e.getCenterIn().latLng;var o=new BMapGL.Point(e.getBounds().getNorthEast().lng,this.centerPoint.lat),a=this.centerMarker=new BMapGL.Marker(this.centerPoint);a.setIcon(this.centerIcon),a.enableDragging(),a.addEventListener("dragstart",this.centerDragstart.bind(this)),a.addEventListener("dragging",this.centerDragging.bind(this)),a.addEventListener("dragend",this.centerDragend.bind(this)),this.scene.map.addOverlay(a);var l=this.moveMarker=new BMapGL.Marker(o);l.setIcon(this.circleMoveIcon),l.enableDragging();var u=this.polyline=new BMapGL.Polyline([this.centerPoint,o],this.baseOptions||{}),c=new BMapGL.Point((e.getBounds().getNorthEast().lng+this.centerPoint.lng)/2,this.centerPoint.lat),h=this.radiusWindow=new Un("circle",c,Math.ceil(e.getRadius()),e,this.scene);this.overlays=[a,l,u,h];var p=this.operateWindow=this.addOperateWindow({limit:i,point:o,overlay:e});this.scene.map.addOverlay(l),this.scene.map.addOverlay(u),this.scene.map.addOverlay(h);var f=1;h.addEventListener("radiuschange",function(v){if(v.target.radius&&!isNaN(v.target.radius)){e.setRadius(f=v.target.radius);var g=m.getPointByDistance(s.centerPoint,f,"east"),d=new BMapGL.Point(g.lng,s.centerPoint.lat),y=g.lng>s.centerPoint.lng?(e.getBounds().getNorthEast().lng+s.centerPoint.lng)/2:(e.getBounds().getSouthWest().lng+s.centerPoint.lng)/2,w=new BMapGL.Point(y,s.centerPoint.lat);l.setPosition(d),h.setInfo(w,f),p.setPosition(d,!0),p.updateWindow(),u.setPath([s.centerPoint,d]);var b=new A(k.CHANGE,e);s.target.dispatchEvent(b)}}),l.addEventListener("dragging",function(v){var g=new BMapGL.Point(v.latLng.lng,s.centerPoint.lat),d=v.latLng.lng>s.centerPoint.lng?(e.getBounds().getNorthEast().lng+s.centerPoint.lng)/2:(e.getBounds().getSouthWest().lng+s.centerPoint.lng)/2,y=v.latLng.lng>s.centerPoint.lng,w=new BMapGL.Point(d,s.centerPoint.lat);v.target.setPosition(g),h.setInfo(w,s.scene.map.getDistance(s.centerPoint,v.latLng).toFixed(0)),p.setPosition(g,y),u.setPath([s.centerPoint,g]),f=s.scene.map.getDistance(s.centerPoint,v.latLng).toFixed(0),e.setRadius(s.scene.map.getDistance(s.centerPoint,v.latLng))}),l.addEventListener("dragend",function(v){p.updateWindow();var g=new A(k.CHANGE,e);s.target.dispatchEvent(g)}),this.dispatchEvent(new A(k.INIT))}},{key:"centerDragstart",value:function(e){this.moveMarker.hide(),this.polyline.hide(),this.radiusWindow.hide(),this.operateWindow.hide()}},{key:"centerDragging",value:function(e){this.centerPoint=e.latLng,this.overlay.setCenter(e.latLng)}},{key:"centerDragend",value:function(e){this.centerPoint=e.latLng;var i=new BMapGL.Point(this.overlay.getBounds().getNorthEast().lng,this.centerPoint.lat);this.moveMarker.setPosition(i),this.moveMarker.show();var s=new BMapGL.Point(this.overlay.getBounds().getNorthEast().lng,this.centerPoint.lat);this.polyline.setPath([this.centerPoint,s]),this.polyline.show();var o=(this.overlay.getBounds().getNorthEast().lng+this.centerPoint.lng)/2,a=new BMapGL.Point(o,this.centerPoint.lat);this.radiusWindow.setPosition(a),this.operateWindow.setPosition(s,!0),this.radiusWindow.show(),this.operateWindow.show();var l=new A(k.CHANGE,this.circle);this.target.dispatchEvent(l)}}]),n}(Ze),Nt=function(r){S(n,r);var t=P(n);function n(e){var i,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return L(this,n),(i=t.call(this,e,s)).type=B.DRAWING_CIRCLE,i.circle=null,i.overlays=[],i.centerPoint=null,i.radius=1,i.moveMarker=null,i.polyline=null,i.radiusWindow=null,i.operateWindow=null,i.scene.setCurrentDrawType(i.type),i.isOpen&&i.open(),i}return x(n,[{key:"startAction",value:function(e){this.scene.getStopStatus()||(this.centerPoint=e.point,this.circle=new BMapGL.Circle(this.centerPoint,this.radius,this.baseOptions),this.scene.map.addOverlay(this.circle),this.scene.mask.enableEdgeMove(),this.scene.mask.removeEventListener("mousemove",this.mousemove),this.scene.mask.addEventListener("mousemove",this.mousemove=this.moveAction.bind(this)),this.scene.mask.addEventListener("mouseup",this.mouseup=this.endAction.bind(this)))}},{key:"moveAction",value:function(e){this.scene.map.removeOverlay(this.tipLabel),this.scene.getStopStatus()||(this.radius=this.scene.map.getDistance(this.centerPoint,e.point).toFixed(0),this.circle.setRadius(this.radius),this.tipLabel=new BMapGL.Label("半径:"+this.radius+"米
松开完成绘制",{position:e.point,offset:new BMapGL.Size(10,10)}),this.tipLabel.setStyle(this.options.labelOptions),this.scene.map.addOverlay(this.tipLabel))}},{key:"endAction",value:function(e){if(!this.scene.getStopStatus())if(this.scene.map.removeOverlay(this.tipLabel),this.scene.mask.disableEdgeMove(),this.scene.mask.removeEventListener("mousemove",this.mousemove),this.scene.mask.removeEventListener("mouseup",this.mouseup),this.isSeries?this.isOnMap||this.bindEvent():this.scene.mask.hide(),this.isOnMap){var i=null;this.limit&&(i=this.limit.area);var s=this.editOpe=new Jn(this.scene,this);this.registEvent(s),s.open(this.circle,i)}else this.scene.map.removeOverlay(this.centerMarker),this.scene.map.removeOverlay(this.circle),this.emitEventIsnomap(this.circle)}},{key:"mousedownAction",value:function(e){this.scene.getStopStatus()||(m.preventDefault(e),m.stopBubble(e),this.scene.mask.removeEventListener("mousedown",this.mousedown),this.centerPoint==null&&this.startAction(e))}},{key:"mousemoveAction",value:function(e){this.scene.map.removeOverlay(this.tipLabel),this.scene.getStopStatus()||(m.preventDefault(e),m.stopBubble(e),this.tipLabel=new BMapGL.Label("按下确认中心点,拖拽确认半径",{position:e.point,offset:new BMapGL.Size(10,10)}),this.tipLabel.setStyle(this.options.labelOptions),this.scene.map.addOverlay(this.tipLabel))}},{key:"bindEvent",value:function(){var e=this;this.isOpen&&$(J(n.prototype),"setRunningAction",this).call(this,!0,function(){e.centerPoint=null,e.radius=1,e.setCurrentStatus(I.STATUS_DRAWING),e.mousedown&&e.mousemove&&(e.scene.mask.removeEventListener("mousedown",e.mousedown),e.scene.mask.removeEventListener("mousemove",e.mousemove)),e.scene.mask.addEventListener("mousemove",e.mousemove=e.mousemoveAction.bind(e)),e.scene.mask.addEventListener("mousedown",e.mousedown=e.mousedownAction.bind(e))})}},{key:"close",value:function(e){$(J(n.prototype),"setRunningAction",this).call(this,!1),this.scene.map.removeOverlay(this.tipLabel),this.scene.mask.removeEventListener("mouseup",this.mouseup),this.scene.mask.removeEventListener("mousedown",this.mousedown),this.scene.mask.removeEventListener("mousemove",this.mousemove),e&&e()}}]),n}(ae),Wi=function(r){S(n,r);var t=P(n);function n(e,i,s){var o;return L(this,n),(o=t.call(this,e,i,s)).type=B.DRAWING_MARKER,o.scene.setCurrentDrawType(o.type),o}return x(n,[{key:"setIcon",value:function(e){this.moveIcon=e}},{key:"edit",value:function(e){e.enableDragging(),e.addEventListener("dragstart",this.centerDragstart.bind(this)),e.addEventListener("dragging",this.centerDragging.bind(this)),e.addEventListener("dragend",this.centerDragend.bind(this))}},{key:"centerDragstart",value:function(e){}},{key:"centerDragging",value:function(e){var i,s=e.target,o=BMapGL.Projection.convertMC2LL(s.point);(i=this.getSnap(o,this.scene.instances))&&(e.point=BMapGL.Projection.convertLL2MC(i),s.setPoint(e.point))}},{key:"centerDragend",value:function(e){this.emitOkEvent(this.overlay,!0,!0);var i=new A(k.CHANGE,this.overlay);this.target.dispatchEvent(i)}},{key:"closeOpe",value:function(e){e.disableDragging(),e.removeEventListener("dragstart",this.centerDragstart),e.removeEventListener("dragging",this.centerDragging),e.removeEventListener("dragend",this.centerDragend)}}]),n}(Ze),zi=function(r){S(n,BMapGL.Control);var t=P(n);function n(e){var i,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return L(this,n),(i=t.call(this)).scene=e,i.opts=s,i.drawingItems=s.drawingItems||ni,i.defaultAnchor=s.anchor||BMAP_ANCHOR_TOP_LEFT,i.defaultOffset=s.offset||new BMapGL.Size(20,20),i.initialize(i.scene.map),i}return x(n,[{key:"initialize",value:function(e){this._map=e;var i=this.container=document.createElement("div");i.className="BMap_Drawing";var s=this.panel=document.createElement("div");s.className="BMap_Draw_Panel",i.appendChild(s);var o=this.generalHtml(e);s.appendChild(o);var a=this.tip=document.createElement("div");return a.className="BMapDraw_tip",a.innerHTML='

',this.opts.enableTips&&s.appendChild(a),e.getContainer().appendChild(i),this.bindEvt(),i}},{key:"generalHtml",value:function(e){for(var i=this,s={hander:"拖动地图",marker:"标记点",polyline:"折线",polygon:"多边形",circle:"圆形",rectangle:"矩形"},o=function(c,h){var p=document.createElement("a");return p.className=c,p.href="javascript:void(0)",p.setAttribute("drawingType",h),p.setAttribute("onfocus","this.blur()"),p.addEventListener("mouseenter",function(f){var v=f.target.getAttribute("drawingType"),g=s[v];v==="hander"?(i.tip.children[0].innerText=g,i.tip.children[1].innerText="使用鼠标拖动地图"):(i.tip.className+=" "+v,i.tip.children[0].innerText=g,i.tip.children[1].innerText="使用"+g+"选出目标区域"),i.tip.style.display="block"}),p.addEventListener("mouseleave",function(f){for(var v=f.target.getAttribute("drawingType"),g=" "+i.tip.className.replace(/[\t\r\n]/g,"")+" ";g.indexOf(" "+v+" ")>=0;)g=g.replace(" "+v+" "," ");i.tip.className=g.replace(/^\s+|\s+$/g,""),i.tip.style.display="none"}),p},a=document.createDocumentFragment(),l=0,u=this.drawingItems.length;u>l;l++)a.appendChild(o("BMapDraw_Box BMapDraw_"+this.drawingItems[l],this.drawingItems[l]));return a}},{key:"setStyleByDrawingItems",value:function(){for(var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"marker",i=this.panel.getElementsByTagName("a"),s=0,o=i.length;o>s;s++){var a=i[s];a.getAttribute("drawingType")===e?a.className="BMapDraw_Box BMapDraw_"+e+"_hover":a.className=a.className.replace(/_hover/,"")}}},{key:"bindEventByDrawingType",value:function(e){var i=this.scene;if(i.isOpen&&i.drawType===e)i.close(),i.map.enableDoubleClickZoom();else switch(e){case"marker":new It(i).open();break;case"polyline":new Ne(i).open();break;case"polygon":new qe(i).open();break;case"circle":new Nt(i).open();break;case"rectangle":new Rt(i).open()}}},{key:"bindEvt",value:function(e){var i=this;m.on(this.panel,"click",function(s){var o=m.getTarget(s).getAttribute("drawingType");i.setStyleByDrawingItems(o),i.bindEventByDrawingType(o)})}}]),n}(),ji=function(r){S(n,r);var t=P(n);function n(e){var i,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return L(this,n),(i=t.call(this)).type=null,i.instance=null,i.graphicOpts=Xt,i.labelOptions=xe,i.isOnMap=!1,i.isSeries=!1,i.skipEditing=!1,i.mouseMove=!0,i.enableSnap=!1,i.limitPoint=-1,i.scene=e,i.defineProperty(s),i}return x(n,[{key:"close",value:function(e){this.instance&&(this.instance.close(),this.instance=null),e&&e()}},{key:"open",value:function(e){this.close(),this.scene.close(),this.defineProperty(e),this.type&&this.doAction()}},{key:"doAction",value:function(){var e=this;this.data=[];var i={isSelectDraw:!0,isOpen:!0,enableSnap:this.enableSnap,isOnMap:this.isOnMap,isSeries:this.isSeries,skipEditing:this.skipEditing,labelOptions:this.labelOptions,baseOpts:this.graphicOpts,mouseMove:this.mouseMove,limitPoint:this.limitPoint};switch(this.type){case B.DRAWING_POLYLINE:this.instance=new Ne(this.scene,i);break;case B.DRAWING_POLYGON:this.instance=new qe(this.scene,i);break;case B.DRAWING_RECTANGLE:this.instance=new Rt(this.scene,i);break;case B.DRAWING_CIRCLE:this.instance=new Nt(this.scene,i);break;case B.DRAWING_MARKER:this.instance=new It(this.scene,i);break;case B.DRAWING_POINT:this.instance=new it(this.scene.map);break;default:this.close()}this.instance&&(this.instance.addEventListener(k.CHANGE,function(s){e.dispatchEvent(s)}),this.instance.addEventListener(k.MOVE,function(s){e.dispatchEvent(s)}),this.instance.addEventListener(k.CLICK,function(s){e.dispatchEvent(s);var o=new A(k.COMPLETE,{from:X.SELECT_NO_MAP,mouseTarget:s.target,overlay:new BMapGL.Marker(new BMapGL.Point(s.target.latlng.lng,s.target.latlng.lat))});e.scene.dispatchEvent(o)}),this.instance.addEventListener(k.COMPLETE,function(s){e.dispatchEvent(s)}),this.instance.addEventListener(k.CANCEL,function(s){e.dispatchEvent(s)}))}},{key:"addData",value:function(e){this.scene&&this.scene.addSelectDrawData(e)}},{key:"clearData",value:function(){this.scene&&this.scene.clearSelectDrawData()}}]),n}(j),Ui=function(){function r(t,n){L(this,r),this.label=void 0,this.scene=t}return x(r,[{key:"getLength",value:function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{showlabel:!0,unit:"kilometers"};t instanceof BMapGL.Polyline&&(t=t.toGeoJSON());var e=N.getLength(t);if(n.showlabel){var i=t.geometry.coordinates,s=new BMapGL.Point(i[i.length-1][0],i[i.length-1][1]),o="";switch(n.unit){case"kilometers":o="总长度:"+e.toFixed(2)+"km";break;case"meters":o="总长度:"+e.toFixed(2)+"m"}this.scene.map.removeOverlay(this.label),this.label=new BMapGL.Label(o,{position:s,offset:n.offset||new BMapGL.Size(0,0)}),this.label.setStyle(n.labelOptions),this.scene.map.addOverlay(this.label)}return e}},{key:"getPolygonArea",value:function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{showlabel:!0,unit:"kilometers"};t instanceof BMapGL.Polygon&&(t=t.toGeoJSON());var e=N.getPolygonArea(t);if(n.showlabel){var i=N.getPolygonCenter(t),s="";switch(n.unit){case"kilometers":s=e.toFixed(2)+" km²";break;case"meters":s=e.toFixed(2)+" m²"}this.scene.map.removeOverlay(this.label),this.label=new BMapGL.Label(s,{position:i.bdCenter,offset:n.offset||new BMapGL.Size(-20,-10)}),this.label.setStyle(n.labelOptions),this.scene.map.addOverlay(this.label)}return e}}]),r}(),Yi=function(r){S(n,r);var t=P(n);function n(e){var i,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return L(this,n),(i=t.call(this,e,s)).tipLabel=null,i.lengthLabel=[],i.totalLabel=null,i.turnOverlays=[],i.totalLength=0,i.measureRes=0,i.subDistance=[],i.scene.setCurrentDrawType(i.type),i.setOtherOptions(s),i.isOpen&&i.open(),i}return x(n,[{key:"setOtherOptions",value:function(e){this.options=e,this.skipEditing=!0,this.isOpen=!0,this.options=Object.assign(ei,e),this.isSeries=this.options.isSeries,this.setBaseOptions(this.options.baseOpts)}},{key:"setTurnPoint",value:function(e){var i=this.options,s=new BMapGL.Marker(e,{icon:i.turnIcon?i.turnIcon:Jt,clickable:!1,baseZIndex:35e5,zIndexFixed:!0});this.scene.map.addOverlay(s),this.turnOverlays.push(s)}},{key:"startAction",value:function(e){var i=this.match?this.match:e.point;this.points.push(i),this.drawPoint=this.points.concat(this.points[this.points.length-1]),this.points.length===1?(this.turnOverlays=[],this.lengthLabel=[],this.overlay=new BMapGL.Polyline(this.drawPoint,this.baseOptions),this.scene.map.addOverlay(this.overlay)):(this.overlay.setPath(this.drawPoint),this.scene.map.removeOverlay(this.measureLabel),this.scene.map.addOverlay(this.downLabel),this.subDistance.push(this.downLabel.content),this.lengthLabel.push(this.downLabel)),this.setTurnPoint(i),this.isBinded||(this.isBinded=!0,this.scene.mask.enableEdgeMove(),this.scene.mask.removeEventListener("mousemove",this.mousemove),this.scene.mask.addEventListener("mousemove",this.mousemove=this.moveAction.bind(this)),this.scene.mask.addEventListener("dblclick",this.dblclick=this.dblclickAction.bind(this)))}},{key:"moveAction",value:function(e){var i=e.point;if(this.enableSnap){var s=[];if(this.overlay.points.length>2){var o=this.overlay.getPath().slice(0,this.overlay.points.length-1);s.push(new this.overlay.constructor(o))}if(this.match=this.getSnap(i,this.scene.instances,s),this.match)return void this.overlay.setPositionAt(this.drawPoint.length-1,this.match)}this.match=null;var a=this.drawPoint[this.drawPoint.length-2],l=e.point;this.measureRes=N.getDistance(a,l),this.distance=this.measureRes.toFixed(2)+"km";var u=N.getLineCenter(a,l);this.scene.map.removeOverlay(this.measureLabel),this.measureLabel=this.addLabel(this.distance,{position:u.bdCenter}),this.downLabel=this.addLabel(this.distance,{position:u.bdCenter}),this.scene.map.addOverlay(this.measureLabel),this.overlay.setPositionAt(this.drawPoint.length-1,e.point),this.scene.map.removeOverlay(this.tipLabel),this.tipLabel=new BMapGL.Label(this.options.followLabel,{position:e.point,offset:new BMapGL.Size(10,10)}),this.tipLabel.setStyle(this.options.labelOptions),this.scene.map.addOverlay(this.tipLabel)}},{key:"dblclickAction",value:function(e){var i=this;m.preventDefault(e),m.stopBubble(e),this.isBinded=!1,this.scene.map.removeOverlay(this.matchOverlay),this.scene.map.removeOverlay(this.tipLabel),this.scene.mask.disableEdgeMove(),this.scene.mask.removeEventListener("mousedown",this.mousedown),this.scene.mask.removeEventListener("mousemove",this.mousemove),this.scene.mask.removeEventListener("dblclick",this.dblclick);var s=this.overlay.toGeoJSON(),o=s.geometry.coordinates,a=new BMapGL.Point(o[o.length-1][0],o[o.length-1][1]),l=[0,0],u=[0,0],c=this.scene.map.pointToPixel(this.points[this.points.length-2]),h=this.scene.map.pointToPixel(this.points[this.points.length-3]);l=0>c.x-h.x?[-14,0]:[14,0],u=0>c.y-h.y?[-5,-38]:[-5,11];var p=N.getLength(s,this.options.unit);this.totalLength=p;var f="";switch(this.options.unit){case"kilometers":f="总长:"+p.toFixed(2)+"km";break;case"meters":f="总长:"+p.toFixed(2)+"m"}this.totalLabel=new BMapGL.Label(f,{position:a,offset:new BMapGL.Size(u[0],u[1])}),this.totalLabel.setStyle(this.options.labelOptions),this.scene.map.addOverlay(this.totalLabel),this.lengthLabel.push(this.totalLabel),this.closeIcon=this.options.closeIcon?this.options.closeIcon:Yt,this.closeBtn=new BMapGL.Marker(a,{icon:this.closeIcon,baseZIndex:36e5,offset:new BMapGL.Size(l[0],l[1]),enableMassClear:!0}),this.closeBtn.setTitle("清除本次测距"),this.scene.map.addOverlay(this.closeBtn);var v={overlay:this.overlay,closeBtn:this.closeBtn,totalLabel:this.totalLabel,lengthLabel:this.lengthLabel,points:this.points.slice(0),turnOverlays:this.turnOverlays.slice(0)};this.closeBtn.addEventListener("click",function(g){i.scene.map.removeOverlay(v.closeBtn),i.scene.map.removeOverlay(v.overlay);for(var d=0,y=v.turnOverlays.length;y>d;d++)i.scene.map.removeOverlay(v.turnOverlays[d]),v.turnOverlays[d]=null;for(var w=0,b=v.lengthLabel.length;b>w;w++)i.scene.map.removeOverlay(v.lengthLabel[w]),v.lengthLabel[w]=null}),this.dispatchMeasureEvent(),this.overlay.setPath(this.points),this.isSeries?this.bindEvent():this.scene.mask.hide()}},{key:"dispatchMeasureEvent",value:function(){var e=new A(et.LENGTH_END,{points:this.points?this.points.slice(0):[],distance:this.totalLength,subDistance:this.subDistance,unit:this.options.unit,overlay:this.overlay});this.dispatchEvent(e),this.scene.dispatchEvent(e)}}]),n}(Ne),Ji=function(r){S(n,r);var t=P(n);function n(e){var i,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return L(this,n),(i=t.call(this,e,s)).measureArea=0,i.turnOverlays=[],i.scene.setCurrentDrawType(i.type),i.setOtherOptions(s),i.isOpen&&i.open(),i}return x(n,[{key:"setOtherOptions",value:function(e){this.options=e,this.skipEditing=!0,this.isOpen=!0,this.options=Object.assign($n,e),this.isSeries=this.options.isSeries,this.setBaseOptions(this.options.baseOpts)}},{key:"setTurnPoint",value:function(e){var i=this.options,s=new BMapGL.Marker(e,{icon:i.turnIcon?i.turnIcon:Jt,clickable:!1,baseZIndex:35e5,zIndexFixed:!0});this.scene.map.addOverlay(s),this.turnOverlays.push(s)}},{key:"startAction",value:function(e){var i=this.match?this.match:e.point;if(this.points.push(i),this.drawPoint=this.points.concat(this.points[this.points.length-1]),this.points.length===1)this.turnOverlays=[],this.overlay=new BMapGL.Polygon(this.drawPoint,this.baseOptions),this.scene.map.addOverlay(this.overlay);else if(this.overlay.setPath(this.drawPoint),this.points.length>2){this.measureArea=N.getPolygonArea(this.overlay),this.area=this.measureArea.toFixed(2)+"km²";var s=N.getPolygonCenter(this.overlay.toGeoJSON());this.scene.map.removeOverlay(this.areaLabel),this.areaLabel=this.addLabel(this.area,{position:s.bdCenter,offset:new BMapGL.Size(5,-2)}),this.scene.map.addOverlay(this.areaLabel)}this.setTurnPoint(i),this.isBinded||(this.isBinded=!0,this.scene.mask.enableEdgeMove(),this.scene.mask.removeEventListener("mousemove",this.mousemove),this.scene.mask.addEventListener("mousemove",this.mousemove=this.moveAction.bind(this)),this.scene.mask.addEventListener("dblclick",this.dblclick=this.dblclickAction.bind(this)))}},{key:"dblclickAction",value:function(e){var i=this;m.preventDefault(e),m.stopBubble(e),this.isBinded=!1,this.scene.map.removeOverlay(this.matchOverlay),this.scene.map.removeOverlay(this.tipLabel),this.scene.mask.disableEdgeMove(),this.scene.mask.removeEventListener("mousedown",this.mousedown),this.scene.mask.removeEventListener("mousemove",this.mousemove),this.scene.mask.removeEventListener("dblclick",this.dblclick),this.overlay.setPath(this.points);var s=this.overlay.toGeoJSON().geometry.coordinates[0],o=new BMapGL.Point(s[s.length-1][0],s[s.length-1][1]);this.closeIcon=this.options.closeIcon?this.options.closeIcon:Yt,this.closeBtn=new BMapGL.Marker(o,{icon:this.closeIcon,baseZIndex:36e5,enableMassClear:!0,offset:new BMapGL.Size(10,10)});var a=N.getPolygonCenter(this.overlay.toGeoJSON());this.totalAreaLabel=this.addLabel(this.area,{position:a.bdCenter,offset:new BMapGL.Size(5,-2)});var l={overlay:this.overlay,closeBtn:this.closeBtn,points:this.points.slice(0),turnOverlays:this.turnOverlays.slice(0),totalAreaLabel:this.totalAreaLabel};this.scene.map.addOverlay(l.closeBtn),this.scene.map.removeOverlay(this.areaLabel),this.scene.map.addOverlay(l.totalAreaLabel),l.closeBtn.addEventListener("click",function(u){i.scene.map.removeOverlay(l.closeBtn),i.scene.map.removeOverlay(l.overlay),i.scene.map.removeOverlay(l.totalAreaLabel);for(var c=0,h=l.turnOverlays.length;h>c;c++)i.scene.map.removeOverlay(l.turnOverlays[c]),l.turnOverlays[c]=null}),this.dispatchMeasureEvent(),this.isSeries?this.bindEvent():this.scene.mask.hide()}},{key:"dispatchMeasureEvent",value:function(){var e=new A(et.AREA_END,{points:this.points?this.points.slice(0):[],unit:this.options.unit,area:this.measureArea,overlay:this.overlay});this.dispatchEvent(e),this.scene.dispatchEvent(e)}}]),n}(qe),Xi=function(r){S(n,r);var t=P(n);function n(){var e;L(this,n);for(var i=arguments.length,s=Array(i),o=0;i>o;o++)s[o]=arguments[o];return(e=t.call.apply(t,[this].concat(s))).tolerance=.001,e.toleranceType="kilometers",e}return x(n,[{key:"polygonCutByLine",value:function(e,i,s){var o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},a=e.geometry,l=i.geometry;l.coordinates.length=l.coordinates.length-1;var u,c,h,p,f,v,g,d=[],y=[],w=null;if(a.type!=="Polygon"&&a.type!=="MultiPolygon"||l.type!=="LineString"||(s===void 0&&(s=""),ke(a,l).features.length===0)||kt(l,a))return w;y[0]=Ln(l,this.tolerance,{units:this.toleranceType}),y[1]=Ln(l,-this.tolerance,{units:this.toleranceType});for(var b=0;1>=b;b++){var E=b;d=[];for(var O=0;l.coordinates.length>O;O++)d.push(l.coordinates[O]);for(var Y=y[E].geometry.coordinates.length-1;Y>=0;Y--)d.push(y[E].geometry.coordinates[Y]);d.push(l.coordinates[0]);var C=wi(R(d));h=C,p=void 0,f=void 0,v=void 0,g=void 0,p=K(c=a),f=K(h),v=c.properties||{},u=(g=Ti(p.coordinates,f.coordinates)).length===0?null:g.length===1?ge(g[0],v):Oe(g,v)}var z=new BMapGL.GeoJSONParse().readFeaturesFromObject(u,o),q=[],ve=[];return z.forEach(function(le,fe){le.properties=Object.assign({},e.properties||{}),le.properties.id+="-".concat(fe),q.push(le),ve.push(le.toGeoJSON())}),{geojsonRes:ve,bdRes:q}}},{key:"lineCutByPoly",value:function(e,i,s){if(e.geometry===void 0||e.geometry.type.toLowerCase().indexOf("linestring")===-1)throw"传入的必须为linestring";var o=function(p,f){if(!p)throw Error("line is required");if(!f)throw Error("splitter is required");var v=ut(p),g=ut(f);if(v!=="LineString")throw Error("line must be LineString");if(g==="FeatureCollection")throw Error("splitter cannot be a FeatureCollection");if(g==="GeometryCollection")throw Error("splitter cannot be a GeometryCollection");var d=bi(f,{precision:7});switch(g){case"Point":return yt(p,d);case"MultiPoint":return yn(p,d);case"LineString":case"MultiLineString":case"Polygon":case"MultiPolygon":return yn(p,ke(p,d))}}(e,i).features,a=[],l=new BMapGL.GeoJSONParse;if(o.length>1)for(var u=0,c=o.length;c>u;u++){var h=l.readFeatureFromObject(o[u],s);a.push(h)}return{geojsonRes:o,bdRes:a}}}]),n}(j),Vi=function(r){S(n,r);var t=P(n);function n(){var e;L(this,n);for(var i=arguments.length,s=Array(i),o=0;i>o;o++)s[o]=arguments[o];return(e=t.call.apply(t,[this].concat(s))).tolerance=.001,e.toleranceType="kilometers",e}return x(n,[{key:"polygonUnion",value:function(e,i){if(2>e.length)throw"至少2个数据";var s=null,o=!1;e.forEach(function(l,u){1>u?s=l:kt(s,l)?o=!0:s=Wn(s,l)});var a=o?null:s;return{geojsonRes:a,bdRes:new BMapGL.GeoJSONParse().readFeatureFromObject(a,i)}}}]),n}(j),Xn=function(r){S(n,r);var t=P(n);function n(){return L(this,n),t.apply(this,arguments)}return x(n,[{key:"geojsonMove",value:function(e,i,s){(i instanceof BMapGL.Point||i instanceof BMapGL.LatLng)&&(i=G([i.lng,i.lat])),(s instanceof BMapGL.Point||s instanceof BMapGL.LatLng)&&(s=G([s.lng,s.lat]));var o,a,l,u,c=function(h,p,f,v){if(!Ae(v=v||{}))throw Error("options is invalid");var g=v.units,d=v.zTranslation,y=v.mutate;if(!h)throw Error("geojson is required");if(p==null||isNaN(p))throw Error("distance is required");if(d&&typeof d!="number"&&isNaN(d))throw Error("zTranslation is not a number");if(d=d!==void 0?d:0,p===0&&d===0)return h;if(f==null||isNaN(f))throw Error("direction is required");return 0>p&&(p=-p,f+=180),y!==!1&&y!==void 0||(h=nn(h)),re(h,function(w){var b=Q(Ei(w,p,f,{units:g}));w[0]=b[0],w[1]=b[1],d&&w.length===3&&(w[2]+=d)}),h}(e,vn(i,s),(o=i,a=s,l===void 0&&(l={}),(u=l.final?Mn(F(a),F(o)):Mn(F(o),F(a)))>180?-(360-u):u));return c}}]),n}(j),De=function(r){S(n,r);var t=P(n);function n(e){var i,s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(L(this,n),(i=t.call(this)).currentModel=n.MODEL.MOVE,i.labelOptions=xe,i.baseOpts=Xt,i.enableSnap=!0,i.snapDistance=10,i.match=null,i.matchOverlay=null,i.matchOverlayRadius=1,!(e instanceof He))throw Error("MoveBase实例化必须输入scene参数");i.scene=e,i.scene.move=Le(i);var o={};return m.copyOptionsToNew(i.scene.options,s,o),m.copyNotExitOptions(o,i.scene.options),i.options=o,i.target=s.target||Le(i),i.setOptions(o),i.setSnapPointType(s),i.moveCalculate=new Xn,i.parse=new BMapGL.GeoJSONParse,i}return x(n,[{key:"setOptions",value:function(){this.defineProperty(arguments.length>0&&arguments[0]!==void 0?arguments[0]:{})}},{key:"setCurrentModel",value:function(e){this.currentModel=e}},{key:"open",value:function(e,i){var s=this;this.scene&&(this.overlay=this.currentModel===n.MODEL.MOVE?e:this.parse.readFeatureFromObject(e.toGeoJSON()),this.scene.open(),this.setRunningAction(!0,function(){s.setSceneStatus(I.STATUS_MOVE),s.moveOpe(e),i&&i()}))}},{key:"close",value:function(e){this.overlay&&(this.setRunningAction(!1),this.setSceneStatus(I.STATUS_FREE),this.closeOpe(this.overlay),this.emitOkEvent(this.overlay),e&&e())}},{key:"moveOpe",value:function(e){}},{key:"closeOpe",value:function(e){}},{key:"emitOkEvent",value:function(e){var i=arguments.length>1&&arguments[1]!==void 0&&arguments[1],s=new A(k.COMPLETE,{overlay:e,from:X.MOVE_ON_MAP,model:this.currentModel});this.dispatchEvent(s),i&&this.scene.dispatchEvent(s)}},{key:"setRunningAction",value:function(e,i){e?(this.scene.closeRunningAction(),this.scene.runningAction=this,this.scene.mask.show(),i()):(this.scene.runningAction=null,this.scene.mask.hide())}},{key:"setRadius",value:function(){var e=this.scene.map.getZoomUnits();this.matchOverlay.setRadius(this.matchOverlayRadius*e)}},{key:"addMatchOverlay",value:function(e){this.matchOverlay instanceof BMapGL.Circle?(this.setRadius(),this.matchOverlay.setCenter(e),this.scene.map.addEventListener("zoomend",this.setRadius.bind(this)),this.scene.map.addOverlay(this.matchOverlay)):(this.scene.map.addOverlay(this.matchOverlay),this.matchOverlay.setPosition(e))}},{key:"removeMatchOverlay",value:function(){this.scene.map.removeOverlay(this.matchOverlay),this.scene.map.removeEventListener("zoomend",this.setRadius.bind(this))}},{key:"getSnap",value:function(e){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.scene.instances,s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:this.snapDistance,a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.scene.map,l=null;return this.removeMatchOverlay(),l||(l=pe(e,i,o,a)),!l&&this.scene._attachSnapSource&&(l=pe(e,this.scene._attachSnapSource,o,a)),l||(l=pe(e,s,o,a)),l&&this.addMatchOverlay(l),l}}]),n}(j);De.MODEL={COPY:Symbol(),MOVE:Symbol()};var Vn=function(r){S(n,r);var t=P(n);function n(e,i){var s;return L(this,n),(s=t.call(this,e,i)).type=B.DRAWING_POLYLINE,s.scene.setCurrentDrawType(s.type),s}return x(n,[{key:"startAction",value:function(e){m.stopBubble(e),m.preventDefault(e),this.start=this.match?this.match:e.point,this.currentModel===De.MODEL.COPY&&(this.overlay.setOptions(this.baseOpts),this.scene.map.addOverlay(this.overlay)),this.scene.mask.enableEdgeMove(),this.scene.mask.removeEventListener("mousedown",this.mousedown),this.scene.mask.removeEventListener("mousemove",this.mousemove),this.scene.mask.addEventListener("mousemove",this.mousemove=this.moveAction.bind(this)),this.scene.mask.addEventListener("mouseup",this.mouseup=this.endAction.bind(this))}},{key:"moveAction",value:function(e){m.preventDefault(e),m.stopBubble(e),this.scene.map.removeOverlay(this.tipLabel),this.tipLabel=new BMapGL.Label("移动改变位置
松开结束操作",{position:e.point,offset:new BMapGL.Size(10,10)}),this.tipLabel.setStyle(this.labelOptions),this.scene.map.addOverlay(this.tipLabel);var i=e.point;this.enableSnap&&(this.match=this.currentModel===De.MODEL.COPY?this.getSnap(e.point,this.scene.instances):this.getSnap(e.point,this.scene.instances,[],this.snapDistance,this.scene.map,[this.overlay]),this.match&&(i=this.match),this.match=null);var s=this.moveCalculate.geojsonMove(this.source,this.start,i);this.overlay.updateByGeoJSON(s)}},{key:"endAction",value:function(e){m.preventDefault(e),m.stopBubble(e),this.scene.map.removeOverlay(this.tipLabel),this.scene.map.removeOverlay(this.matchOverlay),this.scene.mask.removeEventListener("mousemove",this.mousemove),this.scene.mask.removeEventListener("mouseup",this.mouseup),this.scene.mask.disableEdgeMove(),this.finish()}},{key:"mousemoveAction",value:function(e){m.preventDefault(e),m.stopBubble(e),this.enableSnap&&(this.match=this.getSnap(e.point,this.scene.instances)),this.scene.map.removeOverlay(this.tipLabel),this.tipLabel=new BMapGL.Label("按住确认起点,拖拽进行移动",{position:e.point,offset:new BMapGL.Size(10,10)}),this.tipLabel.setStyle(this.labelOptions),this.scene.map.addOverlay(this.tipLabel)}},{key:"finish",value:function(){this.currentModel===De.MODEL.COPY&&this.scene.map.removeOverlay(this.overlay),this.emitOkEvent(this.overlay,!0);var e=new A(k.CHANGE,this.overlay);this.target.dispatchEvent(e),this.close()}},{key:"moveOpe",value:function(){this.source=this.overlay.toGeoJSON(),this.scene.mask.show(),this.scene.mask.addEventListener("mousemove",this.mousemove=this.mousemoveAction.bind(this)),this.scene.mask.addEventListener("mousedown",this.mousedown=this.startAction.bind(this))}},{key:"closeOpe",value:function(){this.scene.map.removeOverlay(this.tipLabel),this.scene.map.removeOverlay(this.matchOverlay),this.scene.mask.removeEventListener("mouseup",this.mouseup),this.scene.mask.removeEventListener("mousedown",this.mousedown),this.scene.mask.removeEventListener("mousemove",this.mousemove)}}]),n}(De),Qi=function(r){S(n,r);var t=P(n);function n(e,i){var s;return L(this,n),(s=t.call(this,e,i)).type=B.DRAWING_POLYGON,s.scene.setCurrentDrawType(s.type),s}return x(n)}(Vn),Ki=function(r){S(n,r);var t=P(n);function n(e,i){var s;return L(this,n),(s=t.call(this)).otherOverlays=[],s.snapDistance=15,s.isOpen=!1,s.cursor="default",s.scene=e,s.isOpen=~~i,s._initEvent(),s}return x(n,[{key:"open",get:function(){return this.isOpen},set:function(e){this.isOpen=e}},{key:"distance",get:function(){return this.snapDistance},set:function(e){this.snapDistance=e}},{key:"setPickCursor",value:function(e){this.cursor=e}},{key:"_initEvent",value:function(){var e=this;this.scene&&(this.scene.addEventListener(k.CLICK,function(i){if(e.isOpen&&e.scene.currentStatus===I.STATUS_FREE){var s=e.getSnap(i.target.latlng);if(s){var o=Ft(s,3),a=new Qn(o[0],o[1]);e.dispatchEvent(new A(k.CLICK,a))}}}),this.scene.addEventListener(k.MOVE,function(i){if(e.isOpen&&e.scene.currentStatus===I.STATUS_FREE){var s=e.getSnap(i.target.latlng);if(s){e.scene.map.platform.style.cursor=e.cursor;var o=Ft(s,3),a=new Qn(o[0],o[1]);e.dispatchEvent(new A(k.MOVE,a))}else e.scene.map.platform.style.cursor=e.scene.map.config.defaultCursor,e.dispatchEvent(new A(k.MOVE,null))}}))}},{key:"attachOverlays",value:function(e){e instanceof Array&&(this.otherOverlays=e)}},{key:"getSnap",value:function(e){var i=null;return i||(i=this.getSnapByLL(e,this.scene.instances)),!i&&this.otherOverlays&&this.otherOverlays.length>0&&(i=this.getSnapByLL(e,this.otherOverlays)),i}},{key:"getSnapByLL",value:function(e,i){var s,o=(s=this.scene.map.getZoom(),Math.pow(2,18-s)),a=this.snapDistance*o;if(!(i&&i instanceof Array))return null;for(var l in i){var u=i[l];if(u instanceof BMapGL.Marker){var c=u.getPosition();if(a>1e3*N.getDistance(e,c,"kilometers"))return[u,0,c]}else{var h=u.getPath();for(var p in h){var f=h[p],v=1e3*N.getDistance(e,f,"kilometers");if(v&&a>v)return[u,p,f]}}}return null}}]),n}(j),Qn=function(r){S(n,r);var t=P(n);function n(e,i){var s;return L(this,n),(s=t.call(this))._index=-1,s.overlay=e,s.path=e instanceof BMapGL.Marker?[e.getPosition()]:e.getPath(),i>s.path.length-1||(s.index=i),s}return x(n,[{key:"index",get:function(){return this._index},set:function(e){this._index=parseInt(e)||0;var i=new A(k.CHANGE,this.index);this.dispatchEvent(i)}},{key:"getCurrentNode",value:function(){return this.path[this.index]}},{key:"updateNode",value:function(e,i){if(this.overlay instanceof BMapGL.Marker){var s=BMapGL.Projection.convertLL2MC(e);this.overlay.setPoint(s)}else i!==void 0&&i>=0&&this.path.length>i?this.path[i]=e:this.path[this.index]=e,this.overlay.setPath(this.path)}},{key:"hasNext",value:function(){return this.index+1>=0&&this.path.length>this.index+1}},{key:"next",value:function(){return this.hasNext()?(this._index++,this.path[this.index]):null}},{key:"hasPrev",value:function(){return this.index-1>=0&&this.path.length>this.index-1}},{key:"prev",value:function(){return this.hasPrev()?(this._index--,this.path[this.index]):null}}]),n}(j);M.ActionStatus=X,M.AreaMeasure=Ji,M.CircleDraw=Nt,M.CircleEdit=Jn,M.CorrectPoint=Ki,M.CutCalculate=Xi,M.DistanceMeasure=Yi,M.DrawControl=zi,M.DrawScene=He,M.DrawStatus=I,M.DrawingType=B,M.GeoCalculator=N,M.MapSelect=it,M.MarkerDraw=It,M.MarkerEdit=Wi,M.Measure=Ui,M.MeasureEvent=et,M.MoveCalculate=Xn,M.Operate=Re,M.OperateEventType=k,M.PolygonDraw=qe,M.PolygonEdit=jn,M.PolygonMove=Qi,M.PolylineDraw=Ne,M.PolylineEdit=Ct,M.PolylineMove=Vn,M.RectDraw=Rt,M.RectEdit=Yn,M.Select=ji,M.UnionCalculate=Vi,Object.defineProperty(M,"__esModule",{value:!0})})})(_t,_t.exports);var qi=_t.exports;const er=Zi({__proto__:null},[qi]);export{er as b}; diff --git a/assets/chunks/commonjsHelpers.Cpj98o6Y.js b/assets/chunks/commonjsHelpers.Cpj98o6Y.js new file mode 100644 index 00000000..b285ce54 --- /dev/null +++ b/assets/chunks/commonjsHelpers.Cpj98o6Y.js @@ -0,0 +1 @@ +var o=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function l(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}export{o as c,l as g}; diff --git a/assets/chunks/framework.n6hqIsqL.js b/assets/chunks/framework.n6hqIsqL.js new file mode 100644 index 00000000..f45b7337 --- /dev/null +++ b/assets/chunks/framework.n6hqIsqL.js @@ -0,0 +1,17 @@ +/** +* @vue/shared v3.4.38 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**//*! #__NO_SIDE_EFFECTS__ */function Ir(e,t){const n=new Set(e.split(","));return r=>n.has(r)}const re={},wt=[],Re=()=>{},Wi=()=>!1,Jt=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Pr=e=>e.startsWith("onUpdate:"),fe=Object.assign,Nr=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},qi=Object.prototype.hasOwnProperty,Y=(e,t)=>qi.call(e,t),V=Array.isArray,Et=e=>Qt(e)==="[object Map]",It=e=>Qt(e)==="[object Set]",cs=e=>Qt(e)==="[object Date]",q=e=>typeof e=="function",ie=e=>typeof e=="string",Ve=e=>typeof e=="symbol",Z=e=>e!==null&&typeof e=="object",io=e=>(Z(e)||q(e))&&q(e.then)&&q(e.catch),lo=Object.prototype.toString,Qt=e=>lo.call(e),Gi=e=>Qt(e).slice(8,-1),co=e=>Qt(e)==="[object Object]",Fr=e=>ie(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Ct=Ir(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),$n=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},zi=/-(\w)/g,Ie=$n(e=>e.replace(zi,(t,n)=>n?n.toUpperCase():"")),Xi=/\B([A-Z])/g,rt=$n(e=>e.replace(Xi,"-$1").toLowerCase()),jn=$n(e=>e.charAt(0).toUpperCase()+e.slice(1)),wn=$n(e=>e?`on${jn(e)}`:""),Ze=(e,t)=>!Object.is(e,t),En=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:r,value:n})},An=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Yi=e=>{const t=ie(e)?Number(e):NaN;return isNaN(t)?e:t};let as;const uo=()=>as||(as=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Vn(e){if(V(e)){const t={};for(let n=0;n{if(n){const r=n.split(Qi);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t}function Dn(e){let t="";if(ie(e))t=e;else if(V(e))for(let n=0;nmt(n,t))}const ho=e=>!!(e&&e.__v_isRef===!0),sl=e=>ie(e)?e:e==null?"":V(e)||Z(e)&&(e.toString===lo||!q(e.toString))?ho(e)?sl(e.value):JSON.stringify(e,po,2):String(e),po=(e,t)=>ho(t)?po(e,t.value):Et(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[r,s],o)=>(n[nr(r,o)+" =>"]=s,n),{})}:It(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>nr(n))}:Ve(t)?nr(t):Z(t)&&!V(t)&&!co(t)?String(t):t,nr=(e,t="")=>{var n;return Ve(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** +* @vue/reactivity v3.4.38 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/let Ce;class ol{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this.parent=Ce,!t&&Ce&&(this.index=(Ce.scopes||(Ce.scopes=[])).push(this)-1)}get active(){return this._active}run(t){if(this._active){const n=Ce;try{return Ce=this,t()}finally{Ce=n}}}on(){Ce=this}off(){Ce=this.parent}stop(t){if(this._active){let n,r;for(n=0,r=this.effects.length;n=4))break}this._dirtyLevel===1&&(this._dirtyLevel=0),ot()}return this._dirtyLevel>=4}set dirty(t){this._dirtyLevel=t?4:0}run(){if(this._dirtyLevel=0,!this.active)return this.fn();let t=Je,n=dt;try{return Je=!0,dt=this,this._runnings++,us(this),this.fn()}finally{fs(this),this._runnings--,dt=n,Je=t}}stop(){this.active&&(us(this),fs(this),this.onStop&&this.onStop(),this.active=!1)}}function cl(e){return e.value}function us(e){e._trackId++,e._depsLength=0}function fs(e){if(e.deps.length>e._depsLength){for(let t=e._depsLength;t{const n=new Map;return n.cleanup=e,n.computed=t,n},Rn=new WeakMap,ht=Symbol(""),Er=Symbol("");function we(e,t,n){if(Je&&dt){let r=Rn.get(e);r||Rn.set(e,r=new Map);let s=r.get(n);s||r.set(n,s=bo(()=>r.delete(n))),_o(dt,s)}}function Ue(e,t,n,r,s,o){const i=Rn.get(e);if(!i)return;let l=[];if(t==="clear")l=[...i.values()];else if(n==="length"&&V(e)){const c=Number(r);i.forEach((a,f)=>{(f==="length"||!Ve(f)&&f>=c)&&l.push(a)})}else switch(n!==void 0&&l.push(i.get(n)),t){case"add":V(e)?Fr(n)&&l.push(i.get("length")):(l.push(i.get(ht)),Et(e)&&l.push(i.get(Er)));break;case"delete":V(e)||(l.push(i.get(ht)),Et(e)&&l.push(i.get(Er)));break;case"set":Et(e)&&l.push(i.get(ht));break}jr();for(const c of l)c&&vo(c,4);Vr()}function al(e,t){const n=Rn.get(e);return n&&n.get(t)}const ul=Ir("__proto__,__v_isRef,__isVue"),wo=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Ve)),ds=fl();function fl(){const e={};return["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){const r=J(this);for(let o=0,i=this.length;o{e[t]=function(...n){st(),jr();const r=J(this)[t].apply(this,n);return Vr(),ot(),r}}),e}function dl(e){Ve(e)||(e=String(e));const t=J(this);return we(t,"has",e),t.hasOwnProperty(e)}class Eo{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,r){const s=this._isReadonly,o=this._isShallow;if(n==="__v_isReactive")return!s;if(n==="__v_isReadonly")return s;if(n==="__v_isShallow")return o;if(n==="__v_raw")return r===(s?o?xl:To:o?xo:So).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(r)?t:void 0;const i=V(t);if(!s){if(i&&Y(ds,n))return Reflect.get(ds,n,r);if(n==="hasOwnProperty")return dl}const l=Reflect.get(t,n,r);return(Ve(n)?wo.has(n):ul(n))||(s||we(t,"get",n),o)?l:de(l)?i&&Fr(n)?l:l.value:Z(l)?s?Zt(l):Un(l):l}}class Co extends Eo{constructor(t=!1){super(!1,t)}set(t,n,r,s){let o=t[n];if(!this._isShallow){const c=yt(o);if(!Lt(r)&&!yt(r)&&(o=J(o),r=J(r)),!V(t)&&de(o)&&!de(r))return c?!1:(o.value=r,!0)}const i=V(t)&&Fr(n)?Number(n)e,kn=e=>Reflect.getPrototypeOf(e);function cn(e,t,n=!1,r=!1){e=e.__v_raw;const s=J(e),o=J(t);n||(Ze(t,o)&&we(s,"get",t),we(s,"get",o));const{has:i}=kn(s),l=r?Dr:n?Br:Kt;if(i.call(s,t))return l(e.get(t));if(i.call(s,o))return l(e.get(o));e!==s&&e.get(t)}function an(e,t=!1){const n=this.__v_raw,r=J(n),s=J(e);return t||(Ze(e,s)&&we(r,"has",e),we(r,"has",s)),e===s?n.has(e):n.has(e)||n.has(s)}function un(e,t=!1){return e=e.__v_raw,!t&&we(J(e),"iterate",ht),Reflect.get(e,"size",e)}function hs(e,t=!1){!t&&!Lt(e)&&!yt(e)&&(e=J(e));const n=J(this);return kn(n).has.call(n,e)||(n.add(e),Ue(n,"add",e,e)),this}function ps(e,t,n=!1){!n&&!Lt(t)&&!yt(t)&&(t=J(t));const r=J(this),{has:s,get:o}=kn(r);let i=s.call(r,e);i||(e=J(e),i=s.call(r,e));const l=o.call(r,e);return r.set(e,t),i?Ze(t,l)&&Ue(r,"set",e,t):Ue(r,"add",e,t),this}function gs(e){const t=J(this),{has:n,get:r}=kn(t);let s=n.call(t,e);s||(e=J(e),s=n.call(t,e)),r&&r.call(t,e);const o=t.delete(e);return s&&Ue(t,"delete",e,void 0),o}function ms(){const e=J(this),t=e.size!==0,n=e.clear();return t&&Ue(e,"clear",void 0,void 0),n}function fn(e,t){return function(r,s){const o=this,i=o.__v_raw,l=J(i),c=t?Dr:e?Br:Kt;return!e&&we(l,"iterate",ht),i.forEach((a,f)=>r.call(s,c(a),c(f),o))}}function dn(e,t,n){return function(...r){const s=this.__v_raw,o=J(s),i=Et(o),l=e==="entries"||e===Symbol.iterator&&i,c=e==="keys"&&i,a=s[e](...r),f=n?Dr:t?Br:Kt;return!t&&we(o,"iterate",c?Er:ht),{next(){const{value:h,done:m}=a.next();return m?{value:h,done:m}:{value:l?[f(h[0]),f(h[1])]:f(h),done:m}},[Symbol.iterator](){return this}}}}function Ke(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function yl(){const e={get(o){return cn(this,o)},get size(){return un(this)},has:an,add:hs,set:ps,delete:gs,clear:ms,forEach:fn(!1,!1)},t={get(o){return cn(this,o,!1,!0)},get size(){return un(this)},has:an,add(o){return hs.call(this,o,!0)},set(o,i){return ps.call(this,o,i,!0)},delete:gs,clear:ms,forEach:fn(!1,!0)},n={get(o){return cn(this,o,!0)},get size(){return un(this,!0)},has(o){return an.call(this,o,!0)},add:Ke("add"),set:Ke("set"),delete:Ke("delete"),clear:Ke("clear"),forEach:fn(!0,!1)},r={get(o){return cn(this,o,!0,!0)},get size(){return un(this,!0)},has(o){return an.call(this,o,!0)},add:Ke("add"),set:Ke("set"),delete:Ke("delete"),clear:Ke("clear"),forEach:fn(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(o=>{e[o]=dn(o,!1,!1),n[o]=dn(o,!0,!1),t[o]=dn(o,!1,!0),r[o]=dn(o,!0,!0)}),[e,n,t,r]}const[_l,vl,bl,wl]=yl();function kr(e,t){const n=t?e?wl:bl:e?vl:_l;return(r,s,o)=>s==="__v_isReactive"?!e:s==="__v_isReadonly"?e:s==="__v_raw"?r:Reflect.get(Y(n,s)&&s in r?n:r,s,o)}const El={get:kr(!1,!1)},Cl={get:kr(!1,!0)},Sl={get:kr(!0,!1)};const So=new WeakMap,xo=new WeakMap,To=new WeakMap,xl=new WeakMap;function Tl(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Al(e){return e.__v_skip||!Object.isExtensible(e)?0:Tl(Gi(e))}function Un(e){return yt(e)?e:Ur(e,!1,pl,El,So)}function Rl(e){return Ur(e,!1,ml,Cl,xo)}function Zt(e){return Ur(e,!0,gl,Sl,To)}function Ur(e,t,n,r,s){if(!Z(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const o=s.get(e);if(o)return o;const i=Al(e);if(i===0)return e;const l=new Proxy(e,i===2?r:n);return s.set(e,l),l}function St(e){return yt(e)?St(e.__v_raw):!!(e&&e.__v_isReactive)}function yt(e){return!!(e&&e.__v_isReadonly)}function Lt(e){return!!(e&&e.__v_isShallow)}function Ao(e){return e?!!e.__v_raw:!1}function J(e){const t=e&&e.__v_raw;return t?J(t):e}function Cn(e){return Object.isExtensible(e)&&ao(e,"__v_skip",!0),e}const Kt=e=>Z(e)?Un(e):e,Br=e=>Z(e)?Zt(e):e;class Ro{constructor(t,n,r,s){this.getter=t,this._setter=n,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this.effect=new $r(()=>t(this._value),()=>xt(this,this.effect._dirtyLevel===2?2:3)),this.effect.computed=this,this.effect.active=this._cacheable=!s,this.__v_isReadonly=r}get value(){const t=J(this);return(!t._cacheable||t.effect.dirty)&&Ze(t._value,t._value=t.effect.run())&&xt(t,4),Kr(t),t.effect._dirtyLevel>=2&&xt(t,2),t._value}set value(t){this._setter(t)}get _dirty(){return this.effect.dirty}set _dirty(t){this.effect.dirty=t}}function Ol(e,t,n=!1){let r,s;const o=q(e);return o?(r=e,s=Re):(r=e.get,s=e.set),new Ro(r,s,o||!s,n)}function Kr(e){var t;Je&&dt&&(e=J(e),_o(dt,(t=e.dep)!=null?t:e.dep=bo(()=>e.dep=void 0,e instanceof Ro?e:void 0)))}function xt(e,t=4,n,r){e=J(e);const s=e.dep;s&&vo(s,t)}function de(e){return!!(e&&e.__v_isRef===!0)}function ee(e){return Oo(e,!1)}function Wt(e){return Oo(e,!0)}function Oo(e,t){return de(e)?e:new Ll(e,t)}class Ll{constructor(t,n){this.__v_isShallow=n,this.dep=void 0,this.__v_isRef=!0,this._rawValue=n?t:J(t),this._value=n?t:Kt(t)}get value(){return Kr(this),this._value}set value(t){const n=this.__v_isShallow||Lt(t)||yt(t);t=n?t:J(t),Ze(t,this._rawValue)&&(this._rawValue,this._rawValue=t,this._value=n?t:Kt(t),xt(this,4))}}function Eu(e){xt(e,4)}function Lo(e){return de(e)?e.value:e}const Ml={get:(e,t,n)=>Lo(Reflect.get(e,t,n)),set:(e,t,n,r)=>{const s=e[t];return de(s)&&!de(n)?(s.value=n,!0):Reflect.set(e,t,n,r)}};function Mo(e){return St(e)?e:new Proxy(e,Ml)}class Il{constructor(t){this.dep=void 0,this.__v_isRef=!0;const{get:n,set:r}=t(()=>Kr(this),()=>xt(this));this._get=n,this._set=r}get value(){return this._get()}set value(t){this._set(t)}}function Pl(e){return new Il(e)}class Nl{constructor(t,n,r){this._object=t,this._key=n,this._defaultValue=r,this.__v_isRef=!0}get value(){const t=this._object[this._key];return t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}get dep(){return al(J(this._object),this._key)}}class Fl{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0}get value(){return this._getter()}}function Hl(e,t,n){return de(e)?e:q(e)?new Fl(e):Z(e)&&arguments.length>1?$l(e,t,n):ee(e)}function $l(e,t,n){const r=e[t];return de(r)?r:new Nl(e,t,n)}/** +* @vue/runtime-core v3.4.38 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/function Qe(e,t,n,r){try{return r?e(...r):e()}catch(s){en(s,t,n)}}function Oe(e,t,n,r){if(q(e)){const s=Qe(e,t,n,r);return s&&io(s)&&s.catch(o=>{en(o,t,n)}),s}if(V(e)){const s=[];for(let o=0;o>>1,s=ge[r],o=Gt(s);o$e&&ge.splice(t,1)}function kl(e){V(e)?Tt.push(...e):(!Ge||!Ge.includes(e,e.allowRecurse?ut+1:ut))&&Tt.push(e),Po()}function ys(e,t,n=qt?$e+1:0){for(;nGt(n)-Gt(r));if(Tt.length=0,Ge){Ge.push(...t);return}for(Ge=t,ut=0;ute.id==null?1/0:e.id,Ul=(e,t)=>{const n=Gt(e)-Gt(t);if(n===0){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function No(e){Cr=!1,qt=!0,ge.sort(Ul);try{for($e=0;$e{r._d&&Ls(-1);const o=Ln(t);let i;try{i=e(...s)}finally{Ln(o),r._d&&Ls(1)}return i};return r._n=!0,r._c=!0,r._d=!0,r}function xu(e,t){if(ue===null)return e;const n=Yn(ue),r=e.dirs||(e.dirs=[]);for(let s=0;s{e.isMounted=!0}),Do(()=>{e.isUnmounting=!0}),e}const xe=[Function,Array],Fo={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:xe,onEnter:xe,onAfterEnter:xe,onEnterCancelled:xe,onBeforeLeave:xe,onLeave:xe,onAfterLeave:xe,onLeaveCancelled:xe,onBeforeAppear:xe,onAppear:xe,onAfterAppear:xe,onAppearCancelled:xe},Ho=e=>{const t=e.subTree;return t.component?Ho(t.component):t},Wl={name:"BaseTransition",props:Fo,setup(e,{slots:t}){const n=Xn(),r=Kl();return()=>{const s=t.default&&jo(t.default(),!0);if(!s||!s.length)return;let o=s[0];if(s.length>1){for(const m of s)if(m.type!==ye){o=m;break}}const i=J(e),{mode:l}=i;if(r.isLeaving)return rr(o);const c=_s(o);if(!c)return rr(o);let a=Sr(c,i,r,n,m=>a=m);Mn(c,a);const f=n.subTree,h=f&&_s(f);if(h&&h.type!==ye&&!ft(c,h)&&Ho(n).type!==ye){const m=Sr(h,i,r,n);if(Mn(h,m),l==="out-in"&&c.type!==ye)return r.isLeaving=!0,m.afterLeave=()=>{r.isLeaving=!1,n.update.active!==!1&&(n.effect.dirty=!0,n.update())},rr(o);l==="in-out"&&c.type!==ye&&(m.delayLeave=(_,b,A)=>{const D=$o(r,h);D[String(h.key)]=h,_[ze]=()=>{b(),_[ze]=void 0,delete a.delayedLeave},a.delayedLeave=A})}return o}}},ql=Wl;function $o(e,t){const{leavingVNodes:n}=e;let r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function Sr(e,t,n,r,s){const{appear:o,mode:i,persisted:l=!1,onBeforeEnter:c,onEnter:a,onAfterEnter:f,onEnterCancelled:h,onBeforeLeave:m,onLeave:_,onAfterLeave:b,onLeaveCancelled:A,onBeforeAppear:D,onAppear:B,onAfterAppear:I,onAppearCancelled:p}=t,y=String(e.key),P=$o(n,e),T=(M,v)=>{M&&Oe(M,r,9,v)},H=(M,v)=>{const N=v[1];T(M,v),V(M)?M.every(S=>S.length<=1)&&N():M.length<=1&&N()},k={mode:i,persisted:l,beforeEnter(M){let v=c;if(!n.isMounted)if(o)v=D||c;else return;M[ze]&&M[ze](!0);const N=P[y];N&&ft(e,N)&&N.el[ze]&&N.el[ze](),T(v,[M])},enter(M){let v=a,N=f,S=h;if(!n.isMounted)if(o)v=B||a,N=I||f,S=p||h;else return;let W=!1;const te=M[hn]=se=>{W||(W=!0,se?T(S,[M]):T(N,[M]),k.delayedLeave&&k.delayedLeave(),M[hn]=void 0)};v?H(v,[M,te]):te()},leave(M,v){const N=String(e.key);if(M[hn]&&M[hn](!0),n.isUnmounting)return v();T(m,[M]);let S=!1;const W=M[ze]=te=>{S||(S=!0,v(),te?T(A,[M]):T(b,[M]),M[ze]=void 0,P[N]===e&&delete P[N])};P[N]=e,_?H(_,[M,W]):W()},clone(M){const v=Sr(M,t,n,r,s);return s&&s(v),v}};return k}function rr(e){if(nn(e))return e=et(e),e.children=null,e}function _s(e){if(!nn(e))return e;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&q(n.default))return n.default()}}function Mn(e,t){e.shapeFlag&6&&e.component?Mn(e.component.subTree,t):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function jo(e,t=!1,n){let r=[],s=0;for(let o=0;o1)for(let o=0;o!!e.type.__asyncLoader;/*! #__NO_SIDE_EFFECTS__ */function Tu(e){q(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:r,delay:s=200,timeout:o,suspensible:i=!0,onError:l}=e;let c=null,a,f=0;const h=()=>(f++,c=null,m()),m=()=>{let _;return c||(_=c=t().catch(b=>{if(b=b instanceof Error?b:new Error(String(b)),l)return new Promise((A,D)=>{l(b,()=>A(h()),()=>D(b),f+1)});throw b}).then(b=>_!==c&&c?c:(b&&(b.__esModule||b[Symbol.toStringTag]==="Module")&&(b=b.default),a=b,b)))};return qr({name:"AsyncComponentWrapper",__asyncLoader:m,get __asyncResolved(){return a},setup(){const _=ae;if(a)return()=>sr(a,_);const b=I=>{c=null,en(I,_,13,!r)};if(i&&_.suspense||sn)return m().then(I=>()=>sr(I,_)).catch(I=>(b(I),()=>r?le(r,{error:I}):null));const A=ee(!1),D=ee(),B=ee(!!s);return s&&setTimeout(()=>{B.value=!1},s),o!=null&&setTimeout(()=>{if(!A.value&&!D.value){const I=new Error(`Async component timed out after ${o}ms.`);b(I),D.value=I}},o),m().then(()=>{A.value=!0,_.parent&&nn(_.parent.vnode)&&(_.parent.effect.dirty=!0,Bn(_.parent.update))}).catch(I=>{b(I),D.value=I}),()=>{if(A.value&&a)return sr(a,_);if(D.value&&r)return le(r,{error:D.value});if(n&&!B.value)return le(n)}}})}function sr(e,t){const{ref:n,props:r,children:s,ce:o}=t.vnode,i=le(e,r,s);return i.ref=n,i.ce=o,delete t.vnode.ce,i}const nn=e=>e.type.__isKeepAlive;function Gl(e,t){Vo(e,"a",t)}function zl(e,t){Vo(e,"da",t)}function Vo(e,t,n=ae){const r=e.__wdc||(e.__wdc=()=>{let s=n;for(;s;){if(s.isDeactivated)return;s=s.parent}return e()});if(Wn(t,r,n),n){let s=n.parent;for(;s&&s.parent;)nn(s.parent.vnode)&&Xl(r,t,n,s),s=s.parent}}function Xl(e,t,n,r){const s=Wn(t,e,r,!0);qn(()=>{Nr(r[t],s)},n)}function Wn(e,t,n=ae,r=!1){if(n){const s=n[e]||(n[e]=[]),o=t.__weh||(t.__weh=(...i)=>{st();const l=rn(n),c=Oe(t,n,e,i);return l(),ot(),c});return r?s.unshift(o):s.push(o),o}}const Be=e=>(t,n=ae)=>{(!sn||e==="sp")&&Wn(e,(...r)=>t(...r),n)},Yl=Be("bm"),Pt=Be("m"),Jl=Be("bu"),Ql=Be("u"),Do=Be("bum"),qn=Be("um"),Zl=Be("sp"),ec=Be("rtg"),tc=Be("rtc");function nc(e,t=ae){Wn("ec",e,t)}const Gr="components",rc="directives";function Au(e,t){return zr(Gr,e,!0,t)||e}const ko=Symbol.for("v-ndc");function Ru(e){return ie(e)?zr(Gr,e,!1)||e:e||ko}function Ou(e){return zr(rc,e)}function zr(e,t,n=!0,r=!1){const s=ue||ae;if(s){const o=s.type;if(e===Gr){const l=Xc(o,!1);if(l&&(l===t||l===Ie(t)||l===jn(Ie(t))))return o}const i=vs(s[e]||o[e],t)||vs(s.appContext[e],t);return!i&&r?o:i}}function vs(e,t){return e&&(e[t]||e[Ie(t)]||e[jn(Ie(t))])}function Lu(e,t,n,r){let s;const o=n;if(V(e)||ie(e)){s=new Array(e.length);for(let i=0,l=e.length;it(i,l,void 0,o));else{const i=Object.keys(e);s=new Array(i.length);for(let l=0,c=i.length;lNn(t)?!(t.type===ye||t.type===ve&&!Uo(t.children)):!0)?e:null}function Iu(e,t){const n={};for(const r in e)n[/[A-Z]/.test(r)?`on:${r}`:wn(r)]=e[r];return n}const xr=e=>e?gi(e)?Yn(e):xr(e.parent):null,Vt=fe(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>xr(e.parent),$root:e=>xr(e.root),$emit:e=>e.emit,$options:e=>Xr(e),$forceUpdate:e=>e.f||(e.f=()=>{e.effect.dirty=!0,Bn(e.update)}),$nextTick:e=>e.n||(e.n=tn.bind(e.proxy)),$watch:e=>Mc.bind(e)}),or=(e,t)=>e!==re&&!e.__isScriptSetup&&Y(e,t),sc={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:r,data:s,props:o,accessCache:i,type:l,appContext:c}=e;let a;if(t[0]!=="$"){const _=i[t];if(_!==void 0)switch(_){case 1:return r[t];case 2:return s[t];case 4:return n[t];case 3:return o[t]}else{if(or(r,t))return i[t]=1,r[t];if(s!==re&&Y(s,t))return i[t]=2,s[t];if((a=e.propsOptions[0])&&Y(a,t))return i[t]=3,o[t];if(n!==re&&Y(n,t))return i[t]=4,n[t];Tr&&(i[t]=0)}}const f=Vt[t];let h,m;if(f)return t==="$attrs"&&we(e.attrs,"get",""),f(e);if((h=l.__cssModules)&&(h=h[t]))return h;if(n!==re&&Y(n,t))return i[t]=4,n[t];if(m=c.config.globalProperties,Y(m,t))return m[t]},set({_:e},t,n){const{data:r,setupState:s,ctx:o}=e;return or(s,t)?(s[t]=n,!0):r!==re&&Y(r,t)?(r[t]=n,!0):Y(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(o[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:s,propsOptions:o}},i){let l;return!!n[i]||e!==re&&Y(e,i)||or(t,i)||(l=o[0])&&Y(l,i)||Y(r,i)||Y(Vt,i)||Y(s.config.globalProperties,i)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:Y(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function Pu(){return oc().slots}function oc(){const e=Xn();return e.setupContext||(e.setupContext=yi(e))}function bs(e){return V(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let Tr=!0;function ic(e){const t=Xr(e),n=e.proxy,r=e.ctx;Tr=!1,t.beforeCreate&&ws(t.beforeCreate,e,"bc");const{data:s,computed:o,methods:i,watch:l,provide:c,inject:a,created:f,beforeMount:h,mounted:m,beforeUpdate:_,updated:b,activated:A,deactivated:D,beforeDestroy:B,beforeUnmount:I,destroyed:p,unmounted:y,render:P,renderTracked:T,renderTriggered:H,errorCaptured:k,serverPrefetch:M,expose:v,inheritAttrs:N,components:S,directives:W,filters:te}=t;if(a&&lc(a,r,null),i)for(const X in i){const K=i[X];q(K)&&(r[X]=K.bind(n))}if(s){const X=s.call(n,n);Z(X)&&(e.data=Un(X))}if(Tr=!0,o)for(const X in o){const K=o[X],he=q(K)?K.bind(n,n):q(K.get)?K.get.bind(n,n):Re,on=!q(K)&&q(K.set)?K.set.bind(n):Re,it=oe({get:he,set:on});Object.defineProperty(r,X,{enumerable:!0,configurable:!0,get:()=>it.value,set:Ne=>it.value=Ne})}if(l)for(const X in l)Bo(l[X],r,n,X);if(c){const X=q(c)?c.call(n):c;Reflect.ownKeys(X).forEach(K=>{hc(K,X[K])})}f&&ws(f,e,"c");function U(X,K){V(K)?K.forEach(he=>X(he.bind(n))):K&&X(K.bind(n))}if(U(Yl,h),U(Pt,m),U(Jl,_),U(Ql,b),U(Gl,A),U(zl,D),U(nc,k),U(tc,T),U(ec,H),U(Do,I),U(qn,y),U(Zl,M),V(v))if(v.length){const X=e.exposed||(e.exposed={});v.forEach(K=>{Object.defineProperty(X,K,{get:()=>n[K],set:he=>n[K]=he})})}else e.exposed||(e.exposed={});P&&e.render===Re&&(e.render=P),N!=null&&(e.inheritAttrs=N),S&&(e.components=S),W&&(e.directives=W)}function lc(e,t,n=Re){V(e)&&(e=Ar(e));for(const r in e){const s=e[r];let o;Z(s)?"default"in s?o=Ot(s.from||r,s.default,!0):o=Ot(s.from||r):o=Ot(s),de(o)?Object.defineProperty(t,r,{enumerable:!0,configurable:!0,get:()=>o.value,set:i=>o.value=i}):t[r]=o}}function ws(e,t,n){Oe(V(e)?e.map(r=>r.bind(t.proxy)):e.bind(t.proxy),t,n)}function Bo(e,t,n,r){const s=r.includes(".")?ii(n,r):()=>n[r];if(ie(e)){const o=t[e];q(o)&&je(s,o)}else if(q(e))je(s,e.bind(n));else if(Z(e))if(V(e))e.forEach(o=>Bo(o,t,n,r));else{const o=q(e.handler)?e.handler.bind(n):t[e.handler];q(o)&&je(s,o,e)}}function Xr(e){const t=e.type,{mixins:n,extends:r}=t,{mixins:s,optionsCache:o,config:{optionMergeStrategies:i}}=e.appContext,l=o.get(t);let c;return l?c=l:!s.length&&!n&&!r?c=t:(c={},s.length&&s.forEach(a=>In(c,a,i,!0)),In(c,t,i)),Z(t)&&o.set(t,c),c}function In(e,t,n,r=!1){const{mixins:s,extends:o}=t;o&&In(e,o,n,!0),s&&s.forEach(i=>In(e,i,n,!0));for(const i in t)if(!(r&&i==="expose")){const l=cc[i]||n&&n[i];e[i]=l?l(e[i],t[i]):t[i]}return e}const cc={data:Es,props:Cs,emits:Cs,methods:jt,computed:jt,beforeCreate:me,created:me,beforeMount:me,mounted:me,beforeUpdate:me,updated:me,beforeDestroy:me,beforeUnmount:me,destroyed:me,unmounted:me,activated:me,deactivated:me,errorCaptured:me,serverPrefetch:me,components:jt,directives:jt,watch:uc,provide:Es,inject:ac};function Es(e,t){return t?e?function(){return fe(q(e)?e.call(this,this):e,q(t)?t.call(this,this):t)}:t:e}function ac(e,t){return jt(Ar(e),Ar(t))}function Ar(e){if(V(e)){const t={};for(let n=0;n1)return n&&q(t)?t.call(r&&r.proxy):t}}const Wo={},qo=()=>Object.create(Wo),Go=e=>Object.getPrototypeOf(e)===Wo;function pc(e,t,n,r=!1){const s={},o=qo();e.propsDefaults=Object.create(null),zo(e,t,s,o);for(const i in e.propsOptions[0])i in s||(s[i]=void 0);n?e.props=r?s:Rl(s):e.type.props?e.props=s:e.props=o,e.attrs=o}function gc(e,t,n,r){const{props:s,attrs:o,vnode:{patchFlag:i}}=e,l=J(s),[c]=e.propsOptions;let a=!1;if((r||i>0)&&!(i&16)){if(i&8){const f=e.vnode.dynamicProps;for(let h=0;h{c=!0;const[m,_]=Xo(h,t,!0);fe(i,m),_&&l.push(..._)};!n&&t.mixins.length&&t.mixins.forEach(f),e.extends&&f(e.extends),e.mixins&&e.mixins.forEach(f)}if(!o&&!c)return Z(e)&&r.set(e,wt),wt;if(V(o))for(let f=0;fe[0]==="_"||e==="$stable",Yr=e=>V(e)?e.map(Ae):[Ae(e)],yc=(e,t,n)=>{if(t._n)return t;const r=Bl((...s)=>Yr(t(...s)),n);return r._c=!1,r},Jo=(e,t,n)=>{const r=e._ctx;for(const s in e){if(Yo(s))continue;const o=e[s];if(q(o))t[s]=yc(s,o,r);else if(o!=null){const i=Yr(o);t[s]=()=>i}}},Qo=(e,t)=>{const n=Yr(t);e.slots.default=()=>n},Zo=(e,t,n)=>{for(const r in t)(n||r!=="_")&&(e[r]=t[r])},_c=(e,t,n)=>{const r=e.slots=qo();if(e.vnode.shapeFlag&32){const s=t._;s?(Zo(r,t,n),n&&ao(r,"_",s,!0)):Jo(t,r)}else t&&Qo(e,t)},vc=(e,t,n)=>{const{vnode:r,slots:s}=e;let o=!0,i=re;if(r.shapeFlag&32){const l=t._;l?n&&l===1?o=!1:Zo(s,t,n):(o=!t.$stable,Jo(t,s)),i=t}else t&&(Qo(e,t),i={default:1});if(o)for(const l in s)!Yo(l)&&i[l]==null&&delete s[l]};function Pn(e,t,n,r,s=!1){if(V(e)){e.forEach((m,_)=>Pn(m,t&&(V(t)?t[_]:t),n,r,s));return}if(At(r)&&!s)return;const o=r.shapeFlag&4?Yn(r.component):r.el,i=s?null:o,{i:l,r:c}=e,a=t&&t.r,f=l.refs===re?l.refs={}:l.refs,h=l.setupState;if(a!=null&&a!==c&&(ie(a)?(f[a]=null,Y(h,a)&&(h[a]=null)):de(a)&&(a.value=null)),q(c))Qe(c,l,12,[i,f]);else{const m=ie(c),_=de(c);if(m||_){const b=()=>{if(e.f){const A=m?Y(h,c)?h[c]:f[c]:c.value;s?V(A)&&Nr(A,o):V(A)?A.includes(o)||A.push(o):m?(f[c]=[o],Y(h,c)&&(h[c]=f[c])):(c.value=[o],e.k&&(f[e.k]=c.value))}else m?(f[c]=i,Y(h,c)&&(h[c]=i)):_&&(c.value=i,e.k&&(f[e.k]=i))};i?(b.id=-1,_e(b,n)):b()}}}const ei=Symbol("_vte"),bc=e=>e.__isTeleport,Dt=e=>e&&(e.disabled||e.disabled===""),xs=e=>typeof SVGElement<"u"&&e instanceof SVGElement,Ts=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,Or=(e,t)=>{const n=e&&e.to;return ie(n)?t?t(n):null:n},wc={name:"Teleport",__isTeleport:!0,process(e,t,n,r,s,o,i,l,c,a){const{mc:f,pc:h,pbc:m,o:{insert:_,querySelector:b,createText:A,createComment:D}}=a,B=Dt(t.props);let{shapeFlag:I,children:p,dynamicChildren:y}=t;if(e==null){const P=t.el=A(""),T=t.anchor=A("");_(P,n,r),_(T,n,r);const H=t.target=Or(t.props,b),k=ni(H,t,A,_);H&&(i==="svg"||xs(H)?i="svg":(i==="mathml"||Ts(H))&&(i="mathml"));const M=(v,N)=>{I&16&&f(p,v,N,s,o,i,l,c)};B?M(n,T):H&&M(H,k)}else{t.el=e.el,t.targetStart=e.targetStart;const P=t.anchor=e.anchor,T=t.target=e.target,H=t.targetAnchor=e.targetAnchor,k=Dt(e.props),M=k?n:T,v=k?P:H;if(i==="svg"||xs(T)?i="svg":(i==="mathml"||Ts(T))&&(i="mathml"),y?(m(e.dynamicChildren,y,M,s,o,i,l),Jr(e,t,!0)):c||h(e,t,M,v,s,o,i,l,!1),B)k?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):pn(t,n,P,a,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const N=t.target=Or(t.props,b);N&&pn(t,N,null,a,0)}else k&&pn(t,T,H,a,1)}ti(t)},remove(e,t,n,{um:r,o:{remove:s}},o){const{shapeFlag:i,children:l,anchor:c,targetStart:a,targetAnchor:f,target:h,props:m}=e;if(h&&(s(a),s(f)),o&&s(c),i&16){const _=o||!Dt(m);for(let b=0;b{As||(console.error("Hydration completed but contains mismatches."),As=!0)},Cc=e=>e.namespaceURI.includes("svg")&&e.tagName!=="foreignObject",Sc=e=>e.namespaceURI.includes("MathML"),gn=e=>{if(Cc(e))return"svg";if(Sc(e))return"mathml"},mn=e=>e.nodeType===8;function xc(e){const{mt:t,p:n,o:{patchProp:r,createText:s,nextSibling:o,parentNode:i,remove:l,insert:c,createComment:a}}=e,f=(p,y)=>{if(!y.hasChildNodes()){n(null,p,y),On(),y._vnode=p;return}h(y.firstChild,p,null,null,null),On(),y._vnode=p},h=(p,y,P,T,H,k=!1)=>{k=k||!!y.dynamicChildren;const M=mn(p)&&p.data==="[",v=()=>A(p,y,P,T,H,M),{type:N,ref:S,shapeFlag:W,patchFlag:te}=y;let se=p.nodeType;y.el=p,te===-2&&(k=!1,y.dynamicChildren=null);let U=null;switch(N){case pt:se!==3?y.children===""?(c(y.el=s(""),i(p),p),U=p):U=v():(p.data!==y.children&&(bt(),p.data=y.children),U=o(p));break;case ye:I(p)?(U=o(p),B(y.el=p.content.firstChild,p,P)):se!==8||M?U=v():U=o(p);break;case kt:if(M&&(p=o(p),se=p.nodeType),se===1||se===3){U=p;const X=!y.children.length;for(let K=0;K{k=k||!!y.dynamicChildren;const{type:M,props:v,patchFlag:N,shapeFlag:S,dirs:W,transition:te}=y,se=M==="input"||M==="option";if(se||N!==-1){W&&He(y,null,P,"created");let U=!1;if(I(p)){U=si(T,te)&&P&&P.vnode.props&&P.vnode.props.appear;const K=p.content.firstChild;U&&te.beforeEnter(K),B(K,p,P),y.el=p=K}if(S&16&&!(v&&(v.innerHTML||v.textContent))){let K=_(p.firstChild,y,p,P,T,H,k);for(;K;){bt();const he=K;K=K.nextSibling,l(he)}}else S&8&&p.textContent!==y.children&&(bt(),p.textContent=y.children);if(v){if(se||!k||N&48){const K=p.tagName.includes("-");for(const he in v)(se&&(he.endsWith("value")||he==="indeterminate")||Jt(he)&&!Ct(he)||he[0]==="."||K)&&r(p,he,null,v[he],void 0,P)}else if(v.onClick)r(p,"onClick",null,v.onClick,void 0,P);else if(N&4&&St(v.style))for(const K in v.style)v.style[K]}let X;(X=v&&v.onVnodeBeforeMount)&&Te(X,P,y),W&&He(y,null,P,"beforeMount"),((X=v&&v.onVnodeMounted)||W||U)&&ci(()=>{X&&Te(X,P,y),U&&te.enter(p),W&&He(y,null,P,"mounted")},T)}return p.nextSibling},_=(p,y,P,T,H,k,M)=>{M=M||!!y.dynamicChildren;const v=y.children,N=v.length;for(let S=0;S{const{slotScopeIds:M}=y;M&&(H=H?H.concat(M):M);const v=i(p),N=_(o(p),y,v,P,T,H,k);return N&&mn(N)&&N.data==="]"?o(y.anchor=N):(bt(),c(y.anchor=a("]"),v,N),N)},A=(p,y,P,T,H,k)=>{if(bt(),y.el=null,k){const N=D(p);for(;;){const S=o(p);if(S&&S!==N)l(S);else break}}const M=o(p),v=i(p);return l(p),n(null,y,v,M,P,T,gn(v),H),M},D=(p,y="[",P="]")=>{let T=0;for(;p;)if(p=o(p),p&&mn(p)&&(p.data===y&&T++,p.data===P)){if(T===0)return o(p);T--}return p},B=(p,y,P)=>{const T=y.parentNode;T&&T.replaceChild(p,y);let H=P;for(;H;)H.vnode.el===y&&(H.vnode.el=H.subTree.el=p),H=H.parent},I=p=>p.nodeType===1&&p.tagName.toLowerCase()==="template";return[f,h]}const _e=ci;function Tc(e){return ri(e)}function Ac(e){return ri(e,xc)}function ri(e,t){const n=uo();n.__VUE__=!0;const{insert:r,remove:s,patchProp:o,createElement:i,createText:l,createComment:c,setText:a,setElementText:f,parentNode:h,nextSibling:m,setScopeId:_=Re,insertStaticContent:b}=e,A=(u,d,g,C=null,w=null,x=null,L=void 0,R=null,O=!!d.dynamicChildren)=>{if(u===d)return;u&&!ft(u,d)&&(C=ln(u),Ne(u,w,x,!0),u=null),d.patchFlag===-2&&(O=!1,d.dynamicChildren=null);const{type:E,ref:F,shapeFlag:j}=d;switch(E){case pt:D(u,d,g,C);break;case ye:B(u,d,g,C);break;case kt:u==null&&I(d,g,C,L);break;case ve:S(u,d,g,C,w,x,L,R,O);break;default:j&1?P(u,d,g,C,w,x,L,R,O):j&6?W(u,d,g,C,w,x,L,R,O):(j&64||j&128)&&E.process(u,d,g,C,w,x,L,R,O,_t)}F!=null&&w&&Pn(F,u&&u.ref,x,d||u,!d)},D=(u,d,g,C)=>{if(u==null)r(d.el=l(d.children),g,C);else{const w=d.el=u.el;d.children!==u.children&&a(w,d.children)}},B=(u,d,g,C)=>{u==null?r(d.el=c(d.children||""),g,C):d.el=u.el},I=(u,d,g,C)=>{[u.el,u.anchor]=b(u.children,d,g,C,u.el,u.anchor)},p=({el:u,anchor:d},g,C)=>{let w;for(;u&&u!==d;)w=m(u),r(u,g,C),u=w;r(d,g,C)},y=({el:u,anchor:d})=>{let g;for(;u&&u!==d;)g=m(u),s(u),u=g;s(d)},P=(u,d,g,C,w,x,L,R,O)=>{d.type==="svg"?L="svg":d.type==="math"&&(L="mathml"),u==null?T(d,g,C,w,x,L,R,O):M(u,d,w,x,L,R,O)},T=(u,d,g,C,w,x,L,R)=>{let O,E;const{props:F,shapeFlag:j,transition:$,dirs:G}=u;if(O=u.el=i(u.type,x,F&&F.is,F),j&8?f(O,u.children):j&16&&k(u.children,O,null,C,w,ir(u,x),L,R),G&&He(u,null,C,"created"),H(O,u,u.scopeId,L,C),F){for(const ne in F)ne!=="value"&&!Ct(ne)&&o(O,ne,null,F[ne],x,C);"value"in F&&o(O,"value",null,F.value,x),(E=F.onVnodeBeforeMount)&&Te(E,C,u)}G&&He(u,null,C,"beforeMount");const z=si(w,$);z&&$.beforeEnter(O),r(O,d,g),((E=F&&F.onVnodeMounted)||z||G)&&_e(()=>{E&&Te(E,C,u),z&&$.enter(O),G&&He(u,null,C,"mounted")},w)},H=(u,d,g,C,w)=>{if(g&&_(u,g),C)for(let x=0;x{for(let E=O;E{const R=d.el=u.el;let{patchFlag:O,dynamicChildren:E,dirs:F}=d;O|=u.patchFlag&16;const j=u.props||re,$=d.props||re;let G;if(g&<(g,!1),(G=$.onVnodeBeforeUpdate)&&Te(G,g,d,u),F&&He(d,u,g,"beforeUpdate"),g&<(g,!0),(j.innerHTML&&$.innerHTML==null||j.textContent&&$.textContent==null)&&f(R,""),E?v(u.dynamicChildren,E,R,g,C,ir(d,w),x):L||K(u,d,R,null,g,C,ir(d,w),x,!1),O>0){if(O&16)N(R,j,$,g,w);else if(O&2&&j.class!==$.class&&o(R,"class",null,$.class,w),O&4&&o(R,"style",j.style,$.style,w),O&8){const z=d.dynamicProps;for(let ne=0;ne{G&&Te(G,g,d,u),F&&He(d,u,g,"updated")},C)},v=(u,d,g,C,w,x,L)=>{for(let R=0;R{if(d!==g){if(d!==re)for(const x in d)!Ct(x)&&!(x in g)&&o(u,x,d[x],null,w,C);for(const x in g){if(Ct(x))continue;const L=g[x],R=d[x];L!==R&&x!=="value"&&o(u,x,R,L,w,C)}"value"in g&&o(u,"value",d.value,g.value,w)}},S=(u,d,g,C,w,x,L,R,O)=>{const E=d.el=u?u.el:l(""),F=d.anchor=u?u.anchor:l("");let{patchFlag:j,dynamicChildren:$,slotScopeIds:G}=d;G&&(R=R?R.concat(G):G),u==null?(r(E,g,C),r(F,g,C),k(d.children||[],g,F,w,x,L,R,O)):j>0&&j&64&&$&&u.dynamicChildren?(v(u.dynamicChildren,$,g,w,x,L,R),(d.key!=null||w&&d===w.subTree)&&Jr(u,d,!0)):K(u,d,g,F,w,x,L,R,O)},W=(u,d,g,C,w,x,L,R,O)=>{d.slotScopeIds=R,u==null?d.shapeFlag&512?w.ctx.activate(d,g,C,L,O):te(d,g,C,w,x,L,O):se(u,d,O)},te=(u,d,g,C,w,x,L)=>{const R=u.component=Wc(u,C,w);if(nn(u)&&(R.ctx.renderer=_t),qc(R,!1,L),R.asyncDep){if(w&&w.registerDep(R,U,L),!u.el){const O=R.subTree=le(ye);B(null,O,d,g)}}else U(R,u,d,g,w,x,L)},se=(u,d,g)=>{const C=d.component=u.component;if(Hc(u,d,g))if(C.asyncDep&&!C.asyncResolved){X(C,d,g);return}else C.next=d,Dl(C.update),C.effect.dirty=!0,C.update();else d.el=u.el,C.vnode=d},U=(u,d,g,C,w,x,L)=>{const R=()=>{if(u.isMounted){let{next:F,bu:j,u:$,parent:G,vnode:z}=u;{const vt=oi(u);if(vt){F&&(F.el=z.el,X(u,F,L)),vt.asyncDep.then(()=>{u.isUnmounted||R()});return}}let ne=F,Q;lt(u,!1),F?(F.el=z.el,X(u,F,L)):F=z,j&&En(j),(Q=F.props&&F.props.onVnodeBeforeUpdate)&&Te(Q,G,F,z),lt(u,!0);const ce=lr(u),Me=u.subTree;u.subTree=ce,A(Me,ce,h(Me.el),ln(Me),u,w,x),F.el=ce.el,ne===null&&$c(u,ce.el),$&&_e($,w),(Q=F.props&&F.props.onVnodeUpdated)&&_e(()=>Te(Q,G,F,z),w)}else{let F;const{el:j,props:$}=d,{bm:G,m:z,parent:ne}=u,Q=At(d);if(lt(u,!1),G&&En(G),!Q&&(F=$&&$.onVnodeBeforeMount)&&Te(F,ne,d),lt(u,!0),j&&tr){const ce=()=>{u.subTree=lr(u),tr(j,u.subTree,u,w,null)};Q?d.type.__asyncLoader().then(()=>!u.isUnmounted&&ce()):ce()}else{const ce=u.subTree=lr(u);A(null,ce,g,C,u,w,x),d.el=ce.el}if(z&&_e(z,w),!Q&&(F=$&&$.onVnodeMounted)){const ce=d;_e(()=>Te(F,ne,ce),w)}(d.shapeFlag&256||ne&&At(ne.vnode)&&ne.vnode.shapeFlag&256)&&u.a&&_e(u.a,w),u.isMounted=!0,d=g=C=null}},O=u.effect=new $r(R,Re,()=>Bn(E),u.scope),E=u.update=()=>{O.dirty&&O.run()};E.i=u,E.id=u.uid,lt(u,!0),E()},X=(u,d,g)=>{d.component=u;const C=u.vnode.props;u.vnode=d,u.next=null,gc(u,d.props,C,g),vc(u,d.children,g),st(),ys(u),ot()},K=(u,d,g,C,w,x,L,R,O=!1)=>{const E=u&&u.children,F=u?u.shapeFlag:0,j=d.children,{patchFlag:$,shapeFlag:G}=d;if($>0){if($&128){on(E,j,g,C,w,x,L,R,O);return}else if($&256){he(E,j,g,C,w,x,L,R,O);return}}G&8?(F&16&&Nt(E,w,x),j!==E&&f(g,j)):F&16?G&16?on(E,j,g,C,w,x,L,R,O):Nt(E,w,x,!0):(F&8&&f(g,""),G&16&&k(j,g,C,w,x,L,R,O))},he=(u,d,g,C,w,x,L,R,O)=>{u=u||wt,d=d||wt;const E=u.length,F=d.length,j=Math.min(E,F);let $;for($=0;$F?Nt(u,w,x,!0,!1,j):k(d,g,C,w,x,L,R,O,j)},on=(u,d,g,C,w,x,L,R,O)=>{let E=0;const F=d.length;let j=u.length-1,$=F-1;for(;E<=j&&E<=$;){const G=u[E],z=d[E]=O?Xe(d[E]):Ae(d[E]);if(ft(G,z))A(G,z,g,null,w,x,L,R,O);else break;E++}for(;E<=j&&E<=$;){const G=u[j],z=d[$]=O?Xe(d[$]):Ae(d[$]);if(ft(G,z))A(G,z,g,null,w,x,L,R,O);else break;j--,$--}if(E>j){if(E<=$){const G=$+1,z=G$)for(;E<=j;)Ne(u[E],w,x,!0),E++;else{const G=E,z=E,ne=new Map;for(E=z;E<=$;E++){const Ee=d[E]=O?Xe(d[E]):Ae(d[E]);Ee.key!=null&&ne.set(Ee.key,E)}let Q,ce=0;const Me=$-z+1;let vt=!1,os=0;const Ft=new Array(Me);for(E=0;E=Me){Ne(Ee,w,x,!0);continue}let Fe;if(Ee.key!=null)Fe=ne.get(Ee.key);else for(Q=z;Q<=$;Q++)if(Ft[Q-z]===0&&ft(Ee,d[Q])){Fe=Q;break}Fe===void 0?Ne(Ee,w,x,!0):(Ft[Fe-z]=E+1,Fe>=os?os=Fe:vt=!0,A(Ee,d[Fe],g,null,w,x,L,R,O),ce++)}const is=vt?Rc(Ft):wt;for(Q=is.length-1,E=Me-1;E>=0;E--){const Ee=z+E,Fe=d[Ee],ls=Ee+1{const{el:x,type:L,transition:R,children:O,shapeFlag:E}=u;if(E&6){it(u.component.subTree,d,g,C);return}if(E&128){u.suspense.move(d,g,C);return}if(E&64){L.move(u,d,g,_t);return}if(L===ve){r(x,d,g);for(let j=0;jR.enter(x),w);else{const{leave:j,delayLeave:$,afterLeave:G}=R,z=()=>r(x,d,g),ne=()=>{j(x,()=>{z(),G&&G()})};$?$(x,z,ne):ne()}else r(x,d,g)},Ne=(u,d,g,C=!1,w=!1)=>{const{type:x,props:L,ref:R,children:O,dynamicChildren:E,shapeFlag:F,patchFlag:j,dirs:$,cacheIndex:G}=u;if(j===-2&&(w=!1),R!=null&&Pn(R,null,g,u,!0),G!=null&&(d.renderCache[G]=void 0),F&256){d.ctx.deactivate(u);return}const z=F&1&&$,ne=!At(u);let Q;if(ne&&(Q=L&&L.onVnodeBeforeUnmount)&&Te(Q,d,u),F&6)Ki(u.component,g,C);else{if(F&128){u.suspense.unmount(g,C);return}z&&He(u,null,d,"beforeUnmount"),F&64?u.type.remove(u,d,g,_t,C):E&&!E.hasOnce&&(x!==ve||j>0&&j&64)?Nt(E,d,g,!1,!0):(x===ve&&j&384||!w&&F&16)&&Nt(O,d,g),C&&rs(u)}(ne&&(Q=L&&L.onVnodeUnmounted)||z)&&_e(()=>{Q&&Te(Q,d,u),z&&He(u,null,d,"unmounted")},g)},rs=u=>{const{type:d,el:g,anchor:C,transition:w}=u;if(d===ve){Bi(g,C);return}if(d===kt){y(u);return}const x=()=>{s(g),w&&!w.persisted&&w.afterLeave&&w.afterLeave()};if(u.shapeFlag&1&&w&&!w.persisted){const{leave:L,delayLeave:R}=w,O=()=>L(g,x);R?R(u.el,x,O):O()}else x()},Bi=(u,d)=>{let g;for(;u!==d;)g=m(u),s(u),u=g;s(d)},Ki=(u,d,g)=>{const{bum:C,scope:w,update:x,subTree:L,um:R,m:O,a:E}=u;Rs(O),Rs(E),C&&En(C),w.stop(),x&&(x.active=!1,Ne(L,u,d,g)),R&&_e(R,d),_e(()=>{u.isUnmounted=!0},d),d&&d.pendingBranch&&!d.isUnmounted&&u.asyncDep&&!u.asyncResolved&&u.suspenseId===d.pendingId&&(d.deps--,d.deps===0&&d.resolve())},Nt=(u,d,g,C=!1,w=!1,x=0)=>{for(let L=x;L{if(u.shapeFlag&6)return ln(u.component.subTree);if(u.shapeFlag&128)return u.suspense.next();const d=m(u.anchor||u.el),g=d&&d[ei];return g?m(g):d};let Zn=!1;const ss=(u,d,g)=>{u==null?d._vnode&&Ne(d._vnode,null,null,!0):A(d._vnode||null,u,d,null,null,null,g),d._vnode=u,Zn||(Zn=!0,ys(),On(),Zn=!1)},_t={p:A,um:Ne,m:it,r:rs,mt:te,mc:k,pc:K,pbc:v,n:ln,o:e};let er,tr;return t&&([er,tr]=t(_t)),{render:ss,hydrate:er,createApp:dc(ss,er)}}function ir({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function lt({effect:e,update:t},n){e.allowRecurse=t.allowRecurse=n}function si(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Jr(e,t,n=!1){const r=e.children,s=t.children;if(V(r)&&V(s))for(let o=0;o>1,e[n[l]]0&&(t[r]=n[o-1]),n[o]=r)}}for(o=n.length,i=n[o-1];o-- >0;)n[o]=i,i=t[i];return n}function oi(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:oi(t)}function Rs(e){if(e)for(let t=0;tOt(Oc);function Qr(e,t){return Gn(e,null,t)}function Fu(e,t){return Gn(e,null,{flush:"post"})}const yn={};function je(e,t,n){return Gn(e,t,n)}function Gn(e,t,{immediate:n,deep:r,flush:s,once:o,onTrack:i,onTrigger:l}=re){if(t&&o){const T=t;t=(...H)=>{T(...H),P()}}const c=ae,a=T=>r===!0?T:Ye(T,r===!1?1:void 0);let f,h=!1,m=!1;if(de(e)?(f=()=>e.value,h=Lt(e)):St(e)?(f=()=>a(e),h=!0):V(e)?(m=!0,h=e.some(T=>St(T)||Lt(T)),f=()=>e.map(T=>{if(de(T))return T.value;if(St(T))return a(T);if(q(T))return Qe(T,c,2)})):q(e)?t?f=()=>Qe(e,c,2):f=()=>(_&&_(),Oe(e,c,3,[b])):f=Re,t&&r){const T=f;f=()=>Ye(T())}let _,b=T=>{_=p.onStop=()=>{Qe(T,c,4),_=p.onStop=void 0}},A;if(sn)if(b=Re,t?n&&Oe(t,c,3,[f(),m?[]:void 0,b]):f(),s==="sync"){const T=Lc();A=T.__watcherHandles||(T.__watcherHandles=[])}else return Re;let D=m?new Array(e.length).fill(yn):yn;const B=()=>{if(!(!p.active||!p.dirty))if(t){const T=p.run();(r||h||(m?T.some((H,k)=>Ze(H,D[k])):Ze(T,D)))&&(_&&_(),Oe(t,c,3,[T,D===yn?void 0:m&&D[0]===yn?[]:D,b]),D=T)}else p.run()};B.allowRecurse=!!t;let I;s==="sync"?I=B:s==="post"?I=()=>_e(B,c&&c.suspense):(B.pre=!0,c&&(B.id=c.uid),I=()=>Bn(B));const p=new $r(f,Re,I),y=go(),P=()=>{p.stop(),y&&Nr(y.effects,p)};return t?n?B():D=p.run():s==="post"?_e(p.run.bind(p),c&&c.suspense):p.run(),A&&A.push(P),P}function Mc(e,t,n){const r=this.proxy,s=ie(e)?e.includes(".")?ii(r,e):()=>r[e]:e.bind(r,r);let o;q(t)?o=t:(o=t.handler,n=t);const i=rn(this),l=Gn(s,o.bind(r),n);return i(),l}function ii(e,t){const n=t.split(".");return()=>{let r=e;for(let s=0;s{Ye(r,t,n)});else if(co(e)){for(const r in e)Ye(e[r],t,n);for(const r of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,r)&&Ye(e[r],t,n)}return e}const Ic=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Ie(t)}Modifiers`]||e[`${rt(t)}Modifiers`];function Pc(e,t,...n){if(e.isUnmounted)return;const r=e.vnode.props||re;let s=n;const o=t.startsWith("update:"),i=o&&Ic(r,t.slice(7));i&&(i.trim&&(s=n.map(f=>ie(f)?f.trim():f)),i.number&&(s=n.map(An)));let l,c=r[l=wn(t)]||r[l=wn(Ie(t))];!c&&o&&(c=r[l=wn(rt(t))]),c&&Oe(c,e,6,s);const a=r[l+"Once"];if(a){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,Oe(a,e,6,s)}}function li(e,t,n=!1){const r=t.emitsCache,s=r.get(e);if(s!==void 0)return s;const o=e.emits;let i={},l=!1;if(!q(e)){const c=a=>{const f=li(a,t,!0);f&&(l=!0,fe(i,f))};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}return!o&&!l?(Z(e)&&r.set(e,null),null):(V(o)?o.forEach(c=>i[c]=null):fe(i,o),Z(e)&&r.set(e,i),i)}function zn(e,t){return!e||!Jt(t)?!1:(t=t.slice(2).replace(/Once$/,""),Y(e,t[0].toLowerCase()+t.slice(1))||Y(e,rt(t))||Y(e,t))}function lr(e){const{type:t,vnode:n,proxy:r,withProxy:s,propsOptions:[o],slots:i,attrs:l,emit:c,render:a,renderCache:f,props:h,data:m,setupState:_,ctx:b,inheritAttrs:A}=e,D=Ln(e);let B,I;try{if(n.shapeFlag&4){const y=s||r,P=y;B=Ae(a.call(P,y,f,h,_,m,b)),I=l}else{const y=t;B=Ae(y.length>1?y(h,{attrs:l,slots:i,emit:c}):y(h,null)),I=t.props?l:Nc(l)}}catch(y){Ut.length=0,en(y,e,1),B=le(ye)}let p=B;if(I&&A!==!1){const y=Object.keys(I),{shapeFlag:P}=p;y.length&&P&7&&(o&&y.some(Pr)&&(I=Fc(I,o)),p=et(p,I,!1,!0))}return n.dirs&&(p=et(p,null,!1,!0),p.dirs=p.dirs?p.dirs.concat(n.dirs):n.dirs),n.transition&&(p.transition=n.transition),B=p,Ln(D),B}const Nc=e=>{let t;for(const n in e)(n==="class"||n==="style"||Jt(n))&&((t||(t={}))[n]=e[n]);return t},Fc=(e,t)=>{const n={};for(const r in e)(!Pr(r)||!(r.slice(9)in t))&&(n[r]=e[r]);return n};function Hc(e,t,n){const{props:r,children:s,component:o}=e,{props:i,children:l,patchFlag:c}=t,a=o.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return r?Os(r,i,a):!!i;if(c&8){const f=t.dynamicProps;for(let h=0;he.__isSuspense;function ci(e,t){t&&t.pendingBranch?V(e)?t.effects.push(...e):t.effects.push(e):kl(e)}const ve=Symbol.for("v-fgt"),pt=Symbol.for("v-txt"),ye=Symbol.for("v-cmt"),kt=Symbol.for("v-stc"),Ut=[];let Se=null;function ai(e=!1){Ut.push(Se=e?null:[])}function Vc(){Ut.pop(),Se=Ut[Ut.length-1]||null}let zt=1;function Ls(e){zt+=e,e<0&&Se&&(Se.hasOnce=!0)}function ui(e){return e.dynamicChildren=zt>0?Se||wt:null,Vc(),zt>0&&Se&&Se.push(e),e}function Hu(e,t,n,r,s,o){return ui(hi(e,t,n,r,s,o,!0))}function fi(e,t,n,r,s){return ui(le(e,t,n,r,s,!0))}function Nn(e){return e?e.__v_isVNode===!0:!1}function ft(e,t){return e.type===t.type&&e.key===t.key}const di=({key:e})=>e??null,Sn=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?ie(e)||de(e)||q(e)?{i:ue,r:e,k:t,f:!!n}:e:null);function hi(e,t=null,n=null,r=0,s=null,o=e===ve?0:1,i=!1,l=!1){const c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&di(t),ref:t&&Sn(t),scopeId:Kn,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:o,patchFlag:r,dynamicProps:s,dynamicChildren:null,appContext:null,ctx:ue};return l?(Zr(c,n),o&128&&e.normalize(c)):n&&(c.shapeFlag|=ie(n)?8:16),zt>0&&!i&&Se&&(c.patchFlag>0||o&6)&&c.patchFlag!==32&&Se.push(c),c}const le=Dc;function Dc(e,t=null,n=null,r=0,s=null,o=!1){if((!e||e===ko)&&(e=ye),Nn(e)){const l=et(e,t,!0);return n&&Zr(l,n),zt>0&&!o&&Se&&(l.shapeFlag&6?Se[Se.indexOf(e)]=l:Se.push(l)),l.patchFlag=-2,l}if(Yc(e)&&(e=e.__vccOpts),t){t=kc(t);let{class:l,style:c}=t;l&&!ie(l)&&(t.class=Dn(l)),Z(c)&&(Ao(c)&&!V(c)&&(c=fe({},c)),t.style=Vn(c))}const i=ie(e)?1:jc(e)?128:bc(e)?64:Z(e)?4:q(e)?2:0;return hi(e,t,n,r,s,i,o,!0)}function kc(e){return e?Ao(e)||Go(e)?fe({},e):e:null}function et(e,t,n=!1,r=!1){const{props:s,ref:o,patchFlag:i,children:l,transition:c}=e,a=t?Uc(s||{},t):s,f={__v_isVNode:!0,__v_skip:!0,type:e.type,props:a,key:a&&di(a),ref:t&&t.ref?n&&o?V(o)?o.concat(Sn(t)):[o,Sn(t)]:Sn(t):o,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:l,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==ve?i===-1?16:i|16:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:c,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&et(e.ssContent),ssFallback:e.ssFallback&&et(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return c&&r&&Mn(f,c.clone(f)),f}function pi(e=" ",t=0){return le(pt,null,e,t)}function $u(e,t){const n=le(kt,null,e);return n.staticCount=t,n}function ju(e="",t=!1){return t?(ai(),fi(ye,null,e)):le(ye,null,e)}function Ae(e){return e==null||typeof e=="boolean"?le(ye):V(e)?le(ve,null,e.slice()):typeof e=="object"?Xe(e):le(pt,null,String(e))}function Xe(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:et(e)}function Zr(e,t){let n=0;const{shapeFlag:r}=e;if(t==null)t=null;else if(V(t))n=16;else if(typeof t=="object")if(r&65){const s=t.default;s&&(s._c&&(s._d=!1),Zr(e,s()),s._c&&(s._d=!0));return}else{n=32;const s=t._;!s&&!Go(t)?t._ctx=ue:s===3&&ue&&(ue.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else q(t)?(t={default:t,_ctx:ue},n=32):(t=String(t),r&64?(n=16,t=[pi(t)]):n=8);e.children=t,e.shapeFlag|=n}function Uc(...e){const t={};for(let n=0;nae||ue;let Fn,Lr;{const e=uo(),t=(n,r)=>{let s;return(s=e[n])||(s=e[n]=[]),s.push(r),o=>{s.length>1?s.forEach(i=>i(o)):s[0](o)}};Fn=t("__VUE_INSTANCE_SETTERS__",n=>ae=n),Lr=t("__VUE_SSR_SETTERS__",n=>sn=n)}const rn=e=>{const t=ae;return Fn(e),e.scope.on(),()=>{e.scope.off(),Fn(t)}},Ms=()=>{ae&&ae.scope.off(),Fn(null)};function gi(e){return e.vnode.shapeFlag&4}let sn=!1;function qc(e,t=!1,n=!1){t&&Lr(t);const{props:r,children:s}=e.vnode,o=gi(e);pc(e,r,o,t),_c(e,s,n);const i=o?Gc(e,t):void 0;return t&&Lr(!1),i}function Gc(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,sc);const{setup:r}=n;if(r){const s=e.setupContext=r.length>1?yi(e):null,o=rn(e);st();const i=Qe(r,e,0,[e.props,s]);if(ot(),o(),io(i)){if(i.then(Ms,Ms),t)return i.then(l=>{Is(e,l,t)}).catch(l=>{en(l,e,0)});e.asyncDep=i}else Is(e,i,t)}else mi(e,t)}function Is(e,t,n){q(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:Z(t)&&(e.setupState=Mo(t)),mi(e,n)}let Ps;function mi(e,t,n){const r=e.type;if(!e.render){if(!t&&Ps&&!r.render){const s=r.template||Xr(e).template;if(s){const{isCustomElement:o,compilerOptions:i}=e.appContext.config,{delimiters:l,compilerOptions:c}=r,a=fe(fe({isCustomElement:o,delimiters:l},i),c);r.render=Ps(s,a)}}e.render=r.render||Re}{const s=rn(e);st();try{ic(e)}finally{ot(),s()}}}const zc={get(e,t){return we(e,"get",""),e[t]}};function yi(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,zc),slots:e.slots,emit:e.emit,expose:t}}function Yn(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Mo(Cn(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in Vt)return Vt[n](e)},has(t,n){return n in t||n in Vt}})):e.proxy}function Xc(e,t=!0){return q(e)?e.displayName||e.name:e.name||t&&e.__name}function Yc(e){return q(e)&&"__vccOpts"in e}const oe=(e,t)=>Ol(e,t,sn);function Mr(e,t,n){const r=arguments.length;return r===2?Z(t)&&!V(t)?Nn(t)?le(e,null,[t]):le(e,t):le(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):r===3&&Nn(n)&&(n=[n]),le(e,t,n))}const Jc="3.4.38";/** +* @vue/runtime-dom v3.4.38 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/const Qc="http://www.w3.org/2000/svg",Zc="http://www.w3.org/1998/Math/MathML",De=typeof document<"u"?document:null,Ns=De&&De.createElement("template"),ea={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{const s=t==="svg"?De.createElementNS(Qc,e):t==="mathml"?De.createElementNS(Zc,e):n?De.createElement(e,{is:n}):De.createElement(e);return e==="select"&&r&&r.multiple!=null&&s.setAttribute("multiple",r.multiple),s},createText:e=>De.createTextNode(e),createComment:e=>De.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>De.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,s,o){const i=n?n.previousSibling:t.lastChild;if(s&&(s===o||s.nextSibling))for(;t.insertBefore(s.cloneNode(!0),n),!(s===o||!(s=s.nextSibling)););else{Ns.innerHTML=r==="svg"?`${e}`:r==="mathml"?`${e}`:e;const l=Ns.content;if(r==="svg"||r==="mathml"){const c=l.firstChild;for(;c.firstChild;)l.appendChild(c.firstChild);l.removeChild(c)}t.insertBefore(l,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},We="transition",Ht="animation",Xt=Symbol("_vtc"),_i=(e,{slots:t})=>Mr(ql,ta(e),t);_i.displayName="Transition";const vi={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String};_i.props=fe({},Fo,vi);const ct=(e,t=[])=>{V(e)?e.forEach(n=>n(...t)):e&&e(...t)},Fs=e=>e?V(e)?e.some(t=>t.length>1):e.length>1:!1;function ta(e){const t={};for(const S in e)S in vi||(t[S]=e[S]);if(e.css===!1)return t;const{name:n="v",type:r,duration:s,enterFromClass:o=`${n}-enter-from`,enterActiveClass:i=`${n}-enter-active`,enterToClass:l=`${n}-enter-to`,appearFromClass:c=o,appearActiveClass:a=i,appearToClass:f=l,leaveFromClass:h=`${n}-leave-from`,leaveActiveClass:m=`${n}-leave-active`,leaveToClass:_=`${n}-leave-to`}=e,b=na(s),A=b&&b[0],D=b&&b[1],{onBeforeEnter:B,onEnter:I,onEnterCancelled:p,onLeave:y,onLeaveCancelled:P,onBeforeAppear:T=B,onAppear:H=I,onAppearCancelled:k=p}=t,M=(S,W,te)=>{at(S,W?f:l),at(S,W?a:i),te&&te()},v=(S,W)=>{S._isLeaving=!1,at(S,h),at(S,_),at(S,m),W&&W()},N=S=>(W,te)=>{const se=S?H:I,U=()=>M(W,S,te);ct(se,[W,U]),Hs(()=>{at(W,S?c:o),qe(W,S?f:l),Fs(se)||$s(W,r,A,U)})};return fe(t,{onBeforeEnter(S){ct(B,[S]),qe(S,o),qe(S,i)},onBeforeAppear(S){ct(T,[S]),qe(S,c),qe(S,a)},onEnter:N(!1),onAppear:N(!0),onLeave(S,W){S._isLeaving=!0;const te=()=>v(S,W);qe(S,h),qe(S,m),oa(),Hs(()=>{S._isLeaving&&(at(S,h),qe(S,_),Fs(y)||$s(S,r,D,te))}),ct(y,[S,te])},onEnterCancelled(S){M(S,!1),ct(p,[S])},onAppearCancelled(S){M(S,!0),ct(k,[S])},onLeaveCancelled(S){v(S),ct(P,[S])}})}function na(e){if(e==null)return null;if(Z(e))return[cr(e.enter),cr(e.leave)];{const t=cr(e);return[t,t]}}function cr(e){return Yi(e)}function qe(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[Xt]||(e[Xt]=new Set)).add(t)}function at(e,t){t.split(/\s+/).forEach(r=>r&&e.classList.remove(r));const n=e[Xt];n&&(n.delete(t),n.size||(e[Xt]=void 0))}function Hs(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let ra=0;function $s(e,t,n,r){const s=e._endId=++ra,o=()=>{s===e._endId&&r()};if(n)return setTimeout(o,n);const{type:i,timeout:l,propCount:c}=sa(e,t);if(!i)return r();const a=i+"end";let f=0;const h=()=>{e.removeEventListener(a,m),o()},m=_=>{_.target===e&&++f>=c&&h()};setTimeout(()=>{f(n[b]||"").split(", "),s=r(`${We}Delay`),o=r(`${We}Duration`),i=js(s,o),l=r(`${Ht}Delay`),c=r(`${Ht}Duration`),a=js(l,c);let f=null,h=0,m=0;t===We?i>0&&(f=We,h=i,m=o.length):t===Ht?a>0&&(f=Ht,h=a,m=c.length):(h=Math.max(i,a),f=h>0?i>a?We:Ht:null,m=f?f===We?o.length:c.length:0);const _=f===We&&/\b(transform|all)(,|$)/.test(r(`${We}Property`).toString());return{type:f,timeout:h,propCount:m,hasTransform:_}}function js(e,t){for(;e.lengthVs(n)+Vs(e[r])))}function Vs(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function oa(){return document.body.offsetHeight}function ia(e,t,n){const r=e[Xt];r&&(t=(t?[t,...r]:[...r]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const Hn=Symbol("_vod"),bi=Symbol("_vsh"),Vu={beforeMount(e,{value:t},{transition:n}){e[Hn]=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):$t(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:r}){!t!=!n&&(r?t?(r.beforeEnter(e),$t(e,!0),r.enter(e)):r.leave(e,()=>{$t(e,!1)}):$t(e,t))},beforeUnmount(e,{value:t}){$t(e,t)}};function $t(e,t){e.style.display=t?e[Hn]:"none",e[bi]=!t}const la=Symbol(""),ca=/(^|;)\s*display\s*:/;function aa(e,t,n){const r=e.style,s=ie(n);let o=!1;if(n&&!s){if(t)if(ie(t))for(const i of t.split(";")){const l=i.slice(0,i.indexOf(":")).trim();n[l]==null&&xn(r,l,"")}else for(const i in t)n[i]==null&&xn(r,i,"");for(const i in n)i==="display"&&(o=!0),xn(r,i,n[i])}else if(s){if(t!==n){const i=r[la];i&&(n+=";"+i),r.cssText=n,o=ca.test(n)}}else t&&e.removeAttribute("style");Hn in e&&(e[Hn]=o?r.display:"",e[bi]&&(r.display="none"))}const Ds=/\s*!important$/;function xn(e,t,n){if(V(n))n.forEach(r=>xn(e,t,r));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const r=ua(e,t);Ds.test(n)?e.setProperty(rt(r),n.replace(Ds,""),"important"):e[r]=n}}const ks=["Webkit","Moz","ms"],ar={};function ua(e,t){const n=ar[t];if(n)return n;let r=Ie(t);if(r!=="filter"&&r in e)return ar[t]=r;r=jn(r);for(let s=0;sur||(ga.then(()=>ur=0),ur=Date.now());function ya(e,t){const n=r=>{if(!r._vts)r._vts=Date.now();else if(r._vts<=n.attached)return;Oe(_a(r,n.value),t,5,[r])};return n.value=e,n.attached=ma(),n}function _a(e,t){if(V(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(r=>s=>!s._stopped&&r&&r(s))}else return t}const qs=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,va=(e,t,n,r,s,o)=>{const i=s==="svg";t==="class"?ia(e,r,i):t==="style"?aa(e,n,r):Jt(t)?Pr(t)||ha(e,t,n,r,o):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):ba(e,t,r,i))?(fa(e,t,r),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Bs(e,t,r,i,o,t!=="value")):(t==="true-value"?e._trueValue=r:t==="false-value"&&(e._falseValue=r),Bs(e,t,r,i))};function ba(e,t,n,r){if(r)return!!(t==="innerHTML"||t==="textContent"||t in e&&qs(t)&&q(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const s=e.tagName;if(s==="IMG"||s==="VIDEO"||s==="CANVAS"||s==="SOURCE")return!1}return qs(t)&&ie(n)?!1:t in e}const tt=e=>{const t=e.props["onUpdate:modelValue"]||!1;return V(t)?n=>En(t,n):t};function wa(e){e.target.composing=!0}function Gs(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const Le=Symbol("_assign"),Du={created(e,{modifiers:{lazy:t,trim:n,number:r}},s){e[Le]=tt(s);const o=r||s.props&&s.props.type==="number";ke(e,t?"change":"input",i=>{if(i.target.composing)return;let l=e.value;n&&(l=l.trim()),o&&(l=An(l)),e[Le](l)}),n&&ke(e,"change",()=>{e.value=e.value.trim()}),t||(ke(e,"compositionstart",wa),ke(e,"compositionend",Gs),ke(e,"change",Gs))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:r,trim:s,number:o}},i){if(e[Le]=tt(i),e.composing)return;const l=(o||e.type==="number")&&!/^0\d/.test(e.value)?An(e.value):e.value,c=t??"";l!==c&&(document.activeElement===e&&e.type!=="range"&&(r&&t===n||s&&e.value.trim()===c)||(e.value=c))}},ku={deep:!0,created(e,t,n){e[Le]=tt(n),ke(e,"change",()=>{const r=e._modelValue,s=Mt(e),o=e.checked,i=e[Le];if(V(r)){const l=Hr(r,s),c=l!==-1;if(o&&!c)i(r.concat(s));else if(!o&&c){const a=[...r];a.splice(l,1),i(a)}}else if(It(r)){const l=new Set(r);o?l.add(s):l.delete(s),i(l)}else i(wi(e,o))})},mounted:zs,beforeUpdate(e,t,n){e[Le]=tt(n),zs(e,t,n)}};function zs(e,{value:t,oldValue:n},r){e._modelValue=t,V(t)?e.checked=Hr(t,r.props.value)>-1:It(t)?e.checked=t.has(r.props.value):t!==n&&(e.checked=mt(t,wi(e,!0)))}const Uu={created(e,{value:t},n){e.checked=mt(t,n.props.value),e[Le]=tt(n),ke(e,"change",()=>{e[Le](Mt(e))})},beforeUpdate(e,{value:t,oldValue:n},r){e[Le]=tt(r),t!==n&&(e.checked=mt(t,r.props.value))}},Bu={deep:!0,created(e,{value:t,modifiers:{number:n}},r){const s=It(t);ke(e,"change",()=>{const o=Array.prototype.filter.call(e.options,i=>i.selected).map(i=>n?An(Mt(i)):Mt(i));e[Le](e.multiple?s?new Set(o):o:o[0]),e._assigning=!0,tn(()=>{e._assigning=!1})}),e[Le]=tt(r)},mounted(e,{value:t,modifiers:{number:n}}){Xs(e,t)},beforeUpdate(e,t,n){e[Le]=tt(n)},updated(e,{value:t,modifiers:{number:n}}){e._assigning||Xs(e,t)}};function Xs(e,t,n){const r=e.multiple,s=V(t);if(!(r&&!s&&!It(t))){for(let o=0,i=e.options.length;oString(f)===String(c)):l.selected=Hr(t,c)>-1}else l.selected=t.has(c);else if(mt(Mt(l),t)){e.selectedIndex!==o&&(e.selectedIndex=o);return}}!r&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function Mt(e){return"_value"in e?e._value:e.value}function wi(e,t){const n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}const Ea=["ctrl","shift","alt","meta"],Ca={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>Ea.some(n=>e[`${n}Key`]&&!t.includes(n))},Ku=(e,t)=>{const n=e._withMods||(e._withMods={}),r=t.join(".");return n[r]||(n[r]=(s,...o)=>{for(let i=0;i{const n=e._withKeys||(e._withKeys={}),r=t.join(".");return n[r]||(n[r]=s=>{if(!("key"in s))return;const o=rt(s.key);if(t.some(i=>i===o||Sa[i]===o))return e(s)})},Ei=fe({patchProp:va},ea);let Bt,Ys=!1;function xa(){return Bt||(Bt=Tc(Ei))}function Ta(){return Bt=Ys?Bt:Ac(Ei),Ys=!0,Bt}const qu=(...e)=>{const t=xa().createApp(...e),{mount:n}=t;return t.mount=r=>{const s=Si(r);if(!s)return;const o=t._component;!q(o)&&!o.render&&!o.template&&(o.template=s.innerHTML),s.innerHTML="";const i=n(s,!1,Ci(s));return s instanceof Element&&(s.removeAttribute("v-cloak"),s.setAttribute("data-v-app","")),i},t},Gu=(...e)=>{const t=Ta().createApp(...e),{mount:n}=t;return t.mount=r=>{const s=Si(r);if(s)return n(s,!0,Ci(s))},t};function Ci(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Si(e){return ie(e)?document.querySelector(e):e}const zu=(e,t)=>{const n=e.__vccOpts||e;for(const[r,s]of t)n[r]=s;return n},Aa=window.__VP_SITE_DATA__;function Jn(e){return go()?(ll(e),!0):!1}function be(e){return typeof e=="function"?e():Lo(e)}const Qn=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Xu=e=>e!=null,Ra=Object.prototype.toString,Oa=e=>Ra.call(e)==="[object Object]",Yt=()=>{},Js=La();function La(){var e,t;return Qn&&((e=window==null?void 0:window.navigator)==null?void 0:e.userAgent)&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||((t=window==null?void 0:window.navigator)==null?void 0:t.maxTouchPoints)>2&&/iPad|Macintosh/.test(window==null?void 0:window.navigator.userAgent))}function xi(e,t){function n(...r){return new Promise((s,o)=>{Promise.resolve(e(()=>t.apply(this,r),{fn:t,thisArg:this,args:r})).then(s).catch(o)})}return n}const Ti=e=>e();function Ai(e,t={}){let n,r,s=Yt;const o=l=>{clearTimeout(l),s(),s=Yt};return l=>{const c=be(e),a=be(t.maxWait);return n&&o(n),c<=0||a!==void 0&&a<=0?(r&&(o(r),r=null),Promise.resolve(l())):new Promise((f,h)=>{s=t.rejectOnCancel?h:f,a&&!r&&(r=setTimeout(()=>{n&&o(n),r=null,f(l())},a)),n=setTimeout(()=>{r&&o(r),r=null,f(l())},c)})}}function Ma(e=Ti){const t=ee(!0);function n(){t.value=!1}function r(){t.value=!0}const s=(...o)=>{t.value&&e(...o)};return{isActive:Zt(t),pause:n,resume:r,eventFilter:s}}function Ia(e){let t;function n(){return t||(t=e()),t}return n.reset=async()=>{const r=t;t=void 0,r&&await r},n}function Pa(e){return Xn()}function Ri(...e){if(e.length!==1)return Hl(...e);const t=e[0];return typeof t=="function"?Zt(Pl(()=>({get:t,set:Yt}))):ee(t)}function Yu(e,t=200,n={}){return xi(Ai(t,n),e)}function Oi(e,t,n={}){const{eventFilter:r=Ti,...s}=n;return je(e,xi(r,t),s)}function Na(e,t,n={}){const{eventFilter:r,...s}=n,{eventFilter:o,pause:i,resume:l,isActive:c}=Ma(r);return{stop:Oi(e,t,{...s,eventFilter:o}),pause:i,resume:l,isActive:c}}function es(e,t=!0,n){Pa()?Pt(e,n):t?e():tn(e)}function Fa(e,t,n={}){const{immediate:r=!0}=n,s=ee(!1);let o=null;function i(){o&&(clearTimeout(o),o=null)}function l(){s.value=!1,i()}function c(...a){i(),s.value=!0,o=setTimeout(()=>{s.value=!1,o=null,e(...a)},be(t))}return r&&(s.value=!0,Qn&&c()),Jn(l),{isPending:Zt(s),start:c,stop:l}}function Ju(e=!1,t={}){const{truthyValue:n=!0,falsyValue:r=!1}=t,s=de(e),o=ee(e);function i(l){if(arguments.length)return o.value=l,o.value;{const c=be(n);return o.value=o.value===c?be(r):c,o.value}}return s?i:[o,i]}function Qu(e,t,n={}){const{debounce:r=0,maxWait:s=void 0,...o}=n;return Oi(e,t,{...o,eventFilter:Ai(r,{maxWait:s})})}function Zu(e,t,n){let r;de(n)?r={evaluating:n}:r={};const{lazy:s=!1,evaluating:o=void 0,shallow:i=!0,onError:l=Yt}=r,c=ee(!s),a=i?Wt(t):ee(t);let f=0;return Qr(async h=>{if(!c.value)return;f++;const m=f;let _=!1;o&&Promise.resolve().then(()=>{o.value=!0});try{const b=await e(A=>{h(()=>{o&&(o.value=!1),_||A()})});m===f&&(a.value=b)}catch(b){l(b)}finally{o&&m===f&&(o.value=!1),_=!0}}),s?oe(()=>(c.value=!0,a.value)):a}function Li(e){var t;const n=be(e);return(t=n==null?void 0:n.$el)!=null?t:n}const Pe=Qn?window:void 0,Mi=Qn?window.navigator:void 0;function nt(...e){let t,n,r,s;if(typeof e[0]=="string"||Array.isArray(e[0])?([n,r,s]=e,t=Pe):[t,n,r,s]=e,!t)return Yt;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);const o=[],i=()=>{o.forEach(f=>f()),o.length=0},l=(f,h,m,_)=>(f.addEventListener(h,m,_),()=>f.removeEventListener(h,m,_)),c=je(()=>[Li(t),be(s)],([f,h])=>{if(i(),!f)return;const m=Oa(h)?{...h}:h;o.push(...n.flatMap(_=>r.map(b=>l(f,_,b,m))))},{immediate:!0,flush:"post"}),a=()=>{c(),i()};return Jn(a),a}function Ha(e){return typeof e=="function"?e:typeof e=="string"?t=>t.key===e:Array.isArray(e)?t=>e.includes(t.key):()=>!0}function ef(...e){let t,n,r={};e.length===3?(t=e[0],n=e[1],r=e[2]):e.length===2?typeof e[1]=="object"?(t=!0,n=e[0],r=e[1]):(t=e[0],n=e[1]):(t=!0,n=e[0]);const{target:s=Pe,eventName:o="keydown",passive:i=!1,dedupe:l=!1}=r,c=Ha(t);return nt(s,o,f=>{f.repeat&&be(l)||c(f)&&n(f)},i)}function $a(){const e=ee(!1),t=Xn();return t&&Pt(()=>{e.value=!0},t),e}function ts(e){const t=$a();return oe(()=>(t.value,!!e()))}function Ii(e,t={}){const{window:n=Pe}=t,r=ts(()=>n&&"matchMedia"in n&&typeof n.matchMedia=="function");let s;const o=ee(!1),i=a=>{o.value=a.matches},l=()=>{s&&("removeEventListener"in s?s.removeEventListener("change",i):s.removeListener(i))},c=Qr(()=>{r.value&&(l(),s=n.matchMedia(be(e)),"addEventListener"in s?s.addEventListener("change",i):s.addListener(i),o.value=s.matches)});return Jn(()=>{c(),l(),s=void 0}),o}function Qs(e,t={}){const{controls:n=!1,navigator:r=Mi}=t,s=ts(()=>r&&"permissions"in r),o=Wt(),i=typeof e=="string"?{name:e}:e,l=Wt(),c=()=>{var f,h;l.value=(h=(f=o.value)==null?void 0:f.state)!=null?h:"prompt"};nt(o,"change",c);const a=Ia(async()=>{if(s.value){if(!o.value)try{o.value=await r.permissions.query(i)}catch{o.value=void 0}finally{c()}if(n)return J(o.value)}});return a(),n?{state:l,isSupported:s,query:a}:l}function tf(e={}){const{navigator:t=Mi,read:n=!1,source:r,copiedDuring:s=1500,legacy:o=!1}=e,i=ts(()=>t&&"clipboard"in t),l=Qs("clipboard-read"),c=Qs("clipboard-write"),a=oe(()=>i.value||o),f=ee(""),h=ee(!1),m=Fa(()=>h.value=!1,s);function _(){i.value&&B(l.value)?t.clipboard.readText().then(I=>{f.value=I}):f.value=D()}a.value&&n&&nt(["copy","cut"],_);async function b(I=be(r)){a.value&&I!=null&&(i.value&&B(c.value)?await t.clipboard.writeText(I):A(I),f.value=I,h.value=!0,m.start())}function A(I){const p=document.createElement("textarea");p.value=I??"",p.style.position="absolute",p.style.opacity="0",document.body.appendChild(p),p.select(),document.execCommand("copy"),p.remove()}function D(){var I,p,y;return(y=(p=(I=document==null?void 0:document.getSelection)==null?void 0:I.call(document))==null?void 0:p.toString())!=null?y:""}function B(I){return I==="granted"||I==="prompt"}return{isSupported:a,text:f,copied:h,copy:b}}const _n=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},vn="__vueuse_ssr_handlers__",ja=Va();function Va(){return vn in _n||(_n[vn]=_n[vn]||{}),_n[vn]}function Pi(e,t){return ja[e]||t}function Da(e){return e==null?"any":e instanceof Set?"set":e instanceof Map?"map":e instanceof Date?"date":typeof e=="boolean"?"boolean":typeof e=="string"?"string":typeof e=="object"?"object":Number.isNaN(e)?"any":"number"}const ka={boolean:{read:e=>e==="true",write:e=>String(e)},object:{read:e=>JSON.parse(e),write:e=>JSON.stringify(e)},number:{read:e=>Number.parseFloat(e),write:e=>String(e)},any:{read:e=>e,write:e=>String(e)},string:{read:e=>e,write:e=>String(e)},map:{read:e=>new Map(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e.entries()))},set:{read:e=>new Set(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e))},date:{read:e=>new Date(e),write:e=>e.toISOString()}},Zs="vueuse-storage";function ns(e,t,n,r={}){var s;const{flush:o="pre",deep:i=!0,listenToStorageChanges:l=!0,writeDefaults:c=!0,mergeDefaults:a=!1,shallow:f,window:h=Pe,eventFilter:m,onError:_=v=>{console.error(v)},initOnMounted:b}=r,A=(f?Wt:ee)(typeof t=="function"?t():t);if(!n)try{n=Pi("getDefaultStorage",()=>{var v;return(v=Pe)==null?void 0:v.localStorage})()}catch(v){_(v)}if(!n)return A;const D=be(t),B=Da(D),I=(s=r.serializer)!=null?s:ka[B],{pause:p,resume:y}=Na(A,()=>T(A.value),{flush:o,deep:i,eventFilter:m});h&&l&&es(()=>{n instanceof Storage?nt(h,"storage",k):nt(h,Zs,M),b&&k()}),b||k();function P(v,N){if(h){const S={key:e,oldValue:v,newValue:N,storageArea:n};h.dispatchEvent(n instanceof Storage?new StorageEvent("storage",S):new CustomEvent(Zs,{detail:S}))}}function T(v){try{const N=n.getItem(e);if(v==null)P(N,null),n.removeItem(e);else{const S=I.write(v);N!==S&&(n.setItem(e,S),P(N,S))}}catch(N){_(N)}}function H(v){const N=v?v.newValue:n.getItem(e);if(N==null)return c&&D!=null&&n.setItem(e,I.write(D)),D;if(!v&&a){const S=I.read(N);return typeof a=="function"?a(S,D):B==="object"&&!Array.isArray(S)?{...D,...S}:S}else return typeof N!="string"?N:I.read(N)}function k(v){if(!(v&&v.storageArea!==n)){if(v&&v.key==null){A.value=D;return}if(!(v&&v.key!==e)){p();try{(v==null?void 0:v.newValue)!==I.write(A.value)&&(A.value=H(v))}catch(N){_(N)}finally{v?tn(y):y()}}}}function M(v){k(v.detail)}return A}function Ni(e){return Ii("(prefers-color-scheme: dark)",e)}const Ua="*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}";function Ba(e={}){const{selector:t="html",attribute:n="class",initialValue:r="auto",window:s=Pe,storage:o,storageKey:i="vueuse-color-scheme",listenToStorageChanges:l=!0,storageRef:c,emitAuto:a,disableTransition:f=!0}=e,h={auto:"",light:"light",dark:"dark",...e.modes||{}},m=Ni({window:s}),_=oe(()=>m.value?"dark":"light"),b=c||(i==null?Ri(r):ns(i,r,o,{window:s,listenToStorageChanges:l})),A=oe(()=>b.value==="auto"?_.value:b.value),D=Pi("updateHTMLAttrs",(y,P,T)=>{const H=typeof y=="string"?s==null?void 0:s.document.querySelector(y):Li(y);if(!H)return;const k=new Set,M=new Set;let v=null;if(P==="class"){const S=T.split(/\s/g);Object.values(h).flatMap(W=>(W||"").split(/\s/g)).filter(Boolean).forEach(W=>{S.includes(W)?k.add(W):M.add(W)})}else v={key:P,value:T};if(k.size===0&&M.size===0&&v===null)return;let N;f&&(N=s.document.createElement("style"),N.appendChild(document.createTextNode(Ua)),s.document.head.appendChild(N));for(const S of k)H.classList.add(S);for(const S of M)H.classList.remove(S);v&&H.setAttribute(v.key,v.value),f&&(s.getComputedStyle(N).opacity,document.head.removeChild(N))});function B(y){var P;D(t,n,(P=h[y])!=null?P:y)}function I(y){e.onChanged?e.onChanged(y,B):B(y)}je(A,I,{flush:"post",immediate:!0}),es(()=>I(A.value));const p=oe({get(){return a?b.value:A.value},set(y){b.value=y}});try{return Object.assign(p,{store:b,system:_,state:A})}catch{return p}}function Ka(e={}){const{valueDark:t="dark",valueLight:n="",window:r=Pe}=e,s=Ba({...e,onChanged:(l,c)=>{var a;e.onChanged?(a=e.onChanged)==null||a.call(e,l==="dark",c,l):c(l)},modes:{dark:t,light:n}}),o=oe(()=>s.system?s.system.value:Ni({window:r}).value?"dark":"light");return oe({get(){return s.value==="dark"},set(l){const c=l?"dark":"light";o.value===c?s.value="auto":s.value=c}})}function fr(e){return typeof Window<"u"&&e instanceof Window?e.document.documentElement:typeof Document<"u"&&e instanceof Document?e.documentElement:e}function nf(e,t,n={}){const{window:r=Pe}=n;return ns(e,t,r==null?void 0:r.localStorage,n)}function Fi(e){const t=window.getComputedStyle(e);if(t.overflowX==="scroll"||t.overflowY==="scroll"||t.overflowX==="auto"&&e.clientWidth1?!0:(t.preventDefault&&t.preventDefault(),!1)}const dr=new WeakMap;function rf(e,t=!1){const n=ee(t);let r=null,s="";je(Ri(e),l=>{const c=fr(be(l));if(c){const a=c;if(dr.get(a)||dr.set(a,a.style.overflow),a.style.overflow!=="hidden"&&(s=a.style.overflow),a.style.overflow==="hidden")return n.value=!0;if(n.value)return a.style.overflow="hidden"}},{immediate:!0});const o=()=>{const l=fr(be(e));!l||n.value||(Js&&(r=nt(l,"touchmove",c=>{Wa(c)},{passive:!1})),l.style.overflow="hidden",n.value=!0)},i=()=>{const l=fr(be(e));!l||!n.value||(Js&&(r==null||r()),l.style.overflow=s,dr.delete(l),n.value=!1)};return Jn(i),oe({get(){return n.value},set(l){l?o():i()}})}function sf(e,t,n={}){const{window:r=Pe}=n;return ns(e,t,r==null?void 0:r.sessionStorage,n)}function of(e={}){const{window:t=Pe,behavior:n="auto"}=e;if(!t)return{x:ee(0),y:ee(0)};const r=ee(t.scrollX),s=ee(t.scrollY),o=oe({get(){return r.value},set(l){scrollTo({left:l,behavior:n})}}),i=oe({get(){return s.value},set(l){scrollTo({top:l,behavior:n})}});return nt(t,"scroll",()=>{r.value=t.scrollX,s.value=t.scrollY},{capture:!1,passive:!0}),{x:o,y:i}}function lf(e={}){const{window:t=Pe,initialWidth:n=Number.POSITIVE_INFINITY,initialHeight:r=Number.POSITIVE_INFINITY,listenOrientation:s=!0,includeScrollbar:o=!0,type:i="inner"}=e,l=ee(n),c=ee(r),a=()=>{t&&(i==="outer"?(l.value=t.outerWidth,c.value=t.outerHeight):o?(l.value=t.innerWidth,c.value=t.innerHeight):(l.value=t.document.documentElement.clientWidth,c.value=t.document.documentElement.clientHeight))};if(a(),es(a),nt("resize",a,{passive:!0}),s){const f=Ii("(orientation: portrait)");je(f,()=>a())}return{width:l,height:c}}const hr={BASE_URL:"/vue3-baidu-map-gl/",DEV:!1,MODE:"production",PROD:!0,SSR:!1};var pr={};const Hi=/^(?:[a-z]+:|\/\/)/i,qa="vitepress-theme-appearance",Ga=/#.*$/,za=/[?#].*$/,Xa=/(?:(^|\/)index)?\.(?:md|html)$/,pe=typeof document<"u",$i={relativePath:"404.md",filePath:"",title:"404",description:"Not Found",headers:[],frontmatter:{sidebar:!1,layout:"page"},lastUpdated:0,isNotFound:!0};function Ya(e,t,n=!1){if(t===void 0)return!1;if(e=eo(`/${e}`),n)return new RegExp(t).test(e);if(eo(t)!==e)return!1;const r=t.match(Ga);return r?(pe?location.hash:"")===r[0]:!0}function eo(e){return decodeURI(e).replace(za,"").replace(Xa,"$1")}function Ja(e){return Hi.test(e)}function Qa(e,t){return Object.keys((e==null?void 0:e.locales)||{}).find(n=>n!=="root"&&!Ja(n)&&Ya(t,`/${n}/`,!0))||"root"}function Za(e,t){var r,s,o,i,l,c,a;const n=Qa(e,t);return Object.assign({},e,{localeIndex:n,lang:((r=e.locales[n])==null?void 0:r.lang)??e.lang,dir:((s=e.locales[n])==null?void 0:s.dir)??e.dir,title:((o=e.locales[n])==null?void 0:o.title)??e.title,titleTemplate:((i=e.locales[n])==null?void 0:i.titleTemplate)??e.titleTemplate,description:((l=e.locales[n])==null?void 0:l.description)??e.description,head:Vi(e.head,((c=e.locales[n])==null?void 0:c.head)??[]),themeConfig:{...e.themeConfig,...(a=e.locales[n])==null?void 0:a.themeConfig}})}function ji(e,t){const n=t.title||e.title,r=t.titleTemplate??e.titleTemplate;if(typeof r=="string"&&r.includes(":title"))return r.replace(/:title/g,n);const s=eu(e.title,r);return n===s.slice(3)?n:`${n}${s}`}function eu(e,t){return t===!1?"":t===!0||t===void 0?` | ${e}`:e===t?"":` | ${t}`}function tu(e,t){const[n,r]=t;if(n!=="meta")return!1;const s=Object.entries(r)[0];return s==null?!1:e.some(([o,i])=>o===n&&i[s[0]]===s[1])}function Vi(e,t){return[...e.filter(n=>!tu(t,n)),...t]}const nu=/[\u0000-\u001F"#$&*+,:;<=>?[\]^`{|}\u007F]/g,ru=/^[a-z]:/i;function to(e){const t=ru.exec(e),n=t?t[0]:"";return n+e.slice(n.length).replace(nu,"_").replace(/(^|\/)_+(?=[^/]*$)/,"$1")}const gr=new Set;function su(e){if(gr.size===0){const n=typeof process=="object"&&(pr==null?void 0:pr.VITE_EXTRA_EXTENSIONS)||(hr==null?void 0:hr.VITE_EXTRA_EXTENSIONS)||"";("3g2,3gp,aac,ai,apng,au,avif,bin,bmp,cer,class,conf,crl,css,csv,dll,doc,eps,epub,exe,gif,gz,ics,ief,jar,jpe,jpeg,jpg,js,json,jsonld,m4a,man,mid,midi,mjs,mov,mp2,mp3,mp4,mpe,mpeg,mpg,mpp,oga,ogg,ogv,ogx,opus,otf,p10,p7c,p7m,p7s,pdf,png,ps,qt,roff,rtf,rtx,ser,svg,t,tif,tiff,tr,ts,tsv,ttf,txt,vtt,wav,weba,webm,webp,woff,woff2,xhtml,xml,yaml,yml,zip"+(n&&typeof n=="string"?","+n:"")).split(",").forEach(r=>gr.add(r))}const t=e.split(".").pop();return t==null||!gr.has(t.toLowerCase())}function cf(e){return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}const ou=Symbol(),gt=Wt(Aa);function af(e){const t=oe(()=>Za(gt.value,e.data.relativePath)),n=t.value.appearance,r=n==="force-dark"?ee(!0):n?Ka({storageKey:qa,initialValue:()=>n==="dark"?"dark":"auto",...typeof n=="object"?n:{}}):ee(!1),s=ee(pe?location.hash:"");return pe&&window.addEventListener("hashchange",()=>{s.value=location.hash}),je(()=>e.data,()=>{s.value=pe?location.hash:""}),{site:t,theme:oe(()=>t.value.themeConfig),page:oe(()=>e.data),frontmatter:oe(()=>e.data.frontmatter),params:oe(()=>e.data.params),lang:oe(()=>t.value.lang),dir:oe(()=>e.data.frontmatter.dir||t.value.dir),localeIndex:oe(()=>t.value.localeIndex||"root"),title:oe(()=>ji(t.value,e.data)),description:oe(()=>e.data.description||t.value.description),isDark:r,hash:oe(()=>s.value)}}function iu(){const e=Ot(ou);if(!e)throw new Error("vitepress data not properly injected in app");return e}function lu(e,t){return`${e}${t}`.replace(/\/+/g,"/")}function no(e){return Hi.test(e)||!e.startsWith("/")?e:lu(gt.value.base,e)}function cu(e){let t=e.replace(/\.html$/,"");if(t=decodeURIComponent(t),t=t.replace(/\/$/,"/index"),pe){const n="/vue3-baidu-map-gl/";t=to(t.slice(n.length).replace(/\//g,"_")||"index")+".md";let r=__VP_HASH_MAP__[t.toLowerCase()];if(r||(t=t.endsWith("_index.md")?t.slice(0,-9)+".md":t.slice(0,-3)+"_index.md",r=__VP_HASH_MAP__[t.toLowerCase()]),!r)return null;t=`${n}assets/${t}.${r}.js`}else t=`./${to(t.slice(1).replace(/\//g,"_"))}.md.js`;return t}let Tn=[];function uf(e){Tn.push(e),qn(()=>{Tn=Tn.filter(t=>t!==e)})}function au(){let e=gt.value.scrollOffset,t=0,n=24;if(typeof e=="object"&&"padding"in e&&(n=e.padding,e=e.selector),typeof e=="number")t=e;else if(typeof e=="string")t=ro(e,n);else if(Array.isArray(e))for(const r of e){const s=ro(r,n);if(s){t=s;break}}return t}function ro(e,t){const n=document.querySelector(e);if(!n)return 0;const r=n.getBoundingClientRect().bottom;return r<0?0:r+t}const uu=Symbol(),Di="http://a.com",fu=()=>({path:"/",component:null,data:$i});function ff(e,t){const n=Un(fu()),r={route:n,go:s};async function s(l=pe?location.href:"/"){var c,a;l=mr(l),await((c=r.onBeforeRouteChange)==null?void 0:c.call(r,l))!==!1&&(pe&&l!==mr(location.href)&&(history.replaceState({scrollPosition:window.scrollY},""),history.pushState({},"",l)),await i(l),await((a=r.onAfterRouteChanged)==null?void 0:a.call(r,l)))}let o=null;async function i(l,c=0,a=!1){var m;if(await((m=r.onBeforePageLoad)==null?void 0:m.call(r,l))===!1)return;const f=new URL(l,Di),h=o=f.pathname;try{let _=await e(h);if(!_)throw new Error(`Page not found: ${h}`);if(o===h){o=null;const{default:b,__pageData:A}=_;if(!b)throw new Error(`Invalid route component: ${b}`);n.path=pe?h:no(h),n.component=Cn(b),n.data=Cn(A),pe&&tn(()=>{let D=gt.value.base+A.relativePath.replace(/(?:(^|\/)index)?\.md$/,"$1");if(!gt.value.cleanUrls&&!D.endsWith("/")&&(D+=".html"),D!==f.pathname&&(f.pathname=D,l=D+f.search+f.hash,history.replaceState({},"",l)),f.hash&&!c){let B=null;try{B=document.getElementById(decodeURIComponent(f.hash).slice(1))}catch(I){console.warn(I)}if(B){so(B,f.hash);return}}window.scrollTo(0,c)})}}catch(_){if(!/fetch|Page not found/.test(_.message)&&!/^\/404(\.html|\/)?$/.test(l)&&console.error(_),!a)try{const b=await fetch(gt.value.base+"hashmap.json");window.__VP_HASH_MAP__=await b.json(),await i(l,c,!0);return}catch{}if(o===h){o=null,n.path=pe?h:no(h),n.component=t?Cn(t):null;const b=pe?h.replace(/(^|\/)$/,"$1index").replace(/(\.html)?$/,".md").replace(/^\//,""):"404.md";n.data={...$i,relativePath:b}}}}return pe&&(history.state===null&&history.replaceState({},""),window.addEventListener("click",l=>{if(l.defaultPrevented||!(l.target instanceof Element)||l.target.closest("button")||l.button!==0||l.ctrlKey||l.shiftKey||l.altKey||l.metaKey)return;const c=l.target.closest("a");if(!c||c.closest(".vp-raw")||c.hasAttribute("download")||c.hasAttribute("target"))return;const a=c.getAttribute("href")??(c instanceof SVGAElement?c.getAttribute("xlink:href"):null);if(a==null)return;const{href:f,origin:h,pathname:m,hash:_,search:b}=new URL(a,c.baseURI),A=new URL(location.href);h===A.origin&&su(m)&&(l.preventDefault(),m===A.pathname&&b===A.search?(_!==A.hash&&(history.pushState({},"",f),window.dispatchEvent(new HashChangeEvent("hashchange",{oldURL:A.href,newURL:f}))),_?so(c,_,c.classList.contains("header-anchor")):window.scrollTo(0,0)):s(f))},{capture:!0}),window.addEventListener("popstate",async l=>{var c;l.state!==null&&(await i(mr(location.href),l.state&&l.state.scrollPosition||0),(c=r.onAfterRouteChanged)==null||c.call(r,location.href))}),window.addEventListener("hashchange",l=>{l.preventDefault()})),r}function du(){const e=Ot(uu);if(!e)throw new Error("useRouter() is called without provider.");return e}function ki(){return du().route}function so(e,t,n=!1){let r=null;try{r=e.classList.contains("header-anchor")?e:document.getElementById(decodeURIComponent(t).slice(1))}catch(s){console.warn(s)}if(r){let s=function(){!n||Math.abs(i-window.scrollY)>window.innerHeight?window.scrollTo(0,i):window.scrollTo({left:0,top:i,behavior:"smooth"})};const o=parseInt(window.getComputedStyle(r).paddingTop,10),i=window.scrollY+r.getBoundingClientRect().top-au()+o;requestAnimationFrame(s)}}function mr(e){const t=new URL(e,Di);return t.pathname=t.pathname.replace(/(^|\/)index(\.html)?$/,"$1"),gt.value.cleanUrls?t.pathname=t.pathname.replace(/\.html$/,""):!t.pathname.endsWith("/")&&!t.pathname.endsWith(".html")&&(t.pathname+=".html"),t.pathname+t.search+t.hash}const yr=()=>Tn.forEach(e=>e()),df=qr({name:"VitePressContent",props:{as:{type:[Object,String],default:"div"}},setup(e){const t=ki(),{site:n}=iu();return()=>Mr(e.as,n.value.contentProps??{style:{position:"relative"}},[t.component?Mr(t.component,{onVnodeMounted:yr,onVnodeUpdated:yr,onVnodeUnmounted:yr}):"404 Page Not Found"])}}),hu="modulepreload",pu=function(e){return"/vue3-baidu-map-gl/"+e},oo={},hf=function(t,n,r){let s=Promise.resolve();if(n&&n.length>0){document.getElementsByTagName("link");const o=document.querySelector("meta[property=csp-nonce]"),i=(o==null?void 0:o.nonce)||(o==null?void 0:o.getAttribute("nonce"));s=Promise.all(n.map(l=>{if(l=pu(l),l in oo)return;oo[l]=!0;const c=l.endsWith(".css"),a=c?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${l}"]${a}`))return;const f=document.createElement("link");if(f.rel=c?"stylesheet":hu,c||(f.as="script",f.crossOrigin=""),f.href=l,i&&f.setAttribute("nonce",i),document.head.appendChild(f),c)return new Promise((h,m)=>{f.addEventListener("load",h),f.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${l}`)))})}))}return s.then(()=>t()).catch(o=>{const i=new Event("vite:preloadError",{cancelable:!0});if(i.payload=o,window.dispatchEvent(i),!i.defaultPrevented)throw o})},pf=qr({setup(e,{slots:t}){const n=ee(!1);return Pt(()=>{n.value=!0}),()=>n.value&&t.default?t.default():null}});function gf(){pe&&window.addEventListener("click",e=>{var n;const t=e.target;if(t.matches(".vp-code-group input")){const r=(n=t.parentElement)==null?void 0:n.parentElement;if(!r)return;const s=Array.from(r.querySelectorAll("input")).indexOf(t);if(s<0)return;const o=r.querySelector(".blocks");if(!o)return;const i=Array.from(o.children).find(a=>a.classList.contains("active"));if(!i)return;const l=o.children[s];if(!l||i===l)return;i.classList.remove("active"),l.classList.add("active");const c=r==null?void 0:r.querySelector(`label[for="${t.id}"]`);c==null||c.scrollIntoView({block:"nearest"})}})}function mf(){if(pe){const e=new WeakMap;window.addEventListener("click",t=>{var r;const n=t.target;if(n.matches('div[class*="language-"] > button.copy')){const s=n.parentElement,o=(r=n.nextElementSibling)==null?void 0:r.nextElementSibling;if(!s||!o)return;const i=/language-(shellscript|shell|bash|sh|zsh)/.test(s.className),l=[".vp-copy-ignore",".diff.remove"],c=o.cloneNode(!0);c.querySelectorAll(l.join(",")).forEach(f=>f.remove());let a=c.textContent||"";i&&(a=a.replace(/^ *(\$|>) /gm,"").trim()),gu(a).then(()=>{n.classList.add("copied"),clearTimeout(e.get(n));const f=setTimeout(()=>{n.classList.remove("copied"),n.blur(),e.delete(n)},2e3);e.set(n,f)})}})}}async function gu(e){try{return navigator.clipboard.writeText(e)}catch{const t=document.createElement("textarea"),n=document.activeElement;t.value=e,t.setAttribute("readonly",""),t.style.contain="strict",t.style.position="absolute",t.style.left="-9999px",t.style.fontSize="12pt";const r=document.getSelection(),s=r?r.rangeCount>0&&r.getRangeAt(0):null;document.body.appendChild(t),t.select(),t.selectionStart=0,t.selectionEnd=e.length,document.execCommand("copy"),document.body.removeChild(t),s&&(r.removeAllRanges(),r.addRange(s)),n&&n.focus()}}function yf(e,t){let n=!0,r=[];const s=o=>{if(n){n=!1,o.forEach(l=>{const c=_r(l);for(const a of document.head.children)if(a.isEqualNode(c)){r.push(a);return}});return}const i=o.map(_r);r.forEach((l,c)=>{const a=i.findIndex(f=>f==null?void 0:f.isEqualNode(l??null));a!==-1?delete i[a]:(l==null||l.remove(),delete r[c])}),i.forEach(l=>l&&document.head.appendChild(l)),r=[...r,...i].filter(Boolean)};Qr(()=>{const o=e.data,i=t.value,l=o&&o.description,c=o&&o.frontmatter.head||[],a=ji(i,o);a!==document.title&&(document.title=a);const f=l||i.description;let h=document.querySelector("meta[name=description]");h?h.getAttribute("content")!==f&&h.setAttribute("content",f):_r(["meta",{name:"description",content:f}]),s(Vi(i.head,yu(c)))})}function _r([e,t,n]){const r=document.createElement(e);for(const s in t)r.setAttribute(s,t[s]);return n&&(r.innerHTML=n),e==="script"&&!t.async&&(r.async=!1),r}function mu(e){return e[0]==="meta"&&e[1]&&e[1].name==="description"}function yu(e){return e.filter(t=>!mu(t))}const vr=new Set,Ui=()=>document.createElement("link"),_u=e=>{const t=Ui();t.rel="prefetch",t.href=e,document.head.appendChild(t)},vu=e=>{const t=new XMLHttpRequest;t.open("GET",e,t.withCredentials=!0),t.send()};let bn;const bu=pe&&(bn=Ui())&&bn.relList&&bn.relList.supports&&bn.relList.supports("prefetch")?_u:vu;function _f(){if(!pe||!window.IntersectionObserver)return;let e;if((e=navigator.connection)&&(e.saveData||/2g/.test(e.effectiveType)))return;const t=window.requestIdleCallback||setTimeout;let n=null;const r=()=>{n&&n.disconnect(),n=new IntersectionObserver(o=>{o.forEach(i=>{if(i.isIntersecting){const l=i.target;n.unobserve(l);const{pathname:c}=l;if(!vr.has(c)){vr.add(c);const a=cu(c);a&&bu(a)}}})}),t(()=>{document.querySelectorAll("#app a").forEach(o=>{const{hostname:i,pathname:l}=new URL(o.href instanceof SVGAnimatedString?o.href.animVal:o.href,o.baseURI),c=l.match(/\.\w+$/);c&&c[0]!==".html"||o.target!=="_blank"&&i===location.hostname&&(l!==location.pathname?n.observe(o):vr.add(l))})})};Pt(r);const s=ki();je(()=>s.path,r),qn(()=>{n&&n.disconnect()})}export{Wu as $,Fu as A,Ql as B,au as C,Au as D,Lu as E,ve as F,Wt as G,uf as H,le as I,Ru as J,Hi as K,ki as L,Uc as M,Ot as N,lf as O,Vn as P,ef as Q,tn as R,of as S,_i as T,pe as U,Zt as V,Tu as W,hf as X,rf as Y,hc as Z,zu as _,pi as a,Iu as a0,Do as a1,Ku as a2,Pu as a3,Xn as a4,wu as a5,kc as a6,xu as a7,Bu as a8,ku as a9,Li as aA,Xu as aB,Jn as aC,Zu as aD,sf as aE,nf as aF,Qu as aG,du as aH,de as aI,Nu as aJ,Cn as aK,qu as aL,cf as aM,Du as aa,Eu as ab,Ju as ac,tf as ad,Yu as ae,nt as af,Ou as ag,Vu as ah,Yl as ai,Mr as aj,Uu as ak,$u as al,yf as am,uu as an,af as ao,ou as ap,df as aq,pf as ar,gt as as,Gu as at,ff as au,cu as av,_f as aw,mf as ax,gf as ay,be as az,fi as b,Hu as c,qr as d,ju as e,su as f,no as g,oe as h,Ja as i,hi as j,Lo as k,Su as l,Ya as m,Dn as n,ai as o,Cu as p,Ii as q,Mu as r,ee as s,sl as t,iu as u,je as v,Bl as w,Qr as x,Pt as y,qn as z}; diff --git a/assets/chunks/mapvthree.umd.1cz8IRaC.js b/assets/chunks/mapvthree.umd.1cz8IRaC.js new file mode 100644 index 00000000..b7f352c9 --- /dev/null +++ b/assets/chunks/mapvthree.umd.1cz8IRaC.js @@ -0,0 +1,8684 @@ +import{g as A2,c as Co}from"./commonjsHelpers.Cpj98o6Y.js";function P2(Eo,Ao){for(var _a=0;_avs[d]})}}}return Object.freeze(Object.defineProperty(Eo,Symbol.toStringTag,{value:"Module"}))}var ld={exports:{}};(function(Eo,Ao){var _a=Object.defineProperty,vs=(st,te,xt)=>te in st?_a(st,te,{enumerable:!0,configurable:!0,writable:!0,value:xt}):st[te]=xt,d=(st,te,xt)=>(vs(st,typeof te!="symbol"?te+"":te,xt),xt);(function(st,te){te(Ao)})(Co,function(st){const te="mapv";function xt(s,t){if(s.className===void 0)s.className=t;else if(s.className!==t){const e=s.className.split(/ +/);e.indexOf(t)===-1&&(e.push(t),s.className=e.join(" ").replace(/^\s+/,"").replace(/\s+$/,""))}return s}const hd={},yh="141dev",l0=0,cd=1,h0=2,ud=1,c0=2,va=3,Fn=0,pi=1,ce=2,Bn=0,ar=1,xa=2,dd=3,pd=4,md=5,or=100,u0=101,d0=102,fd=103,gd=104,_d=200,Po=201,p0=202,m0=203,vd=204,xd=205,f0=206,g0=207,_0=208,v0=209,x0=210,y0=0,b0=1,M0=2,bh=3,w0=4,S0=5,T0=6,C0=7,Ro=0,E0=1,A0=2,cn=0,P0=1,yd=2,R0=3,D0=4,L0=5,lr=301,hr=302,Do=303,Mh=304,xs=306,ze=1e3,ue=1001,Lo=1002,Ft=1003,wh=1004,Sh=1005,Wt=1006,bd=1007,ys=1008,Vn=1009,I0=1010,O0=1011,Md=1012,z0=1013,bs=1014,Ve=1015,be=1016,k0=1017,N0=1018,Ms=1020,U0=1021,F0=1022,$t=1023,B0=1024,V0=1025,ws=1026,Ss=1027,H0=1028,j0=1029,G0=1030,W0=1031,X0=1033,Th=33776,Ch=33777,Eh=33778,Ah=33779,wd=35840,Sd=35841,Td=35842,Cd=35843,q0=36196,Ed=37492,Ad=37496,Pd=37808,Rd=37809,Dd=37810,Ld=37811,Id=37812,Od=37813,zd=37814,kd=37815,Nd=37816,Ud=37817,Fd=37818,Bd=37819,Vd=37820,Hd=37821,jd=36492,ya=2300,cr=2301,Ph=2302,ur=2400,dr=2401,Io=2402,Y0=2500,Gd=2,un=3e3,Bt=3001,Z0=3201,Hn=0,J0=1,dn="srgb",Ts="srgb-linear",ba=7680,pr=35044,Rh="300 es",Dh=1035;/** + * @license + * Copyright 2010-2022 Three.js Authors + * SPDX-License-Identifier: MIT + */class pn{addEventListener(t,e){this._listeners===void 0&&(this._listeners={});const i=this._listeners;i[t]===void 0&&(i[t]=[]),i[t].indexOf(e)===-1&&i[t].push(e)}hasEventListener(t,e){if(this._listeners===void 0)return!1;const i=this._listeners;return i[t]!==void 0&&i[t].indexOf(e)!==-1}removeEventListener(t,e){if(this._listeners===void 0)return;const i=this._listeners[t];if(i!==void 0){const n=i.indexOf(e);n!==-1&&i.splice(n,1)}}dispatchEvent(t){if(this._listeners===void 0)return;const e=this._listeners[t.type];if(e!==void 0){t.target=this;const i=e.slice(0);for(let n=0,r=i.length;n>8&255]+Re[s>>16&255]+Re[s>>24&255]+"-"+Re[255&t]+Re[t>>8&255]+"-"+Re[t>>16&15|64]+Re[t>>24&255]+"-"+Re[63&e|128]+Re[e>>8&255]+"-"+Re[e>>16&255]+Re[e>>24&255]+Re[255&i]+Re[i>>8&255]+Re[i>>16&255]+Re[i>>24&255]).toLowerCase()}function ke(s,t,e){return Math.max(t,Math.min(e,s))}function Lh(s,t){return(s%t+t)%t}function Sa(s,t,e){return(1-e)*s+e*t}function Ih(s){return(s&s-1)==0&&s!==0}function Xd(s){return Math.pow(2,Math.ceil(Math.log(s)/Math.LN2))}function Oo(s){return Math.pow(2,Math.floor(Math.log(s)/Math.LN2))}var re=Object.freeze({__proto__:null,DEG2RAD:Ma,RAD2DEG:wa,generateUUID:Ei,clamp:ke,euclideanModulo:Lh,mapLinear:function(s,t,e,i,n){return i+(s-t)*(n-i)/(e-t)},inverseLerp:function(s,t,e){return s!==t?(e-s)/(t-s):0},lerp:Sa,damp:function(s,t,e,i){return Sa(s,t,1-Math.exp(-e*i))},pingpong:function(s,t=1){return t-Math.abs(Lh(s,2*t)-t)},smoothstep:function(s,t,e){return s<=t?0:s>=e?1:(s=(s-t)/(e-t))*s*(3-2*s)},smootherstep:function(s,t,e){return s<=t?0:s>=e?1:(s=(s-t)/(e-t))*s*s*(s*(6*s-15)+10)},randInt:function(s,t){return s+Math.floor(Math.random()*(t-s+1))},randFloat:function(s,t){return s+Math.random()*(t-s)},randFloatSpread:function(s){return s*(.5-Math.random())},seededRandom:function(s){s!==void 0&&(Wd=s);let t=Wd+=1831565813;return t=Math.imul(t^t>>>15,1|t),t^=t+Math.imul(t^t>>>7,61|t),((t^t>>>14)>>>0)/4294967296},degToRad:function(s){return s*Ma},radToDeg:function(s){return s*wa},isPowerOfTwo:Ih,ceilPowerOfTwo:Xd,floorPowerOfTwo:Oo,setQuaternionFromProperEuler:function(s,t,e,i,n){const r=Math.cos,a=Math.sin,o=r(e/2),l=a(e/2),h=r((t+i)/2),c=a((t+i)/2),u=r((t-i)/2),p=a((t-i)/2),m=r((i-t)/2),f=a((i-t)/2);switch(n){case"XYX":s.set(o*c,l*u,l*p,o*h);break;case"YZY":s.set(l*p,o*c,l*u,o*h);break;case"ZXZ":s.set(l*u,l*p,o*c,o*h);break;case"XZX":s.set(o*c,l*f,l*m,o*h);break;case"YXY":s.set(l*m,o*c,l*f,o*h);break;case"ZYZ":s.set(l*f,l*m,o*c,o*h);break;default:console.warn("THREE.MathUtils: .setQuaternionFromProperEuler() encountered an unknown order: "+n)}},normalize:function(s,t){switch(t.constructor){case Float32Array:return s;case Uint16Array:return Math.round(65535*s);case Uint8Array:return Math.round(255*s);case Int16Array:return Math.round(32767*s);case Int8Array:return Math.round(127*s);default:throw new Error("Invalid component type.")}},denormalize:function(s,t){switch(t.constructor){case Float32Array:return s;case Uint16Array:return s/65535;case Uint8Array:return s/255;case Int16Array:return Math.max(s/32767,-1);case Int8Array:return Math.max(s/127,-1);default:throw new Error("Invalid component type.")}}});class j{constructor(t=0,e=0){this.isVector2=!0,this.x=t,this.y=e}get width(){return this.x}set width(t){this.x=t}get height(){return this.y}set height(t){this.y=t}set(t,e){return this.x=t,this.y=e,this}setScalar(t){return this.x=t,this.y=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;default:throw new Error("index is out of range: "+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;default:throw new Error("index is out of range: "+t)}}clone(){return new this.constructor(this.x,this.y)}copy(t){return this.x=t.x,this.y=t.y,this}add(t,e){return e!==void 0?(console.warn("THREE.Vector2: .add() now only accepts one argument. Use .addVectors( a, b ) instead."),this.addVectors(t,e)):(this.x+=t.x,this.y+=t.y,this)}addScalar(t){return this.x+=t,this.y+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this}sub(t,e){return e!==void 0?(console.warn("THREE.Vector2: .sub() now only accepts one argument. Use .subVectors( a, b ) instead."),this.subVectors(t,e)):(this.x-=t.x,this.y-=t.y,this)}subScalar(t){return this.x-=t,this.y-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this}multiply(t){return this.x*=t.x,this.y*=t.y,this}multiplyScalar(t){return this.x*=t,this.y*=t,this}divide(t){return this.x/=t.x,this.y/=t.y,this}divideScalar(t){return this.multiplyScalar(1/t)}applyMatrix3(t){const e=this.x,i=this.y,n=t.elements;return this.x=n[0]*e+n[3]*i+n[6],this.y=n[1]*e+n[4]*i+n[7],this}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this}clampLength(t,e){const i=this.length();return this.divideScalar(i||1).multiplyScalar(Math.max(t,Math.min(e,i)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}roundToZero(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this}negate(){return this.x=-this.x,this.y=-this.y,this}dot(t){return this.x*t.x+this.y*t.y}cross(t){return this.x*t.y-this.y*t.x}lengthSq(){return this.x*this.x+this.y*this.y}length(){return Math.sqrt(this.x*this.x+this.y*this.y)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)}normalize(){return this.divideScalar(this.length()||1)}angle(){return Math.atan2(-this.y,-this.x)+Math.PI}distanceTo(t){return Math.sqrt(this.distanceToSquared(t))}distanceToSquared(t){const e=this.x-t.x,i=this.y-t.y;return e*e+i*i}manhattanDistanceTo(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this}lerpVectors(t,e,i){return this.x=t.x+(e.x-t.x)*i,this.y=t.y+(e.y-t.y)*i,this}equals(t){return t.x===this.x&&t.y===this.y}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t}fromBufferAttribute(t,e,i){return i!==void 0&&console.warn("THREE.Vector2: offset has been removed from .fromBufferAttribute()."),this.x=t.getX(e),this.y=t.getY(e),this}rotateAround(t,e){const i=Math.cos(e),n=Math.sin(e),r=this.x-t.x,a=this.y-t.y;return this.x=r*i-a*n+t.x,this.y=r*n+a*i+t.y,this}random(){return this.x=Math.random(),this.y=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y}}class Ke{constructor(){this.isMatrix3=!0,this.elements=[1,0,0,0,1,0,0,0,1],arguments.length>0&&console.error("THREE.Matrix3: the constructor no longer reads arguments. use .set() instead.")}set(t,e,i,n,r,a,o,l,h){const c=this.elements;return c[0]=t,c[1]=n,c[2]=o,c[3]=e,c[4]=r,c[5]=l,c[6]=i,c[7]=a,c[8]=h,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(t){const e=this.elements,i=t.elements;return e[0]=i[0],e[1]=i[1],e[2]=i[2],e[3]=i[3],e[4]=i[4],e[5]=i[5],e[6]=i[6],e[7]=i[7],e[8]=i[8],this}extractBasis(t,e,i){return t.setFromMatrix3Column(this,0),e.setFromMatrix3Column(this,1),i.setFromMatrix3Column(this,2),this}setFromMatrix4(t){const e=t.elements;return this.set(e[0],e[4],e[8],e[1],e[5],e[9],e[2],e[6],e[10]),this}multiply(t){return this.multiplyMatrices(this,t)}premultiply(t){return this.multiplyMatrices(t,this)}multiplyMatrices(t,e){const i=t.elements,n=e.elements,r=this.elements,a=i[0],o=i[3],l=i[6],h=i[1],c=i[4],u=i[7],p=i[2],m=i[5],f=i[8],g=n[0],_=n[3],v=n[6],x=n[1],y=n[4],b=n[7],S=n[2],w=n[5],C=n[8];return r[0]=a*g+o*x+l*S,r[3]=a*_+o*y+l*w,r[6]=a*v+o*b+l*C,r[1]=h*g+c*x+u*S,r[4]=h*_+c*y+u*w,r[7]=h*v+c*b+u*C,r[2]=p*g+m*x+f*S,r[5]=p*_+m*y+f*w,r[8]=p*v+m*b+f*C,this}multiplyScalar(t){const e=this.elements;return e[0]*=t,e[3]*=t,e[6]*=t,e[1]*=t,e[4]*=t,e[7]*=t,e[2]*=t,e[5]*=t,e[8]*=t,this}determinant(){const t=this.elements,e=t[0],i=t[1],n=t[2],r=t[3],a=t[4],o=t[5],l=t[6],h=t[7],c=t[8];return e*a*c-e*o*h-i*r*c+i*o*l+n*r*h-n*a*l}invert(){const t=this.elements,e=t[0],i=t[1],n=t[2],r=t[3],a=t[4],o=t[5],l=t[6],h=t[7],c=t[8],u=c*a-o*h,p=o*l-c*r,m=h*r-a*l,f=e*u+i*p+n*m;if(f===0)return this.set(0,0,0,0,0,0,0,0,0);const g=1/f;return t[0]=u*g,t[1]=(n*h-c*i)*g,t[2]=(o*i-n*a)*g,t[3]=p*g,t[4]=(c*e-n*l)*g,t[5]=(n*r-o*e)*g,t[6]=m*g,t[7]=(i*l-h*e)*g,t[8]=(a*e-i*r)*g,this}transpose(){let t;const e=this.elements;return t=e[1],e[1]=e[3],e[3]=t,t=e[2],e[2]=e[6],e[6]=t,t=e[5],e[5]=e[7],e[7]=t,this}getNormalMatrix(t){return this.setFromMatrix4(t).invert().transpose()}transposeIntoArray(t){const e=this.elements;return t[0]=e[0],t[1]=e[3],t[2]=e[6],t[3]=e[1],t[4]=e[4],t[5]=e[7],t[6]=e[2],t[7]=e[5],t[8]=e[8],this}setUvTransform(t,e,i,n,r,a,o){const l=Math.cos(r),h=Math.sin(r);return this.set(i*l,i*h,-i*(l*a+h*o)+a+t,-n*h,n*l,-n*(-h*a+l*o)+o+e,0,0,1),this}scale(t,e){const i=this.elements;return i[0]*=t,i[3]*=t,i[6]*=t,i[1]*=e,i[4]*=e,i[7]*=e,this}rotate(t){const e=Math.cos(t),i=Math.sin(t),n=this.elements,r=n[0],a=n[3],o=n[6],l=n[1],h=n[4],c=n[7];return n[0]=e*r+i*l,n[3]=e*a+i*h,n[6]=e*o+i*c,n[1]=-i*r+e*l,n[4]=-i*a+e*h,n[7]=-i*o+e*c,this}translate(t,e){const i=this.elements;return i[0]+=t*i[2],i[3]+=t*i[5],i[6]+=t*i[8],i[1]+=e*i[2],i[4]+=e*i[5],i[7]+=e*i[8],this}equals(t){const e=this.elements,i=t.elements;for(let n=0;n<9;n++)if(e[n]!==i[n])return!1;return!0}fromArray(t,e=0){for(let i=0;i<9;i++)this.elements[i]=t[i+e];return this}toArray(t=[],e=0){const i=this.elements;return t[e]=i[0],t[e+1]=i[1],t[e+2]=i[2],t[e+3]=i[3],t[e+4]=i[4],t[e+5]=i[5],t[e+6]=i[6],t[e+7]=i[7],t[e+8]=i[8],t}clone(){return new this.constructor().fromArray(this.elements)}}function qd(s){for(let t=s.length-1;t>=0;--t)if(s[t]>65535)return!0;return!1}function Ta(s){return document.createElementNS("http://www.w3.org/1999/xhtml",s)}function Cs(s){return s<.04045?.0773993808*s:Math.pow(.9478672986*s+.0521327014,2.4)}function zo(s){return s<.0031308?12.92*s:1.055*Math.pow(s,.41666)-.055}const Oh={[dn]:{[Ts]:Cs},[Ts]:{[dn]:zo}},Ai={legacyMode:!0,get workingColorSpace(){return Ts},set workingColorSpace(s){console.warn("THREE.ColorManagement: .workingColorSpace is readonly.")},convert:function(s,t,e){if(this.legacyMode||t===e||!t||!e)return s;if(Oh[t]&&Oh[t][e]!==void 0){const i=Oh[t][e];return s.r=i(s.r),s.g=i(s.g),s.b=i(s.b),s}throw new Error("Unsupported color space conversion.")},fromWorkingColorSpace:function(s,t){return this.convert(s,this.workingColorSpace,t)},toWorkingColorSpace:function(s,t){return this.convert(s,t,this.workingColorSpace)}},Yd={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074},Me={r:0,g:0,b:0},Pi={h:0,s:0,l:0},ko={h:0,s:0,l:0};function zh(s,t,e){return e<0&&(e+=1),e>1&&(e-=1),e<1/6?s+6*(t-s)*e:e<.5?t:e<2/3?s+6*(t-s)*(2/3-e):s}function No(s,t){return t.r=s.r,t.g=s.g,t.b=s.b,t}class tt{constructor(t,e,i){return this.isColor=!0,this.r=1,this.g=1,this.b=1,e===void 0&&i===void 0?this.set(t):this.setRGB(t,e,i)}set(t){return t&&t.isColor?this.copy(t):typeof t=="number"?this.setHex(t):typeof t=="string"&&this.setStyle(t),this}setScalar(t){return this.r=t,this.g=t,this.b=t,this}setHex(t,e=dn){return t=Math.floor(t),this.r=(t>>16&255)/255,this.g=(t>>8&255)/255,this.b=(255&t)/255,Ai.toWorkingColorSpace(this,e),this}setRGB(t,e,i,n=Ts){return this.r=t,this.g=e,this.b=i,Ai.toWorkingColorSpace(this,n),this}setHSL(t,e,i,n=Ts){if(t=Lh(t,1),e=ke(e,0,1),i=ke(i,0,1),e===0)this.r=this.g=this.b=i;else{const r=i<=.5?i*(1+e):i+e-i*e,a=2*i-r;this.r=zh(a,r,t+1/3),this.g=zh(a,r,t),this.b=zh(a,r,t-1/3)}return Ai.toWorkingColorSpace(this,n),this}setStyle(t,e=dn){function i(r){r!==void 0&&parseFloat(r)<1&&console.warn("THREE.Color: Alpha component of "+t+" will be ignored.")}let n;if(n=/^((?:rgb|hsl)a?)\(([^\)]*)\)/.exec(t)){let r;const a=n[1],o=n[2];switch(a){case"rgb":case"rgba":if(r=/^\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(o))return this.r=Math.min(255,parseInt(r[1],10))/255,this.g=Math.min(255,parseInt(r[2],10))/255,this.b=Math.min(255,parseInt(r[3],10))/255,Ai.toWorkingColorSpace(this,e),i(r[4]),this;if(r=/^\s*(\d+)\%\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(o))return this.r=Math.min(100,parseInt(r[1],10))/100,this.g=Math.min(100,parseInt(r[2],10))/100,this.b=Math.min(100,parseInt(r[3],10))/100,Ai.toWorkingColorSpace(this,e),i(r[4]),this;break;case"hsl":case"hsla":if(r=/^\s*(\d*\.?\d+)\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(o)){const l=parseFloat(r[1])/360,h=parseInt(r[2],10)/100,c=parseInt(r[3],10)/100;return i(r[4]),this.setHSL(l,h,c,e)}}}else if(n=/^\#([A-Fa-f\d]+)$/.exec(t)){const r=n[1],a=r.length;if(a===3)return this.r=parseInt(r.charAt(0)+r.charAt(0),16)/255,this.g=parseInt(r.charAt(1)+r.charAt(1),16)/255,this.b=parseInt(r.charAt(2)+r.charAt(2),16)/255,Ai.toWorkingColorSpace(this,e),this;if(a===6)return this.r=parseInt(r.charAt(0)+r.charAt(1),16)/255,this.g=parseInt(r.charAt(2)+r.charAt(3),16)/255,this.b=parseInt(r.charAt(4)+r.charAt(5),16)/255,Ai.toWorkingColorSpace(this,e),this}return t&&t.length>0?this.setColorName(t,e):this}setColorName(t,e=dn){const i=Yd[t.toLowerCase()];return i!==void 0?this.setHex(i,e):console.warn("THREE.Color: Unknown color "+t),this}clone(){return new this.constructor(this.r,this.g,this.b)}copy(t){return this.r=t.r,this.g=t.g,this.b=t.b,this}copySRGBToLinear(t){return this.r=Cs(t.r),this.g=Cs(t.g),this.b=Cs(t.b),this}copyLinearToSRGB(t){return this.r=zo(t.r),this.g=zo(t.g),this.b=zo(t.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(t=dn){return Ai.fromWorkingColorSpace(No(this,Me),t),ke(255*Me.r,0,255)<<16^ke(255*Me.g,0,255)<<8^ke(255*Me.b,0,255)<<0}getHexString(t=dn){return("000000"+this.getHex(t).toString(16)).slice(-6)}getHSL(t,e=Ts){Ai.fromWorkingColorSpace(No(this,Me),e);const i=Me.r,n=Me.g,r=Me.b,a=Math.max(i,n,r),o=Math.min(i,n,r);let l,h;const c=(o+a)/2;if(o===a)l=0,h=0;else{const u=a-o;switch(h=c<=.5?u/(a+o):u/(2-a-o),a){case i:l=(n-r)/u+(n"u")return t.src;let e;if(t instanceof HTMLCanvasElement)e=t;else{mr===void 0&&(mr=Ta("canvas")),mr.width=t.width,mr.height=t.height;const i=mr.getContext("2d");t instanceof ImageData?i.putImageData(t,0,0):i.drawImage(t,0,0,t.width,t.height),e=mr}return e.width>2048||e.height>2048?(console.warn("THREE.ImageUtils.getDataURL: Image converted to jpg for performance reasons",t),e.toDataURL("image/jpeg",.6)):e.toDataURL("image/png")}static sRGBToLinear(t){if(typeof HTMLImageElement<"u"&&t instanceof HTMLImageElement||typeof HTMLCanvasElement<"u"&&t instanceof HTMLCanvasElement||typeof ImageBitmap<"u"&&t instanceof ImageBitmap){const e=Ta("canvas");e.width=t.width,e.height=t.height;const i=e.getContext("2d");i.drawImage(t,0,0,t.width,t.height);const n=i.getImageData(0,0,t.width,t.height),r=n.data;for(let a=0;a1)switch(this.wrapS){case ze:t.x=t.x-Math.floor(t.x);break;case ue:t.x=t.x<0?0:1;break;case Lo:Math.abs(Math.floor(t.x)%2)===1?t.x=Math.ceil(t.x)-t.x:t.x=t.x-Math.floor(t.x)}if(t.y<0||t.y>1)switch(this.wrapT){case ze:t.y=t.y-Math.floor(t.y);break;case ue:t.y=t.y<0?0:1;break;case Lo:Math.abs(Math.floor(t.y)%2)===1?t.y=Math.ceil(t.y)-t.y:t.y=t.y-Math.floor(t.y)}return this.flipY&&(t.y=1-t.y),t}set needsUpdate(t){t===!0&&(this.version++,this.source.needsUpdate=!0)}}ne.DEFAULT_IMAGE=null,ne.DEFAULT_MAPPING=300;class Lt{constructor(t=0,e=0,i=0,n=1){this.isVector4=!0,this.x=t,this.y=e,this.z=i,this.w=n}get width(){return this.z}set width(t){this.z=t}get height(){return this.w}set height(t){this.w=t}set(t,e,i,n){return this.x=t,this.y=e,this.z=i,this.w=n,this}setScalar(t){return this.x=t,this.y=t,this.z=t,this.w=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setZ(t){return this.z=t,this}setW(t){return this.w=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;case 3:this.w=e;break;default:throw new Error("index is out of range: "+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw new Error("index is out of range: "+t)}}clone(){return new this.constructor(this.x,this.y,this.z,this.w)}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.w=t.w!==void 0?t.w:1,this}add(t,e){return e!==void 0?(console.warn("THREE.Vector4: .add() now only accepts one argument. Use .addVectors( a, b ) instead."),this.addVectors(t,e)):(this.x+=t.x,this.y+=t.y,this.z+=t.z,this.w+=t.w,this)}addScalar(t){return this.x+=t,this.y+=t,this.z+=t,this.w+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this.w=t.w+e.w,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this.w+=t.w*e,this}sub(t,e){return e!==void 0?(console.warn("THREE.Vector4: .sub() now only accepts one argument. Use .subVectors( a, b ) instead."),this.subVectors(t,e)):(this.x-=t.x,this.y-=t.y,this.z-=t.z,this.w-=t.w,this)}subScalar(t){return this.x-=t,this.y-=t,this.z-=t,this.w-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this.w=t.w-e.w,this}multiply(t){return this.x*=t.x,this.y*=t.y,this.z*=t.z,this.w*=t.w,this}multiplyScalar(t){return this.x*=t,this.y*=t,this.z*=t,this.w*=t,this}applyMatrix4(t){const e=this.x,i=this.y,n=this.z,r=this.w,a=t.elements;return this.x=a[0]*e+a[4]*i+a[8]*n+a[12]*r,this.y=a[1]*e+a[5]*i+a[9]*n+a[13]*r,this.z=a[2]*e+a[6]*i+a[10]*n+a[14]*r,this.w=a[3]*e+a[7]*i+a[11]*n+a[15]*r,this}divideScalar(t){return this.multiplyScalar(1/t)}setAxisAngleFromQuaternion(t){this.w=2*Math.acos(t.w);const e=Math.sqrt(1-t.w*t.w);return e<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=t.x/e,this.y=t.y/e,this.z=t.z/e),this}setAxisAngleFromRotationMatrix(t){let e,i,n,r;const l=t.elements,h=l[0],c=l[4],u=l[8],p=l[1],m=l[5],f=l[9],g=l[2],_=l[6],v=l[10];if(Math.abs(c-p)<.01&&Math.abs(u-g)<.01&&Math.abs(f-_)<.01){if(Math.abs(c+p)<.1&&Math.abs(u+g)<.1&&Math.abs(f+_)<.1&&Math.abs(h+m+v-3)<.1)return this.set(1,0,0,0),this;e=Math.PI;const y=(h+1)/2,b=(m+1)/2,S=(v+1)/2,w=(c+p)/4,C=(u+g)/4,L=(f+_)/4;return y>b&&y>S?y<.01?(i=0,n=.707106781,r=.707106781):(i=Math.sqrt(y),n=w/i,r=C/i):b>S?b<.01?(i=.707106781,n=0,r=.707106781):(n=Math.sqrt(b),i=w/n,r=L/n):S<.01?(i=.707106781,n=.707106781,r=0):(r=Math.sqrt(S),i=C/r,n=L/r),this.set(i,n,r,e),this}let x=Math.sqrt((_-f)*(_-f)+(u-g)*(u-g)+(p-c)*(p-c));return Math.abs(x)<.001&&(x=1),this.x=(_-f)/x,this.y=(u-g)/x,this.z=(p-c)/x,this.w=Math.acos((h+m+v-1)/2),this}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this.w=Math.min(this.w,t.w),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this.w=Math.max(this.w,t.w),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this.z=Math.max(t.z,Math.min(e.z,this.z)),this.w=Math.max(t.w,Math.min(e.w,this.w)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this.z=Math.max(t,Math.min(e,this.z)),this.w=Math.max(t,Math.min(e,this.w)),this}clampLength(t,e){const i=this.length();return this.divideScalar(i||1).multiplyScalar(Math.max(t,Math.min(e,i)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this.w=Math.floor(this.w),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this.w=Math.ceil(this.w),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this.w=Math.round(this.w),this}roundToZero(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this.z=this.z<0?Math.ceil(this.z):Math.floor(this.z),this.w=this.w<0?Math.ceil(this.w):Math.floor(this.w),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,this}dot(t){return this.x*t.x+this.y*t.y+this.z*t.z+this.w*t.w}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)+Math.abs(this.w)}normalize(){return this.divideScalar(this.length()||1)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this.z+=(t.z-this.z)*e,this.w+=(t.w-this.w)*e,this}lerpVectors(t,e,i){return this.x=t.x+(e.x-t.x)*i,this.y=t.y+(e.y-t.y)*i,this.z=t.z+(e.z-t.z)*i,this.w=t.w+(e.w-t.w)*i,this}equals(t){return t.x===this.x&&t.y===this.y&&t.z===this.z&&t.w===this.w}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this.z=t[e+2],this.w=t[e+3],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t[e+3]=this.w,t}fromBufferAttribute(t,e,i){return i!==void 0&&console.warn("THREE.Vector4: offset has been removed from .fromBufferAttribute()."),this.x=t.getX(e),this.y=t.getY(e),this.z=t.getZ(e),this.w=t.getW(e),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this.w=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z,yield this.w}}class de extends pn{constructor(t,e,i={}){super(),this.isWebGLRenderTarget=!0,this.width=t,this.height=e,this.depth=1,this.scissor=new Lt(0,0,t,e),this.scissorTest=!1,this.viewport=new Lt(0,0,t,e);const n={width:t,height:e,depth:1};this.texture=new ne(n,i.mapping,i.wrapS,i.wrapT,i.magFilter,i.minFilter,i.format,i.type,i.anisotropy,i.encoding),this.texture.isRenderTargetTexture=!0,this.texture.flipY=!1,this.texture.generateMipmaps=i.generateMipmaps!==void 0&&i.generateMipmaps,this.texture.internalFormat=i.internalFormat!==void 0?i.internalFormat:null,this.texture.minFilter=i.minFilter!==void 0?i.minFilter:Wt,this.depthBuffer=i.depthBuffer===void 0||i.depthBuffer,this.stencilBuffer=i.stencilBuffer!==void 0&&i.stencilBuffer,this.depthTexture=i.depthTexture!==void 0?i.depthTexture:null,this.samples=i.samples!==void 0?i.samples:0}setSize(t,e,i=1){this.width===t&&this.height===e&&this.depth===i||(this.width=t,this.height=e,this.depth=i,this.texture.image.width=t,this.texture.image.height=e,this.texture.image.depth=i,this.dispose()),this.viewport.set(0,0,t,e),this.scissor.set(0,0,t,e)}clone(){return new this.constructor().copy(this)}copy(t){this.width=t.width,this.height=t.height,this.depth=t.depth,this.viewport.copy(t.viewport),this.texture=t.texture.clone(),this.texture.isRenderTargetTexture=!0;const e=Object.assign({},t.texture.image);return this.texture.source=new Jd(e),this.depthBuffer=t.depthBuffer,this.stencilBuffer=t.stencilBuffer,t.depthTexture!==null&&(this.depthTexture=t.depthTexture.clone()),this.samples=t.samples,this}dispose(){this.dispatchEvent({type:"dispose"})}}class Kd extends ne{constructor(t=null,e=1,i=1,n=1){super(null),this.isDataArrayTexture=!0,this.image={data:t,width:e,height:i,depth:n},this.magFilter=Ft,this.minFilter=Ft,this.wrapR=ue,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}}class Q0 extends de{constructor(t,e,i,n={}){super(t,e,n),this.isWebGLMultipleRenderTargets=!0;const r=this.texture;this.texture=[];for(let a=0;a=0?1:-1,y=1-v*v;if(y>Number.EPSILON){const S=Math.sqrt(y),w=Math.atan2(S,v*x);_=Math.sin(_*w)/S,o=Math.sin(o*w)/S}const b=o*x;if(l=l*_+p*b,h=h*_+m*b,c=c*_+f*b,u=u*_+g*b,_===1-o){const S=1/Math.sqrt(l*l+h*h+c*c+u*u);l*=S,h*=S,c*=S,u*=S}}t[e]=l,t[e+1]=h,t[e+2]=c,t[e+3]=u}static multiplyQuaternionsFlat(t,e,i,n,r,a){const o=i[n],l=i[n+1],h=i[n+2],c=i[n+3],u=r[a],p=r[a+1],m=r[a+2],f=r[a+3];return t[e]=o*f+c*u+l*m-h*p,t[e+1]=l*f+c*p+h*u-o*m,t[e+2]=h*f+c*m+o*p-l*u,t[e+3]=c*f-o*u-l*p-h*m,t}get x(){return this._x}set x(t){this._x=t,this._onChangeCallback()}get y(){return this._y}set y(t){this._y=t,this._onChangeCallback()}get z(){return this._z}set z(t){this._z=t,this._onChangeCallback()}get w(){return this._w}set w(t){this._w=t,this._onChangeCallback()}set(t,e,i,n){return this._x=t,this._y=e,this._z=i,this._w=n,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._w)}copy(t){return this._x=t.x,this._y=t.y,this._z=t.z,this._w=t.w,this._onChangeCallback(),this}setFromEuler(t,e){if(!t||!t.isEuler)throw new Error("THREE.Quaternion: .setFromEuler() now expects an Euler rotation rather than a Vector3 and order.");const i=t._x,n=t._y,r=t._z,a=t._order,o=Math.cos,l=Math.sin,h=o(i/2),c=o(n/2),u=o(r/2),p=l(i/2),m=l(n/2),f=l(r/2);switch(a){case"XYZ":this._x=p*c*u+h*m*f,this._y=h*m*u-p*c*f,this._z=h*c*f+p*m*u,this._w=h*c*u-p*m*f;break;case"YXZ":this._x=p*c*u+h*m*f,this._y=h*m*u-p*c*f,this._z=h*c*f-p*m*u,this._w=h*c*u+p*m*f;break;case"ZXY":this._x=p*c*u-h*m*f,this._y=h*m*u+p*c*f,this._z=h*c*f+p*m*u,this._w=h*c*u-p*m*f;break;case"ZYX":this._x=p*c*u-h*m*f,this._y=h*m*u+p*c*f,this._z=h*c*f-p*m*u,this._w=h*c*u+p*m*f;break;case"YZX":this._x=p*c*u+h*m*f,this._y=h*m*u+p*c*f,this._z=h*c*f-p*m*u,this._w=h*c*u-p*m*f;break;case"XZY":this._x=p*c*u-h*m*f,this._y=h*m*u-p*c*f,this._z=h*c*f+p*m*u,this._w=h*c*u+p*m*f;break;default:console.warn("THREE.Quaternion: .setFromEuler() encountered an unknown order: "+a)}return e!==!1&&this._onChangeCallback(),this}setFromAxisAngle(t,e){const i=e/2,n=Math.sin(i);return this._x=t.x*n,this._y=t.y*n,this._z=t.z*n,this._w=Math.cos(i),this._onChangeCallback(),this}setFromRotationMatrix(t){const e=t.elements,i=e[0],n=e[4],r=e[8],a=e[1],o=e[5],l=e[9],h=e[2],c=e[6],u=e[10],p=i+o+u;if(p>0){const m=.5/Math.sqrt(p+1);this._w=.25/m,this._x=(c-l)*m,this._y=(r-h)*m,this._z=(a-n)*m}else if(i>o&&i>u){const m=2*Math.sqrt(1+i-o-u);this._w=(c-l)/m,this._x=.25*m,this._y=(n+a)/m,this._z=(r+h)/m}else if(o>u){const m=2*Math.sqrt(1+o-i-u);this._w=(r-h)/m,this._x=(n+a)/m,this._y=.25*m,this._z=(l+c)/m}else{const m=2*Math.sqrt(1+u-i-o);this._w=(a-n)/m,this._x=(r+h)/m,this._y=(l+c)/m,this._z=.25*m}return this._onChangeCallback(),this}setFromUnitVectors(t,e){let i=t.dot(e)+1;return iMath.abs(t.z)?(this._x=-t.y,this._y=t.x,this._z=0,this._w=i):(this._x=0,this._y=-t.z,this._z=t.y,this._w=i)):(this._x=t.y*e.z-t.z*e.y,this._y=t.z*e.x-t.x*e.z,this._z=t.x*e.y-t.y*e.x,this._w=i),this.normalize()}angleTo(t){return 2*Math.acos(Math.abs(ke(this.dot(t),-1,1)))}rotateTowards(t,e){const i=this.angleTo(t);if(i===0)return this;const n=Math.min(1,e/i);return this.slerp(t,n),this}identity(){return this.set(0,0,0,1)}invert(){return this.conjugate()}conjugate(){return this._x*=-1,this._y*=-1,this._z*=-1,this._onChangeCallback(),this}dot(t){return this._x*t._x+this._y*t._y+this._z*t._z+this._w*t._w}lengthSq(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w}length(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)}normalize(){let t=this.length();return t===0?(this._x=0,this._y=0,this._z=0,this._w=1):(t=1/t,this._x=this._x*t,this._y=this._y*t,this._z=this._z*t,this._w=this._w*t),this._onChangeCallback(),this}multiply(t,e){return e!==void 0?(console.warn("THREE.Quaternion: .multiply() now only accepts one argument. Use .multiplyQuaternions( a, b ) instead."),this.multiplyQuaternions(t,e)):this.multiplyQuaternions(this,t)}premultiply(t){return this.multiplyQuaternions(t,this)}multiplyQuaternions(t,e){const i=t._x,n=t._y,r=t._z,a=t._w,o=e._x,l=e._y,h=e._z,c=e._w;return this._x=i*c+a*o+n*h-r*l,this._y=n*c+a*l+r*o-i*h,this._z=r*c+a*h+i*l-n*o,this._w=a*c-i*o-n*l-r*h,this._onChangeCallback(),this}slerp(t,e){if(e===0)return this;if(e===1)return this.copy(t);const i=this._x,n=this._y,r=this._z,a=this._w;let o=a*t._w+i*t._x+n*t._y+r*t._z;if(o<0?(this._w=-t._w,this._x=-t._x,this._y=-t._y,this._z=-t._z,o=-o):this.copy(t),o>=1)return this._w=a,this._x=i,this._y=n,this._z=r,this;const l=1-o*o;if(l<=Number.EPSILON){const m=1-e;return this._w=m*a+e*this._w,this._x=m*i+e*this._x,this._y=m*n+e*this._y,this._z=m*r+e*this._z,this.normalize(),this._onChangeCallback(),this}const h=Math.sqrt(l),c=Math.atan2(h,o),u=Math.sin((1-e)*c)/h,p=Math.sin(e*c)/h;return this._w=a*u+this._w*p,this._x=i*u+this._x*p,this._y=n*u+this._y*p,this._z=r*u+this._z*p,this._onChangeCallback(),this}slerpQuaternions(t,e,i){return this.copy(t).slerp(e,i)}random(){const t=Math.random(),e=Math.sqrt(1-t),i=Math.sqrt(t),n=2*Math.PI*Math.random(),r=2*Math.PI*Math.random();return this.set(e*Math.cos(n),i*Math.sin(r),i*Math.cos(r),e*Math.sin(n))}equals(t){return t._x===this._x&&t._y===this._y&&t._z===this._z&&t._w===this._w}fromArray(t,e=0){return this._x=t[e],this._y=t[e+1],this._z=t[e+2],this._w=t[e+3],this._onChangeCallback(),this}toArray(t=[],e=0){return t[e]=this._x,t[e+1]=this._y,t[e+2]=this._z,t[e+3]=this._w,t}fromBufferAttribute(t,e){return this._x=t.getX(e),this._y=t.getY(e),this._z=t.getZ(e),this._w=t.getW(e),this}_onChange(t){return this._onChangeCallback=t,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._w}}class M{constructor(t=0,e=0,i=0){this.isVector3=!0,this.x=t,this.y=e,this.z=i}set(t,e,i){return i===void 0&&(i=this.z),this.x=t,this.y=e,this.z=i,this}setScalar(t){return this.x=t,this.y=t,this.z=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setZ(t){return this.z=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;default:throw new Error("index is out of range: "+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw new Error("index is out of range: "+t)}}clone(){return new this.constructor(this.x,this.y,this.z)}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this}add(t,e){return e!==void 0?(console.warn("THREE.Vector3: .add() now only accepts one argument. Use .addVectors( a, b ) instead."),this.addVectors(t,e)):(this.x+=t.x,this.y+=t.y,this.z+=t.z,this)}addScalar(t){return this.x+=t,this.y+=t,this.z+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this}sub(t,e){return e!==void 0?(console.warn("THREE.Vector3: .sub() now only accepts one argument. Use .subVectors( a, b ) instead."),this.subVectors(t,e)):(this.x-=t.x,this.y-=t.y,this.z-=t.z,this)}subScalar(t){return this.x-=t,this.y-=t,this.z-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this}multiply(t,e){return e!==void 0?(console.warn("THREE.Vector3: .multiply() now only accepts one argument. Use .multiplyVectors( a, b ) instead."),this.multiplyVectors(t,e)):(this.x*=t.x,this.y*=t.y,this.z*=t.z,this)}multiplyScalar(t){return this.x*=t,this.y*=t,this.z*=t,this}multiplyVectors(t,e){return this.x=t.x*e.x,this.y=t.y*e.y,this.z=t.z*e.z,this}applyEuler(t){return t&&t.isEuler||console.error("THREE.Vector3: .applyEuler() now expects an Euler rotation rather than a Vector3 and order."),this.applyQuaternion(Qd.setFromEuler(t))}applyAxisAngle(t,e){return this.applyQuaternion(Qd.setFromAxisAngle(t,e))}applyMatrix3(t){const e=this.x,i=this.y,n=this.z,r=t.elements;return this.x=r[0]*e+r[3]*i+r[6]*n,this.y=r[1]*e+r[4]*i+r[7]*n,this.z=r[2]*e+r[5]*i+r[8]*n,this}applyNormalMatrix(t){return this.applyMatrix3(t).normalize()}applyMatrix4(t){const e=this.x,i=this.y,n=this.z,r=t.elements,a=1/(r[3]*e+r[7]*i+r[11]*n+r[15]);return this.x=(r[0]*e+r[4]*i+r[8]*n+r[12])*a,this.y=(r[1]*e+r[5]*i+r[9]*n+r[13])*a,this.z=(r[2]*e+r[6]*i+r[10]*n+r[14])*a,this}applyQuaternion(t){const e=this.x,i=this.y,n=this.z,r=t.x,a=t.y,o=t.z,l=t.w,h=l*e+a*n-o*i,c=l*i+o*e-r*n,u=l*n+r*i-a*e,p=-r*e-a*i-o*n;return this.x=h*l+p*-r+c*-o-u*-a,this.y=c*l+p*-a+u*-r-h*-o,this.z=u*l+p*-o+h*-a-c*-r,this}project(t){return this.applyMatrix4(t.matrixWorldInverse).applyMatrix4(t.projectionMatrix)}unproject(t){return this.applyMatrix4(t.projectionMatrixInverse).applyMatrix4(t.matrixWorld)}transformDirection(t){const e=this.x,i=this.y,n=this.z,r=t.elements;return this.x=r[0]*e+r[4]*i+r[8]*n,this.y=r[1]*e+r[5]*i+r[9]*n,this.z=r[2]*e+r[6]*i+r[10]*n,this.normalize()}divide(t){return this.x/=t.x,this.y/=t.y,this.z/=t.z,this}divideScalar(t){return this.multiplyScalar(1/t)}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this.z=Math.max(t.z,Math.min(e.z,this.z)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this.z=Math.max(t,Math.min(e,this.z)),this}clampLength(t,e){const i=this.length();return this.divideScalar(i||1).multiplyScalar(Math.max(t,Math.min(e,i)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this}roundToZero(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this.z=this.z<0?Math.ceil(this.z):Math.floor(this.z),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this}dot(t){return this.x*t.x+this.y*t.y+this.z*t.z}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)}normalize(){return this.divideScalar(this.length()||1)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this.z+=(t.z-this.z)*e,this}lerpVectors(t,e,i){return this.x=t.x+(e.x-t.x)*i,this.y=t.y+(e.y-t.y)*i,this.z=t.z+(e.z-t.z)*i,this}cross(t,e){return e!==void 0?(console.warn("THREE.Vector3: .cross() now only accepts one argument. Use .crossVectors( a, b ) instead."),this.crossVectors(t,e)):this.crossVectors(this,t)}crossVectors(t,e){const i=t.x,n=t.y,r=t.z,a=e.x,o=e.y,l=e.z;return this.x=n*l-r*o,this.y=r*a-i*l,this.z=i*o-n*a,this}projectOnVector(t){const e=t.lengthSq();if(e===0)return this.set(0,0,0);const i=t.dot(this)/e;return this.copy(t).multiplyScalar(i)}projectOnPlane(t){return Nh.copy(this).projectOnVector(t),this.sub(Nh)}reflect(t){return this.sub(Nh.copy(t).multiplyScalar(2*this.dot(t)))}angleTo(t){const e=Math.sqrt(this.lengthSq()*t.lengthSq());if(e===0)return Math.PI/2;const i=this.dot(t)/e;return Math.acos(ke(i,-1,1))}distanceTo(t){return Math.sqrt(this.distanceToSquared(t))}distanceToSquared(t){const e=this.x-t.x,i=this.y-t.y,n=this.z-t.z;return e*e+i*i+n*n}manhattanDistanceTo(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)+Math.abs(this.z-t.z)}setFromSpherical(t){return this.setFromSphericalCoords(t.radius,t.phi,t.theta)}setFromSphericalCoords(t,e,i){const n=Math.sin(e)*t;return this.x=n*Math.sin(i),this.y=Math.cos(e)*t,this.z=n*Math.cos(i),this}setFromCylindrical(t){return this.setFromCylindricalCoords(t.radius,t.theta,t.y)}setFromCylindricalCoords(t,e,i){return this.x=t*Math.sin(e),this.y=i,this.z=t*Math.cos(e),this}setFromMatrixPosition(t){const e=t.elements;return this.x=e[12],this.y=e[13],this.z=e[14],this}setFromMatrixScale(t){const e=this.setFromMatrixColumn(t,0).length(),i=this.setFromMatrixColumn(t,1).length(),n=this.setFromMatrixColumn(t,2).length();return this.x=e,this.y=i,this.z=n,this}setFromMatrixColumn(t,e){return this.fromArray(t.elements,4*e)}setFromMatrix3Column(t,e){return this.fromArray(t.elements,3*e)}setFromEuler(t){return this.x=t._x,this.y=t._y,this.z=t._z,this}equals(t){return t.x===this.x&&t.y===this.y&&t.z===this.z}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this.z=t[e+2],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t}fromBufferAttribute(t,e,i){return i!==void 0&&console.warn("THREE.Vector3: offset has been removed from .fromBufferAttribute()."),this.x=t.getX(e),this.y=t.getY(e),this.z=t.getZ(e),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}randomDirection(){const t=2*(Math.random()-.5),e=Math.random()*Math.PI*2,i=Math.sqrt(1-t**2);return this.x=i*Math.cos(e),this.y=i*Math.sin(e),this.z=t,this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z}}const Nh=new M,Qd=new Ht;class He{constructor(t=new M(1/0,1/0,1/0),e=new M(-1/0,-1/0,-1/0)){this.isBox3=!0,this.min=t,this.max=e}set(t,e){return this.min.copy(t),this.max.copy(e),this}setFromArray(t){let e=1/0,i=1/0,n=1/0,r=-1/0,a=-1/0,o=-1/0;for(let l=0,h=t.length;lr&&(r=c),u>a&&(a=u),p>o&&(o=p)}return this.min.set(e,i,n),this.max.set(r,a,o),this}setFromBufferAttribute(t){let e=1/0,i=1/0,n=1/0,r=-1/0,a=-1/0,o=-1/0;for(let l=0,h=t.count;lr&&(r=c),u>a&&(a=u),p>o&&(o=p)}return this.min.set(e,i,n),this.max.set(r,a,o),this}setFromPoints(t){this.makeEmpty();for(let e=0,i=t.length;ethis.max.x||t.ythis.max.y||t.zthis.max.z)}containsBox(t){return this.min.x<=t.min.x&&t.max.x<=this.max.x&&this.min.y<=t.min.y&&t.max.y<=this.max.y&&this.min.z<=t.min.z&&t.max.z<=this.max.z}getParameter(t,e){return e.set((t.x-this.min.x)/(this.max.x-this.min.x),(t.y-this.min.y)/(this.max.y-this.min.y),(t.z-this.min.z)/(this.max.z-this.min.z))}intersectsBox(t){return!(t.max.xthis.max.x||t.max.ythis.max.y||t.max.zthis.max.z)}intersectsSphere(t){return this.clampPoint(t.center,Es),Es.distanceToSquared(t.center)<=t.radius*t.radius}intersectsPlane(t){let e,i;return t.normal.x>0?(e=t.normal.x*this.min.x,i=t.normal.x*this.max.x):(e=t.normal.x*this.max.x,i=t.normal.x*this.min.x),t.normal.y>0?(e+=t.normal.y*this.min.y,i+=t.normal.y*this.max.y):(e+=t.normal.y*this.max.y,i+=t.normal.y*this.min.y),t.normal.z>0?(e+=t.normal.z*this.min.z,i+=t.normal.z*this.max.z):(e+=t.normal.z*this.max.z,i+=t.normal.z*this.min.z),e<=-t.constant&&i>=-t.constant}intersectsTriangle(t){if(this.isEmpty())return!1;this.getCenter(Ca),Uo.subVectors(this.max,Ca),fr.subVectors(t.a,Ca),gr.subVectors(t.b,Ca),_r.subVectors(t.c,Ca),jn.subVectors(gr,fr),Gn.subVectors(_r,gr),As.subVectors(fr,_r);let e=[0,-jn.z,jn.y,0,-Gn.z,Gn.y,0,-As.z,As.y,jn.z,0,-jn.x,Gn.z,0,-Gn.x,As.z,0,-As.x,-jn.y,jn.x,0,-Gn.y,Gn.x,0,-As.y,As.x,0];return!!Fh(e,fr,gr,_r,Uo)&&(e=[1,0,0,0,1,0,0,0,1],!!Fh(e,fr,gr,_r,Uo)&&(Fo.crossVectors(jn,Gn),e=[Fo.x,Fo.y,Fo.z],Fh(e,fr,gr,_r,Uo)))}clampPoint(t,e){return e.copy(t).clamp(this.min,this.max)}distanceToPoint(t){return Es.copy(t).clamp(this.min,this.max).sub(t).length()}getBoundingSphere(t){return this.getCenter(t.center),t.radius=.5*this.getSize(Es).length(),t}intersect(t){return this.min.max(t.min),this.max.min(t.max),this.isEmpty()&&this.makeEmpty(),this}union(t){return this.min.min(t.min),this.max.max(t.max),this}applyMatrix4(t){return this.isEmpty()||(mn[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(t),mn[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(t),mn[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(t),mn[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(t),mn[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(t),mn[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(t),mn[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(t),mn[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(t),this.setFromPoints(mn)),this}translate(t){return this.min.add(t),this.max.add(t),this}equals(t){return t.min.equals(this.min)&&t.max.equals(this.max)}}const mn=[new M,new M,new M,new M,new M,new M,new M,new M],Es=new M,Uh=new He,fr=new M,gr=new M,_r=new M,jn=new M,Gn=new M,As=new M,Ca=new M,Uo=new M,Fo=new M,Ps=new M;function Fh(s,t,e,i,n){for(let r=0,a=s.length-3;r<=a;r+=3){Ps.fromArray(s,r);const o=n.x*Math.abs(Ps.x)+n.y*Math.abs(Ps.y)+n.z*Math.abs(Ps.z),l=t.dot(Ps),h=e.dot(Ps),c=i.dot(Ps);if(Math.max(-Math.max(l,h,c),Math.min(l,h,c))>o)return!1}return!0}const $0=new He,$d=new M,Bo=new M,Bh=new M;class mi{constructor(t=new M,e=-1){this.center=t,this.radius=e}set(t,e){return this.center.copy(t),this.radius=e,this}setFromPoints(t,e){const i=this.center;e!==void 0?i.copy(e):$0.setFromPoints(t).getCenter(i);let n=0;for(let r=0,a=t.length;rthis.radius*this.radius&&(e.sub(this.center).normalize(),e.multiplyScalar(this.radius).add(this.center)),e}getBoundingBox(t){return this.isEmpty()?(t.makeEmpty(),t):(t.set(this.center,this.center),t.expandByScalar(this.radius),t)}applyMatrix4(t){return this.center.applyMatrix4(t),this.radius=this.radius*t.getMaxScaleOnAxis(),this}translate(t){return this.center.add(t),this}expandByPoint(t){Bh.subVectors(t,this.center);const e=Bh.lengthSq();if(e>this.radius*this.radius){const i=Math.sqrt(e),n=.5*(i-this.radius);this.center.add(Bh.multiplyScalar(n/i)),this.radius+=n}return this}union(t){return this.center.equals(t.center)===!0?Bo.set(0,0,1).multiplyScalar(t.radius):Bo.subVectors(t.center,this.center).normalize().multiplyScalar(t.radius),this.expandByPoint($d.copy(t.center).add(Bo)),this.expandByPoint($d.copy(t.center).sub(Bo)),this}equals(t){return t.center.equals(this.center)&&t.radius===this.radius}clone(){return new this.constructor().copy(this)}}const fn=new M,Vh=new M,Vo=new M,Wn=new M,Hh=new M,Ho=new M,jh=new M;class vr{constructor(t=new M,e=new M(0,0,-1)){this.origin=t,this.direction=e}set(t,e){return this.origin.copy(t),this.direction.copy(e),this}copy(t){return this.origin.copy(t.origin),this.direction.copy(t.direction),this}at(t,e){return e.copy(this.direction).multiplyScalar(t).add(this.origin)}lookAt(t){return this.direction.copy(t).sub(this.origin).normalize(),this}recast(t){return this.origin.copy(this.at(t,fn)),this}closestPointToPoint(t,e){e.subVectors(t,this.origin);const i=e.dot(this.direction);return i<0?e.copy(this.origin):e.copy(this.direction).multiplyScalar(i).add(this.origin)}distanceToPoint(t){return Math.sqrt(this.distanceSqToPoint(t))}distanceSqToPoint(t){const e=fn.subVectors(t,this.origin).dot(this.direction);return e<0?this.origin.distanceToSquared(t):(fn.copy(this.direction).multiplyScalar(e).add(this.origin),fn.distanceToSquared(t))}distanceSqToSegment(t,e,i,n){Vh.copy(t).add(e).multiplyScalar(.5),Vo.copy(e).sub(t).normalize(),Wn.copy(this.origin).sub(Vh);const r=.5*t.distanceTo(e),a=-this.direction.dot(Vo),o=Wn.dot(this.direction),l=-Wn.dot(Vo),h=Wn.lengthSq(),c=Math.abs(1-a*a);let u,p,m,f;if(c>0)if(u=a*l-o,p=a*o-l,f=r*c,u>=0)if(p>=-f)if(p<=f){const g=1/c;u*=g,p*=g,m=u*(u+a*p+2*o)+p*(a*u+p+2*l)+h}else p=r,u=Math.max(0,-(a*p+o)),m=-u*u+p*(p+2*l)+h;else p=-r,u=Math.max(0,-(a*p+o)),m=-u*u+p*(p+2*l)+h;else p<=-f?(u=Math.max(0,-(-a*r+o)),p=u>0?-r:Math.min(Math.max(-r,-l),r),m=-u*u+p*(p+2*l)+h):p<=f?(u=0,p=Math.min(Math.max(-r,-l),r),m=p*(p+2*l)+h):(u=Math.max(0,-(a*r+o)),p=u>0?r:Math.min(Math.max(-r,-l),r),m=-u*u+p*(p+2*l)+h);else p=a>0?-r:r,u=Math.max(0,-(a*p+o)),m=-u*u+p*(p+2*l)+h;return i&&i.copy(this.direction).multiplyScalar(u).add(this.origin),n&&n.copy(Vo).multiplyScalar(p).add(Vh),m}intersectSphere(t,e){fn.subVectors(t.center,this.origin);const i=fn.dot(this.direction),n=fn.dot(fn)-i*i,r=t.radius*t.radius;if(n>r)return null;const a=Math.sqrt(r-n),o=i-a,l=i+a;return o<0&&l<0?null:o<0?this.at(l,e):this.at(o,e)}intersectsSphere(t){return this.distanceSqToPoint(t.center)<=t.radius*t.radius}distanceToPlane(t){const e=t.normal.dot(this.direction);if(e===0)return t.distanceToPoint(this.origin)===0?0:null;const i=-(this.origin.dot(t.normal)+t.constant)/e;return i>=0?i:null}intersectPlane(t,e){const i=this.distanceToPlane(t);return i===null?null:this.at(i,e)}intersectsPlane(t){const e=t.distanceToPoint(this.origin);return e===0?!0:t.normal.dot(this.direction)*e<0}intersectBox(t,e){let i,n,r,a,o,l;const h=1/this.direction.x,c=1/this.direction.y,u=1/this.direction.z,p=this.origin;return h>=0?(i=(t.min.x-p.x)*h,n=(t.max.x-p.x)*h):(i=(t.max.x-p.x)*h,n=(t.min.x-p.x)*h),c>=0?(r=(t.min.y-p.y)*c,a=(t.max.y-p.y)*c):(r=(t.max.y-p.y)*c,a=(t.min.y-p.y)*c),i>a||r>n?null:((r>i||i!=i)&&(i=r),(a=0?(o=(t.min.z-p.z)*u,l=(t.max.z-p.z)*u):(o=(t.max.z-p.z)*u,l=(t.min.z-p.z)*u),i>l||o>n?null:((o>i||i!=i)&&(i=o),(l=0?i:n,e)))}intersectsBox(t){return this.intersectBox(t,fn)!==null}intersectTriangle(t,e,i,n,r){Hh.subVectors(e,t),Ho.subVectors(i,t),jh.crossVectors(Hh,Ho);let a,o=this.direction.dot(jh);if(o>0){if(n)return null;a=1}else{if(!(o<0))return null;a=-1,o=-o}Wn.subVectors(this.origin,t);const l=a*this.direction.dot(Ho.crossVectors(Wn,Ho));if(l<0)return null;const h=a*this.direction.dot(Hh.cross(Wn));if(h<0||l+h>o)return null;const c=-a*Wn.dot(jh);return c<0?null:this.at(c/o,r)}applyMatrix4(t){return this.origin.applyMatrix4(t),this.direction.transformDirection(t),this}equals(t){return t.origin.equals(this.origin)&&t.direction.equals(this.direction)}clone(){return new this.constructor().copy(this)}}class rt{constructor(){this.isMatrix4=!0,this.elements=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],arguments.length>0&&console.error("THREE.Matrix4: the constructor no longer reads arguments. use .set() instead.")}set(t,e,i,n,r,a,o,l,h,c,u,p,m,f,g,_){const v=this.elements;return v[0]=t,v[4]=e,v[8]=i,v[12]=n,v[1]=r,v[5]=a,v[9]=o,v[13]=l,v[2]=h,v[6]=c,v[10]=u,v[14]=p,v[3]=m,v[7]=f,v[11]=g,v[15]=_,this}identity(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this}clone(){return new rt().fromArray(this.elements)}copy(t){const e=this.elements,i=t.elements;return e[0]=i[0],e[1]=i[1],e[2]=i[2],e[3]=i[3],e[4]=i[4],e[5]=i[5],e[6]=i[6],e[7]=i[7],e[8]=i[8],e[9]=i[9],e[10]=i[10],e[11]=i[11],e[12]=i[12],e[13]=i[13],e[14]=i[14],e[15]=i[15],this}copyPosition(t){const e=this.elements,i=t.elements;return e[12]=i[12],e[13]=i[13],e[14]=i[14],this}setFromMatrix3(t){const e=t.elements;return this.set(e[0],e[3],e[6],0,e[1],e[4],e[7],0,e[2],e[5],e[8],0,0,0,0,1),this}extractBasis(t,e,i){return t.setFromMatrixColumn(this,0),e.setFromMatrixColumn(this,1),i.setFromMatrixColumn(this,2),this}makeBasis(t,e,i){return this.set(t.x,e.x,i.x,0,t.y,e.y,i.y,0,t.z,e.z,i.z,0,0,0,0,1),this}extractRotation(t){const e=this.elements,i=t.elements,n=1/xr.setFromMatrixColumn(t,0).length(),r=1/xr.setFromMatrixColumn(t,1).length(),a=1/xr.setFromMatrixColumn(t,2).length();return e[0]=i[0]*n,e[1]=i[1]*n,e[2]=i[2]*n,e[3]=0,e[4]=i[4]*r,e[5]=i[5]*r,e[6]=i[6]*r,e[7]=0,e[8]=i[8]*a,e[9]=i[9]*a,e[10]=i[10]*a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this}makeRotationFromEuler(t){t&&t.isEuler||console.error("THREE.Matrix4: .makeRotationFromEuler() now expects a Euler rotation rather than a Vector3 and order.");const e=this.elements,i=t.x,n=t.y,r=t.z,a=Math.cos(i),o=Math.sin(i),l=Math.cos(n),h=Math.sin(n),c=Math.cos(r),u=Math.sin(r);if(t.order==="XYZ"){const p=a*c,m=a*u,f=o*c,g=o*u;e[0]=l*c,e[4]=-l*u,e[8]=h,e[1]=m+f*h,e[5]=p-g*h,e[9]=-o*l,e[2]=g-p*h,e[6]=f+m*h,e[10]=a*l}else if(t.order==="YXZ"){const p=l*c,m=l*u,f=h*c,g=h*u;e[0]=p+g*o,e[4]=f*o-m,e[8]=a*h,e[1]=a*u,e[5]=a*c,e[9]=-o,e[2]=m*o-f,e[6]=g+p*o,e[10]=a*l}else if(t.order==="ZXY"){const p=l*c,m=l*u,f=h*c,g=h*u;e[0]=p-g*o,e[4]=-a*u,e[8]=f+m*o,e[1]=m+f*o,e[5]=a*c,e[9]=g-p*o,e[2]=-a*h,e[6]=o,e[10]=a*l}else if(t.order==="ZYX"){const p=a*c,m=a*u,f=o*c,g=o*u;e[0]=l*c,e[4]=f*h-m,e[8]=p*h+g,e[1]=l*u,e[5]=g*h+p,e[9]=m*h-f,e[2]=-h,e[6]=o*l,e[10]=a*l}else if(t.order==="YZX"){const p=a*l,m=a*h,f=o*l,g=o*h;e[0]=l*c,e[4]=g-p*u,e[8]=f*u+m,e[1]=u,e[5]=a*c,e[9]=-o*c,e[2]=-h*c,e[6]=m*u+f,e[10]=p-g*u}else if(t.order==="XZY"){const p=a*l,m=a*h,f=o*l,g=o*h;e[0]=l*c,e[4]=-u,e[8]=h*c,e[1]=p*u+g,e[5]=a*c,e[9]=m*u-f,e[2]=f*u-m,e[6]=o*c,e[10]=g*u+p}return e[3]=0,e[7]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this}makeRotationFromQuaternion(t){return this.compose(tv,t,ev)}lookAt(t,e,i){const n=this.elements;return si.subVectors(t,e),si.lengthSq()===0&&(si.z=1),si.normalize(),Xn.crossVectors(i,si),Xn.lengthSq()===0&&(Math.abs(i.z)===1?si.x+=1e-4:si.z+=1e-4,si.normalize(),Xn.crossVectors(i,si)),Xn.normalize(),jo.crossVectors(si,Xn),n[0]=Xn.x,n[4]=jo.x,n[8]=si.x,n[1]=Xn.y,n[5]=jo.y,n[9]=si.y,n[2]=Xn.z,n[6]=jo.z,n[10]=si.z,this}multiply(t,e){return e!==void 0?(console.warn("THREE.Matrix4: .multiply() now only accepts one argument. Use .multiplyMatrices( a, b ) instead."),this.multiplyMatrices(t,e)):this.multiplyMatrices(this,t)}premultiply(t){return this.multiplyMatrices(t,this)}multiplyMatrices(t,e){const i=t.elements,n=e.elements,r=this.elements,a=i[0],o=i[4],l=i[8],h=i[12],c=i[1],u=i[5],p=i[9],m=i[13],f=i[2],g=i[6],_=i[10],v=i[14],x=i[3],y=i[7],b=i[11],S=i[15],w=n[0],C=n[4],L=n[8],T=n[12],E=n[1],I=n[5],z=n[9],B=n[13],O=n[2],F=n[6],Q=n[10],k=n[14],X=n[3],U=n[7],H=n[11],Z=n[15];return r[0]=a*w+o*E+l*O+h*X,r[4]=a*C+o*I+l*F+h*U,r[8]=a*L+o*z+l*Q+h*H,r[12]=a*T+o*B+l*k+h*Z,r[1]=c*w+u*E+p*O+m*X,r[5]=c*C+u*I+p*F+m*U,r[9]=c*L+u*z+p*Q+m*H,r[13]=c*T+u*B+p*k+m*Z,r[2]=f*w+g*E+_*O+v*X,r[6]=f*C+g*I+_*F+v*U,r[10]=f*L+g*z+_*Q+v*H,r[14]=f*T+g*B+_*k+v*Z,r[3]=x*w+y*E+b*O+S*X,r[7]=x*C+y*I+b*F+S*U,r[11]=x*L+y*z+b*Q+S*H,r[15]=x*T+y*B+b*k+S*Z,this}multiplyScalar(t){const e=this.elements;return e[0]*=t,e[4]*=t,e[8]*=t,e[12]*=t,e[1]*=t,e[5]*=t,e[9]*=t,e[13]*=t,e[2]*=t,e[6]*=t,e[10]*=t,e[14]*=t,e[3]*=t,e[7]*=t,e[11]*=t,e[15]*=t,this}determinant(){const t=this.elements,e=t[0],i=t[4],n=t[8],r=t[12],a=t[1],o=t[5],l=t[9],h=t[13],c=t[2],u=t[6],p=t[10],m=t[14];return t[3]*(+r*l*u-n*h*u-r*o*p+i*h*p+n*o*m-i*l*m)+t[7]*(+e*l*m-e*h*p+r*a*p-n*a*m+n*h*c-r*l*c)+t[11]*(+e*h*u-e*o*m-r*a*u+i*a*m+r*o*c-i*h*c)+t[15]*(-n*o*c-e*l*u+e*o*p+n*a*u-i*a*p+i*l*c)}transpose(){const t=this.elements;let e;return e=t[1],t[1]=t[4],t[4]=e,e=t[2],t[2]=t[8],t[8]=e,e=t[6],t[6]=t[9],t[9]=e,e=t[3],t[3]=t[12],t[12]=e,e=t[7],t[7]=t[13],t[13]=e,e=t[11],t[11]=t[14],t[14]=e,this}setPosition(t,e,i){const n=this.elements;return t.isVector3?(n[12]=t.x,n[13]=t.y,n[14]=t.z):(n[12]=t,n[13]=e,n[14]=i),this}invert(){const t=this.elements,e=t[0],i=t[1],n=t[2],r=t[3],a=t[4],o=t[5],l=t[6],h=t[7],c=t[8],u=t[9],p=t[10],m=t[11],f=t[12],g=t[13],_=t[14],v=t[15],x=u*_*h-g*p*h+g*l*m-o*_*m-u*l*v+o*p*v,y=f*p*h-c*_*h-f*l*m+a*_*m+c*l*v-a*p*v,b=c*g*h-f*u*h+f*o*m-a*g*m-c*o*v+a*u*v,S=f*u*l-c*g*l-f*o*p+a*g*p+c*o*_-a*u*_,w=e*x+i*y+n*b+r*S;if(w===0)return this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);const C=1/w;return t[0]=x*C,t[1]=(g*p*r-u*_*r-g*n*m+i*_*m+u*n*v-i*p*v)*C,t[2]=(o*_*r-g*l*r+g*n*h-i*_*h-o*n*v+i*l*v)*C,t[3]=(u*l*r-o*p*r-u*n*h+i*p*h+o*n*m-i*l*m)*C,t[4]=y*C,t[5]=(c*_*r-f*p*r+f*n*m-e*_*m-c*n*v+e*p*v)*C,t[6]=(f*l*r-a*_*r-f*n*h+e*_*h+a*n*v-e*l*v)*C,t[7]=(a*p*r-c*l*r+c*n*h-e*p*h-a*n*m+e*l*m)*C,t[8]=b*C,t[9]=(f*u*r-c*g*r-f*i*m+e*g*m+c*i*v-e*u*v)*C,t[10]=(a*g*r-f*o*r+f*i*h-e*g*h-a*i*v+e*o*v)*C,t[11]=(c*o*r-a*u*r-c*i*h+e*u*h+a*i*m-e*o*m)*C,t[12]=S*C,t[13]=(c*g*n-f*u*n+f*i*p-e*g*p-c*i*_+e*u*_)*C,t[14]=(f*o*n-a*g*n-f*i*l+e*g*l+a*i*_-e*o*_)*C,t[15]=(a*u*n-c*o*n+c*i*l-e*u*l-a*i*p+e*o*p)*C,this}scale(t){const e=this.elements,i=t.x,n=t.y,r=t.z;return e[0]*=i,e[4]*=n,e[8]*=r,e[1]*=i,e[5]*=n,e[9]*=r,e[2]*=i,e[6]*=n,e[10]*=r,e[3]*=i,e[7]*=n,e[11]*=r,this}getMaxScaleOnAxis(){const t=this.elements,e=t[0]*t[0]+t[1]*t[1]+t[2]*t[2],i=t[4]*t[4]+t[5]*t[5]+t[6]*t[6],n=t[8]*t[8]+t[9]*t[9]+t[10]*t[10];return Math.sqrt(Math.max(e,i,n))}makeTranslation(t,e,i){return this.set(1,0,0,t,0,1,0,e,0,0,1,i,0,0,0,1),this}makeRotationX(t){const e=Math.cos(t),i=Math.sin(t);return this.set(1,0,0,0,0,e,-i,0,0,i,e,0,0,0,0,1),this}makeRotationY(t){const e=Math.cos(t),i=Math.sin(t);return this.set(e,0,i,0,0,1,0,0,-i,0,e,0,0,0,0,1),this}makeRotationZ(t){const e=Math.cos(t),i=Math.sin(t);return this.set(e,-i,0,0,i,e,0,0,0,0,1,0,0,0,0,1),this}makeRotationAxis(t,e){const i=Math.cos(e),n=Math.sin(e),r=1-i,a=t.x,o=t.y,l=t.z,h=r*a,c=r*o;return this.set(h*a+i,h*o-n*l,h*l+n*o,0,h*o+n*l,c*o+i,c*l-n*a,0,h*l-n*o,c*l+n*a,r*l*l+i,0,0,0,0,1),this}makeScale(t,e,i){return this.set(t,0,0,0,0,e,0,0,0,0,i,0,0,0,0,1),this}makeShear(t,e,i,n,r,a){return this.set(1,i,r,0,t,1,a,0,e,n,1,0,0,0,0,1),this}compose(t,e,i){const n=this.elements,r=e._x,a=e._y,o=e._z,l=e._w,h=r+r,c=a+a,u=o+o,p=r*h,m=r*c,f=r*u,g=a*c,_=a*u,v=o*u,x=l*h,y=l*c,b=l*u,S=i.x,w=i.y,C=i.z;return n[0]=(1-(g+v))*S,n[1]=(m+b)*S,n[2]=(f-y)*S,n[3]=0,n[4]=(m-b)*w,n[5]=(1-(p+v))*w,n[6]=(_+x)*w,n[7]=0,n[8]=(f+y)*C,n[9]=(_-x)*C,n[10]=(1-(p+g))*C,n[11]=0,n[12]=t.x,n[13]=t.y,n[14]=t.z,n[15]=1,this}decompose(t,e,i){const n=this.elements;let r=xr.set(n[0],n[1],n[2]).length();const a=xr.set(n[4],n[5],n[6]).length(),o=xr.set(n[8],n[9],n[10]).length();this.determinant()<0&&(r=-r),t.x=n[12],t.y=n[13],t.z=n[14],Ri.copy(this);const l=1/r,h=1/a,c=1/o;return Ri.elements[0]*=l,Ri.elements[1]*=l,Ri.elements[2]*=l,Ri.elements[4]*=h,Ri.elements[5]*=h,Ri.elements[6]*=h,Ri.elements[8]*=c,Ri.elements[9]*=c,Ri.elements[10]*=c,e.setFromRotationMatrix(Ri),i.x=r,i.y=a,i.z=o,this}makePerspective(t,e,i,n,r,a){a===void 0&&console.warn("THREE.Matrix4: .makePerspective() has been redefined and has a new signature. Please check the docs.");const o=this.elements,l=2*r/(e-t),h=2*r/(i-n),c=(e+t)/(e-t),u=(i+n)/(i-n),p=-(a+r)/(a-r),m=-2*a*r/(a-r);return o[0]=l,o[4]=0,o[8]=c,o[12]=0,o[1]=0,o[5]=h,o[9]=u,o[13]=0,o[2]=0,o[6]=0,o[10]=p,o[14]=m,o[3]=0,o[7]=0,o[11]=-1,o[15]=0,this}makeOrthographic(t,e,i,n,r,a){const o=this.elements,l=1/(e-t),h=1/(i-n),c=1/(a-r),u=(e+t)*l,p=(i+n)*h,m=(a+r)*c;return o[0]=2*l,o[4]=0,o[8]=0,o[12]=-u,o[1]=0,o[5]=2*h,o[9]=0,o[13]=-p,o[2]=0,o[6]=0,o[10]=-2*c,o[14]=-m,o[3]=0,o[7]=0,o[11]=0,o[15]=1,this}equals(t){const e=this.elements,i=t.elements;for(let n=0;n<16;n++)if(e[n]!==i[n])return!1;return!0}fromArray(t,e=0){for(let i=0;i<16;i++)this.elements[i]=t[i+e];return this}toArray(t=[],e=0){const i=this.elements;return t[e]=i[0],t[e+1]=i[1],t[e+2]=i[2],t[e+3]=i[3],t[e+4]=i[4],t[e+5]=i[5],t[e+6]=i[6],t[e+7]=i[7],t[e+8]=i[8],t[e+9]=i[9],t[e+10]=i[10],t[e+11]=i[11],t[e+12]=i[12],t[e+13]=i[13],t[e+14]=i[14],t[e+15]=i[15],t}}const xr=new M,Ri=new rt,tv=new M(0,0,0),ev=new M(1,1,1),Xn=new M,jo=new M,si=new M,tp=new rt,ep=new Ht;class Wi{constructor(t=0,e=0,i=0,n=Wi.DefaultOrder){this.isEuler=!0,this._x=t,this._y=e,this._z=i,this._order=n}get x(){return this._x}set x(t){this._x=t,this._onChangeCallback()}get y(){return this._y}set y(t){this._y=t,this._onChangeCallback()}get z(){return this._z}set z(t){this._z=t,this._onChangeCallback()}get order(){return this._order}set order(t){this._order=t,this._onChangeCallback()}set(t,e,i,n=this._order){return this._x=t,this._y=e,this._z=i,this._order=n,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._order)}copy(t){return this._x=t._x,this._y=t._y,this._z=t._z,this._order=t._order,this._onChangeCallback(),this}setFromRotationMatrix(t,e=this._order,i=!0){const n=t.elements,r=n[0],a=n[4],o=n[8],l=n[1],h=n[5],c=n[9],u=n[2],p=n[6],m=n[10];switch(e){case"XYZ":this._y=Math.asin(ke(o,-1,1)),Math.abs(o)<.9999999?(this._x=Math.atan2(-c,m),this._z=Math.atan2(-a,r)):(this._x=Math.atan2(p,h),this._z=0);break;case"YXZ":this._x=Math.asin(-ke(c,-1,1)),Math.abs(c)<.9999999?(this._y=Math.atan2(o,m),this._z=Math.atan2(l,h)):(this._y=Math.atan2(-u,r),this._z=0);break;case"ZXY":this._x=Math.asin(ke(p,-1,1)),Math.abs(p)<.9999999?(this._y=Math.atan2(-u,m),this._z=Math.atan2(-a,h)):(this._y=0,this._z=Math.atan2(l,r));break;case"ZYX":this._y=Math.asin(-ke(u,-1,1)),Math.abs(u)<.9999999?(this._x=Math.atan2(p,m),this._z=Math.atan2(l,r)):(this._x=0,this._z=Math.atan2(-a,h));break;case"YZX":this._z=Math.asin(ke(l,-1,1)),Math.abs(l)<.9999999?(this._x=Math.atan2(-c,h),this._y=Math.atan2(-u,r)):(this._x=0,this._y=Math.atan2(o,m));break;case"XZY":this._z=Math.asin(-ke(a,-1,1)),Math.abs(a)<.9999999?(this._x=Math.atan2(p,h),this._y=Math.atan2(o,r)):(this._x=Math.atan2(-c,m),this._y=0);break;default:console.warn("THREE.Euler: .setFromRotationMatrix() encountered an unknown order: "+e)}return this._order=e,i===!0&&this._onChangeCallback(),this}setFromQuaternion(t,e,i){return tp.makeRotationFromQuaternion(t),this.setFromRotationMatrix(tp,e,i)}setFromVector3(t,e=this._order){return this.set(t.x,t.y,t.z,e)}reorder(t){return ep.setFromEuler(this),this.setFromQuaternion(ep,t)}equals(t){return t._x===this._x&&t._y===this._y&&t._z===this._z&&t._order===this._order}fromArray(t){return this._x=t[0],this._y=t[1],this._z=t[2],t[3]!==void 0&&(this._order=t[3]),this._onChangeCallback(),this}toArray(t=[],e=0){return t[e]=this._x,t[e+1]=this._y,t[e+2]=this._z,t[e+3]=this._order,t}_onChange(t){return this._onChangeCallback=t,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._order}toVector3(){console.error("THREE.Euler: .toVector3() has been removed. Use Vector3.setFromEuler() instead")}}Wi.DefaultOrder="XYZ",Wi.RotationOrders=["XYZ","YZX","ZXY","XZY","YXZ","ZYX"];class Gh{constructor(){this.mask=1}set(t){this.mask=(1<>>0}enable(t){this.mask|=1<1){for(let e=0;e1){for(let i=0;i0){n.children=[];for(let o=0;o0){n.animations=[];for(let o=0;o0&&(i.geometries=o),l.length>0&&(i.materials=l),h.length>0&&(i.textures=h),c.length>0&&(i.images=c),u.length>0&&(i.shapes=u),p.length>0&&(i.skeletons=p),m.length>0&&(i.animations=m),f.length>0&&(i.nodes=f)}return i.object=n,i;function a(o){const l=[];for(const h in o){const c=o[h];delete c.metadata,l.push(c)}return l}}clone(t){return new this.constructor().copy(this,t)}copy(t,e=!0){if(this.name=t.name,this.up.copy(t.up),this.position.copy(t.position),this.rotation.order=t.rotation.order,this.quaternion.copy(t.quaternion),this.scale.copy(t.scale),this.matrix.copy(t.matrix),this.matrixWorld.copy(t.matrixWorld),this.matrixAutoUpdate=t.matrixAutoUpdate,this.matrixWorldNeedsUpdate=t.matrixWorldNeedsUpdate,this.layers.mask=t.layers.mask,this.visible=t.visible,this.castShadow=t.castShadow,this.receiveShadow=t.receiveShadow,this.frustumCulled=t.frustumCulled,this.renderOrder=t.renderOrder,this.userData=JSON.parse(JSON.stringify(t.userData)),e===!0)for(let i=0;i0?n.multiplyScalar(1/Math.sqrt(r)):n.set(0,0,0)}static getBarycoord(t,e,i,n,r){Di.subVectors(n,e),_n.subVectors(i,e),Wh.subVectors(t,e);const a=Di.dot(Di),o=Di.dot(_n),l=Di.dot(Wh),h=_n.dot(_n),c=_n.dot(Wh),u=a*h-o*o;if(u===0)return r.set(-2,-1,-1);const p=1/u,m=(h*l-o*c)*p,f=(a*c-o*l)*p;return r.set(1-m-f,f,m)}static containsPoint(t,e,i,n){return this.getBarycoord(t,e,i,n,vn),vn.x>=0&&vn.y>=0&&vn.x+vn.y<=1}static getUV(t,e,i,n,r,a,o,l){return this.getBarycoord(t,e,i,n,vn),l.set(0,0),l.addScaledVector(r,vn.x),l.addScaledVector(a,vn.y),l.addScaledVector(o,vn.z),l}static isFrontFacing(t,e,i,n){return Di.subVectors(i,e),_n.subVectors(t,e),Di.cross(_n).dot(n)<0}set(t,e,i){return this.a.copy(t),this.b.copy(e),this.c.copy(i),this}setFromPointsAndIndices(t,e,i,n){return this.a.copy(t[e]),this.b.copy(t[i]),this.c.copy(t[n]),this}setFromAttributeAndIndices(t,e,i,n){return this.a.fromBufferAttribute(t,e),this.b.fromBufferAttribute(t,i),this.c.fromBufferAttribute(t,n),this}clone(){return new this.constructor().copy(this)}copy(t){return this.a.copy(t.a),this.b.copy(t.b),this.c.copy(t.c),this}getArea(){return Di.subVectors(this.c,this.b),_n.subVectors(this.a,this.b),.5*Di.cross(_n).length()}getMidpoint(t){return t.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)}getNormal(t){return xn.getNormal(this.a,this.b,this.c,t)}getPlane(t){return t.setFromCoplanarPoints(this.a,this.b,this.c)}getBarycoord(t,e){return xn.getBarycoord(t,this.a,this.b,this.c,e)}getUV(t,e,i,n,r){return xn.getUV(t,this.a,this.b,this.c,e,i,n,r)}containsPoint(t){return xn.containsPoint(t,this.a,this.b,this.c)}isFrontFacing(t){return xn.isFrontFacing(this.a,this.b,this.c,t)}intersectsBox(t){return t.intersectsTriangle(this)}closestPointToPoint(t,e){const i=this.a,n=this.b,r=this.c;let a,o;br.subVectors(n,i),Mr.subVectors(r,i),Xh.subVectors(t,i);const l=br.dot(Xh),h=Mr.dot(Xh);if(l<=0&&h<=0)return e.copy(i);qh.subVectors(t,n);const c=br.dot(qh),u=Mr.dot(qh);if(c>=0&&u<=c)return e.copy(n);const p=l*u-c*h;if(p<=0&&l>=0&&c<=0)return a=l/(l-c),e.copy(i).addScaledVector(br,a);Yh.subVectors(t,r);const m=br.dot(Yh),f=Mr.dot(Yh);if(f>=0&&m<=f)return e.copy(r);const g=m*h-l*f;if(g<=0&&h>=0&&f<=0)return o=h/(h-f),e.copy(i).addScaledVector(Mr,o);const _=c*f-m*u;if(_<=0&&u-c>=0&&m-f>=0)return op.subVectors(r,n),o=(u-c)/(u-c+(m-f)),e.copy(n).addScaledVector(op,o);const v=1/(_+g+p);return a=g*v,o=p*v,e.copy(i).addScaledVector(br,a).addScaledVector(Mr,o)}equals(t){return t.a.equals(this.a)&&t.b.equals(this.b)&&t.c.equals(this.c)}}let av=0;class ve extends pn{constructor(){super(),this.isMaterial=!0,Object.defineProperty(this,"id",{value:av++}),this.uuid=Ei(),this.name="",this.type="Material",this.blending=ar,this.side=Fn,this.vertexColors=!1,this.opacity=1,this.transparent=!1,this.blendSrc=vd,this.blendDst=xd,this.blendEquation=or,this.blendSrcAlpha=null,this.blendDstAlpha=null,this.blendEquationAlpha=null,this.depthFunc=bh,this.depthTest=!0,this.depthWrite=!0,this.stencilWriteMask=255,this.stencilFunc=519,this.stencilRef=0,this.stencilFuncMask=255,this.stencilFail=ba,this.stencilZFail=ba,this.stencilZPass=ba,this.stencilWrite=!1,this.clippingPlanes=null,this.clipIntersection=!1,this.clipShadows=!1,this.shadowSide=null,this.colorWrite=!0,this.precision=null,this.polygonOffset=!1,this.polygonOffsetFactor=0,this.polygonOffsetUnits=0,this.dithering=!1,this.alphaToCoverage=!1,this.premultipliedAlpha=!1,this.visible=!0,this.toneMapped=!0,this.userData={},this.version=0,this._alphaTest=0}get alphaTest(){return this._alphaTest}set alphaTest(t){this._alphaTest>0!=t>0&&this.version++,this._alphaTest=t}onBuild(){}onBeforeRender(){}onBeforeCompile(){}customProgramCacheKey(){return this.onBeforeCompile.toString()}setValues(t){if(t!==void 0)for(const e in t){const i=t[e];if(i===void 0){console.warn("THREE.Material: '"+e+"' parameter is undefined.");continue}if(e==="shading"){console.warn("THREE."+this.type+": .shading has been removed. Use the boolean .flatShading instead."),this.flatShading=i===1;continue}const n=this[e];n!==void 0?n&&n.isColor?n.set(i):n&&n.isVector3&&i&&i.isVector3?n.copy(i):this[e]=i:console.warn("THREE."+this.type+": '"+e+"' is not a property of this material.")}}toJSON(t){const e=t===void 0||typeof t=="string";e&&(t={textures:{},images:{}});const i={metadata:{version:4.5,type:"Material",generator:"Material.toJSON"}};function n(r){const a=[];for(const o in r){const l=r[o];delete l.metadata,a.push(l)}return a}if(i.uuid=this.uuid,i.type=this.type,this.name!==""&&(i.name=this.name),this.color&&this.color.isColor&&(i.color=this.color.getHex()),this.roughness!==void 0&&(i.roughness=this.roughness),this.metalness!==void 0&&(i.metalness=this.metalness),this.sheen!==void 0&&(i.sheen=this.sheen),this.sheenColor&&this.sheenColor.isColor&&(i.sheenColor=this.sheenColor.getHex()),this.sheenRoughness!==void 0&&(i.sheenRoughness=this.sheenRoughness),this.emissive&&this.emissive.isColor&&(i.emissive=this.emissive.getHex()),this.emissiveIntensity&&this.emissiveIntensity!==1&&(i.emissiveIntensity=this.emissiveIntensity),this.specular&&this.specular.isColor&&(i.specular=this.specular.getHex()),this.specularIntensity!==void 0&&(i.specularIntensity=this.specularIntensity),this.specularColor&&this.specularColor.isColor&&(i.specularColor=this.specularColor.getHex()),this.shininess!==void 0&&(i.shininess=this.shininess),this.clearcoat!==void 0&&(i.clearcoat=this.clearcoat),this.clearcoatRoughness!==void 0&&(i.clearcoatRoughness=this.clearcoatRoughness),this.clearcoatMap&&this.clearcoatMap.isTexture&&(i.clearcoatMap=this.clearcoatMap.toJSON(t).uuid),this.clearcoatRoughnessMap&&this.clearcoatRoughnessMap.isTexture&&(i.clearcoatRoughnessMap=this.clearcoatRoughnessMap.toJSON(t).uuid),this.clearcoatNormalMap&&this.clearcoatNormalMap.isTexture&&(i.clearcoatNormalMap=this.clearcoatNormalMap.toJSON(t).uuid,i.clearcoatNormalScale=this.clearcoatNormalScale.toArray()),this.iridescence!==void 0&&(i.iridescence=this.iridescence),this.iridescenceIOR!==void 0&&(i.iridescenceIOR=this.iridescenceIOR),this.iridescenceThicknessRange!==void 0&&(i.iridescenceThicknessRange=this.iridescenceThicknessRange),this.iridescenceMap&&this.iridescenceMap.isTexture&&(i.iridescenceMap=this.iridescenceMap.toJSON(t).uuid),this.iridescenceThicknessMap&&this.iridescenceThicknessMap.isTexture&&(i.iridescenceThicknessMap=this.iridescenceThicknessMap.toJSON(t).uuid),this.map&&this.map.isTexture&&(i.map=this.map.toJSON(t).uuid),this.matcap&&this.matcap.isTexture&&(i.matcap=this.matcap.toJSON(t).uuid),this.alphaMap&&this.alphaMap.isTexture&&(i.alphaMap=this.alphaMap.toJSON(t).uuid),this.lightMap&&this.lightMap.isTexture&&(i.lightMap=this.lightMap.toJSON(t).uuid,i.lightMapIntensity=this.lightMapIntensity),this.aoMap&&this.aoMap.isTexture&&(i.aoMap=this.aoMap.toJSON(t).uuid,i.aoMapIntensity=this.aoMapIntensity),this.bumpMap&&this.bumpMap.isTexture&&(i.bumpMap=this.bumpMap.toJSON(t).uuid,i.bumpScale=this.bumpScale),this.normalMap&&this.normalMap.isTexture&&(i.normalMap=this.normalMap.toJSON(t).uuid,i.normalMapType=this.normalMapType,i.normalScale=this.normalScale.toArray()),this.displacementMap&&this.displacementMap.isTexture&&(i.displacementMap=this.displacementMap.toJSON(t).uuid,i.displacementScale=this.displacementScale,i.displacementBias=this.displacementBias),this.roughnessMap&&this.roughnessMap.isTexture&&(i.roughnessMap=this.roughnessMap.toJSON(t).uuid),this.metalnessMap&&this.metalnessMap.isTexture&&(i.metalnessMap=this.metalnessMap.toJSON(t).uuid),this.emissiveMap&&this.emissiveMap.isTexture&&(i.emissiveMap=this.emissiveMap.toJSON(t).uuid),this.specularMap&&this.specularMap.isTexture&&(i.specularMap=this.specularMap.toJSON(t).uuid),this.specularIntensityMap&&this.specularIntensityMap.isTexture&&(i.specularIntensityMap=this.specularIntensityMap.toJSON(t).uuid),this.specularColorMap&&this.specularColorMap.isTexture&&(i.specularColorMap=this.specularColorMap.toJSON(t).uuid),this.envMap&&this.envMap.isTexture&&(i.envMap=this.envMap.toJSON(t).uuid,this.combine!==void 0&&(i.combine=this.combine)),this.envMapIntensity!==void 0&&(i.envMapIntensity=this.envMapIntensity),this.reflectivity!==void 0&&(i.reflectivity=this.reflectivity),this.refractionRatio!==void 0&&(i.refractionRatio=this.refractionRatio),this.gradientMap&&this.gradientMap.isTexture&&(i.gradientMap=this.gradientMap.toJSON(t).uuid),this.transmission!==void 0&&(i.transmission=this.transmission),this.transmissionMap&&this.transmissionMap.isTexture&&(i.transmissionMap=this.transmissionMap.toJSON(t).uuid),this.thickness!==void 0&&(i.thickness=this.thickness),this.thicknessMap&&this.thicknessMap.isTexture&&(i.thicknessMap=this.thicknessMap.toJSON(t).uuid),this.attenuationDistance!==void 0&&(i.attenuationDistance=this.attenuationDistance),this.attenuationColor!==void 0&&(i.attenuationColor=this.attenuationColor.getHex()),this.size!==void 0&&(i.size=this.size),this.shadowSide!==null&&(i.shadowSide=this.shadowSide),this.sizeAttenuation!==void 0&&(i.sizeAttenuation=this.sizeAttenuation),this.blending!==ar&&(i.blending=this.blending),this.side!==Fn&&(i.side=this.side),this.vertexColors&&(i.vertexColors=!0),this.opacity<1&&(i.opacity=this.opacity),this.transparent===!0&&(i.transparent=this.transparent),i.depthFunc=this.depthFunc,i.depthTest=this.depthTest,i.depthWrite=this.depthWrite,i.colorWrite=this.colorWrite,i.stencilWrite=this.stencilWrite,i.stencilWriteMask=this.stencilWriteMask,i.stencilFunc=this.stencilFunc,i.stencilRef=this.stencilRef,i.stencilFuncMask=this.stencilFuncMask,i.stencilFail=this.stencilFail,i.stencilZFail=this.stencilZFail,i.stencilZPass=this.stencilZPass,this.rotation!==void 0&&this.rotation!==0&&(i.rotation=this.rotation),this.polygonOffset===!0&&(i.polygonOffset=!0),this.polygonOffsetFactor!==0&&(i.polygonOffsetFactor=this.polygonOffsetFactor),this.polygonOffsetUnits!==0&&(i.polygonOffsetUnits=this.polygonOffsetUnits),this.linewidth!==void 0&&this.linewidth!==1&&(i.linewidth=this.linewidth),this.dashSize!==void 0&&(i.dashSize=this.dashSize),this.gapSize!==void 0&&(i.gapSize=this.gapSize),this.scale!==void 0&&(i.scale=this.scale),this.dithering===!0&&(i.dithering=!0),this.alphaTest>0&&(i.alphaTest=this.alphaTest),this.alphaToCoverage===!0&&(i.alphaToCoverage=this.alphaToCoverage),this.premultipliedAlpha===!0&&(i.premultipliedAlpha=this.premultipliedAlpha),this.wireframe===!0&&(i.wireframe=this.wireframe),this.wireframeLinewidth>1&&(i.wireframeLinewidth=this.wireframeLinewidth),this.wireframeLinecap!=="round"&&(i.wireframeLinecap=this.wireframeLinecap),this.wireframeLinejoin!=="round"&&(i.wireframeLinejoin=this.wireframeLinejoin),this.flatShading===!0&&(i.flatShading=this.flatShading),this.visible===!1&&(i.visible=!1),this.toneMapped===!1&&(i.toneMapped=!1),this.fog===!1&&(i.fog=!1),JSON.stringify(this.userData)!=="{}"&&(i.userData=this.userData),e){const r=n(t.textures),a=n(t.images);r.length>0&&(i.textures=r),a.length>0&&(i.images=a)}return i}clone(){return new this.constructor().copy(this)}copy(t){this.name=t.name,this.blending=t.blending,this.side=t.side,this.vertexColors=t.vertexColors,this.opacity=t.opacity,this.transparent=t.transparent,this.blendSrc=t.blendSrc,this.blendDst=t.blendDst,this.blendEquation=t.blendEquation,this.blendSrcAlpha=t.blendSrcAlpha,this.blendDstAlpha=t.blendDstAlpha,this.blendEquationAlpha=t.blendEquationAlpha,this.depthFunc=t.depthFunc,this.depthTest=t.depthTest,this.depthWrite=t.depthWrite,this.stencilWriteMask=t.stencilWriteMask,this.stencilFunc=t.stencilFunc,this.stencilRef=t.stencilRef,this.stencilFuncMask=t.stencilFuncMask,this.stencilFail=t.stencilFail,this.stencilZFail=t.stencilZFail,this.stencilZPass=t.stencilZPass,this.stencilWrite=t.stencilWrite;const e=t.clippingPlanes;let i=null;if(e!==null){const n=e.length;i=new Array(n);for(let r=0;r!==n;++r)i[r]=e[r].clone()}return this.clippingPlanes=i,this.clipIntersection=t.clipIntersection,this.clipShadows=t.clipShadows,this.shadowSide=t.shadowSide,this.colorWrite=t.colorWrite,this.precision=t.precision,this.polygonOffset=t.polygonOffset,this.polygonOffsetFactor=t.polygonOffsetFactor,this.polygonOffsetUnits=t.polygonOffsetUnits,this.dithering=t.dithering,this.alphaTest=t.alphaTest,this.alphaToCoverage=t.alphaToCoverage,this.premultipliedAlpha=t.premultipliedAlpha,this.visible=t.visible,this.toneMapped=t.toneMapped,this.userData=JSON.parse(JSON.stringify(t.userData)),this}dispose(){this.dispatchEvent({type:"dispose"})}set needsUpdate(t){t===!0&&this.version++}get vertexTangents(){return console.warn("THREE."+this.type+": .vertexTangents has been removed."),!1}set vertexTangents(t){console.warn("THREE."+this.type+": .vertexTangents has been removed.")}}ve.fromType=function(){return null};class ae extends ve{constructor(t){super(),this.isMeshBasicMaterial=!0,this.type="MeshBasicMaterial",this.color=new tt(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=Ro,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.specularMap=t.specularMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.combine=t.combine,this.reflectivity=t.reflectivity,this.refractionRatio=t.refractionRatio,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.fog=t.fog,this}}const xe=new M,Wo=new j;class se{constructor(t,e,i){if(Array.isArray(t))throw new TypeError("THREE.BufferAttribute: array should be a Typed Array.");this.isBufferAttribute=!0,this.name="",this.array=t,this.itemSize=e,this.count=t!==void 0?t.length/e:0,this.normalized=i===!0,this.usage=pr,this.updateRange={offset:0,count:-1},this.version=0}onUploadCallback(){}set needsUpdate(t){t===!0&&this.version++}setUsage(t){return this.usage=t,this}copy(t){return this.name=t.name,this.array=new t.array.constructor(t.array),this.itemSize=t.itemSize,this.count=t.count,this.normalized=t.normalized,this.usage=t.usage,this}copyAt(t,e,i){t*=this.itemSize,i*=e.itemSize;for(let n=0,r=this.itemSize;n0&&(t.userData=this.userData),this.parameters!==void 0){const l=this.parameters;for(const h in l)l[h]!==void 0&&(t[h]=l[h]);return t}t.data={attributes:{}};const e=this.index;e!==null&&(t.data.index={type:e.array.constructor.name,array:Array.prototype.slice.call(e.array)});const i=this.attributes;for(const l in i){const h=i[l];t.data.attributes[l]=h.toJSON(t.data)}const n={};let r=!1;for(const l in this.morphAttributes){const h=this.morphAttributes[l],c=[];for(let u=0,p=h.length;u0&&(n[l]=c,r=!0)}r&&(t.data.morphAttributes=n,t.data.morphTargetsRelative=this.morphTargetsRelative);const a=this.groups;a.length>0&&(t.data.groups=JSON.parse(JSON.stringify(a)));const o=this.boundingSphere;return o!==null&&(t.data.boundingSphere={center:o.center.toArray(),radius:o.radius}),t}clone(){return new this.constructor().copy(this)}copy(t){this.index=null,this.attributes={},this.morphAttributes={},this.groups=[],this.boundingBox=null,this.boundingSphere=null;const e={};this.name=t.name;const i=t.index;i!==null&&this.setIndex(i.clone(e));const n=t.attributes;for(const h in n){const c=n[h];this.setAttribute(h,c.clone(e))}const r=t.morphAttributes;for(const h in r){const c=[],u=r[h];for(let p=0,m=u.length;p0){const i=t[e[0]];if(i!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let n=0,r=i.length;n_.far?null:{distance:C,point:Qo.clone(),object:f}}(s,t,e,i,qn,Yn,Zn,ec);if(m){o&&(Zo.fromBufferAttribute(o,h),Jo.fromBufferAttribute(o,c),Ko.fromBufferAttribute(o,u),m.uv=xn.getUV(ec,qn,Yn,Zn,Zo,Jo,Ko,new j)),l&&(Zo.fromBufferAttribute(l,h),Jo.fromBufferAttribute(l,c),Ko.fromBufferAttribute(l,u),m.uv2=xn.getUV(ec,qn,Yn,Zn,Zo,Jo,Ko,new j));const f={a:h,b:c,c:u,normal:new M,materialIndex:0};xn.getNormal(qn,Yn,Zn,f.normal),m.face=f}return m}class oe extends Pt{constructor(t=1,e=1,i=1,n=1,r=1,a=1){super(),this.type="BoxGeometry",this.parameters={width:t,height:e,depth:i,widthSegments:n,heightSegments:r,depthSegments:a};const o=this;n=Math.floor(n),r=Math.floor(r),a=Math.floor(a);const l=[],h=[],c=[],u=[];let p=0,m=0;function f(g,_,v,x,y,b,S,w,C,L,T){const E=b/C,I=S/L,z=b/2,B=S/2,O=w/2,F=C+1,Q=L+1;let k=0,X=0;const U=new M;for(let H=0;H0?1:-1,c.push(U.x,U.y,U.z),u.push(mt/C),u.push(1-H/L),k+=1}}for(let H=0;H0&&(e.defines=this.defines),e.vertexShader=this.vertexShader,e.fragmentShader=this.fragmentShader;const i={};for(const n in this.extensions)this.extensions[n]===!0&&(i[n]=!0);return Object.keys(i).length>0&&(e.extensions=i),e}}class cp extends St{constructor(){super(),this.isCamera=!0,this.type="Camera",this.matrixWorldInverse=new rt,this.projectionMatrix=new rt,this.projectionMatrixInverse=new rt}copy(t,e){return super.copy(t,e),this.matrixWorldInverse.copy(t.matrixWorldInverse),this.projectionMatrix.copy(t.projectionMatrix),this.projectionMatrixInverse.copy(t.projectionMatrixInverse),this}getWorldDirection(t){this.updateWorldMatrix(!0,!1);const e=this.matrixWorld.elements;return t.set(-e[8],-e[9],-e[10]).normalize()}updateMatrixWorld(t){super.updateMatrixWorld(t),this.matrixWorldInverse.copy(this.matrixWorld).invert()}updateWorldMatrix(t,e){super.updateWorldMatrix(t,e),this.matrixWorldInverse.copy(this.matrixWorld).invert()}clone(){return new this.constructor().copy(this)}}class ye extends cp{constructor(t=50,e=1,i=.1,n=2e3){super(),this.isPerspectiveCamera=!0,this.type="PerspectiveCamera",this.fov=t,this.zoom=1,this.near=i,this.far=n,this.focus=10,this.aspect=e,this.view=null,this.filmGauge=35,this.filmOffset=0,this.updateProjectionMatrix()}copy(t,e){return super.copy(t,e),this.fov=t.fov,this.zoom=t.zoom,this.near=t.near,this.far=t.far,this.focus=t.focus,this.aspect=t.aspect,this.view=t.view===null?null:Object.assign({},t.view),this.filmGauge=t.filmGauge,this.filmOffset=t.filmOffset,this}setFocalLength(t){const e=.5*this.getFilmHeight()/t;this.fov=2*wa*Math.atan(e),this.updateProjectionMatrix()}getFocalLength(){const t=Math.tan(.5*Ma*this.fov);return .5*this.getFilmHeight()/t}getEffectiveFOV(){return 2*wa*Math.atan(Math.tan(.5*Ma*this.fov)/this.zoom)}getFilmWidth(){return this.filmGauge*Math.min(this.aspect,1)}getFilmHeight(){return this.filmGauge/Math.max(this.aspect,1)}setViewOffset(t,e,i,n,r,a){this.aspect=t/e,this.view===null&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=t,this.view.fullHeight=e,this.view.offsetX=i,this.view.offsetY=n,this.view.width=r,this.view.height=a,this.updateProjectionMatrix()}clearViewOffset(){this.view!==null&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const t=this.near;let e=t*Math.tan(.5*Ma*this.fov)/this.zoom,i=2*e,n=this.aspect*i,r=-.5*n;const a=this.view;if(this.view!==null&&this.view.enabled){const l=a.fullWidth,h=a.fullHeight;r+=a.offsetX*n/l,e-=a.offsetY*i/h,n*=a.width/l,i*=a.height/h}const o=this.filmOffset;o!==0&&(r+=t*o/this.getFilmWidth()),this.projectionMatrix.makePerspective(r,r+n,e,e-i,t,this.far),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(t){const e=super.toJSON(t);return e.object.fov=this.fov,e.object.zoom=this.zoom,e.object.near=this.near,e.object.far=this.far,e.object.focus=this.focus,e.object.aspect=this.aspect,this.view!==null&&(e.object.view=Object.assign({},this.view)),e.object.filmGauge=this.filmGauge,e.object.filmOffset=this.filmOffset,e}}const Cr=90;class lv extends St{constructor(t,e,i){if(super(),this.type="CubeCamera",i.isWebGLCubeRenderTarget!==!0)return void console.error("THREE.CubeCamera: The constructor now expects an instance of WebGLCubeRenderTarget as third parameter.");this.renderTarget=i;const n=new ye(Cr,1,t,e);n.layers=this.layers,n.up.set(0,-1,0),n.lookAt(new M(1,0,0)),this.add(n);const r=new ye(Cr,1,t,e);r.layers=this.layers,r.up.set(0,-1,0),r.lookAt(new M(-1,0,0)),this.add(r);const a=new ye(Cr,1,t,e);a.layers=this.layers,a.up.set(0,0,1),a.lookAt(new M(0,1,0)),this.add(a);const o=new ye(Cr,1,t,e);o.layers=this.layers,o.up.set(0,0,-1),o.lookAt(new M(0,-1,0)),this.add(o);const l=new ye(Cr,1,t,e);l.layers=this.layers,l.up.set(0,-1,0),l.lookAt(new M(0,0,1)),this.add(l);const h=new ye(Cr,1,t,e);h.layers=this.layers,h.up.set(0,-1,0),h.lookAt(new M(0,0,-1)),this.add(h)}update(t,e){this.parent===null&&this.updateMatrixWorld();const i=this.renderTarget,[n,r,a,o,l,h]=this.children,c=t.getRenderTarget(),u=t.toneMapping,p=t.xr.enabled;t.toneMapping=cn,t.xr.enabled=!1;const m=i.texture.generateMipmaps;i.texture.generateMipmaps=!1,t.setRenderTarget(i,0),t.render(e,n),t.setRenderTarget(i,1),t.render(e,r),t.setRenderTarget(i,2),t.render(e,a),t.setRenderTarget(i,3),t.render(e,o),t.setRenderTarget(i,4),t.render(e,l),i.texture.generateMipmaps=m,t.setRenderTarget(i,5),t.render(e,h),t.setRenderTarget(c),t.toneMapping=u,t.xr.enabled=p,i.texture.needsPMREMUpdate=!0}}class tl extends ne{constructor(t,e,i,n,r,a,o,l,h,c){super(t=t!==void 0?t:[],e=e!==void 0?e:lr,i,n,r,a,o,l,h,c),this.isCubeTexture=!0,this.flipY=!1}get images(){return this.image}set images(t){this.image=t}}class hv extends de{constructor(t,e={}){super(t,t,e),this.isWebGLCubeRenderTarget=!0;const i={width:t,height:t,depth:1},n=[i,i,i,i,i,i];this.texture=new tl(n,e.mapping,e.wrapS,e.wrapT,e.magFilter,e.minFilter,e.format,e.type,e.anisotropy,e.encoding),this.texture.isRenderTargetTexture=!0,this.texture.generateMipmaps=e.generateMipmaps!==void 0&&e.generateMipmaps,this.texture.minFilter=e.minFilter!==void 0?e.minFilter:Wt}fromEquirectangularTexture(t,e){this.texture.type=e.type,this.texture.encoding=e.encoding,this.texture.generateMipmaps=e.generateMipmaps,this.texture.minFilter=e.minFilter,this.texture.magFilter=e.magFilter;const i={uniforms:{tEquirect:{value:null}},vertexShader:` + + varying vec3 vWorldDirection; + + vec3 transformDirection( in vec3 dir, in mat4 matrix ) { + + return normalize( ( matrix * vec4( dir, 0.0 ) ).xyz ); + + } + + void main() { + + vWorldDirection = transformDirection( position, modelMatrix ); + + #include + #include + + } + `,fragmentShader:` + + uniform sampler2D tEquirect; + + varying vec3 vWorldDirection; + + #include + + void main() { + + vec3 direction = normalize( vWorldDirection ); + + vec2 sampleUV = equirectUv( direction ); + + gl_FragColor = texture2D( tEquirect, sampleUV ); + + } + `},n=new oe(5,5,5),r=new Zt({name:"CubemapFromEquirect",uniforms:Tr(i.uniforms),vertexShader:i.vertexShader,fragmentShader:i.fragmentShader,side:pi,blending:Bn});r.uniforms.tEquirect.value=e;const a=new lt(n,r),o=e.minFilter;return e.minFilter===ys&&(e.minFilter=Wt),new lv(1,10,this).update(t,a),e.minFilter=o,a.geometry.dispose(),a.material.dispose(),this}clear(t,e,i,n){const r=t.getRenderTarget();for(let a=0;a<6;a++)t.setRenderTarget(this,a),t.clear(e,i,n);t.setRenderTarget(r)}}const ic=new M,cv=new M,uv=new Ke;class ai{constructor(t=new M(1,0,0),e=0){this.isPlane=!0,this.normal=t,this.constant=e}set(t,e){return this.normal.copy(t),this.constant=e,this}setComponents(t,e,i,n){return this.normal.set(t,e,i),this.constant=n,this}setFromNormalAndCoplanarPoint(t,e){return this.normal.copy(t),this.constant=-e.dot(this.normal),this}setFromCoplanarPoints(t,e,i){const n=ic.subVectors(i,e).cross(cv.subVectors(t,e)).normalize();return this.setFromNormalAndCoplanarPoint(n,t),this}copy(t){return this.normal.copy(t.normal),this.constant=t.constant,this}normalize(){const t=1/this.normal.length();return this.normal.multiplyScalar(t),this.constant*=t,this}negate(){return this.constant*=-1,this.normal.negate(),this}distanceToPoint(t){return this.normal.dot(t)+this.constant}distanceToSphere(t){return this.distanceToPoint(t.center)-t.radius}projectPoint(t,e){return e.copy(this.normal).multiplyScalar(-this.distanceToPoint(t)).add(t)}intersectLine(t,e){const i=t.delta(ic),n=this.normal.dot(i);if(n===0)return this.distanceToPoint(t.start)===0?e.copy(t.start):null;const r=-(t.start.dot(this.normal)+this.constant)/n;return r<0||r>1?null:e.copy(i).multiplyScalar(r).add(t.start)}intersectsLine(t){const e=this.distanceToPoint(t.start),i=this.distanceToPoint(t.end);return e<0&&i>0||i<0&&e>0}intersectsBox(t){return t.intersectsPlane(this)}intersectsSphere(t){return t.intersectsPlane(this)}coplanarPoint(t){return t.copy(this.normal).multiplyScalar(-this.constant)}applyMatrix4(t,e){const i=e||uv.getNormalMatrix(t),n=this.coplanarPoint(ic).applyMatrix4(t),r=this.normal.applyMatrix3(i).normalize();return this.constant=-n.dot(r),this}translate(t){return this.constant-=t.dot(this.normal),this}equals(t){return t.normal.equals(this.normal)&&t.constant===this.constant}clone(){return new this.constructor().copy(this)}}const Er=new mi,el=new M;class Pa{constructor(t=new ai,e=new ai,i=new ai,n=new ai,r=new ai,a=new ai){this.planes=[t,e,i,n,r,a]}set(t,e,i,n,r,a){const o=this.planes;return o[0].copy(t),o[1].copy(e),o[2].copy(i),o[3].copy(n),o[4].copy(r),o[5].copy(a),this}copy(t){const e=this.planes;for(let i=0;i<6;i++)e[i].copy(t.planes[i]);return this}setFromProjectionMatrix(t){const e=this.planes,i=t.elements,n=i[0],r=i[1],a=i[2],o=i[3],l=i[4],h=i[5],c=i[6],u=i[7],p=i[8],m=i[9],f=i[10],g=i[11],_=i[12],v=i[13],x=i[14],y=i[15];return e[0].setComponents(o-n,u-l,g-p,y-_).normalize(),e[1].setComponents(o+n,u+l,g+p,y+_).normalize(),e[2].setComponents(o+r,u+h,g+m,y+v).normalize(),e[3].setComponents(o-r,u-h,g-m,y-v).normalize(),e[4].setComponents(o-a,u-c,g-f,y-x).normalize(),e[5].setComponents(o+a,u+c,g+f,y+x).normalize(),this}intersectsObject(t){const e=t.geometry;return e.boundingSphere===null&&e.computeBoundingSphere(),Er.copy(e.boundingSphere).applyMatrix4(t.matrixWorld),this.intersectsSphere(Er)}intersectsSprite(t){return Er.center.set(0,0,0),Er.radius=.7071067811865476,Er.applyMatrix4(t.matrixWorld),this.intersectsSphere(Er)}intersectsSphere(t){const e=this.planes,i=t.center,n=-t.radius;for(let r=0;r<6;r++)if(e[r].distanceToPoint(i)0?t.max.x:t.min.x,el.y=n.normal.y>0?t.max.y:t.min.y,el.z=n.normal.z>0?t.max.z:t.min.z,n.distanceToPoint(el)<0)return!1}return!0}containsPoint(t){const e=this.planes;for(let i=0;i<6;i++)if(e[i].distanceToPoint(t)<0)return!1;return!0}clone(){return new this.constructor().copy(this)}}function up(){let s=null,t=!1,e=null,i=null;function n(r,a){e(r,a),i=s.requestAnimationFrame(n)}return{start:function(){t!==!0&&e!==null&&(i=s.requestAnimationFrame(n),t=!0)},stop:function(){s.cancelAnimationFrame(i),t=!1},setAnimationLoop:function(r){e=r},setContext:function(r){s=r}}}function dv(s,t){const e=t.isWebGL2,i=new WeakMap;return{get:function(n){return n.isInterleavedBufferAttribute&&(n=n.data),i.get(n)},remove:function(n){n.isInterleavedBufferAttribute&&(n=n.data);const r=i.get(n);r&&(s.deleteBuffer(r.buffer),i.delete(n))},update:function(n,r){if(n.isGLBufferAttribute){const o=i.get(n);return void((!o||o.version 0.0 ) ? v : 0.5 * inversesqrt( max( 1.0 - x * x, 1e-7 ) ) - v; + return cross( v1, v2 ) * theta_sintheta; +} +vec3 LTC_Evaluate( const in vec3 N, const in vec3 V, const in vec3 P, const in mat3 mInv, const in vec3 rectCoords[ 4 ] ) { + vec3 v1 = rectCoords[ 1 ] - rectCoords[ 0 ]; + vec3 v2 = rectCoords[ 3 ] - rectCoords[ 0 ]; + vec3 lightNormal = cross( v1, v2 ); + if( dot( lightNormal, P - rectCoords[ 0 ] ) < 0.0 ) return vec3( 0.0 ); + vec3 T1, T2; + T1 = normalize( V - N * dot( V, N ) ); + T2 = - cross( N, T1 ); + mat3 mat = mInv * transposeMat3( mat3( T1, T2, N ) ); + vec3 coords[ 4 ]; + coords[ 0 ] = mat * ( rectCoords[ 0 ] - P ); + coords[ 1 ] = mat * ( rectCoords[ 1 ] - P ); + coords[ 2 ] = mat * ( rectCoords[ 2 ] - P ); + coords[ 3 ] = mat * ( rectCoords[ 3 ] - P ); + coords[ 0 ] = normalize( coords[ 0 ] ); + coords[ 1 ] = normalize( coords[ 1 ] ); + coords[ 2 ] = normalize( coords[ 2 ] ); + coords[ 3 ] = normalize( coords[ 3 ] ); + vec3 vectorFormFactor = vec3( 0.0 ); + vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 0 ], coords[ 1 ] ); + vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 1 ], coords[ 2 ] ); + vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 2 ], coords[ 3 ] ); + vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 3 ], coords[ 0 ] ); + float result = LTC_ClippedSphereFormFactor( vectorFormFactor ); + return vec3( result ); +} +float G_BlinnPhong_Implicit( ) { + return 0.25; +} +float D_BlinnPhong( const in float shininess, const in float dotNH ) { + return RECIPROCAL_PI * ( shininess * 0.5 + 1.0 ) * pow( dotNH, shininess ); +} +vec3 BRDF_BlinnPhong( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, const in vec3 specularColor, const in float shininess ) { + vec3 halfDir = normalize( lightDir + viewDir ); + float dotNH = saturate( dot( normal, halfDir ) ); + float dotVH = saturate( dot( viewDir, halfDir ) ); + vec3 F = F_Schlick( specularColor, 1.0, dotVH ); + float G = G_BlinnPhong_Implicit( ); + float D = D_BlinnPhong( shininess, dotNH ); + return F * ( G * D ); +} +#if defined( USE_SHEEN ) +float D_Charlie( float roughness, float dotNH ) { + float alpha = pow2( roughness ); + float invAlpha = 1.0 / alpha; + float cos2h = dotNH * dotNH; + float sin2h = max( 1.0 - cos2h, 0.0078125 ); + return ( 2.0 + invAlpha ) * pow( sin2h, invAlpha * 0.5 ) / ( 2.0 * PI ); +} +float V_Neubelt( float dotNV, float dotNL ) { + return saturate( 1.0 / ( 4.0 * ( dotNL + dotNV - dotNL * dotNV ) ) ); +} +vec3 BRDF_Sheen( const in vec3 lightDir, const in vec3 viewDir, const in vec3 normal, vec3 sheenColor, const in float sheenRoughness ) { + vec3 halfDir = normalize( lightDir + viewDir ); + float dotNL = saturate( dot( normal, lightDir ) ); + float dotNV = saturate( dot( normal, viewDir ) ); + float dotNH = saturate( dot( normal, halfDir ) ); + float D = D_Charlie( sheenRoughness, dotNH ); + float V = V_Neubelt( dotNV, dotNL ); + return sheenColor * ( D * V ); +} +#endif`,iridescence_fragment:`#ifdef USE_IRIDESCENCE +const mat3 XYZ_TO_REC709 = mat3( + 3.2404542, -0.9692660, 0.0556434, + -1.5371385, 1.8760108, -0.2040259, + -0.4985314, 0.0415560, 1.0572252 +); +vec3 Fresnel0ToIor( vec3 fresnel0 ) { + vec3 sqrtF0 = sqrt( fresnel0 ); + return ( vec3( 1.0 ) + sqrtF0 ) / ( vec3( 1.0 ) - sqrtF0 ); +} +vec3 IorToFresnel0( vec3 transmittedIor, float incidentIor ) { + return pow2( ( transmittedIor - vec3( incidentIor ) ) / ( transmittedIor + vec3( incidentIor ) ) ); +} +float IorToFresnel0( float transmittedIor, float incidentIor ) { + return pow2( ( transmittedIor - incidentIor ) / ( transmittedIor + incidentIor )); +} +vec3 evalSensitivity( float OPD, vec3 shift ) { + float phase = 2.0 * PI * OPD * 1.0e-9; + vec3 val = vec3( 5.4856e-13, 4.4201e-13, 5.2481e-13 ); + vec3 pos = vec3( 1.6810e+06, 1.7953e+06, 2.2084e+06 ); + vec3 var = vec3( 4.3278e+09, 9.3046e+09, 6.6121e+09 ); + vec3 xyz = val * sqrt( 2.0 * PI * var ) * cos( pos * phase + shift ) * exp( -pow2( phase ) * var ); + xyz.x += 9.7470e-14 * sqrt( 2.0 * PI * 4.5282e+09 ) * cos( 2.2399e+06 * phase + shift[0] ) * exp( -4.5282e+09 * pow2( phase ) ); + xyz /= 1.0685e-7; + vec3 srgb = XYZ_TO_REC709 * xyz; + return srgb; +} +vec3 evalIridescence( float outsideIOR, float eta2, float cosTheta1, float thinFilmThickness, vec3 baseF0 ) { + vec3 I; + float iridescenceIOR = mix( outsideIOR, eta2, smoothstep( 0.0, 0.03, thinFilmThickness ) ); + float sinTheta2Sq = pow2( outsideIOR / iridescenceIOR ) * ( 1.0 - pow2( cosTheta1 ) ); + float cosTheta2Sq = 1.0 - sinTheta2Sq; + if ( cosTheta2Sq < 0.0 ) { + return vec3( 1.0 ); + } + float cosTheta2 = sqrt( cosTheta2Sq ); + float R0 = IorToFresnel0( iridescenceIOR, outsideIOR ); + float R12 = F_Schlick( R0, 1.0, cosTheta1 ); + float R21 = R12; + float T121 = 1.0 - R12; + float phi12 = 0.0; + if ( iridescenceIOR < outsideIOR ) phi12 = PI; + float phi21 = PI - phi12; + vec3 baseIOR = Fresnel0ToIor( clamp( baseF0, 0.0, 0.9999 ) ); vec3 R1 = IorToFresnel0( baseIOR, iridescenceIOR ); + vec3 R23 = F_Schlick( R1, 1.0, cosTheta2 ); + vec3 phi23 = vec3( 0.0 ); + if ( baseIOR[0] < iridescenceIOR ) phi23[0] = PI; + if ( baseIOR[1] < iridescenceIOR ) phi23[1] = PI; + if ( baseIOR[2] < iridescenceIOR ) phi23[2] = PI; + float OPD = 2.0 * iridescenceIOR * thinFilmThickness * cosTheta2; + vec3 phi = vec3( phi21 ) + phi23; + vec3 R123 = clamp( R12 * R23, 1e-5, 0.9999 ); + vec3 r123 = sqrt( R123 ); + vec3 Rs = pow2( T121 ) * R23 / ( vec3( 1.0 ) - R123 ); + vec3 C0 = R12 + Rs; + I = C0; + vec3 Cm = Rs - T121; + for ( int m = 1; m <= 2; ++m ) { + Cm *= r123; + vec3 Sm = 2.0 * evalSensitivity( float( m ) * OPD, float( m ) * phi ); + I += Cm * Sm; + } + return max( I, vec3( 0.0 ) ); +} +#endif`,bumpmap_pars_fragment:`#ifdef USE_BUMPMAP + uniform sampler2D bumpMap; + uniform float bumpScale; + vec2 dHdxy_fwd() { + vec2 dSTdx = dFdx( vUv ); + vec2 dSTdy = dFdy( vUv ); + float Hll = bumpScale * texture2D( bumpMap, vUv ).x; + float dBx = bumpScale * texture2D( bumpMap, vUv + dSTdx ).x - Hll; + float dBy = bumpScale * texture2D( bumpMap, vUv + dSTdy ).x - Hll; + return vec2( dBx, dBy ); + } + vec3 perturbNormalArb( vec3 surf_pos, vec3 surf_norm, vec2 dHdxy, float faceDirection ) { + vec3 vSigmaX = vec3( dFdx( surf_pos.x ), dFdx( surf_pos.y ), dFdx( surf_pos.z ) ); + vec3 vSigmaY = vec3( dFdy( surf_pos.x ), dFdy( surf_pos.y ), dFdy( surf_pos.z ) ); + vec3 vN = surf_norm; + vec3 R1 = cross( vSigmaY, vN ); + vec3 R2 = cross( vN, vSigmaX ); + float fDet = dot( vSigmaX, R1 ) * faceDirection; + vec3 vGrad = sign( fDet ) * ( dHdxy.x * R1 + dHdxy.y * R2 ); + return normalize( abs( fDet ) * surf_norm - vGrad ); + } +#endif`,clipping_planes_fragment:`#if NUM_CLIPPING_PLANES > 0 + vec4 plane; + #pragma unroll_loop_start + for ( int i = 0; i < UNION_CLIPPING_PLANES; i ++ ) { + plane = clippingPlanes[ i ]; + if ( dot( vClipPosition, plane.xyz ) > plane.w ) discard; + } + #pragma unroll_loop_end + #if UNION_CLIPPING_PLANES < NUM_CLIPPING_PLANES + bool clipped = true; + #pragma unroll_loop_start + for ( int i = UNION_CLIPPING_PLANES; i < NUM_CLIPPING_PLANES; i ++ ) { + plane = clippingPlanes[ i ]; + clipped = ( dot( vClipPosition, plane.xyz ) > plane.w ) && clipped; + } + #pragma unroll_loop_end + if ( clipped ) discard; + #endif +#endif`,clipping_planes_pars_fragment:`#if NUM_CLIPPING_PLANES > 0 + varying vec3 vClipPosition; + uniform vec4 clippingPlanes[ NUM_CLIPPING_PLANES ]; +#endif`,clipping_planes_pars_vertex:`#if NUM_CLIPPING_PLANES > 0 + varying vec3 vClipPosition; +#endif`,clipping_planes_vertex:`#if NUM_CLIPPING_PLANES > 0 + vClipPosition = - mvPosition.xyz; +#endif`,color_fragment:`#if defined( USE_COLOR_ALPHA ) + diffuseColor *= vColor; +#elif defined( USE_COLOR ) + diffuseColor.rgb *= vColor; +#endif`,color_pars_fragment:`#if defined( USE_COLOR_ALPHA ) + varying vec4 vColor; +#elif defined( USE_COLOR ) + varying vec3 vColor; +#endif`,color_pars_vertex:`#if defined( USE_COLOR_ALPHA ) + varying vec4 vColor; +#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR ) + varying vec3 vColor; +#endif`,color_vertex:`#if defined( USE_COLOR_ALPHA ) + vColor = vec4( 1.0 ); +#elif defined( USE_COLOR ) || defined( USE_INSTANCING_COLOR ) + vColor = vec3( 1.0 ); +#endif +#ifdef USE_COLOR + vColor *= color; +#endif +#ifdef USE_INSTANCING_COLOR + vColor.xyz *= instanceColor.xyz; +#endif`,common:`#define PI 3.141592653589793 +#define PI2 6.283185307179586 +#define PI_HALF 1.5707963267948966 +#define RECIPROCAL_PI 0.3183098861837907 +#define RECIPROCAL_PI2 0.15915494309189535 +#define EPSILON 1e-6 +#ifndef saturate +#define saturate( a ) clamp( a, 0.0, 1.0 ) +#endif +#define whiteComplement( a ) ( 1.0 - saturate( a ) ) +float pow2( const in float x ) { return x*x; } +vec3 pow2( const in vec3 x ) { return x*x; } +float pow3( const in float x ) { return x*x*x; } +float pow4( const in float x ) { float x2 = x*x; return x2*x2; } +float max3( const in vec3 v ) { return max( max( v.x, v.y ), v.z ); } +float average( const in vec3 color ) { return dot( color, vec3( 0.3333 ) ); } +highp float rand( const in vec2 uv ) { + const highp float a = 12.9898, b = 78.233, c = 43758.5453; + highp float dt = dot( uv.xy, vec2( a,b ) ), sn = mod( dt, PI ); + return fract( sin( sn ) * c ); +} +#ifdef HIGH_PRECISION + float precisionSafeLength( vec3 v ) { return length( v ); } +#else + float precisionSafeLength( vec3 v ) { + float maxComponent = max3( abs( v ) ); + return length( v / maxComponent ) * maxComponent; + } +#endif +struct IncidentLight { + vec3 color; + vec3 direction; + bool visible; +}; +struct ReflectedLight { + vec3 directDiffuse; + vec3 directSpecular; + vec3 indirectDiffuse; + vec3 indirectSpecular; +}; +struct GeometricContext { + vec3 position; + vec3 normal; + vec3 viewDir; +#ifdef USE_CLEARCOAT + vec3 clearcoatNormal; +#endif +}; +vec3 transformDirection( in vec3 dir, in mat4 matrix ) { + return normalize( ( matrix * vec4( dir, 0.0 ) ).xyz ); +} +vec3 inverseTransformDirection( in vec3 dir, in mat4 matrix ) { + return normalize( ( vec4( dir, 0.0 ) * matrix ).xyz ); +} +mat3 transposeMat3( const in mat3 m ) { + mat3 tmp; + tmp[ 0 ] = vec3( m[ 0 ].x, m[ 1 ].x, m[ 2 ].x ); + tmp[ 1 ] = vec3( m[ 0 ].y, m[ 1 ].y, m[ 2 ].y ); + tmp[ 2 ] = vec3( m[ 0 ].z, m[ 1 ].z, m[ 2 ].z ); + return tmp; +} +float linearToRelativeLuminance( const in vec3 color ) { + vec3 weights = vec3( 0.2126, 0.7152, 0.0722 ); + return dot( weights, color.rgb ); +} +bool isPerspectiveMatrix( mat4 m ) { + return m[ 2 ][ 3 ] == - 1.0; +} +vec2 equirectUv( in vec3 dir ) { + float u = atan( dir.z, dir.x ) * RECIPROCAL_PI2 + 0.5; + float v = asin( clamp( dir.y, - 1.0, 1.0 ) ) * RECIPROCAL_PI + 0.5; + return vec2( u, v ); +}`,cube_uv_reflection_fragment:`#ifdef ENVMAP_TYPE_CUBE_UV + #define cubeUV_minMipLevel 4.0 + #define cubeUV_minTileSize 16.0 + float getFace( vec3 direction ) { + vec3 absDirection = abs( direction ); + float face = - 1.0; + if ( absDirection.x > absDirection.z ) { + if ( absDirection.x > absDirection.y ) + face = direction.x > 0.0 ? 0.0 : 3.0; + else + face = direction.y > 0.0 ? 1.0 : 4.0; + } else { + if ( absDirection.z > absDirection.y ) + face = direction.z > 0.0 ? 2.0 : 5.0; + else + face = direction.y > 0.0 ? 1.0 : 4.0; + } + return face; + } + vec2 getUV( vec3 direction, float face ) { + vec2 uv; + if ( face == 0.0 ) { + uv = vec2( direction.z, direction.y ) / abs( direction.x ); + } else if ( face == 1.0 ) { + uv = vec2( - direction.x, - direction.z ) / abs( direction.y ); + } else if ( face == 2.0 ) { + uv = vec2( - direction.x, direction.y ) / abs( direction.z ); + } else if ( face == 3.0 ) { + uv = vec2( - direction.z, direction.y ) / abs( direction.x ); + } else if ( face == 4.0 ) { + uv = vec2( - direction.x, direction.z ) / abs( direction.y ); + } else { + uv = vec2( direction.x, direction.y ) / abs( direction.z ); + } + return 0.5 * ( uv + 1.0 ); + } + vec3 bilinearCubeUV( sampler2D envMap, vec3 direction, float mipInt ) { + float face = getFace( direction ); + float filterInt = max( cubeUV_minMipLevel - mipInt, 0.0 ); + mipInt = max( mipInt, cubeUV_minMipLevel ); + float faceSize = exp2( mipInt ); + vec2 uv = getUV( direction, face ) * ( faceSize - 2.0 ) + 1.0; + if ( face > 2.0 ) { + uv.y += faceSize; + face -= 3.0; + } + uv.x += face * faceSize; + uv.x += filterInt * 3.0 * cubeUV_minTileSize; + uv.y += 4.0 * ( exp2( CUBEUV_MAX_MIP ) - faceSize ); + uv.x *= CUBEUV_TEXEL_WIDTH; + uv.y *= CUBEUV_TEXEL_HEIGHT; + #ifdef texture2DGradEXT + return texture2DGradEXT( envMap, uv, vec2( 0.0 ), vec2( 0.0 ) ).rgb; + #else + return texture2D( envMap, uv ).rgb; + #endif + } + #define r0 1.0 + #define v0 0.339 + #define m0 - 2.0 + #define r1 0.8 + #define v1 0.276 + #define m1 - 1.0 + #define r4 0.4 + #define v4 0.046 + #define m4 2.0 + #define r5 0.305 + #define v5 0.016 + #define m5 3.0 + #define r6 0.21 + #define v6 0.0038 + #define m6 4.0 + float roughnessToMip( float roughness ) { + float mip = 0.0; + if ( roughness >= r1 ) { + mip = ( r0 - roughness ) * ( m1 - m0 ) / ( r0 - r1 ) + m0; + } else if ( roughness >= r4 ) { + mip = ( r1 - roughness ) * ( m4 - m1 ) / ( r1 - r4 ) + m1; + } else if ( roughness >= r5 ) { + mip = ( r4 - roughness ) * ( m5 - m4 ) / ( r4 - r5 ) + m4; + } else if ( roughness >= r6 ) { + mip = ( r5 - roughness ) * ( m6 - m5 ) / ( r5 - r6 ) + m5; + } else { + mip = - 2.0 * log2( 1.16 * roughness ); } + return mip; + } + vec4 textureCubeUV( sampler2D envMap, vec3 sampleDir, float roughness ) { + float mip = clamp( roughnessToMip( roughness ), m0, CUBEUV_MAX_MIP ); + float mipF = fract( mip ); + float mipInt = floor( mip ); + vec3 color0 = bilinearCubeUV( envMap, sampleDir, mipInt ); + if ( mipF == 0.0 ) { + return vec4( color0, 1.0 ); + } else { + vec3 color1 = bilinearCubeUV( envMap, sampleDir, mipInt + 1.0 ); + return vec4( mix( color0, color1, mipF ), 1.0 ); + } + } +#endif`,defaultnormal_vertex:`vec3 transformedNormal = objectNormal; +#ifdef USE_INSTANCING + mat3 m = mat3( instanceMatrix ); + transformedNormal /= vec3( dot( m[ 0 ], m[ 0 ] ), dot( m[ 1 ], m[ 1 ] ), dot( m[ 2 ], m[ 2 ] ) ); + transformedNormal = m * transformedNormal; +#endif +transformedNormal = normalMatrix * transformedNormal; +#ifdef FLIP_SIDED + transformedNormal = - transformedNormal; +#endif +#ifdef USE_TANGENT + vec3 transformedTangent = ( modelViewMatrix * vec4( objectTangent, 0.0 ) ).xyz; + #ifdef FLIP_SIDED + transformedTangent = - transformedTangent; + #endif +#endif`,displacementmap_pars_vertex:`#ifdef USE_DISPLACEMENTMAP + uniform sampler2D displacementMap; + uniform float displacementScale; + uniform float displacementBias; +#endif`,displacementmap_vertex:`#ifdef USE_DISPLACEMENTMAP + transformed += normalize( objectNormal ) * ( texture2D( displacementMap, vUv ).x * displacementScale + displacementBias ); +#endif`,emissivemap_fragment:`#ifdef USE_EMISSIVEMAP + vec4 emissiveColor = texture2D( emissiveMap, vUv ); + totalEmissiveRadiance *= emissiveColor.rgb; +#endif`,emissivemap_pars_fragment:`#ifdef USE_EMISSIVEMAP + uniform sampler2D emissiveMap; +#endif`,encodings_fragment:"gl_FragColor = linearToOutputTexel( gl_FragColor );",encodings_pars_fragment:`vec4 LinearToLinear( in vec4 value ) { + return value; +} +vec4 LinearTosRGB( in vec4 value ) { + return vec4( mix( pow( value.rgb, vec3( 0.41666 ) ) * 1.055 - vec3( 0.055 ), value.rgb * 12.92, vec3( lessThanEqual( value.rgb, vec3( 0.0031308 ) ) ) ), value.a ); +}`,envmap_fragment:`#ifdef USE_ENVMAP + #ifdef ENV_WORLDPOS + vec3 cameraToFrag; + if ( isOrthographic ) { + cameraToFrag = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) ); + } else { + cameraToFrag = normalize( vWorldPosition - cameraPosition ); + } + vec3 worldNormal = inverseTransformDirection( normal, viewMatrix ); + #ifdef ENVMAP_MODE_REFLECTION + vec3 reflectVec = reflect( cameraToFrag, worldNormal ); + #else + vec3 reflectVec = refract( cameraToFrag, worldNormal, refractionRatio ); + #endif + #else + vec3 reflectVec = vReflect; + #endif + #ifdef ENVMAP_TYPE_CUBE + vec4 envColor = textureCube( envMap, vec3( flipEnvMap * reflectVec.x, reflectVec.yz ) ); + #elif defined( ENVMAP_TYPE_CUBE_UV ) + vec4 envColor = textureCubeUV( envMap, reflectVec, 0.0 ); + #else + vec4 envColor = vec4( 0.0 ); + #endif + #ifdef ENVMAP_BLENDING_MULTIPLY + outgoingLight = mix( outgoingLight, outgoingLight * envColor.xyz, specularStrength * reflectivity ); + #elif defined( ENVMAP_BLENDING_MIX ) + outgoingLight = mix( outgoingLight, envColor.xyz, specularStrength * reflectivity ); + #elif defined( ENVMAP_BLENDING_ADD ) + outgoingLight += envColor.xyz * specularStrength * reflectivity; + #endif +#endif`,envmap_common_pars_fragment:`#ifdef USE_ENVMAP + uniform float envMapIntensity; + uniform float flipEnvMap; + #ifdef ENVMAP_TYPE_CUBE + uniform samplerCube envMap; + #else + uniform sampler2D envMap; + #endif + +#endif`,envmap_pars_fragment:`#ifdef USE_ENVMAP + uniform float reflectivity; + #if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG ) + #define ENV_WORLDPOS + #endif + #ifdef ENV_WORLDPOS + varying vec3 vWorldPosition; + uniform float refractionRatio; + #else + varying vec3 vReflect; + #endif +#endif`,envmap_pars_vertex:`#ifdef USE_ENVMAP + #if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) ||defined( PHONG ) + #define ENV_WORLDPOS + #endif + #ifdef ENV_WORLDPOS + + varying vec3 vWorldPosition; + #else + varying vec3 vReflect; + uniform float refractionRatio; + #endif +#endif`,envmap_physical_pars_fragment:`#if defined( USE_ENVMAP ) + vec3 getIBLIrradiance( const in vec3 normal ) { + #if defined( ENVMAP_TYPE_CUBE_UV ) || defined( ENVMAP_TYPE_CUBE ) + vec3 worldNormal = inverseTransformDirection( normal, viewMatrix ); + #if defined( ENVMAP_TYPE_CUBE_UV ) + vec3 queryVec = vec3( flipEnvMap * worldNormal.x, worldNormal.yz ); + vec4 envMapColor = textureCubeUV( envMap, queryVec, 1.0 ); + #else + vec4 envMapColor = textureCube( envMap, worldNormal ); + #endif + return PI * envMapColor.rgb * envMapIntensity; + #else + return vec3( 0.0 ); + #endif + } + vec3 getIBLRadiance( const in vec3 viewDir, const in vec3 normal, const in float roughness ) { + #if defined( ENVMAP_TYPE_CUBE_UV ) || defined( ENVMAP_TYPE_CUBE ) + vec3 reflectVec = reflect( - viewDir, normal ); + reflectVec = normalize( mix( reflectVec, normal, roughness * roughness) ); + reflectVec = inverseTransformDirection( reflectVec, viewMatrix ); + #if defined( ENVMAP_TYPE_CUBE_UV ) + vec4 envMapColor = textureCubeUV( envMap, reflectVec, roughness ); + #else + vec3 queryReflectVec = vec3( flipEnvMap * reflectVec.x, reflectVec.yz ); + vec4 envMapColor = textureCube( envMap, queryReflectVec ); + #endif + return envMapColor.rgb * envMapIntensity; + #else + return vec3( 0.0 ); + #endif + } +#endif`,envmap_vertex:`#ifdef USE_ENVMAP + #ifdef ENV_WORLDPOS + vWorldPosition = worldPosition.xyz; + #else + vec3 cameraToVertex; + if ( isOrthographic ) { + cameraToVertex = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) ); + } else { + cameraToVertex = normalize( worldPosition.xyz - cameraPosition ); + } + vec3 worldNormal = inverseTransformDirection( transformedNormal, viewMatrix ); + #ifdef ENVMAP_MODE_REFLECTION + vReflect = reflect( cameraToVertex, worldNormal ); + #else + vReflect = refract( cameraToVertex, worldNormal, refractionRatio ); + #endif + #endif +#endif`,fog_vertex:`#ifdef USE_FOG + vFogDepth = - mvPosition.z; +#endif`,fog_pars_vertex:`#ifdef USE_FOG + varying float vFogDepth; +#endif`,fog_fragment:`#ifdef USE_FOG + #ifdef FOG_EXP2 + float fogFactor = 1.0 - exp( - fogDensity * fogDensity * vFogDepth * vFogDepth ); + #else + float fogFactor = smoothstep( fogNear, fogFar, vFogDepth ); + #endif + gl_FragColor.rgb = mix( gl_FragColor.rgb, fogColor, fogFactor ); +#endif`,fog_pars_fragment:`#ifdef USE_FOG + uniform vec3 fogColor; + varying float vFogDepth; + #ifdef FOG_EXP2 + uniform float fogDensity; + #else + uniform float fogNear; + uniform float fogFar; + #endif +#endif`,gradientmap_pars_fragment:`#ifdef USE_GRADIENTMAP + uniform sampler2D gradientMap; +#endif +vec3 getGradientIrradiance( vec3 normal, vec3 lightDirection ) { + float dotNL = dot( normal, lightDirection ); + vec2 coord = vec2( dotNL * 0.5 + 0.5, 0.0 ); + #ifdef USE_GRADIENTMAP + return vec3( texture2D( gradientMap, coord ).r ); + #else + return ( coord.x < 0.7 ) ? vec3( 0.7 ) : vec3( 1.0 ); + #endif +}`,lightmap_fragment:`#ifdef USE_LIGHTMAP + vec4 lightMapTexel = texture2D( lightMap, vUv2 ); + vec3 lightMapIrradiance = lightMapTexel.rgb * lightMapIntensity; + reflectedLight.indirectDiffuse += lightMapIrradiance; +#endif`,lightmap_pars_fragment:`#ifdef USE_LIGHTMAP + uniform sampler2D lightMap; + uniform float lightMapIntensity; +#endif`,lights_lambert_vertex:`vec3 diffuse = vec3( 1.0 ); +GeometricContext geometry; +geometry.position = mvPosition.xyz; +geometry.normal = normalize( transformedNormal ); +geometry.viewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( -mvPosition.xyz ); +GeometricContext backGeometry; +backGeometry.position = geometry.position; +backGeometry.normal = -geometry.normal; +backGeometry.viewDir = geometry.viewDir; +vLightFront = vec3( 0.0 ); +vIndirectFront = vec3( 0.0 ); +#ifdef DOUBLE_SIDED + vLightBack = vec3( 0.0 ); + vIndirectBack = vec3( 0.0 ); +#endif +IncidentLight directLight; +float dotNL; +vec3 directLightColor_Diffuse; +vIndirectFront += getAmbientLightIrradiance( ambientLightColor ); +vIndirectFront += getLightProbeIrradiance( lightProbe, geometry.normal ); +#ifdef DOUBLE_SIDED + vIndirectBack += getAmbientLightIrradiance( ambientLightColor ); + vIndirectBack += getLightProbeIrradiance( lightProbe, backGeometry.normal ); +#endif +#if NUM_POINT_LIGHTS > 0 + #pragma unroll_loop_start + for ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) { + getPointLightInfo( pointLights[ i ], geometry, directLight ); + dotNL = dot( geometry.normal, directLight.direction ); + directLightColor_Diffuse = directLight.color; + vLightFront += saturate( dotNL ) * directLightColor_Diffuse; + #ifdef DOUBLE_SIDED + vLightBack += saturate( - dotNL ) * directLightColor_Diffuse; + #endif + } + #pragma unroll_loop_end +#endif +#if NUM_SPOT_LIGHTS > 0 + #pragma unroll_loop_start + for ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) { + getSpotLightInfo( spotLights[ i ], geometry, directLight ); + dotNL = dot( geometry.normal, directLight.direction ); + directLightColor_Diffuse = directLight.color; + vLightFront += saturate( dotNL ) * directLightColor_Diffuse; + #ifdef DOUBLE_SIDED + vLightBack += saturate( - dotNL ) * directLightColor_Diffuse; + #endif + } + #pragma unroll_loop_end +#endif +#if NUM_DIR_LIGHTS > 0 + #pragma unroll_loop_start + for ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) { + getDirectionalLightInfo( directionalLights[ i ], geometry, directLight ); + dotNL = dot( geometry.normal, directLight.direction ); + directLightColor_Diffuse = directLight.color; + vLightFront += saturate( dotNL ) * directLightColor_Diffuse; + #ifdef DOUBLE_SIDED + vLightBack += saturate( - dotNL ) * directLightColor_Diffuse; + #endif + } + #pragma unroll_loop_end +#endif +#if NUM_HEMI_LIGHTS > 0 + #pragma unroll_loop_start + for ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) { + vIndirectFront += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry.normal ); + #ifdef DOUBLE_SIDED + vIndirectBack += getHemisphereLightIrradiance( hemisphereLights[ i ], backGeometry.normal ); + #endif + } + #pragma unroll_loop_end +#endif`,lights_pars_begin:`uniform bool receiveShadow; +uniform vec3 ambientLightColor; +uniform vec3 lightProbe[ 9 ]; +vec3 shGetIrradianceAt( in vec3 normal, in vec3 shCoefficients[ 9 ] ) { + float x = normal.x, y = normal.y, z = normal.z; + vec3 result = shCoefficients[ 0 ] * 0.886227; + result += shCoefficients[ 1 ] * 2.0 * 0.511664 * y; + result += shCoefficients[ 2 ] * 2.0 * 0.511664 * z; + result += shCoefficients[ 3 ] * 2.0 * 0.511664 * x; + result += shCoefficients[ 4 ] * 2.0 * 0.429043 * x * y; + result += shCoefficients[ 5 ] * 2.0 * 0.429043 * y * z; + result += shCoefficients[ 6 ] * ( 0.743125 * z * z - 0.247708 ); + result += shCoefficients[ 7 ] * 2.0 * 0.429043 * x * z; + result += shCoefficients[ 8 ] * 0.429043 * ( x * x - y * y ); + return result; +} +vec3 getLightProbeIrradiance( const in vec3 lightProbe[ 9 ], const in vec3 normal ) { + vec3 worldNormal = inverseTransformDirection( normal, viewMatrix ); + vec3 irradiance = shGetIrradianceAt( worldNormal, lightProbe ); + return irradiance; +} +vec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) { + vec3 irradiance = ambientLightColor; + return irradiance; +} +float getDistanceAttenuation( const in float lightDistance, const in float cutoffDistance, const in float decayExponent ) { + #if defined ( PHYSICALLY_CORRECT_LIGHTS ) + float distanceFalloff = 1.0 / max( pow( lightDistance, decayExponent ), 0.01 ); + if ( cutoffDistance > 0.0 ) { + distanceFalloff *= pow2( saturate( 1.0 - pow4( lightDistance / cutoffDistance ) ) ); + } + return distanceFalloff; + #else + if ( cutoffDistance > 0.0 && decayExponent > 0.0 ) { + return pow( saturate( - lightDistance / cutoffDistance + 1.0 ), decayExponent ); + } + return 1.0; + #endif +} +float getSpotAttenuation( const in float coneCosine, const in float penumbraCosine, const in float angleCosine ) { + return smoothstep( coneCosine, penumbraCosine, angleCosine ); +} +#if NUM_DIR_LIGHTS > 0 + struct DirectionalLight { + vec3 direction; + vec3 color; + }; + uniform DirectionalLight directionalLights[ NUM_DIR_LIGHTS ]; + void getDirectionalLightInfo( const in DirectionalLight directionalLight, const in GeometricContext geometry, out IncidentLight light ) { + light.color = directionalLight.color; + light.direction = directionalLight.direction; + light.visible = true; + } +#endif +#if NUM_POINT_LIGHTS > 0 + struct PointLight { + vec3 position; + vec3 color; + float distance; + float decay; + }; + uniform PointLight pointLights[ NUM_POINT_LIGHTS ]; + void getPointLightInfo( const in PointLight pointLight, const in GeometricContext geometry, out IncidentLight light ) { + vec3 lVector = pointLight.position - geometry.position; + light.direction = normalize( lVector ); + float lightDistance = length( lVector ); + light.color = pointLight.color; + light.color *= getDistanceAttenuation( lightDistance, pointLight.distance, pointLight.decay ); + light.visible = ( light.color != vec3( 0.0 ) ); + } +#endif +#if NUM_SPOT_LIGHTS > 0 + struct SpotLight { + vec3 position; + vec3 direction; + vec3 color; + float distance; + float decay; + float coneCos; + float penumbraCos; + }; + uniform SpotLight spotLights[ NUM_SPOT_LIGHTS ]; + void getSpotLightInfo( const in SpotLight spotLight, const in GeometricContext geometry, out IncidentLight light ) { + vec3 lVector = spotLight.position - geometry.position; + light.direction = normalize( lVector ); + float angleCos = dot( light.direction, spotLight.direction ); + float spotAttenuation = getSpotAttenuation( spotLight.coneCos, spotLight.penumbraCos, angleCos ); + if ( spotAttenuation > 0.0 ) { + float lightDistance = length( lVector ); + light.color = spotLight.color * spotAttenuation; + light.color *= getDistanceAttenuation( lightDistance, spotLight.distance, spotLight.decay ); + light.visible = ( light.color != vec3( 0.0 ) ); + } else { + light.color = vec3( 0.0 ); + light.visible = false; + } + } +#endif +#if NUM_RECT_AREA_LIGHTS > 0 + struct RectAreaLight { + vec3 color; + vec3 position; + vec3 halfWidth; + vec3 halfHeight; + }; + uniform sampler2D ltc_1; uniform sampler2D ltc_2; + uniform RectAreaLight rectAreaLights[ NUM_RECT_AREA_LIGHTS ]; +#endif +#if NUM_HEMI_LIGHTS > 0 + struct HemisphereLight { + vec3 direction; + vec3 skyColor; + vec3 groundColor; + }; + uniform HemisphereLight hemisphereLights[ NUM_HEMI_LIGHTS ]; + vec3 getHemisphereLightIrradiance( const in HemisphereLight hemiLight, const in vec3 normal ) { + float dotNL = dot( normal, hemiLight.direction ); + float hemiDiffuseWeight = 0.5 * dotNL + 0.5; + vec3 irradiance = mix( hemiLight.groundColor, hemiLight.skyColor, hemiDiffuseWeight ); + return irradiance; + } +#endif`,lights_toon_fragment:`ToonMaterial material; +material.diffuseColor = diffuseColor.rgb;`,lights_toon_pars_fragment:`varying vec3 vViewPosition; +struct ToonMaterial { + vec3 diffuseColor; +}; +void RE_Direct_Toon( const in IncidentLight directLight, const in GeometricContext geometry, const in ToonMaterial material, inout ReflectedLight reflectedLight ) { + vec3 irradiance = getGradientIrradiance( geometry.normal, directLight.direction ) * directLight.color; + reflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor ); +} +void RE_IndirectDiffuse_Toon( const in vec3 irradiance, const in GeometricContext geometry, const in ToonMaterial material, inout ReflectedLight reflectedLight ) { + reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor ); +} +#define RE_Direct RE_Direct_Toon +#define RE_IndirectDiffuse RE_IndirectDiffuse_Toon +#define Material_LightProbeLOD( material ) (0)`,lights_phong_fragment:`BlinnPhongMaterial material; +material.diffuseColor = diffuseColor.rgb; +material.specularColor = specular; +material.specularShininess = shininess; +material.specularStrength = specularStrength;`,lights_phong_pars_fragment:`varying vec3 vViewPosition; +struct BlinnPhongMaterial { + vec3 diffuseColor; + vec3 specularColor; + float specularShininess; + float specularStrength; +}; +void RE_Direct_BlinnPhong( const in IncidentLight directLight, const in GeometricContext geometry, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) { + float dotNL = saturate( dot( geometry.normal, directLight.direction ) ); + vec3 irradiance = dotNL * directLight.color; + reflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor ); + reflectedLight.directSpecular += irradiance * BRDF_BlinnPhong( directLight.direction, geometry.viewDir, geometry.normal, material.specularColor, material.specularShininess ) * material.specularStrength; +} +void RE_IndirectDiffuse_BlinnPhong( const in vec3 irradiance, const in GeometricContext geometry, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) { + reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor ); +} +#define RE_Direct RE_Direct_BlinnPhong +#define RE_IndirectDiffuse RE_IndirectDiffuse_BlinnPhong +#define Material_LightProbeLOD( material ) (0)`,lights_physical_fragment:`PhysicalMaterial material; +material.diffuseColor = diffuseColor.rgb * ( 1.0 - metalnessFactor ); +vec3 dxy = max( abs( dFdx( geometryNormal ) ), abs( dFdy( geometryNormal ) ) ); +float geometryRoughness = max( max( dxy.x, dxy.y ), dxy.z ); +material.roughness = max( roughnessFactor, 0.0525 );material.roughness += geometryRoughness; +material.roughness = min( material.roughness, 1.0 ); +#ifdef IOR + #ifdef SPECULAR + float specularIntensityFactor = specularIntensity; + vec3 specularColorFactor = specularColor; + #ifdef USE_SPECULARINTENSITYMAP + specularIntensityFactor *= texture2D( specularIntensityMap, vUv ).a; + #endif + #ifdef USE_SPECULARCOLORMAP + specularColorFactor *= texture2D( specularColorMap, vUv ).rgb; + #endif + material.specularF90 = mix( specularIntensityFactor, 1.0, metalnessFactor ); + #else + float specularIntensityFactor = 1.0; + vec3 specularColorFactor = vec3( 1.0 ); + material.specularF90 = 1.0; + #endif + material.specularColor = mix( min( pow2( ( ior - 1.0 ) / ( ior + 1.0 ) ) * specularColorFactor, vec3( 1.0 ) ) * specularIntensityFactor, diffuseColor.rgb, metalnessFactor ); +#else + material.specularColor = mix( vec3( 0.04 ), diffuseColor.rgb, metalnessFactor ); + material.specularF90 = 1.0; +#endif +#ifdef USE_CLEARCOAT + material.clearcoat = clearcoat; + material.clearcoatRoughness = clearcoatRoughness; + material.clearcoatF0 = vec3( 0.04 ); + material.clearcoatF90 = 1.0; + #ifdef USE_CLEARCOATMAP + material.clearcoat *= texture2D( clearcoatMap, vUv ).x; + #endif + #ifdef USE_CLEARCOAT_ROUGHNESSMAP + material.clearcoatRoughness *= texture2D( clearcoatRoughnessMap, vUv ).y; + #endif + material.clearcoat = saturate( material.clearcoat ); material.clearcoatRoughness = max( material.clearcoatRoughness, 0.0525 ); + material.clearcoatRoughness += geometryRoughness; + material.clearcoatRoughness = min( material.clearcoatRoughness, 1.0 ); +#endif +#ifdef USE_IRIDESCENCE + material.iridescence = iridescence; + material.iridescenceIOR = iridescenceIOR; + #ifdef USE_IRIDESCENCEMAP + material.iridescence *= texture2D( iridescenceMap, vUv ).r; + #endif + #ifdef USE_IRIDESCENCE_THICKNESSMAP + material.iridescenceThickness = (iridescenceThicknessMaximum - iridescenceThicknessMinimum) * texture2D( iridescenceThicknessMap, vUv ).g + iridescenceThicknessMinimum; + #else + material.iridescenceThickness = iridescenceThicknessMaximum; + #endif +#endif +#ifdef USE_SHEEN + material.sheenColor = sheenColor; + #ifdef USE_SHEENCOLORMAP + material.sheenColor *= texture2D( sheenColorMap, vUv ).rgb; + #endif + material.sheenRoughness = clamp( sheenRoughness, 0.07, 1.0 ); + #ifdef USE_SHEENROUGHNESSMAP + material.sheenRoughness *= texture2D( sheenRoughnessMap, vUv ).a; + #endif +#endif`,lights_physical_pars_fragment:`struct PhysicalMaterial { + vec3 diffuseColor; + float roughness; + vec3 specularColor; + float specularF90; + #ifdef USE_CLEARCOAT + float clearcoat; + float clearcoatRoughness; + vec3 clearcoatF0; + float clearcoatF90; + #endif + #ifdef USE_IRIDESCENCE + float iridescence; + float iridescenceIOR; + float iridescenceThickness; + vec3 iridescenceFresnel; + vec3 iridescenceF0; + #endif + #ifdef USE_SHEEN + vec3 sheenColor; + float sheenRoughness; + #endif +}; +vec3 clearcoatSpecular = vec3( 0.0 ); +vec3 sheenSpecular = vec3( 0.0 ); +float IBLSheenBRDF( const in vec3 normal, const in vec3 viewDir, const in float roughness) { + float dotNV = saturate( dot( normal, viewDir ) ); + float r2 = roughness * roughness; + float a = roughness < 0.25 ? -339.2 * r2 + 161.4 * roughness - 25.9 : -8.48 * r2 + 14.3 * roughness - 9.95; + float b = roughness < 0.25 ? 44.0 * r2 - 23.7 * roughness + 3.26 : 1.97 * r2 - 3.27 * roughness + 0.72; + float DG = exp( a * dotNV + b ) + ( roughness < 0.25 ? 0.0 : 0.1 * ( roughness - 0.25 ) ); + return saturate( DG * RECIPROCAL_PI ); +} +vec2 DFGApprox( const in vec3 normal, const in vec3 viewDir, const in float roughness ) { + float dotNV = saturate( dot( normal, viewDir ) ); + const vec4 c0 = vec4( - 1, - 0.0275, - 0.572, 0.022 ); + const vec4 c1 = vec4( 1, 0.0425, 1.04, - 0.04 ); + vec4 r = roughness * c0 + c1; + float a004 = min( r.x * r.x, exp2( - 9.28 * dotNV ) ) * r.x + r.y; + vec2 fab = vec2( - 1.04, 1.04 ) * a004 + r.zw; + return fab; +} +vec3 EnvironmentBRDF( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness ) { + vec2 fab = DFGApprox( normal, viewDir, roughness ); + return specularColor * fab.x + specularF90 * fab.y; +} +#ifdef USE_IRIDESCENCE +void computeMultiscatteringIridescence( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float iridescence, const in vec3 iridescenceF0, const in float roughness, inout vec3 singleScatter, inout vec3 multiScatter ) { +#else +void computeMultiscattering( const in vec3 normal, const in vec3 viewDir, const in vec3 specularColor, const in float specularF90, const in float roughness, inout vec3 singleScatter, inout vec3 multiScatter ) { +#endif + vec2 fab = DFGApprox( normal, viewDir, roughness ); + #ifdef USE_IRIDESCENCE + vec3 Fr = mix( specularColor, iridescenceF0, iridescence ); + #else + vec3 Fr = specularColor; + #endif + vec3 FssEss = Fr * fab.x + specularF90 * fab.y; + float Ess = fab.x + fab.y; + float Ems = 1.0 - Ess; + vec3 Favg = Fr + ( 1.0 - Fr ) * 0.047619; vec3 Fms = FssEss * Favg / ( 1.0 - Ems * Favg ); + singleScatter += FssEss; + multiScatter += Fms * Ems; +} +#if NUM_RECT_AREA_LIGHTS > 0 + void RE_Direct_RectArea_Physical( const in RectAreaLight rectAreaLight, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) { + vec3 normal = geometry.normal; + vec3 viewDir = geometry.viewDir; + vec3 position = geometry.position; + vec3 lightPos = rectAreaLight.position; + vec3 halfWidth = rectAreaLight.halfWidth; + vec3 halfHeight = rectAreaLight.halfHeight; + vec3 lightColor = rectAreaLight.color; + float roughness = material.roughness; + vec3 rectCoords[ 4 ]; + rectCoords[ 0 ] = lightPos + halfWidth - halfHeight; rectCoords[ 1 ] = lightPos - halfWidth - halfHeight; + rectCoords[ 2 ] = lightPos - halfWidth + halfHeight; + rectCoords[ 3 ] = lightPos + halfWidth + halfHeight; + vec2 uv = LTC_Uv( normal, viewDir, roughness ); + vec4 t1 = texture2D( ltc_1, uv ); + vec4 t2 = texture2D( ltc_2, uv ); + mat3 mInv = mat3( + vec3( t1.x, 0, t1.y ), + vec3( 0, 1, 0 ), + vec3( t1.z, 0, t1.w ) + ); + vec3 fresnel = ( material.specularColor * t2.x + ( vec3( 1.0 ) - material.specularColor ) * t2.y ); + reflectedLight.directSpecular += lightColor * fresnel * LTC_Evaluate( normal, viewDir, position, mInv, rectCoords ); + reflectedLight.directDiffuse += lightColor * material.diffuseColor * LTC_Evaluate( normal, viewDir, position, mat3( 1.0 ), rectCoords ); + } +#endif +void RE_Direct_Physical( const in IncidentLight directLight, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) { + float dotNL = saturate( dot( geometry.normal, directLight.direction ) ); + vec3 irradiance = dotNL * directLight.color; + #ifdef USE_CLEARCOAT + float dotNLcc = saturate( dot( geometry.clearcoatNormal, directLight.direction ) ); + vec3 ccIrradiance = dotNLcc * directLight.color; + clearcoatSpecular += ccIrradiance * BRDF_GGX( directLight.direction, geometry.viewDir, geometry.clearcoatNormal, material.clearcoatF0, material.clearcoatF90, material.clearcoatRoughness ); + #endif + #ifdef USE_SHEEN + sheenSpecular += irradiance * BRDF_Sheen( directLight.direction, geometry.viewDir, geometry.normal, material.sheenColor, material.sheenRoughness ); + #endif + #ifdef USE_IRIDESCENCE + reflectedLight.directSpecular += irradiance * BRDF_GGX_Iridescence( directLight.direction, geometry.viewDir, geometry.normal, material.specularColor, material.specularF90, material.iridescence, material.iridescenceFresnel, material.roughness ); + #else + reflectedLight.directSpecular += irradiance * BRDF_GGX( directLight.direction, geometry.viewDir, geometry.normal, material.specularColor, material.specularF90, material.roughness ); + #endif + reflectedLight.directDiffuse += irradiance * BRDF_Lambert( material.diffuseColor ); +} +void RE_IndirectDiffuse_Physical( const in vec3 irradiance, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) { + reflectedLight.indirectDiffuse += irradiance * BRDF_Lambert( material.diffuseColor ); +} +void RE_IndirectSpecular_Physical( const in vec3 radiance, const in vec3 irradiance, const in vec3 clearcoatRadiance, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight) { + #ifdef USE_CLEARCOAT + clearcoatSpecular += clearcoatRadiance * EnvironmentBRDF( geometry.clearcoatNormal, geometry.viewDir, material.clearcoatF0, material.clearcoatF90, material.clearcoatRoughness ); + #endif + #ifdef USE_SHEEN + sheenSpecular += irradiance * material.sheenColor * IBLSheenBRDF( geometry.normal, geometry.viewDir, material.sheenRoughness ); + #endif + vec3 singleScattering = vec3( 0.0 ); + vec3 multiScattering = vec3( 0.0 ); + vec3 cosineWeightedIrradiance = irradiance * RECIPROCAL_PI; + #ifdef USE_IRIDESCENCE + computeMultiscatteringIridescence( geometry.normal, geometry.viewDir, material.specularColor, material.specularF90, material.iridescence, material.iridescenceFresnel, material.roughness, singleScattering, multiScattering ); + #else + computeMultiscattering( geometry.normal, geometry.viewDir, material.specularColor, material.specularF90, material.roughness, singleScattering, multiScattering ); + #endif + vec3 totalScattering = singleScattering + multiScattering; + vec3 diffuse = material.diffuseColor * ( 1.0 - max( max( totalScattering.r, totalScattering.g ), totalScattering.b ) ); + reflectedLight.indirectSpecular += radiance * singleScattering; + reflectedLight.indirectSpecular += multiScattering * cosineWeightedIrradiance; + reflectedLight.indirectDiffuse += diffuse * cosineWeightedIrradiance; +} +#define RE_Direct RE_Direct_Physical +#define RE_Direct_RectArea RE_Direct_RectArea_Physical +#define RE_IndirectDiffuse RE_IndirectDiffuse_Physical +#define RE_IndirectSpecular RE_IndirectSpecular_Physical +float computeSpecularOcclusion( const in float dotNV, const in float ambientOcclusion, const in float roughness ) { + return saturate( pow( dotNV + ambientOcclusion, exp2( - 16.0 * roughness - 1.0 ) ) - 1.0 + ambientOcclusion ); +}`,lights_fragment_begin:` +GeometricContext geometry; +geometry.position = - vViewPosition; +geometry.normal = normal; +geometry.viewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( vViewPosition ); +#ifdef USE_CLEARCOAT + geometry.clearcoatNormal = clearcoatNormal; +#endif +#ifdef USE_IRIDESCENCE +float dotNVi = saturate( dot( normal, geometry.viewDir ) ); +if ( material.iridescenceThickness == 0.0 ) { + material.iridescence = 0.0; +} else { + material.iridescence = saturate( material.iridescence ); +} +if ( material.iridescence > 0.0 ) { + material.iridescenceFresnel = evalIridescence( 1.0, material.iridescenceIOR, dotNVi, material.iridescenceThickness, material.specularColor ); + material.iridescenceF0 = Schlick_to_F0( material.iridescenceFresnel, 1.0, dotNVi ); +} +#endif +IncidentLight directLight; +#if ( NUM_POINT_LIGHTS > 0 ) && defined( RE_Direct ) + PointLight pointLight; + #if defined( USE_SHADOWMAP ) && NUM_POINT_LIGHT_SHADOWS > 0 + PointLightShadow pointLightShadow; + #endif + #pragma unroll_loop_start + for ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) { + pointLight = pointLights[ i ]; + getPointLightInfo( pointLight, geometry, directLight ); + #if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_POINT_LIGHT_SHADOWS ) + pointLightShadow = pointLightShadows[ i ]; + directLight.color *= all( bvec2( directLight.visible, receiveShadow ) ) ? getPointShadow( pointShadowMap[ i ], pointLightShadow.shadowMapSize, pointLightShadow.shadowBias, pointLightShadow.shadowRadius, vPointShadowCoord[ i ], pointLightShadow.shadowCameraNear, pointLightShadow.shadowCameraFar ) : 1.0; + #endif + RE_Direct( directLight, geometry, material, reflectedLight ); + } + #pragma unroll_loop_end +#endif +#if ( NUM_SPOT_LIGHTS > 0 ) && defined( RE_Direct ) + SpotLight spotLight; + #if defined( USE_SHADOWMAP ) && NUM_SPOT_LIGHT_SHADOWS > 0 + SpotLightShadow spotLightShadow; + #endif + #pragma unroll_loop_start + for ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) { + spotLight = spotLights[ i ]; + getSpotLightInfo( spotLight, geometry, directLight ); + #if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS ) + spotLightShadow = spotLightShadows[ i ]; + directLight.color *= all( bvec2( directLight.visible, receiveShadow ) ) ? getShadow( spotShadowMap[ i ], spotLightShadow.shadowMapSize, spotLightShadow.shadowBias, spotLightShadow.shadowRadius, vSpotShadowCoord[ i ] ) : 1.0; + #endif + RE_Direct( directLight, geometry, material, reflectedLight ); + } + #pragma unroll_loop_end +#endif +#if ( NUM_DIR_LIGHTS > 0 ) && defined( RE_Direct ) + DirectionalLight directionalLight; + #if defined( USE_SHADOWMAP ) && NUM_DIR_LIGHT_SHADOWS > 0 + DirectionalLightShadow directionalLightShadow; + #endif + #pragma unroll_loop_start + for ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) { + directionalLight = directionalLights[ i ]; + getDirectionalLightInfo( directionalLight, geometry, directLight ); + #if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_DIR_LIGHT_SHADOWS ) + directionalLightShadow = directionalLightShadows[ i ]; + directLight.color *= all( bvec2( directLight.visible, receiveShadow ) ) ? getShadow( directionalShadowMap[ i ], directionalLightShadow.shadowMapSize, directionalLightShadow.shadowBias, directionalLightShadow.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0; + #endif + RE_Direct( directLight, geometry, material, reflectedLight ); + } + #pragma unroll_loop_end +#endif +#if ( NUM_RECT_AREA_LIGHTS > 0 ) && defined( RE_Direct_RectArea ) + RectAreaLight rectAreaLight; + #pragma unroll_loop_start + for ( int i = 0; i < NUM_RECT_AREA_LIGHTS; i ++ ) { + rectAreaLight = rectAreaLights[ i ]; + RE_Direct_RectArea( rectAreaLight, geometry, material, reflectedLight ); + } + #pragma unroll_loop_end +#endif +#if defined( RE_IndirectDiffuse ) + vec3 iblIrradiance = vec3( 0.0 ); + vec3 irradiance = getAmbientLightIrradiance( ambientLightColor ); + irradiance += getLightProbeIrradiance( lightProbe, geometry.normal ); + #if ( NUM_HEMI_LIGHTS > 0 ) + #pragma unroll_loop_start + for ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) { + irradiance += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry.normal ); + } + #pragma unroll_loop_end + #endif +#endif +#if defined( RE_IndirectSpecular ) + vec3 radiance = vec3( 0.0 ); + vec3 clearcoatRadiance = vec3( 0.0 ); +#endif`,lights_fragment_maps:`#if defined( RE_IndirectDiffuse ) + #ifdef USE_LIGHTMAP + vec4 lightMapTexel = texture2D( lightMap, vUv2 ); + vec3 lightMapIrradiance = lightMapTexel.rgb * lightMapIntensity; + irradiance += lightMapIrradiance; + #endif + #if defined( USE_ENVMAP ) && defined( STANDARD ) && ( defined( ENVMAP_TYPE_CUBE_UV ) || defined( ENVMAP_TYPE_CUBE ) ) + iblIrradiance += getIBLIrradiance( geometry.normal ); + #endif +#endif +#if defined( USE_ENVMAP ) && defined( RE_IndirectSpecular ) + radiance += getIBLRadiance( geometry.viewDir, geometry.normal, material.roughness ); + #ifdef USE_CLEARCOAT + clearcoatRadiance += getIBLRadiance( geometry.viewDir, geometry.clearcoatNormal, material.clearcoatRoughness ); + #endif +#endif`,lights_fragment_end:`#if defined( RE_IndirectDiffuse ) + RE_IndirectDiffuse( irradiance, geometry, material, reflectedLight ); +#endif +#if defined( RE_IndirectSpecular ) + RE_IndirectSpecular( radiance, iblIrradiance, clearcoatRadiance, geometry, material, reflectedLight ); +#endif`,logdepthbuf_fragment:`#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT ) + gl_FragDepthEXT = vIsPerspective == 0.0 ? gl_FragCoord.z : log2( vFragDepth ) * logDepthBufFC * 0.5; +#endif`,logdepthbuf_pars_fragment:`#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT ) + uniform float logDepthBufFC; + varying float vFragDepth; + varying float vIsPerspective; +#endif`,logdepthbuf_pars_vertex:`#ifdef USE_LOGDEPTHBUF + #ifdef USE_LOGDEPTHBUF_EXT + varying float vFragDepth; + varying float vIsPerspective; + #else + uniform float logDepthBufFC; + #endif +#endif`,logdepthbuf_vertex:`#ifdef USE_LOGDEPTHBUF + #ifdef USE_LOGDEPTHBUF_EXT + vFragDepth = 1.0 + gl_Position.w; + vIsPerspective = float( isPerspectiveMatrix( projectionMatrix ) ); + #else + if ( isPerspectiveMatrix( projectionMatrix ) ) { + gl_Position.z = log2( max( EPSILON, gl_Position.w + 1.0 ) ) * logDepthBufFC - 1.0; + gl_Position.z *= gl_Position.w; + } + #endif +#endif`,map_fragment:`#ifdef USE_MAP + vec4 sampledDiffuseColor = texture2D( map, vUv ); + #ifdef DECODE_VIDEO_TEXTURE + sampledDiffuseColor = vec4( mix( pow( sampledDiffuseColor.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), sampledDiffuseColor.rgb * 0.0773993808, vec3( lessThanEqual( sampledDiffuseColor.rgb, vec3( 0.04045 ) ) ) ), sampledDiffuseColor.w ); + #endif + diffuseColor *= sampledDiffuseColor; +#endif`,map_pars_fragment:`#ifdef USE_MAP + uniform sampler2D map; +#endif`,map_particle_fragment:`#if defined( USE_MAP ) || defined( USE_ALPHAMAP ) + vec2 uv = ( uvTransform * vec3( gl_PointCoord.x, 1.0 - gl_PointCoord.y, 1 ) ).xy; +#endif +#ifdef USE_MAP + diffuseColor *= texture2D( map, uv ); +#endif +#ifdef USE_ALPHAMAP + diffuseColor.a *= texture2D( alphaMap, uv ).g; +#endif`,map_particle_pars_fragment:`#if defined( USE_MAP ) || defined( USE_ALPHAMAP ) + uniform mat3 uvTransform; +#endif +#ifdef USE_MAP + uniform sampler2D map; +#endif +#ifdef USE_ALPHAMAP + uniform sampler2D alphaMap; +#endif`,metalnessmap_fragment:`float metalnessFactor = metalness; +#ifdef USE_METALNESSMAP + vec4 texelMetalness = texture2D( metalnessMap, vUv ); + metalnessFactor *= texelMetalness.b; +#endif`,metalnessmap_pars_fragment:`#ifdef USE_METALNESSMAP + uniform sampler2D metalnessMap; +#endif`,morphcolor_vertex:`#if defined( USE_MORPHCOLORS ) && defined( MORPHTARGETS_TEXTURE ) + vColor *= morphTargetBaseInfluence; + for ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) { + #if defined( USE_COLOR_ALPHA ) + if ( morphTargetInfluences[ i ] != 0.0 ) vColor += getMorph( gl_VertexID, i, 2 ) * morphTargetInfluences[ i ]; + #elif defined( USE_COLOR ) + if ( morphTargetInfluences[ i ] != 0.0 ) vColor += getMorph( gl_VertexID, i, 2 ).rgb * morphTargetInfluences[ i ]; + #endif + } +#endif`,morphnormal_vertex:`#ifdef USE_MORPHNORMALS + objectNormal *= morphTargetBaseInfluence; + #ifdef MORPHTARGETS_TEXTURE + for ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) { + if ( morphTargetInfluences[ i ] != 0.0 ) objectNormal += getMorph( gl_VertexID, i, 1 ).xyz * morphTargetInfluences[ i ]; + } + #else + objectNormal += morphNormal0 * morphTargetInfluences[ 0 ]; + objectNormal += morphNormal1 * morphTargetInfluences[ 1 ]; + objectNormal += morphNormal2 * morphTargetInfluences[ 2 ]; + objectNormal += morphNormal3 * morphTargetInfluences[ 3 ]; + #endif +#endif`,morphtarget_pars_vertex:`#ifdef USE_MORPHTARGETS + uniform float morphTargetBaseInfluence; + #ifdef MORPHTARGETS_TEXTURE + uniform float morphTargetInfluences[ MORPHTARGETS_COUNT ]; + uniform sampler2DArray morphTargetsTexture; + uniform ivec2 morphTargetsTextureSize; + vec4 getMorph( const in int vertexIndex, const in int morphTargetIndex, const in int offset ) { + int texelIndex = vertexIndex * MORPHTARGETS_TEXTURE_STRIDE + offset; + int y = texelIndex / morphTargetsTextureSize.x; + int x = texelIndex - y * morphTargetsTextureSize.x; + ivec3 morphUV = ivec3( x, y, morphTargetIndex ); + return texelFetch( morphTargetsTexture, morphUV, 0 ); + } + #else + #ifndef USE_MORPHNORMALS + uniform float morphTargetInfluences[ 8 ]; + #else + uniform float morphTargetInfluences[ 4 ]; + #endif + #endif +#endif`,morphtarget_vertex:`#ifdef USE_MORPHTARGETS + transformed *= morphTargetBaseInfluence; + #ifdef MORPHTARGETS_TEXTURE + for ( int i = 0; i < MORPHTARGETS_COUNT; i ++ ) { + if ( morphTargetInfluences[ i ] != 0.0 ) transformed += getMorph( gl_VertexID, i, 0 ).xyz * morphTargetInfluences[ i ]; + } + #else + transformed += morphTarget0 * morphTargetInfluences[ 0 ]; + transformed += morphTarget1 * morphTargetInfluences[ 1 ]; + transformed += morphTarget2 * morphTargetInfluences[ 2 ]; + transformed += morphTarget3 * morphTargetInfluences[ 3 ]; + #ifndef USE_MORPHNORMALS + transformed += morphTarget4 * morphTargetInfluences[ 4 ]; + transformed += morphTarget5 * morphTargetInfluences[ 5 ]; + transformed += morphTarget6 * morphTargetInfluences[ 6 ]; + transformed += morphTarget7 * morphTargetInfluences[ 7 ]; + #endif + #endif +#endif`,normal_fragment_begin:`float faceDirection = gl_FrontFacing ? 1.0 : - 1.0; +#ifdef FLAT_SHADED + vec3 fdx = vec3( dFdx( vViewPosition.x ), dFdx( vViewPosition.y ), dFdx( vViewPosition.z ) ); + vec3 fdy = vec3( dFdy( vViewPosition.x ), dFdy( vViewPosition.y ), dFdy( vViewPosition.z ) ); + vec3 normal = normalize( cross( fdx, fdy ) ); +#else + vec3 normal = normalize( vNormal ); + #ifdef DOUBLE_SIDED + normal = normal * faceDirection; + #endif + #ifdef USE_TANGENT + vec3 tangent = normalize( vTangent ); + vec3 bitangent = normalize( vBitangent ); + #ifdef DOUBLE_SIDED + tangent = tangent * faceDirection; + bitangent = bitangent * faceDirection; + #endif + #if defined( TANGENTSPACE_NORMALMAP ) || defined( USE_CLEARCOAT_NORMALMAP ) + mat3 vTBN = mat3( tangent, bitangent, normal ); + #endif + #endif +#endif +vec3 geometryNormal = normal;`,normal_fragment_maps:`#ifdef OBJECTSPACE_NORMALMAP + normal = texture2D( normalMap, vUv ).xyz * 2.0 - 1.0; + #ifdef FLIP_SIDED + normal = - normal; + #endif + #ifdef DOUBLE_SIDED + normal = normal * faceDirection; + #endif + normal = normalize( normalMatrix * normal ); +#elif defined( TANGENTSPACE_NORMALMAP ) + vec3 mapN = texture2D( normalMap, vUv ).xyz * 2.0 - 1.0; + mapN.xy *= normalScale; + #ifdef USE_TANGENT + normal = normalize( vTBN * mapN ); + #else + normal = perturbNormal2Arb( - vViewPosition, normal, mapN, faceDirection ); + #endif +#elif defined( USE_BUMPMAP ) + normal = perturbNormalArb( - vViewPosition, normal, dHdxy_fwd(), faceDirection ); +#endif`,normal_pars_fragment:`#ifndef FLAT_SHADED + varying vec3 vNormal; + #ifdef USE_TANGENT + varying vec3 vTangent; + varying vec3 vBitangent; + #endif +#endif`,normal_pars_vertex:`#ifndef FLAT_SHADED + varying vec3 vNormal; + #ifdef USE_TANGENT + varying vec3 vTangent; + varying vec3 vBitangent; + #endif +#endif`,normal_vertex:`#ifndef FLAT_SHADED + vNormal = normalize( transformedNormal ); + #ifdef USE_TANGENT + vTangent = normalize( transformedTangent ); + vBitangent = normalize( cross( vNormal, vTangent ) * tangent.w ); + #endif +#endif`,normalmap_pars_fragment:`#ifdef USE_NORMALMAP + uniform sampler2D normalMap; + uniform vec2 normalScale; +#endif +#ifdef OBJECTSPACE_NORMALMAP + uniform mat3 normalMatrix; +#endif +#if ! defined ( USE_TANGENT ) && ( defined ( TANGENTSPACE_NORMALMAP ) || defined ( USE_CLEARCOAT_NORMALMAP ) ) + vec3 perturbNormal2Arb( vec3 eye_pos, vec3 surf_norm, vec3 mapN, float faceDirection ) { + vec3 q0 = vec3( dFdx( eye_pos.x ), dFdx( eye_pos.y ), dFdx( eye_pos.z ) ); + vec3 q1 = vec3( dFdy( eye_pos.x ), dFdy( eye_pos.y ), dFdy( eye_pos.z ) ); + vec2 st0 = dFdx( vUv.st ); + vec2 st1 = dFdy( vUv.st ); + vec3 N = surf_norm; + vec3 q1perp = cross( q1, N ); + vec3 q0perp = cross( N, q0 ); + vec3 T = q1perp * st0.x + q0perp * st1.x; + vec3 B = q1perp * st0.y + q0perp * st1.y; + float det = max( dot( T, T ), dot( B, B ) ); + float scale = ( det == 0.0 ) ? 0.0 : faceDirection * inversesqrt( det ); + return normalize( T * ( mapN.x * scale ) + B * ( mapN.y * scale ) + N * mapN.z ); + } +#endif`,clearcoat_normal_fragment_begin:`#ifdef USE_CLEARCOAT + vec3 clearcoatNormal = geometryNormal; +#endif`,clearcoat_normal_fragment_maps:`#ifdef USE_CLEARCOAT_NORMALMAP + vec3 clearcoatMapN = texture2D( clearcoatNormalMap, vUv ).xyz * 2.0 - 1.0; + clearcoatMapN.xy *= clearcoatNormalScale; + #ifdef USE_TANGENT + clearcoatNormal = normalize( vTBN * clearcoatMapN ); + #else + clearcoatNormal = perturbNormal2Arb( - vViewPosition, clearcoatNormal, clearcoatMapN, faceDirection ); + #endif +#endif`,clearcoat_pars_fragment:`#ifdef USE_CLEARCOATMAP + uniform sampler2D clearcoatMap; +#endif +#ifdef USE_CLEARCOAT_ROUGHNESSMAP + uniform sampler2D clearcoatRoughnessMap; +#endif +#ifdef USE_CLEARCOAT_NORMALMAP + uniform sampler2D clearcoatNormalMap; + uniform vec2 clearcoatNormalScale; +#endif`,iridescence_pars_fragment:`#ifdef USE_IRIDESCENCEMAP + uniform sampler2D iridescenceMap; +#endif +#ifdef USE_IRIDESCENCE_THICKNESSMAP + uniform sampler2D iridescenceThicknessMap; +#endif`,output_fragment:`#ifdef OPAQUE +diffuseColor.a = 1.0; +#endif +#ifdef USE_TRANSMISSION +diffuseColor.a *= transmissionAlpha + 0.1; +#endif +gl_FragColor = vec4( outgoingLight, diffuseColor.a );`,packing:`vec3 packNormalToRGB( const in vec3 normal ) { + return normalize( normal ) * 0.5 + 0.5; +} +vec3 unpackRGBToNormal( const in vec3 rgb ) { + return 2.0 * rgb.xyz - 1.0; +} +const float PackUpscale = 256. / 255.;const float UnpackDownscale = 255. / 256.; +const vec3 PackFactors = vec3( 256. * 256. * 256., 256. * 256., 256. ); +const vec4 UnpackFactors = UnpackDownscale / vec4( PackFactors, 1. ); +const float ShiftRight8 = 1. / 256.; +vec4 packDepthToRGBA( const in float v ) { + vec4 r = vec4( fract( v * PackFactors ), v ); + r.yzw -= r.xyz * ShiftRight8; return r * PackUpscale; +} +float unpackRGBAToDepth( const in vec4 v ) { + return dot( v, UnpackFactors ); +} +vec4 pack2HalfToRGBA( vec2 v ) { + vec4 r = vec4( v.x, fract( v.x * 255.0 ), v.y, fract( v.y * 255.0 ) ); + return vec4( r.x - r.y / 255.0, r.y, r.z - r.w / 255.0, r.w ); +} +vec2 unpackRGBATo2Half( vec4 v ) { + return vec2( v.x + ( v.y / 255.0 ), v.z + ( v.w / 255.0 ) ); +} +float viewZToOrthographicDepth( const in float viewZ, const in float near, const in float far ) { + return ( viewZ + near ) / ( near - far ); +} +float orthographicDepthToViewZ( const in float linearClipZ, const in float near, const in float far ) { + return linearClipZ * ( near - far ) - near; +} +float viewZToPerspectiveDepth( const in float viewZ, const in float near, const in float far ) { + return ( ( near + viewZ ) * far ) / ( ( far - near ) * viewZ ); +} +float perspectiveDepthToViewZ( const in float invClipZ, const in float near, const in float far ) { + return ( near * far ) / ( ( far - near ) * invClipZ - far ); +}`,premultiplied_alpha_fragment:`#ifdef PREMULTIPLIED_ALPHA + gl_FragColor.rgb *= gl_FragColor.a; +#endif`,project_vertex:`vec4 mvPosition = vec4( transformed, 1.0 ); +#ifdef USE_INSTANCING + mvPosition = instanceMatrix * mvPosition; +#endif +mvPosition = modelViewMatrix * mvPosition; +gl_Position = projectionMatrix * mvPosition;`,dithering_fragment:`#ifdef DITHERING + gl_FragColor.rgb = dithering( gl_FragColor.rgb ); +#endif`,dithering_pars_fragment:`#ifdef DITHERING + vec3 dithering( vec3 color ) { + float grid_position = rand( gl_FragCoord.xy ); + vec3 dither_shift_RGB = vec3( 0.25 / 255.0, -0.25 / 255.0, 0.25 / 255.0 ); + dither_shift_RGB = mix( 2.0 * dither_shift_RGB, -2.0 * dither_shift_RGB, grid_position ); + return color + dither_shift_RGB; + } +#endif`,roughnessmap_fragment:`float roughnessFactor = roughness; +#ifdef USE_ROUGHNESSMAP + vec4 texelRoughness = texture2D( roughnessMap, vUv ); + roughnessFactor *= texelRoughness.g; +#endif`,roughnessmap_pars_fragment:`#ifdef USE_ROUGHNESSMAP + uniform sampler2D roughnessMap; +#endif`,shadowmap_pars_fragment:`#ifdef USE_SHADOWMAP + #if NUM_DIR_LIGHT_SHADOWS > 0 + uniform sampler2D directionalShadowMap[ NUM_DIR_LIGHT_SHADOWS ]; + varying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ]; + struct DirectionalLightShadow { + float shadowBias; + float shadowNormalBias; + float shadowRadius; + vec2 shadowMapSize; + }; + uniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ]; + #endif + #if NUM_SPOT_LIGHT_SHADOWS > 0 + uniform sampler2D spotShadowMap[ NUM_SPOT_LIGHT_SHADOWS ]; + varying vec4 vSpotShadowCoord[ NUM_SPOT_LIGHT_SHADOWS ]; + struct SpotLightShadow { + float shadowBias; + float shadowNormalBias; + float shadowRadius; + vec2 shadowMapSize; + }; + uniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ]; + #endif + #if NUM_POINT_LIGHT_SHADOWS > 0 + uniform sampler2D pointShadowMap[ NUM_POINT_LIGHT_SHADOWS ]; + varying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ]; + struct PointLightShadow { + float shadowBias; + float shadowNormalBias; + float shadowRadius; + vec2 shadowMapSize; + float shadowCameraNear; + float shadowCameraFar; + }; + uniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ]; + #endif + float texture2DCompare( sampler2D depths, vec2 uv, float compare ) { + return step( compare, unpackRGBAToDepth( texture2D( depths, uv ) ) ); + } + vec2 texture2DDistribution( sampler2D shadow, vec2 uv ) { + return unpackRGBATo2Half( texture2D( shadow, uv ) ); + } + float VSMShadow (sampler2D shadow, vec2 uv, float compare ){ + float occlusion = 1.0; + vec2 distribution = texture2DDistribution( shadow, uv ); + float hard_shadow = step( compare , distribution.x ); + if (hard_shadow != 1.0 ) { + float distance = compare - distribution.x ; + float variance = max( 0.00000, distribution.y * distribution.y ); + float softness_probability = variance / (variance + distance * distance ); softness_probability = clamp( ( softness_probability - 0.3 ) / ( 0.95 - 0.3 ), 0.0, 1.0 ); occlusion = clamp( max( hard_shadow, softness_probability ), 0.0, 1.0 ); + } + return occlusion; + } + float getShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord ) { + float shadow = 1.0; + shadowCoord.xyz /= shadowCoord.w; + shadowCoord.z += shadowBias; + bvec4 inFrustumVec = bvec4 ( shadowCoord.x >= 0.0, shadowCoord.x <= 1.0, shadowCoord.y >= 0.0, shadowCoord.y <= 1.0 ); + bool inFrustum = all( inFrustumVec ); + bvec2 frustumTestVec = bvec2( inFrustum, shadowCoord.z <= 1.0 ); + bool frustumTest = all( frustumTestVec ); + if ( frustumTest ) { + #if defined( SHADOWMAP_TYPE_PCF ) + vec2 texelSize = vec2( 1.0 ) / shadowMapSize; + float dx0 = - texelSize.x * shadowRadius; + float dy0 = - texelSize.y * shadowRadius; + float dx1 = + texelSize.x * shadowRadius; + float dy1 = + texelSize.y * shadowRadius; + float dx2 = dx0 / 2.0; + float dy2 = dy0 / 2.0; + float dx3 = dx1 / 2.0; + float dy3 = dy1 / 2.0; + shadow = ( + texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy0 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy0 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy0 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy2 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy2 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy2 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, 0.0 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, 0.0 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, 0.0 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, 0.0 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy3 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy3 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy3 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy1 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy1 ), shadowCoord.z ) + + texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy1 ), shadowCoord.z ) + ) * ( 1.0 / 17.0 ); + #elif defined( SHADOWMAP_TYPE_PCF_SOFT ) + vec2 texelSize = vec2( 1.0 ) / shadowMapSize; + float dx = texelSize.x; + float dy = texelSize.y; + vec2 uv = shadowCoord.xy; + vec2 f = fract( uv * shadowMapSize + 0.5 ); + uv -= f * texelSize; + shadow = ( + texture2DCompare( shadowMap, uv, shadowCoord.z ) + + texture2DCompare( shadowMap, uv + vec2( dx, 0.0 ), shadowCoord.z ) + + texture2DCompare( shadowMap, uv + vec2( 0.0, dy ), shadowCoord.z ) + + texture2DCompare( shadowMap, uv + texelSize, shadowCoord.z ) + + mix( texture2DCompare( shadowMap, uv + vec2( -dx, 0.0 ), shadowCoord.z ), + texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 0.0 ), shadowCoord.z ), + f.x ) + + mix( texture2DCompare( shadowMap, uv + vec2( -dx, dy ), shadowCoord.z ), + texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, dy ), shadowCoord.z ), + f.x ) + + mix( texture2DCompare( shadowMap, uv + vec2( 0.0, -dy ), shadowCoord.z ), + texture2DCompare( shadowMap, uv + vec2( 0.0, 2.0 * dy ), shadowCoord.z ), + f.y ) + + mix( texture2DCompare( shadowMap, uv + vec2( dx, -dy ), shadowCoord.z ), + texture2DCompare( shadowMap, uv + vec2( dx, 2.0 * dy ), shadowCoord.z ), + f.y ) + + mix( mix( texture2DCompare( shadowMap, uv + vec2( -dx, -dy ), shadowCoord.z ), + texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, -dy ), shadowCoord.z ), + f.x ), + mix( texture2DCompare( shadowMap, uv + vec2( -dx, 2.0 * dy ), shadowCoord.z ), + texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 2.0 * dy ), shadowCoord.z ), + f.x ), + f.y ) + ) * ( 1.0 / 9.0 ); + #elif defined( SHADOWMAP_TYPE_VSM ) + shadow = VSMShadow( shadowMap, shadowCoord.xy, shadowCoord.z ); + #else + shadow = texture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z ); + #endif + } + return shadow; + } + vec2 cubeToUV( vec3 v, float texelSizeY ) { + vec3 absV = abs( v ); + float scaleToCube = 1.0 / max( absV.x, max( absV.y, absV.z ) ); + absV *= scaleToCube; + v *= scaleToCube * ( 1.0 - 2.0 * texelSizeY ); + vec2 planar = v.xy; + float almostATexel = 1.5 * texelSizeY; + float almostOne = 1.0 - almostATexel; + if ( absV.z >= almostOne ) { + if ( v.z > 0.0 ) + planar.x = 4.0 - v.x; + } else if ( absV.x >= almostOne ) { + float signX = sign( v.x ); + planar.x = v.z * signX + 2.0 * signX; + } else if ( absV.y >= almostOne ) { + float signY = sign( v.y ); + planar.x = v.x + 2.0 * signY + 2.0; + planar.y = v.z * signY - 2.0; + } + return vec2( 0.125, 0.25 ) * planar + vec2( 0.375, 0.75 ); + } + float getPointShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord, float shadowCameraNear, float shadowCameraFar ) { + vec2 texelSize = vec2( 1.0 ) / ( shadowMapSize * vec2( 4.0, 2.0 ) ); + vec3 lightToPosition = shadowCoord.xyz; + float dp = ( length( lightToPosition ) - shadowCameraNear ) / ( shadowCameraFar - shadowCameraNear ); dp += shadowBias; + vec3 bd3D = normalize( lightToPosition ); + #if defined( SHADOWMAP_TYPE_PCF ) || defined( SHADOWMAP_TYPE_PCF_SOFT ) || defined( SHADOWMAP_TYPE_VSM ) + vec2 offset = vec2( - 1, 1 ) * shadowRadius * texelSize.y; + return ( + texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyy, texelSize.y ), dp ) + + texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyy, texelSize.y ), dp ) + + texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyx, texelSize.y ), dp ) + + texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyx, texelSize.y ), dp ) + + texture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp ) + + texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxy, texelSize.y ), dp ) + + texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxy, texelSize.y ), dp ) + + texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxx, texelSize.y ), dp ) + + texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxx, texelSize.y ), dp ) + ) * ( 1.0 / 9.0 ); + #else + return texture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp ); + #endif + } +#endif`,shadowmap_pars_vertex:`#ifdef USE_SHADOWMAP + #if NUM_DIR_LIGHT_SHADOWS > 0 + uniform mat4 directionalShadowMatrix[ NUM_DIR_LIGHT_SHADOWS ]; + varying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ]; + struct DirectionalLightShadow { + float shadowBias; + float shadowNormalBias; + float shadowRadius; + vec2 shadowMapSize; + }; + uniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ]; + #endif + #if NUM_SPOT_LIGHT_SHADOWS > 0 + uniform mat4 spotShadowMatrix[ NUM_SPOT_LIGHT_SHADOWS ]; + varying vec4 vSpotShadowCoord[ NUM_SPOT_LIGHT_SHADOWS ]; + struct SpotLightShadow { + float shadowBias; + float shadowNormalBias; + float shadowRadius; + vec2 shadowMapSize; + }; + uniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ]; + #endif + #if NUM_POINT_LIGHT_SHADOWS > 0 + uniform mat4 pointShadowMatrix[ NUM_POINT_LIGHT_SHADOWS ]; + varying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ]; + struct PointLightShadow { + float shadowBias; + float shadowNormalBias; + float shadowRadius; + vec2 shadowMapSize; + float shadowCameraNear; + float shadowCameraFar; + }; + uniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ]; + #endif +#endif`,shadowmap_vertex:`#ifdef USE_SHADOWMAP + #if NUM_DIR_LIGHT_SHADOWS > 0 || NUM_SPOT_LIGHT_SHADOWS > 0 || NUM_POINT_LIGHT_SHADOWS > 0 + vec3 shadowWorldNormal = inverseTransformDirection( transformedNormal, viewMatrix ); + vec4 shadowWorldPosition; + #endif + #if NUM_DIR_LIGHT_SHADOWS > 0 + #pragma unroll_loop_start + for ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) { + shadowWorldPosition = worldPosition + vec4( shadowWorldNormal * directionalLightShadows[ i ].shadowNormalBias, 0 ); + vDirectionalShadowCoord[ i ] = directionalShadowMatrix[ i ] * shadowWorldPosition; + } + #pragma unroll_loop_end + #endif + #if NUM_SPOT_LIGHT_SHADOWS > 0 + #pragma unroll_loop_start + for ( int i = 0; i < NUM_SPOT_LIGHT_SHADOWS; i ++ ) { + shadowWorldPosition = worldPosition + vec4( shadowWorldNormal * spotLightShadows[ i ].shadowNormalBias, 0 ); + vSpotShadowCoord[ i ] = spotShadowMatrix[ i ] * shadowWorldPosition; + } + #pragma unroll_loop_end + #endif + #if NUM_POINT_LIGHT_SHADOWS > 0 + #pragma unroll_loop_start + for ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) { + shadowWorldPosition = worldPosition + vec4( shadowWorldNormal * pointLightShadows[ i ].shadowNormalBias, 0 ); + vPointShadowCoord[ i ] = pointShadowMatrix[ i ] * shadowWorldPosition; + } + #pragma unroll_loop_end + #endif +#endif`,shadowmask_pars_fragment:`float getShadowMask() { + float shadow = 1.0; + #ifdef USE_SHADOWMAP + #if NUM_DIR_LIGHT_SHADOWS > 0 + DirectionalLightShadow directionalLight; + #pragma unroll_loop_start + for ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) { + directionalLight = directionalLightShadows[ i ]; + shadow *= receiveShadow ? getShadow( directionalShadowMap[ i ], directionalLight.shadowMapSize, directionalLight.shadowBias, directionalLight.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0; + } + #pragma unroll_loop_end + #endif + #if NUM_SPOT_LIGHT_SHADOWS > 0 + SpotLightShadow spotLight; + #pragma unroll_loop_start + for ( int i = 0; i < NUM_SPOT_LIGHT_SHADOWS; i ++ ) { + spotLight = spotLightShadows[ i ]; + shadow *= receiveShadow ? getShadow( spotShadowMap[ i ], spotLight.shadowMapSize, spotLight.shadowBias, spotLight.shadowRadius, vSpotShadowCoord[ i ] ) : 1.0; + } + #pragma unroll_loop_end + #endif + #if NUM_POINT_LIGHT_SHADOWS > 0 + PointLightShadow pointLight; + #pragma unroll_loop_start + for ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) { + pointLight = pointLightShadows[ i ]; + shadow *= receiveShadow ? getPointShadow( pointShadowMap[ i ], pointLight.shadowMapSize, pointLight.shadowBias, pointLight.shadowRadius, vPointShadowCoord[ i ], pointLight.shadowCameraNear, pointLight.shadowCameraFar ) : 1.0; + } + #pragma unroll_loop_end + #endif + #endif + return shadow; +}`,skinbase_vertex:`#ifdef USE_SKINNING + mat4 boneMatX = getBoneMatrix( skinIndex.x ); + mat4 boneMatY = getBoneMatrix( skinIndex.y ); + mat4 boneMatZ = getBoneMatrix( skinIndex.z ); + mat4 boneMatW = getBoneMatrix( skinIndex.w ); +#endif`,skinning_pars_vertex:`#ifdef USE_SKINNING + uniform mat4 bindMatrix; + uniform mat4 bindMatrixInverse; + uniform highp sampler2D boneTexture; + uniform int boneTextureSize; + mat4 getBoneMatrix( const in float i ) { + float j = i * 4.0; + float x = mod( j, float( boneTextureSize ) ); + float y = floor( j / float( boneTextureSize ) ); + float dx = 1.0 / float( boneTextureSize ); + float dy = 1.0 / float( boneTextureSize ); + y = dy * ( y + 0.5 ); + vec4 v1 = texture2D( boneTexture, vec2( dx * ( x + 0.5 ), y ) ); + vec4 v2 = texture2D( boneTexture, vec2( dx * ( x + 1.5 ), y ) ); + vec4 v3 = texture2D( boneTexture, vec2( dx * ( x + 2.5 ), y ) ); + vec4 v4 = texture2D( boneTexture, vec2( dx * ( x + 3.5 ), y ) ); + mat4 bone = mat4( v1, v2, v3, v4 ); + return bone; + } +#endif`,skinning_vertex:`#ifdef USE_SKINNING + vec4 skinVertex = bindMatrix * vec4( transformed, 1.0 ); + vec4 skinned = vec4( 0.0 ); + skinned += boneMatX * skinVertex * skinWeight.x; + skinned += boneMatY * skinVertex * skinWeight.y; + skinned += boneMatZ * skinVertex * skinWeight.z; + skinned += boneMatW * skinVertex * skinWeight.w; + transformed = ( bindMatrixInverse * skinned ).xyz; +#endif`,skinnormal_vertex:`#ifdef USE_SKINNING + mat4 skinMatrix = mat4( 0.0 ); + skinMatrix += skinWeight.x * boneMatX; + skinMatrix += skinWeight.y * boneMatY; + skinMatrix += skinWeight.z * boneMatZ; + skinMatrix += skinWeight.w * boneMatW; + skinMatrix = bindMatrixInverse * skinMatrix * bindMatrix; + objectNormal = vec4( skinMatrix * vec4( objectNormal, 0.0 ) ).xyz; + #ifdef USE_TANGENT + objectTangent = vec4( skinMatrix * vec4( objectTangent, 0.0 ) ).xyz; + #endif +#endif`,specularmap_fragment:`float specularStrength; +#ifdef USE_SPECULARMAP + vec4 texelSpecular = texture2D( specularMap, vUv ); + specularStrength = texelSpecular.r; +#else + specularStrength = 1.0; +#endif`,specularmap_pars_fragment:`#ifdef USE_SPECULARMAP + uniform sampler2D specularMap; +#endif`,tonemapping_fragment:`#if defined( TONE_MAPPING ) + gl_FragColor.rgb = toneMapping( gl_FragColor.rgb ); +#endif`,tonemapping_pars_fragment:`#ifndef saturate +#define saturate( a ) clamp( a, 0.0, 1.0 ) +#endif +uniform float toneMappingExposure; +vec3 LinearToneMapping( vec3 color ) { + return toneMappingExposure * color; +} +vec3 ReinhardToneMapping( vec3 color ) { + color *= toneMappingExposure; + return saturate( color / ( vec3( 1.0 ) + color ) ); +} +vec3 OptimizedCineonToneMapping( vec3 color ) { + color *= toneMappingExposure; + color = max( vec3( 0.0 ), color - 0.004 ); + return pow( ( color * ( 6.2 * color + 0.5 ) ) / ( color * ( 6.2 * color + 1.7 ) + 0.06 ), vec3( 2.2 ) ); +} +vec3 RRTAndODTFit( vec3 v ) { + vec3 a = v * ( v + 0.0245786 ) - 0.000090537; + vec3 b = v * ( 0.983729 * v + 0.4329510 ) + 0.238081; + return a / b; +} +vec3 ACESFilmicToneMapping( vec3 color ) { + const mat3 ACESInputMat = mat3( + vec3( 0.59719, 0.07600, 0.02840 ), vec3( 0.35458, 0.90834, 0.13383 ), + vec3( 0.04823, 0.01566, 0.83777 ) + ); + const mat3 ACESOutputMat = mat3( + vec3( 1.60475, -0.10208, -0.00327 ), vec3( -0.53108, 1.10813, -0.07276 ), + vec3( -0.07367, -0.00605, 1.07602 ) + ); + color *= toneMappingExposure / 0.6; + color = ACESInputMat * color; + color = RRTAndODTFit( color ); + color = ACESOutputMat * color; + return saturate( color ); +} +vec3 CustomToneMapping( vec3 color ) { return color; }`,transmission_fragment:`#ifdef USE_TRANSMISSION + float transmissionAlpha = 1.0; + float transmissionFactor = transmission; + float thicknessFactor = thickness; + #ifdef USE_TRANSMISSIONMAP + transmissionFactor *= texture2D( transmissionMap, vUv ).r; + #endif + #ifdef USE_THICKNESSMAP + thicknessFactor *= texture2D( thicknessMap, vUv ).g; + #endif + vec3 pos = vWorldPosition; + vec3 v = normalize( cameraPosition - pos ); + vec3 n = inverseTransformDirection( normal, viewMatrix ); + vec4 transmission = getIBLVolumeRefraction( + n, v, roughnessFactor, material.diffuseColor, material.specularColor, material.specularF90, + pos, modelMatrix, viewMatrix, projectionMatrix, ior, thicknessFactor, + attenuationColor, attenuationDistance ); + totalDiffuse = mix( totalDiffuse, transmission.rgb, transmissionFactor ); + transmissionAlpha = mix( transmissionAlpha, transmission.a, transmissionFactor ); +#endif`,transmission_pars_fragment:`#ifdef USE_TRANSMISSION + uniform float transmission; + uniform float thickness; + uniform float attenuationDistance; + uniform vec3 attenuationColor; + #ifdef USE_TRANSMISSIONMAP + uniform sampler2D transmissionMap; + #endif + #ifdef USE_THICKNESSMAP + uniform sampler2D thicknessMap; + #endif + uniform vec2 transmissionSamplerSize; + uniform sampler2D transmissionSamplerMap; + uniform mat4 modelMatrix; + uniform mat4 projectionMatrix; + varying vec3 vWorldPosition; + vec3 getVolumeTransmissionRay( const in vec3 n, const in vec3 v, const in float thickness, const in float ior, const in mat4 modelMatrix ) { + vec3 refractionVector = refract( - v, normalize( n ), 1.0 / ior ); + vec3 modelScale; + modelScale.x = length( vec3( modelMatrix[ 0 ].xyz ) ); + modelScale.y = length( vec3( modelMatrix[ 1 ].xyz ) ); + modelScale.z = length( vec3( modelMatrix[ 2 ].xyz ) ); + return normalize( refractionVector ) * thickness * modelScale; + } + float applyIorToRoughness( const in float roughness, const in float ior ) { + return roughness * clamp( ior * 2.0 - 2.0, 0.0, 1.0 ); + } + vec4 getTransmissionSample( const in vec2 fragCoord, const in float roughness, const in float ior ) { + float framebufferLod = log2( transmissionSamplerSize.x ) * applyIorToRoughness( roughness, ior ); + #ifdef texture2DLodEXT + return texture2DLodEXT( transmissionSamplerMap, fragCoord.xy, framebufferLod ); + #else + return texture2D( transmissionSamplerMap, fragCoord.xy, framebufferLod ); + #endif + } + vec3 applyVolumeAttenuation( const in vec3 radiance, const in float transmissionDistance, const in vec3 attenuationColor, const in float attenuationDistance ) { + if ( attenuationDistance == 0.0 ) { + return radiance; + } else { + vec3 attenuationCoefficient = -log( attenuationColor ) / attenuationDistance; + vec3 transmittance = exp( - attenuationCoefficient * transmissionDistance ); return transmittance * radiance; + } + } + vec4 getIBLVolumeRefraction( const in vec3 n, const in vec3 v, const in float roughness, const in vec3 diffuseColor, + const in vec3 specularColor, const in float specularF90, const in vec3 position, const in mat4 modelMatrix, + const in mat4 viewMatrix, const in mat4 projMatrix, const in float ior, const in float thickness, + const in vec3 attenuationColor, const in float attenuationDistance ) { + vec3 transmissionRay = getVolumeTransmissionRay( n, v, thickness, ior, modelMatrix ); + vec3 refractedRayExit = position + transmissionRay; + vec4 ndcPos = projMatrix * viewMatrix * vec4( refractedRayExit, 1.0 ); + vec2 refractionCoords = ndcPos.xy / ndcPos.w; + refractionCoords += 1.0; + refractionCoords /= 2.0; + vec4 transmittedLight = getTransmissionSample( refractionCoords, roughness, ior ); + vec3 attenuatedColor = applyVolumeAttenuation( transmittedLight.rgb, length( transmissionRay ), attenuationColor, attenuationDistance ); + vec3 F = EnvironmentBRDF( n, v, specularColor, specularF90, roughness ); + return vec4( ( 1.0 - F ) * attenuatedColor * diffuseColor, transmittedLight.a ); + } +#endif`,uv_pars_fragment:`#if ( defined( USE_UV ) && ! defined( UVS_VERTEX_ONLY ) ) + varying vec2 vUv; +#endif`,uv_pars_vertex:`#ifdef USE_UV + #ifdef UVS_VERTEX_ONLY + vec2 vUv; + #else + varying vec2 vUv; + #endif + uniform mat3 uvTransform; +#endif`,uv_vertex:`#ifdef USE_UV + vUv = ( uvTransform * vec3( uv, 1 ) ).xy; +#endif`,uv2_pars_fragment:`#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP ) + varying vec2 vUv2; +#endif`,uv2_pars_vertex:`#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP ) + attribute vec2 uv2; + varying vec2 vUv2; + uniform mat3 uv2Transform; +#endif`,uv2_vertex:`#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP ) + vUv2 = ( uv2Transform * vec3( uv2, 1 ) ).xy; +#endif`,worldpos_vertex:`#if defined( USE_ENVMAP ) || defined( DISTANCE ) || defined ( USE_SHADOWMAP ) || defined ( USE_TRANSMISSION ) + vec4 worldPosition = vec4( transformed, 1.0 ); + #ifdef USE_INSTANCING + worldPosition = instanceMatrix * worldPosition; + #endif + worldPosition = modelMatrix * worldPosition; +#endif`,background_vert:`varying vec2 vUv; +uniform mat3 uvTransform; +void main() { + vUv = ( uvTransform * vec3( uv, 1 ) ).xy; + gl_Position = vec4( position.xy, 1.0, 1.0 ); +}`,background_frag:`uniform sampler2D t2D; +varying vec2 vUv; +void main() { + gl_FragColor = texture2D( t2D, vUv ); + #ifdef DECODE_VIDEO_TEXTURE + gl_FragColor = vec4( mix( pow( gl_FragColor.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), gl_FragColor.rgb * 0.0773993808, vec3( lessThanEqual( gl_FragColor.rgb, vec3( 0.04045 ) ) ) ), gl_FragColor.w ); + #endif + #include + #include +}`,cube_vert:`varying vec3 vWorldDirection; +#include +void main() { + vWorldDirection = transformDirection( position, modelMatrix ); + #include + #include + gl_Position.z = gl_Position.w; +}`,cube_frag:`#include +uniform float opacity; +varying vec3 vWorldDirection; +#include +void main() { + vec3 vReflect = vWorldDirection; + #include + gl_FragColor = envColor; + gl_FragColor.a *= opacity; + #include + #include +}`,depth_vert:`#include +#include +#include +#include +#include +#include +#include +varying vec2 vHighPrecisionZW; +void main() { + #include + #include + #ifdef USE_DISPLACEMENTMAP + #include + #include + #include + #endif + #include + #include + #include + #include + #include + #include + #include + vHighPrecisionZW = gl_Position.zw; +}`,depth_frag:`#if DEPTH_PACKING == 3200 + uniform float opacity; +#endif +#include +#include +#include +#include +#include +#include +#include +#include +varying vec2 vHighPrecisionZW; +void main() { + #include + vec4 diffuseColor = vec4( 1.0 ); + #if DEPTH_PACKING == 3200 + diffuseColor.a = opacity; + #endif + #include + #include + #include + #include + float fragCoordZ = 0.5 * vHighPrecisionZW[0] / vHighPrecisionZW[1] + 0.5; + #if DEPTH_PACKING == 3200 + gl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), opacity ); + #elif DEPTH_PACKING == 3201 + gl_FragColor = packDepthToRGBA( fragCoordZ ); + #endif +}`,distanceRGBA_vert:`#define DISTANCE +varying vec3 vWorldPosition; +#include +#include +#include +#include +#include +#include +void main() { + #include + #include + #ifdef USE_DISPLACEMENTMAP + #include + #include + #include + #endif + #include + #include + #include + #include + #include + #include + #include + vWorldPosition = worldPosition.xyz; +}`,distanceRGBA_frag:`#define DISTANCE +uniform vec3 referencePosition; +uniform float nearDistance; +uniform float farDistance; +varying vec3 vWorldPosition; +#include +#include +#include +#include +#include +#include +#include +void main () { + #include + vec4 diffuseColor = vec4( 1.0 ); + #include + #include + #include + float dist = length( vWorldPosition - referencePosition ); + dist = ( dist - nearDistance ) / ( farDistance - nearDistance ); + dist = saturate( dist ); + gl_FragColor = packDepthToRGBA( dist ); +}`,equirect_vert:`varying vec3 vWorldDirection; +#include +void main() { + vWorldDirection = transformDirection( position, modelMatrix ); + #include + #include +}`,equirect_frag:`uniform sampler2D tEquirect; +varying vec3 vWorldDirection; +#include +void main() { + vec3 direction = normalize( vWorldDirection ); + vec2 sampleUV = equirectUv( direction ); + gl_FragColor = texture2D( tEquirect, sampleUV ); + #include + #include +}`,linedashed_vert:`uniform float scale; +attribute float lineDistance; +varying float vLineDistance; +#include +#include +#include +#include +#include +#include +void main() { + vLineDistance = scale * lineDistance; + #include + #include + #include + #include + #include + #include + #include + #include +}`,linedashed_frag:`uniform vec3 diffuse; +uniform float opacity; +uniform float dashSize; +uniform float totalSize; +varying float vLineDistance; +#include +#include +#include +#include +#include +void main() { + #include + if ( mod( vLineDistance, totalSize ) > dashSize ) { + discard; + } + vec3 outgoingLight = vec3( 0.0 ); + vec4 diffuseColor = vec4( diffuse, opacity ); + #include + #include + outgoingLight = diffuseColor.rgb; + #include + #include + #include + #include + #include +}`,meshbasic_vert:`#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + #include + #include + #include + #if defined ( USE_ENVMAP ) || defined ( USE_SKINNING ) + #include + #include + #include + #include + #include + #endif + #include + #include + #include + #include + #include + #include + #include + #include + #include +}`,meshbasic_frag:`uniform vec3 diffuse; +uniform float opacity; +#ifndef FLAT_SHADED + varying vec3 vNormal; +#endif +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + vec4 diffuseColor = vec4( diffuse, opacity ); + #include + #include + #include + #include + #include + #include + ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) ); + #ifdef USE_LIGHTMAP + vec4 lightMapTexel = texture2D( lightMap, vUv2 ); + reflectedLight.indirectDiffuse += lightMapTexel.rgb * lightMapIntensity * RECIPROCAL_PI; + #else + reflectedLight.indirectDiffuse += vec3( 1.0 ); + #endif + #include + reflectedLight.indirectDiffuse *= diffuseColor.rgb; + vec3 outgoingLight = reflectedLight.indirectDiffuse; + #include + #include + #include + #include + #include + #include + #include +}`,meshlambert_vert:`#define LAMBERT +varying vec3 vLightFront; +varying vec3 vIndirectFront; +#ifdef DOUBLE_SIDED + varying vec3 vLightBack; + varying vec3 vIndirectBack; +#endif +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include +}`,meshlambert_frag:`uniform vec3 diffuse; +uniform vec3 emissive; +uniform float opacity; +varying vec3 vLightFront; +varying vec3 vIndirectFront; +#ifdef DOUBLE_SIDED + varying vec3 vLightBack; + varying vec3 vIndirectBack; +#endif +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + vec4 diffuseColor = vec4( diffuse, opacity ); + ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) ); + vec3 totalEmissiveRadiance = emissive; + #include + #include + #include + #include + #include + #include + #include + #ifdef DOUBLE_SIDED + reflectedLight.indirectDiffuse += ( gl_FrontFacing ) ? vIndirectFront : vIndirectBack; + #else + reflectedLight.indirectDiffuse += vIndirectFront; + #endif + #include + reflectedLight.indirectDiffuse *= BRDF_Lambert( diffuseColor.rgb ); + #ifdef DOUBLE_SIDED + reflectedLight.directDiffuse = ( gl_FrontFacing ) ? vLightFront : vLightBack; + #else + reflectedLight.directDiffuse = vLightFront; + #endif + reflectedLight.directDiffuse *= BRDF_Lambert( diffuseColor.rgb ) * getShadowMask(); + #include + vec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance; + #include + #include + #include + #include + #include + #include + #include +}`,meshmatcap_vert:`#define MATCAP +varying vec3 vViewPosition; +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + vViewPosition = - mvPosition.xyz; +}`,meshmatcap_frag:`#define MATCAP +uniform vec3 diffuse; +uniform float opacity; +uniform sampler2D matcap; +varying vec3 vViewPosition; +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + vec4 diffuseColor = vec4( diffuse, opacity ); + #include + #include + #include + #include + #include + #include + #include + vec3 viewDir = normalize( vViewPosition ); + vec3 x = normalize( vec3( viewDir.z, 0.0, - viewDir.x ) ); + vec3 y = cross( viewDir, x ); + vec2 uv = vec2( dot( x, normal ), dot( y, normal ) ) * 0.495 + 0.5; + #ifdef USE_MATCAP + vec4 matcapColor = texture2D( matcap, uv ); + #else + vec4 matcapColor = vec4( vec3( mix( 0.2, 0.8, uv.y ) ), 1.0 ); + #endif + vec3 outgoingLight = diffuseColor.rgb * matcapColor.rgb; + #include + #include + #include + #include + #include + #include +}`,meshnormal_vert:`#define NORMAL +#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( TANGENTSPACE_NORMALMAP ) + varying vec3 vViewPosition; +#endif +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include +#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( TANGENTSPACE_NORMALMAP ) + vViewPosition = - mvPosition.xyz; +#endif +}`,meshnormal_frag:`#define NORMAL +uniform float opacity; +#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( TANGENTSPACE_NORMALMAP ) + varying vec3 vViewPosition; +#endif +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + #include + #include + #include + gl_FragColor = vec4( packNormalToRGB( normal ), opacity ); + #ifdef OPAQUE + gl_FragColor.a = 1.0; + #endif +}`,meshphong_vert:`#define PHONG +varying vec3 vViewPosition; +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + vViewPosition = - mvPosition.xyz; + #include + #include + #include + #include +}`,meshphong_frag:`#define PHONG +uniform vec3 diffuse; +uniform vec3 emissive; +uniform vec3 specular; +uniform float shininess; +uniform float opacity; +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + vec4 diffuseColor = vec4( diffuse, opacity ); + ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) ); + vec3 totalEmissiveRadiance = emissive; + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + vec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveRadiance; + #include + #include + #include + #include + #include + #include + #include +}`,meshphysical_vert:`#define STANDARD +varying vec3 vViewPosition; +#ifdef USE_TRANSMISSION + varying vec3 vWorldPosition; +#endif +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + vViewPosition = - mvPosition.xyz; + #include + #include + #include +#ifdef USE_TRANSMISSION + vWorldPosition = worldPosition.xyz; +#endif +}`,meshphysical_frag:`#define STANDARD +#ifdef PHYSICAL + #define IOR + #define SPECULAR +#endif +uniform vec3 diffuse; +uniform vec3 emissive; +uniform float roughness; +uniform float metalness; +uniform float opacity; +#ifdef IOR + uniform float ior; +#endif +#ifdef SPECULAR + uniform float specularIntensity; + uniform vec3 specularColor; + #ifdef USE_SPECULARINTENSITYMAP + uniform sampler2D specularIntensityMap; + #endif + #ifdef USE_SPECULARCOLORMAP + uniform sampler2D specularColorMap; + #endif +#endif +#ifdef USE_CLEARCOAT + uniform float clearcoat; + uniform float clearcoatRoughness; +#endif +#ifdef USE_IRIDESCENCE + uniform float iridescence; + uniform float iridescenceIOR; + uniform float iridescenceThicknessMinimum; + uniform float iridescenceThicknessMaximum; +#endif +#ifdef USE_SHEEN + uniform vec3 sheenColor; + uniform float sheenRoughness; + #ifdef USE_SHEENCOLORMAP + uniform sampler2D sheenColorMap; + #endif + #ifdef USE_SHEENROUGHNESSMAP + uniform sampler2D sheenRoughnessMap; + #endif +#endif +varying vec3 vViewPosition; +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + vec4 diffuseColor = vec4( diffuse, opacity ); + ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) ); + vec3 totalEmissiveRadiance = emissive; + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + vec3 totalDiffuse = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse; + vec3 totalSpecular = reflectedLight.directSpecular + reflectedLight.indirectSpecular; + #include + vec3 outgoingLight = totalDiffuse + totalSpecular + totalEmissiveRadiance; + #ifdef USE_SHEEN + float sheenEnergyComp = 1.0 - 0.157 * max3( material.sheenColor ); + outgoingLight = outgoingLight * sheenEnergyComp + sheenSpecular; + #endif + #ifdef USE_CLEARCOAT + float dotNVcc = saturate( dot( geometry.clearcoatNormal, geometry.viewDir ) ); + vec3 Fcc = F_Schlick( material.clearcoatF0, material.clearcoatF90, dotNVcc ); + outgoingLight = outgoingLight * ( 1.0 - material.clearcoat * Fcc ) + clearcoatSpecular * material.clearcoat; + #endif + #include + #include + #include + #include + #include + #include +}`,meshtoon_vert:`#define TOON +varying vec3 vViewPosition; +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + vViewPosition = - mvPosition.xyz; + #include + #include + #include +}`,meshtoon_frag:`#define TOON +uniform vec3 diffuse; +uniform vec3 emissive; +uniform float opacity; +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + vec4 diffuseColor = vec4( diffuse, opacity ); + ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) ); + vec3 totalEmissiveRadiance = emissive; + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + vec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance; + #include + #include + #include + #include + #include + #include +}`,points_vert:`uniform float size; +uniform float scale; +#include +#include +#include +#include +#include +#include +void main() { + #include + #include + #include + #include + #include + gl_PointSize = size; + #ifdef USE_SIZEATTENUATION + bool isPerspective = isPerspectiveMatrix( projectionMatrix ); + if ( isPerspective ) gl_PointSize *= ( scale / - mvPosition.z ); + #endif + #include + #include + #include + #include +}`,points_frag:`uniform vec3 diffuse; +uniform float opacity; +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + vec3 outgoingLight = vec3( 0.0 ); + vec4 diffuseColor = vec4( diffuse, opacity ); + #include + #include + #include + #include + outgoingLight = diffuseColor.rgb; + #include + #include + #include + #include + #include +}`,shadow_vert:`#include +#include +#include +#include +#include +void main() { + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include +}`,shadow_frag:`uniform vec3 color; +uniform float opacity; +#include +#include +#include +#include +#include +#include +#include +void main() { + gl_FragColor = vec4( color, opacity * ( 1.0 - getShadowMask() ) ); + #include + #include + #include +}`,sprite_vert:`uniform float rotation; +uniform vec2 center; +#include +#include +#include +#include +#include +void main() { + #include + vec4 mvPosition = modelViewMatrix * vec4( 0.0, 0.0, 0.0, 1.0 ); + vec2 scale; + scale.x = length( vec3( modelMatrix[ 0 ].x, modelMatrix[ 0 ].y, modelMatrix[ 0 ].z ) ); + scale.y = length( vec3( modelMatrix[ 1 ].x, modelMatrix[ 1 ].y, modelMatrix[ 1 ].z ) ); + #ifndef USE_SIZEATTENUATION + bool isPerspective = isPerspectiveMatrix( projectionMatrix ); + if ( isPerspective ) scale *= - mvPosition.z; + #endif + vec2 alignedPosition = ( position.xy - ( center - vec2( 0.5 ) ) ) * scale; + vec2 rotatedPosition; + rotatedPosition.x = cos( rotation ) * alignedPosition.x - sin( rotation ) * alignedPosition.y; + rotatedPosition.y = sin( rotation ) * alignedPosition.x + cos( rotation ) * alignedPosition.y; + mvPosition.xy += rotatedPosition; + gl_Position = projectionMatrix * mvPosition; + #include + #include + #include +}`,sprite_frag:`uniform vec3 diffuse; +uniform float opacity; +#include +#include +#include +#include +#include +#include +#include +#include +void main() { + #include + vec3 outgoingLight = vec3( 0.0 ); + vec4 diffuseColor = vec4( diffuse, opacity ); + #include + #include + #include + #include + outgoingLight = diffuseColor.rgb; + #include + #include + #include + #include +}`},ot={common:{diffuse:{value:new tt(16777215)},opacity:{value:1},map:{value:null},uvTransform:{value:new Ke},uv2Transform:{value:new Ke},alphaMap:{value:null},alphaTest:{value:0}},specularmap:{specularMap:{value:null}},envmap:{envMap:{value:null},flipEnvMap:{value:-1},reflectivity:{value:1},ior:{value:1.5},refractionRatio:{value:.98}},aomap:{aoMap:{value:null},aoMapIntensity:{value:1}},lightmap:{lightMap:{value:null},lightMapIntensity:{value:1}},emissivemap:{emissiveMap:{value:null}},bumpmap:{bumpMap:{value:null},bumpScale:{value:1}},normalmap:{normalMap:{value:null},normalScale:{value:new j(1,1)}},displacementmap:{displacementMap:{value:null},displacementScale:{value:1},displacementBias:{value:0}},roughnessmap:{roughnessMap:{value:null}},metalnessmap:{metalnessMap:{value:null}},gradientmap:{gradientMap:{value:null}},fog:{fogDensity:{value:25e-5},fogNear:{value:1},fogFar:{value:2e3},fogColor:{value:new tt(16777215)}},lights:{ambientLightColor:{value:[]},lightProbe:{value:[]},directionalLights:{value:[],properties:{direction:{},color:{}}},directionalLightShadows:{value:[],properties:{shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},directionalShadowMap:{value:[]},directionalShadowMatrix:{value:[]},spotLights:{value:[],properties:{color:{},position:{},direction:{},distance:{},coneCos:{},penumbraCos:{},decay:{}}},spotLightShadows:{value:[],properties:{shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},spotShadowMap:{value:[]},spotShadowMatrix:{value:[]},pointLights:{value:[],properties:{color:{},position:{},decay:{},distance:{}}},pointLightShadows:{value:[],properties:{shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{},shadowCameraNear:{},shadowCameraFar:{}}},pointShadowMap:{value:[]},pointShadowMatrix:{value:[]},hemisphereLights:{value:[],properties:{direction:{},skyColor:{},groundColor:{}}},rectAreaLights:{value:[],properties:{color:{},position:{},width:{},height:{}}},ltc_1:{value:null},ltc_2:{value:null}},points:{diffuse:{value:new tt(16777215)},opacity:{value:1},size:{value:1},scale:{value:1},map:{value:null},alphaMap:{value:null},alphaTest:{value:0},uvTransform:{value:new Ke}},sprite:{diffuse:{value:new tt(16777215)},opacity:{value:1},center:{value:new j(.5,.5)},rotation:{value:0},map:{value:null},alphaMap:{value:null},alphaTest:{value:0},uvTransform:{value:new Ke}}},oi={basic:{uniforms:Ne([ot.common,ot.specularmap,ot.envmap,ot.aomap,ot.lightmap,ot.fog]),vertexShader:dt.meshbasic_vert,fragmentShader:dt.meshbasic_frag},lambert:{uniforms:Ne([ot.common,ot.specularmap,ot.envmap,ot.aomap,ot.lightmap,ot.emissivemap,ot.fog,ot.lights,{emissive:{value:new tt(0)}}]),vertexShader:dt.meshlambert_vert,fragmentShader:dt.meshlambert_frag},phong:{uniforms:Ne([ot.common,ot.specularmap,ot.envmap,ot.aomap,ot.lightmap,ot.emissivemap,ot.bumpmap,ot.normalmap,ot.displacementmap,ot.fog,ot.lights,{emissive:{value:new tt(0)},specular:{value:new tt(1118481)},shininess:{value:30}}]),vertexShader:dt.meshphong_vert,fragmentShader:dt.meshphong_frag},standard:{uniforms:Ne([ot.common,ot.envmap,ot.aomap,ot.lightmap,ot.emissivemap,ot.bumpmap,ot.normalmap,ot.displacementmap,ot.roughnessmap,ot.metalnessmap,ot.fog,ot.lights,{emissive:{value:new tt(0)},roughness:{value:1},metalness:{value:0},envMapIntensity:{value:1}}]),vertexShader:dt.meshphysical_vert,fragmentShader:dt.meshphysical_frag},toon:{uniforms:Ne([ot.common,ot.aomap,ot.lightmap,ot.emissivemap,ot.bumpmap,ot.normalmap,ot.displacementmap,ot.gradientmap,ot.fog,ot.lights,{emissive:{value:new tt(0)}}]),vertexShader:dt.meshtoon_vert,fragmentShader:dt.meshtoon_frag},matcap:{uniforms:Ne([ot.common,ot.bumpmap,ot.normalmap,ot.displacementmap,ot.fog,{matcap:{value:null}}]),vertexShader:dt.meshmatcap_vert,fragmentShader:dt.meshmatcap_frag},points:{uniforms:Ne([ot.points,ot.fog]),vertexShader:dt.points_vert,fragmentShader:dt.points_frag},dashed:{uniforms:Ne([ot.common,ot.fog,{scale:{value:1},dashSize:{value:1},totalSize:{value:2}}]),vertexShader:dt.linedashed_vert,fragmentShader:dt.linedashed_frag},depth:{uniforms:Ne([ot.common,ot.displacementmap]),vertexShader:dt.depth_vert,fragmentShader:dt.depth_frag},normal:{uniforms:Ne([ot.common,ot.bumpmap,ot.normalmap,ot.displacementmap,{opacity:{value:1}}]),vertexShader:dt.meshnormal_vert,fragmentShader:dt.meshnormal_frag},sprite:{uniforms:Ne([ot.sprite,ot.fog]),vertexShader:dt.sprite_vert,fragmentShader:dt.sprite_frag},background:{uniforms:{uvTransform:{value:new Ke},t2D:{value:null}},vertexShader:dt.background_vert,fragmentShader:dt.background_frag},cube:{uniforms:Ne([ot.envmap,{opacity:{value:1}}]),vertexShader:dt.cube_vert,fragmentShader:dt.cube_frag},equirect:{uniforms:{tEquirect:{value:null}},vertexShader:dt.equirect_vert,fragmentShader:dt.equirect_frag},distanceRGBA:{uniforms:Ne([ot.common,ot.displacementmap,{referencePosition:{value:new M},nearDistance:{value:1},farDistance:{value:1e3}}]),vertexShader:dt.distanceRGBA_vert,fragmentShader:dt.distanceRGBA_frag},shadow:{uniforms:Ne([ot.lights,ot.fog,{color:{value:new tt(0)},opacity:{value:1}}]),vertexShader:dt.shadow_vert,fragmentShader:dt.shadow_frag}};function pv(s,t,e,i,n,r){const a=new tt(0);let o,l,h=n===!0?0:1,c=null,u=0,p=null;function m(f,g){e.buffers.color.setClear(f.r,f.g,f.b,g,r)}return{getClearColor:function(){return a},setClearColor:function(f,g=1){a.set(f),h=g,m(a,h)},getClearAlpha:function(){return h},setClearAlpha:function(f){h=f,m(a,h)},render:function(f,g){let _=!1,v=g.isScene===!0?g.background:null;v&&v.isTexture&&(v=t.get(v));const x=s.xr,y=x.getSession&&x.getSession();y&&y.environmentBlendMode==="additive"&&(v=null),v===null?m(a,h):v&&v.isColor&&(m(v,1),_=!0),(s.autoClear||_)&&s.clear(s.autoClearColor,s.autoClearDepth,s.autoClearStencil),v&&(v.isCubeTexture||v.mapping===xs)?(l===void 0&&(l=new lt(new oe(1,1,1),new Zt({name:"BackgroundCubeMaterial",uniforms:Tr(oi.cube.uniforms),vertexShader:oi.cube.vertexShader,fragmentShader:oi.cube.fragmentShader,side:pi,depthTest:!1,depthWrite:!1,fog:!1})),l.geometry.deleteAttribute("normal"),l.geometry.deleteAttribute("uv"),l.onBeforeRender=function(b,S,w){this.matrixWorld.copyPosition(w.matrixWorld)},Object.defineProperty(l.material,"envMap",{get:function(){return this.uniforms.envMap.value}}),i.update(l)),l.material.uniforms.envMap.value=v,l.material.uniforms.flipEnvMap.value=v.isCubeTexture&&v.isRenderTargetTexture===!1?-1:1,c===v&&u===v.version&&p===s.toneMapping||(l.material.needsUpdate=!0,c=v,u=v.version,p=s.toneMapping),l.layers.enableAll(),f.unshift(l,l.geometry,l.material,0,0,null)):v&&v.isTexture&&(o===void 0&&(o=new lt(new Rs(2,2),new Zt({name:"BackgroundMaterial",uniforms:Tr(oi.background.uniforms),vertexShader:oi.background.vertexShader,fragmentShader:oi.background.fragmentShader,side:Fn,depthTest:!1,depthWrite:!1,fog:!1})),o.geometry.deleteAttribute("normal"),Object.defineProperty(o.material,"map",{get:function(){return this.uniforms.t2D.value}}),i.update(o)),o.material.uniforms.t2D.value=v,v.matrixAutoUpdate===!0&&v.updateMatrix(),o.material.uniforms.uvTransform.value.copy(v.matrix),c===v&&u===v.version&&p===s.toneMapping||(o.material.needsUpdate=!0,c=v,u=v.version,p=s.toneMapping),o.layers.enableAll(),f.unshift(o,o.geometry,o.material,0,0,null))}}}function mv(s,t,e,i){const n=s.getParameter(34921),r=i.isWebGL2?null:t.get("OES_vertex_array_object"),a=i.isWebGL2||r!==null,o={},l=m(null);let h=l,c=!1;function u(S){return i.isWebGL2?s.bindVertexArray(S):r.bindVertexArrayOES(S)}function p(S){return i.isWebGL2?s.deleteVertexArray(S):r.deleteVertexArrayOES(S)}function m(S){const w=[],C=[],L=[];for(let T=0;T=0){const Z=Q[H];let mt=k[H];if(mt===void 0&&(H==="instanceMatrix"&&z.instanceMatrix&&(mt=z.instanceMatrix),H==="instanceColor"&&z.instanceColor&&(mt=z.instanceColor)),Z===void 0||Z.attribute!==mt||mt&&Z.data!==mt.data)return!0;X++}return h.attributesNum!==X||h.index!==F}(S,L,C,T),E&&function(z,B,O,F){const Q={},k=B.attributes;let X=0;const U=O.getAttributes();for(const H in U)if(U[H].location>=0){let Z=k[H];Z===void 0&&(H==="instanceMatrix"&&z.instanceMatrix&&(Z=z.instanceMatrix),H==="instanceColor"&&z.instanceColor&&(Z=z.instanceColor));const mt={};mt.attribute=Z,Z&&Z.data&&(mt.data=Z.data),Q[H]=mt,X++}h.attributes=Q,h.attributesNum=X,h.index=F}(S,L,C,T)}else{const I=w.wireframe===!0;h.geometry===L.id&&h.program===C.id&&h.wireframe===I||(h.geometry=L.id,h.program=C.id,h.wireframe=I,E=!0)}T!==null&&e.update(T,34963),(E||c)&&(c=!1,function(I,z,B,O){if(i.isWebGL2===!1&&(I.isInstancedMesh||O.isInstancedBufferGeometry)&&t.get("ANGLE_instanced_arrays")===null)return;f();const F=O.attributes,Q=B.getAttributes(),k=z.defaultAttributeValues;for(const X in Q){const U=Q[X];if(U.location>=0){let H=F[X];if(H===void 0&&(X==="instanceMatrix"&&I.instanceMatrix&&(H=I.instanceMatrix),X==="instanceColor"&&I.instanceColor&&(H=I.instanceColor)),H!==void 0){const Z=H.normalized,mt=H.itemSize,_t=e.get(H);if(_t===void 0)continue;const Mt=_t.buffer,wt=_t.type,R=_t.bytesPerElement;if(H.isInterleavedBufferAttribute){const A=H.data,G=A.stride,it=H.offset;if(A.isInstancedInterleavedBuffer){for(let V=0;V0&&s.getShaderPrecisionFormat(35632,36338).precision>0)return"highp";b="mediump"}return b==="mediump"&&s.getShaderPrecisionFormat(35633,36337).precision>0&&s.getShaderPrecisionFormat(35632,36337).precision>0?"mediump":"lowp"}const r=typeof WebGL2RenderingContext<"u"&&s instanceof WebGL2RenderingContext||typeof WebGL2ComputeRenderingContext<"u"&&s instanceof WebGL2ComputeRenderingContext;let a=e.precision!==void 0?e.precision:"highp";const o=n(a);o!==a&&(console.warn("THREE.WebGLRenderer:",a,"not supported, using",o,"instead."),a=o);const l=r||t.has("WEBGL_draw_buffers"),h=e.logarithmicDepthBuffer===!0,c=s.getParameter(34930),u=s.getParameter(35660),p=s.getParameter(3379),m=s.getParameter(34076),f=s.getParameter(34921),g=s.getParameter(36347),_=s.getParameter(36348),v=s.getParameter(36349),x=u>0,y=r||t.has("OES_texture_float");return{isWebGL2:r,drawBuffers:l,getMaxAnisotropy:function(){if(i!==void 0)return i;if(t.has("EXT_texture_filter_anisotropic")===!0){const b=t.get("EXT_texture_filter_anisotropic");i=s.getParameter(b.MAX_TEXTURE_MAX_ANISOTROPY_EXT)}else i=0;return i},getMaxPrecision:n,precision:a,logarithmicDepthBuffer:h,maxTextures:c,maxVertexTextures:u,maxTextureSize:p,maxCubemapSize:m,maxAttributes:f,maxVertexUniforms:g,maxVaryings:_,maxFragmentUniforms:v,vertexTextures:x,floatFragmentTextures:y,floatVertexTextures:x&&y,maxSamples:r?s.getParameter(36183):0}}function _v(s){const t=this;let e=null,i=0,n=!1,r=!1;const a=new ai,o=new Ke,l={value:null,needsUpdate:!1};function h(){l.value!==e&&(l.value=e,l.needsUpdate=i>0),t.numPlanes=i,t.numIntersection=0}function c(u,p,m,f){const g=u!==null?u.length:0;let _=null;if(g!==0){if(_=l.value,f!==!0||_===null){const v=m+4*g,x=p.matrixWorldInverse;o.getNormalMatrix(x),(_===null||_.length0){const o=new hv(a.height/2);return o.fromEquirectangularTexture(s,n),t.set(n,o),n.addEventListener("dispose",i),e(o.texture,n.mapping)}return null}}}return n},dispose:function(){t=new WeakMap}}}oi.physical={uniforms:Ne([oi.standard.uniforms,{clearcoat:{value:0},clearcoatMap:{value:null},clearcoatRoughness:{value:0},clearcoatRoughnessMap:{value:null},clearcoatNormalScale:{value:new j(1,1)},clearcoatNormalMap:{value:null},iridescence:{value:0},iridescenceMap:{value:null},iridescenceIOR:{value:1.3},iridescenceThicknessMinimum:{value:100},iridescenceThicknessMaximum:{value:400},iridescenceThicknessMap:{value:null},sheen:{value:0},sheenColor:{value:new tt(0)},sheenColorMap:{value:null},sheenRoughness:{value:1},sheenRoughnessMap:{value:null},transmission:{value:0},transmissionMap:{value:null},transmissionSamplerSize:{value:new j},transmissionSamplerMap:{value:null},thickness:{value:0},thicknessMap:{value:null},attenuationDistance:{value:0},attenuationColor:{value:new tt(0)},specularIntensity:{value:1},specularIntensityMap:{value:null},specularColor:{value:new tt(1,1,1)},specularColorMap:{value:null}}]),vertexShader:dt.meshphysical_vert,fragmentShader:dt.meshphysical_frag};class Ra extends cp{constructor(t=-1,e=1,i=1,n=-1,r=.1,a=2e3){super(),this.isOrthographicCamera=!0,this.type="OrthographicCamera",this.zoom=1,this.view=null,this.left=t,this.right=e,this.top=i,this.bottom=n,this.near=r,this.far=a,this.updateProjectionMatrix()}copy(t,e){return super.copy(t,e),this.left=t.left,this.right=t.right,this.top=t.top,this.bottom=t.bottom,this.near=t.near,this.far=t.far,this.zoom=t.zoom,this.view=t.view===null?null:Object.assign({},t.view),this}setViewOffset(t,e,i,n,r,a){this.view===null&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=t,this.view.fullHeight=e,this.view.offsetX=i,this.view.offsetY=n,this.view.width=r,this.view.height=a,this.updateProjectionMatrix()}clearViewOffset(){this.view!==null&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const t=(this.right-this.left)/(2*this.zoom),e=(this.top-this.bottom)/(2*this.zoom),i=(this.right+this.left)/2,n=(this.top+this.bottom)/2;let r=i-t,a=i+t,o=n+e,l=n-e;if(this.view!==null&&this.view.enabled){const h=(this.right-this.left)/this.view.fullWidth/this.zoom,c=(this.top-this.bottom)/this.view.fullHeight/this.zoom;r+=h*this.view.offsetX,a=r+h*this.view.width,o-=c*this.view.offsetY,l=o-c*this.view.height}this.projectionMatrix.makeOrthographic(r,a,o,l,this.near,this.far),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(t){const e=super.toJSON(t);return e.object.zoom=this.zoom,e.object.left=this.left,e.object.right=this.right,e.object.top=this.top,e.object.bottom=this.bottom,e.object.near=this.near,e.object.far=this.far,this.view!==null&&(e.object.view=Object.assign({},this.view)),e}}const Ar=4,dp=[.125,.215,.35,.446,.526,.582],Ds=20,nc=new Ra,pp=new tt;let Da=null;const Ls=(1+Math.sqrt(5))/2,Pr=1/Ls,mp=[new M(1,1,1),new M(-1,1,1),new M(1,1,-1),new M(-1,1,-1),new M(0,Ls,Pr),new M(0,Ls,-Pr),new M(Pr,0,Ls),new M(-Pr,0,Ls),new M(Ls,Pr,0),new M(-Ls,Pr,0)];class La{constructor(t){this._renderer=t,this._pingPongRenderTarget=null,this._lodMax=0,this._cubeSize=0,this._lodPlanes=[],this._sizeLods=[],this._sigmas=[],this._blurMaterial=null,this._cubemapMaterial=null,this._equirectMaterial=null,this._compileMaterial(this._blurMaterial)}fromScene(t,e=0,i=.1,n=100,r=null,a=null){return Da=this._renderer.getRenderTarget(),r||(r=this._allocateTargets()),a&&(this._pingPongRenderTarget=a),this._setSize(256),r.depthBuffer=!0,this._sceneToCubeUV(t,i,n,r),e>0&&this._blur(r,0,0,e),this._applyPMREM(r),this._cleanup(r),r}prepareForRenderTarget(t,e=null,i=256){this._setSize(i);const{_lodMax:n}=this;({sizeLods:this._sizeLods,lodPlanes:this._lodPlanes,sigmas:this._sigmas}=fp(n));const r=3*Math.max(this._cubeSize,112),a=4*this._cubeSize;this._blurMaterial=_p(n,r,a),t.setSize(r,a),e&&e.setSize(r,a)}fromSceneToRenderTarget(t,e,i,n=0,r=.1,a=100){return Da=this._renderer.getRenderTarget(),this._pingPongRenderTarget=i,this._sceneToCubeUV(t,r,a,e),n>0&&this._blur(e,0,0,n),this._applyPMREM(e),this._renderer.setRenderTarget(Da),e.scissorTest=!1,Ia(e,0,0,e.width,e.height),e}fromEquirectangular(t,e=null){return this._fromTexture(t,e)}fromCubemap(t,e=null){return this._fromTexture(t,e)}compileCubemapShader(){this._cubemapMaterial===null&&(this._cubemapMaterial=xp(),this._compileMaterial(this._cubemapMaterial))}compileEquirectangularShader(){this._equirectMaterial===null&&(this._equirectMaterial=vp(),this._compileMaterial(this._equirectMaterial))}dispose(){this._dispose(),this._cubemapMaterial!==null&&this._cubemapMaterial.dispose(),this._equirectMaterial!==null&&this._equirectMaterial.dispose()}_setSize(t){this._lodMax=Math.floor(Math.log2(t)),this._cubeSize=Math.pow(2,this._lodMax)}_dispose(){this._blurMaterial!==null&&this._blurMaterial.dispose(),this._pingPongRenderTarget!==null&&this._pingPongRenderTarget.dispose();for(let t=0;t2?v:0,v,v),l.setRenderTarget(n),m&&l.render(p,r),l.render(t,r)}p.geometry.dispose(),p.material.dispose(),l.toneMapping=c,l.autoClear=h,t.background=f}_textureToCubeUV(t,e){const i=this._renderer,n=t.mapping===lr||t.mapping===hr;n?(this._cubemapMaterial===null&&(this._cubemapMaterial=xp()),this._cubemapMaterial.uniforms.flipEnvMap.value=t.isRenderTargetTexture===!1?-1:1):this._equirectMaterial===null&&(this._equirectMaterial=vp());const r=n?this._cubemapMaterial:this._equirectMaterial,a=new lt(this._lodPlanes[0],r);r.uniforms.envMap.value=t;const o=this._cubeSize;Ia(e,0,0,3*o,2*o),i.setRenderTarget(e),i.render(a,nc)}_applyPMREM(t){const e=this._renderer,i=e.autoClear;e.autoClear=!1;for(let n=1;nDs&&console.warn(`sigmaRadians, ${r}, is too large and will clip, as it requested ${g} samples when the maximum is set to ${Ds}`);const _=[];let v=0;for(let b=0;bx-Ar?n-x+Ar:0),4*(this._cubeSize-y),3*y,2*y),l.setRenderTarget(e),l.render(c,nc)}}function fp(s){const t=[],e=[],i=[];let n=s;const r=s-Ar+1+dp.length;for(let a=0;as-Ar?l=dp[a-s+Ar-1]:a===0&&(l=0),i.push(l);const h=1/(o-2),c=-h,u=1+h,p=[c,c,u,c,u,u,c,c,u,u,c,u],m=6,f=6,g=3,_=2,v=1,x=new Float32Array(g*f*m),y=new Float32Array(_*f*m),b=new Float32Array(v*f*m);for(let w=0;w2?0:-1,T=[C,L,0,C+2/3,L,0,C+2/3,L+1,0,C,L,0,C+2/3,L+1,0,C,L+1,0];x.set(T,g*f*w),y.set(p,_*f*w);const E=[w,w,w,w,w,w];b.set(E,v*f*w)}const S=new Pt;S.setAttribute("position",new se(x,g)),S.setAttribute("uv",new se(y,_)),S.setAttribute("faceIndex",new se(b,v)),t.push(S),n>Ar&&n--}return{lodPlanes:t,sizeLods:e,sigmas:i}}function gp(s,t,e){const i=new de(s,t,e);return i.texture.mapping=xs,i.texture.name="PMREM.cubeUv",i.scissorTest=!0,i}function Ia(s,t,e,i,n){s.viewport.set(t,e,i,n),s.scissor.set(t,e,i,n)}function _p(s,t,e){const i=new Float32Array(Ds),n=new M(0,1,0);return new Zt({name:"SphericalGaussianBlur",defines:{n:Ds,CUBEUV_TEXEL_WIDTH:1/t,CUBEUV_TEXEL_HEIGHT:1/e,CUBEUV_MAX_MIP:`${s}.0`},uniforms:{envMap:{value:null},samples:{value:1},weights:{value:i},latitudinal:{value:!1},dTheta:{value:0},mipInt:{value:0},poleAxis:{value:n}},vertexShader:sc(),fragmentShader:` + + precision mediump float; + precision mediump int; + + varying vec3 vOutputDirection; + + uniform sampler2D envMap; + uniform int samples; + uniform float weights[ n ]; + uniform bool latitudinal; + uniform float dTheta; + uniform float mipInt; + uniform vec3 poleAxis; + + #define ENVMAP_TYPE_CUBE_UV + #include + + vec3 getSample( float theta, vec3 axis ) { + + float cosTheta = cos( theta ); + // Rodrigues' axis-angle rotation + vec3 sampleDirection = vOutputDirection * cosTheta + + cross( axis, vOutputDirection ) * sin( theta ) + + axis * dot( axis, vOutputDirection ) * ( 1.0 - cosTheta ); + + return bilinearCubeUV( envMap, sampleDirection, mipInt ); + + } + + void main() { + + vec3 axis = latitudinal ? poleAxis : cross( poleAxis, vOutputDirection ); + + if ( all( equal( axis, vec3( 0.0 ) ) ) ) { + + axis = vec3( vOutputDirection.z, 0.0, - vOutputDirection.x ); + + } + + axis = normalize( axis ); + + gl_FragColor = vec4( 0.0, 0.0, 0.0, 1.0 ); + gl_FragColor.rgb += weights[ 0 ] * getSample( 0.0, axis ); + + for ( int i = 1; i < n; i++ ) { + + if ( i >= samples ) { + + break; + + } + + float theta = dTheta * float( i ); + gl_FragColor.rgb += weights[ i ] * getSample( -1.0 * theta, axis ); + gl_FragColor.rgb += weights[ i ] * getSample( theta, axis ); + + } + + } + `,blending:Bn,depthTest:!1,depthWrite:!1})}function vp(){return new Zt({name:"EquirectangularToCubeUV",uniforms:{envMap:{value:null}},vertexShader:sc(),fragmentShader:` + + precision mediump float; + precision mediump int; + + varying vec3 vOutputDirection; + + uniform sampler2D envMap; + + #include + + void main() { + + vec3 outputDirection = normalize( vOutputDirection ); + vec2 uv = equirectUv( outputDirection ); + + gl_FragColor = vec4( texture2D ( envMap, uv ).rgb, 1.0 ); + + } + `,blending:Bn,depthTest:!1,depthWrite:!1})}function xp(){return new Zt({name:"CubemapToCubeUV",uniforms:{envMap:{value:null},flipEnvMap:{value:-1}},vertexShader:sc(),fragmentShader:` + + precision mediump float; + precision mediump int; + + uniform float flipEnvMap; + + varying vec3 vOutputDirection; + + uniform samplerCube envMap; + + void main() { + + gl_FragColor = textureCube( envMap, vec3( flipEnvMap * vOutputDirection.x, vOutputDirection.yz ) ); + + } + `,blending:Bn,depthTest:!1,depthWrite:!1})}function sc(){return` + + precision mediump float; + precision mediump int; + + attribute float faceIndex; + + varying vec3 vOutputDirection; + + mat3 getRotationMatrix(vec3 axis, float angle) { + axis = normalize(axis); + float s = sin(angle); + float c = cos(angle); + float oc = 1.0 - c; + + return mat3(oc * axis.x * axis.x + c, oc * axis.x * axis.y - axis.z * s, oc * axis.z * axis.x + axis.y * s, + oc * axis.x * axis.y + axis.z * s, oc * axis.y * axis.y + c, oc * axis.y * axis.z - axis.x * s, + oc * axis.z * axis.x - axis.y * s, oc * axis.y * axis.z + axis.x * s, oc * axis.z * axis.z + c); + } + // RH coordinate system; PMREM face-indexing convention + vec3 getDirection( vec2 uv, float face ) { + + uv = 2.0 * uv - 1.0; + + vec3 direction = vec3( uv, 1.0 ); + + if ( face == 0.0 ) { + + direction = direction.zyx; // ( 1, v, u ) pos x + + } else if ( face == 1.0 ) { + + direction = direction.xzy; + direction.xz *= -1.0; // ( -u, 1, -v ) pos y + + } else if ( face == 2.0 ) { + + direction.x *= -1.0; // ( -u, v, 1 ) pos z + + } else if ( face == 3.0 ) { + + direction = direction.zyx; + direction.xz *= -1.0; // ( -1, v, -u ) neg x + + } else if ( face == 4.0 ) { + + direction = direction.xzy; + direction.xy *= -1.0; // ( -u, -1, v ) neg y + + } else if ( face == 5.0 ) { + + direction.z *= -1.0; // ( u, v, -1 ) neg z + + } + mat3 rotationMatrix = getRotationMatrix(vec3(1.0, 0.0, 0.0), 1.57); + direction = rotationMatrix * direction; + return direction; + + } + + void main() { + + vOutputDirection = getDirection( uv, faceIndex ); + gl_Position = vec4( position, 1.0 ); + + } + `}function xv(s){let t=new WeakMap,e=null;function i(n){const r=n.target;r.removeEventListener("dispose",i);const a=t.get(r);a!==void 0&&(t.delete(r),a.dispose())}return{get:function(n){if(n&&n.isTexture){const r=n.mapping,a=r===Do||r===Mh,o=r===lr||r===hr;if(a||o){if(n.isRenderTargetTexture&&n.needsPMREMUpdate===!0){n.needsPMREMUpdate=!1;let l=t.get(n);return e===null&&(e=new La(s)),l=a?e.fromEquirectangular(n,l):e.fromCubemap(n,l),t.set(n,l),l.texture}if(t.has(n))return t.get(n).texture;{const l=n.image;if(a&&l&&l.height>0||o&&l&&function(h){let c=0;const u=6;for(let p=0;pt.maxTextureSize&&(I=Math.ceil(E/t.maxTextureSize),E=t.maxTextureSize);const z=new Float32Array(E*I*4*f),B=new Kd(z,E,I,f);B.type=Ve,B.needsUpdate=!0;const O=4*T;for(let F=0;F0)return s;const n=t*e;let r=Sp[n];if(r===void 0&&(r=new Float32Array(n),Sp[n]=r),t!==0){i.toArray(r,0);for(let a=1,o=0;a!==t;++a)o+=e,s[a].toArray(r,o)}return r}function je(s,t){if(s.length!==t.length)return!1;for(let e=0,i=s.length;e":" "} ${f}: ${h[m]}`)}return c.join(` +`)}(s.getShaderSource(t),a)}return n}function _x(s,t){const e=function(i){switch(i){case un:return["Linear","( value )"];case Bt:return["sRGB","( value )"];default:return console.warn("THREE.WebGLProgram: Unsupported encoding:",i),["Linear","( value )"]}}(t);return"vec4 "+s+"( vec4 value ) { return LinearTo"+e[0]+e[1]+"; }"}function vx(s,t){let e;switch(t){case P0:e="Linear";break;case yd:e="Reinhard";break;case R0:e="OptimizedCineon";break;case D0:e="ACESFilmic";break;case L0:e="Custom";break;default:console.warn("THREE.WebGLProgram: Unsupported toneMapping:",t),e="Linear"}return"vec3 "+s+"( vec3 color ) { return "+e+"ToneMapping( color ); }"}function Oa(s){return s!==""}function Lp(s,t){return s.replace(/NUM_DIR_LIGHTS/g,t.numDirLights).replace(/NUM_SPOT_LIGHTS/g,t.numSpotLights).replace(/NUM_RECT_AREA_LIGHTS/g,t.numRectAreaLights).replace(/NUM_POINT_LIGHTS/g,t.numPointLights).replace(/NUM_HEMI_LIGHTS/g,t.numHemiLights).replace(/NUM_DIR_LIGHT_SHADOWS/g,t.numDirLightShadows).replace(/NUM_SPOT_LIGHT_SHADOWS/g,t.numSpotLightShadows).replace(/NUM_POINT_LIGHT_SHADOWS/g,t.numPointLightShadows)}function Ip(s,t){return s.replace(/NUM_CLIPPING_PLANES/g,t.numClippingPlanes).replace(/UNION_CLIPPING_PLANES/g,t.numClippingPlanes-t.numClipIntersection)}const xx=/^[ \t]*#include +<([\w\d./]+)>/gm;function oc(s){return s.replace(xx,yx)}function yx(s,t){const e=dt[t];if(e===void 0)throw new Error("Can not resolve #include <"+t+">");return oc(e)}const bx=/#pragma unroll_loop[\s]+?for \( int i \= (\d+)\; i < (\d+)\; i \+\+ \) \{([\s\S]+?)(?=\})\}/g,Mx=/#pragma unroll_loop_start\s+for\s*\(\s*int\s+i\s*=\s*(\d+)\s*;\s*i\s*<\s*(\d+)\s*;\s*i\s*\+\+\s*\)\s*{([\s\S]+?)}\s+#pragma unroll_loop_end/g;function Op(s){return s.replace(Mx,zp).replace(bx,wx)}function wx(s,t,e,i){return console.warn("WebGLProgram: #pragma unroll_loop shader syntax is deprecated. Please use #pragma unroll_loop_start syntax instead."),zp(s,t,e,i)}function zp(s,t,e,i){let n="";for(let r=parseInt(t);r0&&(_+=` +`),v=[m,f].filter(Oa).join(` +`),v.length>0&&(v+=` +`)):(_=[kp(e),"#define SHADER_NAME "+e.shaderName,f,e.instancing?"#define USE_INSTANCING":"",e.instancingColor?"#define USE_INSTANCING_COLOR":"",e.supportsVertexTextures?"#define VERTEX_TEXTURES":"",e.useFog&&e.fog?"#define USE_FOG":"",e.useFog&&e.fogExp2?"#define FOG_EXP2":"",e.map?"#define USE_MAP":"",e.envMap?"#define USE_ENVMAP":"",e.envMap?"#define "+c:"",e.lightMap?"#define USE_LIGHTMAP":"",e.aoMap?"#define USE_AOMAP":"",e.emissiveMap?"#define USE_EMISSIVEMAP":"",e.bumpMap?"#define USE_BUMPMAP":"",e.normalMap?"#define USE_NORMALMAP":"",e.normalMap&&e.objectSpaceNormalMap?"#define OBJECTSPACE_NORMALMAP":"",e.normalMap&&e.tangentSpaceNormalMap?"#define TANGENTSPACE_NORMALMAP":"",e.clearcoatMap?"#define USE_CLEARCOATMAP":"",e.clearcoatRoughnessMap?"#define USE_CLEARCOAT_ROUGHNESSMAP":"",e.clearcoatNormalMap?"#define USE_CLEARCOAT_NORMALMAP":"",e.iridescenceMap?"#define USE_IRIDESCENCEMAP":"",e.iridescenceThicknessMap?"#define USE_IRIDESCENCE_THICKNESSMAP":"",e.displacementMap&&e.supportsVertexTextures?"#define USE_DISPLACEMENTMAP":"",e.specularMap?"#define USE_SPECULARMAP":"",e.specularIntensityMap?"#define USE_SPECULARINTENSITYMAP":"",e.specularColorMap?"#define USE_SPECULARCOLORMAP":"",e.roughnessMap?"#define USE_ROUGHNESSMAP":"",e.metalnessMap?"#define USE_METALNESSMAP":"",e.alphaMap?"#define USE_ALPHAMAP":"",e.transmission?"#define USE_TRANSMISSION":"",e.transmissionMap?"#define USE_TRANSMISSIONMAP":"",e.thicknessMap?"#define USE_THICKNESSMAP":"",e.sheenColorMap?"#define USE_SHEENCOLORMAP":"",e.sheenRoughnessMap?"#define USE_SHEENROUGHNESSMAP":"",e.vertexTangents?"#define USE_TANGENT":"",e.vertexColors?"#define USE_COLOR":"",e.vertexAlphas?"#define USE_COLOR_ALPHA":"",e.vertexUvs?"#define USE_UV":"",e.uvsVertexOnly?"#define UVS_VERTEX_ONLY":"",e.flatShading?"#define FLAT_SHADED":"",e.skinning?"#define USE_SKINNING":"",e.morphTargets?"#define USE_MORPHTARGETS":"",e.morphNormals&&e.flatShading===!1?"#define USE_MORPHNORMALS":"",e.morphColors&&e.isWebGL2?"#define USE_MORPHCOLORS":"",e.morphTargetsCount>0&&e.isWebGL2?"#define MORPHTARGETS_TEXTURE":"",e.morphTargetsCount>0&&e.isWebGL2?"#define MORPHTARGETS_TEXTURE_STRIDE "+e.morphTextureStride:"",e.morphTargetsCount>0&&e.isWebGL2?"#define MORPHTARGETS_COUNT "+e.morphTargetsCount:"",e.doubleSided?"#define DOUBLE_SIDED":"",e.flipSided?"#define FLIP_SIDED":"",e.shadowMapEnabled?"#define USE_SHADOWMAP":"",e.shadowMapEnabled?"#define "+l:"",e.sizeAttenuation?"#define USE_SIZEATTENUATION":"",e.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",e.logarithmicDepthBuffer&&e.rendererExtensionFragDepth?"#define USE_LOGDEPTHBUF_EXT":"","uniform mat4 modelMatrix;","uniform mat4 modelViewMatrix;","uniform mat4 projectionMatrix;","uniform mat4 viewMatrix;","uniform mat3 normalMatrix;","uniform vec3 cameraPosition;","uniform bool isOrthographic;","#ifdef USE_INSTANCING"," attribute mat4 instanceMatrix;","#endif","#ifdef USE_INSTANCING_COLOR"," attribute vec3 instanceColor;","#endif","attribute vec3 position;","attribute vec3 normal;","attribute vec2 uv;","#ifdef USE_TANGENT"," attribute vec4 tangent;","#endif","#if defined( USE_COLOR_ALPHA )"," attribute vec4 color;","#elif defined( USE_COLOR )"," attribute vec3 color;","#endif","#if ( defined( USE_MORPHTARGETS ) && ! defined( MORPHTARGETS_TEXTURE ) )"," attribute vec3 morphTarget0;"," attribute vec3 morphTarget1;"," attribute vec3 morphTarget2;"," attribute vec3 morphTarget3;"," #ifdef USE_MORPHNORMALS"," attribute vec3 morphNormal0;"," attribute vec3 morphNormal1;"," attribute vec3 morphNormal2;"," attribute vec3 morphNormal3;"," #else"," attribute vec3 morphTarget4;"," attribute vec3 morphTarget5;"," attribute vec3 morphTarget6;"," attribute vec3 morphTarget7;"," #endif","#endif","#ifdef USE_SKINNING"," attribute vec4 skinIndex;"," attribute vec4 skinWeight;","#endif",` +`].filter(Oa).join(` +`),v=[m,kp(e),"#define SHADER_NAME "+e.shaderName,f,e.useFog&&e.fog?"#define USE_FOG":"",e.useFog&&e.fogExp2?"#define FOG_EXP2":"",e.map?"#define USE_MAP":"",e.matcap?"#define USE_MATCAP":"",e.envMap?"#define USE_ENVMAP":"",e.envMap?"#define "+h:"",e.envMap?"#define "+c:"",e.envMap?"#define "+u:"",p?"#define CUBEUV_TEXEL_WIDTH "+p.texelWidth:"",p?"#define CUBEUV_TEXEL_HEIGHT "+p.texelHeight:"",p?"#define CUBEUV_MAX_MIP "+p.maxMip+".0":"",e.lightMap?"#define USE_LIGHTMAP":"",e.aoMap?"#define USE_AOMAP":"",e.emissiveMap?"#define USE_EMISSIVEMAP":"",e.bumpMap?"#define USE_BUMPMAP":"",e.normalMap?"#define USE_NORMALMAP":"",e.normalMap&&e.objectSpaceNormalMap?"#define OBJECTSPACE_NORMALMAP":"",e.normalMap&&e.tangentSpaceNormalMap?"#define TANGENTSPACE_NORMALMAP":"",e.clearcoat?"#define USE_CLEARCOAT":"",e.clearcoatMap?"#define USE_CLEARCOATMAP":"",e.clearcoatRoughnessMap?"#define USE_CLEARCOAT_ROUGHNESSMAP":"",e.clearcoatNormalMap?"#define USE_CLEARCOAT_NORMALMAP":"",e.iridescence?"#define USE_IRIDESCENCE":"",e.iridescenceMap?"#define USE_IRIDESCENCEMAP":"",e.iridescenceThicknessMap?"#define USE_IRIDESCENCE_THICKNESSMAP":"",e.specularMap?"#define USE_SPECULARMAP":"",e.specularIntensityMap?"#define USE_SPECULARINTENSITYMAP":"",e.specularColorMap?"#define USE_SPECULARCOLORMAP":"",e.roughnessMap?"#define USE_ROUGHNESSMAP":"",e.metalnessMap?"#define USE_METALNESSMAP":"",e.alphaMap?"#define USE_ALPHAMAP":"",e.alphaTest?"#define USE_ALPHATEST":"",e.sheen?"#define USE_SHEEN":"",e.sheenColorMap?"#define USE_SHEENCOLORMAP":"",e.sheenRoughnessMap?"#define USE_SHEENROUGHNESSMAP":"",e.transmission?"#define USE_TRANSMISSION":"",e.transmissionMap?"#define USE_TRANSMISSIONMAP":"",e.thicknessMap?"#define USE_THICKNESSMAP":"",e.decodeVideoTexture?"#define DECODE_VIDEO_TEXTURE":"",e.vertexTangents?"#define USE_TANGENT":"",e.vertexColors||e.instancingColor?"#define USE_COLOR":"",e.vertexAlphas?"#define USE_COLOR_ALPHA":"",e.vertexUvs?"#define USE_UV":"",e.uvsVertexOnly?"#define UVS_VERTEX_ONLY":"",e.gradientMap?"#define USE_GRADIENTMAP":"",e.flatShading?"#define FLAT_SHADED":"",e.doubleSided?"#define DOUBLE_SIDED":"",e.flipSided?"#define FLIP_SIDED":"",e.shadowMapEnabled?"#define USE_SHADOWMAP":"",e.shadowMapEnabled?"#define "+l:"",e.premultipliedAlpha?"#define PREMULTIPLIED_ALPHA":"",e.physicallyCorrectLights?"#define PHYSICALLY_CORRECT_LIGHTS":"",e.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",e.logarithmicDepthBuffer&&e.rendererExtensionFragDepth?"#define USE_LOGDEPTHBUF_EXT":"","uniform mat4 viewMatrix;","uniform vec3 cameraPosition;","uniform bool isOrthographic;",e.toneMapping!==cn?"#define TONE_MAPPING":"",e.toneMapping!==cn?dt.tonemapping_pars_fragment:"",e.toneMapping!==cn?vx("toneMapping",e.toneMapping):"",e.dithering?"#define DITHERING":"",e.opaque?"#define OPAQUE":"",dt.encodings_pars_fragment,_x("linearToOutputTexel",e.outputEncoding),e.useDepthPacking?"#define DEPTH_PACKING "+e.depthPacking:"",` +`].filter(Oa).join(` +`)),s.onShaderBeforeResolve){const T=s.onShaderBeforeResolve(a,o,e);a=T.vertexShader,o=T.fragmentShader}a=oc(a),a=Lp(a,e),a=Ip(a,e),o=oc(o),o=Lp(o,e),o=Ip(o,e),a=Op(a),o=Op(o),e.isWebGL2&&e.isRawShaderMaterial!==!0&&(x=`#version 300 es +`,_=["precision mediump sampler2DArray;","#define attribute in","#define varying out","#define texture2D texture"].join(` +`)+` +`+_,v=["#define varying in",e.glslVersion===Rh?"":"layout(location = 0) out highp vec4 pc_fragColor;",e.glslVersion===Rh?"":"#define gl_FragColor pc_fragColor","#define gl_FragDepthEXT gl_FragDepth","#define texture2D texture","#define textureCube texture","#define texture2DProj textureProj","#define texture2DLodEXT textureLod","#define texture2DProjLodEXT textureProjLod","#define textureCubeLodEXT textureLod","#define texture2DGradEXT textureGrad","#define texture2DProjGradEXT textureProjGrad","#define textureCubeGradEXT textureGrad"].join(` +`)+` +`+v);let y=x+_+a,b=x+v+o;if(s.onShaderBeforeCompile){const T=s.onShaderBeforeCompile(y,b,e);y=T.vertexShader,b=T.fragmentShader}const S=Rp(n,35633,y),w=Rp(n,35632,b);if(n.attachShader(g,S),n.attachShader(g,w),e.index0AttributeName!==void 0?n.bindAttribLocation(g,0,e.index0AttributeName):e.morphTargets===!0&&n.bindAttribLocation(g,0,"position"),n.linkProgram(g),s.debug.checkShaderErrors){const T=n.getProgramInfoLog(g).trim(),E=n.getShaderInfoLog(S).trim(),I=n.getShaderInfoLog(w).trim();let z=!0,B=!0;if(n.getProgramParameter(g,35714)===!1){z=!1;const O=Dp(n,S,"vertex"),F=Dp(n,w,"fragment");console.error("THREE.WebGLProgram: Shader Error "+n.getError()+" - VALIDATE_STATUS "+n.getProgramParameter(g,35715)+` + +Program Info Log: `+T+` +`+O+` +`+F)}else T!==""?console.warn("THREE.WebGLProgram: Program Info Log:",T):E!==""&&I!==""||(B=!1);B&&(this.diagnostics={runnable:z,programLog:T,vertexShader:{log:E,prefix:_},fragmentShader:{log:I,prefix:v}})}let C,L;return n.deleteShader(S),n.deleteShader(w),this.getUniforms=function(){return C===void 0&&(C=new nl(n,g)),C},this.getAttributes=function(){return L===void 0&&(L=function(T,E){const I={},z=T.getProgramParameter(E,35721);for(let B=0;B0,U=g.clearcoat>0,H=g.iridescence>0;return{isWebGL2:c,shaderID:T,shaderName:g.type,vertexShader:z,fragmentShader:B,defines:g.defines,customVertexShaderID:O,customFragmentShaderID:F,isRawShaderMaterial:g.isRawShaderMaterial===!0,glslVersion:g.glslVersion,precision:m,instancing:y.isInstancedMesh===!0,instancingColor:y.isInstancedMesh===!0&&y.instanceColor!==null,supportsVertexTextures:p,outputEncoding:k===null?s.outputEncoding:k.isXRRenderTarget===!0?k.texture.encoding:un,map:!!g.map,matcap:!!g.matcap,envMap:!!C,envMapMode:C&&C.mapping,envMapCubeUVHeight:L,lightMap:!!g.lightMap,aoMap:!!g.aoMap,emissiveMap:!!g.emissiveMap,bumpMap:!!g.bumpMap,normalMap:!!g.normalMap,objectSpaceNormalMap:g.normalMapType===J0,tangentSpaceNormalMap:g.normalMapType===Hn,decodeVideoTexture:!!g.map&&g.map.isVideoTexture===!0&&g.map.encoding===Bt,clearcoat:U,clearcoatMap:U&&!!g.clearcoatMap,clearcoatRoughnessMap:U&&!!g.clearcoatRoughnessMap,clearcoatNormalMap:U&&!!g.clearcoatNormalMap,iridescence:H,iridescenceMap:H&&!!g.iridescenceMap,iridescenceThicknessMap:H&&!!g.iridescenceThicknessMap,displacementMap:!!g.displacementMap,roughnessMap:!!g.roughnessMap,metalnessMap:!!g.metalnessMap,specularMap:!!g.specularMap,specularIntensityMap:!!g.specularIntensityMap,specularColorMap:!!g.specularColorMap,opaque:g.transparent===!1&&g.blending===ar,alphaMap:!!g.alphaMap,alphaTest:X,gradientMap:!!g.gradientMap,sheen:g.sheen>0,sheenColorMap:!!g.sheenColorMap,sheenRoughnessMap:!!g.sheenRoughnessMap,transmission:g.transmission>0,transmissionMap:!!g.transmissionMap,thicknessMap:!!g.thicknessMap,combine:g.combine,vertexTangents:!!g.normalMap&&!!S.attributes.tangent,vertexColors:g.vertexColors,vertexAlphas:g.vertexColors===!0&&!!S.attributes.color&&S.attributes.color.itemSize===4,vertexUvs:!!(g.map||g.bumpMap||g.normalMap||g.specularMap||g.alphaMap||g.emissiveMap||g.roughnessMap||g.metalnessMap||g.clearcoatMap||g.clearcoatRoughnessMap||g.clearcoatNormalMap||g.iridescenceMap||g.iridescenceThicknessMap||g.displacementMap||g.transmissionMap||g.thicknessMap||g.specularIntensityMap||g.specularColorMap||g.sheenColorMap||g.sheenRoughnessMap),uvsVertexOnly:!(g.map||g.bumpMap||g.normalMap||g.specularMap||g.alphaMap||g.emissiveMap||g.roughnessMap||g.metalnessMap||g.clearcoatNormalMap||g.iridescenceMap||g.iridescenceThicknessMap||g.transmission>0||g.transmissionMap||g.thicknessMap||g.specularIntensityMap||g.specularColorMap||g.sheen>0||g.sheenColorMap||g.sheenRoughnessMap||!g.displacementMap),fog:!!b,useFog:g.fog===!0,fogExp2:b&&b.isFogExp2,flatShading:!!g.flatShading,sizeAttenuation:g.sizeAttenuation,logarithmicDepthBuffer:u,skinning:y.isSkinnedMesh===!0,morphTargets:S.morphAttributes.position!==void 0,morphNormals:S.morphAttributes.normal!==void 0,morphColors:S.morphAttributes.color!==void 0,morphTargetsCount:I,morphTextureStride:Q,numDirLights:_.directional.length,numPointLights:_.point.length,numSpotLights:_.spot.length,numRectAreaLights:_.rectArea.length,numHemiLights:_.hemi.length,numDirLightShadows:_.directionalShadowMap.length,numPointLightShadows:_.pointShadowMap.length,numSpotLightShadows:_.spotShadowMap.length,numClippingPlanes:a.numPlanes,numClipIntersection:a.numIntersection,dithering:g.dithering,shadowMapEnabled:s.shadowMap.enabled&&v.length>0,shadowMapType:s.shadowMap.type,toneMapping:g.toneMapped?s.toneMapping:cn,physicallyCorrectLights:s.physicallyCorrectLights,premultipliedAlpha:g.premultipliedAlpha,doubleSided:g.side===ce,flipSided:g.side===pi,useDepthPacking:!!g.depthPacking,depthPacking:g.depthPacking||0,index0AttributeName:g.index0AttributeName,extensionDerivatives:g.extensions&&g.extensions.derivatives,extensionFragDepth:g.extensions&&g.extensions.fragDepth,extensionDrawBuffers:g.extensions&&g.extensions.drawBuffers,extensionShaderTextureLOD:g.extensions&&g.extensions.shaderTextureLOD,rendererExtensionFragDepth:c||i.has("EXT_frag_depth"),rendererExtensionDrawBuffers:c||i.has("WEBGL_draw_buffers"),rendererExtensionShaderTextureLod:c||i.has("EXT_shader_texture_lod"),customProgramCacheKey:g.customProgramCacheKey(),extraProgramCacheKey:s.extraProgramCacheKey}},getProgramCacheKey:function(g){const _=[];if(g.shaderID?_.push(g.shaderID):(_.push(g.customVertexShaderID),_.push(g.customFragmentShaderID)),g.defines!==void 0)for(const v in g.defines)_.push(v),_.push(g.defines[v]);return g.isRawShaderMaterial===!1&&(function(v,x){v.push(x.precision),v.push(x.outputEncoding),v.push(x.envMapMode),v.push(x.envMapCubeUVHeight),v.push(x.combine),v.push(x.vertexUvs),v.push(x.fogExp2),v.push(x.sizeAttenuation),v.push(x.morphTargetsCount),v.push(x.morphAttributeCount),v.push(x.numDirLights),v.push(x.numPointLights),v.push(x.numSpotLights),v.push(x.numHemiLights),v.push(x.numRectAreaLights),v.push(x.numDirLightShadows),v.push(x.numPointLightShadows),v.push(x.numSpotLightShadows),v.push(x.shadowMapType),v.push(x.toneMapping),v.push(x.numClippingPlanes),v.push(x.numClipIntersection),v.push(x.depthPacking)}(_,g),function(v,x){o.disableAll(),x.isWebGL2&&o.enable(0),x.supportsVertexTextures&&o.enable(1),x.instancing&&o.enable(2),x.instancingColor&&o.enable(3),x.map&&o.enable(4),x.matcap&&o.enable(5),x.envMap&&o.enable(6),x.lightMap&&o.enable(7),x.aoMap&&o.enable(8),x.emissiveMap&&o.enable(9),x.bumpMap&&o.enable(10),x.normalMap&&o.enable(11),x.objectSpaceNormalMap&&o.enable(12),x.tangentSpaceNormalMap&&o.enable(13),x.clearcoat&&o.enable(14),x.clearcoatMap&&o.enable(15),x.clearcoatRoughnessMap&&o.enable(16),x.clearcoatNormalMap&&o.enable(17),x.iridescence&&o.enable(18),x.iridescenceMap&&o.enable(19),x.iridescenceThicknessMap&&o.enable(20),x.displacementMap&&o.enable(21),x.specularMap&&o.enable(22),x.roughnessMap&&o.enable(23),x.metalnessMap&&o.enable(24),x.gradientMap&&o.enable(25),x.alphaMap&&o.enable(26),x.alphaTest&&o.enable(27),x.vertexColors&&o.enable(28),x.vertexAlphas&&o.enable(29),x.vertexUvs&&o.enable(30),x.vertexTangents&&o.enable(31),x.uvsVertexOnly&&o.enable(32),x.fog&&o.enable(33),v.push(o.mask),o.disableAll(),x.useFog&&o.enable(0),x.flatShading&&o.enable(1),x.logarithmicDepthBuffer&&o.enable(2),x.skinning&&o.enable(3),x.morphTargets&&o.enable(4),x.morphNormals&&o.enable(5),x.morphColors&&o.enable(6),x.premultipliedAlpha&&o.enable(7),x.shadowMapEnabled&&o.enable(8),x.physicallyCorrectLights&&o.enable(9),x.doubleSided&&o.enable(10),x.flipSided&&o.enable(11),x.useDepthPacking&&o.enable(12),x.dithering&&o.enable(13),x.specularIntensityMap&&o.enable(14),x.specularColorMap&&o.enable(15),x.transmission&&o.enable(16),x.transmissionMap&&o.enable(17),x.thicknessMap&&o.enable(18),x.sheen&&o.enable(19),x.sheenColorMap&&o.enable(20),x.sheenRoughnessMap&&o.enable(21),x.decodeVideoTexture&&o.enable(22),x.opaque&&o.enable(23),v.push(o.mask)}(_,g),_.push(s.outputEncoding)),_.push(g.customProgramCacheKey),s.extraProgramCacheKey&&_.push(s.extraProgramCacheKey),_.join()},getUniforms:function(g){const _=f[g.type];let v;if(_){const x=oi[_];v=pt.clone(x.uniforms)}else v=g.uniforms;return v},acquireProgram:function(g,_){let v;for(let x=0,y=h.length;x0?i.push(p):l.transparent===!0?n.push(p):e.push(p)},unshift:function(a,o,l,h,c,u){const p=r(a,o,l,h,c,u);l.transmission>0?i.unshift(p):l.transparent===!0?n.unshift(p):e.unshift(p)},finish:function(){for(let a=t,o=s.length;a1&&e.sort(a||Rx),i.length>1&&i.sort(o||Np),n.length>1&&n.sort(o||Np)}}}function Dx(){let s=new WeakMap;return{get:function(t,e){let i;return s.has(t)===!1?(i=new Up,s.set(t,[i])):e>=s.get(t).length?(i=new Up,s.get(t).push(i)):i=s.get(t)[e],i},dispose:function(){s=new WeakMap}}}function Lx(){const s={};return{get:function(t){if(s[t.id]!==void 0)return s[t.id];let e;switch(t.type){case"DirectionalLight":e={direction:new M,color:new tt};break;case"SpotLight":e={position:new M,direction:new M,color:new tt,distance:0,coneCos:0,penumbraCos:0,decay:0};break;case"PointLight":e={position:new M,color:new tt,distance:0,decay:0};break;case"HemisphereLight":e={direction:new M,skyColor:new tt,groundColor:new tt};break;case"RectAreaLight":e={color:new tt,position:new M,halfWidth:new M,halfHeight:new M}}return s[t.id]=e,e}}}let Ix=0;function Ox(s,t){return(t.castShadow?1:0)-(s.castShadow?1:0)}function zx(s,t){const e=new Lx,i=function(){const l={};return{get:function(h){if(l[h.id]!==void 0)return l[h.id];let c;switch(h.type){case"DirectionalLight":case"SpotLight":c={shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new j};break;case"PointLight":c={shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new j,shadowCameraNear:1,shadowCameraFar:1e3}}return l[h.id]=c,c}}}(),n={version:0,hash:{directionalLength:-1,pointLength:-1,spotLength:-1,rectAreaLength:-1,hemiLength:-1,numDirectionalShadows:-1,numPointShadows:-1,numSpotShadows:-1},ambient:[0,0,0],probe:[],directional:[],directionalShadow:[],directionalShadowMap:[],directionalShadowMatrix:[],spot:[],spotShadow:[],spotShadowMap:[],spotShadowMatrix:[],rectArea:[],rectAreaLTC1:null,rectAreaLTC2:null,point:[],pointShadow:[],pointShadowMap:[],pointShadowMatrix:[],hemi:[]};for(let l=0;l<9;l++)n.probe.push(new M);const r=new M,a=new rt,o=new rt;return{setup:function(l,h){let c=0,u=0,p=0;for(let C=0;C<9;C++)n.probe[C].set(0,0,0);let m=0,f=0,g=0,_=0,v=0,x=0,y=0,b=0;l.sort(Ox);const S=h!==!0?Math.PI:1;for(let C=0,L=l.length;C0&&(t.isWebGL2||s.has("OES_texture_float_linear")===!0?(n.rectAreaLTC1=ot.LTC_FLOAT_1,n.rectAreaLTC2=ot.LTC_FLOAT_2):s.has("OES_texture_half_float_linear")===!0?(n.rectAreaLTC1=ot.LTC_HALF_1,n.rectAreaLTC2=ot.LTC_HALF_2):console.error("THREE.WebGLRenderer: Unable to use RectAreaLight. Missing WebGL extensions.")),n.ambient[0]=c,n.ambient[1]=u,n.ambient[2]=p;const w=n.hash;w.directionalLength===m&&w.pointLength===f&&w.spotLength===g&&w.rectAreaLength===_&&w.hemiLength===v&&w.numDirectionalShadows===x&&w.numPointShadows===y&&w.numSpotShadows===b||(n.directional.length=m,n.spot.length=g,n.rectArea.length=_,n.point.length=f,n.hemi.length=v,n.directionalShadow.length=x,n.directionalShadowMap.length=x,n.pointShadow.length=y,n.pointShadowMap.length=y,n.spotShadow.length=b,n.spotShadowMap.length=b,n.directionalShadowMatrix.length=x,n.pointShadowMatrix.length=y,n.spotShadowMatrix.length=b,w.directionalLength=m,w.pointLength=f,w.spotLength=g,w.rectAreaLength=_,w.hemiLength=v,w.numDirectionalShadows=x,w.numPointShadows=y,w.numSpotShadows=b,n.version=Ix++)},setupView:function(l,h){let c=0,u=0,p=0,m=0,f=0;const g=h.matrixWorldInverse;for(let _=0,v=l.length;_=e.get(i).length?(r=new Fp(s,t),e.get(i).push(r)):r=e.get(i)[n],r},dispose:function(){e=new WeakMap}}}class Bp extends ve{constructor(t){super(),this.isMeshDepthMaterial=!0,this.type="MeshDepthMaterial",this.depthPacking=3200,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.setValues(t)}copy(t){return super.copy(t),this.depthPacking=t.depthPacking,this.map=t.map,this.alphaMap=t.alphaMap,this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this}}class Vp extends ve{constructor(t){super(),this.isMeshDistanceMaterial=!0,this.type="MeshDistanceMaterial",this.referencePosition=new M,this.nearDistance=1,this.farDistance=1e3,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.setValues(t)}copy(t){return super.copy(t),this.referencePosition.copy(t.referencePosition),this.nearDistance=t.nearDistance,this.farDistance=t.farDistance,this.map=t.map,this.alphaMap=t.alphaMap,this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this}}const Nx=`void main() { + gl_Position = vec4( position, 1.0 ); +}`,Ux=`uniform sampler2D shadow_pass; +uniform vec2 resolution; +uniform float radius; +#include +void main() { + const float samples = float( VSM_SAMPLES ); + float mean = 0.0; + float squared_mean = 0.0; + float uvStride = samples <= 1.0 ? 0.0 : 2.0 / ( samples - 1.0 ); + float uvStart = samples <= 1.0 ? 0.0 : - 1.0; + for ( float i = 0.0; i < samples; i ++ ) { + float uvOffset = uvStart + i * uvStride; + #ifdef HORIZONTAL_PASS + vec2 distribution = unpackRGBATo2Half( texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( uvOffset, 0.0 ) * radius ) / resolution ) ); + mean += distribution.x; + squared_mean += distribution.y * distribution.y + distribution.x * distribution.x; + #else + float depth = unpackRGBAToDepth( texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( 0.0, uvOffset ) * radius ) / resolution ) ); + mean += depth; + squared_mean += depth * depth; + #endif + } + mean = mean / samples; + squared_mean = squared_mean / samples; + float std_dev = sqrt( squared_mean - mean * mean ); + gl_FragColor = pack2HalfToRGBA( vec2( mean, std_dev ) ); +}`;function Fx(s,t,e){let i=new Pa;const n=new j,r=new j,a=new Lt,o=new Bp({depthPacking:Z0}),l=new Vp,h={},c=e.maxTextureSize,u={0:pi,1:Fn,2:ce},p=new Zt({defines:{VSM_SAMPLES:8},uniforms:{shadow_pass:{value:null},resolution:{value:new j},radius:{value:4}},vertexShader:Nx,fragmentShader:Ux}),m=p.clone();m.defines.HORIZONTAL_PASS=1;const f=new Pt;f.setAttribute("position",new se(new Float32Array([-1,-1,.5,3,-1,.5,-1,3,.5]),3));const g=new lt(f,p),_=this;function v(b,S){const w=t.update(g);p.defines.VSM_SAMPLES!==b.blurSamples&&(p.defines.VSM_SAMPLES=b.blurSamples,m.defines.VSM_SAMPLES=b.blurSamples,p.needsUpdate=!0,m.needsUpdate=!0),p.uniforms.shadow_pass.value=b.map.texture,p.uniforms.resolution.value=b.mapSize,p.uniforms.radius.value=b.radius,s.setRenderTarget(b.mapPass),s.clear(),s.renderBufferDirect(S,null,w,p,g,null),m.uniforms.shadow_pass.value=b.mapPass.texture,m.uniforms.resolution.value=b.mapSize,m.uniforms.radius.value=b.radius,s.setRenderTarget(b.map),s.clear(),s.renderBufferDirect(S,null,w,m,g,null)}function x(b,S,w,C,L,T){let E=null;const I=w.isPointLight===!0?b.customDistanceMaterial:b.customDepthMaterial;if(E=I!==void 0?I:w.isPointLight===!0?l:o,s.localClippingEnabled&&S.clipShadows===!0&&S.clippingPlanes.length!==0||S.displacementMap&&S.displacementScale!==0||S.alphaMap&&S.alphaTest>0){const z=E.uuid,B=S.uuid;let O=h[z];O===void 0&&(O={},h[z]=O);let F=O[B];F===void 0&&(F=E.clone(),O[B]=F),E=F}return E.visible=S.visible,E.wireframe=S.wireframe,E.side=T===va?S.shadowSide!==null?S.shadowSide:S.side:S.shadowSide!==null?S.shadowSide:u[S.side],E.alphaMap=S.alphaMap,E.alphaTest=S.alphaTest,E.clipShadows=S.clipShadows,E.clippingPlanes=S.clippingPlanes,E.clipIntersection=S.clipIntersection,E.displacementMap=S.displacementMap,E.displacementScale=S.displacementScale,E.displacementBias=S.displacementBias,E.wireframeLinewidth=S.wireframeLinewidth,E.linewidth=S.linewidth,w.isPointLight===!0&&E.isMeshDistanceMaterial===!0&&(E.referencePosition.setFromMatrixPosition(w.matrixWorld),E.nearDistance=C,E.farDistance=L),E}function y(b,S,w,C,L){if(b.visible===!1)return;if(b.layers.test(S.layers)&&(b.isMesh||b.isLine||b.isPoints)&&(b.castShadow||b.receiveShadow&&L===va)&&(!b.frustumCulled||i.intersectsObject(b))){b.modelViewMatrix.multiplyMatrices(w.matrixWorldInverse,b.matrixWorld);const E=t.update(b),I=b.material;if(Array.isArray(I)){const z=E.groups;for(let B=0,O=z.length;Bc||n.y>c)&&(n.x>c&&(r.x=Math.floor(c/F.x),n.x=r.x*F.x,O.mapSize.x=r.x),n.y>c&&(r.y=Math.floor(c/F.y),n.y=r.y*F.y,O.mapSize.y=r.y)),O.map!==null||O.isPointLightShadow||this.type!==va||(O.map=new de(n.x,n.y),O.map.texture.name=B.name+".shadowMap",O.mapPass=new de(n.x,n.y),O.camera.updateProjectionMatrix()),O.map===null){const k={minFilter:Ft,magFilter:Ft,format:$t};O.map=new de(n.x,n.y,k),O.map.texture.name=B.name+".shadowMap",O.camera.updateProjectionMatrix()}s.setRenderTarget(O.map),s.clear();const Q=O.getViewportCount();for(let k=0;k=1):B.indexOf("OpenGL ES")!==-1&&(z=parseFloat(/^OpenGL ES (\d)/.exec(B)[1]),I=z>=2);let O=null,F={};const Q=s.getParameter(3088),k=s.getParameter(2978),X=new Lt().fromArray(Q),U=new Lt().fromArray(k);function H(P,J,N){const ct=new Uint8Array(4),$=s.createTexture();s.bindTexture(P,$),s.texParameteri(P,10241,9728),s.texParameteri(P,10240,9728);for(let ht=0;htit||R.height>it)&&(V=it/Math.max(R.width,R.height)),V<1||A===!0){if(typeof HTMLImageElement<"u"&&R instanceof HTMLImageElement||typeof HTMLCanvasElement<"u"&&R instanceof HTMLCanvasElement||typeof ImageBitmap<"u"&&R instanceof ImageBitmap){const P=A?Oo:Math.floor,J=P(V*R.width),N=P(V*R.height);g===void 0&&(g=x(J,N));const ct=G?x(J,N):g;return ct.width=J,ct.height=N,ct.getContext("2d").drawImage(R,0,0,J,N),console.warn("THREE.WebGLRenderer: Texture has been resized from ("+R.width+"x"+R.height+") to ("+J+"x"+N+")."),ct}return"data"in R&&console.warn("THREE.WebGLRenderer: Image in DataTexture is too big ("+R.width+"x"+R.height+")."),R}return R}function b(R){return Ih(R.width)&&Ih(R.height)}function S(R,A){return R.generateMipmaps&&A&&R.minFilter!==Ft&&R.minFilter!==Wt}function w(R){s.generateMipmap(R)}function C(R,A,G,it,V=!1){if(o===!1)return A;if(R!==null){if(s[R]!==void 0)return s[R];console.warn("THREE.WebGLRenderer: Attempt to use non-existing WebGL internal format '"+R+"'")}let P=A;return A===6403&&(G===5126&&(P=33326),G===5131&&(P=33325),G===5121&&(P=33321)),A===33319&&(G===5126&&(P=33328),G===5131&&(P=33327),G===5121&&(P=33323)),A===6408&&(G===5126&&(P=34836),G===5131&&(P=34842),G===5121&&(P=it===Bt&&V===!1?35907:32856),G===32819&&(P=32854),G===32820&&(P=32855)),P!==33325&&P!==33326&&P!==33327&&P!==33328&&P!==34842&&P!==34836||t.get("EXT_color_buffer_float"),P}function L(R,A,G){return S(R,G)===!0||R.isFramebufferTexture&&R.minFilter!==Ft&&R.minFilter!==Wt?Math.log2(Math.max(A.width,A.height))+1:R.mipmaps!==void 0&&R.mipmaps.length>0?R.mipmaps.length:R.isCompressedTexture&&Array.isArray(R.image)?A.mipmaps.length:1}function T(R){return R===Ft||R===wh||R===Sh?9728:9729}function E(R){const A=R.target;A.removeEventListener("dispose",E),function(G){const it=i.get(G);if(it.__webglInit===void 0)return;const V=G.source,P=_.get(V);if(P){const J=P[it.__cacheKey];J.usedTimes--,J.usedTimes===0&&z(G),Object.keys(P).length===0&&_.delete(V)}i.remove(G)}(A),A.isVideoTexture&&f.delete(A)}function I(R){const A=R.target;A.removeEventListener("dispose",I),function(G){const it=G.texture,V=i.get(G),P=i.get(it);if(P.__webglTexture!==void 0&&(s.deleteTexture(P.__webglTexture),a.memory.textures--),G.depthTexture&&G.depthTexture.dispose(),G.isWebGLCubeRenderTarget)for(let J=0;J<6;J++)s.deleteFramebuffer(V.__webglFramebuffer[J]),V.__webglDepthbuffer&&s.deleteRenderbuffer(V.__webglDepthbuffer[J]);else{if(s.deleteFramebuffer(V.__webglFramebuffer),V.__webglDepthbuffer&&s.deleteRenderbuffer(V.__webglDepthbuffer),V.__webglMultisampledFramebuffer&&s.deleteFramebuffer(V.__webglMultisampledFramebuffer),V.__webglColorRenderbuffer)for(let J=0;J0&&G.__version!==R.version){const it=R.image;if(it===null)console.warn("THREE.WebGLRenderer: Texture marked for update but no image data found.");else{if(it.complete!==!1)return void U(G,R,A);console.warn("THREE.WebGLRenderer: Texture marked for update but image is incomplete")}}e.activeTexture(33984+A),e.bindTexture(3553,G.__webglTexture)}const F={[ze]:10497,[ue]:33071,[Lo]:33648},Q={[Ft]:9728,[wh]:9984,[Sh]:9986,[Wt]:9729,[bd]:9985,[ys]:9987};function k(R,A,G){if(G?(s.texParameteri(R,10242,F[A.wrapS]),s.texParameteri(R,10243,F[A.wrapT]),R!==32879&&R!==35866||s.texParameteri(R,32882,F[A.wrapR]),s.texParameteri(R,10240,Q[A.magFilter]),s.texParameteri(R,10241,Q[A.minFilter])):(s.texParameteri(R,10242,33071),s.texParameteri(R,10243,33071),R!==32879&&R!==35866||s.texParameteri(R,32882,33071),A.wrapS===ue&&A.wrapT===ue||console.warn("THREE.WebGLRenderer: Texture is not power of two. Texture.wrapS and Texture.wrapT should be set to THREE.ClampToEdgeWrapping."),s.texParameteri(R,10240,T(A.magFilter)),s.texParameteri(R,10241,T(A.minFilter)),A.minFilter!==Ft&&A.minFilter!==Wt&&console.warn("THREE.WebGLRenderer: Texture is not power of two. Texture.minFilter should be set to THREE.NearestFilter or THREE.LinearFilter.")),t.has("EXT_texture_filter_anisotropic")===!0){const it=t.get("EXT_texture_filter_anisotropic");if(A.type===Ve&&t.has("OES_texture_float_linear")===!1||o===!1&&A.type===be&&t.has("OES_texture_half_float_linear")===!1)return;(A.anisotropy>1||i.get(A).__currentAnisotropy)&&(s.texParameterf(R,it.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(A.anisotropy,n.getMaxAnisotropy())),i.get(A).__currentAnisotropy=A.anisotropy)}}function X(R,A){let G=!1;R.__webglInit===void 0&&(R.__webglInit=!0,A.addEventListener("dispose",E));const it=A.source;let V=_.get(it);V===void 0&&(V={},_.set(it,V));const P=function(J){const N=[];return N.push(J.wrapS),N.push(J.wrapT),N.push(J.magFilter),N.push(J.minFilter),N.push(J.anisotropy),N.push(J.internalFormat),N.push(J.format),N.push(J.type),N.push(J.generateMipmaps),N.push(J.premultiplyAlpha),N.push(J.flipY),N.push(J.unpackAlignment),N.push(J.encoding),N.join()}(A);if(P!==R.__cacheKey){V[P]===void 0&&(V[P]={texture:s.createTexture(),usedTimes:0},a.memory.textures++,G=!0),V[P].usedTimes++;const J=V[R.__cacheKey];J!==void 0&&(V[R.__cacheKey].usedTimes--,J.usedTimes===0&&z(A)),R.__cacheKey=P,R.__webglTexture=V[P].texture}return G}function U(R,A,G){let it=3553;A.isDataArrayTexture&&(it=35866),A.isData3DTexture&&(it=32879);const V=X(R,A),P=A.source;if(e.activeTexture(33984+G),e.bindTexture(it,R.__webglTexture),P.version!==P.__currentVersion||V===!0){s.pixelStorei(37440,A.flipY),s.pixelStorei(37441,A.premultiplyAlpha),s.pixelStorei(3317,A.unpackAlignment),s.pixelStorei(37443,0);const J=function(It){return!o&&(It.wrapS!==ue||It.wrapT!==ue||It.minFilter!==Ft&&It.minFilter!==Wt)}(A)&&b(A.image)===!1;let N=y(A.image,J,!1,c);N=wt(A,N);const ct=b(N)||o,$=r.convert(A.format,A.encoding);let ht,gt=r.convert(A.type),yt=C(A.internalFormat,$,gt,A.encoding,A.isVideoTexture);k(it,A,ct);const Ct=A.mipmaps,bt=o&&A.isVideoTexture!==!0,kt=P.__currentVersion===void 0||V===!0,Rt=L(A,N,ct);if(A.isDepthTexture)yt=6402,o?yt=A.type===Ve?36012:A.type===bs?33190:A.type===Ms?35056:33189:A.type===Ve&&console.error("WebGLRenderer: Floating point depth texture requires WebGL2."),A.format===ws&&yt===6402&&A.type!==Md&&A.type!==bs&&(console.warn("THREE.WebGLRenderer: Use UnsignedShortType or UnsignedIntType for DepthFormat DepthTexture."),A.type=bs,gt=r.convert(A.type)),A.format===Ss&&yt===6402&&(yt=34041,A.type!==Ms&&(console.warn("THREE.WebGLRenderer: Use UnsignedInt248Type for DepthStencilFormat DepthTexture."),A.type=Ms,gt=r.convert(A.type))),kt&&(bt?e.texStorage2D(3553,1,yt,N.width,N.height):e.texImage2D(3553,0,yt,N.width,N.height,0,$,gt,null));else if(A.isDataTexture)if(Ct.length>0&&ct){bt&&kt&&e.texStorage2D(3553,Rt,yt,Ct[0].width,Ct[0].height);for(let It=0,_e=Ct.length;It<_e;It++)ht=Ct[It],bt?e.texSubImage2D(3553,It,0,0,ht.width,ht.height,$,gt,ht.data):e.texImage2D(3553,It,yt,ht.width,ht.height,0,$,gt,ht.data);A.generateMipmaps=!1}else bt?(kt&&e.texStorage2D(3553,Rt,yt,N.width,N.height),e.texSubImage2D(3553,0,0,0,N.width,N.height,$,gt,N.data)):e.texImage2D(3553,0,yt,N.width,N.height,0,$,gt,N.data);else if(A.isCompressedTexture){bt&&kt&&e.texStorage2D(3553,Rt,yt,Ct[0].width,Ct[0].height);for(let It=0,_e=Ct.length;It<_e;It++)ht=Ct[It],A.format!==$t?$!==null?bt?e.compressedTexSubImage2D(3553,It,0,0,ht.width,ht.height,$,ht.data):e.compressedTexImage2D(3553,It,yt,ht.width,ht.height,0,ht.data):console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()"):bt?e.texSubImage2D(3553,It,0,0,ht.width,ht.height,$,gt,ht.data):e.texImage2D(3553,It,yt,ht.width,ht.height,0,$,gt,ht.data)}else if(A.isDataArrayTexture)bt?(kt&&e.texStorage3D(35866,Rt,yt,N.width,N.height,N.depth),e.texSubImage3D(35866,0,0,0,0,N.width,N.height,N.depth,$,gt,N.data)):e.texImage3D(35866,0,yt,N.width,N.height,N.depth,0,$,gt,N.data);else if(A.isData3DTexture)bt?(kt&&e.texStorage3D(32879,Rt,yt,N.width,N.height,N.depth),e.texSubImage3D(32879,0,0,0,0,N.width,N.height,N.depth,$,gt,N.data)):e.texImage3D(32879,0,yt,N.width,N.height,N.depth,0,$,gt,N.data);else if(A.isFramebufferTexture){if(kt)if(bt)e.texStorage2D(3553,Rt,yt,N.width,N.height);else{let It=N.width,_e=N.height;for(let on=0;on>=1,_e>>=1}}else if(Ct.length>0&&ct){bt&&kt&&e.texStorage2D(3553,Rt,yt,Ct[0].width,Ct[0].height);for(let It=0,_e=Ct.length;It<_e;It++)ht=Ct[It],bt?e.texSubImage2D(3553,It,0,0,$,gt,ht):e.texImage2D(3553,It,yt,$,gt,ht);A.generateMipmaps=!1}else bt?(kt&&e.texStorage2D(3553,Rt,yt,N.width,N.height),e.texSubImage2D(3553,0,0,0,$,gt,N)):e.texImage2D(3553,0,yt,$,gt,N);S(A,ct)&&w(it),P.__currentVersion=P.version,A.onUpdate&&A.onUpdate(A)}R.__version=A.version}function H(R,A,G,it,V){const P=r.convert(G.format,G.encoding),J=r.convert(G.type),N=C(G.internalFormat,P,J,G.encoding);i.get(A).__hasExternalTextures||(V===32879||V===35866?e.texImage3D(V,0,N,A.width,A.height,A.depth,0,P,J,null):e.texImage2D(V,0,N,A.width,A.height,0,P,J,null)),e.bindFramebuffer(36160,R),Mt(A)?p.framebufferTexture2DMultisampleEXT(36160,it,V,i.get(G).__webglTexture,0,_t(A)):s.framebufferTexture2D(36160,it,V,i.get(G).__webglTexture,0),e.bindFramebuffer(36160,null)}function Z(R,A,G){if(s.bindRenderbuffer(36161,R),A.depthBuffer&&!A.stencilBuffer){let it=33189;if(G||Mt(A)){const V=A.depthTexture;V&&V.isDepthTexture&&(V.type===Ve?it=36012:V.type===bs&&(it=33190));const P=_t(A);Mt(A)?p.renderbufferStorageMultisampleEXT(36161,P,it,A.width,A.height):s.renderbufferStorageMultisample(36161,P,it,A.width,A.height)}else s.renderbufferStorage(36161,it,A.width,A.height);s.framebufferRenderbuffer(36160,36096,36161,R)}else if(A.depthBuffer&&A.stencilBuffer){const it=_t(A);G&&Mt(A)===!1?s.renderbufferStorageMultisample(36161,it,35056,A.width,A.height):Mt(A)?p.renderbufferStorageMultisampleEXT(36161,it,35056,A.width,A.height):s.renderbufferStorage(36161,34041,A.width,A.height),s.framebufferRenderbuffer(36160,33306,36161,R)}else{const it=A.isWebGLMultipleRenderTargets===!0?A.texture:[A.texture];for(let V=0;V0&&t.has("WEBGL_multisampled_render_to_texture")===!0&&A.__useRenderToTexture!==!1}function wt(R,A){const G=R.encoding,it=R.format,V=R.type;return R.isCompressedTexture===!0||R.isVideoTexture===!0||R.format===Dh||G!==un&&(G===Bt?o===!1?t.has("EXT_sRGB")===!0&&it===$t?(R.format=Dh,R.minFilter=Wt,R.generateMipmaps=!1):A=Zd.sRGBToLinear(A):it===$t&&V===Vn||console.warn("THREE.WebGLTextures: sRGB encoded textures have to use RGBAFormat and UnsignedByteType."):console.error("THREE.WebGLTextures: Unsupported texture encoding:",G)),A}this.allocateTextureUnit=function(){const R=B;return R>=l&&console.warn("THREE.WebGLTextures: Trying to use "+R+" texture units while this GPU supports only "+l),B+=1,R},this.resetTextureUnits=function(){B=0},this.setTexture2D=O,this.setTexture2DArray=function(R,A){const G=i.get(R);R.version>0&&G.__version!==R.version?U(G,R,A):(e.activeTexture(33984+A),e.bindTexture(35866,G.__webglTexture))},this.setTexture3D=function(R,A){const G=i.get(R);R.version>0&&G.__version!==R.version?U(G,R,A):(e.activeTexture(33984+A),e.bindTexture(32879,G.__webglTexture))},this.setTextureCube=function(R,A){const G=i.get(R);R.version>0&&G.__version!==R.version?function(it,V,P){if(V.image.length!==6)return;const J=X(it,V),N=V.source;if(e.activeTexture(33984+P),e.bindTexture(34067,it.__webglTexture),N.version!==N.__currentVersion||J===!0){s.pixelStorei(37440,V.flipY),s.pixelStorei(37441,V.premultiplyAlpha),s.pixelStorei(3317,V.unpackAlignment),s.pixelStorei(37443,0);const ct=V.isCompressedTexture||V.image[0].isCompressedTexture,$=V.image[0]&&V.image[0].isDataTexture,ht=[];for(let Et=0;Et<6;Et++)ht[Et]=ct||$?$?V.image[Et].image:V.image[Et]:y(V.image[Et],!1,!0,h),ht[Et]=wt(V,ht[Et]);const gt=ht[0],yt=b(gt)||o,Ct=r.convert(V.format,V.encoding),bt=r.convert(V.type),kt=C(V.internalFormat,Ct,bt,V.encoding),Rt=o&&V.isVideoTexture!==!0,It=N.__currentVersion===void 0||J===!0;let _e,on=L(V,gt,yt);if(k(34067,V,yt),ct){Rt&&It&&e.texStorage2D(34067,on,kt,gt.width,gt.height);for(let Et=0;Et<6;Et++){_e=ht[Et].mipmaps;for(let qt=0;qt<_e.length;qt++){const Yt=_e[qt];V.format!==$t?Ct!==null?Rt?e.compressedTexSubImage2D(34069+Et,qt,0,0,Yt.width,Yt.height,Ct,Yt.data):e.compressedTexImage2D(34069+Et,qt,kt,Yt.width,Yt.height,0,Yt.data):console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .setTextureCube()"):Rt?e.texSubImage2D(34069+Et,qt,0,0,Yt.width,Yt.height,Ct,bt,Yt.data):e.texImage2D(34069+Et,qt,kt,Yt.width,Yt.height,0,Ct,bt,Yt.data)}}}else{_e=V.mipmaps,Rt&&It&&(_e.length>0&&on++,e.texStorage2D(34067,on,kt,ht[0].width,ht[0].height));for(let Et=0;Et<6;Et++)if($){Rt?e.texSubImage2D(34069+Et,0,0,0,ht[Et].width,ht[Et].height,Ct,bt,ht[Et].data):e.texImage2D(34069+Et,0,kt,ht[Et].width,ht[Et].height,0,Ct,bt,ht[Et].data);for(let qt=0;qt<_e.length;qt++){const Yt=_e[qt].image[Et].image;Rt?e.texSubImage2D(34069+Et,qt+1,0,0,Yt.width,Yt.height,Ct,bt,Yt.data):e.texImage2D(34069+Et,qt+1,kt,Yt.width,Yt.height,0,Ct,bt,Yt.data)}}else{Rt?e.texSubImage2D(34069+Et,0,0,0,Ct,bt,ht[Et]):e.texImage2D(34069+Et,0,kt,Ct,bt,ht[Et]);for(let qt=0;qt<_e.length;qt++){const Yt=_e[qt];Rt?e.texSubImage2D(34069+Et,qt+1,0,0,Ct,bt,Yt.image[Et]):e.texImage2D(34069+Et,qt+1,kt,Ct,bt,Yt.image[Et])}}}S(V,yt)&&w(34067),N.__currentVersion=N.version,V.onUpdate&&V.onUpdate(V)}it.__version=V.version}(G,R,A):(e.activeTexture(33984+A),e.bindTexture(34067,G.__webglTexture))},this.rebindTextures=function(R,A,G){const it=i.get(R);A!==void 0&&H(it.__webglFramebuffer,R,R.texture,36064,3553),G!==void 0&&mt(R)},this.setupRenderTarget=function(R){const A=R.texture,G=i.get(R),it=i.get(A);R.addEventListener("dispose",I),R.isWebGLMultipleRenderTargets!==!0&&(it.__webglTexture===void 0&&(it.__webglTexture=s.createTexture()),it.__version=A.version,a.memory.textures++);const V=R.isWebGLCubeRenderTarget===!0,P=R.isWebGLMultipleRenderTargets===!0,J=b(R)||o;if(V){G.__webglFramebuffer=[];for(let N=0;N<6;N++)G.__webglFramebuffer[N]=s.createFramebuffer()}else{if(G.__webglFramebuffer=s.createFramebuffer(),P)if(n.drawBuffers){const N=R.texture;for(let ct=0,$=N.length;ct<$;ct++){const ht=i.get(N[ct]);ht.__webglTexture===void 0&&(ht.__webglTexture=s.createTexture(),a.memory.textures++)}}else console.warn("THREE.WebGLRenderer: WebGLMultipleRenderTargets can only be used with WebGL2 or WEBGL_draw_buffers extension.");if(o&&R.samples>0&&Mt(R)===!1){const N=P?A:[A];G.__webglMultisampledFramebuffer=s.createFramebuffer(),G.__webglColorRenderbuffer=[],e.bindFramebuffer(36160,G.__webglMultisampledFramebuffer);for(let ct=0;ct0&&Mt(R)===!1){const A=R.isWebGLMultipleRenderTargets?R.texture:[R.texture],G=R.width,it=R.height;let V=16384;const P=[],J=R.stencilBuffer?33306:36096,N=i.get(R),ct=R.isWebGLMultipleRenderTargets===!0;if(ct)for(let $=0;$m+f?(h.inputState.pinching=!1,this.dispatchEvent({type:"pinchend",handedness:t.handedness,target:this})):!h.inputState.pinching&&p<=m-f&&(h.inputState.pinching=!0,this.dispatchEvent({type:"pinchstart",handedness:t.handedness,target:this}))}else l!==null&&t.gripSpace&&(r=e.getPose(t.gripSpace,i),r!==null&&(l.matrix.fromArray(r.transform.matrix),l.matrix.decompose(l.position,l.rotation,l.scale),r.linearVelocity?(l.hasLinearVelocity=!0,l.linearVelocity.copy(r.linearVelocity)):l.hasLinearVelocity=!1,r.angularVelocity?(l.hasAngularVelocity=!0,l.angularVelocity.copy(r.angularVelocity)):l.hasAngularVelocity=!1));return o!==null&&(o.visible=n!==null),l!==null&&(l.visible=r!==null),h!==null&&(h.visible=a!==null),this}}class Hp extends ne{constructor(t,e,i,n,r,a,o,l,h,c){if((c=c!==void 0?c:ws)!==ws&&c!==Ss)throw new Error("DepthTexture format must be either THREE.DepthFormat or THREE.DepthStencilFormat");i===void 0&&c===ws&&(i=bs),i===void 0&&c===Ss&&(i=Ms),super(null,n,r,a,o,l,c,i,h),this.isDepthTexture=!0,this.image={width:t,height:e},this.magFilter=o!==void 0?o:Ft,this.minFilter=l!==void 0?l:Ft,this.flipY=!1,this.generateMipmaps=!1}}class Wx extends pn{constructor(t,e){super();const i=this;let n=null,r=1,a=null,o="local-floor",l=null,h=null,c=null,u=null,p=null,m=null;const f=e.getContextAttributes();let g=null,_=null;const v=[],x=new Map,y=new ye;y.layers.enable(1),y.viewport=new Lt;const b=new ye;b.layers.enable(2),b.viewport=new Lt;const S=[y,b],w=new jx;w.layers.enable(1),w.layers.enable(2);let C=null,L=null;function T(k){const X=x.get(k.inputSource);X!==void 0&&X.dispatchEvent({type:k.type,data:k.inputSource})}function E(){n.removeEventListener("select",T),n.removeEventListener("selectstart",T),n.removeEventListener("selectend",T),n.removeEventListener("squeeze",T),n.removeEventListener("squeezestart",T),n.removeEventListener("squeezeend",T),n.removeEventListener("end",E),n.removeEventListener("inputsourceschange",I),x.forEach(function(k,X){k!==void 0&&k.disconnect(X)}),x.clear(),C=null,L=null,t.setRenderTarget(g),p=null,u=null,c=null,n=null,_=null,Q.stop(),i.isPresenting=!1,i.dispatchEvent({type:"sessionend"})}function I(k){const X=n.inputSources;for(let U=0;U0&&(i.alphaTest.value=n.alphaTest);const r=t.get(n).envMap;if(r&&(i.envMap.value=r,i.flipEnvMap.value=r.isCubeTexture&&r.isRenderTargetTexture===!1?-1:1,i.reflectivity.value=n.reflectivity,i.ior.value=n.ior,i.refractionRatio.value=n.refractionRatio),n.lightMap){i.lightMap.value=n.lightMap;const l=s.physicallyCorrectLights!==!0?Math.PI:1;i.lightMapIntensity.value=n.lightMapIntensity*l}let a,o;n.aoMap&&(i.aoMap.value=n.aoMap,i.aoMapIntensity.value=n.aoMapIntensity),n.map?a=n.map:n.specularMap?a=n.specularMap:n.displacementMap?a=n.displacementMap:n.normalMap?a=n.normalMap:n.bumpMap?a=n.bumpMap:n.roughnessMap?a=n.roughnessMap:n.metalnessMap?a=n.metalnessMap:n.alphaMap?a=n.alphaMap:n.emissiveMap?a=n.emissiveMap:n.clearcoatMap?a=n.clearcoatMap:n.clearcoatNormalMap?a=n.clearcoatNormalMap:n.clearcoatRoughnessMap?a=n.clearcoatRoughnessMap:n.iridescenceMap?a=n.iridescenceMap:n.iridescenceThicknessMap?a=n.iridescenceThicknessMap:n.specularIntensityMap?a=n.specularIntensityMap:n.specularColorMap?a=n.specularColorMap:n.transmissionMap?a=n.transmissionMap:n.thicknessMap?a=n.thicknessMap:n.sheenColorMap?a=n.sheenColorMap:n.sheenRoughnessMap&&(a=n.sheenRoughnessMap),a!==void 0&&(a.isWebGLRenderTarget&&(a=a.texture),a.matrixAutoUpdate===!0&&a.updateMatrix(),i.uvTransform.value.copy(a.matrix)),n.aoMap?o=n.aoMap:n.lightMap&&(o=n.lightMap),o!==void 0&&(o.isWebGLRenderTarget&&(o=o.texture),o.matrixAutoUpdate===!0&&o.updateMatrix(),i.uv2Transform.value.copy(o.matrix))}return{refreshFogUniforms:function(i,n){i.fogColor.value.copy(n.color),n.isFog?(i.fogNear.value=n.near,i.fogFar.value=n.far):n.isFogExp2&&(i.fogDensity.value=n.density)},refreshMaterialUniforms:function(i,n,r,a,o){n.isMeshBasicMaterial||n.isMeshLambertMaterial?e(i,n):n.isMeshToonMaterial?(e(i,n),function(l,h){h.gradientMap&&(l.gradientMap.value=h.gradientMap)}(i,n)):n.isMeshPhongMaterial?(e(i,n),function(l,h){l.specular.value.copy(h.specular),l.shininess.value=Math.max(h.shininess,1e-4)}(i,n)):n.isMeshStandardMaterial?(e(i,n),function(l,h){l.roughness.value=h.roughness,l.metalness.value=h.metalness,h.roughnessMap&&(l.roughnessMap.value=h.roughnessMap),h.metalnessMap&&(l.metalnessMap.value=h.metalnessMap),t.get(h).envMap&&(l.envMapIntensity.value=h.envMapIntensity)}(i,n),n.isMeshPhysicalMaterial&&function(l,h,c){l.ior.value=h.ior,h.sheen>0&&(l.sheenColor.value.copy(h.sheenColor).multiplyScalar(h.sheen),l.sheenRoughness.value=h.sheenRoughness,h.sheenColorMap&&(l.sheenColorMap.value=h.sheenColorMap),h.sheenRoughnessMap&&(l.sheenRoughnessMap.value=h.sheenRoughnessMap)),h.clearcoat>0&&(l.clearcoat.value=h.clearcoat,l.clearcoatRoughness.value=h.clearcoatRoughness,h.clearcoatMap&&(l.clearcoatMap.value=h.clearcoatMap),h.clearcoatRoughnessMap&&(l.clearcoatRoughnessMap.value=h.clearcoatRoughnessMap),h.clearcoatNormalMap&&(l.clearcoatNormalScale.value.copy(h.clearcoatNormalScale),l.clearcoatNormalMap.value=h.clearcoatNormalMap,h.side===pi&&l.clearcoatNormalScale.value.negate())),h.iridescence>0&&(l.iridescence.value=h.iridescence,l.iridescenceIOR.value=h.iridescenceIOR,l.iridescenceThicknessMinimum.value=h.iridescenceThicknessRange[0],l.iridescenceThicknessMaximum.value=h.iridescenceThicknessRange[1],h.iridescenceMap&&(l.iridescenceMap.value=h.iridescenceMap),h.iridescenceThicknessMap&&(l.iridescenceThicknessMap.value=h.iridescenceThicknessMap)),h.transmission>0&&(l.transmission.value=h.transmission,l.transmissionSamplerMap.value=c.texture,l.transmissionSamplerSize.value.set(c.width,c.height),h.transmissionMap&&(l.transmissionMap.value=h.transmissionMap),l.thickness.value=h.thickness,h.thicknessMap&&(l.thicknessMap.value=h.thicknessMap),l.attenuationDistance.value=h.attenuationDistance,l.attenuationColor.value.copy(h.attenuationColor)),l.specularIntensity.value=h.specularIntensity,l.specularColor.value.copy(h.specularColor),h.specularIntensityMap&&(l.specularIntensityMap.value=h.specularIntensityMap),h.specularColorMap&&(l.specularColorMap.value=h.specularColorMap)}(i,n,o)):n.isMeshMatcapMaterial?(e(i,n),function(l,h){h.matcap&&(l.matcap.value=h.matcap)}(i,n)):n.isMeshDepthMaterial?e(i,n):n.isMeshDistanceMaterial?(e(i,n),function(l,h){l.referencePosition.value.copy(h.referencePosition),l.nearDistance.value=h.nearDistance,l.farDistance.value=h.farDistance}(i,n)):n.isMeshNormalMaterial?e(i,n):n.isLineBasicMaterial?(function(l,h){l.diffuse.value.copy(h.color),l.opacity.value=h.opacity}(i,n),n.isLineDashedMaterial&&function(l,h){l.dashSize.value=h.dashSize,l.totalSize.value=h.dashSize+h.gapSize,l.scale.value=h.scale}(i,n)):n.isPointsMaterial?function(l,h,c,u){l.diffuse.value.copy(h.color),l.opacity.value=h.opacity,l.size.value=h.size*c,l.scale.value=.5*u,h.map&&(l.map.value=h.map),h.alphaMap&&(l.alphaMap.value=h.alphaMap),h.alphaTest>0&&(l.alphaTest.value=h.alphaTest);let p;h.map?p=h.map:h.alphaMap&&(p=h.alphaMap),p!==void 0&&(p.matrixAutoUpdate===!0&&p.updateMatrix(),l.uvTransform.value.copy(p.matrix))}(i,n,r,a):n.isSpriteMaterial?function(l,h){l.diffuse.value.copy(h.color),l.opacity.value=h.opacity,l.rotation.value=h.rotation,h.map&&(l.map.value=h.map),h.alphaMap&&(l.alphaMap.value=h.alphaMap),h.alphaTest>0&&(l.alphaTest.value=h.alphaTest);let c;h.map?c=h.map:h.alphaMap&&(c=h.alphaMap),c!==void 0&&(c.matrixAutoUpdate===!0&&c.updateMatrix(),l.uvTransform.value.copy(c.matrix))}(i,n):n.isShadowMaterial?(i.color.value.copy(n.color),i.opacity.value=n.opacity):n.isShaderMaterial&&(n.uniformsNeedUpdate=!1)}}}function jp(s={}){this.isWebGLRenderer=!0;const t=s.canvas!==void 0?s.canvas:function(){const D=Ta("canvas");return D.style.display="block",D}(),e=s.context!==void 0?s.context:null,i=s.depth===void 0||s.depth,n=s.stencil===void 0||s.stencil,r=s.antialias!==void 0&&s.antialias,a=s.premultipliedAlpha===void 0||s.premultipliedAlpha,o=s.preserveDrawingBuffer!==void 0&&s.preserveDrawingBuffer,l=s.powerPreference!==void 0?s.powerPreference:"default",h=s.failIfMajorPerformanceCaveat!==void 0&&s.failIfMajorPerformanceCaveat;let c;c=e!==null?e.getContextAttributes().alpha:s.alpha!==void 0&&s.alpha;let u=null,p=null;const m=[],f=[];this.domElement=t,this.debug={checkShaderErrors:!0},this.autoClear=!0,this.autoClearColor=!0,this.autoClearDepth=!0,this.autoClearStencil=!0,this.sortObjects=!0,this.clippingPlanes=[],this.localClippingEnabled=!1,this.outputEncoding=un,this.physicallyCorrectLights=!1,this.toneMapping=cn,this.toneMappingExposure=1,Object.defineProperties(this,{gammaFactor:{get:function(){return console.warn("THREE.WebGLRenderer: .gammaFactor has been removed."),2},set:function(){console.warn("THREE.WebGLRenderer: .gammaFactor has been removed.")}}});const g=this;let _=!1,v=0,x=0,y=null,b=-1,S=null;const w=new Lt,C=new Lt;let L=null,T=t.width,E=t.height,I=1,z=null,B=null;const O=new Lt(0,0,T,E),F=new Lt(0,0,T,E);let Q=!1;const k=new Pa;let X=!1,U=!1,H=null;const Z=new rt,mt=new j,_t=new M,Mt={background:null,fog:null,environment:null,overrideMaterial:null,isScene:!0};function wt(){return y===null?I:1}let R,A,G,it,V,P,J,N,ct,$,ht,gt,yt,Ct,bt,kt,Rt,It,_e,on,Et,qt,Yt,ut=e;function Y_(D,q){for(let K=0;K0&&function(At,Vt,ge){const Gt=A.isWebGL2;H===null&&(H=new de(1,1,{generateMipmaps:!0,type:R.has("EXT_color_buffer_half_float")?be:Vn,minFilter:ys,samples:Gt&&r===!0?4:0})),g.getDrawingBufferSize(mt),Gt?H.setSize(mt.x,mt.y):H.setSize(Oo(mt.x),Oo(mt.y));const Ut=g.getRenderTarget();g.setRenderTarget(H),g.clear();const Ae=g.toneMapping;g.toneMapping=cn,_h(At,Vt,ge),g.toneMapping=Ae,P.updateMultisampleRenderTarget(H),P.updateRenderTargetMipmap(H),g.setRenderTarget(Ut)}(at,q,K),nt&&G.viewport(w.copy(nt)),at.length>0&&_h(at,q,K),Tt.length>0&&_h(Tt,q,K),Ot.length>0&&_h(Ot,q,K),G.buffers.depth.setTest(!0),G.buffers.depth.setMask(!0),G.buffers.color.setMask(!0),G.setPolygonOffset(!1)}function _h(D,q,K){const nt=q.isScene===!0?q.overrideMaterial:null;for(let at=0,Tt=D.length;at0?f[f.length-1]:null,m.pop(),u=m.length>0?m[m.length-1]:null},this.getActiveCubeFace=function(){return v},this.getActiveMipmapLevel=function(){return x},this.getRenderTarget=function(){return y},this.setRenderTargetTextures=function(D,q,K){V.get(D.texture).__webglTexture=q,V.get(D.depthTexture).__webglTexture=K;const nt=V.get(D);nt.__hasExternalTextures=!0,nt.__hasExternalTextures&&(nt.__autoAllocateDepthBuffer=K===void 0,nt.__autoAllocateDepthBuffer||R.has("WEBGL_multisampled_render_to_texture")===!0&&(console.warn("THREE.WebGLRenderer: Render-to-texture extension was disabled because an external texture was provided"),nt.__useRenderToTexture=!1))},this.setRenderTargetFramebuffer=function(D,q){const K=V.get(D);K.__webglFramebuffer=q,K.__useDefaultFramebuffer=q===void 0},this.setRenderTarget=function(D,q=0,K=0){y=D,v=q,x=K;let nt=!0;if(D){const At=V.get(D);At.__useDefaultFramebuffer!==void 0?(G.bindFramebuffer(36160,null),nt=!1):At.__webglFramebuffer===void 0?P.setupRenderTarget(D):At.__hasExternalTextures&&P.rebindTextures(D,V.get(D.texture).__webglTexture,V.get(D.depthTexture).__webglTexture)}let at=null,Tt=!1,Ot=!1;if(D){const At=D.texture;(At.isData3DTexture||At.isDataArrayTexture)&&(Ot=!0);const Vt=V.get(D).__webglFramebuffer;D.isWebGLCubeRenderTarget?(at=Vt[q],Tt=!0):at=A.isWebGL2&&D.samples>0&&P.useMultisampledRTT(D)===!1?V.get(D).__webglMultisampledFramebuffer:Vt,w.copy(D.viewport),C.copy(D.scissor),L=D.scissorTest}else w.copy(O).multiplyScalar(I).floor(),C.copy(F).multiplyScalar(I).floor(),L=Q;if(G.bindFramebuffer(36160,at)&&A.drawBuffers&&nt&&G.drawBuffers(D,at),G.viewport(w),G.scissor(C),G.setScissorTest(L),Tt){const At=V.get(D.texture);ut.framebufferTexture2D(36160,36064,34069+q,At.__webglTexture,K)}else if(Ot){const At=V.get(D.texture),Vt=q||0;ut.framebufferTextureLayer(36160,36064,At.__webglTexture,K||0,Vt)}b=-1},this.readRenderTargetPixels=function(D,q,K,nt,at,Tt,Ot){if(!D||!D.isWebGLRenderTarget)return void console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.");let At=V.get(D).__webglFramebuffer;if(D.isWebGLCubeRenderTarget&&Ot!==void 0&&(At=At[Ot]),At){G.bindFramebuffer(36160,At);try{const Vt=D.texture,ge=Vt.format,Gt=Vt.type;if(ge!==$t&&qt.convert(ge)!==ut.getParameter(35739))return void console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.");const Ut=Gt===be&&(R.has("EXT_color_buffer_half_float")||A.isWebGL2&&R.has("EXT_color_buffer_float"));if(!(Gt===Vn||qt.convert(Gt)===ut.getParameter(35738)||Gt===Ve&&(A.isWebGL2||R.has("OES_texture_float")||R.has("WEBGL_color_buffer_float"))||Ut))return void console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.");q>=0&&q<=D.width-nt&&K>=0&&K<=D.height-at&&ut.readPixels(q,K,nt,at,qt.convert(ge),qt.convert(Gt),Tt)}finally{const Vt=y!==null?V.get(y).__webglFramebuffer:null;G.bindFramebuffer(36160,Vt)}}},this.copyFramebufferToTexture=function(D,q,K=0){const nt=Math.pow(2,-K),at=Math.floor(q.image.width*nt),Tt=Math.floor(q.image.height*nt);P.setTexture2D(q,0),ut.copyTexSubImage2D(3553,K,0,0,D.x,D.y,at,Tt),G.unbindTexture()},this.copyTextureToTexture=function(D,q,K,nt=0){const at=q.image.width,Tt=q.image.height,Ot=qt.convert(K.format),At=qt.convert(K.type);P.setTexture2D(K,0),ut.pixelStorei(37440,K.flipY),ut.pixelStorei(37441,K.premultiplyAlpha),ut.pixelStorei(3317,K.unpackAlignment),q.isDataTexture?ut.texSubImage2D(3553,nt,D.x,D.y,at,Tt,Ot,At,q.image.data):q.isCompressedTexture?ut.compressedTexSubImage2D(3553,nt,D.x,D.y,q.mipmaps[0].width,q.mipmaps[0].height,Ot,q.mipmaps[0].data):ut.texSubImage2D(3553,nt,D.x,D.y,Ot,At,q.image),nt===0&&K.generateMipmaps&&ut.generateMipmap(3553),G.unbindTexture()},this.copyTextureToTexture3D=function(D,q,K,nt,at=0){if(g.isWebGL1Renderer)return void console.warn("THREE.WebGLRenderer.copyTextureToTexture3D: can only be used with WebGL2.");const Tt=D.max.x-D.min.x+1,Ot=D.max.y-D.min.y+1,At=D.max.z-D.min.z+1,Vt=qt.convert(nt.format),ge=qt.convert(nt.type);let Gt;if(nt.isData3DTexture)P.setTexture3D(nt,0),Gt=32879;else{if(!nt.isDataArrayTexture)return void console.warn("THREE.WebGLRenderer.copyTextureToTexture3D: only supports THREE.DataTexture3D and THREE.DataTexture2DArray.");P.setTexture2DArray(nt,0),Gt=35866}ut.pixelStorei(37440,nt.flipY),ut.pixelStorei(37441,nt.premultiplyAlpha),ut.pixelStorei(3317,nt.unpackAlignment);const Ut=ut.getParameter(3314),Ae=ut.getParameter(32878),bo=ut.getParameter(3316),Ci=ut.getParameter(3315),sd=ut.getParameter(32877),_s=K.isCompressedTexture?K.mipmaps[0]:K.image;ut.pixelStorei(3314,_s.width),ut.pixelStorei(32878,_s.height),ut.pixelStorei(3316,D.min.x),ut.pixelStorei(3315,D.min.y),ut.pixelStorei(32877,D.min.z),K.isDataTexture||K.isData3DTexture?ut.texSubImage3D(Gt,at,q.x,q.y,q.z,Tt,Ot,At,Vt,ge,_s.data):K.isCompressedTexture?(console.warn("THREE.WebGLRenderer.copyTextureToTexture3D: untested support for compressed srcTexture."),ut.compressedTexSubImage3D(Gt,at,q.x,q.y,q.z,Tt,Ot,At,Vt,_s.data)):ut.texSubImage3D(Gt,at,q.x,q.y,q.z,Tt,Ot,At,Vt,ge,_s),ut.pixelStorei(3314,Ut),ut.pixelStorei(32878,Ae),ut.pixelStorei(3316,bo),ut.pixelStorei(3315,Ci),ut.pixelStorei(32877,sd),at===0&&nt.generateMipmaps&&ut.generateMipmap(Gt),G.unbindTexture()},this.initTexture=function(D){P.setTexture2D(D,0),G.unbindTexture()},this.resetState=function(){v=0,x=0,y=null,G.reset(),Yt.reset()},typeof __THREE_DEVTOOLS__<"u"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}(class extends jp{}).prototype.isWebGL1Renderer=!0;class hc{constructor(t,e=1,i=1e3){this.isFog=!0,this.name="",this.color=new tt(t),this.near=e,this.far=i}clone(){return new hc(this.color,this.near,this.far)}toJSON(){return{type:"Fog",color:this.color.getHex(),near:this.near,far:this.far}}}class Gp extends St{constructor(){super(),this.isScene=!0,this.type="Scene",this.background=null,this.environment=null,this.fog=null,this.overrideMaterial=null,this.autoUpdate=!0,typeof __THREE_DEVTOOLS__<"u"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}copy(t,e){return super.copy(t,e),t.background!==null&&(this.background=t.background.clone()),t.environment!==null&&(this.environment=t.environment.clone()),t.fog!==null&&(this.fog=t.fog.clone()),t.overrideMaterial!==null&&(this.overrideMaterial=t.overrideMaterial.clone()),this.autoUpdate=t.autoUpdate,this.matrixAutoUpdate=t.matrixAutoUpdate,this}toJSON(t){const e=super.toJSON(t);return this.fog!==null&&(e.object.fog=this.fog.toJSON()),e}}class Wp{constructor(t,e){this.isInterleavedBuffer=!0,this.array=t,this.stride=e,this.count=t!==void 0?t.length/e:0,this.usage=pr,this.updateRange={offset:0,count:-1},this.version=0,this.uuid=Ei()}onUploadCallback(){}set needsUpdate(t){t===!0&&this.version++}setUsage(t){return this.usage=t,this}copy(t){return this.array=new t.array.constructor(t.array),this.count=t.count,this.stride=t.stride,this.usage=t.usage,this}copyAt(t,e,i){t*=this.stride,i*=e.stride;for(let n=0,r=this.stride;nl)continue;p.applyMatrix4(this.matrixWorld);const b=t.ray.origin.distanceTo(p);bt.far||e.push({distance:b,point:u.clone().applyMatrix4(this.matrixWorld),index:_,face:null,faceIndex:null,object:this})}else for(let _=Math.max(0,a.start),v=Math.min(g.count,a.start+a.count)-1;_l)continue;p.applyMatrix4(this.matrixWorld);const x=t.ray.origin.distanceTo(p);xt.far||e.push({distance:x,point:u.clone().applyMatrix4(this.matrixWorld),index:_,face:null,faceIndex:null,object:this})}}updateMorphTargets(){const t=this.geometry.morphAttributes,e=Object.keys(t);if(e.length>0){const i=t[e[0]];if(i!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let n=0,r=i.length;n0){const i=t[e[0]];if(i!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let n=0,r=i.length;nn.far)return;r.push({distance:h,distanceToRay:Math.sqrt(o),point:l,index:t,face:null,object:a})}}class lm extends ne{constructor(t,e,i){super({width:t,height:e}),this.isFramebufferTexture=!0,this.format=i,this.magFilter=Ft,this.minFilter=Ft,this.generateMipmaps=!1,this.needsUpdate=!0}}class Le extends ne{constructor(t,e,i,n,r,a,o,l,h){super(t,e,i,n,r,a,o,l,h),this.isCanvasTexture=!0,this.needsUpdate=!0}}class Ue extends Pt{constructor(t=1,e=1,i=1,n=8,r=1,a=!1,o=0,l=2*Math.PI){super(),this.type="CylinderGeometry",this.parameters={radiusTop:t,radiusBottom:e,height:i,radialSegments:n,heightSegments:r,openEnded:a,thetaStart:o,thetaLength:l};const h=this;n=Math.floor(n),r=Math.floor(r);const c=[],u=[],p=[],m=[];let f=0;const g=[],_=i/2;let v=0;function x(y){const b=f,S=new j,w=new M;let C=0;const L=y===!0?t:e,T=y===!0?1:-1;for(let I=1;I<=n;I++)u.push(0,_*T,0),p.push(0,T,0),m.push(.5,.5),f++;const E=f;for(let I=0;I<=n;I++){const z=I/n*l+o,B=Math.cos(z),O=Math.sin(z);w.x=L*O,w.y=_*T,w.z=L*B,u.push(w.x,w.y,w.z),p.push(0,T,0),S.x=.5*B+.5,S.y=.5*O*T+.5,m.push(S.x,S.y),f++}for(let I=0;I0&&x(!0),e>0&&x(!1)),this.setIndex(c),this.setAttribute("position",new et(u,3)),this.setAttribute("normal",new et(p,3)),this.setAttribute("uv",new et(m,2))}static fromJSON(t){return new Ue(t.radiusTop,t.radiusBottom,t.height,t.radialSegments,t.heightSegments,t.openEnded,t.thetaStart,t.thetaLength)}}class mc extends Pt{constructor(t=[],e=[],i=1,n=0){super(),this.type="PolyhedronGeometry",this.parameters={vertices:t,indices:e,radius:i,detail:n};const r=[],a=[];function o(p,m,f,g){const _=g+1,v=[];for(let x=0;x<=_;x++){v[x]=[];const y=p.clone().lerp(f,x/_),b=m.clone().lerp(f,x/_),S=_-x;for(let w=0;w<=S;w++)v[x][w]=w===0&&x===_?y:y.clone().lerp(b,w/S)}for(let x=0;x<_;x++)for(let y=0;y<2*(_-x)-1;y++){const b=Math.floor(y/2);y%2==0?(l(v[x][b+1]),l(v[x+1][b]),l(v[x][b])):(l(v[x][b+1]),l(v[x+1][b+1]),l(v[x+1][b]))}}function l(p){r.push(p.x,p.y,p.z)}function h(p,m){const f=3*p;m.x=t[f+0],m.y=t[f+1],m.z=t[f+2]}function c(p,m,f,g){g<0&&p.x===1&&(a[m]=p.x-1),f.x===0&&f.z===0&&(a[m]=g/2/Math.PI+.5)}function u(p){return Math.atan2(p.z,-p.x)}(function(p){const m=new M,f=new M,g=new M;for(let _=0;_.9&&y<.1&&(g<.2&&(a[f+0]+=1),_<.2&&(a[f+2]+=1),v<.2&&(a[f+4]+=1))}}()}(),this.setAttribute("position",new et(r,3)),this.setAttribute("normal",new et(r.slice(),3)),this.setAttribute("uv",new et(a,2)),n===0?this.computeVertexNormals():this.normalizeNormals()}static fromJSON(t){return new mc(t.vertices,t.indices,t.radius,t.details)}}class Lr extends mc{constructor(t=1,e=0){super([1,0,0,-1,0,0,0,1,0,0,-1,0,0,0,1,0,0,-1],[0,2,4,0,4,3,0,3,5,0,5,2,1,2,5,1,5,3,1,3,4,1,4,2],t,e),this.type="OctahedronGeometry",this.parameters={radius:t,detail:e}}static fromJSON(t){return new Lr(t.radius,t.detail)}}class Os extends Pt{constructor(t=1,e=32,i=16,n=0,r=2*Math.PI,a=0,o=Math.PI){super(),this.type="SphereGeometry",this.parameters={radius:t,widthSegments:e,heightSegments:i,phiStart:n,phiLength:r,thetaStart:a,thetaLength:o},e=Math.max(3,Math.floor(e)),i=Math.max(2,Math.floor(i));const l=Math.min(a+o,Math.PI);let h=0;const c=[],u=new M,p=new M,m=[],f=[],g=[],_=[];for(let v=0;v<=i;v++){const x=[],y=v/i;let b=0;v==0&&a==0?b=.5/e:v==i&&l==Math.PI&&(b=-.5/e);for(let S=0;S<=e;S++){const w=S/e;u.x=-t*Math.cos(n+w*r)*Math.sin(a+y*o),u.y=t*Math.cos(a+y*o),u.z=t*Math.sin(n+w*r)*Math.sin(a+y*o),f.push(u.x,u.y,u.z),p.copy(u).normalize(),g.push(p.x,p.y,p.z),_.push(w+b,1-y),x.push(h++)}c.push(x)}for(let v=0;v0)&&m.push(y,b,w),(v!==i-1||l0!=t>0&&this.version++,this._sheen=t}get clearcoat(){return this._clearcoat}set clearcoat(t){this._clearcoat>0!=t>0&&this.version++,this._clearcoat=t}get iridescence(){return this._iridescence}set iridescence(t){this._iridescence>0!=t>0&&this.version++,this._iridescence=t}get transmission(){return this._transmission}set transmission(t){this._transmission>0!=t>0&&this.version++,this._transmission=t}copy(t){return super.copy(t),this.defines={STANDARD:"",PHYSICAL:""},this.clearcoat=t.clearcoat,this.clearcoatMap=t.clearcoatMap,this.clearcoatRoughness=t.clearcoatRoughness,this.clearcoatRoughnessMap=t.clearcoatRoughnessMap,this.clearcoatNormalMap=t.clearcoatNormalMap,this.clearcoatNormalScale.copy(t.clearcoatNormalScale),this.ior=t.ior,this.iridescence=t.iridescence,this.iridescenceMap=t.iridescenceMap,this.iridescenceIOR=t.iridescenceIOR,this.iridescenceThicknessRange=[...t.iridescenceThicknessRange],this.iridescenceThicknessMap=t.iridescenceThicknessMap,this.sheen=t.sheen,this.sheenColor.copy(t.sheenColor),this.sheenColorMap=t.sheenColorMap,this.sheenRoughness=t.sheenRoughness,this.sheenRoughnessMap=t.sheenRoughnessMap,this.transmission=t.transmission,this.transmissionMap=t.transmissionMap,this.thickness=t.thickness,this.thicknessMap=t.thicknessMap,this.attenuationDistance=t.attenuationDistance,this.attenuationColor.copy(t.attenuationColor),this.specularIntensity=t.specularIntensity,this.specularIntensityMap=t.specularIntensityMap,this.specularColor.copy(t.specularColor),this.specularColorMap=t.specularColorMap,this}}class fc extends ve{constructor(t){super(),this.isMeshPhongMaterial=!0,this.type="MeshPhongMaterial",this.color=new tt(16777215),this.specular=new tt(1118481),this.shininess=30,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new tt(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Hn,this.normalScale=new j(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=Ro,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.flatShading=!1,this.fog=!0,this.setValues(t)}copy(t){return super.copy(t),this.color.copy(t.color),this.specular.copy(t.specular),this.shininess=t.shininess,this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.emissive.copy(t.emissive),this.emissiveMap=t.emissiveMap,this.emissiveIntensity=t.emissiveIntensity,this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.specularMap=t.specularMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.combine=t.combine,this.reflectivity=t.reflectivity,this.refractionRatio=t.refractionRatio,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.flatShading=t.flatShading,this.fog=t.fog,this}}const Kx={ShadowMaterial:class extends ve{constructor(s){super(),this.isShadowMaterial=!0,this.type="ShadowMaterial",this.color=new tt(0),this.transparent=!0,this.fog=!0,this.setValues(s)}copy(s){return super.copy(s),this.color.copy(s.color),this.fog=s.fog,this}},SpriteMaterial:class extends ve{constructor(s){super(),this.isSpriteMaterial=!0,this.type="SpriteMaterial",this.color=new tt(16777215),this.map=null,this.alphaMap=null,this.rotation=0,this.sizeAttenuation=!0,this.transparent=!0,this.fog=!0,this.setValues(s)}copy(s){return super.copy(s),this.color.copy(s.color),this.map=s.map,this.alphaMap=s.alphaMap,this.rotation=s.rotation,this.sizeAttenuation=s.sizeAttenuation,this.fog=s.fog,this}},RawShaderMaterial:hl,ShaderMaterial:Zt,PointsMaterial:Na,MeshPhysicalMaterial:Jn,MeshStandardMaterial:yn,MeshPhongMaterial:fc,MeshToonMaterial:class extends ve{constructor(s){super(),this.isMeshToonMaterial=!0,this.defines={TOON:""},this.type="MeshToonMaterial",this.color=new tt(16777215),this.map=null,this.gradientMap=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new tt(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Hn,this.normalScale=new j(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.fog=!0,this.setValues(s)}copy(s){return super.copy(s),this.color.copy(s.color),this.map=s.map,this.gradientMap=s.gradientMap,this.lightMap=s.lightMap,this.lightMapIntensity=s.lightMapIntensity,this.aoMap=s.aoMap,this.aoMapIntensity=s.aoMapIntensity,this.emissive.copy(s.emissive),this.emissiveMap=s.emissiveMap,this.emissiveIntensity=s.emissiveIntensity,this.bumpMap=s.bumpMap,this.bumpScale=s.bumpScale,this.normalMap=s.normalMap,this.normalMapType=s.normalMapType,this.normalScale.copy(s.normalScale),this.displacementMap=s.displacementMap,this.displacementScale=s.displacementScale,this.displacementBias=s.displacementBias,this.alphaMap=s.alphaMap,this.wireframe=s.wireframe,this.wireframeLinewidth=s.wireframeLinewidth,this.wireframeLinecap=s.wireframeLinecap,this.wireframeLinejoin=s.wireframeLinejoin,this.fog=s.fog,this}},MeshNormalMaterial:class extends ve{constructor(s){super(),this.isMeshNormalMaterial=!0,this.type="MeshNormalMaterial",this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Hn,this.normalScale=new j(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.flatShading=!1,this.setValues(s)}copy(s){return super.copy(s),this.bumpMap=s.bumpMap,this.bumpScale=s.bumpScale,this.normalMap=s.normalMap,this.normalMapType=s.normalMapType,this.normalScale.copy(s.normalScale),this.displacementMap=s.displacementMap,this.displacementScale=s.displacementScale,this.displacementBias=s.displacementBias,this.wireframe=s.wireframe,this.wireframeLinewidth=s.wireframeLinewidth,this.flatShading=s.flatShading,this}},MeshLambertMaterial:class extends ve{constructor(s){super(),this.isMeshLambertMaterial=!0,this.type="MeshLambertMaterial",this.color=new tt(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new tt(0),this.emissiveIntensity=1,this.emissiveMap=null,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=Ro,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.fog=!0,this.setValues(s)}copy(s){return super.copy(s),this.color.copy(s.color),this.map=s.map,this.lightMap=s.lightMap,this.lightMapIntensity=s.lightMapIntensity,this.aoMap=s.aoMap,this.aoMapIntensity=s.aoMapIntensity,this.emissive.copy(s.emissive),this.emissiveMap=s.emissiveMap,this.emissiveIntensity=s.emissiveIntensity,this.specularMap=s.specularMap,this.alphaMap=s.alphaMap,this.envMap=s.envMap,this.combine=s.combine,this.reflectivity=s.reflectivity,this.refractionRatio=s.refractionRatio,this.wireframe=s.wireframe,this.wireframeLinewidth=s.wireframeLinewidth,this.wireframeLinecap=s.wireframeLinecap,this.wireframeLinejoin=s.wireframeLinejoin,this.fog=s.fog,this}},MeshDepthMaterial:Bp,MeshDistanceMaterial:Vp,MeshBasicMaterial:ae,MeshMatcapMaterial:class extends ve{constructor(s){super(),this.isMeshMatcapMaterial=!0,this.defines={MATCAP:""},this.type="MeshMatcapMaterial",this.color=new tt(16777215),this.matcap=null,this.map=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Hn,this.normalScale=new j(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.flatShading=!1,this.fog=!0,this.setValues(s)}copy(s){return super.copy(s),this.defines={MATCAP:""},this.color.copy(s.color),this.matcap=s.matcap,this.map=s.map,this.bumpMap=s.bumpMap,this.bumpScale=s.bumpScale,this.normalMap=s.normalMap,this.normalMapType=s.normalMapType,this.normalScale.copy(s.normalScale),this.displacementMap=s.displacementMap,this.displacementScale=s.displacementScale,this.displacementBias=s.displacementBias,this.alphaMap=s.alphaMap,this.flatShading=s.flatShading,this.fog=s.fog,this}},LineDashedMaterial:class extends Is{constructor(s){super(),this.isLineDashedMaterial=!0,this.type="LineDashedMaterial",this.scale=1,this.dashSize=3,this.gapSize=1,this.setValues(s)}copy(s){return super.copy(s),this.scale=s.scale,this.dashSize=s.dashSize,this.gapSize=s.gapSize,this}},LineBasicMaterial:Is,Material:ve};ve.fromType=function(s){return new Kx[s]};const le={arraySlice:function(s,t,e){return le.isTypedArray(s)?new s.constructor(s.subarray(t,e!==void 0?e:s.length)):s.slice(t,e)},convertArray:function(s,t,e){return!s||!e&&s.constructor===t?s:typeof t.BYTES_PER_ELEMENT=="number"?new t(s):Array.prototype.slice.call(s)},isTypedArray:function(s){return ArrayBuffer.isView(s)&&!(s instanceof DataView)},getKeyframeOrder:function(s){const t=s.length,e=new Array(t);for(let i=0;i!==t;++i)e[i]=i;return e.sort(function(i,n){return s[i]-s[n]}),e},sortedArray:function(s,t,e){const i=s.length,n=new s.constructor(i);for(let r=0,a=0;a!==i;++r){const o=e[r]*t;for(let l=0;l!==t;++l)n[a++]=s[o+l]}return n},flattenJSON:function(s,t,e,i){let n=1,r=s[0];for(;r!==void 0&&r[i]===void 0;)r=s[n++];if(r===void 0)return;let a=r[i];if(a!==void 0)if(Array.isArray(a))do a=r[i],a!==void 0&&(t.push(r.time),e.push.apply(e,a)),r=s[n++];while(r!==void 0);else if(a.toArray!==void 0)do a=r[i],a!==void 0&&(t.push(r.time),a.toArray(e,e.length)),r=s[n++];while(r!==void 0);else do a=r[i],a!==void 0&&(t.push(r.time),e.push(a)),r=s[n++];while(r!==void 0)},subclip:function(s,t,e,i,n=30){const r=s.clone();r.name=t;const a=[];for(let l=0;l=i)){u.push(h.times[m]);for(let g=0;gr.tracks[l].times[0]&&(o=r.tracks[l].times[0]);for(let l=0;l=o.times[f]){const v=f*u+c,x=v+u-c;g=le.arraySlice(o.values,v,x)}else{const v=o.createInterpolant(),x=c,y=u-c;v.evaluate(r),g=le.arraySlice(v.resultBuffer,x,y)}l==="quaternion"&&new Ht().fromArray(g).normalize().conjugate().toArray(g);const _=h.times.length;for(let v=0;v<_;++v){const x=v*m+p;if(l==="quaternion")Ht.multiplyQuaternionsFlat(h.values,x,g,0,h.values,x);else{const y=m-2*p;for(let b=0;b=r)break t;{const o=e[1];t=r)break e}a=i,i=0}}for(;i>>1;te;)--a;if(++a,r!==0||a!==n){r>=a&&(a=Math.max(a,1),r=a-1);const o=this.getValueSize();this.times=le.arraySlice(i,r,a),this.values=le.arraySlice(this.values,r*o,a*o)}return this}validate(){let t=!0;const e=this.getValueSize();e-Math.floor(e)!=0&&(console.error("THREE.KeyframeTrack: Invalid value size in track.",this),t=!1);const i=this.times,n=this.values,r=i.length;r===0&&(console.error("THREE.KeyframeTrack: Track is empty.",this),t=!1);let a=null;for(let o=0;o!==r;o++){const l=i[o];if(typeof l=="number"&&isNaN(l)){console.error("THREE.KeyframeTrack: Time is not a valid number.",this,o,l),t=!1;break}if(a!==null&&a>l){console.error("THREE.KeyframeTrack: Out of order keys.",this,o,l,a),t=!1;break}a=l}if(n!==void 0&&le.isTypedArray(n))for(let o=0,l=n.length;o!==l;++o){const h=n[o];if(isNaN(h)){console.error("THREE.KeyframeTrack: Value is not a valid number.",this,o,h),t=!1;break}}return t}optimize(){const t=le.arraySlice(this.times),e=le.arraySlice(this.values),i=this.getValueSize(),n=this.getInterpolation()===Ph,r=t.length-1;let a=1;for(let o=1;o0){t[a]=t[r];for(let o=r*i,l=a*i,h=0;h!==i;++h)e[l+h]=e[o+h];++a}return a!==t.length?(this.times=le.arraySlice(t,0,a),this.values=le.arraySlice(e,0,a*i)):(this.times=t,this.values=e),this}clone(){const t=le.arraySlice(this.times,0),e=le.arraySlice(this.values,0),i=new this.constructor(this.name,t,e);return i.createInterpolant=this.createInterpolant,i}}qi.prototype.TimeBufferType=Float32Array,qi.prototype.ValueBufferType=Float32Array,qi.prototype.DefaultInterpolation=cr;class Or extends qi{}Or.prototype.ValueTypeName="bool",Or.prototype.ValueBufferType=Array,Or.prototype.DefaultInterpolation=ya,Or.prototype.InterpolantFactoryMethodLinear=void 0,Or.prototype.InterpolantFactoryMethodSmooth=void 0;class cm extends qi{}cm.prototype.ValueTypeName="color";class Ua extends qi{}Ua.prototype.ValueTypeName="number";class ty extends Ir{constructor(t,e,i,n){super(t,e,i,n)}interpolate_(t,e,i,n){const r=this.resultBuffer,a=this.sampleValues,o=this.valueSize,l=(i-e)/(n-e);let h=t*o;for(let c=h+o;h!==c;h+=4)Ht.slerpFlat(r,0,a,h-o,a,h,l);return r}}class ks extends qi{InterpolantFactoryMethodLinear(t){return new ty(this.times,this.values,this.getValueSize(),t)}}ks.prototype.ValueTypeName="quaternion",ks.prototype.DefaultInterpolation=cr,ks.prototype.InterpolantFactoryMethodSmooth=void 0;class zr extends qi{}zr.prototype.ValueTypeName="string",zr.prototype.ValueBufferType=Array,zr.prototype.DefaultInterpolation=ya,zr.prototype.InterpolantFactoryMethodLinear=void 0,zr.prototype.InterpolantFactoryMethodSmooth=void 0;class Fa extends qi{}Fa.prototype.ValueTypeName="vector";class gc{constructor(t,e=-1,i,n=2500){this.name=t,this.tracks=i,this.duration=e,this.blendMode=n,this.uuid=Ei(),this.duration<0&&this.resetDuration()}static parse(t){const e=[],i=t.tracks,n=1/(t.fps||1);for(let a=0,o=i.length;a!==o;++a)e.push(ey(i[a]).scale(n));const r=new this(t.name,t.duration,e,t.blendMode);return r.uuid=t.uuid,r}static toJSON(t){const e=[],i=t.tracks,n={name:t.name,duration:t.duration,tracks:e,uuid:t.uuid,blendMode:t.blendMode};for(let r=0,a=i.length;r!==a;++r)e.push(qi.toJSON(i[r]));return n}static CreateFromMorphTargetSequence(t,e,i,n){const r=e.length,a=[];for(let o=0;o1){const u=c[1];let p=n[u];p||(n[u]=p=[]),p.push(h)}}const a=[];for(const o in n)a.push(this.CreateFromMorphTargetSequence(o,n[o],e,i));return a}static parseAnimation(t,e){if(!t)return console.error("THREE.AnimationClip: No animation in JSONLoader data."),null;const i=function(c,u,p,m,f){if(p.length!==0){const g=[],_=[];le.flattenJSON(p,g,_,m),g.length!==0&&f.push(new c(u,g,_))}},n=[],r=t.name||"default",a=t.fps||30,o=t.blendMode;let l=t.length||-1;const h=t.hierarchy||[];for(let c=0;c{e&&e(r),this.manager.itemEnd(t)},0),r;if(bn[t]!==void 0)return void bn[t].push({onLoad:e,onProgress:i,onError:n});bn[t]=[],bn[t].push({onLoad:e,onProgress:i,onError:n});const a=new Request(t,{headers:new Headers(this.requestHeader),credentials:this.withCredentials?"include":"same-origin"}),o=this.mimeType,l=this.responseType;fetch(a).then(h=>{if(h.status===200||h.status===0){if(h.status===0&&console.warn("THREE.FileLoader: HTTP Status 0 received."),typeof ReadableStream>"u"||h.body===void 0||h.body.getReader===void 0)return h;const c=bn[t],u=h.body.getReader(),p=h.headers.get("Content-Length"),m=p?parseInt(p):0,f=m!==0;let g=0;const _=new ReadableStream({start(v){(function x(){u.read().then(({done:y,value:b})=>{if(y)v.close();else{g+=b.byteLength;const S=new ProgressEvent("progress",{lengthComputable:f,loaded:g,total:m});for(let w=0,C=c.length;w{switch(l){case"arraybuffer":return h.arrayBuffer();case"blob":return h.blob();case"document":return h.text().then(c=>new DOMParser().parseFromString(c,o));case"json":return h.json();default:if(o===void 0)return h.text();{const c=/charset="?([^;"\s]*)"?/i.exec(o),u=c&&c[1]?c[1].toLowerCase():void 0,p=new TextDecoder(u);return h.arrayBuffer().then(m=>p.decode(m))}}}).then(h=>{kr.add(t,h);const c=bn[t];delete bn[t];for(let u=0,p=c.length;u{const c=bn[t];if(c===void 0)throw this.manager.itemError(t),h;delete bn[t];for(let u=0,p=c.length;u{this.manager.itemEnd(t)}),this.manager.itemStart(t)}setResponseType(t){return this.responseType=t,this}setMimeType(t){return this.mimeType=t,this}}class dm extends Kn{constructor(t){super(t)}load(t,e,i,n){this.path!==void 0&&(t=this.path+t),t=this.manager.resolveURL(t);const r=this,a=kr.get(t);if(a!==void 0)return r.manager.itemStart(t),setTimeout(function(){e&&e(a),r.manager.itemEnd(t)},0),a;const o=Ta("img");function l(){c(),kr.add(t,this),e&&e(this),r.manager.itemEnd(t)}function h(u){c(),n&&n(u),r.manager.itemError(t),r.manager.itemEnd(t)}function c(){o.removeEventListener("load",l,!1),o.removeEventListener("error",h,!1)}return o.addEventListener("load",l,!1),o.addEventListener("error",h,!1),t.slice(0,5)!=="data:"&&this.crossOrigin!==void 0&&(o.crossOrigin=this.crossOrigin),r.manager.itemStart(t),o.src=t,o}}class iy extends Kn{constructor(t){super(t)}load(t,e,i,n){const r=new tl,a=new dm(this.manager);a.setCrossOrigin(this.crossOrigin),a.setPath(this.path);let o=0;function l(h){a.load(t[h],function(c){r.images[h]=c,o++,o===6&&(r.needsUpdate=!0,e&&e(r))},void 0,n)}for(let h=0;h"u"&&console.warn("THREE.ImageBitmapLoader: createImageBitmap() not supported."),typeof fetch>"u"&&console.warn("THREE.ImageBitmapLoader: fetch() not supported."),this.options={premultiplyAlpha:"none"}}setOptions(t){return this.options=t,this}load(t,e,i,n){t===void 0&&(t=""),this.path!==void 0&&(t=this.path+t),t=this.manager.resolveURL(t);const r=this,a=kr.get(t);if(a!==void 0)return r.manager.itemStart(t),setTimeout(function(){e&&e(a),r.manager.itemEnd(t)},0),a;const o={};o.credentials=this.crossOrigin==="anonymous"?"same-origin":"include",o.headers=this.requestHeader,fetch(t,o).then(function(l){return l.blob()}).then(function(l){return createImageBitmap(l,Object.assign(r.options,{colorSpaceConversion:"none"}))}).then(function(l){kr.add(t,l),e&&e(l),r.manager.itemEnd(t)}).catch(function(l){n&&n(l),r.manager.itemError(t),r.manager.itemEnd(t)}),r.manager.itemStart(t)}}class xc{constructor(t=!0){this.autoStart=t,this.startTime=0,this.oldTime=0,this.elapsedTime=0,this.running=!1}start(){this.startTime=xm(),this.oldTime=this.startTime,this.elapsedTime=0,this.running=!0}stop(){this.getElapsedTime(),this.running=!1,this.autoStart=!1}getElapsedTime(){return this.getDelta(),this.elapsedTime}getDelta(){let t=0;if(this.autoStart&&!this.running)return this.start(),0;if(this.running){const e=xm();t=(e-this.oldTime)/1e3,this.oldTime=e,this.elapsedTime+=t}return t}}function xm(){return(typeof performance>"u"?Date:performance).now()}class uy{constructor(t,e,i){let n,r,a;switch(this.binding=t,this.valueSize=i,e){case"quaternion":n=this._slerp,r=this._slerpAdditive,a=this._setAdditiveIdentityQuaternion,this.buffer=new Float64Array(6*i),this._workIndex=5;break;case"string":case"bool":n=this._select,r=this._select,a=this._setAdditiveIdentityOther,this.buffer=new Array(5*i);break;default:n=this._lerp,r=this._lerpAdditive,a=this._setAdditiveIdentityNumeric,this.buffer=new Float64Array(5*i)}this._mixBufferRegion=n,this._mixBufferRegionAdditive=r,this._setIdentity=a,this._origIndex=3,this._addIndex=4,this.cumulativeWeight=0,this.cumulativeWeightAdditive=0,this.useCount=0,this.referenceCount=0}accumulate(t,e){const i=this.buffer,n=this.valueSize,r=t*n+n;let a=this.cumulativeWeight;if(a===0){for(let o=0;o!==n;++o)i[r+o]=i[o];a=e}else{a+=e;const o=e/a;this._mixBufferRegion(i,r,0,o,n)}this.cumulativeWeight=a}accumulateAdditive(t){const e=this.buffer,i=this.valueSize,n=i*this._addIndex;this.cumulativeWeightAdditive===0&&this._setIdentity(),this._mixBufferRegionAdditive(e,n,0,t,i),this.cumulativeWeightAdditive+=t}apply(t){const e=this.valueSize,i=this.buffer,n=t*e+e,r=this.cumulativeWeight,a=this.cumulativeWeightAdditive,o=this.binding;if(this.cumulativeWeight=0,this.cumulativeWeightAdditive=0,r<1){const l=e*this._origIndex;this._mixBufferRegion(i,n,l,1-r,e)}a>0&&this._mixBufferRegionAdditive(i,n,this._addIndex*e,1,e);for(let l=e,h=e+e;l!==h;++l)if(i[l]!==i[l+e]){o.setValue(i,n);break}}saveOriginalState(){const t=this.binding,e=this.buffer,i=this.valueSize,n=i*this._origIndex;t.getValue(e,n);for(let r=i,a=n;r!==a;++r)e[r]=e[n+r%i];this._setIdentity(),this.cumulativeWeight=0,this.cumulativeWeightAdditive=0}restoreOriginalState(){const t=3*this.valueSize;this.binding.setValue(this.buffer,t)}_setAdditiveIdentityNumeric(){const t=this._addIndex*this.valueSize,e=t+this.valueSize;for(let i=t;i=.5)for(let a=0;a!==r;++a)t[e+a]=t[i+a]}_slerp(t,e,i,n){Ht.slerpFlat(t,e,t,e,t,i,n)}_slerpAdditive(t,e,i,n,r){const a=this._workIndex*r;Ht.multiplyQuaternionsFlat(t,a,t,e,t,i),Ht.slerpFlat(t,e,t,e,t,a,n)}_lerp(t,e,i,n,r){const a=1-n;for(let o=0;o!==r;++o){const l=e+o;t[l]=t[l]*a+t[i+o]*n}}_lerpAdditive(t,e,i,n,r){for(let a=0;a!==r;++a){const o=e+a;t[o]=t[o]+t[i+a]*n}}}const yc="\\[\\]\\.:\\/",dy=new RegExp("["+yc+"]","g"),bc="[^"+yc+"]",py="[^"+yc.replace("\\.","")+"]",my=/((?:WC+[\/:])*)/.source.replace("WC",bc),fy=/(WCOD+)?/.source.replace("WCOD",py),gy=/(?:\.(WC+)(?:\[(.+)\])?)?/.source.replace("WC",bc),_y=/\.(WC+)(?:\[(.+)\])?/.source.replace("WC",bc),vy=new RegExp("^"+my+fy+gy+_y+"$"),xy=["material","materials","bones"];class Xt{constructor(t,e,i){this.path=e,this.parsedPath=i||Xt.parseTrackName(e),this.node=Xt.findNode(t,this.parsedPath.nodeName)||t,this.rootNode=t,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}static create(t,e,i){return t&&t.isAnimationObjectGroup?new Xt.Composite(t,e,i):new Xt(t,e,i)}static sanitizeNodeName(t){return t.replace(/\s/g,"_").replace(dy,"")}static parseTrackName(t){const e=vy.exec(t);if(e===null)throw new Error("PropertyBinding: Cannot parse trackName: "+t);const i={nodeName:e[2],objectName:e[3],objectIndex:e[4],propertyName:e[5],propertyIndex:e[6]},n=i.nodeName&&i.nodeName.lastIndexOf(".");if(n!==void 0&&n!==-1){const r=i.nodeName.substring(n+1);xy.indexOf(r)!==-1&&(i.nodeName=i.nodeName.substring(0,n),i.objectName=r)}if(i.propertyName===null||i.propertyName.length===0)throw new Error("PropertyBinding: can not parse propertyName from trackName: "+t);return i}static findNode(t,e){if(e===void 0||e===""||e==="."||e===-1||e===t.name||e===t.uuid)return t;if(t.skeleton){const i=t.skeleton.getBoneByName(e);if(i!==void 0)return i}if(t.children){const i=function(r){for(let a=0;a0){const l=this._interpolants,h=this._propertyBindings;if(this.blendMode===2501)for(let c=0,u=l.length;c!==u;++c)l[c].evaluate(a),h[c].accumulateAdditive(o);else for(let c=0,u=l.length;c!==u;++c)l[c].evaluate(a),h[c].accumulate(n,o)}}_updateWeight(t){let e=0;if(this.enabled){e=this.weight;const i=this._weightInterpolant;if(i!==null){const n=i.evaluate(t)[0];e*=n,t>i.parameterPositions[1]&&(this.stopFading(),n===0&&(this.enabled=!1))}}return this._effectiveWeight=e,e}_updateTimeScale(t){let e=0;if(!this.paused){e=this.timeScale;const i=this._timeScaleInterpolant;i!==null&&(e*=i.evaluate(t)[0],t>i.parameterPositions[1]&&(this.stopWarping(),e===0?this.paused=!0:this.timeScale=e))}return this._effectiveTimeScale=e,e}_updateTime(t){const e=this._clip.duration,i=this.loop;let n=this.time+t,r=this._loopCount;const a=i===2202;if(t===0)return r===-1?n:a&&(1&r)==1?e-n:n;if(i===2200){r===-1&&(this._loopCount=0,this._setEndings(!0,!0,!1));t:{if(n>=e)n=e;else{if(!(n<0)){this.time=n;break t}n=0}this.clampWhenFinished?this.paused=!0:this.enabled=!1,this.time=n,this._mixer.dispatchEvent({type:"finished",action:this,direction:t<0?-1:1})}}else{if(r===-1&&(t>=0?(r=0,this._setEndings(!0,this.repetitions===0,a)):this._setEndings(this.repetitions===0,!0,a)),n>=e||n<0){const o=Math.floor(n/e);n-=e*o,r+=Math.abs(o);const l=this.repetitions-r;if(l<=0)this.clampWhenFinished?this.paused=!0:this.enabled=!1,n=t>0?e:0,this.time=n,this._mixer.dispatchEvent({type:"finished",action:this,direction:t>0?1:-1});else{if(l===1){const h=t<0;this._setEndings(h,!h,a)}else this._setEndings(!1,!1,a);this._loopCount=r,this.time=n,this._mixer.dispatchEvent({type:"loop",action:this,loopDelta:o})}}else this.time=n;if(a&&(1&r)==1)return e-n}return n}_setEndings(t,e,i){const n=this._interpolantSettings;i?(n.endingStart=dr,n.endingEnd=dr):(n.endingStart=t?this.zeroSlopeAtStart?dr:ur:Io,n.endingEnd=e?this.zeroSlopeAtEnd?dr:ur:Io)}_scheduleFading(t,e,i){const n=this._mixer,r=n.time;let a=this._weightInterpolant;a===null&&(a=n._lendControlInterpolant(),this._weightInterpolant=a);const o=a.parameterPositions,l=a.sampleValues;return o[0]=r,l[0]=e,o[1]=r+t,l[1]=i,this}}const by=new Float32Array(1);class My extends pn{constructor(t){super(),this._root=t,this._initMemoryManager(),this._accuIndex=0,this.time=0,this.timeScale=1}_bindAction(t,e){const i=t._localRoot||this._root,n=t._clip.tracks,r=n.length,a=t._propertyBindings,o=t._interpolants,l=i.uuid,h=this._bindingsByRootAndName;let c=h[l];c===void 0&&(c={},h[l]=c);for(let u=0;u!==r;++u){const p=n[u],m=p.name;let f=c[m];if(f!==void 0)++f.referenceCount,a[u]=f;else{if(f=a[u],f!==void 0){f._cacheIndex===null&&(++f.referenceCount,this._addInactiveBinding(f,l,m));continue}const g=e&&e._propertyBindings[u].binding.parsedPath;f=new uy(Xt.create(i,m,g),p.ValueTypeName,p.getValueSize()),++f.referenceCount,this._addInactiveBinding(f,l,m),a[u]=f}o[u].resultBuffer=f.buffer}}_activateAction(t){if(!this._isActiveAction(t)){if(t._cacheIndex===null){const i=(t._localRoot||this._root).uuid,n=t._clip.uuid,r=this._actionsByClip[n];this._bindAction(t,r&&r.knownActions[0]),this._addInactiveAction(t,n,i)}const e=t._propertyBindings;for(let i=0,n=e.length;i!==n;++i){const r=e[i];r.useCount++==0&&(this._lendBinding(r),r.saveOriginalState())}this._lendAction(t)}}_deactivateAction(t){if(this._isActiveAction(t)){const e=t._propertyBindings;for(let i=0,n=e.length;i!==n;++i){const r=e[i];--r.useCount==0&&(r.restoreOriginalState(),this._takeBackBinding(r))}this._takeBackAction(t)}}_initMemoryManager(){this._actions=[],this._nActiveActions=0,this._actionsByClip={},this._bindings=[],this._nActiveBindings=0,this._bindingsByRootAndName={},this._controlInterpolants=[],this._nActiveControlInterpolants=0;const t=this;this.stats={actions:{get total(){return t._actions.length},get inUse(){return t._nActiveActions}},bindings:{get total(){return t._bindings.length},get inUse(){return t._nActiveBindings}},controlInterpolants:{get total(){return t._controlInterpolants.length},get inUse(){return t._nActiveControlInterpolants}}}}_isActiveAction(t){const e=t._cacheIndex;return e!==null&&e=0;--e)t[e].stop();return this}update(t){t*=this.timeScale;const e=this._actions,i=this._nActiveActions,n=this.time+=t,r=Math.sign(t),a=this._accuIndex^=1;for(let h=0;h!==i;++h)e[h]._update(n,t,r,a);const o=this._bindings,l=this._nActiveBindings;for(let h=0;h!==l;++h)o[h].apply(a);return this}setTime(t){this.time=0;for(let e=0;ethis.max.x||t.ythis.max.y)}containsBox(t){return this.min.x<=t.min.x&&t.max.x<=this.max.x&&this.min.y<=t.min.y&&t.max.y<=this.max.y}getParameter(t,e){return e.set((t.x-this.min.x)/(this.max.x-this.min.x),(t.y-this.min.y)/(this.max.y-this.min.y))}intersectsBox(t){return!(t.max.xthis.max.x||t.max.ythis.max.y)}clampPoint(t,e){return e.copy(t).clamp(this.min,this.max)}distanceToPoint(t){return bm.copy(t).clamp(this.min,this.max).sub(t).length()}intersect(t){return this.min.max(t.min),this.max.min(t.max),this}union(t){return this.min.min(t.min),this.max.max(t.max),this}translate(t){return this.min.add(t),this.max.add(t),this}equals(t){return t.min.equals(this.min)&&t.max.equals(this.max)}}class wy extends dc{constructor(t,e=16776960){const i=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),n=new Pt;n.setIndex(new se(i,1)),n.setAttribute("position",new et([1,1,1,-1,1,1,-1,-1,1,1,-1,1,1,1,-1,-1,1,-1,-1,-1,-1,1,-1,-1],3)),super(n,new Is({color:e,toneMapped:!1})),this.box=t,this.type="Box3Helper",this.geometry.computeBoundingSphere()}updateMatrixWorld(t){const e=this.box;e.isEmpty()||(e.getCenter(this.position),e.getSize(this.scale),this.scale.multiplyScalar(.5),super.updateMatrixWorld(t))}}class dl{static toHalfFloat(t){Math.abs(t)>65504&&console.warn("THREE.DataUtils.toHalfFloat(): Value out of range."),t=ke(t,-65504,65504),Sm[0]=t;const e=Tm[0],i=e>>23&511;return Ii[i]+((8388607&e)>>Oi[i])}static fromHalfFloat(t){const e=t>>10;return Tm[0]=wc[Cm[e]+(1023&t)]+Ur[e],Sm[0]}}const wm=new ArrayBuffer(4),Sm=new Float32Array(wm),Tm=new Uint32Array(wm),Ii=new Uint32Array(512),Oi=new Uint32Array(512);for(let s=0;s<256;++s){const t=s-127;t<-27?(Ii[s]=0,Ii[256|s]=32768,Oi[s]=24,Oi[256|s]=24):t<-14?(Ii[s]=1024>>-t-14,Ii[256|s]=1024>>-t-14|32768,Oi[s]=-t-1,Oi[256|s]=-t-1):t<=15?(Ii[s]=t+15<<10,Ii[256|s]=t+15<<10|32768,Oi[s]=13,Oi[256|s]=13):t<128?(Ii[s]=31744,Ii[256|s]=64512,Oi[s]=24,Oi[256|s]=24):(Ii[s]=31744,Ii[256|s]=64512,Oi[s]=13,Oi[256|s]=13)}const wc=new Uint32Array(2048),Ur=new Uint32Array(64),Cm=new Uint32Array(64);for(let s=1;s<1024;++s){let t=s<<13,e=0;for(;!(8388608&t);)t<<=1,e-=8388608;t&=-8388609,e+=947912704,wc[s]=t|e}for(let s=1024;s<2048;++s)wc[s]=939524096+(s-1024<<13);for(let s=1;s<31;++s)Ur[s]=s<<23;Ur[31]=1199570944,Ur[32]=2147483648;for(let s=33;s<63;++s)Ur[s]=2147483648+(s-32<<23);Ur[63]=3347054592;for(let s=1;s<64;++s)s!==32&&(Cm[s]=1024);typeof __THREE_DEVTOOLS__<"u"&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("register",{detail:{revision:yh}})),typeof window<"u"&&(window.__THREE__?console.warn("WARNING: Multiple instances of Three.js being imported."):window.__THREE__=yh);var Em,Am,Sc,Sy=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof Co<"u"?Co:typeof self<"u"?self:{},Pm={exports:{}};Am=Sy,Sc=function(){return function(){return function(s){var t=[];if(s.length===0)return"";if(typeof s[0]!="string")throw new TypeError("Url must be a string. Received "+s[0]);if(s[0].match(/^[^/:]+:\/*$/)&&s.length>1){var e=s.shift();s[0]=e+s[0]}s[0].match(/^file:\/\/\//)?s[0]=s[0].replace(/^([^/:]+):\/*/,"$1:///"):s[0]=s[0].replace(/^([^/:]+):\/*/,"$1://");for(var i=0;i0&&(n=n.replace(/^[\/]+/,"")),n=i0?"?":"")+a.join("&")}(typeof arguments[0]=="object"?arguments[0]:[].slice.call(arguments))}},(Em=Pm).exports?Em.exports=Sc():Am.urljoin=Sc();const Tc=Pm.exports;let Cc=null;function pl(){if(Cc!==null)return Cc;let s="";if(s=typeof MAPV_BASE_URL=="string"?MAPV_BASE_URL:"https://mapv-three.bj.bcebos.com",!s)throw new Error("Unable to determine base URL automatically, try defining a global variable called MAPV_BASE_URL.");return Cc=s,s}function Jt(...s){return Tc(pl(),...s)}const Ty=Object.freeze(Object.defineProperty({__proto__:null,getBaseUrl:pl,getAssetUrl:Jt},Symbol.toStringTag,{value:"Module"}));class Fr extends De{constructor(){super(),d(this,"isEmptySky",!0),d(this,"_addDefaultEnvMap",!1),d(this,"_time",21600),d(this,"_startTimestamp",new Date().getTime()),d(this,"_timeAnimation",!1),d(this,"_timeAnimationSpeed",1),d(this,"_skyLightIntensity",.5),d(this,"_skyLightAttenuationRatio",.2),d(this,"_sunIntensityBias",0),d(this,"_sunIntensityScale",.8),d(this,"_weather","partlyCloudy"),d(this,"_timeChangedListeners",[]),d(this,"_sunDirection",new M),d(this,"_sunLightColorDay",new tt(16777215)),d(this,"_sunLightColorSunset",new tt(15090944)),d(this,"_sunLightColorCurrent",new tt(16777215)),d(this,"_sunRadian",null),d(this,"_skyLightColorDay",new tt(16777215)),d(this,"_skyLightColorNight",new tt(16777215)),d(this,"_groundLightColorDay",new tt(16777215)),d(this,"_groundLightColorNight",new tt(16758093)),d(this,"_lightNeedsUpdate",!1),d(this,"_sunNeedsUpdate",!1),d(this,"_affectWorld",!1),d(this,"updateSunLightShadowCamera",()=>{const i=this.engine;if(!i.renderer.shadowMap.enabled){const g=this.sunLight;return g.position.copy(this._sunDirection),g.target.position.set(0,0,0),g.updateMatrix(),g.updateMatrixWorld(),g.target.updateMatrix(),void g.target.updateMatrixWorld()}const n=this._sunDirection,r=[n.x,n.y,n.z],a=this.sunLight,[o,l]=i.map.getProjectionCenter();let h=i.map.getCameraDistance(),c=1e3;const u=c*r[0],p=c*r[1],m=c*r[2];a.position.set(o+u,l+p,m),a.target.position.set(o,l,0),a.shadow.camera.left=-h,a.shadow.camera.bottom=-h,a.shadow.camera.right=h,a.shadow.camera.top=h,a.shadow.camera.near=1,a.shadow.camera.far=h>2e4?1:2e3,a.updateMatrix(),a.updateMatrixWorld(),a.target.updateMatrix(),a.target.updateMatrixWorld(),a.shadow.camera.updateProjectionMatrix();const f=re.mapLinear(i.rendering.camera.position.z,1,500,-8e-5,-.001);a.shadow.bias=f<-.001?-.001:f});const t=this.sunLight=new _m(16777215,.6),e=this.skyLight=new sy(16755200,255,this._skyLightIntensity);e.position.set(0,0,1),t.castShadow=!0,t.shadow.mapSize=new j(1024,1024),t.shadow.bias=-1e-4,this.add(t),this.add(t.target),this.add(e),t.matrixAutoUpdate=!1,t.target.matrixAutoUpdate=!1,this.renderOrder=-100}afterAddToEngine(t){if(this.engine=t,!this.isDynamicSky&&!this.isStaticSky&&this._addDefaultEnvMap){const e=new Ie().load(Jt("assets/textures/sky/partlyCloudy_default.jpg"));e.mapping=Do,e.encoding=Bt,t.rendering.scene.environment=e}}set time(t){this._time=t;const e=this._sunRadian=(t/86400-.25)*Math.PI*2,i=Math.cos(e),n=Math.sin(e);this._sunDirection.set(i,0,n),this._lightNeedsUpdate=!0,this.onTimeChanged(this._time);for(const r of this._timeChangedListeners)r(t)}get time(){return this._time}get weather(){return this._weather}set weather(t){this._weather=t,this.onWeatherChanged(t)}get timeAnimation(){return this._timeAnimation}set timeAnimation(t){t&&(this._startTimestamp=new Date().getTime()-this.time/86400*(86400/this._timeAnimationSpeed)),this._timeAnimation=t}get timeAnimationSpeed(){return this._timeAnimationSpeed}set timeAnimationSpeed(t){this._timeAnimationSpeed=t}tickTime(){const t=new Date().getTime()-this._startTimestamp,e=86400/this._timeAnimationSpeed;this.time=t%e/e*86400}onBeforeScenePrepareRender(){this._timeAnimation&&this.tickTime(),this._lightNeedsUpdate&&this.updateLight(),this.updateSunLightShadowCamera()}updateLight(){const t=this._sunDirection.z,e=t>.5?1:t<0?0:2*t;this.sunLight.intensity=this._sunIntensityBias+this._sunIntensityScale*e;const i=this.sunsetRatio=t>.259?0:t<0?1:1-t/.259;this.skyLight.intensity=this._skyLightIntensity*re.clamp(1-i,this._skyLightAttenuationRatio,1),this._sunLightColorCurrent.lerpColors(this._sunLightColorDay,this._sunLightColorSunset,i),this.sunLight.color.copy(this._sunLightColorCurrent),this.skyLight.color.lerpColors(this._skyLightColorDay,this._skyLightColorNight,i),this.skyLight.groundColor.lerpColors(this._groundLightColorDay,this._groundLightColorNight,i)}addTimeChangedListener(t){this._timeChangedListeners.indexOf(t)===-1&&this._timeChangedListeners.push(t)}removeTimeChangedListener(t){const e=this._timeChangedListeners.indexOf(t);e!==-1&&this._timeChangedListeners.splice(e,1)}onTimeChanged(t){}onWeatherChanged(t){}dispose(){}get sunIntensityBias(){return this._sunIntensityBias}set sunIntensityBias(t){this._sunIntensityBias=t,this._lightNeedsUpdate=!0}get sunIntensityScale(){return this._sunIntensityScale}set sunIntensityScale(t){this._sunIntensityScale=t,this._lightNeedsUpdate=!0}get skyLightIntensity(){return this._skyLightIntensity}set skyLightIntensity(t){this._skyLightIntensity=t,this._lightNeedsUpdate=!0}get skyLightAttenuationRatio(){return this._skyLightAttenuationRatio}set skyLightAttenuationRatio(t){this._skyLightAttenuationRatio=t,this._lightNeedsUpdate=!0}get sunDirection(){return this._sunDirection}get affectWorld(){return this._affectWorld}}/*! + * Proton v1.1.2 + * https://github.com/JackXie60/shader-particle-system + * Copyright 2022-2022, JackXie60 + * Licensed under the MIT license + * http://www.opensource.org/licenses/mit-license + * + */var Mn,gi,Qn,Y={types:{Boolean:"boolean",STRING:"string",NUMBER:"number",OBJECT:"object"},ensureTypedArg:function(s,t,e){return typeof s===t?s:e},ensureArrayTypedArg:function(s,t,e){if(Array.isArray(s)){for(var i=s.length-1;i>=0;--i)if(typeof s[i]!==t)return e;return s}return this.ensureTypedArg(s,t,e)},ensureInstanceOf:function(s,t,e){return s!==void 0?s:e},ensureArrayInstanceOf:function(s,t,e){if(Array.isArray(s)){for(var i=s.length-1;i>=0;--i)if(t!==void 0&&s[i]instanceof t==0)return e;return s}return this.ensureInstanceOf(s,t,e)},ensureValueOverLifetimeCompliance:function(s,t,e){t=t||3,e=e||3,Array.isArray(s._value)===!1&&(s._value=[s._value]),Array.isArray(s._spread)===!1&&(s._spread=[s._spread]);var i=this.clamp(s._value.length,t,e),n=this.clamp(s._spread.length,t,e),r=Math.max(i,n);s._value.length!==r&&(s._value=this.interpolateArray(s._value,r)),s._spread.length!==r&&(s._spread=this.interpolateArray(s._spread,r))},interpolateArray:function(s,t){for(var e=s.length,i=[typeof s[0].clone=="function"?s[0].clone():s[0]],n=(e-1)/(t-1),r=1;r-1e-5&&(i=-i),i},lerpTypeAgnostic:function(s,t,e){var i,n=this.types;return typeof s===n.NUMBER&&typeof t===n.NUMBER?s+(t-s)*e:s instanceof j&&t instanceof j?((i=s.clone()).x=this.lerp(s.x,t.x,e),i.y=this.lerp(s.y,t.y,e),i):s instanceof M&&t instanceof M?((i=s.clone()).x=this.lerp(s.x,t.x,e),i.y=this.lerp(s.y,t.y,e),i.z=this.lerp(s.z,t.z,e),i):s instanceof Lt&&t instanceof Lt?((i=s.clone()).x=this.lerp(s.x,t.x,e),i.y=this.lerp(s.y,t.y,e),i.z=this.lerp(s.z,t.z,e),i.w=this.lerp(s.w,t.w,e),i):s instanceof tt&&t instanceof tt?((i=s.clone()).r=this.lerp(s.r,t.r,e),i.g=this.lerp(s.g,t.g,e),i.b=this.lerp(s.b,t.b,e),i):void console.warn("Invalid argument types, or argument types do not match:",s,t)},lerp:function(s,t,e){return s+(t-s)*e},roundToNearestMultiple:function(s,t){var e;return t===0||(e=Math.abs(s)%t)==0?s:s<0?-(Math.abs(s)-e):s+t-e},arrayValuesAreEqual:function(s){for(var t=0;tn?this.grow(e):void console.info("TypedArray is already of size:",e+".","Will not resize.")},t.shrink=function(e){return this.array=this.array.subarray(0,e),this.size=e,this},t.grow=function(e){var i=new this.TypedArrayConstructor(e);return i.set(this.array),this.array=i,this.size=e,this},t.splice=function(e,i){for(var n=e*this.componentSize,r=i*this.componentSize,a=[],o=this.array.length,l=0;lr)&&a.push(this.array[l]);return this.setFromArray(0,a),this},t.setFromArray=function(e,i){var n=e+i.length;return n>this.array.length?this.grow(n):n=0;--i)this.bufferUpdateRanges[e[i]]={min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY}},t._calculatePPSValue=function(e){var i=this.particleCount;this.duration?this.particlesPerSecond=i/(e=0;--h)n=a[i=l[h]],r[i]!==!0&&n!==!0||(this._assignValue(i,e),this._updateAttributeUpdateRange(i,e),n===!0&&o[i]===this.particleCount?(a[i]=!1,o[i]=0):n===!0&&++o[i])},t._updateAttributeUpdateRange=function(e,i){var n=this.bufferUpdateRanges[e];n.min=Math.min(i,n.min),n.max=Math.max(i,n.max)},t._resetBufferRanges=function(){for(var e,i=this.bufferUpdateRanges,n=this.bufferUpdateKeys,r=this.bufferUpdateCount-1;r>=0;--r)i[e=n[r]].min=Number.POSITIVE_INFINITY,i[e].max=Number.NEGATIVE_INFINITY},t._onRemove=function(){this.particlesPerSecond=0,this.attributeOffset=0,this.activationIndex=0,this.activeParticleCount=0,this.group=null,this.attributes=null,this.paramsArray=null,this.age=0},t._decrementParticleCount=function(){--this.activeParticleCount},t._incrementParticleCount=function(){++this.activeParticleCount},t._checkParticleAges=function(e,i,n,r){for(var a,o,l,h,c=i-1;c>=e;--c)(h=n[a=4*c])!==0&&(l=n[a+1],o=n[a+2],this.direction===1?(l+=r)>=o&&(l=0,h=0,this._decrementParticleCount()):(l-=r)<=0&&(l=o,h=0,this._decrementParticleCount()),n[a]=h,n[a+1]=l,this._updateAttributeUpdateRange("params",c))},t._activateParticles=function(e,i,n,r){for(var a,o,l=this.direction,h=e;hthis.duration)return this.alive=!1,void(this.age=0);var l=this.particleCount===1?o:0|o,h=Math.min(l+a,this.activationEnd),c=h-this.activationIndex|0,u=c>0?e/c:0;this._activateParticles(l,h,r,u),this.activationIndex+=a,this.activationIndex>n&&(this.activationIndex=i),this.age+=e}else this.age=0}},t.reset=function(e){if(this.age=0,this.alive=!1,e===!0){for(var i,n=this.attributeOffset,r=n+this.particleCount,a=this.paramsArray,o=this.attributes.params.bufferAttribute,l=r-1;l>=n;--l)a[i=4*l]=0,a[i+1]=0;o.updateRange.offset=0,o.updateRange.count=-1,o.needsUpdate=!0}return this},t.enable=function(){return this.alive=!0,this},t.disable=function(){return this.alive=!1,this},t.remove=function(){return this.group!==null?this.group.removeEmitter(this):console.error("Emitter does not belong to a group, cannot remove."),this},s}(),Dm=function(){function s(e){var i=Y.types;(e=Y.ensureTypedArg(e,i.OBJECT,{})).texture=Y.ensureTypedArg(e.texture,i.OBJECT,{}),this.uuid=re.generateUUID(),this.fixedTimeStep=Y.ensureTypedArg(e.fixedTimeStep,i.NUMBER,.0167),this.texture=e.texture.value||null,this.textureFrames=e.texture.frames||new j(1,1),this.textureFrameCount=Y.ensureTypedArg(e.texture.frameCount,i.NUMBER,this.textureFrames.x*this.textureFrames.y),this.textureLoop=Y.ensureTypedArg(e.texture.loop,i.NUMBER,1),this.textureFrames.max(new j(1,1)),this.hasPerspective=Y.ensureTypedArg(e.hasPerspective,i.BOOLEAN,!0),this.colorize=Y.ensureTypedArg(e.colorize,i.BOOLEAN,!0),this.maxParticleCount=Y.ensureTypedArg(e.maxParticleCount,i.NUMBER,null),this.blending=Y.ensureTypedArg(e.blending,i.NUMBER,xa),this.transparent=Y.ensureTypedArg(e.transparent,i.BOOLEAN,!0),this.alphaTest=parseFloat(Y.ensureTypedArg(e.alphaTest,i.NUMBER,0)),this.depthWrite=Y.ensureTypedArg(e.depthWrite,i.BOOLEAN,!1),this.depthTest=Y.ensureTypedArg(e.depthTest,i.BOOLEAN,!0),this.fog=Y.ensureTypedArg(e.fog,i.BOOLEAN,!0),this.scale=Y.ensureTypedArg(e.scale,i.NUMBER,300),this.emitters=[],this.emitterIDs=[],this._pool=[],this._poolCreationSettings=null,this._createNewWhenPoolEmpty=0,this._attributesNeedRefresh=!1,this._attributesNeedDynamicReset=!1,this.particleCount=0,this.uniforms={tex:{type:"t",value:this.texture},textureAnimation:{type:"v4",value:new Lt(this.textureFrames.x,this.textureFrames.y,this.textureFrameCount,Math.max(Math.abs(this.textureLoop),1))},fogColor:{type:"c",value:this.fog?new tt:null},fogNear:{type:"f",value:10},fogFar:{type:"f",value:200},fogDensity:{type:"f",value:.5},deltaTime:{type:"f",value:0},runTime:{type:"f",value:0},scale:{type:"f",value:this.scale}},this.defines={HAS_PERSPECTIVE:this.hasPerspective,COLORIZE:this.colorize,VALUE_OVER_LIFETIME_LENGTH:Br.valueOverLifetimeLength,SHOULD_ROTATE_TEXTURE:!1,SHOULD_ROTATE_PARTICLES:!1,SHOULD_WIGGLE_PARTICLES:!1,SHOULD_CALCULATE_SPRITE:this.textureFrames.x>1||this.textureFrames.y>1},this.attributes={position:new zi("v3",!0),acceleration:new zi("v4",!0),velocity:new zi("v3",!0),rotation:new zi("v4",!0),rotationCenter:new zi("v3",!0),params:new zi("v4",!0),size:new zi("v4",!0),angle:new zi("v4",!0),color:new zi("v4",!0),opacity:new zi("v4",!0)},this.attributeKeys=Object.keys(this.attributes),this.attributeCount=this.attributeKeys.length,this.material=new Zt({uniforms:this.uniforms,vertexShader:Rm.vertex,fragmentShader:Rm.fragment,blending:this.blending,transparent:this.transparent,alphaTest:this.alphaTest,depthWrite:this.depthWrite,depthTest:this.depthTest,defines:this.defines,fog:this.fog}),this.geometry=new Pt,this.mesh=new ll(this.geometry,this.material),this.maxParticleCount===null&&console.warn("Group: No maxParticleCount specified. Adding emitters after rendering will probably cause errors.")}var t=s.prototype;return t._updateDefines=function(){for(var e,i=this.emitters,n=this.defines,r=i.length-1;r>=0;--r)e=i[r],n.SHOULD_CALCULATE_SPRITE||(n.SHOULD_ROTATE_TEXTURE=n.SHOULD_ROTATE_TEXTURE||!!Math.max(Math.max.apply(null,e.angle.value),Math.max.apply(null,e.angle.spread))),n.SHOULD_ROTATE_PARTICLES=n.SHOULD_ROTATE_PARTICLES||!!Math.max(e.rotation.angle,e.rotation.angleSpread),n.SHOULD_WIGGLE_PARTICLES=n.SHOULD_WIGGLE_PARTICLES||!!Math.max(e.wiggle.value,e.wiggle.spread);this.material.needsUpdate=!0},t._applyAttributesToGeometry=function(){var e,i,n=this.attributes,r=this.geometry,a=r.attributes;Object.keys(n).forEach(function(o){e=n[o],(i=a[o])?i.array=e.typedArray.array:r.setAttribute(o,e.bufferAttribute),e.bufferAttribute.needsUpdate=!0}),this.geometry.setDrawRange(0,this.particleCount)},t.addEmitter=function(e){if(e instanceof $n!=0)if(this.emitterIDs.indexOf(e.uuid)>-1)console.error("Emitter already exists in this group. Will not add again.");else{if(e.group===null){var i=this.attributes,n=this.particleCount,r=n+e.particleCount;for(var a in this.particleCount=r,this.maxParticleCount!==null&&this.particleCount>this.maxParticleCount&&console.warn("Group: maxParticleCount exceeded. Requesting",this.particleCount,"particles, can support only",this.maxParticleCount),e._calculatePPSValue(e.maxAge._value+e.maxAge._spread),e._setBufferUpdateRanges(this.attributeKeys),e._setAttributeOffset(n),e.group=this,e.attributes=this.attributes,i)i.hasOwnProperty(a)&&i[a]._createBufferAttribute(this.maxParticleCount!==null?this.maxParticleCount:this.particleCount);for(var o=n;o1)for(var n=0;n=0;--n)i[e[n]].resetUpdateRange()},t._updateBuffers=function(e){for(var i,n,r,a=this.attributeKeys,o=this.attributes,l=e.bufferUpdateRanges,h=this.attributeCount-1;h>=0;--h)n=l[i=a[h]],(r=o[i]).setUpdateRange(n.min,n.max),r.flagUpdate()},t.update=function(e){var i,n=this.emitters,r=n.length,a=e||this.fixedTimeStep,o=this.attributeKeys,l=this.attributes;if(this._updateUniforms(a),this._resetBufferRanges(),r!==0||this._attributesNeedRefresh!==!1||this._attributesNeedDynamicReset!==!1){for(var h,c=0;c=0;--i)l[o[i]].resetDynamic();this._attributesNeedDynamicReset=!1}if(this._attributesNeedRefresh===!0){for(i=this.attributeCount-1;i>=0;--i)l[o[i]].forceUpdateAll();this._attributesNeedRefresh=!1,this._attributesNeedDynamicReset=!0}}},t.dispose=function(){return this.geometry.dispose(),this.material.dispose(),this},s}();class Ey extends St{constructor(t,e){super(),d(this,"update",()=>{this._system.update(this._clock.getDelta())}),d(this,"createSnow",()=>new Ie().load(Jt("assets/textures/sky/others/snow.png"))),d(this,"createEmitter",()=>new $n({maxAge:{value:10},position:{value:new M(0,100,150),spread:new M(1e3,1e3,500)},acceleration:{value:new M(0,0,-10),spread:new M(3,3,0)},velocity:{value:new M(0,0,-10),spread:new M(5,5,0)},size:{value:10},particleCount:1e4})),this._renderer=t,this._camera=e,this._clock=new xc;const i=this._system=new Dm({texture:{value:this.createSnow()}}),n=this._emitter=this.createEmitter(e,t);i.addEmitter(n),this.add(i.mesh)}dispose(){}}class Ay extends St{constructor(t,e){super(),d(this,"update",()=>{this._system.update(this._clock.getDelta())}),d(this,"createRain",()=>new Ie().load(Jt("assets/textures/sky/others/trace_01.png"))),d(this,"createEmitter",()=>new $n({maxAge:{value:10},position:{value:new M(0,100,250),spread:new M(1e3,1e3,500)},acceleration:{value:new M(0,0,-20),spread:new M(3,3,0)},velocity:{value:new M(0,10,-20),spread:new M(3,3,0)},size:{value:50},particleCount:2e4})),this._clock=new xc;const i=this._system=new Dm({texture:{value:this.createRain()}}),n=this._emitter=this.createEmitter(e,t);i.addEmitter(n),this.add(i.mesh)}dispose(){}}class Ec extends St{constructor(t){super(),d(this,"_engine"),d(this,"_sky"),d(this,"_snow"),d(this,"_rain"),d(this,"_weather",""),d(this,"_currentConverageTextureType",null),d(this,"_tCoverageIntensity",null),d(this,"_skyGroundColorBlue",new tt(1657983)),d(this,"_skyGroundColorGray",new tt(11184810)),d(this,"_weatherChangedListeners",[]),d(this,"_sunLightScale",.5),d(this,"_skyLightScale",1),d(this,"transitionDuration",1e3),d(this,"_transitionStartTime",0),d(this,"_transitionStartState",null),d(this,"_transitionEndState",null),d(this,"_inTransition",!1),d(this,"handleBeforeRender",e=>{if(this._snow){this._engine.map.getProjectionCenter();const i=this._engine.camera.position;this._snow.position.copy(i),this._snow.update()}if(this._rain){const i=this._engine.camera.position;this._rain.position.copy(i),this._rain.update()}if(this._inTransition){const i=(Date.now()-this._transitionStartTime)/this.transitionDuration;i>1&&(this._inTransition=!1),this._updateWeatherTransitionState(i),e.requestRender()}}),d(this,"_updateWeatherTransitionState",e=>{e<0&&(e=0),e>1&&(e=1);const i=this._transitionStartState,n=this._transitionEndState;this.sunIntensityScale=re.lerp(i.sunIntensityScale,n.sunIntensityScale,e)*this._sunLightScale,this.skyLightIntensity=re.lerp(i.skyLightIntensity,n.skyLightIntensity,e)*this._skyLightScale,this.cloudIntensity=re.lerp(i.cloudIntensity,n.cloudIntensity,e),this.fogDensity=re.lerp(i.fogDensity,n.fogDensity,e),this.mixGrayFactor=re.lerp(i.mixGrayFactor,n.mixGrayFactor,e),this.coverageIntensity=re.lerp(i.coverageIntensity,n.coverageIntensity,e)}),d(this,"beforeRemoveFromEngine",e=>{e.removePrepareRenderListener(this.handleBeforeRender)}),this._sky=t}get weather(){return this._weather}set weather(t){if(t&&t!==this._weather){this._weather=t,this.updateWeather(t);for(const e of this._weatherChangedListeners)e(t)}}afterAddToEngine(t){this._engine=t,t.addPrepareRenderListener(this.handleBeforeRender),this.updateWeather(this._weather)}getCoverageTexture(t){if(this._tCoverageIntensity===null||t!==this._currentConverageTextureType){this._tCoverageIntensity&&this._tCoverageIntensity.dispose();let e="assets/textures/realistic/TexturesCom_Snow_Plain_3x3_512_noise.jpg";t==="rain"&&(e="assets/textures/realistic/TexturesCom_Ground_MudWet_512_roughness.jpg"),this._tCoverageIntensity=new Ie().load(Jt(e),()=>{this._engine.requestRender()})}return this._tCoverageIntensity}updateWeather(t){const e=this._engine;let i=1,n=.2,r=.5,a=0,o=null,l=0,h=0,c=!1,u=!1;if(this._transitionStartState={sunIntensityScale:this.sunIntensityScale/this._sunLightScale,cloudIntensity:this.cloudIntensity,skyLightIntensity:this.skyLightIntensity/this._skyLightScale,coverageIntensity:this.coverageIntensity,fogDensity:this.fogDensity,mixGrayFactor:this.mixGrayFactor},t==="clear")i=1.5,n=0,r=.8,l=0,h=.1;else if(t==="partlyCloudy")i=1.3,n=.7,r=.9,l=.05,h=.2;else if(t==="cloudy")i=0,n=1.2,r=1,l=.5,h=.3;else if(t==="overcast")i=0,n=1.8,r=.4,l=.75,h=.4;else if(t==="foggy")i=0,n=0,r=.4,l=1,h=1;else if(t==="rainy")i=0,n=0,r=.4,u=!0,l=1,h=.5;else{if(t!=="snowy")return;i=0,n=0,r=.4,a=1,o=this.getCoverageTexture("snow"),c=!0,l=1,h=.5}if(this._transitionEndState={sunIntensityScale:i,cloudIntensity:n,skyLightIntensity:r,coverageIntensity:a,fogDensity:h,mixGrayFactor:l},this.tCoverageIntensity=o,this._sky.isStaticSky&&(["overcast","foggy","rainy","snowy"].includes(t)?this._sky.weather="overcast":this._sky.weather=t),c){if(!this._snow){const p=this._snow=new Ey(e.renderer,e.camera);this.add(p)}}else this._snow&&(this.remove(this._snow),this._snow.dispose(),this._snow=null);if(u){if(!this._rain){const p=this._rain=new Ay(e.renderer,e.camera);this.add(p)}}else this._rain&&(this.remove(this._rain),this._rain.dispose(),this._rain=null);this.transitionDuration<=0?this._updateWeatherTransitionState(1):(this._transitionStartTime=Date.now(),this._inTransition=!0,e.requestRender())}addWeatherChangedListener(t){this._weatherChangedListeners.indexOf(t)===-1&&this._weatherChangedListeners.push(t)}removeWeatherChangedListener(t){const e=this._weatherChangedListeners.indexOf(t);e!==-1&&this._weatherChangedListeners.splice(e,1)}get sunIntensityScale(){return this._sky.sunIntensityScale}set sunIntensityScale(t){this._sky.sunIntensityScale=t}get cloudIntensity(){return this._sky.cloudIntensity}set cloudIntensity(t){this._sky.cloudIntensity=t}get skyLightIntensity(){return this._sky.skyLightIntensity}set skyLightIntensity(t){this._sky.skyLightIntensity=t}get groundColor(){return this._sky.groundColor}set groundColor(t){this._sky.groundColor=t}get mixGrayFactor(){return this._sky.mixGrayFactor}set mixGrayFactor(t){this._sky.mixGrayFactor=t}get coverageIntensity(){return this._engine.rendering.composition.coverageIntensity}set coverageIntensity(t){this._engine.rendering.composition.coverageIntensity=t}get tCoverageIntensity(){return this._engine.rendering.composition.tCoverageIntensity}set tCoverageIntensity(t){this._engine.rendering.composition.tCoverageIntensity=t}get tRelectionEnhancement(){return this._engine.rendering.ssr.tEnhancement}set tRelectionEnhancement(t){this._engine.rendering.ssr.tEnhancement=t}set fogDensity(t){this._engine.rendering.fog.density=t}get fogDensity(){return this._engine.rendering.fog.density}get skyLightScale(){return this._skyLightScale}set skyLightScale(t){this._skyLightScale=t}get sunLightScale(){return this._sunLightScale}set sunLightScale(t){this._sunLightScale=t}}class Py{constructor(t){d(this,"_rendering"),d(this,"_useMrt",!1),d(this,"_mainMrt",null),d(this,"_renderPass",null),d(this,"_needsPrepare",!0),d(this,"_antialias",!0),d(this,"_msaaSamples",4),d(this,"cleanup",()=>{this.useMrt&&(this._mainMrt&&this._mainMrt.dispose(),this._mainMrt=null)}),this._rendering=t}get useMrt(){return this._useMrt}set useMrt(t){t!==this._useMrt&&(this._useMrt=t,this._needsPrepare=!0)}_init(){const t=this._rendering,e=t.resolution;if(this.cleanup(),this._useMrt){const i=this._tDepth=new Hp;i.format=Ss,i.type=Ms;const n=this._mainMrt=new Q0(e.x*t.pixelRatio,e.y*t.pixelRatio,4,{samples:this._antialias?this._msaaSamples:0});n.stencilBuffer=!0,n.depthTexture=i,n.depthBuffer=!0;for(let r=0,a=n.texture.length;r{const e=this._rendering;if(e.useMrt){const i=e.composition;i.useFog=!0,i.fogDensity=this._density,i.fogSkyColorStartFactor=this._skyColorStartFactor,i.fogAltitudeTop=this._altitudeTop,i.fogAltitudeBottom=this._altitudeBottom}else e.scene.fog=new hc(this._color,1,1e3)}),d(this,"destoryFog",()=>{const e=this._rendering;e.useMrt?e.composition.useFog=!1:e.scene.fog=null}),this._rendering=t}get enabled(){return this._enabled}set enabled(t){t!==this._enabled&&(this._enabled=t,t?this._needsCreate=!0:this.destoryFog())}set color(t){this._color=t;const e=this._rendering,i=e.useMrt;this._enabled&&(i?e.composition.fogColor=t:e.scene.fog&&(e.scene.fog.color=t))}get color(){return this._color}get density(){return this._density}set density(t){this._density=t;const e=this._rendering,i=e.useMrt;this._enabled&&(i?e.composition.fogDensity=this._density:e.scene.fog&&(e.scene.fog.density=t))}get skyColorStartFactor(){return this._skyColorStartFactor}set skyColorStartFactor(t){this._skyColorStartFactor=t;const e=this._rendering,i=e.useMrt;this._enabled&&i&&(e.composition.fogSkyColorStartFactor=this._skyColorStartFactor)}get altitudeTop(){return this._altitudeTop}set altitudeTop(t){this._altitudeTop=t;const e=this._rendering,i=e.useMrt;this._enabled&&i&&(e.composition.fogAltitudeTop=this._altitudeTop)}get altitudeBottom(){return this._altitudeBottom}set altitudeBottom(t){this._altitudeBottom=t;const e=this._rendering,i=e.useMrt;this._enabled&&i&&(e.composition.fogAltitudeBottom=this._altitudeBottom)}render(){if(this._enabled)if(this._needsCreate&&(this._needsCreate=!1,this.createFog(),this._rendering.requestRender()),this._rendering.useMrt)this._rendering.scene.fog&&(this._rendering.scene.fog=null,this._rendering.requestRender());else{let t=this._rendering.scene.fog;t||(this.createFog(),t=this._rendering.scene.fog,this._rendering.requestRender());const e=this._rendering.camera.far;t.near=this._fogStartFactor*e,t.far=e}}}const ml={uniforms:{tDiffuse:{value:null},opacity:{value:1}},vertexShader:` + + varying vec2 vUv; + + void main() { + + vUv = uv; + gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 ); + + }`,fragmentShader:` + + uniform float opacity; + + uniform sampler2D tDiffuse; + + varying vec2 vUv; + + void main() { + + gl_FragColor = texture2D( tDiffuse, vUv ); + gl_FragColor.a *= opacity; + + + }`};class Fs{constructor(){this.enabled=!0,this.needsSwap=!0,this.clear=!1,this.renderToScreen=!1}setSize(){}render(){console.error("THREE.Pass: .render() must be implemented in derived pass.")}}const Ly=new Ra(-1,1,1,-1,0,1),Ac=new Pt;Ac.setAttribute("position",new et([-1,3,0,-1,-1,0,3,-1,0],3)),Ac.setAttribute("uv",new et([0,2,0,0,2,0],2));class Vr{constructor(t){this._mesh=new lt(Ac,t)}dispose(){this._mesh.geometry.dispose()}render(t){t.render(this._mesh,Ly)}get material(){return this._mesh.material}set material(t){this._mesh.material=t}}class Hr extends Fs{constructor(t,e){super(),this.textureID=e!==void 0?e:"tDiffuse",t instanceof Zt?(this.uniforms=t.uniforms,this.material=t):t&&(this.uniforms=pt.clone(t.uniforms),this.material=new Zt({defines:Object.assign({},t.defines),uniforms:this.uniforms,vertexShader:t.vertexShader,fragmentShader:t.fragmentShader})),this.fsQuad=new Vr(this.material)}render(t,e,i){this.uniforms[this.textureID]&&(this.uniforms[this.textureID].value=i.texture),this.fsQuad.material=this.material,this.renderToScreen?(t.setRenderTarget(null),this.fsQuad.render(t)):(t.setRenderTarget(e),this.clear&&t.clear(t.autoClearColor,t.autoClearDepth,t.autoClearStencil),this.fsQuad.render(t))}}class Lm extends Fs{constructor(t,e){super(),this.scene=t,this.camera=e,this.clear=!0,this.needsSwap=!1,this.inverse=!1}render(t,e,i){const n=t.getContext(),r=t.state;let a,o;r.buffers.color.setMask(!1),r.buffers.depth.setMask(!1),r.buffers.color.setLocked(!0),r.buffers.depth.setLocked(!0),this.inverse?(a=0,o=1):(a=1,o=0),r.buffers.stencil.setTest(!0),r.buffers.stencil.setOp(n.REPLACE,n.REPLACE,n.REPLACE),r.buffers.stencil.setFunc(n.ALWAYS,a,4294967295),r.buffers.stencil.setClear(o),r.buffers.stencil.setLocked(!0),t.setRenderTarget(i),this.clear&&t.clear(),t.render(this.scene,this.camera),t.setRenderTarget(e),this.clear&&t.clear(),t.render(this.scene,this.camera),r.buffers.color.setLocked(!1),r.buffers.depth.setLocked(!1),r.buffers.stencil.setLocked(!1),r.buffers.stencil.setFunc(n.EQUAL,1,4294967295),r.buffers.stencil.setOp(n.KEEP,n.KEEP,n.KEEP),r.buffers.stencil.setLocked(!0)}}class Iy extends Fs{constructor(){super(),this.needsSwap=!1}render(t){t.state.buffers.stencil.setLocked(!1),t.state.buffers.stencil.setTest(!1)}}class fl{constructor(t,e){if(this.renderer=t,e===void 0){const i=t.getSize(new j);this._pixelRatio=t.getPixelRatio(),this._width=i.width,this._height=i.height,(e=new de(this._width*this._pixelRatio,this._height*this._pixelRatio)).texture.name="EffectComposer.rt1"}else this._pixelRatio=1,this._width=e.width,this._height=e.height;this.renderTarget1=e,this.renderTarget2=e.clone(),this.renderTarget2.texture.name="EffectComposer.rt2",this.writeBuffer=this.renderTarget1,this.readBuffer=this.renderTarget2,this.renderToScreen=!0,this.passes=[],ml===void 0&&console.error("THREE.EffectComposer relies on CopyShader"),Hr===void 0&&console.error("THREE.EffectComposer relies on ShaderPass"),this.copyPass=new Hr(ml),this.clock=new xc}swapBuffers(){const t=this.readBuffer;this.readBuffer=this.writeBuffer,this.writeBuffer=t}addPass(t){this.passes.push(t),t.setSize(this._width*this._pixelRatio,this._height*this._pixelRatio)}insertPass(t,e){this.passes.splice(e,0,t),t.setSize(this._width*this._pixelRatio,this._height*this._pixelRatio)}removePass(t){const e=this.passes.indexOf(t);e!==-1&&this.passes.splice(e,1)}isLastEnabledPass(t){for(let e=t+1;e + varying vec2 vUv; + uniform sampler2D colorTexture; + uniform vec2 texSize; + uniform vec2 direction; + float gaussianPdf(in float x, in float sigma) { + return 0.39894 * exp( -0.5 * x * x/( sigma * sigma))/sigma; + } + void main() { + vec2 invSize = 1.0 / texSize; float fSigma = float(SIGMA); float weightSum = gaussianPdf(0.0, fSigma); float alphaSum = 0.0; vec3 diffuseSum = texture2D( colorTexture, vUv).rgb * weightSum; for( int i = 1; i < KERNEL_RADIUS; i ++ ) { float x = float(i); float w = gaussianPdf(x, fSigma); vec2 uvOffset = direction * invSize * x; vec4 sample1 = texture2D( colorTexture, vUv + uvOffset); vec4 sample2 = texture2D( colorTexture, vUv - uvOffset); diffuseSum += (sample1.rgb + sample2.rgb) * w; alphaSum += (sample1.a + sample2.a) * w; weightSum += 2.0 * w; } gl_FragColor = vec4(diffuseSum/weightSum, alphaSum/weightSum); + }`})}getCompositeMaterial(t){return new Zt({defines:{NUM_MIPS:t},uniforms:{blurTexture1:{value:null},blurTexture2:{value:null},blurTexture3:{value:null},blurTexture4:{value:null},blurTexture5:{value:null},dirtTexture:{value:null},bloomStrength:{value:1},bloomFactors:{value:null},bloomTintColors:{value:null},bloomRadius:{value:0}},vertexShader:`varying vec2 vUv; + void main() { + vUv = uv; + gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 ); + }`,fragmentShader:`varying vec2 vUv; + uniform sampler2D blurTexture1; + uniform sampler2D blurTexture2; + uniform sampler2D blurTexture3; + uniform sampler2D blurTexture4; + uniform sampler2D blurTexture5; + uniform sampler2D dirtTexture; + uniform float bloomStrength; + uniform float bloomRadius; + uniform float bloomFactors[NUM_MIPS]; + uniform vec3 bloomTintColors[NUM_MIPS]; + float lerpBloomFactor(const in float factor) { + float mirrorFactor = 1.2 - factor; + return mix(factor, mirrorFactor, bloomRadius); + } + void main() { + gl_FragColor = bloomStrength * + (lerpBloomFactor(bloomFactors[0]) * vec4(bloomTintColors[0], 1.0) * texture2D(blurTexture1, vUv) + + lerpBloomFactor(bloomFactors[1]) * vec4(bloomTintColors[1], 1.0) * texture2D(blurTexture2, vUv) + + lerpBloomFactor(bloomFactors[2]) * vec4(bloomTintColors[2], 1.0) * texture2D(blurTexture3, vUv) + + lerpBloomFactor(bloomFactors[3]) * vec4(bloomTintColors[3], 1.0) * texture2D(blurTexture4, vUv) + + lerpBloomFactor(bloomFactors[4]) * vec4(bloomTintColors[4], 1.0) * texture2D(blurTexture5, vUv) ); + }`})}}wn.BlurDirectionX=new j(1,0),wn.BlurDirectionY=new j(0,1);class zy extends wn{render(t,e,i,n,r){t.getClearColor(this._oldClearColor),this.oldClearAlpha=t.getClearAlpha();const a=t.autoClear;t.autoClear=!1,t.setClearColor(this.clearColor,0),r&&t.state.buffers.stencil.setTest(!1),this.renderToScreen&&(this.fsQuad.material=this.basic,this.basic.map=e,t.setRenderTarget(null),t.clear(),this.fsQuad.render(t)),this.highPassUniforms.tDiffuse.value=e,this.highPassUniforms.luminosityThreshold.value=this.threshold,this.fsQuad.material=this.materialHighPassFilter,t.setRenderTarget(this.renderTargetBright),t.clear(),this.fsQuad.render(t);let o=this.renderTargetBright;for(let l=0;l{e.isEmissive===void 0&&(e.isMeshStandardMaterial||e.isMeshBasicMaterial)&&Object.defineProperty(e,"isEmissive",{get:function(){return this.userData._shader&&this.userData._shader.uniforms.isEmissive&&this.userData._shader.uniforms.isEmissive.value||!1},set:function(i){this.userData._shader&&this.userData._shader.uniforms.isEmissive&&(this.userData._shader.uniforms.isEmissive.value=i)}}),e.isEmissive===void 0&&e.isMeshBasicMaterial&&Object.defineProperty(e,"emissive",{get:function(){return this.userData._shader&&this.userData._shader.uniforms.isEmissive&&this.userData._shader.uniforms.isEmissive.value||new tt(0)},set:function(i){this.userData._shader&&this.userData._shader.uniforms.isEmissive&&(this.userData._shader.uniforms.isEmissive.value=i)}}),e.isMeshStandardMaterial?e.onBeforeCompile=i=>{i.uniforms.isEmissive={value:e.isEmissive},e.userData._shader=i}:e.isMeshBasicMaterial&&(e.onBeforeCompile=i=>{i.uniforms.isEmissive={value:e.isEmissive},i.uniforms.emissive={value:e.emissive},e.userData._shader=i})}),this._rendering=t}get useMrt(){return this._useMrt}set useMrt(t){t!==this._useMrt&&(this.dispose(),this._useMrt=t)}set enabled(t){(t=!!t)!==this._enabled&&(this._enabled=t,t||this.dispose())}get enabled(){return this._enabled}_init(){const t=this._rendering,e=t.resolution,i=new j(e.x,e.y),n=t.pixelRatio;if(this._bloomRenderTarget=new de(i.x*n,i.y*n,{type:be}),this.useMrt)this._renderPass=new zy(i,this._strength,this._radius,this._threshold),t.composition.tBloom=this._bloomRenderTarget.texture;else{this._renderPass=new wn(i,this._strength,this._radius,this._threshold);const r=this._bloomComposer=new fl(t.renderer,this._bloomRenderTarget);r.renderToScreen=!1;const a=new Oy(t.scene,t.camera,null),o=this._finalPass=new Hr(new Zt({uniforms:{baseTexture:{value:null},bloomTexture:{value:r.renderTarget2.texture}},vertexShader:`#define GLSLIFY 1 +varying vec2 vUv; + +void main() { + + vUv = uv; + + gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 ); + +}`,fragmentShader:`#define GLSLIFY 1 +uniform sampler2D baseTexture; +uniform sampler2D bloomTexture; + +varying vec2 vUv; + +void main() { + + // gl_FragColor = texture2D( bloomTexture, vUv ); + gl_FragColor = ( texture2D( baseTexture, vUv ) + vec4( 1.0 ) * texture2D( bloomTexture, vUv ) ); + +}`,defines:{}}),"baseTexture");o.needsSwap=!0,o.renderOrder=-100,r.addPass(a),r.addPass(this._renderPass),t.postprocessing.addPass(this._finalPass)}}render(){if(!this._enabled)return;this._enabled&&!this._renderPass&&this._init();const t=this._rendering;if(!this._useMrt){const n=this._rendering.scene;return n.traverse(r=>{r.material&&(this.setPresetMaterialToEmissiveWhenNotMrt(r.material),r.material.isEmissive=!0)}),this._bloomComposer.render(),void n.traverse(r=>{r.material&&(r.material.isEmissive=!1)})}const e=t.main.tEmissive,i=t.renderer;i.setRenderTarget(this._bloomRenderTarget),i.getClearColor(zm),km=i.getClearAlpha(),i.setClearColor(ky),i.setClearAlpha(0),i.clear(),i.setClearColor(zm),i.setClearAlpha(km),this._renderPass.render(t.renderer,e,this._bloomRenderTarget)}dispose(){this._rendering.composition.tBloom=null,this._finalPass&&this._rendering.postprocessing&&this._rendering.postprocessing.removePass(this._finalPass),this._bloomComposer&&(this._bloomComposer.dispose(),this._bloomComposer=null),this._renderPass&&(this._renderPass.dispose(),this._renderPass=null),this._bloomRenderTarget&&(this._bloomRenderTarget.dispose(),this._bloomRenderTarget=null)}getTextures(){const t=[];return this._bloomRenderTarget&&t.push(this._bloomRenderTarget.texture),t}setSize(t,e){this._rendering,this._bloomRenderTarget&&this._bloomRenderTarget.setSize(t,e)}get tBloom(){return this._bloomRenderTarget&&this._bloomRenderTarget.texture||null}get strength(){return this._strength}set strength(t){this._strength=t,this._renderPass&&(this._renderPass.strength=t)}get radius(){return this._radius}set radius(t){this._radius=t,this._renderPass&&(this._renderPass.radius=t)}get threshold(){return this._threshold}set threshold(t){this._threshold=t,this._renderPass&&(this._renderPass.threshold=t)}}var Nm={exports:{}},Um={exports:{}},Uy=function(s){return!(!s||typeof s=="string")&&(s instanceof Array||Array.isArray(s)||s.length>=0&&(s.splice instanceof Function||Object.getOwnPropertyDescriptor(s,s.length-1)&&s.constructor.name!=="String"))},Fy=Array.prototype.concat,By=Array.prototype.slice,Fm=Um.exports=function(s){for(var t=[],e=0,i=s.length;e=4&&s[3]!==1&&(t=", "+s[3]),"hwb("+s[0]+", "+s[1]+"%, "+s[2]+"%"+t+")"},li.to.keyword=function(s){return Vm[s.slice(0,3)]};const ja={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},Hm={};for(const s of Object.keys(ja))Hm[ja[s]]=s;const ft={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};var jm=ft;for(const s of Object.keys(ft)){if(!("channels"in ft[s]))throw new Error("missing channels property: "+s);if(!("labels"in ft[s]))throw new Error("missing channel labels property: "+s);if(ft[s].labels.length!==ft[s].channels)throw new Error("channel and label counts mismatch: "+s);const{channels:t,labels:e}=ft[s];delete ft[s].channels,delete ft[s].labels,Object.defineProperty(ft[s],"channels",{value:t}),Object.defineProperty(ft[s],"labels",{value:e})}ft.rgb.hsl=function(s){const t=s[0]/255,e=s[1]/255,i=s[2]/255,n=Math.min(t,e,i),r=Math.max(t,e,i),a=r-n;let o,l;r===n?o=0:t===r?o=(e-i)/a:e===r?o=2+(i-t)/a:i===r&&(o=4+(t-e)/a),o=Math.min(60*o,360),o<0&&(o+=360);const h=(n+r)/2;return l=r===n?0:h<=.5?a/(r+n):a/(2-r-n),[o,100*l,100*h]},ft.rgb.hsv=function(s){let t,e,i,n,r;const a=s[0]/255,o=s[1]/255,l=s[2]/255,h=Math.max(a,o,l),c=h-Math.min(a,o,l),u=function(p){return(h-p)/6/c+.5};return c===0?(n=0,r=0):(r=c/h,t=u(a),e=u(o),i=u(l),a===h?n=i-e:o===h?n=1/3+t-i:l===h&&(n=2/3+e-t),n<0?n+=1:n>1&&(n-=1)),[360*n,100*r,100*h]},ft.rgb.hwb=function(s){const t=s[0],e=s[1];let i=s[2];const n=ft.rgb.hsl(s)[0],r=1/255*Math.min(t,Math.min(e,i));return i=1-1/255*Math.max(t,Math.max(e,i)),[n,100*r,100*i]},ft.rgb.cmyk=function(s){const t=s[0]/255,e=s[1]/255,i=s[2]/255,n=Math.min(1-t,1-e,1-i);return[100*((1-t-n)/(1-n)||0),100*((1-e-n)/(1-n)||0),100*((1-i-n)/(1-n)||0),100*n]},ft.rgb.keyword=function(s){const t=Hm[s];if(t)return t;let e,i=1/0;for(const a of Object.keys(ja)){const o=(r=ja[a],((n=s)[0]-r[0])**2+(n[1]-r[1])**2+(n[2]-r[2])**2);o.04045?((t+.055)/1.055)**2.4:t/12.92,e=e>.04045?((e+.055)/1.055)**2.4:e/12.92,i=i>.04045?((i+.055)/1.055)**2.4:i/12.92,[100*(.4124*t+.3576*e+.1805*i),100*(.2126*t+.7152*e+.0722*i),100*(.0193*t+.1192*e+.9505*i)]},ft.rgb.lab=function(s){const t=ft.rgb.xyz(s);let e=t[0],i=t[1],n=t[2];return e/=95.047,i/=100,n/=108.883,e=e>.008856?e**(1/3):7.787*e+16/116,i=i>.008856?i**(1/3):7.787*i+16/116,n=n>.008856?n**(1/3):7.787*n+16/116,[116*i-16,500*(e-i),200*(i-n)]},ft.hsl.rgb=function(s){const t=s[0]/360,e=s[1]/100,i=s[2]/100;let n,r,a;if(e===0)return a=255*i,[a,a,a];n=i<.5?i*(1+e):i+e-i*e;const o=2*i-n,l=[0,0,0];for(let h=0;h<3;h++)r=t+1/3*-(h-1),r<0&&r++,r>1&&r--,a=6*r<1?o+6*(n-o)*r:2*r<1?n:3*r<2?o+(n-o)*(2/3-r)*6:o,l[h]=255*a;return l},ft.hsl.hsv=function(s){const t=s[0];let e=s[1]/100,i=s[2]/100,n=e;const r=Math.max(i,.01);return i*=2,e*=i<=1?i:2-i,n*=r<=1?r:2-r,[t,100*(i===0?2*n/(r+n):2*e/(i+e)),100*((i+e)/2)]},ft.hsv.rgb=function(s){const t=s[0]/60,e=s[1]/100;let i=s[2]/100;const n=Math.floor(t)%6,r=t-Math.floor(t),a=255*i*(1-e),o=255*i*(1-e*r),l=255*i*(1-e*(1-r));switch(i*=255,n){case 0:return[i,l,a];case 1:return[o,i,a];case 2:return[a,i,l];case 3:return[a,o,i];case 4:return[l,a,i];case 5:return[i,a,o]}},ft.hsv.hsl=function(s){const t=s[0],e=s[1]/100,i=s[2]/100,n=Math.max(i,.01);let r,a;a=(2-e)*i;const o=(2-e)*n;return r=e*n,r/=o<=1?o:2-o,r=r||0,a/=2,[t,100*r,100*a]},ft.hwb.rgb=function(s){const t=s[0]/360;let e=s[1]/100,i=s[2]/100;const n=e+i;let r;n>1&&(e/=n,i/=n);const a=Math.floor(6*t),o=1-i;r=6*t-a,1&a&&(r=1-r);const l=e+r*(o-e);let h,c,u;switch(a){default:case 6:case 0:h=o,c=l,u=e;break;case 1:h=l,c=o,u=e;break;case 2:h=e,c=o,u=l;break;case 3:h=e,c=l,u=o;break;case 4:h=l,c=e,u=o;break;case 5:h=o,c=e,u=l}return[255*h,255*c,255*u]},ft.cmyk.rgb=function(s){const t=s[0]/100,e=s[1]/100,i=s[2]/100,n=s[3]/100;return[255*(1-Math.min(1,t*(1-n)+n)),255*(1-Math.min(1,e*(1-n)+n)),255*(1-Math.min(1,i*(1-n)+n))]},ft.xyz.rgb=function(s){const t=s[0]/100,e=s[1]/100,i=s[2]/100;let n,r,a;return n=3.2406*t+-1.5372*e+-.4986*i,r=-.9689*t+1.8758*e+.0415*i,a=.0557*t+-.204*e+1.057*i,n=n>.0031308?1.055*n**(1/2.4)-.055:12.92*n,r=r>.0031308?1.055*r**(1/2.4)-.055:12.92*r,a=a>.0031308?1.055*a**(1/2.4)-.055:12.92*a,n=Math.min(Math.max(0,n),1),r=Math.min(Math.max(0,r),1),a=Math.min(Math.max(0,a),1),[255*n,255*r,255*a]},ft.xyz.lab=function(s){let t=s[0],e=s[1],i=s[2];return t/=95.047,e/=100,i/=108.883,t=t>.008856?t**(1/3):7.787*t+16/116,e=e>.008856?e**(1/3):7.787*e+16/116,i=i>.008856?i**(1/3):7.787*i+16/116,[116*e-16,500*(t-e),200*(e-i)]},ft.lab.xyz=function(s){let t,e,i;e=(s[0]+16)/116,t=s[1]/500+e,i=e-s[2]/200;const n=e**3,r=t**3,a=i**3;return e=n>.008856?n:(e-16/116)/7.787,t=r>.008856?r:(t-16/116)/7.787,i=a>.008856?a:(i-16/116)/7.787,t*=95.047,e*=100,i*=108.883,[t,e,i]},ft.lab.lch=function(s){const t=s[0],e=s[1],i=s[2];let n;return n=360*Math.atan2(i,e)/2/Math.PI,n<0&&(n+=360),[t,Math.sqrt(e*e+i*i),n]},ft.lch.lab=function(s){const t=s[0],e=s[1],i=s[2]/360*2*Math.PI;return[t,e*Math.cos(i),e*Math.sin(i)]},ft.rgb.ansi16=function(s,t=null){const[e,i,n]=s;let r=t===null?ft.rgb.hsv(s)[2]:t;if(r=Math.round(r/50),r===0)return 30;let a=30+(Math.round(n/255)<<2|Math.round(i/255)<<1|Math.round(e/255));return r===2&&(a+=60),a},ft.hsv.ansi16=function(s){return ft.rgb.ansi16(ft.hsv.rgb(s),s[2])},ft.rgb.ansi256=function(s){const t=s[0],e=s[1],i=s[2];return t===e&&e===i?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(e/255*5)+Math.round(i/255*5)},ft.ansi16.rgb=function(s){let t=s%10;if(t===0||t===7)return s>50&&(t+=3.5),t=t/10.5*255,[t,t,t];const e=.5*(1+~~(s>50));return[(1&t)*e*255,(t>>1&1)*e*255,(t>>2&1)*e*255]},ft.ansi256.rgb=function(s){if(s>=232){const e=10*(s-232)+8;return[e,e,e]}let t;return s-=16,[Math.floor(s/36)/5*255,Math.floor((t=s%36)/6)/5*255,t%6/5*255]},ft.rgb.hex=function(s){const t=(((255&Math.round(s[0]))<<16)+((255&Math.round(s[1]))<<8)+(255&Math.round(s[2]))).toString(16).toUpperCase();return"000000".substring(t.length)+t},ft.hex.rgb=function(s){const t=s.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];let e=t[0];t[0].length===3&&(e=e.split("").map(n=>n+n).join(""));const i=parseInt(e,16);return[i>>16&255,i>>8&255,255&i]},ft.rgb.hcg=function(s){const t=s[0]/255,e=s[1]/255,i=s[2]/255,n=Math.max(Math.max(t,e),i),r=Math.min(Math.min(t,e),i),a=n-r;let o,l;return o=a<1?r/(1-a):0,l=a<=0?0:n===t?(e-i)/a%6:n===e?2+(i-t)/a:4+(t-e)/a,l/=6,l%=1,[360*l,100*a,100*o]},ft.hsl.hcg=function(s){const t=s[1]/100,e=s[2]/100,i=e<.5?2*t*e:2*t*(1-e);let n=0;return i<1&&(n=(e-.5*i)/(1-i)),[s[0],100*i,100*n]},ft.hsv.hcg=function(s){const t=s[1]/100,e=s[2]/100,i=t*e;let n=0;return i<1&&(n=(e-i)/(1-i)),[s[0],100*i,100*n]},ft.hcg.rgb=function(s){const t=s[0]/360,e=s[1]/100,i=s[2]/100;if(e===0)return[255*i,255*i,255*i];const n=[0,0,0],r=t%1*6,a=r%1,o=1-a;let l=0;switch(Math.floor(r)){case 0:n[0]=1,n[1]=a,n[2]=0;break;case 1:n[0]=o,n[1]=1,n[2]=0;break;case 2:n[0]=0,n[1]=1,n[2]=a;break;case 3:n[0]=0,n[1]=o,n[2]=1;break;case 4:n[0]=a,n[1]=0,n[2]=1;break;default:n[0]=1,n[1]=0,n[2]=o}return l=(1-e)*i,[255*(e*n[0]+l),255*(e*n[1]+l),255*(e*n[2]+l)]},ft.hcg.hsv=function(s){const t=s[1]/100,e=t+s[2]/100*(1-t);let i=0;return e>0&&(i=t/e),[s[0],100*i,100*e]},ft.hcg.hsl=function(s){const t=s[1]/100,e=s[2]/100*(1-t)+.5*t;let i=0;return e>0&&e<.5?i=t/(2*e):e>=.5&&e<1&&(i=t/(2*(1-e))),[s[0],100*i,100*e]},ft.hcg.hwb=function(s){const t=s[1]/100,e=t+s[2]/100*(1-t);return[s[0],100*(e-t),100*(1-e)]},ft.hwb.hcg=function(s){const t=s[1]/100,e=1-s[2]/100,i=e-t;let n=0;return i<1&&(n=(e-i)/(1-i)),[s[0],100*i,100*n]},ft.apple.rgb=function(s){return[s[0]/65535*255,s[1]/65535*255,s[2]/65535*255]},ft.rgb.apple=function(s){return[s[0]/255*65535,s[1]/255*65535,s[2]/255*65535]},ft.gray.rgb=function(s){return[s[0]/100*255,s[0]/100*255,s[0]/100*255]},ft.gray.hsl=function(s){return[0,0,s[0]]},ft.gray.hsv=ft.gray.hsl,ft.gray.hwb=function(s){return[0,100,s[0]]},ft.gray.cmyk=function(s){return[0,0,0,s[0]]},ft.gray.lab=function(s){return[s[0],0,0]},ft.gray.hex=function(s){const t=255&Math.round(s[0]/100*255),e=((t<<16)+(t<<8)+t).toString(16).toUpperCase();return"000000".substring(e.length)+e},ft.rgb.gray=function(s){return[(s[0]+s[1]+s[2])/3/255*100]};const _l=jm;function Vy(s){const t=function(){const i={},n=Object.keys(_l);for(let r=n.length,a=0;a{jr[s]={},Object.defineProperty(jr[s],"channels",{value:Rc[s].channels}),Object.defineProperty(jr[s],"labels",{value:Rc[s].labels});const t=Gy(s);Object.keys(t).forEach(e=>{const i=t[e];jr[s][e]=function(n){const r=function(...a){const o=a[0];if(o==null)return o;o.length>1&&(a=o);const l=n(a);if(typeof l=="object")for(let h=l.length,c=0;c1&&(a=o),n(a))};return"conversion"in n&&(r.conversion=n.conversion),r}(i)})});var Wy=jr;const Gr=Nm.exports,hi=Wy,Gm=["keyword","gray","hex"],Dc={};for(const s of Object.keys(hi))Dc[[...hi[s].labels].sort().join("")]=s;const vl={};function Ce(s,t){if(!(this instanceof Ce))return new Ce(s,t);if(t&&t in Gm&&(t=null),t&&!(t in hi))throw new Error("Unknown model: "+t);let e,i;if(s==null)this.model="rgb",this.color=[0,0,0],this.valpha=1;else if(s instanceof Ce)this.model=s.model,this.color=[...s.color],this.valpha=s.valpha;else if(typeof s=="string"){const n=Gr.get(s);if(n===null)throw new Error("Unable to parse color from string: "+s);this.model=n.model,i=hi[this.model].channels,this.color=n.value.slice(0,i),this.valpha=typeof n.value[i]=="number"?n.value[i]:1}else if(s.length>0){this.model=t||"rgb",i=hi[this.model].channels;const n=Array.prototype.slice.call(s,0,i);this.color=Lc(n,i),this.valpha=typeof s[i]=="number"?s[i]:1}else if(typeof s=="number")this.model="rgb",this.color=[s>>16&255,s>>8&255,255&s],this.valpha=1;else{this.valpha=1;const n=Object.keys(s);"alpha"in s&&(n.splice(n.indexOf("alpha"),1),this.valpha=typeof s.alpha=="number"?s.alpha:0);const r=n.sort().join("");if(!(r in Dc))throw new Error("Unable to parse color from object: "+JSON.stringify(s));this.model=Dc[r];const{labels:a}=hi[this.model],o=[];for(e=0;e(s%360+360)%360),saturationl:me("hsl",1,we(100)),lightness:me("hsl",2,we(100)),saturationv:me("hsv",1,we(100)),value:me("hsv",2,we(100)),chroma:me("hcg",1,we(100)),gray:me("hcg",2,we(100)),white:me("hwb",1,we(100)),wblack:me("hwb",2,we(100)),cyan:me("cmyk",0,we(100)),magenta:me("cmyk",1,we(100)),yellow:me("cmyk",2,we(100)),black:me("cmyk",3,we(100)),x:me("xyz",0,we(95.047)),y:me("xyz",1,we(100)),z:me("xyz",2,we(108.833)),l:me("lab",0,we(100)),a:me("lab",1),b:me("lab",2),keyword(s){return s!==void 0?new Ce(s):hi[this.model].keyword(this.color)},hex(s){return s!==void 0?new Ce(s):Gr.to.hex(this.rgb().round().color)},hexa(s){if(s!==void 0)return new Ce(s);const t=this.rgb().round().color;let e=Math.round(255*this.valpha).toString(16).toUpperCase();return e.length===1&&(e="0"+e),Gr.to.hex(t)+e},rgbNumber(){const s=this.rgb().color;return(255&s[0])<<16|(255&s[1])<<8|255&s[2]},luminosity(){const s=this.rgb().color,t=[];for(const[e,i]of s.entries()){const n=i/255;t[e]=n<=.04045?n/12.92:((n+.055)/1.055)**2.4}return .2126*t[0]+.7152*t[1]+.0722*t[2]},contrast(s){const t=this.luminosity(),e=s.luminosity();return t>e?(t+.05)/(e+.05):(e+.05)/(t+.05)},level(s){const t=this.contrast(s);return t>=7?"AAA":t>=4.5?"AA":""},isDark(){const s=this.rgb().color;return(2126*s[0]+7152*s[1]+722*s[2])/1e4<128},isLight(){return!this.isDark()},negate(){const s=this.rgb();for(let t=0;t<3;t++)s.color[t]=255-s.color[t];return s},lighten(s){const t=this.hsl();return t.color[2]+=t.color[2]*s,t},darken(s){const t=this.hsl();return t.color[2]-=t.color[2]*s,t},saturate(s){const t=this.hsl();return t.color[1]+=t.color[1]*s,t},desaturate(s){const t=this.hsl();return t.color[1]-=t.color[1]*s,t},whiten(s){const t=this.hwb();return t.color[1]+=t.color[1]*s,t},blacken(s){const t=this.hwb();return t.color[2]+=t.color[2]*s,t},grayscale(){const s=this.rgb().color,t=.3*s[0]+.59*s[1]+.11*s[2];return Ce.rgb(t,t,t)},fade(s){return this.alpha(this.valpha-this.valpha*s)},opaquer(s){return this.alpha(this.valpha+this.valpha*s)},rotate(s){const t=this.hsl();let e=t.color[0];return e=(e+s)%360,e=e<0?360+e:e,t.color[0]=e,t},mix(s,t){if(!s||!s.rgb)throw new Error('Argument to "mix" was not a Color instance, but rather an instance of '+typeof s);const e=s.rgb(),i=this.rgb(),n=t===void 0?.5:t,r=2*n-1,a=e.alpha()-i.alpha(),o=((r*a==-1?r:(r+a)/(1+r*a))+1)/2,l=1-o;return Ce.rgb(o*e.red()+l*i.red(),o*e.green()+l*i.green(),o*e.blue()+l*i.blue(),e.alpha()*n+i.alpha()*(1-n))}};for(const s of Object.keys(hi)){if(Gm.includes(s))continue;const{channels:t}=hi[s];Ce.prototype[s]=function(...e){return this.model===s?new Ce(this):e.length>0?new Ce(e,s):new Ce([...(i=hi[this.model][s].raw(this.color),Array.isArray(i)?i:[i]),this.valpha],s);var i},Ce[s]=function(...e){let i=e[0];return typeof i=="number"&&(i=Lc(e,t)),new Ce(i,s)}}function Xy(s){return function(t){return function(e,i){return Number(e.toFixed(i))}(t,s)}}function me(s,t,e){s=Array.isArray(s)?s:[s];for(const i of s)(vl[i]||(vl[i]=[]))[t]=e;return s=s[0],function(i){let n;return i!==void 0?(e&&(i=e(i)),n=this[s](),n.color[t]=i,n):(n=this[s]().color[t],e&&(n=e(n)),n)}}function we(s){return function(t){return Math.max(0,Math.min(s,t))}}function Lc(s,t){for(let e=0;e{for(let e of t)Object.defineProperty(s,e,{get:function(){return this.uniforms[e].value},set:function(i){this.uniforms[e].value=i}})},Bs=(s,t=[])=>{for(let e of t)Object.defineProperty(s,e,{get:function(){return this.uniforms[e].value},set:function(i){this.uniforms[e].value=es(i)}})},_i=(s,t=[])=>{for(let[e,i,n]of t)Object.defineProperty(s,e,{get:function(){return this.uniforms[i].value},set:function(r){this.uniforms[i].value=n?n(r):r}})},Qe=(s,t=[])=>{for(let[e,i]of t)Object.defineProperty(s,e,{get:function(){return!!this.defines[i]},set:function(n){this[e]!==n&&(n?this.defines[i]=!0:delete this.defines[i],this.needsUpdate=!0)}})},ns=s=>{Object.defineProperties(s,{selectedObjectColor:{get:function(){return this.uniforms.selectedObjectColor.value},set:function(t){this.uniforms.selectedObjectColor.value=t}},selectedObjectColorMode:{get:function(){return this.uniforms.selectedObjectColorMode.value},set:function(t){this.uniforms.selectedObjectColorMode.value=t}},selectedObjectIndex:{get:function(){return this.uniforms.selectedObjectIndex.value},set:function(t){this.uniforms.selectedObjectIndex.value=t}},selective:{get:function(){return!!this.defines.MVT_ENABLE_SELECTIVE},set:function(t){this.selective!==t&&(t?this.defines.MVT_ENABLE_SELECTIVE=!0:delete this.defines.MVT_ENABLE_SELECTIVE,this.needsUpdate=!0)}}})},Oc=s=>{Object.defineProperties(s,{keepSize:{get:function(){return this.uniforms.keepSize.value},set:function(t){this.uniforms.keepSize.value=t}},zoomUnits:{get:function(){return this.uniforms.zoomUnits.value},set:function(t){this.uniforms.zoomUnits.value=t}},zoomUnitsUniform:{get:function(){return this.uniforms.zoomUnits},set:function(t){this.uniforms.zoomUnits=t}}})},ss=s=>{Object.defineProperties(s,{emissiveEnabled:{get:function(){return this.defines.MVT_EMISSIVE_UNIFORM||!1},set:function(t){t?this.defines.MVT_EMISSIVE_UNIFORM=!0:delete this.defines.MVT_EMISSIVE_UNIFORM}},emissive:{get:function(){return this.uniforms.mvt_emissive.value},set:function(t){t?this.defines.MVT_EMISSIVE_COLOR=!0:delete this.defines.MVT_EMISSIVE_COLOR,this.uniforms.mvt_emissive.value=t}},emissiveIntensity:{get:function(){return this.uniforms.mvt_emissiveIntensity.value},set:function(t){this.uniforms.mvt_emissiveIntensity.value=t}}})},Ym=s=>{const t=s&&s.source&&s.source.data&&s.source.data.height||null;if(t===null)return null;const e=Math.log2(t)-2,i=1/t;return{texelWidth:1/(3*Math.max(Math.pow(2,e),112)),texelHeight:i,maxMip:e}},Yy={tDiffuse:{value:null},tNormal:{value:null},tMetalness:{value:null},tEnhancement:{value:null},tEnhancementScale:{value:new j(20,20)},tDepth:{value:null},cameraNear:{value:null},cameraFar:{value:null},resolution:{value:new j},cameraProjectionMatrix:{value:new rt},cameraInverseProjectionMatrix:{value:new rt},mvt_viewInverseMatrix:{value:new rt},mvt_normalInverseMatrix:{value:new Ke},opacity:{value:.5},maxDistance:{value:180},cameraRange:{value:0},thickness:{value:.018},logDepthBufFC:{value:1},threshold:{value:.35}};class Zy extends Zt{constructor(t){super(),this.vertexShader=`#define GLSLIFY 1 +varying vec2 vUv; + +void main() { + + vUv = uv; + + gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 ); + +}`,this.fragmentShader=`precision highp sampler2D; +#define GLSLIFY 1 +varying vec2 vUv; +uniform sampler2D tDepth; +uniform sampler2D tNormal; +uniform sampler2D tMetalness; +uniform sampler2D tDiffuse; + +#if defined(MVT_SSR_USE_ENHANCEMENT_MAP) +uniform sampler2D tEnhancement; +uniform vec2 tEnhancementScale; +uniform mat4 mvt_viewInverseMatrix; +uniform mat3 mvt_normalInverseMatrix; +#endif + +uniform float cameraRange; +uniform vec2 resolution; +uniform float opacity; +uniform float cameraNear; +uniform float cameraFar; +uniform float maxDistance; +uniform float thickness; +uniform mat4 cameraProjectionMatrix; +uniform mat4 cameraInverseProjectionMatrix; +uniform float threshold; // 控制反射最低阈值,低于此致的不计算,可提高性能 + +#include +float pointToLineDistance(vec3 x0, vec3 x1, vec3 x2) { + //x0: point, x1: linePointA, x2: linePointB + //https://mathworld.wolfram.com/Point-LineDistance3-Dimensional.html + return length(cross(x0 - x1, x0 - x2)) / length(x2 - x1); +} +float pointPlaneDistance(vec3 point, vec3 planePoint, vec3 planeNormal) { + // https://mathworld.wolfram.com/Point-PlaneDistance.html + //// https://en.wikipedia.org/wiki/Plane_(geometry) + //// http://paulbourke.net/geometry/pointlineplane/ + float a = planeNormal.x, b = planeNormal.y, c = planeNormal.z; + float x0 = point.x, y0 = point.y, z0 = point.z; + float x = planePoint.x, y = planePoint.y, z = planePoint.z; + float d = -(a * x + b * y + c * z); + float distance = (a * x0 + b * y0 + c * z0 + d) / sqrt(a * a + b * b + c * c); + return distance; +} +// https://stackoverflow.com/questions/40373184/world-space-position-from-logarithmic-depth-buffer +float linearize_depth(in float depth) { + float a = cameraFar / (cameraFar - cameraNear); + float b = cameraFar * cameraNear / (cameraNear - cameraFar); + return a + b / depth; +} + +float reconstruct_depth(const in vec2 uv) { + float depth = texture2D(tDepth, uv).x; + return pow(2.0, depth * log2(cameraFar + 1.0)) - 1.0; +} + +float getDepth(const in vec2 uv) { + #if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT ) + return linearize_depth(reconstruct_depth(uv)); //exp2(logDepth * 2.0 / logDepthBufFC) - 1.0; + #else + return texture2D(tDepth, uv).x; + #endif + +} +float getViewZ(const in float depth) { + #ifdef PERSPECTIVE_CAMERA + return perspectiveDepthToViewZ(depth, cameraNear, cameraFar); + #else + return orthographicDepthToViewZ(depth, cameraNear, cameraFar); + #endif +} +vec3 getViewPosition(const in vec2 uv, const in float depth/*clip space*/, const in float clipW) { + vec4 clipPosition = vec4((vec3(uv, depth) - 0.5) * 2.0, 1.0);//ndc + clipPosition *= clipW; //clip + return (cameraInverseProjectionMatrix * clipPosition).xyz;//view +} +#if defined(MVT_SSR_USE_ENHANCEMENT_MAP) +vec3 getWorldPositionFromDepth(float depth) { + float z = depth * 2.0 - 1.0; + vec4 clipSpacePosition = vec4(vUv * 2.0 - 1.0, z, 1.0); + vec4 viewSpacePosition = cameraInverseProjectionMatrix * clipSpacePosition; + vec4 worldSpacePosition = mvt_viewInverseMatrix * viewSpacePosition; + return worldSpacePosition.xyz / worldSpacePosition.w; +} +#endif +vec3 getViewNormal(const in vec2 uv) { + return unpackRGBToNormal(texture2D(tNormal, uv).xyz); +} +vec2 viewPositionToXY(vec3 viewPosition) { + vec2 xy; + vec4 clip = cameraProjectionMatrix * vec4(viewPosition, 1); + xy = clip.xy;//clip + float clipW = clip.w; + xy /= clipW;//NDC + xy = (xy + 1.) / 2.;//uv + xy *= resolution;//screen + return xy; +} +void main() { + + float depth = getDepth(vUv); + vec3 viewNormal = getViewNormal(vUv); + #ifdef SELECTIVE + // 完全没反射的表面直接剔除 + float intensity = texture2D(tMetalness, vUv).x; + + #if defined(MVT_SSR_USE_ENHANCEMENT_MAP) + float dirAlpha = dot(viewNormal * mvt_normalInverseMatrix, vec3(0.0, 0.0, 1.0)); + if (dirAlpha > 0.5) { + vec3 worldSpacePosition = getWorldPositionFromDepth(depth); + vec2 enhancementUv = vec2(mod(worldSpacePosition.x, tEnhancementScale.x) / tEnhancementScale.x, + mod(worldSpacePosition.y, tEnhancementScale.y) / tEnhancementScale.y); + float enhancement = texture2D(tEnhancement, enhancementUv).x; + intensity += (1.0 - enhancement); + } + // gl_FragColor = vec4(enhancement, 0.0, 0.0, 1.0); + // return; + #endif + + if(intensity < threshold) + return; + intensity -= threshold; + intensity *= 1.0 / (1.0 - threshold); + #endif + + + float viewZ = getViewZ(depth); + // z值已经超过相机远端距离 + if(-viewZ >= cameraFar) + return; + + float clipW = cameraProjectionMatrix[2][3] * viewZ + cameraProjectionMatrix[3][3]; + // 相机视图下的当前片元坐标 + vec3 viewPosition = getViewPosition(vUv, depth, clipW); + + // 起点的屏幕坐标 + vec2 d0 = gl_FragCoord.xy; + vec2 d1; + + #ifdef PERSPECTIVE_CAMERA + // 入射光方向,相机在原点,方向即为坐标的单位向量 + vec3 viewIncidentDir = normalize(viewPosition); + // 反射光方向 + vec3 viewReflectDir = reflect(viewIncidentDir, viewNormal); + #else + vec3 viewIncidentDir = vec3(0, 0, -1); + vec3 viewReflectDir = reflect(viewIncidentDir, viewNormal); + #endif + + // 反射光线最长距离由输入的最大反射距离和入射角决定 + float maxReflectRayLen = maxDistance / dot(-viewIncidentDir, viewNormal); + // dot(a,b)==length(a)*length(b)*cos(theta) // https://www.mathsisfun.com/algebra/vectors-dot-product.html + // if(a.isNormalized&&b.isNormalized) dot(a,b)==cos(theta) + // maxDistance/maxReflectRayLen=cos(theta) + // maxDistance/maxReflectRayLen==dot(a,b) + // maxReflectRayLen==maxDistance/dot(a,b) + + // 反射最远距离下的坐标点 + vec3 d1viewPosition = viewPosition + viewReflectDir * maxReflectRayLen; + #ifdef PERSPECTIVE_CAMERA + if(d1viewPosition.z > -cameraNear) { + //https://tutorial.math.lamar.edu/Classes/CalcIII/EqnsOfLines.aspx + // 应该是处理反射点溢出相机视野外的情况 + float t = (-cameraNear - viewPosition.z) / viewReflectDir.z; + d1viewPosition = viewPosition + viewReflectDir * t; + } + #endif + // 反射最远点在屏幕上的位置 + d1 = viewPositionToXY(d1viewPosition); + + // 屏幕像素距离 + float totalLen = length(d1 - d0); + float xLen = d1.x - d0.x; + float yLen = d1.y - d0.y; + // 最大步数取xy方向较大的一个方向,每次步进一个像素 + float totalStep = max(abs(xLen), abs(yLen)); + // x方向每次步进的大小 + float xSpan = xLen / totalStep; + // y方向每次步进的大小 + float ySpan = yLen / totalStep; + // 步进次数最大是屏幕对角线距离(应该是横向或者纵向的最大值),实际次数要远小于这个 + for(float i = 0.; i < float(MAX_STEP); i++) { + if(i >= totalStep) + break; + // march到的当前屏幕像素 + vec2 xy = vec2(d0.x + i * xSpan, d0.y + i * ySpan); + // 跑到屏幕外march失败 + if(xy.x < 0. || xy.x > resolution.x || xy.y < 0. || xy.y > resolution.y) + break; + // 当前百分比 + float s = length(xy - d0) / totalLen; + // 当前uv + vec2 uv = xy / resolution; + // 计算当前点的各项参数,和一开始一样 + float d = getDepth(uv); + float vZ = getViewZ(d); + // gl_FragColor = vec4(-vZ / 1000., 0.0, 0.0, 1.0); + // return; + if(-vZ >= cameraFar) + continue; + float cW = cameraProjectionMatrix[2][3] * vZ + cameraProjectionMatrix[3][3]; + // 得到当前点的viewposition + vec3 vP = getViewPosition(uv, d, cW); + + // 得到当前反射线的z + #ifdef PERSPECTIVE_CAMERA + // https://comp.nus.edu.sg/~lowkl/publications/lowk_persp_interp_techrep.pdf + float recipVPZ = 1. / viewPosition.z; + float viewReflectRayZ = 1. / (recipVPZ + s * (1. / d1viewPosition.z - recipVPZ)); + #else + float viewReflectRayZ = viewPosition.z + s * (d1viewPosition.z - viewPosition.z); + #endif + + // if(viewReflectRayZ>vZ) continue; // will cause "npm run make-screenshot webgl_postprocessing_ssr" high probability hang. + // https://github.com/mrdoob/three.js/pull/21539#issuecomment-821061164 + // 反射线的z小于当前点的z,否则就是被遮挡住了 + if(viewReflectRayZ <= vZ) { + + bool hit; + #ifdef INFINITE_THICK + hit = true; + #else + // 点到射线的距离 + float away = pointToLineDistance(vP, viewPosition, d1viewPosition); + + // minThickness没看懂,和横向邻接点的viewx差值,大约代表了此处一个像素和实际距离的比例,乘3.0? + float minThickness; + vec2 xyNeighbor = xy; + xyNeighbor.x += 1.; + vec2 uvNeighbor = xyNeighbor / resolution; + vec3 vPNeighbor = getViewPosition(uvNeighbor, d, cW); + minThickness = vPNeighbor.x - vP.x; + minThickness *= 3.; + float tk = max(minThickness, thickness); + // 当距离小于阈值时才算是真正相交 + hit = away <= tk; + #endif + + if(hit) { + vec3 vN = getViewNormal(uv); + // 相交到物体的反面了,march无效 + if(dot(viewReflectDir, vN) >= 0.) + continue; + float distance = pointPlaneDistance(vP, viewPosition, viewNormal); + // march距离超过最大 + if(distance > maxDistance) + break; + float op = opacity; + // 随着距离减弱反射,防止反射突然消失 + #ifdef DISTANCE_ATTENUATION + float ratio = 1. - (distance / maxDistance); + float attenuation = ratio * ratio; + op = opacity * attenuation; + #endif + // 菲涅尔反射定律,与视野角度偏离越大,颜色权重越大 + #ifdef FRESNEL + float fresnelCoe = (dot(viewIncidentDir, viewReflectDir) + 1.) / 2.; + op *= fresnelCoe; + #endif + // 读取反射颜色赋给当前片元 + vec4 reflectColor = texture2D(tDiffuse, uv); + gl_FragColor.xyz = reflectColor.xyz; + gl_FragColor.a = op; + #ifdef SELECTIVE + gl_FragColor.a *= intensity; + #endif + break; + } + } + } +}`,this.uniforms=pt.clone(Yy),this.defines={MAX_STEP:0,PERSPECTIVE_CAMERA:!0,DISTANCE_ATTENUATION:!0,FRESNEL:!0,INFINITE_THICK:!1,SELECTIVE:!1},jt(this,["tDiffuse","tNormal","tDepth","tMetalness","cameraNear","cameraFar","threshold","thickness","opacity","tEnhancementScale"]),Qe(this,[]),Object.defineProperties(this,{tEnhancement:{get:function(){return this.uniforms.tEnhancement.value},set:function(e){e?(this.uniforms.tEnhancement.value=e,this.defines.MVT_SSR_USE_ENHANCEMENT_MAP=!0):(this.uniforms.tEnhancement.value=null,delete this.defines.MVT_SSR_USE_ENHANCEMENT_MAP)}}}),this.setValues(t)}dispose(){let t=["tEnhancement","tDiffuse","tNormal","tDepth","tMetalness"];for(let e=0;e +#include +#include + +uniform sampler2D tDiffuse; +uniform sampler2D tNormal; +uniform sampler2D tDepth; + +#if defined(MVT_POST_ENABLE_BLOOM) + uniform sampler2D tBloom; +#endif + +#if defined(MVT_POST_ENABLE_REFLECTION) + uniform sampler2D tReflection; +#endif + +#if defined(MVT_POST_ENABLE_COVERAGE) + #if defined(MVT_POST_ENABLE_COVERAGE_INDENSITY_MAP) + uniform sampler2D tCoverageIntensity; + #endif + uniform vec2 coverageSacle; + uniform float coverageIntensity; + // 覆盖层颜色 + uniform vec3 coverageColor; +#endif + +// 加前缀防止被three.js本身变量覆盖 +uniform float cameraNear; +uniform float cameraFar; +uniform mat3 mvt_normalInverseMatrix; +uniform mat4 mvt_projectionMatrix; +uniform mat4 mvt_projectionInverseMatrix; +uniform mat4 mvt_viewInverseMatrix; + +#if defined(MVT_POST_USE_FOG) + uniform vec3 fogColor; + uniform float fogDensity; + uniform float fogSkyColorStartFactor; + uniform float fogAltitudeBottom; + uniform float fogAltitudeTop; +#endif + +#if defined(ENVMAP_TYPE_CUBE_UV) + uniform sampler2D tEnv; +#elif defined(ENVMAP_TYPE_CUBE) + uniform samplerCube tEnv; +#endif + +#ifdef MVT_POST_ENABLE_COLOR_ADJUST + uniform float adjustBrightnessFactor; + uniform float adjustContrastFactor; + uniform float adjustSaturationFactor; +#endif + +#ifdef MVT_MRT_POST_DEBUG + uniform vec2 debugDimension; + uniform vec2 debugOffset; + uniform int tCount; + uniform sampler2D tDebug1; + #if MVT_POST_DEBUG_TEXTURE_COUNT > 1 + uniform sampler2D tDebug2; + #endif + #if MVT_POST_DEBUG_TEXTURE_COUNT > 2 + uniform sampler2D tDebug3; + #endif + #if MVT_POST_DEBUG_TEXTURE_COUNT > 3 + uniform sampler2D tDebug4; + #endif + #if MVT_POST_DEBUG_TEXTURE_COUNT > 4 + uniform sampler2D tDebug5; + #endif + #if MVT_POST_DEBUG_TEXTURE_COUNT > 5 + uniform sampler2D tDebug6; + #endif +#endif + +varying vec2 vUv; + +float linearize_depth(in float depth){ + float a = cameraFar / (cameraFar - cameraNear); + float b = cameraFar * cameraNear / (cameraNear - cameraFar); + return a + b / depth; +} + +float reconstruct_depth(const in vec2 uv){ + float depth = texture2D(tDepth, uv).x; + return pow(2.0, depth * log2(cameraFar + 1.0)) - 1.0; +} + +float getDepth(vec2 uv) { + #if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT ) + return linearize_depth(reconstruct_depth(uv)); + #else + return texture2D(tDepth, uv).x; + #endif +} +vec3 getWorldPositionFromDepth(float depth) { + float z = depth * 2.0 - 1.0; + vec4 clipSpacePosition = vec4(vUv * 2.0 - 1.0, z, 1.0); + + // float viewZ = perspectiveDepthToViewZ(depth, cameraNear, cameraFar); + // float clipW = mvt_projectionMatrix[2][3] * viewZ + mvt_projectionMatrix[3][3]; + // clipSpacePosition *= clipW; + vec4 viewSpacePosition = mvt_projectionInverseMatrix * clipSpacePosition; + + // viewSpacePosition /= viewSpacePosition.w; + // return viewSpacePosition.xyz; + vec4 worldSpacePosition = mvt_viewInverseMatrix * viewSpacePosition; + + return worldSpacePosition.xyz / worldSpacePosition.w; +} + +float getNoramlLength(vec3 normal) { + if (normal.x < 0. || normal.y < 0. || normal.z < 0.) { + return 0.; + } + return length(normal); +} +void renderOutputColor() { + vec4 outColor = texture2D(tDiffuse, vUv); + + // bloom + #if defined(MVT_POST_ENABLE_BLOOM) + outColor += vec4( 1.0 ) * texture2D(tBloom, vUv); + #endif + + // reflection + #if defined(MVT_POST_ENABLE_REFLECTION) + vec4 reflectionColor = texture2D( tReflection, vUv ); + outColor.xyz = mix(outColor.xyz, reflectionColor.xyz, reflectionColor.w); + #endif + + vec4 viewNormal = texture2D(tNormal, vUv); + vec3 normal = unpackRGBToNormal(viewNormal.xyz); + float normalLength = getNoramlLength(normal); + + #if (defined(MVT_POST_ENABLE_COVERAGE) && defined(MVT_POST_ENABLE_COVERAGE_INDENSITY_MAP)) || defined(MVT_POST_USE_FOG) + float depth = getDepth(vUv); + vec3 worldSpacePosition = getWorldPositionFromDepth(depth); + #endif + + #if defined(MVT_POST_ENABLE_COVERAGE) + if (coverageIntensity > 0.0 && normalLength > 0.5) { + float dirAlpha = dot(normal * mvt_normalInverseMatrix, vec3(0.0, 0.0, 1.0)); + if (dirAlpha > 0.2) { + float coverageAlpha = clamp(0.0, 1.0, dirAlpha) * coverageIntensity; + vec3 coverageFinalColor = vec3(coverageColor); + #if defined(MVT_POST_ENABLE_COVERAGE_INDENSITY_MAP) + + vec2 coverageUv = vec2(mod(worldSpacePosition.x, coverageSacle.x) / coverageSacle.x, + mod(worldSpacePosition.y, coverageSacle.y) / coverageSacle.y); + coverageAlpha *= texture2D(tCoverageIntensity, coverageUv).x; + #endif + // outColor.xyz = vec3(coverageAlpha, 0.0, 0.0); + outColor.xyz = mix(outColor.xyz, coverageFinalColor, coverageAlpha); + } + } + #endif + + #if defined(MVT_POST_USE_FOG) + vec3 cameraPosition = mvt_viewInverseMatrix[3].xyz; + if (cameraPosition.z < 5000.) { + float fogFactorMultiplier = clamp((5000. - cameraPosition.z) / 2000., 0., 1.); + float fogDepth = texture2D(tDepth, vUv).x; + float fogHeight = fogAltitudeTop - fogAltitudeBottom; + float fogHeightRatio = (clamp(worldSpacePosition.z, fogAltitudeBottom, fogAltitudeTop) - fogAltitudeBottom) / fogHeight; + // 混合大气雾,只混合除去天空的部分 + // if (normalLength > 0.00001) { + #if defined(ENVMAP_TYPE_CUBE_UV) || defined(ENVMAP_TYPE_CUBE) + vec3 worldViewDir = normalize(worldSpacePosition.xyz - cameraPosition); + // worldViewDir.z = clamp(worldSpacePosition.z / 1000.0, 0.0, 0.2); + // worldViewDir = reflect(worldViewDir, vec3(0.0, 0.0, 1.0)); + #if defined(ENVMAP_TYPE_CUBE_UV) + vec3 skyColor = textureCubeUV(tEnv, worldViewDir, 0.0).xyz; + #else + vec3 skyColor = textureCube(tEnv, worldViewDir).xyz; + #endif + float skyColorDepth = 1.0 - fogSkyColorStartFactor; + float skyColrFactor = clamp(fogDepth - fogSkyColorStartFactor, 0.0, skyColorDepth) / skyColorDepth; + skyColrFactor = skyColrFactor * skyColrFactor * skyColrFactor; + skyColrFactor *= 1.0 - fogHeightRatio; + outColor.xyz = mix(outColor.xyz, skyColor, skyColrFactor * fogFactorMultiplier); + + // outColor.xyz = vec3(abs(normal.xyz)); //vec3(0.0, 0.0, normalLength); + // outColor.xyz = vec3(mod(worldSpacePosition.x, 1000.0), mod(worldSpacePosition.y, 1000.0), 0.0); + // outColor.xyz = skyColor; + // skyColor = vec3(0.0, 0.0, 1.0); + // outColor.xyz = vec3(clamp(fogDepth - 0.95, 0.0, 0.05) * 20.0, 0.0, 0.0); + // fogCompseColor = mix(fogColor, skyColor, clamp(fogDepth - 0.5, 0.0, 0.5) * 2.0); + // fogCompseColor = mix(fogCompseColor, fogColor, clamp(fogDensity - 0.5, 0.0, 1.0)); + #endif + // } + float fogFactor = 1.0 - exp( - fogDensity * fogDensity * fogDepth * fogDepth ); + // fogFactor *= clamp(worldSpacePosition.z, 1.0, 0.0); + // 高度衰减系数 + float heightAttenuation = fogHeightRatio; + heightAttenuation = clamp(heightAttenuation - (fogDensity - 0.5), 0.0, 1.0); + fogFactor = clamp(fogFactor - heightAttenuation, 0.0, 1.0); + // vec3 fogCompseColor = vec3(fogColor); + // #if defined(ENVMAP_TYPE_CUBE_UV) || defined(ENVMAP_TYPE_CUBE) + // vec3 worldViewDir = normalize(worldSpacePosition.xyz - mvt_viewInverseMatrix[3].xyz); + // worldViewDir.z = clamp(worldSpacePosition.z / 1000.0, 0.0, 0.2); + // // worldViewDir = reflect(worldViewDir, vec3(0.0, 0.0, 1.0)); + // #if defined(ENVMAP_TYPE_CUBE_UV) + // vec3 skyColor = textureCubeUV(tEnv, worldViewDir, 0.0).xyz; + // #else + // vec3 skyColor = textureCube(tEnv, worldViewDir).xyz; + // #endif + // // skyColor = vec3(0.0, 0.0, 1.0); + // fogCompseColor = mix(fogColor, skyColor, clamp(fogDepth - 0.5, 0.0, 0.5) * 2.0); + // fogCompseColor = mix(fogCompseColor, fogColor, clamp(fogDensity - 0.5, 0.0, 1.0)); + // #endif + + // outColor.xyz = skyColor; + outColor.xyz = mix(outColor.xyz, fogColor, fogFactor * fogFactorMultiplier); + } + #endif + + #ifdef MVT_POST_ENABLE_COLOR_ADJUST + // https://www.w3.org/TR/WCAG21/#dfn-relative-luminance + vec3 grayscale = vec3(dot(outColor.xyz, vec3(0.2126, 0.7152, 0.0722))); + outColor.xyz = mix(grayscale, outColor.xyz, 1.0 + adjustSaturationFactor); + + outColor.xyz = 0.5 + (1.0 + adjustContrastFactor) * (outColor.xyz - 0.5); + outColor.xyz = outColor.xyz + adjustBrightnessFactor; + #endif + + gl_FragColor = outColor; +} + +#ifdef MVT_MRT_POST_DEBUG +void renderDebugColor(float u, float v) { + vec4 color; + + if (u < 1.0) { + color = texture2D(tDebug1, vec2(mod(u, 1.0), v)); + } + #if MVT_POST_DEBUG_TEXTURE_COUNT > 1 + else if (u < 2.0) { + color = texture2D(tDebug2, vec2(mod(u, 1.0), v)); + } + #endif + #if MVT_POST_DEBUG_TEXTURE_COUNT > 2 + else if (u < 3.0) { + color = texture2D(tDebug3, vec2(mod(u, 1.0), v)); + } + #endif + #if MVT_POST_DEBUG_TEXTURE_COUNT > 3 + else if (u < 4.0) { + color = texture2D(tDebug4, vec2(mod(u, 1.0), v)); + } + #endif + #if MVT_POST_DEBUG_TEXTURE_COUNT > 4 + else if (u < 5.0) { + color = texture2D(tDebug5, vec2(mod(u, 1.0), v)); + } + #endif + #if MVT_POST_DEBUG_TEXTURE_COUNT > 5 + else if (u < 6.0) { + color = texture2D(tDebug6, vec2(mod(u, 1.0), v)); + } + #endif + + gl_FragColor = color; +} +#endif + +void main() { + + #ifdef MVT_MRT_POST_DEBUG + float u = (debugOffset.x + vUv.x) / debugDimension.x; + float v = (debugOffset.y + vUv.y) / debugDimension.y; + if (v >= 0.0 && v <= 1.0 && u >= 0.0 && u <= 1.0 * float(tCount)) { + renderDebugColor(u, v); + } + else { + renderOutputColor(); + } + #else + renderOutputColor(); + #endif + // #include + #include +}`,this.uniforms=pt.clone(Qy),this.defines={MVT_POST_ENABLE_BLOOM:!1,MVT_POST_DEBUG_TEXTURE_COUNT:0,MVT_POST_USE_FOG:!1,MVT_POST_ENABLE_COLOR_ADJUST:!1,CUBEUV_TEXEL_WIDTH:.0003255208333333333,CUBEUV_TEXEL_HEIGHT:.000244140625,CUBEUV_MAX_MIP:"10.0"},jt(this,["tDiffuse","tNormal","tDepth","debugDimension","debugOffset","fogColor","fogDensity","fogAltitudeBottom","fogAltitudeTop","fogSkyColorStartFactor","adjustBrightnessFactor","adjustContrastFactor","adjustSaturationFactor"]),Object.defineProperties(this,{tBloom:{get:function(){return this.uniforms.tBloom.value},set:function(e){e?(this.uniforms.tBloom.value=e,this.defines.MVT_POST_ENABLE_BLOOM=!0):(this.uniforms.tBloom.value=null,delete this.defines.MVT_POST_ENABLE_BLOOM),this.needsUpdate=!0}},tReflection:{get:function(){return this.uniforms.tReflection.value},set:function(e){e?(this.uniforms.tReflection.value=e,this.defines.MVT_POST_ENABLE_REFLECTION=!0):(this.uniforms.tReflection.value=null,delete this.defines.MVT_POST_ENABLE_REFLECTION),this.needsUpdate=!0}},coverageIntensity:{get:function(){return this.uniforms.coverageIntensity.value},set:function(e){this.uniforms.coverageIntensity.value=e,e>0?this.defines.MVT_POST_ENABLE_COVERAGE=!0:delete this.defines.MVT_POST_ENABLE_COVERAGE,(e===0&&this._lastCoverageIntensity>0||e>0&&this._lastCoverageIntensity===0)&&(this.needsUpdate=!0),this._lastCoverageIntensity=e}},tCoverageIntensity:{get:function(){return this.uniforms.tCoverageIntensity.value},set:function(e){e?(this.uniforms.tCoverageIntensity.value=e,this.defines.MVT_POST_ENABLE_COVERAGE_INDENSITY_MAP=!0):(this.uniforms.tCoverageIntensity.value=null,delete this.defines.MVT_POST_ENABLE_COVERAGE_INDENSITY_MAP),this.needsUpdate=!0}},debugTextures:{get:function(){return null},set:function(e){if(Array.isArray(e)){this.defines.MVT_MRT_POST_DEBUG=!0;const i=e.length;this.uniforms.tCount.value=i,this.defines.MVT_POST_DEBUG_TEXTURE_COUNT=i,this.uniforms.tDebug1.value=e[0]||null,this.uniforms.tDebug2.value=e[1]||null,this.uniforms.tDebug3.value=e[2]||null,this.uniforms.tDebug4.value=e[3]||null}else delete this.defines.MVT_MRT_POST_DEBUG,this.defines.MVT_POST_DEBUG_TEXTURE_COUNT=0,this.uniforms.tCount.value=0,this.uniforms.tDebug1.value=null,this.uniforms.tDebug2.value=null,this.uniforms.tDebug3.value=null,this.uniforms.tDebug4.value=null;this.needsUpdate=!0}},useFog:{get:function(){return this.defines.MVT_POST_USE_FOG||!1},set:function(e){e!==!!this.defines.MVT_POST_USE_FOG&&(e?this.defines.MVT_POST_USE_FOG=!0:delete this.defines.MVT_POST_USE_FOG,this.needsUpdate=!0)}},tEnv:{get:function(){return this.uniforms.tEnv.value},set:function(e){if(e!==this.uniforms.tEnv.value){if(e)if(e.mapping===xs){this.defines.ENVMAP_TYPE_CUBE_UV=!0,delete this.defines.ENVMAP_TYPE_CUBE;const i=Ym(e);i&&(this.defines.CUBEUV_TEXEL_WIDTH=i.texelWidth,this.defines.CUBEUV_TEXEL_HEIGHT=i.texelHeight,this.defines.CUBEUV_MAX_MIP=i.maxMip+".0")}else this.defines.ENVMAP_TYPE_CUBE=!0,delete this.defines.ENVMAP_TYPE_CUBE_UV;else delete this.defines.ENVMAP_TYPE_CUBE,delete this.defines.ENVMAP_TYPE_CUBE_UV;this.uniforms.tEnv.value=e,this.needsUpdate=!0}}},colorAdjustEnabled:{get:function(){return this.defines.MVT_POST_ENABLE_COLOR_ADJUST},set:function(e){e!==this.defines.MVT_POST_ENABLE_COLOR_ADJUST&&(e?this.defines.MVT_POST_ENABLE_COLOR_ADJUST=!0:delete this.defines.MVT_POST_ENABLE_COLOR_ADJUST,this.needsUpdate=!0)}}}),this.setValues(t)}dispose(){let t=["tEnv","tDiffuse","tNormal","tDepth","tBloom","tReflection","tCoverageIntensity","tDebug1","tDebug2","tDebug3","tDebug4","tDebug5","tDebug6"];for(let e=0;e=0;e--){if(t.renderOrder>=this._passes[e].renderOrder){this._passes.splice(e+1,0,t),this._renderComposer&&this._renderComposer.insertPass(t,e+2);break}e===0&&(this._passes.splice(e,0,t),this._renderComposer&&this._renderComposer.insertPass(t,e+1))}}removePass(t){const e=this._passes.indexOf(t);e!==-1&&(this._passes.splice(e,1),this._renderComposer.removePass(t)),this._passes.length===0&&this.enabled&&(this.enabled=!1)}get composer(){return this._renderComposer}}class s1 extends St{constructor(t){super(),d(this,"_enableRtc",!0),d(this,"_cachedRtc",[0,0,0]),d(this,"makeMeshPositionOffset",e=>{this._cachedRtc=[e[0],e[1],e[2]||0],this.updateTransform()}),d(this,"makeGeometryOffsetPosition",(e,i)=>{if(!this._enableRtc)return;const n=e.boundingSphere&&e.boundingSphere.center;if(!n)return this._cachedRtc=[0,0,0],void this.updateTransform();const{x:r,y:a,z:o}=n;e.isCustomInstancedBufferGeometry?this.makePostionArrayOffset(e.attributes.instancedPosition.array,r,a,o,i):(this.makePostionArrayOffset(e.attributes.position.array,r,a,o,i),e.attributes.position.array.length),e.computeBoundingSphere(),this._cachedRtc=[r,a,o],this.updateTransform()}),d(this,"makePostionArrayOffset",(e,i,n,r,a)=>{if(!e||e.length<3)return;let o=a||e;for(let l=0,h=e.length-2;l{const[e,i,n]=this._cachedRtc;this.position.set(e,i,n),this.updateMatrixWorld(!0)}),Object.defineProperties(this,{enableRtc:{get:function(){return this._enableRtc},set:function(e){this._enableRtc=e}}})}defineGeometryProxyProperties(t=[]){for(let e=0;e0?1:0))*e,i*Math.log(Math.tan(.25*Math.PI+.5*s[1]*e))];return r[0]>n&&(r[0]=n),r[0]<-n&&(r[0]=-n),r[1]>n&&(r[1]=n),r[1]<-n&&(r[1]=-n),r}function zc(s){var t=180/Math.PI,e=6378137;return[s[0]*t/e,(.5*Math.PI-2*Math.atan(Math.exp(-s[1]/e)))*t]}function Xe(){}function kc(s,t){for(let e in t)s[e]=t[e]}function ci(s,t){this.lng=s,this.lat=t}function Xr(s,t){this.x=s,this.y=t}kc(ci.prototype,{equals:function(s){return this.lat===s.lat&&this.lng===s.lng},clone:function(){return new ci(this.lat,this.lng)},getLngSpan:function(s){let t=this.lng,e=Math.abs(s-t);return e>180&&(e=360-e),e},sub:function(s){return new ci(this.lat-s.lat,this.lng-s.lng)},toString:function(){return"Point"}}),kc(Xe,{EARTHRADIUS:637099681e-2,MCBAND:[1289059486e-2,836237787e-2,5591021,348198983e-2,167804312e-2,0],LLBAND:[75,60,45,30,15,0],MC2LL:[[1410526172116255e-23,898305509648872e-20,-1.9939833816331,200.9824383106796,-187.2403703815547,91.6087516669843,-23.38765649603339,2.57121317296198,-.03801003308653,173379812e-1],[-7435856389565537e-24,8983055097726239e-21,-.78625201886289,96.32687599759846,-1.85204757529826,-59.36935905485877,47.40033549296737,-16.50741931063887,2.28786674699375,1026014486e-2],[-3030883460898826e-23,898305509983578e-20,.30071316287616,59.74293618442277,7.357984074871,-25.38371002664745,13.45380521110908,-3.29883767235584,.32710905363475,685681737e-2],[-1981981304930552e-23,8983055099779535e-21,.03278182852591,40.31678527705744,.65659298677277,-4.44255534477492,.85341911805263,.12923347998204,-.04625736007561,448277706e-2],[309191371068437e-23,8983055096812155e-21,6995724062e-14,23.10934304144901,-.00023663490511,-.6321817810242,-.00663494467273,.03430082397953,-.00466043876332,25551644e-1],[2890871144776878e-24,8983055095805407e-21,-3068298e-14,7.47137025468032,-353937994e-14,-.02145144861037,-1234426596e-14,.00010322952773,-323890364e-14,826088.5]],LL2MC:[[-.0015702102444,111320.7020616939,0x60e374c3105a3,-0x24bb4115e2e164,0x5cc55543bb0ae8,-0x7ce070193f3784,0x5e7ca61ddf8150,-0x261a578d8b24d0,0x665d60f3742ca,82.5],[.0008277824516172526,111320.7020463578,6477955746671607e-7,-4082003173641316e-6,1077490566351142e-5,-1517187553151559e-5,1205306533862167e-5,-5124939663577472e-6,9133119359512032e-7,67.5],[.00337398766765,111320.7020202162,4481351045890365e-9,-2339375119931662e-8,7968221547186455e-8,-1159649932797253e-7,9723671115602145e-8,-4366194633752821e-8,8477230501135234e-9,52.5],[.00220636496208,111320.7020209128,51751.86112841131,3796837749470245e-9,992013.7397791013,-122195221711287e-8,1340652697009075e-9,-620943.6990984312,144416.9293806241,37.5],[-.0003441963504368392,111320.7020576856,278.2353980772752,2485758690035394e-9,6070.750963243378,54821.18345352118,9540.606633304236,-2710.55326746645,1405.483844121726,22.5],[-.0003218135878613132,111320.7020701615,.00369383431289,823725.6402795718,.46104986909093,2351.343141331292,1.58060784298199,8.77738589078284,.37238884252424,7.45]],getDistanceByMC:function(s,t){if(!s||!t)return 0;let e,i,n,r;return(s=this.convertMC2LL(s))?(e=this.toRadians(s.lng),i=this.toRadians(s.lat),(t=this.convertMC2LL(t))?(n=this.toRadians(t.lng),r=this.toRadians(t.lat),this.getDistance(e,n,i,r)):0):0},getDistanceByLL:function(s,t){if(!s||!t)return 0;let e,i,n,r;return s.lng=this.getLoop(s.lng,-180,180),s.lat=this.getRange(s.lat,-74,74),t.lng=this.getLoop(t.lng,-180,180),t.lat=this.getRange(t.lat,-74,74),e=this.toRadians(s.lng),n=this.toRadians(s.lat),i=this.toRadians(t.lng),r=this.toRadians(t.lat),this.getDistance(e,i,n,r)},convertMC2LL:function(s){if(s==null)return new ci(0,0);if(s.lng<180&&s.lng>-180&&s.lat<90&&s.lat>-90)return s;let t,e;t=new ci(Math.abs(s.lng),Math.abs(s.lat));for(let n=0;n=this.MCBAND[n]){e=this.MC2LL[n];break}let i=this.convertor(s,e);return s=new ci(i.lng.toFixed(6),i.lat.toFixed(6))},convertLL2MC:function(s){if(s==null)return new ci(0,0);if(s.lng>180||s.lng<-180||s.lat>90||s.lat<-90)return s;let t,e;if(s.lng=this.getLoop(s.lng,-180,180),s.lat=this.getRange(s.lat,-74,74),t=new ci(s.lng,s.lat),window.BMAPGL_84){var i={},n=6378137;i.lng=t.lng*Math.PI/180*n;var r=t.lat*Math.PI/180;return i.lat=31890685e-1*Math.log((1+Math.sin(r))/(1-Math.sin(r))),new ci(Number(i.lng),Number(i.lat))}for(var a=0;a=this.LLBAND[a]){e=this.LL2MC[a];break}if(!e){for(a=0;ae;)s-=e-t;for(;s{if(s)if(t===0)s[2]||(s[2]=0);else for(const e of s)Zm(e,t-1)};function xl(s,t){if(!s)return[];let e=null;return t&&Nc(s,t),e=s.features?s.features:Array.isArray(s)?s:[s],e}function Nc(s,t){if(s){if(s.type==="FeatureCollection"||s.features){const e=s.features;for(const i of e)Nc(i,t)}else if(Array.isArray(s)){const e=s;for(const i of e)Nc(i,t)}else if(s.type==="Feature"||s.geometry){if(!s.geometry)return;if(Array.isArray(s.geometry.coordinates)){if(s.geometry[t])return;Km(s);const e=yl(s.geometry.coordinates,t);s.geometry[t]=e}}}}function yl(s,t){if(Array.isArray(s[0])){const e=[];for(let i of s)e.push(yl(i,t));return e}if(typeof s[0]=="number"||typeof s[0]=="string")return Jm(s,t)}function Jm(s,t){if(!s)return[];let e=[];if(s[0]>180||s[0]<-180||s[1]>90||s[1]<-90)e=[s[0],s[1]];else if(t==="_bmap_mercator"){const i=Xe.convertLL2MC({lng:s[0],lat:s[1]});e[0]=i.lng,e[1]=i.lat}else e=Wr(s);return s[2]!==void 0?e[2]=s[2]:e[2]=0,e}function Km(s){s.type||(s.type="Feature");const t=s.geometry.type,e={Point:0,MultiPoint:1,LineString:1,MultiLineString:2,Polygon:2,MultiPolygon:3};return Object.keys(e).includes(t)&&Zm(s.geometry.coordinates,e[t]),s}function Qm(s,t){if(!s.geometry)return[];if(s.geometry.type==="Point")return[s];if(s.geometry.type==="MultiPoint"||s.geometry.type==="LineString"){const e=[],{type:i,geometry:n,...r}=s;for(let a=0;a-180&&s[1]<90&&s[1]>-90)e=[s[0],s[1]];else if(t==="_bmap_mercator"){const i=Xe.convertMC2LL({lng:s[0],lat:s[1]});e[0]=i.lng,e[1]=i.lat}else e=zc(s);return s[2]!==void 0?e[2]=s[2]:e[2]=0,e},fixFeature:Km,multiPointToPoints:Qm,multiLineStringToLineStrings:$m,multiPolygonToPolygons:tf,convertLineString2Points:function(s){let t=this.getGeoFeatures(s),e=[];for(let i=0;in)return void console.warn("remove fail2",i,e);if(i=this.data.position.length)){for(const i in this.data)if(Object.hasOwnProperty.call(this.data,i)){const n=this.data[i];e[i]=n[t]}return e}}getOriginDataIndex(t){return[t,0]}getOriginData(t){return this._addCache[t]}exportToGeoJSON(){let t=[];this.originToFeatures(t);for(let e=0;e0&&Array.isArray(t.position[0])&&Array.isArray(t.position[0][0])&&!Array.isArray(t.position[0][0][0]))for(let i=0;i[n];return t==="Point"?i=Qm:t==="LineString"?i=$m:t==="Polygon"&&(i=tf),i(e,this.projectionName)}dispose(){this.clear()}get size(){return this.needsUpdate&&this.update(),this.data&&this.data.position&&this.data.position.length||0}get data(){return this._data}set data(t){this._data=t}get userData(){return this._userData}set userData(t){this._userData=t}get needsUpdate(){return this._needsUpdate}set needsUpdate(t){this._needsUpdate=t}get origin(){return this._origin}get projectionName(){return this._projectionName}set projectionName(t){this._projectionName=t}get objects(){return this._objects}set objects(t){this._objects=t}get isCurve(){return this._isCurve}set isCurve(t){this._isCurve=t,this.needsUpdate=!0}}class ee extends rs{constructor(t){super(t),this.type="BufferDataSource"}getOriginData(t){return t{if(!t)return[];let i=null;return e||this.map.projectGeoJSON(t),i=t.features?t.features:Array.isArray(t)?t:[t],i}),d(this,"travelFeatureLineCoordinate",(t,e,i)=>{const n=t.geometry;if(!n||!n[e]||!n.type)return;const r=n[e];if(n.type==="LineString")i&&i(r);else if(n.type==="MultiLineString"||n.type==="Polygon")for(let a of r)i&&i(a);else if(n.type==="MultiPolygon")for(let a of r)for(let o of a)i&&i(o)}),d(this,"travelLineCoordinates",(t,e="coordinates",i,n=0)=>{if(Array.isArray(t)&&i)for(let r=0,a=t.length;r{if(Array.isArray(t)&&i)for(let r=0,a=t.length;r{if(Array.isArray(t)&&i)for(let r=0,a=t.length;r{let i=1/0,n=1/0,r=1/0,a=-1/0,o=-1/0,l=-1/0;return this.travelPointCoordinates(t,e,h=>{const[c,u,p=0]=h;ca&&(a=c),uo&&(o=u),pl&&(l=p)}),isFinite(i)||(i=0),isFinite(a)||(a=0),isFinite(n)||(n=0),isFinite(o)||(o=0),isFinite(r)||(r=0),isFinite(l)||(l=0),[i,n,r,a,o,l]})}get parameters(){return this._parameters}set parameters(t){this._parameters?this._parameters={...this._parameters,...t}:this._parameters={...this.getDefaultParams(),...t}}get dataSource(){return this._dataSource}set dataSource(t){this.setDataSource(t)}get needsUpdate(){return this._needsUpdate}set needsUpdate(t){this._needsUpdate=t}get zooms(){return this._zooms}set zooms(t){this._zooms=t}get inZoomsRange(){const t=this.engine;return!!t&&t.map.getZoom()>=this.zooms[0]&&t.map.getZoom()<=this.zooms[1]}afterAddToEngine(t){this.engine=t,this.initObject(),this.isInstancedMesh&&(this.material.defines.IS_INSTANCE=!0)}beforeRemoveFromEngine(t){this.dispose()}initObject(){}getDefaultParams(){return{}}getEntityByIndex(t){const e=this.dataSource;if(!e)return;const i={index:t,value:e.getOriginData(t),itemIndex:e.getOriginDataIndex(t),pairs:{}},n=e.data;for(const r of Object.keys(n))i.pairs[r]=n[r][t];return i}setDataSource(t){if(!t&&this._dataSource){const e=this._dataSource.objects.indexOf(this);e>-1&&this._dataSource.splice(e,1),this._dataSource=null}t.objects.indexOf(this)>-1||(this._dataSource=t,t.projectionName=this.engine.map.projectionCoordsName,t.objects.push(this),this.needsUpdate=!0,this.engine.requestRender())}onBeforeScenePrepareRender(t,e,i,n){if(this.dataSource&&(this.dataSource.needsUpdate&&(this.dataSource.update(),this._dataSourceUpdated=!0),this.dataAutoUpdate&&(this._dataSourceUpdated||this.needsUpdate)&&this._enableCollision&&(t.rendering.collision.needsUpdate=!0),this.onBeforeScenePrepareRenderHook&&this.onBeforeScenePrepareRenderHook(t,e,i,n),this.clampToGround)){const r=this.getShadowVolumeOptions();this._volumeDataSource=this.createVolumeDataSource();const a=this._VolumeClass;this._backObject&&this.engine.remove(this._backObject),this._backObject=t.add(new a({...this._backMaterialOptions,...r})),this._frontObject&&this.engine.remove(this._frontObject),this._frontObject=t.add(new a({...this._frontMaterialOptions,...r})),this._renderObject&&this.engine.remove(this._renderObject),this._renderObject=t.add(new a({...this._renderMaterialOptions,...r,...this.filterVolumeParamter(this.parameters)})),this._frontObject.dataSource=this._volumeDataSource,this._backObject.dataSource=this._volumeDataSource,this._renderObject.dataSource=this._volumeDataSource}}onBeforeSceneRender(t,e,i,n){this.dataSource&&(this.dataAutoUpdate&&this._dataSourceUpdated||this.dataAutoUpdate&&this.needsUpdate?this.setData():this.geometry&&this.geometry.needsUpdate&&this.geometry.updateGeometry&&(this.geometry.updateGeometry(),this.afterGeometryUpdate&&this.afterGeometryUpdate()),delete this._dataSourceUpdated,this.visible&&!this.inZoomsRange?(this._zoomVisibleCache=this.visible,this.visible=!1):!this.visible&&this._zoomVisibleCache&&this.inZoomsRange&&(this.visible=this._zoomVisibleCache,this._zoomVisibleCache=void 0),this.onBeforeSceneRenderHook&&this.onBeforeSceneRenderHook(t,e,i,n))}setData(){}collisionTest(t){return{}}createVolumeDataSource(){return this.dataSource}specifiedVolumeClass(){this._VolumeClass=this.constructor}filterVolumeParamter(t){const e=["opacity","color","vertexColors","emissive","mapSrc","mapScale"];let i={};return Object.keys(t).filter(n=>e.includes(n)).forEach(n=>{i[n]=t[n]}),i}onDispose(){}dispose(){if(this.geometry&&this.geometry.dispose(),this.material)if(Array.isArray(this.material))for(let t=0;to.h-a.h);const i=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(t/.95)),e),h:1/0}];let n=0,r=0;for(const a of s)for(let o=i.length-1;o>=0;o--){const l=i[o];if(!(a.w>l.w||a.h>l.h)){if(a.x=l.x,a.y=l.y,r=Math.max(r,a.y+a.h),n=Math.max(n,a.x+a.w),a.w===l.w&&a.h===l.h){const h=i.pop();o{for(const i of Object.keys(e))this.uniforms[i]=e[i]}),this.setValues(t)}}const c1=pt.merge([ot.fog,ki,is,{map:{value:null},pixelRatio:{value:1},lineHeight:{value:14},pixelOffsetX:{value:0},pixelOffsetY:{value:0},positionOffsetX:{value:0},positionOffsetZ:{value:0},positionOffsetY:{value:0},backgroundColor:{value:[1,1,0,0]},uFlat:{value:!1},opacity:{value:1},isEmissive:{value:!1}}]);class u1 extends Be{constructor(t){super(),this.type="DefaultTextMaterial",this.vertexShader=`#define GLSLIFY 1 +#include + +uniform float pixelRatio; +uniform float positionOffsetX; +uniform float positionOffsetY; +uniform float pixelOffsetX; +uniform float pixelOffsetY; +uniform float positionOffsetZ; +uniform bool uFlat; +uniform vec2 resolution; + +attribute float pIndex; +attribute vec2 wh; +attribute float rotateZ; + +varying vec2 vUv; +#include +#include +#include + +void main() { + #include + // float x = position.x; + // float y = position.y; + vUv = uv; + + vec4 worldPosition = (modelMatrix * vec4(position, 1.0)); + if (uFlat) { + // TODO 支持offset + float pixelSize = getPixelSize(worldPosition.xyz); + float hw = wh.x * 0.5 * pixelSize; + float hh = wh.y * 0.5 * pixelSize; + if (pIndex == 1.0) { + hw = -hw; + } else if (pIndex == 2.0) { + + } else if (pIndex == 3.0) { + hh = -hh; + } else { + hw = -hw; + hh = -hh; + } + vec2 rotatedPosition; + rotatedPosition.x = cos( rotateZ ) * hw - sin( rotateZ ) * hh; + rotatedPosition.y = sin( rotateZ ) * hw + cos( rotateZ ) * hh; + // vec4 mvPosition = modelViewMatrix * vec4(position, 1.0); + gl_Position = projectionMatrix * modelViewMatrix * vec4(position.x + rotatedPosition.x, position.y + rotatedPosition.y, position.z, 1.0); + + } + else { + // gl_Position = projectionMatrix * modelViewMatrix * vec4(position.x + positionOffsetX * pixelSize, position.y + positionOffsetY * pixelSize, position.z + positionOffsetZ * pixelSize, 1.0); + worldPosition.x += positionOffsetX; + worldPosition.y += positionOffsetY; + worldPosition.z += positionOffsetZ; + gl_Position = projectionMatrix * viewMatrix * worldPosition; + + float w = gl_Position.w; + gl_Position /= w; + float hw = wh.x / resolution.x; + float hh = wh.y / resolution.y; + gl_Position.x += pixelOffsetX * 2. / resolution.x; + gl_Position.y += pixelOffsetY * 2. / resolution.y; + if (pIndex == 1.0) { + gl_Position.x -= hw; + gl_Position.y += hh; + } else if (pIndex == 2.0) { + gl_Position.x += hw; + gl_Position.y += hh; + } else if (pIndex == 3.0) { + gl_Position.x += hw; + gl_Position.y -= hh; + } else { + gl_Position.x -= hw; + gl_Position.y -= hh; + } + gl_Position *= w; + } + #include + // gl_PointSize = size * pixelRatio; + // vSize = size; + // vOffset = offset; +}`,this.fragmentShader=`#define GLSLIFY 1 +#include + +uniform sampler2D map; +uniform vec4 backgroundColor; +uniform float opacity; +uniform float lineHeight; + +varying vec2 vUv; + +#include +#include +void main() { + #include + // gl_FragColor = vec4(1., 0, 0, 1.); + gl_FragColor = texture2D(map, vec2(vUv.x, 1.0 - vUv.y)); + + if (backgroundColor.a > 0.0) { + gl_FragColor = mix(backgroundColor, gl_FragColor, gl_FragColor.a); + } + + if (gl_FragColor.a == 0.0) { + discard; + } + gl_FragColor.a *= opacity; + + #include + #include + #include + +}`,this.isDefaultTextMaterial=!0,this.transparent=!0,this.depthTest=!1,this.depthWrite=!1,Object.assign(this.uniforms,pt.clone(c1)),ns(this),jt(this,["lineHeight","pixelRatio","map","pixelOffsetX","pixelOffsetY","positionOffsetX","positionOffsetY","positionOffsetZ","backgroundColor","resolution","opacity","isEmissive"]),_i(this,[["flat","uFlat"]]),ss(this),this.emissiveEnabled=!0,this.emissive=[0,0,0],this.setValues(t)}}new rt;class bl extends as{constructor(t){super(t),d(this,"_fontSize"),d(this,"_fontFamily"),d(this,"_fillStyle"),d(this,"_padding"),d(this,"_margin"),d(this,"_strokeStyle"),d(this,"_shouldStroke"),d(this,"geometry"),d(this,"material"),d(this,"cachedData",[]),d(this,"drawingData"),d(this,"canvas"),d(this,"ctx"),d(this,"texture"),d(this,"matrixAutoUpdate",!0),d(this,"updateRenderingData",()=>{const n=this.engine.rendering.pixelRatio,r=this.canvas,a=this.ctx,o=this._fontSize,l=this._fontFamily,h=this._fillStyle,c=this._padding,u=this.cachedData||[],p=nf(u);let m=p.w,f=p.h;r.width=m*n,r.height=f*n,a.save(),a.scale(n,n),a.textBaseline="top",a.fillStyle=h,this._shouldStroke&&(a.strokeStyle=this._strokeStyle),a.font=o+"px "+l,this.shadowColor&&(a.shadowColor=this.shadowColor,a.shadowOffsetX=this.shadowOffsetX||0,a.shadowOffsetY=this.shadowOffsetY||0,a.shadowBlur=this.shadowBlur||0);const g=[],_=[],v=[],x=[],y=[],b=[],S=[];for(let C=0,L=u.length;C=10&&H%10==0?10*H+" "+Z+"px "+l:Z+"px "+l,E=Z,Mt>0&&(a.lineWidth=Mt,a.strokeStyle="rgba("+_t.join(",")+")"),a.fillStyle="rgba("+mt.join(",")+")"}let I=T.text.split("\\");for(let H=0;H0&&(this.texture&&this.texture.dispose(),this.texture=new Le(this.canvas),this.material.uniforms.map.value=this.texture),this.needsUpdate=!1}),this.parameters=t,this._collides=this.parameters.collides===void 0||this.parameters.collides,this._fontSize=this.parameters.fontSize!==void 0?this.parameters.fontSize:16,this._fontFamily=this.parameters.fontFamily!==void 0?this.parameters.fontFamily:"Microsoft Yahei",this._fillStyle=this.parameters.fillStyle!==void 0?this.parameters.fillStyle:"#f00",this._padding=this.parameters.padding!==void 0?this.parameters.padding:[2,2],this._margin=this.parameters.margin,this.strokeStyle=this.parameters.strokeStyle,this.cachedData=[],this.drawingData=[];const e=this.canvas=document.createElement("canvas");e.width=e.height=1;const i=this.ctx=e.getContext("2d");i.textAlign="start",i.textBaseline="top",this.defineMaterialProxyProperties(["lineHeight","map","pixelOffsetX","pixelOffsetY","positionOffsetX","positionOffsetY","positionOffsetZ","backgroundColor","resolution","opacity","flat","emissive"])}initObject(){let{margin:t,padding:e,collides:i,fillStyle:n,strokeStyle:r,fontSize:a,fontFamily:o,vertexStyles:l,...h}=this.parameters;this.geometry=new Pt(this.parameters),this.material=new u1(h),this.material.setCommonUniforms(this.engine.rendering.uniforms),this.texture=new Le(this.canvas),this.material.uniforms.map.value=this.texture}setData(){this._enableCollision&&this._collisionData?this.cachedData=this._collisionData:this.cachedData=this.dataSource.userData.map(t=>{let e=this.collisionTest(t);return{...t,w:e.width,h:e.height}}),this.update()}update(){this.updateRenderingData()}collisionTest(t){const e=this.ctx,i=this.engine.rendering.pixelRatio,n=this._fontSize,r=this._fontFamily,a=this._padding;e.save(),e.scale(i,i),e.textBaseline="top";let o=n;if(this.parameters.vertexStyles){let{fontWeight:f,fontSize:g,lineWidth:_}=t;e.font=f>=10&&f%10==0?10*f+" "+g+"px "+r:g+"px "+r,o=g,_>0&&(e.lineWidth=_)}else e.font=n+"px "+r;let l=t.text.split("\\");const h=l.map(f=>e.measureText(f).width);let c=Math.max(...h),u=o*l.length;const p=c+2*a[0],m=u+2*a[1];return e.restore(),{width:p,height:m}}onDispose(){this.texture&&this.texture.dispose()}set fontSize(t){this._fontSize=t}get fontSize(){return this._fontSize}set fontFamily(t){this._fontFamily=t}get fontFamily(){return this._fontFamily}set fillStyle(t){this._fillStyle=t}get fillStyle(){return this._fillStyle}set strokeStyle(t){this._shouldStroke=!!t,this._strokeStyle=t}set padding(t){this._padding=t}get padding(){return this._padding}set margin(t){typeof t=="number"?this._margin=[t,t]:t instanceof Array&&(this._margin=t)}get margin(){return this._margin}}class d1{constructor(t){this._rendering=t}init(){const t=this._flatDataSource=new rs,e=this._flatText=this._rendering.add(new bl({fillStyle:"#fff",strokeStyle:"#000",flat:!0}));e.renderOrder=100,e.maxRenderDepth=.999999,e.dataSource=t,t.setAttribute("text","text").setAttribute("rotateZ","rotateZ");const i=this._fixDataSource=new rs,n=this._fixText=this._rendering.add(new bl({fillStyle:"#000",strokeStyle:"#fff",fontFamily:"sans-serif",vertexStyles:!0}));n.renderOrder=100,n.maxRenderDepth=.999999,n.dataSource=i,i.setAttributes({text:"text",fontSize:"fontSize",fontWeight:"fontWeight",fillStyle:"fontRgba",strokeStyle:"haloRgba",lineWidth:"haloSize"});const r=this._labelDataSource=new rs,a=this._flatText=this._rendering.add(new bl({fillStyle:"#000",strokeStyle:"#fff",fontFamily:"sans-serif",flat:!0,vertexStyles:!0}));a.renderOrder=100,a.maxRenderDepth=.999999,a.dataSource=r,r.setAttributes({text:"text",fontSize:"fontSize",fontWeight:"fontWeight",fillStyle:"fontRgba",strokeStyle:"haloRgba",lineWidth:"haloSize",rotateZ:"rotateZ"}),this._rendering.collision.add(n,{margin:[50,50]},"poi"),this._rendering.collision.add(a,{margin:[50,50]},"poi"),this._rendering.collision.add(e,{margin:[80,80]},"poi")}addLabel(t){let e=t;if(!(t instanceof Ni)&&Array.prototype.toString.call(t)==="[object Object]"){const{position:i,...n}=t;e=new Ni(i,n)}t.type==="flat"?this._flatDataSource.add(e):t.type==="labelp"?this._labelDataSource.add(e):this._fixDataSource.add(e)}addLabels(t){for(const e of t)this.addLabel(e);this._rendering.requestRender()}removeLabel(t){t.type==="flat"?this._flatDataSource.remove(t):t.type==="labelp"?this._labelDataSource.remove(t):this._fixDataSource.remove(t)}removeLabels(t){for(const e of t)this.removeLabel(e);this._rendering.requestRender()}}class p1{constructor(t){d(this,"_needsCreate",!1),d(this,"_rendering"),d(this,"_enabled",!1),d(this,"_brightness",0),d(this,"_saturation",0),d(this,"_contrast",0),d(this,"updateComposition",(e,i,n)=>{this[e]=n;const r=this._rendering;r.useMrt&&(r.composition[i]=n)}),d(this,"createFog",()=>{const e=this._rendering;if(e.useMrt){const i=e.composition;i.useFog=!0,i.fogDensity=this._density}}),d(this,"destory",()=>{const e=this._rendering;e.useMrt&&(e.composition.useFog=!1)}),this._rendering=t}get enabled(){return this._enabled}set enabled(t){t!==this._enabled&&(this._enabled=t,this.updateComposition("_enabled","colorAdjustEnabled",t),t?this._needsCreate=!0:this.destory())}get brightness(){return this._brightness}set brightness(t){this.updateComposition("_brightness","adjustBrightnessFactor",t)}get contrast(){return this._contrast}set contrast(t){this.updateComposition("_contrast","adjustContrastFactor",t)}get saturation(){return this._saturation}set saturation(t){this.updateComposition("_saturation","adjustSaturationFactor",t)}render(){}}function m1(s,t,e,i,n){sf(s,t,e||0,i||s.length-1,n||f1)}function sf(s,t,e,i,n){for(;i>e;){if(i-e>600){var r=i-e+1,a=t-e+1,o=Math.log(r),l=.5*Math.exp(2*o/3),h=.5*Math.sqrt(o*l*(r-l)/r)*(a-r/2<0?-1:1);sf(s,t,Math.max(e,Math.floor(t-a*l/r+h)),Math.min(i,Math.floor(t+(r-a)*l/r+h)),n)}var c=s[t],u=e,p=i;for(Ga(s,e,t),n(s[i],c)>0&&Ga(s,e,i);u0;)p--}n(s[e],c)===0?Ga(s,e,p):Ga(s,++p,i),p<=t&&(e=p+1),t<=p&&(i=p-1)}}function Ga(s,t,e){var i=s[t];s[t]=s[e],s[e]=i}function f1(s,t){return st?1:0}class g1{constructor(t=9){this._maxEntries=Math.max(4,t),this._minEntries=Math.max(2,Math.ceil(.4*this._maxEntries)),this.clear()}all(){return this._all(this.data,[])}search(t){let e=this.data;const i=[];if(!wl(t,e))return i;const n=this.toBBox,r=[];for(;e;){for(let a=0;a=0&&r[e].children.length>this._maxEntries;)this._split(r,e),e--;this._adjustParentBBoxes(n,r,e)}_split(t,e){const i=t[e],n=i.children.length,r=this._minEntries;this._chooseSplitAxis(i,r,n);const a=this._chooseSplitIndex(i,r,n),o=Yr(i.children.splice(a,i.children.length-a));o.height=i.height,o.leaf=i.leaf,qr(i,this.toBBox),qr(o,this.toBBox),e?t[e-1].children.push(o):this._splitRoot(i,o)}_splitRoot(t,e){this.data=Yr([t,e]),this.data.height=t.height+1,this.data.leaf=!1,qr(this.data,this.toBBox)}_chooseSplitIndex(t,e,i){let n,r=1/0,a=1/0;for(let o=e;o<=i-e;o++){const l=Wa(t,0,o,this.toBBox),h=Wa(t,o,i,this.toBBox),c=y1(l,h),u=Fc(l)+Fc(h);c=e;h--){const c=t.children[h];Xa(o,t.leaf?r(c):c),l+=Ml(o)}return l}_adjustParentBBoxes(t,e,i){for(let n=i;n>=0;n--)Xa(e[n],t)}_condense(t){for(let e,i=t.length-1;i>=0;i--)t[i].children.length===0?i>0?(e=t[i-1].children,e.splice(e.indexOf(t[i]),1)):this.clear():qr(t[i],this.toBBox)}}function _1(s,t,e){if(!e)return t.indexOf(s);for(let i=0;i=s.minX&&t.maxY>=s.minY}function Yr(s){return{children:s,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}function rf(s,t,e,i,n){const r=[t,e];for(;r.length;){if((e=r.pop())-(t=r.pop())<=i)continue;const a=t+Math.ceil((e-t)/i/2)*i;m1(s,a,t,e,n),r.push(t,a,a,e)}}const b1=new rt;class M1{constructor(t){d(this,"_groupObjectMap",{}),d(this,"_groupDataMap",{}),d(this,"_objectDataMap",new Map),d(this,"_needsUpdate",!1),d(this,"_restrictCount",1e3),d(this,"_margin",[0,0]),d(this,"_maxRenderDepth",1),this._rendering=t}add(t,e={},i="_default"){t instanceof Sn?t.dataSource?(this._groupObjectMap[i]||(this._groupObjectMap[i]=[],this._groupDataMap[i]=[]),this._groupObjectMap[i].push(t),t._enableCollision=!0,t._collisionOptions=e,t.dataSource.setAttribute("rank","rank")):console.error("Object must have DataSource before it added to Collision!"):console.error("Collison Test only work with GeoObject.")}remove(t,e="_default"){if(!(t instanceof Sn))return void console.error("Collison Test only work with GeoObject.");let i=this._groupObjectMap[e].indexOf(t);i>-1?(this._groupObjectMap[e].splice(i,1),delete t._enableCollision,delete t._collisionOptions,delete t._collisionData,t.dataSource.removeAttribute("rank","rank")):console.error("remove error: cannot find object in this group.")}sortData(){let t=Object.keys(this._groupObjectMap);for(let e=0;ea.rank-r.rank||a.position[0]-r.position[0]||a.position[1]-r.position[1]).slice(0,this.restrictCount)}this._needsUpdate=!1}collisionTest(){let t=Object.keys(this._groupDataMap);if(!t.length)return;this.needsUpdate&&this.sortData();const e=this._rendering.camera;let i=b1.copy(this._rendering.renderState.viewMatrixWorldInverse),n=e.projectionMatrix;const r=this._rendering.resolution?this._rendering.resolution.toArray():[0,0],[a,o]=r;if(isNaN(a)||a<=0||isNaN(o)||o<=0)return console.warn("resolution is invalid"),!1;const l=this._objectDataMap;l.clear();for(let h=0;hk._enableCollision)[0],[v,x,y]=f.position,b=new Lt(v,x,y,1);b.applyMatrix4(i).applyMatrix4(n),b.divideScalar(b.w);const S=(b.x+1)/2*a,w=(1-b.y)/2*o;if(b.z>this._maxRenderDepth)continue;let{width:C,height:L}=_.collisionTest(f);if(!C||!L)continue;let T=C,E=L;if(_._collisionOptions.margin){let k=_._collisionOptions.margin;typeof k=="number"&&(k=[k,k]),C+=k[0],L+=k[1]}else C+=this.margin[0],L+=this.margin[1];const I=S-C/2,z=w-L/2,B=I+C,O=z+L;if(B<0||O<0||I>a||z>o)continue;const F={minX:I,minY:z,maxX:B,maxY:O};if(p.collides(F))continue;p.insert(F);let Q={...f,w:T,h:E};for(let k=0;k{h._collisionData&&h._collisionData.length===c.length||(h._collisionData=c,h.needsUpdate=!0)})}set margin(t){typeof t=="number"?this._margin=[t,t]:t instanceof Array&&(this._margin=t)}get margin(){return this._margin}set maxRenderDepth(t){this._maxRenderDepth=t}set restrictCount(t){this._restrictCount=t}get restrictCount(){return this._restrictCount}get needsUpdate(){return this._needsUpdate}set needsUpdate(t){this._needsUpdate=t}}class w1{constructor(t){d(this,"_rendering",null),d(this,"_mixer",null),d(this,"_customMixers",[]),this._rendering=t}update(t){this._mixer&&this._mixer.update(t.deltaSeconds);for(const e of this._customMixers)e.update(t.deltaSeconds)}addMixer(t){this._customMixers.indexOf(t)===-1&&this._customMixers.push(t)}removeMixer(t){let e=this._customMixers.indexOf(t);e!==-1&&this._customMixers.splice(e,1)}get mixer(){return this._mixer||(this._mixer=new My(this._rendering.scene)),this._mixer}}class S1{constructor(){d(this,"_time",0),d(this,"_viewChanged",!1),d(this,"_viewMatrixWorld",new rt),d(this,"_viewMatrixWorldInverse",new rt),d(this,"_projectionMatrix",new rt),d(this,"_cameraMatrix",new rt),d(this,"_cameraMatrixInverse",new rt),d(this,"_cameraOffsetX",0),d(this,"_cameraOffsetY",0)}beginFrame(t,e){this._deltaTime=e-this._time,this._deltaSeconds=this._deltaTime/1e3,this._time=e;const i=t.camera,n=i.matrixWorld,r=i.projectionMatrix;n.equals(this._viewMatrixWorld)&&r.equals(this._projectionMatrix)?this._viewChanged=!1:this._viewChanged=!0,this._viewMatrixWorld.copy(i.matrixWorld),this._viewMatrixWorldInverse.copy(i.matrixWorldInverse),this._projectionMatrix.copy(i.projectionMatrix)}endFrame(){}updateCameraOffsetState(t,e,i){this._cameraMatrix.copy(t.matrixWorld),this._cameraMatrixInverse.copy(t.matrixWorldInverse),this._cameraOffsetX=e,this._cameraOffsetY=i}get time(){return this._time}get viewChanged(){return this._viewChanged}get viewMatrixWorld(){return this._viewMatrixWorld}get viewMatrixWorldInverse(){return this._viewMatrixWorldInverse}get cameraMatrix(){return this._cameraMatrix}get cameraMatrixInverse(){return this._cameraMatrixInverse}get cameraOffsetX(){return this._cameraOffsetX}get cameraOffsetY(){return this._cameraOffsetY}get deltaTime(){return this._deltaTime}get deltaSeconds(){return this._deltaSeconds}}new Ke;class T1{constructor(t,e={}){d(this,"_engine"),d(this,"_outputEncoding"),d(this,"_enableAnimationLoop"),d(this,"_animationLoopFrameTime"),d(this,"_uniforms"),d(this,"_main"),d(this,"_shadow"),d(this,"_bloom"),d(this,"_ssr"),d(this,"_composition"),d(this,"_fog"),d(this,"_label"),d(this,"_colorAdjust"),d(this,"_renderState"),d(this,"_camera"),d(this,"_canvas"),d(this,"_context"),d(this,"_renderer"),d(this,"_scene"),d(this,"_weather"),d(this,"_useMrt",!1),d(this,"_mainRenderTarget",null),d(this,"_needsPrepareRendering",!0),d(this,"_needsUpdateExtraProgramCacheKey",!0),d(this,"_tDiffuse",null),d(this,"_tDepth",null),d(this,"_tEmissive",null),d(this,"_tNormal",null),d(this,"_tSpecular",null),d(this,"_freezeUpdate",!1),d(this,"_isRunning",!1),d(this,"_needsRenderImmediately",!1),d(this,"_needsRenderNext",!1),d(this,"_beforeRenderListeners",[]),d(this,"_prepareRenderListeners",[]),d(this,"_startTime",0),d(this,"_pixelRatio",window.devicePixelRatio),d(this,"_resolution"),d(this,"_sky",null),d(this,"_debugShaderType",0),d(this,"_beforeScenePrepareRenderObjects",new Set),d(this,"_beforeSceneRenderObjects",new Set),d(this,"_onRenderModeChangedObjects",new Set),d(this,"_wireframe",!1),d(this,"_wireframeMaterial",null),d(this,"_autoOffsetRelativeCenter",!0),d(this,"handleShaderBeforeResolve",(i,n,r)=>{if(this._useMrt){const a=this._renderer.getRenderTarget();a&&a.isWebGLMultipleRenderTargets&&(n=this.convertMrtSupportedFragment(n))}else this._bloom.enabled&&(n=this.convertNMrtSupportedFragment(n,r.shaderID));return r.shaderID==="basic"&&(n=`#define BASIC +uniform vec3 emissive; +`+n),{vertexShader:i=(a=>{const o="void main()",l=(a=a.replace(o,`#include +`+o)).indexOf(o),h=a.slice(l+o.length),c=l+o.length+h.indexOf("{")+1;return a.slice(0,c)+` + #include +`+a.slice(c)})(i),fragmentShader:n=(a=>{const o="void main()",l=(a=a.replace(o,`#include +`+o)).indexOf(o),h=a.slice(l+o.length),c=l+o.length+h.indexOf("{")+1;return a.slice(0,c)+` + #include +`+a.slice(c)})(n)}}),d(this,"handleShaderBeforeCompile",(i,n,r)=>{if(i=((a,o,l,h)=>{if(a=a.replace("void main()",o+`void main() +`),h){const c=a.lastIndexOf("}");a=a.substring(0,c),a+=h+"}"}return a})(i,` +attribute float _tileEditableValue; +`,null,` +if (_tileEditableValue == 1.0) { + gl_Position = vec4(-1.0, -1.0, -1.0, -1.0); +} +`),this._useMrt){const a=this._renderer.getRenderTarget();a&&a.isWebGLMultipleRenderTargets&&r.isRawShaderMaterial&&r.glslVersion!==Rh&&(i=["#version 300 es","precision mediump sampler2DArray;","#define attribute in","#define varying out","#define texture2D texture"].join(` +`)+` +`+i,n=["#version 300 es","#define varying in","layout(location = 0) out highp vec4 pc_fragColor;","#define gl_FragColor pc_fragColor","#define gl_FragDepthEXT gl_FragDepth","#define texture2D texture","#define textureCube texture","#define texture2DProj textureProj","#define texture2DLodEXT textureLod","#define texture2DProjLodEXT textureProjLod","#define textureCubeLodEXT textureLod","#define texture2DGradEXT textureGrad","#define texture2DProjGradEXT textureProjGrad","#define textureCubeGradEXT textureGrad"].join(` +`)+` +`+n)}return{vertexShader:i,fragmentShader:n}}),d(this,"convertMrtSupportedFragment",(i,n)=>(r=>{let a=r;a=a.replace("void main() {",`#include +void main() {`);const o=a.lastIndexOf("}");return a=a.substring(0,o),a+=`#include +}`,a})(i)),d(this,"convertNMrtSupportedFragment",(i,n)=>(r=>{let a=r;a=a.replace("void main() {",`#include +void main() {`);const o=a.lastIndexOf("}");return a=a.substring(0,o),a+=`#include +}`,a})(i)),d(this,"render",()=>{if(!this._isRunning)return;requestAnimationFrame(this.render);const i=new Date().valueOf();if((this._needsRenderNext||this._enableAnimationLoop)&&this._animationLoopFrameTime<17&&(this._needsRenderImmediately=!0),!(this._needsRenderImmediately||(this._needsRenderNext||this._enableAnimationLoop)&&i-this.lastRenderTime>=this._animationLoopFrameTime))return;let n=this._needsRenderImmediately?0:i-this.lastRenderTime-this._animationLoopFrameTime;n>this._animationLoopFrameTime-16&&(n=this._animationLoopFrameTime-16),this.lastRenderTime=i-n,this._needsRenderImmediately=!1,this._needsRenderNext=!1,this.renderScene(i)}),d(this,"getExtraProgramCacheKey",()=>{if(this._useMrt){const i=this._renderer.getRenderTarget();if(i&&i.isWebGLMultipleRenderTargets)return"1"}return"0"}),d(this,"scaleZAtCurrentPosition",()=>{const i=this._engine.map,n=i.getScaleAt(i.getCenter());this.scene.scale.z=n}),this._engine=t,this._outputEncoding=e.outputEncoding||Bt,this._preserveDrawingBuffer=e.preserveDrawingBuffer||!1,this._enableAnimationLoop=e.enableAnimationLoop||!1,this._animationLoopFrameTime=e.animationLoopFrameTime||16,this._pixelRatio=e.pixelRatio||window.devicePixelRatio,this._resolution=e.resolution,this._uniforms={time:{value:0},elapsedTime:{value:0},pixelRatio:{value:this._pixelRatio},zoomUnits:{value:1},resolution:{value:new j(e.resolution.x,e.resolution.y)},mvt_clipParameters:{value:{isClip:!1,clip_type:0,u_polygon:[new M,new M,new M],clip_point:new j,clip_radius:0,clip_width:0,clip_height:0}}},Object.freeze(this._uniforms),this._main=new Py(this),this._shadow=new Ry(this),this._bloom=new Ny(this),this._ssr=new Ky(this),this._composition=new e1(this),this._fog=new Dy(this),this._postprocessing=new n1(this),this._label=new d1(this),this._colorAdjust=new p1(this),this._collision=new M1(this),this._animation=new w1(this),this._renderState=new S1(this)}init(){const t=this._canvas=document.createElement("canvas");xt(t,`${te}-canvas`),t.style.position="absolute",t.style.top="0",t.style.left="0",t.style.zIndex="2";const e=this._context=t.getContext("webgl2",{alpha:!0,stencil:!0,antialias:!0,powerPreference:"high-performance",preserveDrawingBuffer:this._preserveDrawingBuffer}),i=this._resolution;(this._camera=new ye(35,i.x/i.y,.1,100)).matrixAutoUpdate=!1;const n=this._scene=new Gp,r=this.objectsScene=new De,a=this.environmentScene=new De;n.add(r),n.add(a),n.autoUpdate=!1;const o=this._renderer=new jp({canvas:t,context:e,logarithmicDepthBuffer:!0});o.setClearColor(16777215,0),o.setPixelRatio(this._pixelRatio),o.setSize(i.x,i.y),o.outputEncoding=this._outputEncoding,o.info.autoReset=!1,this._renderer.extraProgramCacheKey="0",o.onShaderBeforeResolve=this.handleShaderBeforeResolve,o.onShaderBeforeCompile=this.handleShaderBeforeCompile,this._uniforms.resolution.value[0]=i.x,this._uniforms.resolution.value[1]=i.y,this._label.init()}addBeforeRenderListener(t){this._beforeRenderListeners.indexOf(t)===-1&&this._beforeRenderListeners.push(t)}removeBeforeRenderListener(t){const e=this._beforeRenderListeners.indexOf(t);e>-1&&this._beforeRenderListeners.splice(e,1)}addPrepareRenderListener(t){this._prepareRenderListeners.indexOf(t)===-1&&this._prepareRenderListeners.push(t)}removePrepareRenderListener(t){const e=this._prepareRenderListeners.indexOf(t);e>-1&&this._prepareRenderListeners.splice(e,1)}add(t){return t.traverse(e=>{e.afterAddToEngine&&!e.__initInEngine&&(e.__initInEngine=!0,e.afterAddToEngine(this._engine)),e instanceof Fr?this._sky=e:e instanceof Ec&&(this._weather=e),this.addBeforePrepareRenderObject(e),this.addBeforeRenderObject(e),this.addOnRenderModeChangeObject(e)}),t.__isEnvironment?this.environmentScene.add(t):this.objectsScene.add(t),this._needsRenderImmediately=!0,t}remove(t){t.traverse(e=>{e.beforeRemoveFromEngine&&(e.__initInEngine=void 0,e.beforeRemoveFromEngine(this._engine)),e instanceof Fr?this._sky=null:e instanceof Ec&&(this._weather=null),this.removeBeforeRenderObject(e),this.removeBeforePrepareRenderObject(e),this.removeOnRenderModeChangeObject(e)}),t.__isEnvironment?this.environmentScene.remove(t):this.objectsScene.remove(t),this._needsRenderImmediately=!0}addBeforePrepareRenderObject(t){t.onBeforeScenePrepareRender&&this._beforeScenePrepareRenderObjects.add(t)}removeBeforePrepareRenderObject(t){this._beforeScenePrepareRenderObjects.delete(t)}addBeforeRenderObject(t){t.onBeforeSceneRender&&this._beforeSceneRenderObjects.add(t)}removeBeforeRenderObject(t){this._beforeSceneRenderObjects.delete(t)}addOnRenderModeChangeObject(t){t.onRenderModeChanged&&this._onRenderModeChangedObjects.add(t)}removeOnRenderModeChangeObject(t){t.onRenderModeChanged&&this._onRenderModeChangedObjects.delete(t)}startRenderLoop(){this._isRunning=!0,this._needsRenderImmediately=!0,this._startTime=new Date().valueOf(),this.render()}stopRenderLoop(){this._isRunning=!1}updateCamera(){this._engine.map.updateCamera()}requestRender(){this._needsRenderImmediately=!0}renderScene(t){const e=this._engine;t||(t=new Date().valueOf()),this._uniforms.time.value=t,this._uniforms.elapsedTime.value=t-this._startTime,this._uniforms.zoomUnits.value=this._engine.map.getZoomUnits(),this.camera._isLocked||this.updateCamera(),e.event.executeMousemoveRaycast();const i=this._camera,n=this._scene,r=this._renderState;r.beginFrame(this,t),this._animation.update(r);for(let p of this._prepareRenderListeners)p(this._engine,r);this._beforeScenePrepareRenderObjects.forEach(p=>{p.onBeforeScenePrepareRender(e,n,i,r)});const a=new M(i.matrix.elements[12],i.matrix.elements[13],i.matrix.elements[14]);let o=0,l=0;const h=1e3,c=Math.floor(a.x/h)*h,u=Math.floor(a.y/h)*h;o=a.x-c,l=a.y-u,this._autoOffsetRelativeCenter&&(i.position.set(o,l,a.z),i.updateMatrix(),i.updateMatrixWorld(),n.position.set(-c,-u,0)),r.updateCameraOffsetState(i,c,u),n.updateMatrix(),n.updateMatrixWorld(),this._renderer.info.reset(),this._collision.collisionTest(),this._beforeSceneRenderObjects.forEach(p=>{p.onBeforeSceneRender(e,n,i,r)});for(let p of this._beforeRenderListeners)p(this._engine,r);this._renderer.extraProgramCacheKey=this._useMrt?"1":"0",this._main.render(),this._renderer.extraProgramCacheKey="0",this._bloom.render(),this._ssr.render(),this._composition.render(),this._fog.render(),this._postprocessing.render(),this._autoOffsetRelativeCenter&&(i.position.set(a.x,a.y,a.z),i.updateMatrix(),i.updateMatrixWorld(),n.position.set(0,0,0),n.updateMatrix(),n.updateMatrixWorld()),r.endFrame(this)}setResolution(t){this._resolution.copy(t),this._uniforms.resolution.value.copy(t),this._renderer.setSize(t.x,t.y),this._main.setSize(t.x,t.y),this._bloom.setSize(t.x,t.y),this._ssr.setSize(t.x,t.y),this._needsRenderNext=!0}dispose(){this.stopRenderLoop(),this._wireframeMaterial&&this._wireframeMaterial.dispose();const t=Array.from(this.objectsScene.children),e=Array.from(this.environmentScene.children);for(const n of t)this.remove(n),n.dispose&&n.dispose();for(const n of e)this.remove(n),n.dispose&&n.dispose();this._renderer.dispose();let i=this._context.getExtension("WEBGL_lose_context");i&&i.loseContext()}get sky(){return this._sky}get weather(){return this._weather}get debugShaderType(){return this._debugShaderType}set debugShaderType(t){if(this._debugShaderType=t,!this._useMrt)return;t=parseInt(t,10);const e=this._composition;if(t&&t!==0)if(t===1)e.debugTextures=this._main.getTextures();else if(t===2){const i=[];this.objectsScene.traverse(n=>{n.isLight&&n.shadow&&n.shadow.map&&i.push(n.shadow.map.texture)}),e.debugTextures=i}else t===3?e.debugTextures=this._bloom.getTextures():t===4?e.debugTextures=this._ssr.getTextures():t===5&&this._sky&&this._sky.getTextures&&(e.debugTextures=this._sky.getTextures());else e.debugTextures=null}get useMrt(){return this._useMrt}set useMrt(t){this._useMrt!==t&&(this._useMrt=t,this._main.useMrt=t,this._bloom.useMrt=t,this._ssr.useMrt=t,this._composition.useMrt=t,this._postprocessing.useMrt=t,this._needsUpdateExtraProgramCacheKey=!0,this._onRenderModeChangedObjects.forEach(e=>{e.onRenderModeChanged&&e.onRenderModeChanged(t)}))}get main(){return this._main}get shadow(){return this._shadow}get bloom(){return this._bloom}get ssr(){return this._ssr}get composition(){return this._composition}get fog(){return this._fog}get postprocessing(){return this._postprocessing}get label(){return this._label}get colorAdjust(){return this._colorAdjust}get renderState(){return this._renderState}get collision(){return this._collision}get animation(){return this._animation}get enableAnimationLoop(){return this._enableAnimationLoop}set enableAnimationLoop(t){this._enableAnimationLoop=t}get animationLoopFrameTime(){return this._animationLoopFrameTime}set animationLoopFrameTime(t){this._animationLoopFrameTime=t}get resolution(){return this._resolution}set resolution(t){this._resolution=t}get pixelRatio(){return this._pixelRatio}set pixelRatio(t){this._pixelRatio=t}get outputEncoding(){return this._outputEncoding}set outputEncoding(t){this._outputEncoding=t}get canvas(){return this._canvas}get renderer(){return this._renderer}get camera(){return this._camera}get scene(){return this._scene}get uniforms(){return this._uniforms}set wireframe(t){t?(this._wireframe=!0,this._wireframeMaterial||(this._wireframeMaterial=new ae({color:35071,wireframe:!0})),this._scene.overrideMaterial=this._wireframeMaterial):(this._wireframe=!1,this._scene.overrideMaterial=null)}get wireframe(){return this._wireframe}get autoOffsetRelativeCenter(){return this._autoOffsetRelativeCenter}set autoOffsetRelativeCenter(t){this._autoOffsetRelativeCenter=t}get freezeUpdate(){return this._freezeUpdate}set freezeUpdate(t){!!t!==this._freezeUpdate&&(this._freezeUpdate=!!t,t?this.stopRenderLoop():this.startRenderLoop())}}class C1{constructor(){d(this,"isFlowEvent",!0)}execute(){}}class E1 extends C1{constructor(t,e=0){super(),d(this,"_currentIndex",0),d(this,"_callbacks",[]),e>t.length-1&&(e=t.length-1),e<0&&(e=0),this._currentIndex=e,Array.isArray(t)?this._callbacks=t:console.warn("callbacks must be an array")}execute(t){const e=this._callbacks[this._currentIndex];e&&e(t,this._currentIndex),this._currentIndex++,this._currentIndex>this._callbacks.length-1&&(this._currentIndex=0)}}const qe=class{constructor(s){d(this,"_realtimePickEnabled",!1),d(this,"_mousePickNeedsUpdate",!1),d(this,"_mouse",new j),d(this,"_mousePosition",new j),d(this,"_eventMaps",{}),d(this,"_objectEvents",new Map),d(this,"_raycaster",new Us),d(this,"_mapPlane",new ai(new M(0,0,1),0)),d(this,"_tempVector3",new M),d(this,"_intersections"),d(this,"_defaultEventObject"),d(this,"_mousePickParams",null),d(this,"_lastMousePickIntersectParams",null),d(this,"_engine",null),d(this,"_pickEventNames",null),d(this,"_checkShouldEnableRealtimePick",()=>{let t=null;for(const e of Object.keys(this._eventMaps))if(this._pickEventNames[e]&&(t=this._eventMaps[e],t&&t.size>0))return void(this._realtimePickEnabled=!0);this._realtimePickEnabled=!1}),d(this,"_raycast",()=>{const t=this._engine;this._raycaster.setFromCamera(this._mouse,t.camera),this._raycaster.mouse.copy(this._mouse);const e=this._raycaster.intersectObjects(t.rendering.objectsScene.children,!0);this._intersections=e}),d(this,"get3DTilesObject",t=>{for(;t&&!t.is3DTiles;)t=t.parent;return t}),d(this,"get3DTilesPropertiesByBatchId",(t,e)=>{let i=t;for(;!i.batchTable;)i=i.parent;if(!i)return void console.warn("batch table not found");const n=i.batchTable,r={};for(const a of Object.keys(n.header)){const o=n.header[a];r[a]=o[e]}return r._tileUri=i._tileUri,r.tile=i,r}),d(this,"triggerFirstEventObject",(t,e)=>{if(!this._intersections||this._intersections.length===0||!this._eventMaps[t])return!1;const i=this._eventMaps[t];for(let n=0,r=this._intersections.length;n{let i=-1;return e.instanceId!==void 0?i=e.instanceId:e.face!==void 0&&e.face!==null?t.getEntityIndexByFace&&(i=t.getEntityIndexByFace(e.faceIndex,e.face.a)):e.index!==void 0&&(i=e.index),i<0?null:t.getEntityByIndex(i)}),d(this,"_getEventProxyObject",t=>{for(;t.__eventProxyObject||t.__eventProxyByParent;)t=t.__eventProxyByParent?t.parent:t.__eventProxyObject;return t}),d(this,"_correctHitPosition",(t,e)=>{const i=[t.x,t.y,t.z],n=this._engine.map._map.normalizeEarthPointArr(i);n[2]=i[2],e.point=n,e.position=i}),d(this,"_handleClick",t=>{if(this._updateMouse(t),this._raycast(),this.triggerFirstEventObject(qe.EVENT_NAME_CLICK,t)&&(t.event.defaultPrevented||t.event.domEvent&&t.event.domEvent.defaultPrevented))return;const e=this._eventMaps.click&&this._eventMaps.click.get(this._defaultEventObject);e&&this._executeCallbacks(e,t)}),d(this,"_handleDblClick",t=>{if(this._updateMouse(t),this._raycast(),this.triggerFirstEventObject(qe.EVENT_NAME_DOUBLE_CLICK,t)&&(t.event.defaultPrevented||t.event.domEvent&&t.event.domEvent.defaultPrevented))return;const e=this._eventMaps.dblclick&&this._eventMaps.dblclick.get(this._defaultEventObject);e&&this._executeCallbacks(e,t)}),d(this,"_handleRightClick",t=>{if(this._updateMouse(t),this._raycast(),this.triggerFirstEventObject(qe.EVENT_NAME_RIGHT_CLICK,t)&&(t.event.defaultPrevented||t.event.domEvent&&t.event.domEvent.defaultPrevented))return;const e=this._eventMaps.rightclick&&this._eventMaps.rightclick.get(this._defaultEventObject);e&&this._executeCallbacks(e,t)}),d(this,"_handleRightDblClick",t=>{if(this._updateMouse(t),this._raycast(),this.triggerFirstEventObject(qe.EVENT_NAME_RIGHT_DOUBLE_CLICK,t)&&(t.event.defaultPrevented||t.event.domEvent&&t.event.domEvent.defaultPrevented))return;const e=this._eventMaps.rightdblclick&&this._eventMaps.rightdblclick.get(this._defaultEventObject);e&&this._executeCallbacks(e,t)}),d(this,"_updateMouse",t=>{const e=this._engine.map.getResolution(),i=t.pixel[0]/e.x,n=t.pixel[1]/e.y;this._mouse.set(2*i-1,1-2*n),this._mousePosition.set(t.pixel[0],t.pixel[1])}),d(this,"_triggerMouseleaveEvent",()=>{const t=this._lastMousePickIntersectParams,e=t.object;if(!e)return;const i=this._objectEvents.get(e);i&&i[qe.EVENT_NAME_MOUSE_LEAVE]&&this._executeCallbacks(i[qe.EVENT_NAME_MOUSE_LEAVE],{...this._mousePickParams,object:t.object,entity:t.entity})}),d(this,"_isSameObjectAndEntity",(t,e)=>{const i=t.object,n=e.object,r=t.entity,a=e.entity;return i===n&&(r===void 0&&a===void 0||r!==void 0&&a!==void 0&&(r.index===void 0||r.index===a.index))}),d(this,"_getMouseHoverIntersetion",()=>{if(!this._intersections||this._intersections.length===0)return!1;const t=this._mousePickParams;for(let e=0,i=this._intersections.length;e-1&&r.splice(a,1),r.length===0&&(i.delete(s),n=!0)}if(n){const r=this._objectEvents.get(s);r&&delete r[t]}this._checkShouldEnableRealtimePick()}markEventProxy(s,t){const e=t||s;if(s.children)for(let i=0,n=s.children.length;i{let s;return s=A1?{DOWN:"pointerdown",MOVE:"pointermove",UP:"pointerup",CANCEL:"pointercancel"}:P1?{DOWN:"touchstart",MOVE:"touchmove",UP:"touchend",CANCEL:"touchcancel"}:{DOWN:"mousedown",MOVE:"mousemove",UP:"mouseup",CANCEL:"mousecancel"},s})(),Zr=0,af=1,of=2,qa=new j,lf=new Us,R1=new ai(new M(0,0,1),0),Vs=new M,Hc=new M,Ya=new M,jc=new ye;jc.fov=35;class D1{constructor(t){d(this,"map"),d(this,"currentAction"),d(this,"startX"),d(this,"startY"),d(this,"startCenterX"),d(this,"startCenterY"),d(this,"startPitch"),d(this,"startHeading"),d(this,"startZoom"),d(this,"startZoomUnits"),d(this,"startAtTop"),d(this,"mapWidth"),d(this,"mapHeight"),d(this,"startCamera",new ye),d(this,"startCenter",new M),d(this,"startNdc",new j),d(this,"startPoint",new M),d(this,"startScaleX",1),d(this,"startScaleY",1),d(this,"startBoundX"),d(this,"startBoundY"),d(this,"_enabled",!1),d(this,"minPitch",0),d(this,"maxPitch",89),d(this,"zoomSpeed",.005),d(this,"headingSpeed",.4),d(this,"pitchSpeed",.3),d(this,"doubleClickTimer",null),d(this,"clickInterval",200),d(this,"init",()=>{const e=this.map.domContainer;e.addEventListener(vt.DOWN,this.handleMouseDown),e.addEventListener("wheel",this.handleWheel),e.addEventListener("contextmenu",this.handleContextMenu),e.addEventListener(vt.MOVE,this.handleMouseMove)}),d(this,"handleResize",e=>{const[i,n]=this.map.getContainerSize();this.mapWidth=i,this.mapHeight=n;const r=this.map.domContainer.getBoundingClientRect();this.startBoundX=r.left,this.startBoundY=r.top,this.startScaleX=r.width/i,this.startScaleY=r.height/n}),d(this,"handleMouseMove",e=>{this.currentAction===Zr&&this.onEventMouseMove&&this.onEventMouseMove(e)}),d(this,"handleMouseDown",e=>{let i=this.mapHeight,n=this.mapWidth;const r=this.map.domContainer.getBoundingClientRect();this.startBoundX=r.left,this.startBoundY=r.top,this.startScaleX=r.width/n,this.startScaleY=r.height/i;const a=(e.clientX-this.startBoundX)/this.startScaleX,o=(e.clientY-this.startBoundY)/this.startScaleY;if(e.button===0?(this.startZoomUnits=this.map.getZoomUnitsByZoom(this.map.zoom),this.setPanStartState(a,o),this.currentAction=af):e.button===2?this.currentAction=of:this.currentAction=Zr,this.currentAction===Zr)return;this.startX=a,this.startY=o;const l=this.map;this.startCenterX=l.center[0],this.startCenterY=l.center[1],this.startPitch=l.pitch,this.startHeading=l.heading,this.startZoom=l.zoom,this.startAtTop=o{if(this.currentAction===Zr)return;this.hasMoved=!0;const i=this.currentPixelX=(e.clientX-this.startBoundX)/this.startScaleX,n=this.currentPixelY=(e.clientY-this.startBoundY)/this.startScaleY;this.currentAction===af?this.handlePan(i,n):this.currentAction===of&&this.handleRotate(i,n)}),d(this,"handleMouseUp",e=>{this.currentAction=Zr,document.removeEventListener(vt.MOVE,this.handleMouseDragging),document.removeEventListener(vt.UP,this.handleMouseUp),e&&this.onEventClick&&(this.hasMoved||this.onEventClick(e)),e&&this.onEventDblClick&&(!this.hasMoved&&this.waitSecondClick?(this.onEventDblClick(e),this.clearDoubleClickTimer()):this.waitSecondClick=!0),clearTimeout(this.doubleClickTimer),this.doubleClickTimer=setTimeout(()=>{this.clearDoubleClickTimer()},this.clickInterval),this.hasMoved=!1}),d(this,"clearDoubleClickTimer",()=>{this.doubleClickTimer&&clearTimeout(this.doubleClickTimer),this.waitSecondClick=!1,this.doubleClickTimer=null}),d(this,"handleContextMenu",e=>{e.preventDefault()}),d(this,"handleWheel",e=>{e.preventDefault(),e.stopPropagation();const i=(e.clientX-this.startBoundX)/this.startScaleX,n=(e.clientY-this.startBoundY)/this.startScaleY;this.handleZoom({deltaX:e.deltaX,deltaY:e.deltaY,pixelX:i,pixelY:n})}),d(this,"handlePan",(e,i)=>{const n=this.map;this.getNdc(e,i,qa),this.ndcToPoint(qa,this.startCamera,Ya),Ya.distanceTo(this.startCamera.position)>6e3*n.zoomUnits?this.handleMouseUp():(Vs.subVectors(this.startCenter,Ya.sub(this.startPoint)),n.center=[Vs.x,Vs.y],n.updateView())}),d(this,"setPanStartState",(e,i)=>{const n=this.map;this.startCamera.copy(n.camera),this.startCamera.updateMatrixWorld(),this.startCenter.set(n.center[0],n.center[1],0),this.getNdc(e,i,this.startNdc),this.ndcToPoint(this.startNdc,n.camera,this.startPoint)}),d(this,"handleRotate",(e,i)=>{const n=this.map;let r=e-this.startX;const a=i-this.startY;this.startAtTop||(r*=-1);let o=this.startHeading+r*this.headingSpeed;o=this.makeHeadingSafe(o),n.heading=o;let l=this.startPitch+a*this.pitchSpeed;l=this.makePitchSafe(l),n.pitch=l,n.updateView()}),d(this,"handleZoom",e=>{const i=this.map;let n=i.zoom,r=n+e.deltaY*this.zoomSpeed*-1;if(n===r)return;if(r=this.makeZoomSafe(r),r6e3*i.zoomUnits||(i.computeMapCameraMatrix(jc,a,r,o,l),this.ndcToPoint(qa,jc,Ya),Vs.sub(Ya.sub(Hc)),this.map.center[0]=Vs.x,this.map.center[1]=Vs.y,this.map.zoom=r,this.map.updateView())}),d(this,"makeZoomSafe",e=>e>this.map.maxZoom?this.map.maxZoom:e((e%=360)<0&&(e+=360),e)),d(this,"makePitchSafe",e=>ethis.maxPitch?this.maxPitch:e),d(this,"dispose",()=>{const e=this.map.domContainer;e.removeEventListener(vt.DOWN,this.handleMouseDown),e.removeEventListener("wheel",this.handleWheel),e.removeEventListener("contextmenu",this.handleContextMenu),document.removeEventListener(vt.MOVE,this.handleMouseDragging),document.removeEventListener(vt.UP,this.handleMouseUp),e.removeEventListener(vt.MOVE,this.handleMouseMove),this.clearDoubleClickTimer()}),this.map=t,this.enabled=!0,this.currentAction=Zr}set enabled(t){t!==this._enabled&&(t?this.init():this.dispose(),this._enabled=t)}ndcToPoint(t,e,i){lf.setFromCamera(t,e),lf.ray.intersectPlane(R1,i)}getNdc(t,e,i){i.x=t/this.mapWidth*2-1,i.y=1-e/this.mapHeight*2}}var Hs={},Jr={},hf={};(function(s){Object.defineProperty(s,"__esModule",{value:!0}),s.default=void 0;var t=1;s.default=function(){return"".concat(t++)}})(hf);var Sl={},Tl={},Gc={};(function(s){Object.defineProperty(s,"__esModule",{value:!0}),s.default=void 0,s.default=function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:60,i=null;return function(){for(var n=this,r=arguments.length,a=new Array(r),o=0;o{this.onViewChanged&&this.onViewChanged()}),d(this,"handleMapResize",()=>{this.control&&this.control.handleResize(this.getResolution()),this.onResolutionChanged&&this.onResolutionChanged(this.getResolution())}),d(this,"handleEventClick",n=>{const r=this._engine,a=r.event,o=r.rendering.canvas.getBoundingClientRect(),l=n.clientX-o.left,h=n.clientY-o.top,c=l/o.width*2-1,u=1-2*h/o.height;$e.setFromCamera({x:c,y:u},r.rendering.camera),$e.ray.intersectPlane(js,Ui);const p=[l,h],m=[Ui.x,Ui.y,Ui.z],f=this.normalizeEarthPointArr(m);n.button===2?a._handleRightClick({pixel:p,point:f,position:m,event:n}):a._handleClick({pixel:p,point:f,position:m,event:n})}),d(this,"handleEventDblClick",n=>{const r=this._engine,a=r.event,o=r.rendering.canvas.getBoundingClientRect(),l=n.clientX-o.left,h=n.clientY-o.top,c=l/o.width*2-1,u=1-2*h/o.height;$e.setFromCamera({x:c,y:u},r.rendering.camera),$e.ray.intersectPlane(js,Ui);const p=[l,h],m=[Ui.x,Ui.y,Ui.z],f=this.normalizeEarthPointArr(m);n.button===2?a._handleRightDblClick({pixel:p,point:f,position:m,event:n}):a._handleDblClick({pixel:p,point:f,position:m,event:n})}),d(this,"handleEventMouseMove",n=>{this._engine.event.requestMousemoveRaycast({pixel:this._getPixelFromEvent(n),event:n})}),d(this,"_getPixelFromEvent",n=>{const r=this._engine.rendering.canvas.getBoundingClientRect();return[n.clientX-r.left,n.clientY-r.top]}),this._engine=t,this.domContainer=e}afterInit(){this.domContainer.appendChild(this.canvas),this.camera.matrixAutoUpdate=!1,this.handleMapResize(),uf(this.domContainer,this.handleMapResize),this.initControl()}initControl(){this.control=new D1(this),this.control.onEventClick=this.handleEventClick,this.control.onEventDblClick=this.handleEventDblClick,this.control.onEventMouseMove=this.handleEventMouseMove}getContainerSize(){return[this.domContainer.clientWidth,this.domContainer.clientHeight]}getResolution(){return new j(this.domContainer.clientWidth,this.domContainer.clientHeight)}getCenter(){return this.normalizeEarthPointArr(this.center)}getZoom(){return this.zoom}getPitch(){return this.pitch}getZoomUnitsByZoom(t){return this.MERCATOR_LENGTH/128/Math.pow(2,t)}getZoomByZoomUnits(t){return Math.log2(this.MERCATOR_LENGTH/128/t)}getZoomUnits(){return this.getZoomUnitsByZoom(this.zoom)}getHeading(){return this.heading}enableControl(){this.control.enabled=!0}disableControl(){this.control.enabled=!1}setCameraMatrix(){this.handleViewChange()}updateCamera(){this.computeMapCameraMatrix(this.camera,this.center,this.zoom,this.pitch,this.heading)}computeMapCameraMatrix(t,e,i,n,r){const[a,o]=this.getContainerSize();let l=this.zoomUnits=this.getZoomUnitsByZoom(i);if(a*l>this.bounds[1][0]-this.bounds[0][0]){let u=(this.bounds[1][0]-this.bounds[0][0])/a;l=this.zoomUnits=u,this.zoom=this.getZoomByZoomUnits(u)}if(o*l>this.bounds[1][1]-this.bounds[0][1]){let u=(this.bounds[1][1]-this.bounds[0][1])/o;l=this.zoomUnits=u,this.zoom=this.getZoomByZoomUnits(u)}e[0]-a/2*lthis.bounds[1][0]&&(e[0]=this.bounds[1][0]-a/2*l),e[1]-o/2*lthis.bounds[1][1]&&(e[1]=this.bounds[1][1]-o/2*l),this.center=e;const h=o/2/Math.tan(this.fov/2*Math.PI/180)*l;this.cameraDistance=h,t.position.set(0,0,0),t.quaternion.set(0,0,0,1),t.up.set(0,0,1),t.translateX(e[0]),t.translateY(e[1]),e[2]&&t.translateZ(e[2]),t.rotateOnAxis(new M(0,0,1),r*Math.PI/180),t.rotateOnAxis(new M(1,0,0),n*Math.PI/180),t.translateZ(h),t.updateMatrix(),t.updateMatrixWorld(),t.aspect=a/o;let c=l;c<1&&(c=1),t.near=this.near,t.far=this._far*c,t.updateProjectionMatrix()}setCenter(t){const e=this.normalizeMapPoint(t);e&&(this.center=e),this.setCameraMatrix()}setProjectionCenter(t){const e=this.normalizeEarthPointArr(t);this.setCenter(e)}setZoom(t){isNaN(t)||(this.zoom=t),this.setCameraMatrix()}zoomIn(){this.setZoom(this.zoom+1)}zoomOut(){this.setZoom(this.zoom-1)}setHeading(t){this.heading=t,this.setCameraMatrix()}setPitch(t){this.pitch=t,this.setCameraMatrix()}lookAt(t,e={}){let i=[];t.isVector3?t.toArray(i):i=t;const n=this.normalizeMapPoint(i);n&&(this.center=n),e.heading!==void 0&&(this.heading=e.heading),e.pitch!==void 0&&(this.pitch=e.pitch),e.zoom!==void 0&&(this.zoom=e.zoom),this.setCameraMatrix()}setBounds(t){this.bounds=[this.projectPointArr(t[0]),this.projectPointArr(t[1])]}getBoundsOld(){const t=[],e=new j,i=re.mapLinear(re.clamp(Math.abs(90-this.pitch),0,50),0,50,.1,1);e.set(-1,-1*i),$e.setFromCamera(e,this.camera),$e.ray.intersectPlane(js,xi);const n=xi.x,r=xi.y;e.set(-1,1*i),$e.setFromCamera(U1,this.camera),$e.ray.intersectPlane(js,xi);const a=xi.x,o=xi.y;e.set(1,1*i),$e.setFromCamera(F1,this.camera),$e.ray.intersectPlane(js,xi);const l=xi.x,h=xi.y;e.set(1,-1*i),$e.setFromCamera(B1,this.camera),$e.ray.intersectPlane(js,xi);const c=xi.x,u=xi.y;t[0]=Math.min(n,a,l,c),t[1]=Math.min(r,o,h,u),t[2]=Math.max(n,a,l,c),t[3]=Math.max(r,o,h,u);const p=this.normalizeEarthPointArr([t[0],t[1]]),m=this.normalizeEarthPointArr([t[2],t[3]]);return new He(new M(p[0],p[1],0),new M(m[0],m[1],0))}getBoundsLarger(){const t=this.camera;df.multiplyMatrices(t.matrixWorld,t.projectionMatrixInverse);let e=1/0,i=1/0,n=-1/0,r=-1/0;[[-1,-1,-1],[1,-1,-1],[1,1,-1],[-1,1,-1],[-1,-1,1],[1,-1,1],[1,1,1],[-1,1,1]].forEach(l=>{vi.set(l[0],l[1],l[2],1),vi.applyMatrix4(df),vi.divideScalar(vi.w),vi.xn&&(n=vi.x),vi.yr&&(r=vi.y)});const a=this.normalizeEarthPointArr([e,i]),o=this.normalizeEarthPointArr([n,r]);return new He(new M(a[0],a[1],0),new M(o[0],o[1],0))}getBounds(){$e.setFromCamera(new j,this.camera),$e.ray.intersectPlane(js,Ui);const t=Ui.clone(),e=this.camera.position.distanceTo(Ui),i=new M(2*e,2*e),n=new M,r=new M;return n.subVectors(t,i),r.addVectors(t,i),new He(n,r)}normalizeMapPoint(t){return this.normalizeProjectionPointArr(t)}normalizeProjectionPointArr(t){let e=this.parsePointToArr(t),i=Wr(e);return i[0]-=this.origin[0],i[1]-=this.origin[1],e[2]!==void 0&&(i[2]=e[2]),i}normalizeEarthPointArr(t){let e=this.parsePointToArr(t);e[0]+=this.origin[0],e[1]+=this.origin[1];let i=zc(e);return e[2]!==void 0&&(i[2]=e[2]),i}projectPointArr(t,e){if(!t)return e;let i=null;return i=t[0]>180||t[1]>90?[t[0],t[1]]:Wr(t),t[2]!==void 0&&(i[2]=t[2]),i[0]-=this.origin[0],i[1]-=this.origin[1],i}updateView(){this.setCameraMatrix()}getCameraDistance(){return this.cameraDistance}getProjectionCenter(){return[this.center[0],this.center[1]]}dispose(){Xc(this.domContainer),this.domContainer.removeChild(this.canvas),this._engine.event,this.control.dispose(),super.dispose()}get far(){return this._far}set far(t){this._far=t}}d(qc,"EARTH_RADIUS",637e4);const Kr=0,pf=1,mf=2,os=new j,Qr=new Us,ff=new ai(new M(0,0,1),0),Cn=new M,Ja=new ye;new ye,Ja.fov=35;class V1{constructor(t){d(this,"map"),d(this,"currentAction"),d(this,"startX"),d(this,"startY"),d(this,"startCenterX"),d(this,"startCenterY"),d(this,"startPitch"),d(this,"startHeading"),d(this,"startZoom"),d(this,"startZoomUnits"),d(this,"startAtTop"),d(this,"mapWidth"),d(this,"mapHeight"),d(this,"startCamera",new ye),d(this,"startCenter",new M),d(this,"startNdc",new j),d(this,"startPoint",new M),d(this,"startScaleX",1),d(this,"startScaleY",1),d(this,"startBoundX"),d(this,"startBoundY"),d(this,"_enabled",!1),d(this,"minPitch",0),d(this,"maxPitch",89),d(this,"zoomSpeed",.005),d(this,"headingSpeed",.4),d(this,"pitchSpeed",.3),d(this,"doubleClickTimer",null),d(this,"clickInterval",200),d(this,"_rotationMode",1),d(this,"init",()=>{const e=this.map.domContainer;e.addEventListener(vt.DOWN,this.handleMouseDown),e.addEventListener("wheel",this.handleWheel),e.addEventListener("contextmenu",this.handleContextMenu),e.addEventListener(vt.MOVE,this.handleMouseMove),this.initCursorAnchor()}),d(this,"initCursorAnchor",()=>{const e=this.cursorAnchor=document.createElement("div");e.style.position="absolute",e.style.width="40px",e.style.height="40px",e.style.backgroundColor="rgba(255, 255, 255, 0.5)",e.style.zIndex=100,e.style.pointerEvents="none",e.style.display="none",this.map.domContainer.appendChild(e)}),d(this,"showCursorAnchor",(e,i)=>{this._rotationMode!==1&&(this.cursorAnchor.style.left=e-20+"px",this.cursorAnchor.style.top=i-20+"px",this.cursorAnchor.style.display="block")}),d(this,"hideCursorAnchor",()=>{this.cursorAnchor.style.display="none"}),d(this,"handleResize",e=>{const[i,n]=this.map.getContainerSize();this.mapWidth=i,this.mapHeight=n;const r=this.map.domContainer.getBoundingClientRect();this.startBoundX=r.left,this.startBoundY=r.top,this.startScaleX=r.width/i,this.startScaleY=r.height/n}),d(this,"handleMouseMove",e=>{this.currentAction===Kr&&this.onEventMouseMove&&this.onEventMouseMove(e)}),d(this,"handleMouseDown",e=>{const i=this.map;let n=this.mapWidth,r=this.mapHeight;const a=this.map.domContainer.getBoundingClientRect();this.startBoundX=a.left,this.startBoundY=a.top,this.startScaleX=a.width/n,this.startScaleY=a.height/r;let o=e.clientX,l=e.clientY;e.type==="touchstart"&&(o=e.changedTouches[0].clientX,l=e.changedTouches[0].clientY);const h=(o-this.startBoundX)/this.startScaleX,c=(l-this.startBoundY)/this.startScaleY,u=new j(h/n*2-1,1-2*c/r);if(e.button===0){const p=i._getFirstIntersectionPoint(u);this.startCamera.copy(i.camera),this.startCamera.updateMatrixWorld(),ff.constant=-p.z,this.startPoint.copy(p),this.currentAction=pf}else if(e.button===2){if(this._rotationMode===1){const p=i.getProjectionCenter();this.startPoint.set(p[0],p[1],p[2]);const m=i.decomposeRotation();this.startHeading=m.heading,this.startPitch=m.pitch}else{const p=i._getFirstIntersectionPoint(u);this.startCamera.copy(i.camera),this.startCamera.updateMatrixWorld();const m=new M;m.subVectors(p,this.startCamera.position),m.normalize(),this.startPoint.copy(p);const f=i.decomposeRotationFromDirection(m);this.startHeading=f.heading,this.startPitch=f.pitch}this.startDistance=i.camera.position.distanceTo(this.startPoint),this.currentAction=mf,this.showCursorAnchor(h,c)}else this.currentAction=Kr;this.currentAction!==Kr&&(this.startX=h,this.startY=c,this.startAtTop=c{if(this.currentAction===Kr)return;this.hasMoved=!0;let i=e.clientX,n=e.clientY;e.type==="touchmove"&&(i=e.changedTouches[0].clientX,n=e.changedTouches[0].clientY);const r=this.currentPixelX=(i-this.startBoundX)/this.startScaleX,a=this.currentPixelY=(n-this.startBoundY)/this.startScaleY;this.currentAction===pf?(this.map.domContainer.style.cursor="grabbing",this.handlePan(r,a)):this.currentAction===mf&&(this.map.domContainer.style.cursor="grabbing",this.handleRotate(r,a))}),d(this,"handleMouseUp",e=>{this.currentAction=Kr,this.map.domContainer.style.cursor="default",this.hideCursorAnchor(),document.removeEventListener(vt.MOVE,this.handleMouseDragging),document.removeEventListener(vt.UP,this.handleMouseUp),e&&this.onEventClick&&(this.hasMoved||this.onEventClick(e)),e&&this.onEventDblClick&&(!this.hasMoved&&this.waitSecondClick?(this.onEventDblClick(e),this.clearDoubleClickTimer()):this.waitSecondClick=!0),clearTimeout(this.doubleClickTimer),this.doubleClickTimer=setTimeout(()=>{this.clearDoubleClickTimer()},this.clickInterval),this.hasMoved=!1}),d(this,"clearDoubleClickTimer",()=>{this.doubleClickTimer&&clearTimeout(this.doubleClickTimer),this.waitSecondClick=!1,this.doubleClickTimer=null}),d(this,"handleContextMenu",e=>{e.preventDefault()}),d(this,"handleWheel",e=>{e.preventDefault(),e.stopPropagation();const i=(e.clientX-this.startBoundX)/this.startScaleX,n=(e.clientY-this.startBoundY)/this.startScaleY;this.handleZoom({deltaX:e.deltaX,deltaY:e.deltaY,pixelX:i,pixelY:n})}),d(this,"handlePan",(e,i)=>{const n=this.map;this.getNdc(e,i,os),this.ndcToPoint(os,this.startCamera,Cn),Cn.distanceTo(n.camera.position)>.8*n.camera.far?this.handleMouseUp():(Cn.sub(this.startPoint),Cn.subVectors(this.startCamera.position,Cn),n.camera.position.copy(Cn),n.center=[Cn.x,Cn.y],n.updateView())}),d(this,"handleRotate",(e,i)=>{const n=this.map,r=n.camera;let a=e-this.startX;const o=i-this.startY;this.startAtTop||(a*=-1);let l=this.startHeading+a*this.headingSpeed;l=this.makeHeadingSafe(l);let h=this.startPitch+o*this.pitchSpeed;if(h=this.makePitchSafe(h),this._rotationMode===1)n._cameraLookAt(r,this.startPoint,{heading:l,pitch:h,range:this.startDistance});else{n._cameraLookAt(Ja,this.startPoint,{heading:l,pitch:h,range:.2}),this.getNdc(this.startX,this.startY,os),Qr.setFromCamera(os,Ja);const c=Qr.ray.direction.clone();os.set(0,0),Qr.setFromCamera(os,Ja);const u=Qr.ray.direction.clone();c.angleTo(u);const p=new M;p.copy(c),p.normalize(),p.multiplyScalar(this.startDistance),r.position.copy(Cn.copy(this.startPoint).sub(p)),r.quaternion.copy(Ja.quaternion)}n.pitch=h,n.heading=l,n.updateView()}),d(this,"handleZoom",e=>{const i=this.map,n=i.camera,r=re.clamp(e.deltaY*this.zoomSpeed*-1,-.5,.5);this.getNdc(e.pixelX,e.pixelY,os);const a=i._getFirstIntersectionPoint(os),o=n.position.distanceTo(a);if(o>.8*n.far)return void this.handleMouseUp();let l=r*re.clamp(o,.5,1e7);l+.2>o?(l=o-.2,i.range=.2):i.range=o-l;const h=new M;h.subVectors(a,n.position),h.normalize();const c=new M;c.copy(h).multiplyScalar(l).add(n.position),n.position.copy(c),i.center=[c.x,c.y],i.updateView()}),d(this,"makeHeadingSafe",e=>((e%=360)<0&&(e+=360),e)),d(this,"makePitchSafe",e=>ethis.maxPitch?this.maxPitch:e),d(this,"dispose",()=>{const e=this.map.domContainer;e.removeEventListener(vt.DOWN,this.handleMouseDown),e.removeEventListener("wheel",this.handleWheel),e.removeEventListener("contextmenu",this.handleContextMenu),document.removeEventListener(vt.MOVE,this.handleMouseDragging),document.removeEventListener(vt.UP,this.handleMouseUp),e.removeEventListener(vt.MOVE,this.handleMouseMove),this.clearDoubleClickTimer(),this.cursorAnchor.remove()}),this.map=t,this.enabled=!0,this.currentAction=Kr}set enabled(t){t!==this._enabled&&(t?this.init():this.dispose(),this._enabled=t)}ndcToPoint(t,e,i){Qr.setFromCamera(t,e),Qr.ray.intersectPlane(ff,i)}getNdc(t,e,i){i.x=t/this.mapWidth*2-1,i.y=1-e/this.mapHeight*2}}const H1=new M(0,0,-1),j1=new M(0,1,0),Gs=new Us;Gs.mouse=new j;const gf=new ai(new M(0,0,1),0),En=new M;new rt;class Yc extends qc{constructor(){super(...arguments),d(this,"isBlankMap3D",!0),d(this,"_viewStateDirty",!0),d(this,"range",.2),d(this,"_getFirstIntersectionPoint",t=>{const e=this._engine;Gs.setFromCamera(t,e.camera),Gs.mouse.copy(t);const i=Gs.intersectObjects(e.rendering.objectsScene.children,!0);let n=null;for(let r=0,a=i.length;ri?(n=i-.2,i=.2):i-=n,this._cameraLookAt(this.camera,e,{...t,range:i}),this.range=i,this.updateView()}zoomOut(){const t=this.decomposeRotation(),e=this.getProjectionCenter();let i=this.camera.position.distanceTo(En.set(e[0],e[1],e[2])),n=-.5*re.clamp(i,.5,1e7);n+.2>i?(n=i-.2,i=.2):i-=n,this._cameraLookAt(this.camera,e,{...t,range:i}),this.range=i,this.updateView()}lookAt(t,e={}){let i=[];t.isVector3?t.toArray(i):i=t;let n=this.normalizeProjectionPointArr(i);const{heading:r,pitch:a,range:o}=e;isNaN(r)||(this.heading=r),isNaN(a)||(this.pitch=a),isNaN(o)||(this.range=o),this._cameraLookAt(this.camera,n,e)}_cameraLookAt(t,e,i){const{heading:n=this.heading,pitch:r=this.pitch,range:a,height:o}=i,l=new Ht;l.setFromAxisAngle(new M(0,0,1),n*Math.PI/180);const h=new Ht;h.setFromAxisAngle(new M(1,0,0),r*Math.PI/180);const c=new Ht;c.multiplyQuaternions(l,h);const u=new M(0,0,-1);u.applyQuaternion(c),u.negate();const p=new M;Array.isArray(e)?p.set(e[0],e[1],e[2]||0):e.isVector3&&p.copy(e);const m=new M;isNaN(a)||(m.copy(u),m.multiplyScalar(a),p.add(m)),t.position.copy(p),t.quaternion.copy(c),t.updateMatrix(),t.updateMatrixWorld()}offsetFromHeadingPitchRange(t=0,e=0,i=0){const n=new Ht;n.setFromAxisAngle(new M(0,0,1),t*Math.PI/180);const r=new Ht;r.setFromAxisAngle(new M(1,0,0),e*Math.PI/180);const a=new Ht;a.multiplyQuaternions(n,r);const o=new M(0,0,-1);o.applyQuaternion(a),o.negate();const l=new M;return l.copy(o).multiplyScalar(i),l}decomposeRotation(){const t=this.camera.quaternion,e=H1.clone(),i=j1.clone();return e.applyQuaternion(t),e.clampScalar(-1,1),i.applyQuaternion(t),this.decomposeRotationFromDirection(e,i)}decomposeRotationFromDirection(t,e){const i=180-re.radToDeg(Math.acos(t.z));let n=re.radToDeg(Math.atan2(t.y,t.x));return t.x===0&&t.y===0&&(n=re.radToDeg(Math.atan2(e.y,e.x))),n=(n-90)%360,{heading:n,pitch:i}}updateCamera(){const t=this.camera;t.updateMatrix(),t.updateMatrixWorld();const[e,i]=this.getContainerSize();t.aspect=e/i,t.near=this.near;let n=this.getZoomUnits();n<.5&&(n=.5),t.far=this._far*n*2,t.updateProjectionMatrix()}}class G1 extends Yc{constructor(){super(...arguments),d(this,"projectionCoordsName","_bmap_mercator")}normalizeMapPoint(t){return this.normalizeEarthPointArr(t)||[0,0]}normalizeProjectionPointArr(t){const e=this.parsePointToArr(t);if(e&&e[0]<180&&e[1]<90){const i=Xe.convertLL2MC({lng:e[0],lat:e[1]});e[0]=i.lng,e[1]=i.lat}return e}normalizeEarthPointArr(t){const e=this.parsePointToArr(t);if(e&&(e[0]>180||e[1]>90)){const i=Xe.convertMC2LL({lng:e[0],lat:e[1]});e[0]=i.lng,e[1]=i.lat}return e}projectPointArr(t){let e=[];if(t[0]>180||t[1]>90)e[0]=t[0],e[1]=t[1];else{const i=Xe.convertLL2MC({lng:t[0],lat:t[1]});e[0]=i.lng,e[1]=i.lat}return t[2]!==void 0&&(e[2]=t[2]),e}}var Pl=.9996,Ji=.00669438,Zc=Math.pow(Ji,2),Rl=Math.pow(Ji,3),$r=Ji/(1-Ji),_f=Math.sqrt(1-Ji),ta=(1-_f)/(1+_f),W1=Math.pow(ta,2),vf=Math.pow(ta,3),xf=Math.pow(ta,4),yf=Math.pow(ta,5),bf=1-Ji/4-3*Zc/64-5*Rl/256,X1=3*Ji/8+3*Zc/32+45*Rl/1024,q1=15*Zc/256+45*Rl/1024,Y1=35*Rl/3072,Z1=1.5*ta-27/32*vf+269/512*yf,J1=21/16*W1-55/32*xf,K1=151/96*vf-417/128*yf,Q1=1097/512*xf,Dl=6378137;function Mf(s){return 6*(s-1)-180+3}function wf(s){return s/Math.PI*180}function Jc(s){return s*Math.PI/180}class $1 extends Yc{constructor(t,e,i={}){super(t,e,i),d(this,"projectionCoordsName","_utm"),this.zone=i.utmZone||50}normalizeMapPoint(t){return this.normalizeEarthPointArr(t)||[0,0]}normalizeProjectionPointArr(t){const e=this.parsePointToArr(t);if(e&&e[0]<180&&e[1]<90){const i=function(n,r){const a=n[0],o=n[1];if(o>84||o<-80)throw new RangeError("latitude out of range (must be between 80 deg S and 84 deg N)");if(a>180||a<-180)throw new RangeError("longitude out of range (must be between 180 deg W and 180 deg E)");var l=Jc(o),h=Math.sin(l),c=Math.cos(l),u=Math.tan(l),p=Math.pow(u,2),m=Math.pow(u,4),f=Jc(a),g=Jc(Mf(r)),_=Dl/Math.sqrt(1-Ji*h*h),v=$r*c*c,x=c*(f-g),y=Math.pow(x,2),b=Math.pow(x,3),S=Math.pow(x,4),w=Math.pow(x,5),C=Math.pow(x,6),L=Dl*(bf*l-X1*Math.sin(2*l)+q1*Math.sin(4*l)-Y1*Math.sin(6*l)),T=Pl*(L+_*u*(y/2+S/24*(5-p+9*v+4*v*v)+C/720*(61-58*p+m+600*v-330*$r)));return o<0&&(T+=1e7),[Pl*_*(x+b/6*(1-p+v)+w/120*(5-18*p+m+72*v-58*$r))+5e5,T]}(e,this.zone);e[0]=i[0],e[1]=i[1]}return e}normalizeEarthPointArr(t){const e=this.parsePointToArr(t);if(e){const i=function(n,r,a){let o=n[0],l=n[1];if(r<1||r>60)throw new RangeError("zone number out of range (must be between 1 and 60)");var h=o-5e5,c=l/Pl/(Dl*bf),u=c+Z1*Math.sin(2*c)+J1*Math.sin(4*c)+K1*Math.sin(6*c)+Q1*Math.sin(8*c),p=Math.sin(u),m=Math.pow(p,2),f=Math.cos(u),g=Math.tan(u),_=Math.pow(g,2),v=Math.pow(g,4),x=1-Ji*m,y=Math.sqrt(x),b=(1-Ji)/x,S=ta*f*f,w=S*S,C=h/(Dl/y*Pl),L=Math.pow(C,2),T=Math.pow(C,3),E=Math.pow(C,4),I=Math.pow(C,5),z=Math.pow(C,6),B=u-g/b*(L/2-E/24*(5+3*_+10*S-4*w-9*$r))+z/720*(61+90*_+298*S+45*v-252*$r-3*w);return[wf((C-T/6*(1+2*_+S)+I/120*(5-2*S+28*_-3*w+8*$r+24*v))/f)+Mf(r),wf(B)]}(e,this.zone);e[0]=i[0],e[1]=i[1]}return e}projectPointArr(t){return this.normalizeProjectionPointArr(t)}}class tb extends Vc{constructor(t,e,i){super(e,i),d(this,"near",.1),d(this,"_far",4e3),d(this,"fov",35),d(this,"projectionCoordsName","_bmap_mercator"),d(this,"handleMapUpdate",()=>{this.onViewChanged&&this.onViewChanged()}),d(this,"handleMapResize",()=>{this.onResolutionChanged&&this.onResolutionChanged(this.getResolution())}),d(this,"handleEventClick",n=>{const r=this._engine.event,a=[n.pixel.x,n.pixel.y],o=[n.latlng.lng,n.latlng.lat],l=[n.point.lng,n.point.lat];r._handleClick({pixel:a,point:o,position:l,event:n})}),d(this,"handleEventRightClick",n=>{const r=this._engine.event,a=[n.pixel.x,n.pixel.y],o=[n.latlng.lng,n.latlng.lat],l=[n.point.lng,n.point.lat];r._handleRightClick({pixel:a,point:o,position:l,event:n})}),d(this,"handleEventDblClick",n=>{const r=this._engine.event,a=[n.pixel.x,n.pixel.y],o=[n.latlng.lng,n.latlng.lat],l=[n.point.lng,n.point.lat];r._handleDblClick({pixel:a,point:o,position:l,event:n})}),d(this,"handleEventRightDblClick",n=>{const r=this._engine.event,a=[n.pixel.x,n.pixel.y],o=[n.latlng.lng,n.latlng.lat],l=[n.point.lng,n.point.lat];r._handleRightDblClick({pixel:a,point:o,position:l,event:n})}),this._engine=t,this.map=e}getContainerSize(){const t=this.map.getSize();return[t.width,t.height]}getResolution(){const t=this.map.getSize();return new j(t.width,t.height)}afterInit(){const t=this.map;this.canvas.style.zIndex="3",t.getContainer().appendChild(this.canvas),t.addEventListener("update",this.handleMapUpdate),t.addEventListener("resize",this.handleMapResize),t.addEventListener("click",this.handleEventClick),t.addEventListener("rightclick",this.handleEventRightClick),t.addEventListener("dblclick",this.handleEventDblClick),t.addEventListener("rightdblclick",this.handleEventRightDblClick),this.handleMapResize()}getCenter(){const t=this.map.getCenter();return[t.lng,t.lat]}getZoom(){return this.map.getZoom()}getZoomUnits(){return this.map.getZoomUnits()}getZoomByZoomUnits(t){return window.BMAPGL_84?Math.log2(this.MERCATOR_LENGTH/128/t):18-Math.log2(t)}getZoomUnitsByZoom(t){return this.map.getZoomUnits(t)}getHeading(){return this.map.getHeading()}getPitch(){return this.map.getTilt()}setCenter(t){this.map.setCenter(this.normalizeMapPoint(t))}setProjectionCenter(t){const e=this.normalizeEarthPointArr(t);this.setCenter(e)}setZoom(t){this.map.setZoom(t)}setPitch(t){this.map.setTilt(t)}setHeading(t){this.map.setHeading(t)}setBounds(t){let e=[this.projectPointArr(t[0]),this.projectPointArr(t[1])];this.map.setBounds(new BMapGL.Point(e[0][0],e[0][1]),new BMapGL.Point(e[1][0],e[1][1]))}getBounds(){this.map.getBounds()}enableControl(){this.map.enableDragging()}disableControl(){this.map.disableDragging()}zoomIn(){this.map.zoomIn()}zoomOut(){this.map.zoomOut()}updateCamera(){this.updateMatrixWorld(),this.updateProjectionMatrix()}updateMatrixWorld(){const t=this.map,e=this.camera,i=t.getCenterIn(),n=[i.lng,i.lat],r=t.getZoomUnits(),a=t.getTilt(),o=t.getHeading(),[l,h]=this.getContainerSize(),c=h/2/Math.tan(this.fov/2*Math.PI/180)*r;this.cameraDistance=c,e.position.set(0,0,0),e.quaternion.set(0,0,0,1),e.up.set(0,1,0),e.translateX(n[0]),e.translateY(n[1]),e.rotateOnAxis(new M(0,0,1),o*Math.PI/180),e.rotateOnAxis(new M(1,0,0),a*Math.PI/180),e.translateZ(c),e.updateMatrix(),e.updateMatrixWorld()}updateProjectionMatrix(){const t=this.camera,[e,i]=this.getContainerSize(),n=this.map.getZoomUnits();t.aspect=e/i,t.near=.1,t.far=this._far*n,t.far<1e3&&(t.far=1e3),t.updateProjectionMatrix()}normalizeMapPoint(t){const e=this.normalizeEarthPointArr(t)||[0,0];return new BMapGL.Point(e[0],e[1],e[2])}normalizeProjectionPointArr(t){const e=this.parsePointToArr(t);return e&&e[0]<180&&e[1]<90?this.map.lnglatToMercator(e[0],e[1]):e}normalizeEarthPointArr(t){const e=this.parsePointToArr(t);if(e&&(e[0]>180||e[1]>90)){const i=this.map.mercatorToLnglat(e[0],e[1]);return e[2]!==void 0&&(i[2]=e[2]),i}return e}projectPointArr(t){let e=[];return t[0]>180||t[1]>90?(e[0]=t[0],e[1]=t[1]):e=this.map.lnglatToMercator(t[0],t[1]),t[2]!==void 0&&(e[2]=t[2]),e}getCameraDistance(){return this.cameraDistance}getProjectionCenter(){const t=this.map.getCenterIn();return[t.lng,t.lat]}dispose(){const t=this.map;t.getContainer().removeChild(this.canvas),t.removeEventListener("update",this.handleMapUpdate),t.removeEventListener("resize",this.handleMapResize),t.removeEventListener("click",this.handleEventClick),super.dispose()}get far(){return this._far}set far(t){}}class Sf extends Vc{constructor(t,e,i){super(e,i),d(this,"MERCATOR_LENGTH",200375083427892e-7),d(this,"projectionCoordsName","_web_mercator"),d(this,"origin",[0,0]),d(this,"center",[0,0]),d(this,"pitch",0),d(this,"heading",0),d(this,"near",.1),d(this,"_far",8e3),d(this,"fov",35),d(this,"cameraDistance",1e3),d(this,"handleEventClick",n=>{const r=this._engine.event,a=[n.point.x,n.point.y],o=[n.lngLat.lng,n.lngLat.lat],l=this.normalizeProjectionPointArr(o);r._handleClick({pixel:a,point:o,position:l,event:n.originalEvent})}),d(this,"handleEventDblClick",n=>{const r=this._engine.event,a=[n.point.x,n.point.y],o=[n.lngLat.lng,n.lngLat.lat],l=this.normalizeProjectionPointArr(o);r._handleDblClick({pixel:a,point:o,position:l,event:n.originalEvent})}),d(this,"handleEventRightClick",n=>{const r=this._engine.event,a=[n.point.x,n.point.y],o=[n.lngLat.lng,n.lngLat.lat],l=this.normalizeProjectionPointArr(o);r._handleRightClick({pixel:a,point:o,position:l,event:n.originalEvent})}),d(this,"handleMapResize",()=>{this.onResolutionChanged&&this.onResolutionChanged(this.getResolution())}),this._engine=t,this.map=e,this.domContainer=e._container}afterInit(){this.canvas.style.pointerEvents="none",this.domContainer.appendChild(this.canvas);const t=this.map;t.on("render",e=>{this.onViewChanged&&this.onViewChanged()}),t.on("click",this.handleEventClick),t.on("contextmenu",this.handleEventRightClick),t.on("dblclick",this.handleEventDblClick),t.on("resize",()=>{this.handleMapResize()}),this.handleMapResize()}getContainerSize(){return[this.domContainer.clientWidth,this.domContainer.clientHeight]}getResolution(){return new j(this.domContainer.clientWidth,this.domContainer.clientHeight)}setCenter(t){this.map.setCenter(t)}setZoom(t){this.map.setZoom(t)}setHeading(t){this.map.setBearing(t)}setPitch(t){this.map.setPitch(t)}getCenter(){const t=this.map.getCenter();return[t.lng,t.lat]}getZoom(){return this.map.getZoom()}getZoomUnitsByZoom(t){return this.MERCATOR_LENGTH/256/Math.pow(2,t)}getZoomByZoomUnits(t){return Math.log2(this.MERCATOR_LENGTH/256/t)}getZoomUnits(){return this.getZoomUnitsByZoom(this.map.getZoom())}getPitch(){return this.map.getPitch()}getHeading(){return this.map.getBearing()}enableControl(){this.map.dragPan.enable(),this.map.dragRotate.enable()}disableControl(){this.map.dragPan.disable(),this.map.dragRotate.disable()}zoomIn(){this.setZoom(this.getZoom()+1)}zoomOut(){this.setZoom(this.getZoom()-1)}flyTo(t){}updateCamera(){this.updateMatrixWorld(),this.updateProjectionMatrix()}updateMatrixWorld(){this.map;const t=this.camera,e=this.getCenter(),i=this.getZoomUnits(),n=this.getPitch(),r=this.getHeading(),[a,o]=this.getContainerSize(),l=this.normalizeProjectionPointArr(e),h=o/2/Math.tan(this.fov/2*Math.PI/180)*i;this.cameraDistance=h,t.position.set(0,0,0),t.quaternion.set(0,0,0,1),t.up.set(0,1,0),t.translateX(l[0]),t.translateY(l[1]),t.rotateOnAxis(new M(0,0,-1),r*Math.PI/180),t.rotateOnAxis(new M(1,0,0),n*Math.PI/180),t.translateZ(h),t.updateMatrix()}updateProjectionMatrix(){const t=this.camera,e=this.getZoomUnits(),[i,n]=this.getContainerSize();t.aspect=i/n,t.fov=this.fov,t.near=this.near*e,t.far=this._far*e,t.updateProjectionMatrix()}normalizeMapPoint(t){return this.normalizeEarthPointArr(t)}normalizeProjectionPointArr(t){let e=this.parsePointToArr(t);return e=Wr(e),e[0]-=this.origin[0],e[1]-=this.origin[1],e}normalizeEarthPointArr(t){let e=this.parsePointToArr(t);e[0]+=this.origin[0],e[1]+=this.origin[1];let i=zc(e);return e[2]!==void 0&&(i[2]=e[2]),i}projectPointArr(t,e){if(!t)return e;let i=null;return i=t[0]>180||t[1]>90?[t[0],t[1]]:Wr(t),t[2]!==void 0&&(i[2]=t[2]),i[0]-=this.origin[0],i[1]-=this.origin[1],i}dispose(){Xc(this.domContainer),this.domContainer.removeChild(this.canvas),this._engine.event,super.dispose()}getProjectionCenter(){const t=this.map.getCenter();return this.normalizeProjectionPointArr(t)}getCameraDistance(){return this.cameraDistance}get far(){return this._far}set far(t){}}d(Sf,"EARTH_RADIUS",637e4);class eb{constructor(t,e={}){d(this,"_engine"),d(this,"_map"),d(this,"_container"),d(this,"_mapType"),d(this,"handleViewChange",()=>{this._engine.rendering.requestRender()}),d(this,"handleResolutionChange",r=>{this._engine.rendering.setResolution(r)}),this._engine=t;const i=t.container,n=e.coordType;if(i instanceof HTMLElement?n==="ecef"||(n==="bd09"?(this._map=new G1(t,i,e),this._container=i,this._mapType="blank_bd09"):n==="utm"?(this._map=new $1(t,i,e),this._container=i,this._mapType="blank_utm"):e.is3DControl?(this._map=new Yc(t,i,e),this._container=i,this._mapType="blank_3dcontrol"):(this._map=new qc(t,i,e),this._container=i,this._mapType="blank")):window.BMapGL&&i instanceof BMapGL.Map?(this._map=new tb(t,i,e),this._container=i.container,this._mapType="bmapgl"):i._mapId&&(this._map=new Sf(t,i,e),this._container=i._container,this._mapType="mapbox"),!this._map)throw new Error("map is invalid")}init(){this._map.init(),this._map.onViewChanged=this.handleViewChange,this._map.onResolutionChanged=this.handleResolutionChange}afterInit(){const t=this._engine,e=this._map;e.canvas=t.rendering.canvas,e.camera=t.rendering.camera,xt(this._container,`${te}-container`),e.afterInit()}setCenter(t){this._map.setCenter(t)}setZoom(t){this._map.setZoom(t)}setHeading(t){this._map.setHeading(t)}setPitch(t){this._map.setPitch(t)}setBounds(t){this._map.setBounds(t)}lookAt(t,e={}){this._map.lookAt(t,e)}getBoundingBox(){return this._map.getBounds()}getCenter(){return this._map.getCenter()}getZoom(){return this._map.getZoom()}getZoomUnits(){return this._map.getZoomUnits()}getZoomByZoomUnits(t){return this._map.getZoomByZoomUnits(t)}getZoomUnitsByZoom(t){return this._map.getZoomUnitsByZoom(t)}getHeading(){return this._map.getHeading()}getPitch(){return this._map.getPitch()}getProjectionCenter(){return this._map.getProjectionCenter()}getCameraDistance(){return this._map.getCameraDistance()}getResolution(){return this._map.getResolution()}projectPointArr(t){return this._map.projectPointArr(t)}unprojectPointArr(t){return this._map.normalizeEarthPointArr(t)}projectCoordinates(t){return this._map.projectCoordinates(t)}enableControl(){this._map.enableControl()}disableControl(){this._map.disableControl()}updateCamera(){this._map.updateCamera()}getScaleAt(t){return 1/Math.cos(Math.PI*t[1]/180)}zoomIn(){this._map.zoomIn()}zoomOut(){this._map.zoomOut()}zoomTo(t){let e=null;if(t.is3DTiles)e=t.getBounds();else if(t.isMesh){const h=t.geometry;e=h.boundingBox,e||(h.computeBoundingBox(),e=h.boundingBox),e=e.clone(),e.applyMatrix4(t.matrixWorld)}else t.boundingBox&&(e=t.boundingBox,e=e.clone(),e.applyMatrix4(t.matrixWorld));if(!e)return;const i=this.getResolution(),n=(e.max.x-e.min.x)/i.x,r=(e.max.y-e.min.y)/i.y,a=Math.max(n,r),o=this._map.getZoomByZoomUnits(a),l=[(e.max.x+e.min.x)/2,(e.max.y+e.min.y)/2,(e.max.z+e.min.z)/2];if(this._map.isBlankMap3D){let h=Math.max(e.max.x-e.min.x,e.max.y-e.min.y)/Math.tan(this.fov/2*Math.PI/180);this._map._cameraLookAt(this._map.camera,l,{range:h}),this._map.range=h}else this._map.setProjectionCenter(l),this._map.setZoom(o);this._engine.requestRender()}dispose(){this._map.dispose()}set onResolutionChanged(t){this._map.onResolutionChanged=t}get projectionCoordsName(){return this._map.projectionCoordsName}get map(){return this._map}get mapType(){return this._mapType}get container(){return this._container}get fov(){return this._map.fov}get near(){return this._map.near}get far(){return this._map.far}}class ib extends St{constructor(){super(),d(this,"_boxGeometry"),d(this,"_boxMesh"),this._boxMaterial=new ae({transparent:!0,color:16711680,opacity:.3})}attach(t){this._object=t;const e=t.geometry;e.boundingBox||e.computeBoundingBox(),this._boxGeometry&&this._boxGeometry.dispose();const i=e.boundingBox;if(this._boxGeometry=new oe(i.max.x-i.min.x,i.max.y-i.min.y,i.max.z-i.min.z),this._boxMesh)this._boxMesh.geometry=this._boxGeometry;else{const n=this._boxMesh=new lt(this._boxGeometry,this._boxMaterial);this.add(n)}}detach(){this._object=null,this.remove(this._boxMesh),this._boxMesh=null}onBeforeScenePrepareRender(){if(this._object){this._object.updateMatrixWorld();const t=this._boxMesh;this._object.matrixWorld.decompose(t.position,t.rotation,t.scale)}}}const Ws=new Us,ti=new M,ls=new M,he=new Ht,Tf={X:new M(1,0,0),Y:new M(0,1,0),Z:new M(0,0,1)},Kc={type:"change"},Cf={type:"mouseDown"},Ef={type:"mouseUp",mode:null},Af={type:"objectChange"};class Pf extends St{constructor(t,e){super(),d(this,"_cameraScale"),d(this,"_endNorm"),d(this,"_gizmo"),d(this,"_getPointer"),d(this,"_onPointerDown"),d(this,"_onPointerHover"),d(this,"_onPointerMove"),d(this,"_onPointerUp"),d(this,"_parentPosition"),d(this,"_parentQuaternion"),d(this,"_parentQuaternionInv"),d(this,"_parentScale"),d(this,"_plane"),d(this,"_positionStart"),d(this,"_quaternionStart"),d(this,"_scaleStart"),d(this,"_startNorm"),d(this,"_worldQuaternionInv"),d(this,"_worldScale"),d(this,"_worldScaleStart"),d(this,"_offset"),d(this,"isTransformControls"),e===void 0&&(console.warn('THREE.TransformControls: The second parameter "domElement" is now mandatory.'),e=document),this.visible=!1,this.domElement=e,this.domElement.style.touchAction="none";const i=new If;this._gizmo=i,this.add(i);const n=new Of;this._plane=n,this.add(n);const r=this;function a(v,x){let y=x;Object.defineProperty(r,v,{get:function(){return y!==void 0?y:x},set:function(b){y!==b&&(y=b,n[v]=b,i[v]=b,r.dispatchEvent({type:v+"-changed",value:b}),r.dispatchEvent(Kc))}}),r[v]=x,n[v]=x,i[v]=x}a("camera",t),a("object",void 0),a("enabled",!0),a("axis",null),a("mode","translate"),a("translationSnap",null),a("rotationSnap",null),a("scaleSnap",null),a("space","local"),a("size",.7),a("dragging",!1),a("showX",!0),a("showY",!0),a("showZ",!0);const o=new M,l=new M,h=new Ht,c=new Ht,u=new M,p=new Ht,m=new M,f=new M,g=new M,_=new M;a("worldPosition",o),a("worldPositionStart",l),a("worldQuaternion",h),a("worldQuaternionStart",c),a("cameraPosition",u),a("cameraQuaternion",p),a("pointStart",m),a("pointEnd",f),a("rotationAxis",g),a("rotationAngle",0),a("eye",_),this._offset=new M,this._startNorm=new M,this._endNorm=new M,this._cameraScale=new M,this._parentPosition=new M,this._parentQuaternion=new Ht,this._parentQuaternionInv=new Ht,this._parentScale=new M,this._worldScaleStart=new M,this._worldQuaternionInv=new Ht,this._worldScale=new M,this._positionStart=new M,this._quaternionStart=new Ht,this._scaleStart=new M,this._getPointer=nb.bind(this),this._onPointerDown=rb.bind(this),this._onPointerHover=sb.bind(this),this._onPointerMove=ab.bind(this),this._onPointerUp=ob.bind(this),this.domElement.addEventListener("pointerdown",this._onPointerDown),this.domElement.addEventListener("pointermove",this._onPointerHover),this.domElement.addEventListener("pointerup",this._onPointerUp)}updateMatrixWorld(){this.object!==void 0&&(this.object.updateMatrixWorld(),this.object.parent===null?console.error("TransformControls: The attached 3D object must be a part of the scene graph."):this.object.parent.matrixWorld.decompose(this._parentPosition,this._parentQuaternion,this._parentScale),this.object.matrixWorld.decompose(this.worldPosition,this.worldQuaternion,this._worldScale),this._parentQuaternionInv.copy(this._parentQuaternion).invert(),this._worldQuaternionInv.copy(this.worldQuaternion).invert()),this.camera.updateMatrixWorld(),this.camera.matrixWorld.decompose(this.cameraPosition,this.cameraQuaternion,this._cameraScale),this.eye.copy(this.cameraPosition).sub(this.worldPosition).normalize(),super.updateMatrixWorld(this)}pointerHover(t){if(this.object===void 0||this.dragging===!0)return;Ws.setFromCamera(t,this.camera);const e=Qc(this._gizmo.picker[this.mode],Ws);this.axis=e?e.object.name:null}pointerDown(t){if(this.object!==void 0&&this.dragging!==!0&&t.button===0&&this.axis!==null){Ws.setFromCamera(t,this.camera);const e=Qc(this._plane,Ws,!0);e&&(this.object.updateMatrixWorld(),this.object.parent.updateMatrixWorld(),this._positionStart.copy(this.object.position),this._quaternionStart.copy(this.object.quaternion),this._scaleStart.copy(this.object.scale),this.object.matrixWorld.decompose(this.worldPositionStart,this.worldQuaternionStart,this._worldScaleStart),this.pointStart.copy(e.point).sub(this.worldPositionStart)),this.dragging=!0,Cf.mode=this.mode,this.dispatchEvent(Cf)}}pointerMove(t){const e=this.axis,i=this.mode,n=this.object;let r=this.space;if(i==="scale"?r="local":e!=="E"&&e!=="XYZE"&&e!=="XYZ"||(r="world"),n===void 0||e===null||this.dragging===!1||t.button!==-1)return;Ws.setFromCamera(t,this.camera);const a=Qc(this._plane,Ws,!0);if(a){if(this.pointEnd.copy(a.point).sub(this.worldPositionStart),i==="translate")this._offset.copy(this.pointEnd).sub(this.pointStart),r==="local"&&e!=="XYZ"&&this._offset.applyQuaternion(this._worldQuaternionInv),e.indexOf("X")===-1&&(this._offset.x=0),e.indexOf("Y")===-1&&(this._offset.y=0),e.indexOf("Z")===-1&&(this._offset.z=0),r==="local"&&e!=="XYZ"?this._offset.applyQuaternion(this._quaternionStart).divide(this._parentScale):this._offset.applyQuaternion(this._parentQuaternionInv).divide(this._parentScale),n.position.copy(this._offset).add(this._positionStart),this.translationSnap&&(r==="local"&&(n.position.applyQuaternion(he.copy(this._quaternionStart).invert()),e.search("X")!==-1&&(n.position.x=Math.round(n.position.x/this.translationSnap)*this.translationSnap),e.search("Y")!==-1&&(n.position.y=Math.round(n.position.y/this.translationSnap)*this.translationSnap),e.search("Z")!==-1&&(n.position.z=Math.round(n.position.z/this.translationSnap)*this.translationSnap),n.position.applyQuaternion(this._quaternionStart)),r==="world"&&(n.parent&&n.position.add(ti.setFromMatrixPosition(n.parent.matrixWorld)),e.search("X")!==-1&&(n.position.x=Math.round(n.position.x/this.translationSnap)*this.translationSnap),e.search("Y")!==-1&&(n.position.y=Math.round(n.position.y/this.translationSnap)*this.translationSnap),e.search("Z")!==-1&&(n.position.z=Math.round(n.position.z/this.translationSnap)*this.translationSnap),n.parent&&n.position.sub(ti.setFromMatrixPosition(n.parent.matrixWorld))));else if(i==="scale"){if(e.search("XYZ")!==-1){let o=this.pointEnd.length()/this.pointStart.length();this.pointEnd.dot(this.pointStart)<0&&(o*=-1),ls.set(o,o,o)}else ti.copy(this.pointStart),ls.copy(this.pointEnd),ti.applyQuaternion(this._worldQuaternionInv),ls.applyQuaternion(this._worldQuaternionInv),ls.divide(ti),e.search("X")===-1&&(ls.x=1),e.search("Y")===-1&&(ls.y=1),e.search("Z")===-1&&(ls.z=1);n.scale.copy(this._scaleStart).multiply(ls),this.scaleSnap&&(e.search("X")!==-1&&(n.scale.x=Math.round(n.scale.x/this.scaleSnap)*this.scaleSnap||this.scaleSnap),e.search("Y")!==-1&&(n.scale.y=Math.round(n.scale.y/this.scaleSnap)*this.scaleSnap||this.scaleSnap),e.search("Z")!==-1&&(n.scale.z=Math.round(n.scale.z/this.scaleSnap)*this.scaleSnap||this.scaleSnap))}else if(i==="rotate"){this._offset.copy(this.pointEnd).sub(this.pointStart);const o=20/this.worldPosition.distanceTo(ti.setFromMatrixPosition(this.camera.matrixWorld));e==="E"?(this.rotationAxis.copy(this.eye),this.rotationAngle=this.pointEnd.angleTo(this.pointStart),this._startNorm.copy(this.pointStart).normalize(),this._endNorm.copy(this.pointEnd).normalize(),this.rotationAngle*=this._endNorm.cross(this._startNorm).dot(this.eye)<0?1:-1):e==="XYZE"?(this.rotationAxis.copy(this._offset).cross(this.eye).normalize(),this.rotationAngle=this._offset.dot(ti.copy(this.rotationAxis).cross(this.eye))*o):e!=="X"&&e!=="Y"&&e!=="Z"||(this.rotationAxis.copy(Tf[e]),ti.copy(Tf[e]),r==="local"&&ti.applyQuaternion(this.worldQuaternion),this.rotationAngle=this._offset.dot(ti.cross(this.eye).normalize())*o),this.rotationSnap&&(this.rotationAngle=Math.round(this.rotationAngle/this.rotationSnap)*this.rotationSnap),r==="local"&&e!=="E"&&e!=="XYZE"?(n.quaternion.copy(this._quaternionStart),n.quaternion.multiply(he.setFromAxisAngle(this.rotationAxis,this.rotationAngle)).normalize()):(this.rotationAxis.applyQuaternion(this._parentQuaternionInv),n.quaternion.copy(he.setFromAxisAngle(this.rotationAxis,this.rotationAngle)),n.quaternion.multiply(this._quaternionStart).normalize())}this.dispatchEvent(Kc),this.dispatchEvent(Af)}}pointerUp(t){t.button===0&&(this.dragging&&this.axis!==null&&(Ef.mode=this.mode,this.dispatchEvent(Ef)),this.dragging=!1,this.axis=null)}dispose(){this.domElement.removeEventListener("pointerdown",this._onPointerDown),this.domElement.removeEventListener("pointermove",this._onPointerHover),this.domElement.removeEventListener("pointermove",this._onPointerMove),this.domElement.removeEventListener("pointerup",this._onPointerUp),this.traverse(function(t){t.geometry&&t.geometry.dispose(),t.material&&t.material.dispose()})}attach(t){return this.object=t,this.visible=!0,this}detach(){return this.object=void 0,this.visible=!1,this.axis=null,this}reset(){this.enabled&&this.dragging&&(this.object.position.copy(this._positionStart),this.object.quaternion.copy(this._quaternionStart),this.object.scale.copy(this._scaleStart),this.dispatchEvent(Kc),this.dispatchEvent(Af),this.pointStart.copy(this.pointEnd))}getRaycaster(){return Ws}getMode(){return this.mode}setMode(t){this.mode=t}setTranslationSnap(t){this.translationSnap=t}setRotationSnap(t){this.rotationSnap=t}setScaleSnap(t){this.scaleSnap=t}setSize(t){this.size=t}setSpace(t){this.space=t}update(){console.warn("THREE.TransformControls: update function has no more functionality and therefore has been deprecated.")}}function nb(s){if(this.domElement.ownerDocument.pointerLockElement)return{x:0,y:0,button:s.button};{const t=this.domElement.getBoundingClientRect();return{x:(s.clientX-t.left)/t.width*2-1,y:-(s.clientY-t.top)/t.height*2+1,button:s.button}}}function sb(s){if(this.enabled)switch(s.pointerType){case"mouse":case"pen":this.pointerHover(this._getPointer(s))}}function rb(s){this.enabled&&(this.domElement.addEventListener("pointermove",this._onPointerMove),this.pointerHover(this._getPointer(s)),this.pointerDown(this._getPointer(s)))}function ab(s){this.enabled&&this.pointerMove(this._getPointer(s))}function ob(s){this.enabled&&(this.domElement.releasePointerCapture(s.pointerId),this.domElement.removeEventListener("pointermove",this._onPointerMove),this.pointerUp(this._getPointer(s)))}function Qc(s,t,e){const i=t.intersectObject(s,!0);for(let n=0;n.99&&(n.scale.set(1e-10,1e-10,1e-10),n.visible=!1),n.name==="Y"&&Math.abs(ie.copy(Xs).applyQuaternion(t).dot(this.eye))>.99&&(n.scale.set(1e-10,1e-10,1e-10),n.visible=!1),n.name==="Z"&&Math.abs(ie.copy(Qa).applyQuaternion(t).dot(this.eye))>.99&&(n.scale.set(1e-10,1e-10,1e-10),n.visible=!1),n.name==="XY"&&Math.abs(ie.copy(Qa).applyQuaternion(t).dot(this.eye))<.2&&(n.scale.set(1e-10,1e-10,1e-10),n.visible=!1),n.name==="YZ"&&Math.abs(ie.copy(Ka).applyQuaternion(t).dot(this.eye))<.2&&(n.scale.set(1e-10,1e-10,1e-10),n.visible=!1),n.name==="XZ"&&Math.abs(ie.copy(Xs).applyQuaternion(t).dot(this.eye))<.2&&(n.scale.set(1e-10,1e-10,1e-10),n.visible=!1)):this.mode==="rotate"&&(Il.copy(t),ie.copy(this.eye).applyQuaternion(he.copy(t).invert()),n.name.search("E")!==-1&&n.quaternion.setFromRotationMatrix(Df.lookAt(this.eye,Rf,Xs)),n.name==="X"&&(he.setFromAxisAngle(Ka,Math.atan2(-ie.y,ie.z)),he.multiplyQuaternions(Il,he),n.quaternion.copy(he)),n.name==="Y"&&(he.setFromAxisAngle(Xs,Math.atan2(ie.x,ie.z)),he.multiplyQuaternions(Il,he),n.quaternion.copy(he)),n.name==="Z"&&(he.setFromAxisAngle(Qa,Math.atan2(ie.y,ie.x)),he.multiplyQuaternions(Il,he),n.quaternion.copy(he))),n.visible=n.visible&&(n.name.indexOf("X")===-1||this.showX),n.visible=n.visible&&(n.name.indexOf("Y")===-1||this.showY),n.visible=n.visible&&(n.name.indexOf("Z")===-1||this.showZ),n.visible=n.visible&&(n.name.indexOf("E")===-1||this.showX&&this.showY&&this.showZ),n.material._color=n.material._color||n.material.color.clone(),n.material._opacity=n.material._opacity||n.material.opacity,n.material.color.copy(n.material._color),n.material.opacity=n.material._opacity,this.enabled&&this.axis&&(n.name===this.axis||this.axis.split("").some(function(a){return n.name===a}))&&(n.material.color.setHex(16776960),n.material.opacity=1)):(n.visible=!1,n.name==="AXIS"?(n.position.copy(this.worldPositionStart),n.visible=!!this.axis,this.axis==="X"&&(he.setFromEuler(Ll.set(0,0,0)),n.quaternion.copy(t).multiply(he),Math.abs(ie.copy(Ka).applyQuaternion(t).dot(this.eye))>.9&&(n.visible=!1)),this.axis==="Y"&&(he.setFromEuler(Ll.set(0,0,Math.PI/2)),n.quaternion.copy(t).multiply(he),Math.abs(ie.copy(Xs).applyQuaternion(t).dot(this.eye))>.9&&(n.visible=!1)),this.axis==="Z"&&(he.setFromEuler(Ll.set(0,Math.PI/2,0)),n.quaternion.copy(t).multiply(he),Math.abs(ie.copy(Qa).applyQuaternion(t).dot(this.eye))>.9&&(n.visible=!1)),this.axis==="XYZE"&&(he.setFromEuler(Ll.set(0,Math.PI/2,0)),ie.copy(this.rotationAxis),n.quaternion.setFromRotationMatrix(Df.lookAt(Rf,ie,Xs)),n.quaternion.multiply(he),n.visible=this.dragging),this.axis==="E"&&(n.visible=!1)):n.name==="START"?(n.position.copy(this.worldPositionStart),n.visible=this.dragging):n.name==="END"?(n.position.copy(this.worldPosition),n.visible=this.dragging):n.name==="DELTA"?(n.position.copy(this.worldPositionStart),n.quaternion.copy(this.worldQuaternionStart),ti.set(1e-10,1e-10,1e-10).add(this.worldPositionStart).sub(this.worldPosition).multiplyScalar(-1),ti.applyQuaternion(this.worldQuaternionStart.clone().invert()),n.scale.copy(ti),n.visible=this.dragging):(n.quaternion.copy(t),this.dragging?n.position.copy(this.worldPositionStart):n.position.copy(this.worldPosition),this.axis&&(n.visible=this.axis.search(n.name)!==-1)))}}}If.prototype.isTransformControlsGizmo=!0;class Of extends lt{constructor(){super(new Rs(1e5,1e5,2,2),new ae({visible:!1,wireframe:!0,side:ce,transparent:!0,opacity:.1,toneMapped:!1})),this.type="TransformControlsPlane"}updateMatrixWorld(t){let e=this.space;switch(this.position.copy(this.worldPosition),this.mode==="scale"&&(e="local"),zl.copy(Ka).applyQuaternion(e==="local"?this.worldQuaternion:Ol),$a.copy(Xs).applyQuaternion(e==="local"?this.worldQuaternion:Ol),to.copy(Qa).applyQuaternion(e==="local"?this.worldQuaternion:Ol),ie.copy($a),this.mode){case"translate":case"scale":switch(this.axis){case"X":ie.copy(this.eye).cross(zl),Ki.copy(zl).cross(ie);break;case"Y":ie.copy(this.eye).cross($a),Ki.copy($a).cross(ie);break;case"Z":ie.copy(this.eye).cross(to),Ki.copy(to).cross(ie);break;case"XY":Ki.copy(to);break;case"YZ":Ki.copy(zl);break;case"XZ":ie.copy(to),Ki.copy($a);break;case"XYZ":case"E":Ki.set(0,0,0)}break;default:Ki.set(0,0,0)}Ki.length()===0?this.quaternion.copy(this.cameraQuaternion):(Lf.lookAt(ti.set(0,0,0),Ki,ie),this.quaternion.setFromRotationMatrix(Lf)),super.updateMatrixWorld(t)}}Of.prototype.isTransformControlsPlane=!0;class zf extends Pf{constructor(t){super(t.camera,t.map.container),d(this,"_enableKeyboardEvent",!1),d(this,"handleKeyboardEvent",e=>{switch(e.keyCode){case 81:this.setSpace(this.space==="local"?"world":"local");break;case 87:this.setMode("translate");break;case 69:this.setMode("rotate");break;case 82:this.setMode("scale");break;case 187:case 107:this.setSize(this.size+.1);break;case 189:case 109:this.setSize(Math.max(this.size-.1,.1));break;case 88:this.showX=!this.showX;break;case 89:this.showY=!this.showY;break;case 90:this.showZ=!this.showZ;break;case 32:this.enabled=!this.enabled;break;case 27:this.reset()}}),this.engine=t,this.addEventListener("change",e=>{t.requestRender()}),this.addEventListener("objectChange",e=>{t.requestRender()}),this.addEventListener("dragging-changed",e=>{e.value?t.map.disableControl():t.map.enableControl()})}dispose(){super.dispose(),this.enableKeyboardEvent=!1}set enableKeyboardEvent(t){t!==this._enableKeyboardEvent&&(this._enableKeyboardEvent=t,t?window.addEventListener("keydown",this.handleKeyboardEvent):window.removeEventListener("keydown",this.handleKeyboardEvent))}}class lb extends pn{constructor(t,e={}){super(),d(this,"_engine"),d(this,"_boundingBoxHelper"),d(this,"_selectedObject"),d(this,"_transformControl"),this._engine=t}isSelected(t){return t===this._selectedObject}select(t){t.__engine_selected||(this._selectedObject&&(this._selectedObject.__engine_selected=!1),this._boundingBoxHelper||(this._boundingBoxHelper=new ib,this._engine.add(this._boundingBoxHelper)),this._boundingBoxHelper.attach(t),this._selectedObject=t,t.__engine_selected=!0,this._engine.requestRender())}deselect(t){this.isSelected(t)&&(this._boundingBoxHelper.detach(),this._selectedObject=null,t.__engine_selected=!1,this._engine.requestRender())}get transformControl(){return this._transformControl||(this._transformControl=new zf(this._engine),this._transformControl.enableKeyboardEvent=!0),this._transformControl}attachTransform(t){const e=this._engine,i=this.transformControl;e.add(i),i.attach(t),i.updateMatrixWorld(),e.requestRender()}detachTransform(){const t=this._engine,e=this.transformControl;t.remove(e),e.detach()}dispose(){}}class An{constructor(t,e,i=null){d(this,"_container"),d(this,"_enabled"),d(this,"_controlOptions",{}),d(this,"_element"),d(this,"_engine"),this._container=t;let n=!1;e?(n=!0,e instanceof Object&&(this._controlOptions=e)):n=!1,this._enabled=n,this._engine=i,this._element=null,this._enabled&&this.init()}init(){let t=this._element=this.createDom();this._container.appendChild(t)}createDom(){}dispose(){this._element&&(this.onDispose(),this._element.remove())}onDispose(){}get container(){return this._container}get element(){return this._element}get enabled(){return this._enabled}set enabled(t){const e=!!t;if(this._enabled!==e){const i=e?"visible":"hidden";this._element?(this._element.style.visibility=i,this.onDispose()):i&&this.init(),this._enabled=e}}}class hb extends An{createDom(){return this._element=document.createElement("img"),xt(this._element,"logo"),this._url=this._url||Jt("assets/images/bdImg.png"),this._element.src=this._url,this._element}set url(t){this._element&&(this._element.src=t),this._url=t}get url(){return this._url}}class cb extends An{createDom(){this.handleZoomIn=this.handleZoomIn.bind(this),this.handleZoomOut=this.handleZoomOut.bind(this),this._element=document.createElement("div"),xt(this._element,"zoom");const t=this._zoomAdd=document.createElement("div");xt(t,"zoom-add");const e=document.createElement("div");xt(e,"zoom-add-tag"),e.setAttribute("style",`background-image: url(${Jt("assets/images/mapZoom2x.png")});`),t.addEventListener(vt.DOWN,this.handleZoomIn),t.appendChild(e);const i=this._zoomSub=document.createElement("div");xt(i,"zoom-sub");const n=document.createElement("div");return xt(n,"zoom-sub-tag"),n.setAttribute("style",`background-image: url(${Jt("assets/images/mapZoom2x.png")});`),i.addEventListener(vt.DOWN,this.handleZoomOut),i.appendChild(n),this._element.appendChild(t),this._element.appendChild(i),this._element}handleZoomIn(){this._engine.map.zoomIn()}handleZoomOut(){this._engine.map.zoomOut()}onDispose(){this._zoomAdd.removeEventListener(vt.DOWN,this.handleZoomIn),this._zoomSub.removeEventListener(vt.DOWN,this.handleZoomOut)}}class ub extends An{createDom(){this._element=document.createElement("div"),xt(this._element,"scale"),this._text=document.createElement("div"),xt(this._text,"scale-text"),this._text.innerText="20km";const t=document.createElement("div");xt(t,"scale-line");const e=document.createElement("div");xt(e,"scale-line-mid");const i=document.createElement("div");xt(i,"scale-line-left");const n=document.createElement("div");return xt(n,"scale-line-right"),t.appendChild(e),t.appendChild(i),t.appendChild(n),this._element.appendChild(this._text),this._element.appendChild(t),this.calculateScale=this.calculateScale.bind(this),this._engine.rendering.addPrepareRenderListener(this.calculateScale),this._element}calculateScale(){const t=this._engine.map.getZoomUnitsByZoom(this._engine.map.getZoom());let e=0;const i=[.05,.1,.2];for(let n=0;n<3&&e<7;n++){const r=i[n]*Math.pow(10,e),a=r/t;if(a>=50&&a<=150){if(this._element.style.width=a+"px",e<1)this._text.innerText=(r<.1?5:100*r)+"cm";else if(e<2)this._text.innerText=(r<1?5:10*r)+"dm";else{const o=r/1e3,l=o<1;this._text.innerText=l?r+"m":o+"km"}break}n<1&&e<1&&a>150&&(this._element.style.width="150px",this._text.innerText="< 5cm"),n>1&&(e++,n=0)}}onDispose(){this._engine.rendering.removePrepareRenderListener(this.calculateScale)}}const kf="M358.4 768H426.666667v85.333333H213.333333v-213.333333h85.333334v68.266667l128-128 59.733333 59.733333-128 128z m345.6 0l-128-128 59.733333-59.733333 132.266667 132.266666V640h85.333333v213.333333h-213.333333v-85.333333h64zM358.4 298.666667l128 128-59.733333 59.733333-128-128V426.666667H213.333333V213.333333h213.333334v85.333334H358.4z m345.6 0H640V213.333333h213.333333v213.333334h-85.333333V354.133333l-132.266667 132.266667-59.733333-59.733333 128-128z";class db extends An{createDom(){this.handleClick=this.handleClick.bind(this),this.handleFullscreenChange=this.handleFullscreenChange.bind(this),this._element=document.createElement("div"),xt(this._element,"fullscreen");const t=document.createElementNS("http://www.w3.org/2000/svg","svg");return t.setAttribute("class","control-group-svg fullscreen-svg"),t.setAttribute("viewBox","0 0 1024 1024"),t.setAttribute("version","1.1"),this._path=document.createElementNS("http://www.w3.org/2000/svg","path"),this._path.setAttribute("d",kf),this._path.setAttribute("class","fullscreen-path"),t.appendChild(this._path),this._flag=!0,this._element.addEventListener(vt.DOWN,this.handleClick),document.addEventListener("fullscreenchange",this.handleFullscreenChange),this._element.appendChild(t),this._element}handleClick(){const t=this._engine.container,e=t instanceof HTMLElement||t&&typeof t=="object"&&t.nodeType===1&&typeof t.nodeName=="string"?t:t.container||t._container;this._flag?e.requestFullscreen?e.requestFullscreen():e.msRequestFullscreen?e.msRequestFullscreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.webkitRequestFullScreen&&e.webkitRequestFullScreen():document.exitFullscreen?document.exitFullscreen():document.msExitFullscreen?document.msExitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.webkitCancelFullScreen&&document.webkitCancelFullScreen()}handleFullscreenChange(){this._flag=!this._flag,this._flag?this._path.setAttribute("d",kf):this._path.setAttribute("d","M298.666667 631.466667H226.133333v-81.066667h217.6v204.8h-85.333333v-68.266667l-128 128L170.666667 759.466667l128-128z m422.4 0l128 128-59.733334 59.733333-128-128v68.266667h-85.333333V554.666667h217.6v81.066666h-72.533333zM298.666667 341.333333L187.733333 230.4 243.2 170.666667l115.2 115.2V217.6h85.333333v204.8H226.133333V341.333333H298.666667z m430.933333 0h64v81.066667h-217.6V217.6h85.333333v72.533333L780.8 170.666667l59.733333 59.733333L729.6 341.333333z")}onDispose(){this._element.removeEventListener(vt.DOWN,this.handleClick),document.removeEventListener("fullscreenchange",this.handleFullscreenChange)}}class pb extends An{createDom(){this.locate=this.locate.bind(this),this._element=document.createElement("div"),xt(this._element,"geo-locate");const t=document.createElementNS("http://www.w3.org/2000/svg","svg");t.setAttribute("class","control-group-svg geo-locate-svg"),t.setAttribute("viewBox","0 0 1024 1024"),t.setAttribute("version","1.1");const e=document.createElementNS("http://www.w3.org/2000/svg","path");return e.setAttribute("d","M87.424 469.312A426.816 426.816 0 0 1 469.312 87.424V0h85.376v87.424a426.816 426.816 0 0 1 381.888 381.888H1024v85.376h-87.424a426.816 426.816 0 0 1-381.888 381.888V1024h-85.376v-87.424A426.816 426.816 0 0 1 87.424 554.688H0v-85.376h87.424z m424.576 384a341.312 341.312 0 1 0 0-682.624 341.312 341.312 0 0 0 0 682.624z m0-170.624a170.688 170.688 0 1 0 0-341.376 170.688 170.688 0 0 0 0 341.376z"),e.setAttribute("class","geo-locate-path"),t.appendChild(e),this._element.addEventListener(vt.DOWN,this.locate),this._element.appendChild(t),this._element}locate(){window.navigator.geolocation.getCurrentPosition(t=>{var e;const{longitude:i,latitude:n}=(e=t.coords)!=null?e:{};isNaN(i)||isNaN(n)?console.error("定位出错,请重新定位!"):(this._engine.map.setCenter([i,n]),this._engine.map.setZoom(18))},t=>{console.error("定位未开启")})}onDispose(){this._element.removeEventListener(vt.DOWN,this.locate)}}class mb extends An{constructor(){super(...arguments),d(this,"screenshot",(t,e)=>{const i=this._engine.rendering.canvas,n=this._engine.map.mapType,r=document.createElement("canvas"),a=r.getContext("2d");if(r.width=i.width,r.height=i.height,n==="bmapgl"){const l=this._engine.container._webglPainter._canvas;a.drawImage(l,0,0,l.width,l.height)}else if(n==="mapbox"){const l=this._engine.container._canvas;a.drawImage(l,0,0,l.width,l.height)}a.drawImage(i,0,0,i.width,i.height);let o=r.toDataURL();if(e){t=t||"download.png";const l=document.createElement("a");l.href=o,l.download=t,l.click()}return o})}createDom(){this.handleClick=this.handleClick.bind(this),this._element=document.createElement("div"),xt(this._element,"export-image");const t=document.createElementNS("http://www.w3.org/2000/svg","svg");t.setAttribute("class","control-group-svg export-image-svg"),t.setAttribute("viewBox","0 0 1024 1024"),t.setAttribute("version","1.1");const e=document.createElementNS("http://www.w3.org/2000/svg","path");return e.setAttribute("d","M867.90864 574.538232V257.779543a50.844091 50.844091 0 0 0-50.844092-50.844091h-610.129096a50.844091 50.844091 0 0 0-50.844092 50.844091v499.797418l430.141013-257.779543a152.532274 152.532274 0 0 1 157.108243 0z m0 118.466733l-177.445879-106.264151a50.844091 50.844091 0 0 0-50.844092 0L254.220457 817.064548h562.844091a50.844091 50.844091 0 0 0 50.844092-50.844091z m-660.973188-587.757696h610.129096a152.532274 152.532274 0 0 1 152.532274 152.532274v508.440914a152.532274 152.532274 0 0 1-152.532274 152.532274h-610.129096a152.532274 152.532274 0 0 1-152.532274-152.532274v-508.440914a152.532274 152.532274 0 0 1 152.532274-152.532274z m127.110228 355.90864a76.266137 76.266137 0 1 1 76.266137-76.266137 76.266137 76.266137 0 0 1-76.266137 76.266137z"),t.appendChild(e),this._element.addEventListener(vt.DOWN,this.handleClick),this._element.appendChild(t),this._element}handleClick(){this.screenshot("download.png",!0)}onDispose(){this._element.removeEventListener(vt.DOWN,this.handleClick)}}class fb extends An{constructor(){super(...arguments),d(this,"_mapInfo",{pitch:0,heading:0,zoom:0,center:[0,0,0],mousePoint:[0,0,0]}),d(this,"_template","MZ")}createDom(){return this._element=document.createElement("div"),xt(this._element,"mouse-location"),this.mouseMove=this.mouseMove.bind(this),this._engine.event.bind("mousemove",this.mouseMove),this._viewChangedCallback=()=>{if(this._engine.rendering.renderState.viewChanged){const t=this._engine.map,e=t.getCenter();this._mapInfo.pitch=$c(t.getPitch()),this._mapInfo.heading=$c(t.getHeading()),this._mapInfo.zoom=$c(t.getZoom()),this._mapInfo.center=[e[0].toFixed(6),e[1].toFixed(6),e[2].toFixed(2)],this.updateInfoText()}},this._engine.rendering.addPrepareRenderListener(this._viewChangedCallback),this._element}mouseMove(t){const e=t.point;e&&/M/gi.test(this._template)&&(this._mapInfo.mousePoint=[e[0].toFixed(6),e[1].toFixed(6)],this.updateInfoText())}updateInfoText(){const{center:t,heading:e,pitch:i,zoom:n,mousePoint:r}=this._mapInfo,a={M:r,C:t,Z:n,H:e,P:i},o={M:"指针位置",C:"中心点",Z:"级别",H:"旋转角",P:"倾角"},l=this._template.replace(/[MCZHP]/gi,h=>`${o[h]}: ${a[h]} | `).slice(0,-3);this._element.innerText=l}get template(){return this._template}set template(t){this._template=t,this.updateInfoText()}onDispose(){this._engine.event.unbind("mousemove",this.mouseMove),this._engine.rendering.removePrepareRenderListener(this._viewChangedCallback)}}function $c(s,t){return Math.round(s)}class gb extends An{createDom(){this._element=document.createElement("div"),xt(this._element,"drawer");const t=this._drawerBtn=document.createElement("div");xt(t,"drawer-btn");const e=document.createElementNS("http://www.w3.org/2000/svg","svg");e.setAttribute("class","drawer-icon"),e.setAttribute("viewBox","0 0 1024 1024"),e.setAttribute("version","1.1");const i=document.createElementNS("http://www.w3.org/2000/svg","path");i.setAttribute("d","M512 821.504l-416-208-96 48 512 256 512-256-96-48-416 208z m0-181.173333l-416-208-96 48 512 256 512-256-96-48-416 208zM1024 298.666667L512 42.666667 0 298.666667l512 256 512-256zM512 138.058667L833.184 298.666667 512 459.274667 190.816 298.666667 512 138.058667z"),e.appendChild(i),t.addEventListener(vt.DOWN,this.openDrawer),t.appendChild(e);const n=this._drawerList=document.createElement("div");xt(n,"drawer-list"),n.setAttribute("id",`${te}-drawer-list`),n.style.display="none";const r=document.createElement("div");xt(r,"drawer-content");const a=this._controlOptions,o=a&&a.length>0?a.length:0;if(this._drawerCheckboxs=[],o>0){const h=this.addChangeListener.bind(this);for(let c=0;c{g.stopPropagation();const _=g.target.checked;u.onChange&&u.onChange(_,u.data,this._engine)}),m.setAttribute("type","checkbox"),u.defaultChecked&&(m.setAttribute("checked",u.defaultChecked),u.onChange&&u.onChange(!0,u.data,this._engine)),this._drawerCheckboxs.push(m);const f=document.createElement("span");xt(f,"drawer-item-name"),f.innerText=u.name,f.onclick=()=>{m.click()},p.appendChild(m),p.appendChild(f),r.appendChild(p)}}const l=document.createElement("div");return xt(l,"drawer-arrow"),n.appendChild(r),n.appendChild(l),this._element.appendChild(t),this._element.appendChild(n),this._element}addChangeListener(t,e){this._eventMap||(this._eventMap=new WeakMap),t.addEventListener("change",e),this._eventMap.set(t,e)}removeChangeListener(t){const e=this._eventMap.get(t);t.removeEventListener("change",e),this._eventMap.delete(t)}openDrawer(){const t=document.getElementById(`${te}-drawer-list`);t.style.display=t.style.display==="none"?"block":"none"}onDispose(){this._drawerBtn.addEventListener(vt.DOWN,this.openDrawer);for(let t=0;t{this._compass.style.transform=`rotate(${this._engine.map.getHeading()}deg)`}),this._element}handleUpBtnClick(){const t=this._engine.map.getPitch();let e=t+2;e=e>89?89:e<0?0:e,t!==e&&this._engine.map.setPitch(e)}handleDownBtnClick(){const t=this._engine.map.getPitch();let e=t-2;e=e>89?89:e<0?0:e,t!==e&&this._engine.map.setPitch(e)}handleLeftBtnClick(){let t=this._engine.map.getHeading()-2;this._engine.map.setHeading((t+360)%360)}handleRightBtnClick(){let t=this._engine.map.getHeading()+2;this._engine.map.setHeading(t%360)}handleCenterBtnClick(){this._engine.map.setHeading(0)}onDispose(){this._up.removeEventListener(vt.DOWN,this.handleUpBtnClick),this._down.removeEventListener(vt.DOWN,this.handleDownBtnClick),this._left.removeEventListener(vt.DOWN,this.handleLeftBtnClick),this._right.removeEventListener(vt.DOWN,this.handleRightBtnClick),this._compass.removeEventListener(vt.DOWN,this.handleCenterBtnClick)}}class vb{constructor(t,e={}){d(this,"_container"),d(this,"_engine"),d(this,"_logo"),d(this,"_zoom"),d(this,"_scale"),d(this,"_fullscreen"),d(this,"_geoLocate"),d(this,"_exportImage"),d(this,"_mapInfo"),d(this,"_compass");const i=t.container,n=i instanceof HTMLElement||i&&typeof i=="object"&&i.nodeType===1&&typeof i.nodeName=="string";this._container=n?i:i.container||i._container;const r=document.createElement("div");r.id=`${te}-controls`,xt(r,`${te}-controls-pane`),this._container.appendChild(r);const a=document.createElement("div");xt(a,"bottom-right-anchor"),this._zoom=new cb(a,e.zoom,t),this._compass=new _b(a,e.compass,t),r.appendChild(a);const o=document.createElement("div");xt(o,"bottom-left-anchor"),r.appendChild(o),this._fullscreen=new db(o,e.fullscreen,t),this._exportImage=new mb(o,e.exportImage,t),this._geoLocate=new pb(o,e.geoLocate,t),this._logo=new hb(r,e.logo,t),this._scale=new ub(r,e.scale,t),this._mapInfo=new fb(r,e.mapInfo,t),this._drawer=new gb(r,e.drawer,t)}dispose(){this._logo.dispose(),this._zoom.dispose(),this._scale.dispose(),this._fullscreen.dispose(),this._geoLocate.dispose(),this._exportImage.dispose(),this._mapInfo.dispose(),this._compass.dispose(),this._drawer.dispose()}get container(){return this._container}get engine(){return this._engine}get compass(){return this._compass}get logo(){return this._logo}get zoom(){return this._zoom}get scale(){return this._scale}get fullscreen(){return this._fullscreen}get geoLocate(){return this._geoLocate}get exportImage(){return this._exportImage}get mapInfo(){return this._mapInfo}get drawer(){return this._drawer}}dt.mvt_uniform_zoomunits_pars=`#define GLSLIFY 1 +`,dt.mvt_extra_vertex_utils=`#define GLSLIFY 1 +float getPixelSize(vec3 position) { + return 0.1 * projectionMatrix[1][1] / resolution.y * distance(cameraPosition, position); +} +`,dt.mvt_selective_pars_vertex=`#define GLSLIFY 1 +#ifdef MVT_ENABLE_SELECTIVE +attribute float objectIndex; +uniform float selectedObjectIndex; +varying float isSelected; +#endif`,dt.mvt_selective_vertex=`#define GLSLIFY 1 +#ifdef MVT_ENABLE_SELECTIVE +if (objectIndex == selectedObjectIndex) { + isSelected = 1.0; +} else { + isSelected = 0.0; +} +#endif`,dt.mvt_selective_pars_fragment=`#define GLSLIFY 1 +#ifdef MVT_ENABLE_SELECTIVE +varying float isSelected; +uniform vec4 selectedObjectColor; +uniform float selectedObjectColorMode; +#endif`,dt.mvt_selective_fragment=`#define GLSLIFY 1 +#ifdef MVT_ENABLE_SELECTIVE +if (isSelected == 1.0) { + if (selectedObjectColorMode == 1.) { + gl_FragColor = selectedObjectColor; + } else { + gl_FragColor.rgb = selectedObjectColor.rgb * selectedObjectColor.a + gl_FragColor.rgb * (1.0 - selectedObjectColor.a); + } + +} +#endif`,dt.mvt_keepsize_pars_vertex=`#define GLSLIFY 1 +uniform bool keepSize; +uniform float pixelRatio; +uniform vec2 resolution; +`,dt.mvt_keepsize_vertex=`#define GLSLIFY 1 +vec4 worldPosition = (modelMatrix * vec4(transformed, 1.0)); +float pixelSize = getPixelSize(worldPosition.xyz); +if (keepSize) { + transformed *= pixelSize; +} +`,dt.mvt_emissive_pars_fragment=`#define GLSLIFY 1 +#define MVT_EMISSIVE_SHADER + +uniform vec3 emissive;`,dt.mvt_emissive_fragment=`#define GLSLIFY 1 +#ifdef MVT_EMISSIVE_SHADER + vec4 out_emissive = vec4(emissive.rgb, 1.0); +#endif`,dt.mvt_override_standard_emissivemap_pars_fragment=`#define GLSLIFY 1 +#ifdef USE_EMISSIVEMAP + + uniform sampler2D emissiveMap; + +#endif`,dt.mvt_override_standard_emissivemap_fragment=`#define GLSLIFY 1 +#ifdef USE_EMISSIVEMAP + + vec4 emissiveColor = texture2D( emissiveMap, vUv ); + + // emissiveColor.rgb = emissiveMapTexelToLinear( emissiveColor ).rgb; + + totalEmissiveRadiance *= emissiveColor.rgb; + + +#endif + +if (isEmissive) { + gl_FragColor = vec4(totalEmissiveRadiance, 1.0); + #if defined( TONE_MAPPING ) + gl_FragColor.rgb = toneMapping( gl_FragColor.rgb ); + #endif + return; +}`,dt.mvt_override_basic_color_pars_fragment=`#define GLSLIFY 1 +#ifdef USE_COLOR + + varying vec3 vColor; + +#endif`,dt.mvt_override_basic_color_fragment=`#define GLSLIFY 1 +if (isEmissive) { + gl_FragColor = vec4(emissive, 1.0); + #if defined( TONE_MAPPING ) + gl_FragColor.rgb = toneMapping( gl_FragColor.rgb ); + #endif + return; +} +#ifdef USE_COLOR + + diffuseColor.rgb *= vColor; + +#endif`,dt.mvt_animation_pars_vertex=`#define GLSLIFY 1 +uniform bool animationPeriodOffset; +#ifdef ENABLE_ANIMATION_ROTATE +uniform float animationRotatePeriod; +#endif + +#ifdef ENABLE_ANIMATION_JUMP +uniform float animationJumpPeriod; +uniform float animationJumpHeight; +#endif +`,dt.mvt_animation_vertex=`#define GLSLIFY 1 +#ifdef ENABLE_ANIMATION_ROTATE + float rotateRatio = mod(elapsedTime, animationRotatePeriod) / animationRotatePeriod; + if (animationPeriodOffset) { + rotateRatio = mod(rotateRatio + instancedRandomFactor, 1.0); + } + float rotation = rotateRatio * 6.28; + vec2 rotatedPosition; + rotatedPosition.x = cos( rotation ) * transformed.x - sin( rotation ) * transformed.y; + rotatedPosition.y = sin( rotation ) * transformed.x + cos( rotation ) * transformed.y; + transformed.xy = rotatedPosition; +#endif + +#ifdef ENABLE_ANIMATION_JUMP + float jumpRatio = mod(elapsedTime, animationJumpPeriod) / animationJumpPeriod; + if (animationPeriodOffset) { + jumpRatio = mod(jumpRatio + instancedRandomFactor, 1.0); + } + if (jumpRatio <= 0.5) { + jumpRatio *= 2.0; + jumpRatio = jumpRatio * jumpRatio * jumpRatio; + } else { + jumpRatio = (1.0 - jumpRatio) * 2.0; + jumpRatio = jumpRatio * jumpRatio * jumpRatio; + } + #ifdef USE_SIZE3 + transformed.z += jumpRatio * animationJumpHeight / size3.z; + #else + transformed.z += jumpRatio * animationJumpHeight / size; + #endif + +#endif +`,dt.mvt_mrt_output_pars_fragment=`#define GLSLIFY 1 +#ifndef DISABLE_MRT + layout(location = 1) out highp vec4 pc_fragColor1; + layout(location = 2) out highp vec4 pc_fragColor2; + layout(location = 3) out highp vec4 pc_fragColor3; + // layout(location = 4) out highp vec4 pc_fragColor4; + // layout(location = 5) out highp vec4 pc_fragColor5; + // layout(location = 6) out highp vec4 pc_fragColor6; + // layout(location = 7) out highp vec4 pc_fragColor7; +#endif + +#if defined(MVT_EMISSIVE_UNIFORM) +// 发光颜色自定义 + #if defined(MVT_EMISSIVE_COLOR) + uniform vec3 mvt_emissive; + #endif + uniform float mvt_emissiveIntensity; +#endif`,dt.mvt_mrt_output_fragment=`#define GLSLIFY 1 +#ifndef DISABLE_MRT + // 自定义发光颜色,完全由着色器控制 在着色器中输出 vec4 out_emissive; + #if defined(MVT_EMISSIVE_SHADER) + pc_fragColor1 = out_emissive; + #elif defined(STANDARD) + pc_fragColor1.rgb = totalEmissiveRadiance; + pc_fragColor1.a = pc_fragColor.a; + #elif defined(BASIC) + pc_fragColor1.rgb = emissive; + pc_fragColor1.a = pc_fragColor.a; + // 通过传入的uniform变量颜色自发光 + #elif defined(MVT_EMISSIVE_UNIFORM) + // 发光颜色自定义 + #if defined(MVT_EMISSIVE_COLOR) + pc_fragColor1.rgb = mvt_emissive * mvt_emissiveIntensity; + pc_fragColor1.a = pc_fragColor.a; + #else + pc_fragColor1 = pc_fragColor * mvt_emissiveIntensity; + #endif + #else + pc_fragColor1 = vec4(0.0, 0.0, 0.0, 0.0); + + #endif + + #if defined(STANDARD) + #ifndef FLAT_SHADED + pc_fragColor2 = vec4(packNormalToRGB(vNormal), gl_FragCoord.z); + #else + pc_fragColor2 = vec4(0.0, 0.0, 0.0, 0.0); + #endif + pc_fragColor3 = vec4(1.0 - material.roughness, 0.0, 0.0, 1.0); + #else + #if defined(MVT_FRAG_NORMAL) + pc_fragColor2 = vec4(packNormalToRGB(mvt_frag_normal), 1.0); + #else + pc_fragColor2 = vec4(0.0, 0.0, 0.0, 0.0); + #endif + + float temp_reflectionFactor = 0.0; + #if defined(MVT_FRAG_REFLECTION_FACTOR) + temp_reflectionFactor = mvt_frag_reflectionFactor; + #endif + pc_fragColor3 = vec4(temp_reflectionFactor, 0.0, 0.0, 0.0); + #endif + + // pc_fragColor4 = vec4(1.0, 0.0, 1.0, 1.0); + // pc_fragColor5 = vec4(0.0, 1.0, 0.0, 1.0); + // pc_fragColor6 = vec4(0.0, 1.0, 0.0, 1.0); + // pc_fragColor7 = vec4(0.0, 1.0, 0.0, 1.0); +#endif +`,dt.mvt_nmrt_output_pars_fragment=`#define GLSLIFY 1 +#if defined(MVT_EMISSIVE_UNIFORM) + // 发光颜色自定义 + #if defined(MVT_EMISSIVE_COLOR) + uniform vec3 mvt_emissive; + #endif + uniform float mvt_emissiveIntensity; +#endif +uniform bool isEmissive;`,dt.mvt_nmrt_output_fragment=`#define GLSLIFY 1 +if (isEmissive) { + #if defined(MVT_EMISSIVE_SHADER) + gl_FragColor = out_emissive; + #elif defined(STANDARD) + gl_FragColor.rgb = totalEmissiveRadiance; + #elif defined(BASIC) + gl_FragColor.rgb = emissive; + // 通过传入的uniform变量颜色自发光 + #elif defined(MVT_EMISSIVE_UNIFORM) + // 发光颜色自定义 + #if defined(MVT_EMISSIVE_COLOR) + gl_FragColor.rgb = mvt_emissive * mvt_emissiveIntensity; + #else + gl_FragColor = gl_FragColor * mvt_emissiveIntensity; + #endif + #else + gl_FragColor = vec4(0.0, 0.0, 0.0, 0.0); + #endif +}`,dt.mvt_extra_meshbasic_frag_pars=`#define GLSLIFY 1 +#define BASIC +uniform vec3 emissive;`,dt.mvt_clip_pars_vertex=`#define GLSLIFY 1 +varying vec3 clip_position; +varying mat4 clip_modelMat4; +#ifdef IS_INSTANCE + varying mat4 clip_instanceMat4; +#endif`,dt.mvt_clip_vertex=`#define GLSLIFY 1 +clip_position = position; +clip_modelMat4 = modelMatrix; +#ifdef IS_INSTANCE + clip_instanceMat4 = instanceMatrix; +#endif +`,dt.mvt_clip_pars_fragment=`#define GLSLIFY 1 +varying vec3 clip_position; +varying mat4 clip_modelMat4; +#ifdef IS_INSTANCE + varying mat4 clip_instanceMat4; +#endif + +uniform vec3 test; + +struct ClipParameters { + vec3 u_polygon[3]; + bool isClip; + int clip_type; + vec2 clip_point; + float clip_radius; + float clip_width; + float clip_height; +}; + +uniform ClipParameters mvt_clipParameters; + +bool pointInPolygon(vec3 p, vec3 points[3]) { + bool inside = false; + const int length = 3; + for (int i = 0; i < length; i++) { + float xi = points[i].x; + float yi = points[i].y; + float xj; + float yj; + if(i == 0) { + xj = points[length -1].x; + yj = points[length -1].y; + } + else { + xj = points[i - 1].x; + yj = points[i - 1].y; + } + bool intersect = ((yi > p.y) != (yj > p.y)) + && (p.x < (xj - xi) * (p.y - yi) / (yj - yi) + xi); + if (intersect) { + inside = !inside; + } + } + return inside; +} + +bool pointInCircle(vec2 point, float clip_radius) { + float distance = length(point - mvt_clipParameters.clip_point); + return distance < clip_radius; +} + +bool pointInRect(vec2 point) { + return (point.x > mvt_clipParameters.clip_point.x + && point.x < mvt_clipParameters.clip_point.x + mvt_clipParameters.clip_width + && point.y > mvt_clipParameters.clip_point.y + && point.y < mvt_clipParameters.clip_point.y + mvt_clipParameters.clip_height); +}`,dt.mvt_clip_fragment=`#define GLSLIFY 1 +if (mvt_clipParameters.isClip) { + vec4 worldCoord; + #ifdef IS_INSTANCE + worldCoord = clip_modelMat4 * clip_instanceMat4 * vec4(clip_position, 1.0); + #else + worldCoord = clip_modelMat4 * vec4(clip_position, 1.0); + #endif + bool isInside = false; + if (mvt_clipParameters.clip_type == 0) { + isInside = pointInPolygon(worldCoord.xyz / worldCoord.w, mvt_clipParameters.u_polygon); + } + else if (mvt_clipParameters.clip_type == 1) { + isInside = pointInCircle(worldCoord.xy / worldCoord.w, mvt_clipParameters.clip_radius); + } + else if (mvt_clipParameters.clip_type == 2) { + isInside = pointInRect(worldCoord.xy / worldCoord.w); + } + if (!isInside) { + discard; + } +} +`,ae.prototype.emissiveIntensity=1,oi.basic.uniforms.emissive={value:new tt(0)},oi.basic.uniforms.isEmissive={value:!1};class Nf extends ny{constructor(t){super(t),this.type=be}parse(t){const e=function(l,h){switch(l){case 1:console.error("THREE.RGBELoader Read Error: "+(h||""));break;case 2:console.error("THREE.RGBELoader Write Error: "+(h||""));break;case 3:console.error("THREE.RGBELoader Bad File Format: "+(h||""));break;default:console.error("THREE.RGBELoader: Error: "+(h||""))}return-1},i=function(l,h,c){h=h||1024;let u=l.pos,p=-1,m=0,f="",g=String.fromCharCode.apply(null,new Uint16Array(l.subarray(u,u+128)));for(;0>(p=g.indexOf(` +`))&&m=l.byteLength||!(f=i(l)))return e(1,"no header found");if(!(g=f.match(/^#\?(\S+)/)))return e(3,"bad initial token");for(m.valid|=1,m.programtype=g[1],m.string+=f+` +`;f=i(l),f!==!1;)if(m.string+=f+` +`,f.charAt(0)!=="#"){if((g=f.match(h))&&(m.gamma=parseFloat(g[1])),(g=f.match(c))&&(m.exposure=parseFloat(g[1])),(g=f.match(u))&&(m.valid|=2,m.format=g[1]),(g=f.match(p))&&(m.valid|=4,m.height=parseInt(g[1],10),m.width=parseInt(g[2],10)),2&m.valid&&4&m.valid)break}else m.comments+=f+` +`;return 2&m.valid?4&m.valid?m:e(3,"missing image size specifier"):e(3,"missing format specifier")}(a);if(o!==-1){const l=o.width,h=o.height,c=function(u,p,m){const f=p;if(f<8||f>32767||u[0]!==2||u[1]!==2||128&u[2])return new Uint8Array(u);if(f!==(u[2]<<8|u[3]))return e(3,"wrong scanline width");const g=new Uint8Array(4*p*m);if(!g.length)return e(4,"unable to allocate buffer space");let _=0,v=0;const x=4*f,y=new Uint8Array(4),b=new Uint8Array(x);let S=m;for(;S>0&&vu.byteLength)return e(1);if(y[0]=u[v++],y[1]=u[v++],y[2]=u[v++],y[3]=u[v++],y[0]!=2||y[1]!=2||(y[2]<<8|y[3])!=f)return e(3,"bad rgbe scanline format");let w,C=0;for(;C128;if(T&&(w-=128),w===0||C+w>x)return e(3,"bad scanline data");if(T){const E=u[v++];for(let I=0;I +varying vec2 vUv; +uniform sampler2D map; +void main() { + + gl_FragColor = texture2D(map, vUv); + + #include +} +`,this.depthWrite=!1,this.depthTest=!1,this.envMap=null,jt(this,["isEmissive"]),Object.defineProperties(this,{map:{get:function(){return this.uniforms.map.value},set:function(e){this.uniforms.map.value=e,this.needsUpdate=!0}}})}dispose(){this.uniforms.map.value&&this.uniforms.map.value.dispose(),super.dispose()}}class Uf extends Fr{constructor(t={}){super(),d(this,"isCustomStaticSky",!0),d(this,"_textureIsCube",!1),d(this,"_textureIsHDR",!1),d(this,"_textureURL",null),d(this,"_textureNames",null),d(this,"_affectWorld",!0),d(this,"_isVerticalTexture",null),d(this,"_mesh",null),d(this,"_material",null),d(this,"_sphereGeometry",null),d(this,"_envTexture",null),d(this,"_engine",null),d(this,"_PMREMGenerator",null),t.texture;const e=this._sphereGeometry=new Os(1,32,32);this.isVerticalTexture=t.isVerticalTexture||!1;const i=this._mesh=new lt(e,this._material);i.frustumCulled=!1,i.collisionDisabled=!0,i.scale.setScalar(1e4),i.rotateX(Math.PI/2),this.add(i)}afterAddToEngine(t){super.afterAddToEngine(t),this._engine=t,this._PMREMGenerator=new La(t.renderer),this._loadSkyTexture()}onBeforeScenePrepareRender(t,e,i){this._mesh.position.copy(i.position),super.onBeforeScenePrepareRender(t)}_loadSkyTexture(){if(!this._engine||!this._textureURL)return;let t=null;t=this._textureIsHDR?this._textureIsCube?new xb:new Nf:this._textureIsCube?new iy:new Ie;const e=this._engine.rendering.scene;let i=null;this._textureIsCube?(t.setPath(this._textureURL),i=this._textureNames?this._textureNames:this._textureIsHDR?["nz.HDR","pz.HDR","px.HDR","nx.HDR","py.HDR","ny.HDR"]:["nz.jpg","pz.jpg","px.jpg","nx.jpg","py.jpg","ny.jpg"]):i=this._textureURL,t.load(i,n=>{this._textureIsCube?(this._envTexture=this._PMREMGenerator.fromCubemap(n).texture,this._affectWorld&&(e.environment=this._envTexture)):(n.encoding=3001,this._material.map=n,this._material.needsUpdate=!0,this._isVerticalTexture?e.environment=null:(this._envTexture=this._PMREMGenerator.fromEquirectangular(n).texture,this._affectWorld&&(e.environment=this._envTexture))),this._engine.requestRender()})}get isVerticalTexture(){return this._verticalTexture}set isVerticalTexture(t){t!==this._isVerticalTexture&&(this._material&&this._material.dispose(),this._material=new bb,this._isVerticalTexture=t,this._mesh&&(this._mesh.material=this._material))}get textureURL(){return this._textureURL}set textureURL(t){this._textureURL=t,this._loadSkyTexture()}get affectWorld(){return this._affectWorld}set affectWorld(t){const e=this._engine.rendering.scene;t?(this._affectWorld=!0,e.environment=this._envTexture):(this._affectWorld=!1,e.environment===this._envTexture&&(e.environment=null))}}class kl extends lt{constructor(){super(kl.Geometry,new ae({opacity:0,transparent:!0})),this.isLensflare=!0,this.type="Lensflare",this.frustumCulled=!1,this.renderOrder=1/0;const t=new M,e=new M,i=new lm(16,16,$t),n=new lm(16,16,$t),r=kl.Geometry,a=new hl({uniforms:{scale:{value:null},screenPosition:{value:null}},vertexShader:` + + precision highp float; + + uniform vec3 screenPosition; + uniform vec2 scale; + + attribute vec3 position; + + void main() { + + gl_Position = vec4( position.xy * scale + screenPosition.xy, screenPosition.z, 1.0 ); + + }`,fragmentShader:` + + precision highp float; + + void main() { + + gl_FragColor = vec4( 1.0, 0.0, 1.0, 1.0 ); + + }`,depthTest:!0,depthWrite:!1,transparent:!1}),o=new hl({uniforms:{map:{value:i},scale:{value:null},screenPosition:{value:null}},vertexShader:` + + precision highp float; + + uniform vec3 screenPosition; + uniform vec2 scale; + + attribute vec3 position; + attribute vec2 uv; + + varying vec2 vUV; + + void main() { + + vUV = uv; + + gl_Position = vec4( position.xy * scale + screenPosition.xy, screenPosition.z, 1.0 ); + + }`,fragmentShader:` + + precision highp float; + + uniform sampler2D map; + + varying vec2 vUV; + + void main() { + + gl_FragColor = texture2D( map, vUV ); + + }`,depthTest:!1,depthWrite:!1,transparent:!1}),l=new lt(r,a),h=[],c=Ff.Shader,u=new hl({uniforms:{map:{value:null},occlusionMap:{value:n},color:{value:new tt(16777215)},scale:{value:new j},screenPosition:{value:new M}},vertexShader:c.vertexShader,fragmentShader:c.fragmentShader,blending:xa,transparent:!0,depthWrite:!1}),p=new lt(r,u);this.addElement=function(v){h.push(v)};const m=new j,f=new j,g=new Mm,_=new Lt;this.onBeforeRender=function(v,x,y){v.getCurrentViewport(_);const b=_.w/_.z,S=_.z/2,w=_.w/2;let C=16/_.w;if(m.set(C*b,C),g.min.set(_.x,_.y),g.max.set(_.x+(_.z-16),_.y+(_.w-16)),e.setFromMatrixPosition(this.matrixWorld),e.applyMatrix4(y.matrixWorldInverse),!(e.z>0)&&(t.copy(e).applyMatrix4(y.projectionMatrix),f.x=_.x+t.x*S+S-8,f.y=_.y+t.y*w+w-8,g.containsPoint(f))){v.copyFramebufferToTexture(f,i);let L=a.uniforms;L.scale.value=m,L.screenPosition.value=t,v.renderBufferDirect(y,null,r,a,l,null),v.copyFramebufferToTexture(f,n),L=o.uniforms,L.scale.value=m,L.screenPosition.value=t,v.renderBufferDirect(y,null,r,o,l,null);const T=2*-t.x,E=2*-t.y;for(let I=0,z=h.length;I 0.0f && b > 0.0) return -1.0; + float discr = b*b - c; + if (discr < 0.0) return -1.0; + // Special case: inside sphere, use far discriminant + if (discr > b*b) return (-b + sqrt(discr)); + return -b - sqrt(discr); +} + +// From https://www.shadertoy.com/view/wlBXWK +vec2 rayIntersectSphere2D( + vec3 start, // starting position of the ray + vec3 dir, // the direction of the ray + float radius // and the sphere radius +) { + // ray-sphere intersection that assumes + // the sphere is centered at the origin. + // No intersection when result.x > result.y + float a = dot(dir, dir); + float b = 2.0 * dot(dir, start); + float c = dot(start, start) - (radius * radius); + float d = (b*b) - 4.0*a*c; + if (d < 0.0) return vec2(1e5,-1e5); + return vec2( + (-b - sqrt(d))/(2.0*a), + (-b + sqrt(d))/(2.0*a) + ); +} + +/* + * Same parameterization here. + */ +vec3 getValFromTLUT(sampler2D tex, vec2 bufferRes, vec3 pos, vec3 sunDir) { + float height = length(pos); + vec3 up = pos / height; + float sunCosZenithAngle = dot(sunDir, up); + vec2 uv = vec2(tLUTRes.x*clamp(0.5 + 0.5*sunCosZenithAngle, 0.0, 1.0), + tLUTRes.y*max(0.0, min(1.0, (height - groundRadiusMM)/(atmosphereRadiusMM - groundRadiusMM)))); + uv /= bufferRes; + // return pos; + return texture(tex, uv).rgb; +} +vec3 getValFromMultiScattLUT(sampler2D tex, vec2 bufferRes, vec3 pos, vec3 sunDir) { + float height = length(pos); + vec3 up = pos / height; + float sunCosZenithAngle = dot(sunDir, up); + vec2 uv = vec2(msLUTRes.x*clamp(0.5 + 0.5*sunCosZenithAngle, 0.0, 1.0), + msLUTRes.y*max(0.0, min(1.0, (height - groundRadiusMM)/(atmosphereRadiusMM - groundRadiusMM)))); + uv /= bufferRes; + return texture(tex, uv).rgb; +} + +/* + * Do raymarching : builds skyview lut inside atmoshpere, raymarches directly outside atmosphere +*/ + +vec3 raymarchScattering(sampler2D TLUT, vec2 TLUT_size, sampler2D MSLUT, vec2 MSLUT_size, + vec3 viewPos, + vec3 rayDir, + vec3 sunDir, + float numSteps) { + + + vec2 atmos_intercept = rayIntersectSphere2D(viewPos, rayDir, atmosphereRadiusMM); + float terra_intercept = rayIntersectSphere(viewPos, rayDir, groundRadiusMM); + + float mindist, maxdist; + + if (atmos_intercept.x < atmos_intercept.y){ + // there is an atmosphere intercept! + // start at the closest atmosphere intercept + // trace the distance between the closest and farthest intercept + mindist = atmos_intercept.x > 0.0 ? atmos_intercept.x : 0.0; + maxdist = atmos_intercept.y > 0.0 ? atmos_intercept.y : 0.0; + } else { + // no atmosphere intercept means no atmosphere! + return vec3(0.0); + } + + // if in the atmosphere start at the camera + if (length(viewPos) < atmosphereRadiusMM) mindist=0.0; + + // if there's a terra intercept that's closer than the atmosphere one, + // use that instead! + if (terra_intercept > 0.0){ // confirm valid intercepts + maxdist = terra_intercept; + } + + // start marching at the min dist + vec3 pos = viewPos + mindist * rayDir; + + float cosTheta = dot(rayDir, sunDir); + + float miePhaseValue = getMiePhase(cosTheta); + float rayleighPhaseValue = getRayleighPhase(-cosTheta); + + vec3 lum = vec3(0.0); + vec3 transmittance = vec3(1.0); + float t = 0.0; + for (float i = 0.0; i < numSteps; i += 1.0) { + float newT = ((i + 0.3)/numSteps)*(maxdist-mindist); + float dt = newT - t; + t = newT; + + vec3 newPos = pos + t*rayDir; + + vec3 rayleighScattering, extinction; + float mieScattering; + + getScatteringValues(newPos, rayleighScattering, mieScattering, extinction); + + vec3 sampleTransmittance = exp(-dt*extinction); + + vec3 sunTransmittance = getValFromTLUT(TLUT, TLUT_size, newPos, sunDir); + vec3 psiMS = 0.0*getValFromMultiScattLUT(MSLUT, MSLUT_size, newPos, sunDir); + + vec3 rayleighInScattering = rayleighScattering*(rayleighPhaseValue*sunTransmittance + psiMS); + vec3 mieInScattering = mieScattering*(miePhaseValue*sunTransmittance + psiMS); + vec3 inScattering = (rayleighInScattering + mieInScattering); + + // Integrated scattering within path segment. + vec3 scatteringIntegral = (inScattering - inScattering * sampleTransmittance) / extinction; + + lum += scatteringIntegral*transmittance; + + transmittance *= sampleTransmittance; + } + return lum; +} +`,eu={uniforms:{altitude:{value:2.8},iChannel0:{value:null},iChannelResolution0:{value:[256,256]},iChannel1:{value:null},iChannelResolution1:{value:[256,256]},iChannel2:{value:null},iChannelResolution2:{value:[256,256]},cameraDirection:{value:new M(0,.27,-1)},viewHeight:{value:.002},upDirection:{value:new M(0,1,0)},tWeather:{value:null},mixGrayFactor:{value:0},isEmissive:{value:!1}},vertexShader:`#define GLSLIFY 1 +varying vec3 vWorldPosition; +varying vec2 vUv; +void main() { + vUv = uv; + //vWorldPosition = normalize(vec3(modelMatrix * vec4(position, 1.0)) - cameraPosition); + vWorldPosition = normalize(vec3(position.x, position.y, position.z)); + // vWorldPosition = normalize(position); + // gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0); + // gl_Position = vec4(position.x * 2.0, position.y * 2.0, 1.0, 1.0); + gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0); + gl_Position.z = gl_Position.w; +} +`,fragmentShader:Nl+` +#define GLSLIFY 1 +/* + * Modified version of Andrew Helmer's https://www.shadertoy.com/view/slSXRW + * implementation of Sebastian Hillare's Unreal engine sky-atmosphere + * ... still doesn't implement aerial perspective lut, just makes space views possible +* TODO: replace sunflare with something new that works + allow density profiles, and thicker atmospheres (fails beyond 7.1 right now) + */ + +/* + * Final output basically looks up the value from the skyLUT, and then adds a sun on top, + * does some tonemapping. + */ +#include +varying vec2 vUv; +varying vec3 vWorldPosition; +uniform sampler2D iChannel0; +uniform vec2 iChannelResolution0; +uniform sampler2D iChannel1; +uniform vec2 iChannelResolution1; +uniform sampler2D iChannel2; +uniform vec2 iChannelResolution2; +uniform vec2 iResolution; +uniform vec3 cameraDirection; +uniform vec3 upDirection; + +const vec3 grayColor = vec3(0.5, 0.5, 0.5); + +vec3 getValFromSkyLUT(vec3 rayDir, vec3 sunDir) { + + vec3 viewPos = getViewPos(0.); + float height = length(viewPos); + vec3 up = viewPos / height; + + float horizonAngle = safeacos(sqrt(height * height - groundRadiusMM * groundRadiusMM) / height); + float altitudeAngle = horizonAngle - acos(dot(rayDir, up)); // Between -PI/2 and PI/2 + float azimuthAngle; // Between 0 and 2*PI + + vec3 right = cross(sunDir, up); + vec3 forward = cross(up, right); + + vec3 projectedDir = normalize(rayDir - up*(dot(rayDir, up))); + float sinTheta = dot(projectedDir, right); + float cosTheta = dot(projectedDir, forward); + azimuthAngle = atan(sinTheta, cosTheta) + PI; + + // Non-linear mapping of altitude angle. See Section 5.3 of the paper. + float v = 0.5 + 0.5*sign(altitudeAngle)*sqrt(abs(altitudeAngle)*2.0/PI); + vec2 uv = vec2(azimuthAngle / (2.0*PI), v); + // uv *= skyLUTRes; + // uv /= iChannelResolution1.xy; + + // return rayDir; // vec3(rayDir.x, 0.0, 0.0);; + return texture(iChannel1, uv).rgb; +} + +vec3 jodieReinhardTonemap(vec3 c){ + // From: https://www.shadertoy.com/view/tdSXzD + float l = dot(c, vec3(0.2126, 0.7152, 0.0722)); + vec3 tc = c / (c + 1.0); + return mix(c / (l + 1.0), tc, tc); +} + +vec3 sunWithBloom(vec3 rayDir, vec3 sunDir) { + const float sunSolidAngle = 0.01*PI/180.0; + const float minSunCosTheta = cos(sunSolidAngle); + + float cosTheta = dot(rayDir, sunDir); + if (cosTheta >= minSunCosTheta) return vec3(1.0); + + float offset = minSunCosTheta - cosTheta; + float gaussianBloom = exp(-offset*50000.0)*0.5; + float invBloom = 1.0/(0.02 + offset*300.0)*0.01; + return vec3(gaussianBloom+invBloom); +} + +vec4 toLinear(vec4 sRGB) +{ + bvec4 cutoff = lessThan(sRGB, vec4(0.04045)); + vec4 higher = pow((sRGB + vec4(0.055))/vec4(1.055), vec4(2.4)); + vec4 lower = sRGB/vec4(12.92); + + return mix(higher, lower, cutoff); +} + +void main() { + vec3 sunDir = getSunDir(0.); + vec3 viewPos = getViewPos(0.); + + vec3 camDir = normalize(cameraDirection); + float camFOVWidth = PI/3.0; + // vec2 iResolution = vec2(1102, 1246); + float camWidthScale = 2.0*tan(camFOVWidth/2.0); + float camHeightScale = camWidthScale*iResolution.y/iResolution.x; + + vec3 camRight = normalize(cross(camDir, upDirection)); + vec3 camUp = normalize(cross(camRight, camDir)); + + // camRight = viewMatrix[0].xzy; + // camUp = viewMatrix[1].xzy; + // camDir = viewMatrix[2].xzy; + // vec2 xy = 2.0 * vWorldPosition.xy; // 2.0 * (fragCoord.xy / iResolution.xy) - 1.0; + vec2 xy = vWorldPosition.xy; // 2.0 * (gl_FragCoord.xy / iResolution.xy / 2.0) - 1.0; + // vec3 rayDir = normalize(camDir + camRight*xy.x*camWidthScale + camUp*xy.y*camHeightScale); + vec3 rayDir = normalize(vWorldPosition.xzy); + vec3 lum; + + if (length(viewPos) < atmosphereRadiusMM * 1.0){ + lum = getValFromSkyLUT(rayDir, sunDir); + } else { + + // As mentioned in section 7 of the paper, switch to direct raymarching outside atmosphere + lum = raymarchScattering(iChannel0, iChannelResolution0.xy, + iChannel2, iChannelResolution2.xy, + viewPos, rayDir, sunDir, float(numScatteringSteps)); + + // This little bit of red helps to debug when the rendering switches to pure raymarching + //lum += vec3(1e-3,0.0,0.0); + } + + // Tonemapping and gamma. Super ad-hoc, probably a better way to do this. + lum *= 100.0; + lum = jodieReinhardTonemap(lum); + lum = pow(lum, vec3(1.0/2.2)); + + // lum += sunWithBloom(rayDir, sunDir); + // Bloom should be added at the end, but this is subtle and works well. + vec3 sunLum = sunWithBloom(rayDir, sunDir); + // Use smoothstep to limit the effect, so it drops off to actual zero. + sunLum = smoothstep(0.002, 1.0, sunLum); + if (length(sunLum) > 0.0) { + if (rayIntersectSphere(viewPos, rayDir, groundRadiusMM) >= 0.0) { + sunLum *= 0.0; + } else { + // If the sun value is applied to this pixel, we need to calculate the transmittance to obscure it. + sunLum *= getValFromTLUT(iChannel0, iChannelResolution0.xy, viewPos, sunDir); + } + } + lum += sunLum; + + gl_FragColor = vec4(lum,1.0); + gl_FragColor = toLinear(gl_FragColor); + + // gl_FragColor.rgb = vWorldPosition; + // float viewDistance = sqrt(length(vec3(rayDir.x * 10., 0.1, rayDir.z * 10.))); + // vec2 cloudUV = rayDir.xz * viewDistance; //rayDir.xy * length(rayDir); + // // cloudUV *= mix(1., 10., clamp(sqrt(rayDir.x * rayDir.x + rayDir.y * rayDir.y), 0.0, 1.0)); + // float cloudDensity = texture2D(tWeather, cloudUV * 10.0).x; + // gl_FragColor.xy = (rayDir.xy + 1.0) * 0.5; + // gl_FragColor.z += cloudDensity; + // Peek at the Transmittance LUT + // if (gl_FragCoord.x < skyLUTRes.x && gl_FragCoord.y < skyLUTRes.y) { + // gl_FragColor = vec4(8.*texture(iChannel1, gl_FragCoord.xy/skyLUTRes * 0.2).rgb,1.0); + // } + // fragColor = vec4(100.*texture(iChannel0, fragCoord.xy/iResolution.xy).rgb,1.0); + + // Peek at the Sky View LUT + // gl_FragColor = vec4(8.*texture(iChannel1, gl_FragCoord.xy/iResolution.xy / 2.).rgb,1.0); + + // Peek at the Multiscattering LUT + //fragColor = vec4(100.*texture(iChannel2, fragCoord.xy/iResolution.xy).rgb,1.0); +//if (gl_FragCoord.x < msLUTRes.x && gl_FragCoord.y < msLUTRes.y) { + // gl_FragColor = vec4(100.*texture(iChannel2, gl_FragCoord.xy/iResolution / 2.).rgb,1.0); +// } + // gl_FragColor = vec4(100.*texture(iChannel0, gl_FragCoord.xy/iChannelResolution0 * 0.1).rgb,1.0); + #include + #include +} +`},iu={uniforms:{altitude:{value:2.8},viewHeight:{value:2e-4}},vertexShader:tu,fragmentShader:Nl+` +#define GLSLIFY 1 +// Buffer A generates the Transmittance LUT. Each pixel coordinate corresponds to a height and sun zenith angle, and +// the value is the transmittance from that point to sun, through the atmosphere. +varying vec2 vUv; +vec3 getSunTransmittance(vec3 pos, vec3 sunDir) { + if (rayIntersectSphere(pos, sunDir, groundRadiusMM) > 0.0) { + return vec3(0.0); + } + + float atmoDist = rayIntersectSphere(pos, sunDir, atmosphereRadiusMM); + float t = 0.0; + + vec3 transmittance = vec3(1.0); + for (float i = 0.0; i < sunTransmittanceSteps; i += 1.0) { + float newT = ((i + 0.3)/sunTransmittanceSteps)*atmoDist; + float dt = newT - t; + t = newT; + + vec3 newPos = pos + t*sunDir; + + vec3 rayleighScattering, extinction; + float mieScattering; + getScatteringValues(newPos, rayleighScattering, mieScattering, extinction); + + transmittance *= exp(-dt*extinction); + } + return transmittance; +} + +void main() { + // if (gl_FragCoord.x >= (tLUTRes.x+1.5) || gl_FragCoord.y >= (tLUTRes.y+1.5)) { + // return; + // } + float u = vUv.x; // clamp(gl_FragCoord.x, 0.0, tLUTRes.x-1.0)/tLUTRes.x; + float v = vUv.y; // clamp(gl_FragCoord.y, 0.0, tLUTRes.y-1.0)/tLUTRes.y; + + float sunCosTheta = 2.0*u - 1.0; + float sunTheta = safeacos(sunCosTheta); + float height = mix(groundRadiusMM, atmosphereRadiusMM, v); + + vec3 pos = vec3(0.0, height, 0.0); + vec3 sunDir = normalize(vec3(0.0, sunCosTheta, -sin(sunTheta))); + + gl_FragColor = vec4(getSunTransmittance(pos, sunDir), 1.0); +} +`},nu={uniforms:{altitude:{value:2.8},iChannel0:{value:null},iChannelResolution0:{value:[256,256]},viewHeight:{value:2e-4}},vertexShader:tu,fragmentShader:Nl+` +#define GLSLIFY 1 +// Buffer B is the multiple-scattering LUT. Each pixel coordinate corresponds to a height and sun zenith angle, and +// the value is the multiple scattering approximation (Psi_ms from the paper, Eq. 10). +varying vec2 vUv; +uniform sampler2D iChannel0; +uniform vec2 iChannelResolution0; +vec3 getSphericalDir(float theta, float phi) { + float cosPhi = cos(phi); + float sinPhi = sin(phi); + float cosTheta = cos(theta); + float sinTheta = sin(theta); + return vec3(sinPhi*sinTheta, cosPhi, sinPhi*cosTheta); +} + +// Calculates Equation (5) and (7) from the paper. +void getMulScattValues(vec3 pos, vec3 sunDir, out vec3 lumTotal, out vec3 fms) { + lumTotal = vec3(0.0); + fms = vec3(0.0); + + float invSamples = 1.0/float(sqrtSamples*sqrtSamples); + for (int i = 0; i < sqrtSamples; i++) { + for (int j = 0; j < sqrtSamples; j++) { + // This integral is symmetric about theta = 0 (or theta = PI), so we + // only need to integrate from zero to PI, not zero to 2*PI. + float theta = PI * (float(i) + 0.5) / float(sqrtSamples); + float phi = safeacos(1.0 - 2.0*(float(j) + 0.5) / float(sqrtSamples)); + vec3 rayDir = getSphericalDir(theta, phi); + + float atmoDist = rayIntersectSphere(pos, rayDir, atmosphereRadiusMM); + float groundDist = rayIntersectSphere(pos, rayDir, groundRadiusMM); + float tMax = atmoDist; + if (groundDist > 0.0) { + tMax = groundDist; + } + + float cosTheta = dot(rayDir, sunDir); + + float miePhaseValue = getMiePhase(cosTheta); + float rayleighPhaseValue = getRayleighPhase(-cosTheta); + + vec3 lum = vec3(0.0), lumFactor = vec3(0.0), transmittance = vec3(1.0); + float t = 0.0; + for (float stepI = 0.0; stepI < mulScattSteps; stepI += 1.0) { + float newT = ((stepI + 0.3)/mulScattSteps)*tMax; + float dt = newT - t; + t = newT; + + vec3 newPos = pos + t*rayDir; + + vec3 rayleighScattering, extinction; + float mieScattering; + getScatteringValues(newPos, rayleighScattering, mieScattering, extinction); + + vec3 sampleTransmittance = exp(-dt*extinction); + + // Integrate within each segment. + vec3 scatteringNoPhase = rayleighScattering + mieScattering; + vec3 scatteringF = (scatteringNoPhase - scatteringNoPhase * sampleTransmittance) / extinction; + lumFactor += transmittance*scatteringF; + + // This is slightly different from the paper, but I think the paper has a mistake? + // In equation (6), I think S(x,w_s) should be S(x-tv,w_s). + vec3 sunTransmittance = getValFromTLUT(iChannel0, iChannelResolution0.xy, newPos, sunDir); + + vec3 rayleighInScattering = rayleighScattering*rayleighPhaseValue; + float mieInScattering = mieScattering*miePhaseValue; + vec3 inScattering = (rayleighInScattering + mieInScattering)*sunTransmittance; + + // Integrated scattering within path segment. + vec3 scatteringIntegral = (inScattering - inScattering * sampleTransmittance) / extinction; + + lum += scatteringIntegral*transmittance; + transmittance *= sampleTransmittance; + } + + if (groundDist > 0.0) { + vec3 hitPos = pos + groundDist*rayDir; + if (dot(pos, sunDir) > 0.0) { + hitPos = normalize(hitPos)*groundRadiusMM; + lum += transmittance*groundAlbedo*getValFromTLUT(iChannel0, iChannelResolution0.xy, hitPos, sunDir); + } + } + + fms += lumFactor*invSamples; + lumTotal += lum*invSamples; + } + } +} + +void main() { + // if (fragCoord.x >= (msLUTRes.x+1.5) || fragCoord.y >= (msLUTRes.y+1.5)) { + // return; + // } + float u = vUv.x; // clamp(fragCoord.x, 0.0, msLUTRes.x-1.0)/msLUTRes.x; + float v = vUv.y; // clamp(fragCoord.y, 0.0, msLUTRes.y-1.0)/msLUTRes.y; + + float sunCosTheta = 2.0*u - 1.0; + float sunTheta = safeacos(sunCosTheta); + float height = mix(groundRadiusMM, atmosphereRadiusMM, v); + + vec3 pos = vec3(0.0, height, 0.0); + vec3 sunDir = normalize(vec3(0.0, sunCosTheta, -sin(sunTheta))); + + vec3 lum, f_ms; + getMulScattValues(pos, sunDir, lum, f_ms); + + // Equation 10 from the paper. + vec3 psi = lum / (1.0 - f_ms); + gl_FragColor = vec4(1. * psi, 1.0); + // gl_FragColor = vec4(vUv/ 1., 0.0, 1.0); +} +`},su={uniforms:{altitude:{value:2.8},iChannel0:{value:null},iChannelResolution0:{value:[256,256]},iChannel1:{value:null},iChannelResolution1:{value:[256,256]},viewHeight:{value:2e-4},mixGrayFactor:{value:0}},vertexShader:tu,fragmentShader:Nl+` +#define GLSLIFY 1 +// Buffer C calculates the actual sky-view! It's a lat-long map (or maybe altitude-azimuth is the better term), +// but the latitude/altitude is non-linear to get more resolution near the horizon. +varying vec2 vUv; +uniform sampler2D iChannel0; +uniform vec2 iChannelResolution0; +uniform sampler2D iChannel1; +uniform vec2 iChannelResolution1; +uniform float mixGrayFactor; + +void main() { + // if (fragCoord.x >= (skyLUTRes.x+1.5) || fragCoord.y >= (skyLUTRes.y+1.5)) { + // return; + // } + float u = vUv.x; // clamp(fragCoord.x, 0.0, skyLUTRes.x-1.0)/skyLUTRes.x; + float v = vUv.y; // clamp(fragCoord.y, 0.0, skyLUTRes.y-1.0)/skyLUTRes.y; + + float azimuthAngle = (u - 0.5)*2.0*PI; + + // Non-linear mapping of altitude. See Section 5.3 of the paper. + + float adjV; + if (v < 0.5) { + float coord = 1.0 - 2.0*v; + adjV = -coord*coord; + } else { + float coord = v*2.0 - 1.0; + adjV = coord*coord; + } + + vec3 viewPos = getViewPos(0.); + + float height = length(viewPos); vec3 up = viewPos / height; + float horizonAngle = safeacos(sqrt(height * height - groundRadiusMM * groundRadiusMM) / height) - 0.5*PI; + float altitudeAngle = adjV*0.5*PI - horizonAngle; + + float cosAltitude = cos(altitudeAngle); + vec3 rayDir = vec3(cosAltitude*sin(azimuthAngle), sin(altitudeAngle), -cosAltitude*cos(azimuthAngle)); + + float sunAltitude = (0.5*PI) - acos(dot(getSunDir(0.), up)); + vec3 sunDir = vec3(0.0, sin(sunAltitude), -cos(sunAltitude)); + + vec3 lum = raymarchScattering(iChannel0, iChannelResolution0.xy, + iChannel1, iChannelResolution1.xy, + viewPos, rayDir, sunDir, float(numScatteringSteps)); + gl_FragColor = vec4(lum, 1.0); + + if (mixGrayFactor > 0.0) { + lum = gl_FragColor.xyz; + vec3 gray = vec3((lum.x + lum.y + lum.z) / 3.0); + lum = mix(lum, gray, mixGrayFactor); + gl_FragColor = vec4(lum, 1.0); + } +} +`};class Mb extends lt{constructor(){super(),d(this,"_fsQuad"),d(this,"_hasPaintedScatterBuffer"),d(this,"_scatteringMaterial"),d(this,"_scatteringRenderTarget"),d(this,"_transmittanceMaterial"),d(this,"_transmittanceRenderTarget"),d(this,"_viewMaterial"),d(this,"_viewRenderTarget"),this.geometry=new Os(1,32,32),this.frustumCulled=!1;const t=[256,64],e=[32,32],i=[400,400],n=this._transmittanceRenderTarget=new de(t[0],t[1],{type:be,depthBuffer:!1});n.texture.name="SkyAtomsphere.transmittance",this._transmittanceMaterial=new Zt({uniforms:pt.clone(iu.uniforms),vertexShader:iu.vertexShader,fragmentShader:iu.fragmentShader});const r=this._scatteringRenderTarget=new de(e[0],e[1],{type:be,depthBuffer:!1});r.texture.name="SkyAtomsphere.scattering",this._scatteringMaterial=new Zt({uniforms:pt.clone(nu.uniforms),vertexShader:nu.vertexShader,fragmentShader:nu.fragmentShader}),this._scatteringMaterial.uniforms.iChannel0.value=n.texture,this._scatteringMaterial.uniforms.iChannelResolution0.value=[t[0],t[1]],this._fsQuad=new Vr(null);const a=this._viewRenderTarget=new de(i[0],i[1],{type:be,depthBuffer:!1});a.texture.name="SkyAtomsphere.view";const o=this._viewMaterial=new Zt({uniforms:pt.clone(su.uniforms),vertexShader:su.vertexShader,fragmentShader:su.fragmentShader});o.uniforms.iChannel0.value=n.texture,o.uniforms.iChannelResolution0.value=[t[0],t[1]],o.uniforms.iChannel1.value=r.texture,o.uniforms.iChannelResolution1.value=[e[0],e[1]];const l=this.material=new Zt({uniforms:pt.clone(eu.uniforms),vertexShader:eu.vertexShader,fragmentShader:eu.fragmentShader,side:ce});l.uniforms.iChannel0.value=n.texture,l.uniforms.iChannelResolution0.value=[t[0],t[1]],l.uniforms.iChannel2.value=r.texture,l.uniforms.iChannelResolution2.value=[e[0],e[1]],l.uniforms.iChannel1.value=a.texture,l.uniforms.iChannelResolution1.value=[i[0],i[1]],Object.defineProperties(this.material,{isEmissive:{get:function(){return this.uniforms.isEmissive.value},set:function(h){this.uniforms.isEmissive.value=h}}}),this._fsQuad=new Vr(null),this.scale.multiplyScalar(1e4),this.altitude=0}onBeforeRender(t,e,i){}updateRenderTargets(t,e){const i=this._fsQuad;this._hasPaintedScatterBuffer||(i.material=this._transmittanceMaterial,t.setRenderTarget(this._transmittanceRenderTarget),t.clear(),i.render(t),i.material=this._scatteringMaterial,t.setRenderTarget(this._scatteringRenderTarget),t.clear(),i.render(t),this._hasPaintedScatterBuffer=!0),i.material=this._viewMaterial,t.setRenderTarget(this._viewRenderTarget),t.clear(),i.render(t),t.setRenderTarget(null)}dispose(){this.geometry.dispose(),this._transmittanceRenderTarget.dispose(),this._scatteringRenderTarget.dispose(),this._viewRenderTarget.dispose(),this._transmittanceMaterial.dispose(),this._scatteringMaterial.dispose(),this._viewMaterial.dispose(),this.material.dispose(),this._fsQuad.dispose()}get altitude(){return this.material.uniforms.altitude.value}set altitude(t){this._transmittanceMaterial.uniforms.altitude.value=t,this._scatteringMaterial.uniforms.altitude.value=t,this._viewMaterial.uniforms.altitude.value=t,this.material.uniforms.altitude.value=t}get mixGrayFactor(){return this._viewMaterial.uniforms.mixGrayFactor.value}set mixGrayFactor(t){this._viewMaterial.uniforms.mixGrayFactor.value=t}}const wb={weatherMap:{value:null},noiseMap:{value:null},blueNoiseMap:{value:null},shapeNoiseMap:{value:null},coverage:{value:.8},density:{value:6},time:{value:0},speed:{value:1},sizeScale:{value:.5},skyMap:{value:null},sunLightMap:{value:null},skyAltitude:{value:2.8},thicknessBias:{value:0},thicknessScale:{value:1},mixGrayFactor:{value:0},sunColor:{value:[1,.95,.85]},isEmissive:{value:!1}},Sb=`#define GLSLIFY 1 +varying vec3 vWorldPosition; +varying vec2 vUv; +void main() { + vUv = uv; + // vWorldPosition = normalize(position); + // gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0); + // gl_Position = vec4(position.x * 2.0, position.y * 2.0, 1.0, 1.0); + float skyZ = mix(0.1, 0.002, clamp(length(position.xy) * 1.0, 0.0, 1.0)); + // float skyZ = mix(0.1, 0.002, length(position.xy)); + vWorldPosition = (modelMatrix * vec4(position.x, position.y, skyZ, 1.0)).xyz - vec3(cameraPosition.xy, cameraPosition.z); + vWorldPosition = normalize(vWorldPosition); + + vec3 worldPosition = (modelMatrix * vec4(position, 1.0)).xyz; + worldPosition -= cameraPosition; + float disToCenter = length(worldPosition.xy); + float c = sqrt(pow(6300000.0, 2.0) + pow(disToCenter, 2.0)); + worldPosition.z = clamp(6300400.0 - c, 0.0, 400.0); + vWorldPosition = worldPosition / 1000.0; + // float radiusZ = clamp(sqrt(0.5 * 0.5 - pow(length(position.xy), 2.0)), 0.0, 0.5); + // vWorldPosition.z = clamp(sqrt(1.0 - pow(length(vWorldPosition.xy), 2.0)), 0.0, 1.0); + // vWorldPosition = normalize(vec3(position.x, position.y, skyZ * 1.)); + // gl_Position = projectionMatrix * modelViewMatrix * vec4(vec3(position.x, position.y, skyZ), 1.0); + gl_Position = projectionMatrix * viewMatrix * vec4(worldPosition + vec3(cameraPosition.xyz), 1.0); + // gl_Position.z = gl_Position.w; +} +`,Tb=`#define GLSLIFY 1 +#include +varying vec2 vUv; +varying vec3 vWorldPosition; + +uniform sampler2D weatherMap; +uniform sampler2D noiseMap; +uniform sampler2D blueNoiseMap; +uniform sampler2D shapeNoiseMap; +uniform sampler2D skyMap; +uniform sampler2D sunLightMap; +uniform float coverage; +uniform float time; +uniform float speed; +uniform float sizeScale; +// uniform float thinkness; +uniform float thicknessBias; +uniform float thicknessScale; +uniform float density; +uniform vec3 sunColor; + +uniform float skyAltitude; +uniform float mixGrayFactor; +const float groundRadiusMM = 6.371; + +const float cloud_inscatter = 0.2; +const float cloud_silver_intensity = 2.5; +const float cloud_silver_exponent = 2.0; +const float cloud_outscatter = 0.1; +const float cloud_in_vs_outscatter = 0.5; +const float cloud_beer = 1.0; +const float cloud_attuention_clampval = 0.2; +const float cloud_outscatter_ambient = 0.9; +const float cloud_ambient_minimum = 0.2; + +float safeacos(const float x) { + return acos(clamp(x, -1.0, 1.0)); +} + +vec3 getSunDir() { + return normalize(vec3(cos(skyAltitude), sin(skyAltitude), 0.0)); +} + +vec3 getValFromSkyLUT(vec3 rayDir, vec3 sunDir) { + + vec3 viewPos = vec3(0.0, groundRadiusMM + 0.0004, 0.0); + float height = length(viewPos); + vec3 up = viewPos / height; + + float horizonAngle = safeacos(sqrt(height * height - groundRadiusMM * groundRadiusMM) / height); + float altitudeAngle = horizonAngle - acos(dot(rayDir, up)); // Between -PI/2 and PI/2 + float azimuthAngle; // Between 0 and 2*PI + + vec3 right = cross(sunDir, up); + vec3 forward = cross(up, right); + + vec3 projectedDir = normalize(rayDir - up*(dot(rayDir, up))); + float sinTheta = dot(projectedDir, right); + float cosTheta = dot(projectedDir, forward); + azimuthAngle = atan(sinTheta, cosTheta) + PI; + + // Non-linear mapping of altitude angle. See Section 5.3 of the paper. + float v = 0.5 + 0.5*sign(altitudeAngle)*sqrt(abs(altitudeAngle)*2.0/PI); + vec2 uv = vec2(azimuthAngle / (2.0*PI), v); + + // return rayDir; // vec3(rayDir.x, 0.0, 0.0); + return texture(skyMap, uv).rgb; +} + +vec3 jodieReinhardTonemap(vec3 c){ + // From: https://www.shadertoy.com/view/tdSXzD + float l = dot(c, vec3(0.2126, 0.7152, 0.0722)); + vec3 tc = c / (c + 1.0); + return mix(c / (l + 1.0), tc, tc); +} + +vec4 toLinear(vec4 sRGB) +{ + bvec4 cutoff = lessThan(sRGB, vec4(0.04045)); + vec4 higher = pow((sRGB + vec4(0.055))/vec4(1.055), vec4(2.4)); + vec4 lower = sRGB/vec4(12.92); + + return mix(higher, lower, cutoff); +} + +float remap(float v, float l0, float h0, float ln, float hn) { + return ln + (v - l0) * (hn - ln) / (h0 - l0); +} + +const float slice = 1.0 / 128.0; +vec4 texture3DNoise(sampler2D noiseTexture, vec2 uv, float z_percent) { + uv = mod(uv, 1.0); + uv.x *= slice; + float num = float(int(z_percent / slice)); + float alpha = mod(z_percent, slice) / slice; + vec4 val1 = texture2D(noiseTexture, vec2(uv.x + num * slice, uv.y)); + vec4 val2 = texture2D(noiseTexture, vec2(uv.x + (num + 1.0) * slice, uv.y)); + return mix(val1, val2, alpha); +} + +float getCloud(vec3 pos) { + vec2 cloudUV = pos.xy * 0.1; + float uvOffset = time / 1000000.0 * speed; + vec4 weatherColor = texture2D(weatherMap, cloudUV * sizeScale + uvOffset); + float wmc = max(weatherColor.x, saturate(coverage - 0.5) * weatherColor.y * 2.0); + float ph = clamp((pos.z - 0.4) / 0.6, 0.0, 1.0); + float srb = saturate(remap(ph, 0.0, 0.007, 0.0, 1.0)); + float wh = 1.0; // weatherColor.z; + float srt = saturate(remap(ph, wh * 0.2, wh, 1.0, 0.0)); + float sa = srb * srt; + float drb = ph * saturate(remap(ph, 0.0, 0.15, 0.0, 1.0)); + float drt = saturate(remap(ph, 0.9, 1.0, 1.0, 0.0)); + float da = density * drb * drt /** weatherColor.w*/ * 2.0; + vec4 noiseColor = texture2D(noiseMap, (cloudUV + uvOffset) * 10.0); + float sn_sample = remap(noiseColor.x, noiseColor.y * 0.625 + noiseColor.z * 0.25 + 1.0 * 0.125 - 1.0, 1.0, 0.0, 1.0); + // vec4 texture3DNoise = texture3DNoise(shapeNoiseMap, cloudUV, ph); + // float sn_sample = texture3DNoise.x; + float sn = saturate(remap(sn_sample * sa, 1.0 - coverage * wmc, 1.0, 0.0, 1.0)) * da; + return sn; +} + +float HG(float cos_angle, float g) { + float g2 = g * g; + float val = ((1.0 - g2) / pow( 1.0 + g2 - 2.0 * g * cos_angle, 1.5)) / 4.0 * 3.1415; + return val; +} +float InOutScatter(float cos_angle) { + float first_hg = HG(cos_angle, cloud_inscatter); + float second_hg = cloud_silver_intensity * pow(saturate(cos_angle), cloud_silver_exponent); + float in_scatter_hg = max(first_hg, second_hg); + float out_scatter_hg = HG(cos_angle, -cloud_outscatter); + return mix(in_scatter_hg, out_scatter_hg, cloud_in_vs_outscatter); +} +float Attenuation(float density_to_sun, float cos_angle){ + float prim = exp(-cloud_beer * density_to_sun); + float scnd = exp(-cloud_beer * cloud_attuention_clampval) * 0.7; + // reduce clamping while facing the sun + float checkval = remap(cos_angle, 0.0, 1.0, scnd, scnd * 0.5); + return max(checkval, prim); +} +float OutScatterAmbient(float density,float percent_height){ + float depth = cloud_outscatter_ambient * pow(density ,remap(percent_height, 0.3, 0.9, 0.5, 1.0)); + float vertical = pow(saturate(remap(percent_height, 0.0, 0.3, 0.8, 1.0)), 0.8); + float out_scatter = depth * vertical; + out_scatter = 1.0 - saturate(out_scatter); + return out_scatter; +} + +vec3 CalculateLight(vec3 sunLightColor, float density, float density_to_sun, float + cos_angle , float percent_height, float bluenoise, float dist_along_ray ){ + float attenuation_prob = Attenuation(density_to_sun, cos_angle); + float ambient_out_scatter = OutScatterAmbient(density,percent_height); + // be calculated once for each march but gave no/tiny perf improvements. + float sun_highlight = InOutScatter(cos_angle); + float attenuation = attenuation_prob * sun_highlight * ambient_out_scatter; + //Ambient min (dist_along_ray used so that far away regions (huge steps ) arent calculated (wrongly)) + attenuation = max(density * cloud_ambient_minimum * (1.0 - pow(saturate(dist_along_ray/4000.0), 2.0)), attenuation); + // combat banding a bit more + attenuation += bluenoise * 0.003; + vec3 ret_color = attenuation * sunLightColor; + return ret_color; +} + +#ifndef MVT_CLOUD_VOLUMETRIC +vec4 computePlanarCloud() { + vec2 cloudUV = vWorldPosition.xy * 0.1; + float uvOffset = time / 1000000.0 * speed; + vec4 weatherColor = texture2D(weatherMap, cloudUV * sizeScale + uvOffset); + float wmc = max(weatherColor.x, saturate(coverage - 0.5) * weatherColor.y * 2.0); + // clouDensity = max(clouDensity, texture2D(noiseMap, cloudUV).x); + // SNsample = R(snr, (sng ×0.625+snb ×0.25+sna ×0.125)−1, 1, 0, 1) + vec4 noiseColor = texture2D(noiseMap, (cloudUV + uvOffset) * 10.0); + float sn_sample = remap(noiseColor.x, noiseColor.y * 0.625 + noiseColor.z * 0.25 + 1.0 * 0.125 - 1.0, 1.0, 0.0, 1.0); + float sn = saturate(remap(sn_sample, 1.0 - coverage * wmc, 1.0, 0.0, 1.0)); + + float thickness = clamp(sn * thicknessScale + thicknessBias, 0.0, 1.0); + float cloudAlpha = clamp(thickness, 0.0, 1.0); // remap(clamp(sn, 0.0, 1. - thickness), 0.0, 1. - thickness, 0.0, 1.0); + vec3 cloudColor = vec3(remap(clamp(cloudAlpha, 0.0, 1.0), 0.0, 1.0, 1.0, 0.6)); + + // 太阳散射,根据厚度发生变化 + vec3 sunLightColor = texture(sunLightMap, vec2((1.0 + sin(skyAltitude)) * 0.5, 0.5)).xyz; + if (mixGrayFactor > 0.0) { + vec3 gray = vec3((sunLightColor.x + sunLightColor.y + sunLightColor.z) / 3.0); + sunLightColor = mix(sunLightColor, gray, mixGrayFactor); + } + cloudColor = sunLightColor; + cloudColor = sunLightColor * (remap(thickness, 0.0, 1.0, 1.5, 0.5)); + + // 天空大气颜色 + vec3 sunDir = getSunDir(); + vec3 rayDir = normalize(vWorldPosition.xzy); + + cloudColor *= clamp(remap(dot(rayDir, sunDir), -1.0, 1.0, 0.75, 2.0), 0.75, 2.0); + + vec3 atmosphereColor = getValFromSkyLUT(rayDir, sunDir); + atmosphereColor *= 100.0; + atmosphereColor = jodieReinhardTonemap(atmosphereColor); + atmosphereColor = pow(atmosphereColor, vec3(1.0/2.2)); + atmosphereColor = toLinear(vec4(atmosphereColor, 1.0)).xyz; + + float atmosphereColorFactor = remap(clamp(thickness, 0.5, 1.0), 0.5, 1.0, 0.0, 1.0); + atmosphereColorFactor = 0.5 - abs(0.5 - atmosphereColorFactor); + cloudColor = mix(cloudColor, atmosphereColor, atmosphereColorFactor); + + // 和天空大气混合 + cloudColor = mix(cloudColor, atmosphereColor, 1.0 - clamp((vWorldPosition.z + 0.02) * 10.0, 0.0, 1.0)); + + // cloudColor = atmosphereColor; // lum; + // vec3 cloudColor = texture2D(skyMap, cloudUV * 2.0).xyz * 10.0; + return vec4(cloudColor, cloudAlpha); +} +#endif + +#ifdef MVT_CLOUD_VOLUMETRIC +vec4 computeVolumetricCloud() { + // vec2 cloudUV = vUv * 1.0; + // vec2 cloudUV = vWorldPosition.xy * 0.1; + // float uvOffset = time / 1000000.0 * speed; + // vec4 weatherColor = texture2D(weatherMap, cloudUV * sizeScale + uvOffset); + // float wmc = max(weatherColor.x, saturate(coverage - 0.5) * weatherColor.y * 2.0); + // // clouDensity = max(clouDensity, texture2D(noiseMap, cloudUV).x); + // // SNsample = R(snr, (sng ×0.625+snb ×0.25+sna ×0.125)−1, 1, 0, 1) + // vec4 noiseColor = texture2D(noiseMap, (cloudUV + uvOffset) * 10.0); + // float sn_sample = remap(noiseColor.x, noiseColor.y * 0.625 + noiseColor.z * 0.25 + 1.0 * 0.125 - 1.0, 1.0, 0.0, 1.0); + // float sn = saturate(remap(sn_sample, 1.0 - coverage * wmc, 1.0, 0.0, 1.0)); + + vec3 sunDir = getSunDir(); + vec3 direction = normalize(vWorldPosition); + vec3 samplePos = vec3(vWorldPosition.xy, 0.4); + float directDensity = 0.0; + float sunDensity = 0.0; + vec3 cloudColor = vec3(0.0); + + vec3 sunLightColor = texture(sunLightMap, vec2((1.0 + sin(skyAltitude)) * 0.5, 0.5)).xyz; + if (mixGrayFactor > 0.0) { + vec3 gray = vec3((sunLightColor.x + sunLightColor.y + sunLightColor.z) / 3.0); + sunLightColor = mix(sunLightColor, gray, mixGrayFactor); + } + float step = 0.6 / float(MVT_NUM_SAMPLE_STEPS); + vec2 cloudUV = samplePos.xy * 0.1; + for (int i = 0; i < MVT_NUM_SAMPLE_STEPS; i += 1) { + float blueNoise = (texture2D(blueNoiseMap, cloudUV) - 0.5).x * 0.1; + samplePos += direction * step * (1.0 + blueNoise); + float directSampleInfo = getCloud(samplePos); + directDensity += directSampleInfo; + vec3 sunPos = samplePos + sunDir * 0.05; + float sunSampleInfo = getCloud(sunPos); + sunDensity += directSampleInfo; + sunDensity += sunSampleInfo; + + float ph = clamp((samplePos.z - 0.4) / 0.6, 0.0, 1.0); + cloudColor += CalculateLight(sunLightColor, (1.0 - directDensity) * 1.0, sunDensity * 0.5, dot(direction, sunDir.xzy), ph, 0.1, 10.0); + + // cloudColor += sunColor * clamp(1.0 - directSampleInfo - sunSampleInfo, 0.0, 1.0); + // cloudColor += CalculateLight(sunLightColor, 1.0 - directSampleInfo, sunSampleInfo, dot(direction, sunDir.xzy), ph, 0.1, float(i)); + if (directDensity > 1.0) { + directDensity = 1.0; + break; + } + } + // float densityScale = 1.0 / sampleSteps * 20.0; + // float thickness = clamp(sn * thicknessScale + thicknessBias, 0.0, 1.0); + // directDensity /= float(MVT_NUM_SAMPLE_STEPS); + sunDensity /= float(MVT_NUM_SAMPLE_STEPS); + // cloudColor += CalculateLight(sunLightColor, directDensity, sunDensity, dot(direction, sunDir.xzy), 0.2, 0.1, 10.0); + float cloudAlpha = clamp(directDensity, 0.0, 1.0); // remap(clamp(sn, 0.0, 1. - thickness), 0.0, 1. - thickness, 0.0, 1.0); + // cloudColor = sunColor * dot(direction, sunDir) * exp(-0.3 * clamp(sunDensity, 0.0, 1.0)); + // cloudColor = jodieReinhardTonemap(cloudColor); + + + return vec4(cloudColor, cloudAlpha); +} +#endif + +void main() { + #ifdef MVT_CLOUD_VOLUMETRIC + gl_FragColor = computeVolumetricCloud(); + #else + gl_FragColor = computePlanarCloud(); + #endif + #include + #include +} +`;class Cb extends lt{constructor(){super(),this.geometry=new Os(2,12,12,0,2*Math.PI,0,Math.PI),this.frustumCulled=!1,(this.material=new Zt({uniforms:pt.clone(wb),vertexShader:Sb,fragmentShader:Tb,side:ce,transparent:!0,defines:{MVT_NUM_SAMPLE_STEPS:4}})).uniforms.sunLightMap.value=this.createGradientMap(),Object.defineProperties(this.material,{isEmissive:{get:function(){return this.uniforms.isEmissive.value},set:function(t){this.uniforms.isEmissive.value=t}}}),this.rotateX(Math.PI/2),this.scale.multiplyScalar(7e4)}createGradientMap(){let t=document.createElement("canvas");t.width=64,t.height=2;let e=t.getContext("2d"),i=e.createLinearGradient(0,0,64,0);return i.addColorStop(0,"rgb(0,0,0)"),i.addColorStop(.45,"rgb(0,0,0)"),i.addColorStop(.5,"rgb(200,30,10)"),i.addColorStop(.52,"rgb(220,80,20)"),i.addColorStop(.58,"rgb(255,255,255)"),i.addColorStop(1,"rgb(255,255,255)"),e.fillStyle=i,e.fillRect(0,0,64,2),this._cachedGradientMap=new Le(t),this._cachedGradientMap}dispose(){this._cachedGradientMap.dispose()}get speed(){return this.material.uniforms.speed.value}set speed(t){this.material.uniforms.speed.value=t}get coverage(){return this.material.uniforms.coverage.value}set coverage(t){this.material.uniforms.coverage.value=t}get density(){return this.material.uniforms.density.value}set density(t){this.material.uniforms.density.value=t}get sizeScale(){return this.material.uniforms.sizeScale.value}set sizeScale(t){this.material.uniforms.sizeScale.value=t}get skyAltitude(){return this.material.uniforms.skyAltitude.value}set skyAltitude(t){this.material.uniforms.skyAltitude.value=t}get thicknessBias(){return this.material.uniforms.thicknessBias.value}set thicknessBias(t){this.material.uniforms.thicknessBias.value=t}get thicknessScale(){return this.material.uniforms.thicknessScale.value}set thicknessScale(t){this.material.uniforms.thicknessScale.value=t}get mixGrayFactor(){return this.material.uniforms.mixGrayFactor.value}set mixGrayFactor(t){this.material.uniforms.mixGrayFactor.value=t}get sampleSteps(){return this.material.defines.MVT_NUM_SAMPLE_STEPS}set sampleSteps(t){t!==this.material.defines.MVT_NUM_SAMPLE_STEPS&&(this.material.defines.MVT_NUM_SAMPLE_STEPS=parseInt(t,10),this.material.needsUpdate=!0)}get volumetric(){return this.material.defines.MVT_CLOUD_VOLUMETRIC!==void 0}set volumetric(t){t?this.material.defines.MVT_CLOUD_VOLUMETRIC="":delete this.material.defines.MVT_CLOUD_VOLUMETRIC,this.material.needsUpdate=!0}}new tt(16777215);class ea extends Kn{constructor(t){super(t),this.dracoLoader=null,this.ktx2Loader=null,this.meshoptDecoder=null,this.pluginCallbacks=[],this.register(function(e){return new Db(e)}),this.register(function(e){return new Ub(e)}),this.register(function(e){return new Fb(e)}),this.register(function(e){return new Ib(e)}),this.register(function(e){return new Ob(e)}),this.register(function(e){return new zb(e)}),this.register(function(e){return new kb(e)}),this.register(function(e){return new Rb(e)}),this.register(function(e){return new Nb(e)}),this.register(function(e){return new Lb(e)}),this.register(function(e){return new Ab(e)}),this.register(function(e){return new Bb(e)})}load(t,e,i,n){const r=this;let a;a=this.resourcePath!==""?this.resourcePath:this.path!==""?this.path:Ns.extractUrlBase(t),this.manager.itemStart(t);const o=function(h){n?n(h):console.error(h),r.manager.itemError(t),r.manager.itemEnd(t)},l=new cl(this.manager);l.setPath(this.path),l.setResponseType("arraybuffer"),l.setRequestHeader(this.requestHeader),l.setWithCredentials(this.withCredentials),l.load(t,function(h){try{r.parse(h,a,function(c){e(c),r.manager.itemEnd(t)},o)}catch(c){o(c)}},i,o)}setDRACOLoader(t){return this.dracoLoader=t,this}setDDSLoader(){throw new Error('THREE.GLTFLoader: "MSFT_texture_dds" no longer supported. Please update to "KHR_texture_basisu".')}setKTX2Loader(t){return this.ktx2Loader=t,this}setMeshoptDecoder(t){return this.meshoptDecoder=t,this}register(t){return this.pluginCallbacks.indexOf(t)===-1&&this.pluginCallbacks.push(t),this}unregister(t){return this.pluginCallbacks.indexOf(t)!==-1&&this.pluginCallbacks.splice(this.pluginCallbacks.indexOf(t),1),this}parse(t,e,i,n){let r;const a={},o={};if(typeof t=="string")r=t;else if(Ns.decodeText(new Uint8Array(t,0,4))===Bf){try{a[Nt.KHR_BINARY_GLTF]=new jb(t)}catch(c){return void(n&&n(c))}r=a[Nt.KHR_BINARY_GLTF].content}else r=Ns.decodeText(new Uint8Array(t));const l=JSON.parse(r);if(l.asset===void 0||l.asset.version[0]<2)return void(n&&n(new Error("THREE.GLTFLoader: Unsupported asset. glTF versions >=2.0 are supported.")));const h=new oM(l,{path:e||this.resourcePath||"",crossOrigin:this.crossOrigin,requestHeader:this.requestHeader,manager:this.manager,ktx2Loader:this.ktx2Loader,meshoptDecoder:this.meshoptDecoder});h.fileLoader.setRequestHeader(this.requestHeader);for(let c=0;c=0&&o[u]===void 0&&console.warn('THREE.GLTFLoader: Unknown extension "'+u+'".')}}h.setExtensions(a),h.setPlugins(o),h.parse(i,n)}parseAsync(t,e){const i=this;return new Promise(function(n,r){i.parse(t,e,n,r)})}}function Eb(){let s={};return{get:function(t){return s[t]},add:function(t,e){s[t]=e},remove:function(t){delete s[t]},removeAll:function(){s={}}}}const Nt={KHR_BINARY_GLTF:"KHR_binary_glTF",KHR_DRACO_MESH_COMPRESSION:"KHR_draco_mesh_compression",KHR_LIGHTS_PUNCTUAL:"KHR_lights_punctual",KHR_MATERIALS_CLEARCOAT:"KHR_materials_clearcoat",KHR_MATERIALS_IOR:"KHR_materials_ior",KHR_MATERIALS_PBR_SPECULAR_GLOSSINESS:"KHR_materials_pbrSpecularGlossiness",KHR_MATERIALS_SHEEN:"KHR_materials_sheen",KHR_MATERIALS_SPECULAR:"KHR_materials_specular",KHR_MATERIALS_TRANSMISSION:"KHR_materials_transmission",KHR_MATERIALS_IRIDESCENCE:"KHR_materials_iridescence",KHR_MATERIALS_UNLIT:"KHR_materials_unlit",KHR_MATERIALS_VOLUME:"KHR_materials_volume",KHR_TEXTURE_BASISU:"KHR_texture_basisu",KHR_TEXTURE_TRANSFORM:"KHR_texture_transform",KHR_MESH_QUANTIZATION:"KHR_mesh_quantization",KHR_MATERIALS_EMISSIVE_STRENGTH:"KHR_materials_emissive_strength",EXT_TEXTURE_WEBP:"EXT_texture_webp",EXT_MESHOPT_COMPRESSION:"EXT_meshopt_compression"};class Ab{constructor(t){this.parser=t,this.name=Nt.KHR_LIGHTS_PUNCTUAL,this.cache={refs:{},uses:{}}}_markDefs(){const t=this.parser,e=this.parser.json.nodes||[];for(let i=0,n=e.length;i=0)throw new Error("THREE.GLTFLoader: setKTX2Loader must be called before loading KTX2 textures");return null}return e.loadTextureImage(t,r.source,a)}}class Fb{constructor(t){this.parser=t,this.name=Nt.EXT_TEXTURE_WEBP,this.isSupported=null}loadTexture(t){const e=this.name,i=this.parser,n=i.json,r=n.textures[t];if(!r.extensions||!r.extensions[e])return null;const a=r.extensions[e],o=n.images[a.source];let l=i.textureLoader;if(o.uri){const h=i.options.manager.getHandler(o.uri);h!==null&&(l=h)}return this.detectSupport().then(function(h){if(h)return i.loadTextureImage(t,a.source,l);if(n.extensionsRequired&&n.extensionsRequired.indexOf(e)>=0)throw new Error("THREE.GLTFLoader: WebP required by asset but unsupported.");return i.loadTexture(t)})}detectSupport(){return this.isSupported||(this.isSupported=new Promise(function(t){const e=new Image;e.src="data:image/webp;base64,UklGRiIAAABXRUJQVlA4IBYAAAAwAQCdASoBAAEADsD+JaQAA3AAAAAA",e.onload=e.onerror=function(){t(e.height===1)}})),this.isSupported}}class Bb{constructor(t){this.name=Nt.EXT_MESHOPT_COMPRESSION,this.parser=t}loadBufferView(t){const e=this.parser.json,i=e.bufferViews[t];if(i.extensions&&i.extensions[this.name]){const n=i.extensions[this.name],r=this.parser.getDependency("buffer",n.buffer),a=this.parser.options.meshoptDecoder;if(!a||!a.supported){if(e.extensionsRequired&&e.extensionsRequired.indexOf(this.name)>=0)throw new Error("THREE.GLTFLoader: setMeshoptDecoder must be called before loading compressed files");return null}return Promise.all([r,a.ready]).then(function(o){const l=n.byteOffset||0,h=n.byteLength||0,c=n.count,u=n.byteStride,p=new ArrayBuffer(c*u),m=new Uint8Array(o[0],l,h);return a.decodeGltfBuffer(new Uint8Array(p),c,u,m,n.mode,n.filter),p})}return null}}const Bf="glTF",Vb=1313821514,Hb=5130562;class jb{constructor(t){this.name=Nt.KHR_BINARY_GLTF,this.content=null,this.body=null;const e=new DataView(t,0,12);if(this.header={magic:Ns.decodeText(new Uint8Array(t.slice(0,4))),version:e.getUint32(4,!0),length:e.getUint32(8,!0)},this.header.magic!==Bf)throw new Error("THREE.GLTFLoader: Unsupported glTF-Binary header.");if(this.header.version<2)throw new Error("THREE.GLTFLoader: Legacy binary file detected.");const i=this.header.length-12,n=new DataView(t,12);let r=0;for(;r",e).replace("#include ",i).replace("#include ",n).replace("#include ",r).replace("#include ",a)},Object.defineProperties(this,{specular:{get:function(){return o.specular.value},set:function(l){o.specular.value=l}},specularMap:{get:function(){return o.specularMap.value},set:function(l){o.specularMap.value=l,l?this.defines.USE_SPECULARMAP="":delete this.defines.USE_SPECULARMAP}},glossiness:{get:function(){return o.glossiness.value},set:function(l){o.glossiness.value=l}},glossinessMap:{get:function(){return o.glossinessMap.value},set:function(l){o.glossinessMap.value=l,l?(this.defines.USE_GLOSSINESSMAP="",this.defines.USE_UV=""):(delete this.defines.USE_GLOSSINESSMAP,delete this.defines.USE_UV)}}}),delete this.metalness,delete this.roughness,delete this.metalnessMap,delete this.roughnessMap,this.setValues(t)}copy(t){return super.copy(t),this.specularMap=t.specularMap,this.specular.copy(t.specular),this.glossinessMap=t.glossinessMap,this.glossiness=t.glossiness,delete this.metalness,delete this.roughness,delete this.metalnessMap,delete this.roughnessMap,this}}class Xb{constructor(){this.name=Nt.KHR_MATERIALS_PBR_SPECULAR_GLOSSINESS,this.specularGlossinessParams=["color","map","lightMap","lightMapIntensity","aoMap","aoMapIntensity","emissive","emissiveIntensity","emissiveMap","bumpMap","bumpScale","normalMap","normalMapType","displacementMap","displacementScale","displacementBias","specularMap","specular","glossinessMap","glossiness","alphaMap","envMap","envMapIntensity"]}getMaterialType(){return ru}extendParams(t,e,i){const n=e.extensions[this.name];t.color=new tt(1,1,1),t.opacity=1;const r=[];if(Array.isArray(n.diffuseFactor)){const a=n.diffuseFactor;t.color.fromArray(a),t.opacity=a[3]}if(n.diffuseTexture!==void 0&&r.push(i.assignTexture(t,"map",n.diffuseTexture,Bt)),t.emissive=new tt(0,0,0),t.glossiness=n.glossinessFactor!==void 0?n.glossinessFactor:1,t.specular=new tt(1,1,1),Array.isArray(n.specularFactor)&&t.specular.fromArray(n.specularFactor),n.specularGlossinessTexture!==void 0){const a=n.specularGlossinessTexture;r.push(i.assignTexture(t,"glossinessMap",a)),r.push(i.assignTexture(t,"specularMap",a,Bt))}return Promise.all(r)}createMaterial(t){const e=new ru(t);return e.fog=!0,e.color=t.color,e.map=t.map===void 0?null:t.map,e.lightMap=null,e.lightMapIntensity=1,e.aoMap=t.aoMap===void 0?null:t.aoMap,e.aoMapIntensity=1,e.emissive=t.emissive,e.emissiveIntensity=t.emissiveIntensity===void 0?1:t.emissiveIntensity,e.emissiveMap=t.emissiveMap===void 0?null:t.emissiveMap,e.bumpMap=t.bumpMap===void 0?null:t.bumpMap,e.bumpScale=1,e.normalMap=t.normalMap===void 0?null:t.normalMap,e.normalMapType=Hn,t.normalScale&&(e.normalScale=t.normalScale),e.displacementMap=null,e.displacementScale=1,e.displacementBias=0,e.specularMap=t.specularMap===void 0?null:t.specularMap,e.specular=t.specular,e.glossinessMap=t.glossinessMap===void 0?null:t.glossinessMap,e.glossiness=t.glossiness,e.alphaMap=null,e.envMap=t.envMap===void 0?null:t.envMap,e.envMapIntensity=1,e}}class qb{constructor(){this.name=Nt.KHR_MESH_QUANTIZATION}}class au extends Ir{constructor(t,e,i,n){super(t,e,i,n)}copySampleValue_(t){const e=this.resultBuffer,i=this.sampleValues,n=this.valueSize,r=t*n*3+n;for(let a=0;a!==n;a++)e[a]=i[r+a];return e}}au.prototype.interpolate_=function(s,t,e,i){const n=this.resultBuffer,r=this.sampleValues,a=this.valueSize,o=2*a,l=3*a,h=i-t,c=(e-t)/h,u=c*c,p=u*c,m=s*l,f=m-l,g=-2*p+3*u,_=p-u,v=1-g,x=_-u+c;for(let y=0;y!==a;y++){const b=r[f+y+a],S=r[f+y+o]*h,w=r[m+y+a],C=r[m+y]*h;n[y]=v*b+x*S+g*w+_*C}return n};const Yb=new Ht;class Zb extends au{interpolate_(t,e,i,n){const r=super.interpolate_(t,e,i,n);return Yb.fromArray(r).normalize().toArray(r),r}}const Jb=0,Kb=1,Qb=2,$b=3,tM=4,Vf=5,Hf=6,eo={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array},jf={9728:Ft,9729:Wt,9984:wh,9985:bd,9986:Sh,9987:ys},Gf={33071:ue,33648:Lo,10497:ze},Wf={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},ou={POSITION:"position",NORMAL:"normal",TANGENT:"tangent",TEXCOORD_0:"uv",TEXCOORD_1:"uv2",COLOR_0:"color",WEIGHTS_0:"skinWeight",JOINTS_0:"skinIndex"},ia={scale:"scale",translation:"position",rotation:"quaternion",weights:"morphTargetInfluences"},eM={CUBICSPLINE:void 0,LINEAR:cr,STEP:ya},iM="OPAQUE",nM="MASK",sM="BLEND";function io(s,t,e){for(const i in e.extensions)s[i]===void 0&&(t.userData.gltfExtensions=t.userData.gltfExtensions||{},t.userData.gltfExtensions[i]=e.extensions[i])}function qs(s,t){t.extras!==void 0&&(typeof t.extras=="object"?Object.assign(s.userData,t.extras):console.warn("THREE.GLTFLoader: Ignoring primitive type .extras, "+t.extras))}function rM(s,t){if(s.updateMorphTargets(),t.weights!==void 0)for(let e=0,i=t.weights.length;e-1,r=n?navigator.userAgent.match(/Firefox\/([0-9]+)\./)[1]:-1;typeof createImageBitmap>"u"||i||n&&r<98?this.textureLoader=new Ie(this.options.manager):this.textureLoader=new cy(this.options.manager),this.textureLoader.setCrossOrigin(this.options.crossOrigin),this.textureLoader.setRequestHeader(this.options.requestHeader),this.fileLoader=new cl(this.options.manager),this.fileLoader.setResponseType("arraybuffer"),this.options.crossOrigin==="use-credentials"&&this.fileLoader.setWithCredentials(!0)}setExtensions(t){this.extensions=t}setPlugins(t){this.plugins=t}parse(t,e){const i=this,n=this.json,r=this.extensions;this.cache.removeAll(),this._invokeAll(function(a){return a._markDefs&&a._markDefs()}),Promise.all(this._invokeAll(function(a){return a.beforeRoot&&a.beforeRoot()})).then(function(){return Promise.all([i.getDependencies("scene"),i.getDependencies("animation"),i.getDependencies("camera")])}).then(function(a){const o={scene:a[0][n.scene||0],scenes:a[0],animations:a[1],cameras:a[2],asset:n.asset,parser:i,userData:{}};io(r,o,n),qs(o,n),Promise.all(i._invokeAll(function(l){return l.afterRoot&&l.afterRoot(o)})).then(function(){t(o)})}).catch(e)}_markDefs(){const t=this.json.nodes||[],e=this.json.skins||[],i=this.json.meshes||[];for(let n=0,r=e.length;n{const l=this.associations.get(a);l!=null&&this.associations.set(o,l);for(const[h,c]of a.children.entries())r(c,o.children[h])};return r(i,n),n.name+="_instance_"+t.uses[e]++,n}_invokeOne(t){const e=Object.values(this.plugins);e.push(this);for(let i=0;i=2&&_.setY(T,w[C*l+1]),l>=3&&_.setZ(T,w[C*l+2]),l>=4&&_.setW(T,w[C*l+3]),l>=5)throw new Error("THREE.GLTFLoader: Unsupported itemSize in sparse BufferAttribute.")}}return _})}loadTexture(t){const e=this.json,i=this.options,n=e.textures[t].source,r=e.images[n];let a=this.textureLoader;if(r.uri){const o=i.manager.getHandler(r.uri);o!==null&&(a=o)}return this.loadTextureImage(t,n,a)}loadTextureImage(t,e,i){const n=this,r=this.json,a=r.textures[t],o=r.images[e],l=(o.uri||o.bufferView)+":"+a.sampler;if(this.textureCache[l])return this.textureCache[l];const h=this.loadImageSource(e,i).then(function(c){c.flipY=!1,a.name&&(c.name=a.name);const u=(r.samplers||{})[a.sampler]||{};return c.magFilter=jf[u.magFilter]||Wt,c.minFilter=jf[u.minFilter]||ys,c.wrapS=Gf[u.wrapS]||ze,c.wrapT=Gf[u.wrapT]||ze,n.associations.set(c,{textures:t}),c}).catch(function(){return null});return this.textureCache[l]=h,h}loadImageSource(t,e){const i=this,n=this.json,r=this.options;if(this.sourceCache[t]!==void 0)return this.sourceCache[t].then(u=>u.clone());const a=n.images[t],o=self.URL||self.webkitURL;let l=a.uri||"",h=!1;if(a.bufferView!==void 0)l=i.getDependency("bufferView",a.bufferView).then(function(u){h=!0;const p=new Blob([u],{type:a.mimeType});return l=o.createObjectURL(p),l});else if(a.uri===void 0)throw new Error("THREE.GLTFLoader: Image "+t+" is missing URI and bufferView");const c=Promise.resolve(l).then(function(u){return new Promise(function(p,m){let f=p;e.isImageBitmapLoader===!0&&(f=function(g){const _=new ne(g);_.needsUpdate=!0,p(_)}),e.load(Ns.resolveURL(u,r.path),f,void 0,m)})}).then(function(u){var p;return h===!0&&o.revokeObjectURL(l),u.userData.mimeType=a.mimeType||((p=a.uri).search(/\.jpe?g($|\?)/i)>0||p.search(/^data\:image\/jpeg/)===0?"image/jpeg":p.search(/\.webp($|\?)/i)>0||p.search(/^data\:image\/webp/)===0?"image/webp":"image/png"),u}).catch(function(u){throw console.error("THREE.GLTFLoader: Couldn't load texture",l),u});return this.sourceCache[t]=c,c}assignTexture(t,e,i,n){const r=this;return this.getDependency("texture",i.index).then(function(a){if(i.texCoord===void 0||i.texCoord==0||e==="aoMap"&&i.texCoord==1||console.warn("THREE.GLTFLoader: Custom UV set "+i.texCoord+" for texture "+e+" not yet supported."),r.extensions[Nt.KHR_TEXTURE_TRANSFORM]){const o=i.extensions!==void 0?i.extensions[Nt.KHR_TEXTURE_TRANSFORM]:void 0;if(o){const l=r.associations.get(a);a=r.extensions[Nt.KHR_TEXTURE_TRANSFORM].extendTexture(a,o),r.associations.set(a,l)}}return n!==void 0&&(a.encoding=n),t[e]=a,a})}assignFinalMaterial(t){const e=t.geometry;let i=t.material;const n=e.attributes.tangent===void 0,r=e.attributes.color!==void 0,a=e.attributes.normal===void 0;if(t.isPoints){const o="PointsMaterial:"+i.uuid;let l=this.cache.get(o);l||(l=new Na,ve.prototype.copy.call(l,i),l.color.copy(i.color),l.map=i.map,l.sizeAttenuation=!1,this.cache.add(o,l)),i=l}else if(t.isLine){const o="LineBasicMaterial:"+i.uuid;let l=this.cache.get(o);l||(l=new Is,ve.prototype.copy.call(l,i),l.color.copy(i.color),this.cache.add(o,l)),i=l}if(n||r||a){let o="ClonedMaterial:"+i.uuid+":";i.isGLTFSpecularGlossinessMaterial&&(o+="specular-glossiness:"),n&&(o+="derivative-tangents:"),r&&(o+="vertex-colors:"),a&&(o+="flat-shading:");let l=this.cache.get(o);l||(l=i.clone(),r&&(l.vertexColors=!0),a&&(l.flatShading=!0),n&&(l.normalScale&&(l.normalScale.y*=-1),l.clearcoatNormalScale&&(l.clearcoatNormalScale.y*=-1)),this.cache.add(o,l),this.associations.set(l,this.associations.get(i))),i=l}i.aoMap&&e.attributes.uv2===void 0&&e.attributes.uv!==void 0&&e.setAttribute("uv2",e.attributes.uv),t.material=i}getMaterialType(){return yn}loadMaterial(t){const e=this,i=this.json,n=this.extensions,r=i.materials[t];let a;const o={},l=r.extensions||{},h=[];if(l[Nt.KHR_MATERIALS_PBR_SPECULAR_GLOSSINESS]){const u=n[Nt.KHR_MATERIALS_PBR_SPECULAR_GLOSSINESS];a=u.getMaterialType(),h.push(u.extendParams(o,r,e))}else if(l[Nt.KHR_MATERIALS_UNLIT]){const u=n[Nt.KHR_MATERIALS_UNLIT];a=u.getMaterialType(),h.push(u.extendParams(o,r,e))}else{const u=r.pbrMetallicRoughness||{};if(o.color=new tt(1,1,1),o.opacity=1,Array.isArray(u.baseColorFactor)){const p=u.baseColorFactor;o.color.fromArray(p),o.opacity=p[3]}u.baseColorTexture!==void 0&&h.push(e.assignTexture(o,"map",u.baseColorTexture,Bt)),o.metalness=u.metallicFactor!==void 0?u.metallicFactor:1,o.roughness=u.roughnessFactor!==void 0?u.roughnessFactor:1,u.metallicRoughnessTexture!==void 0&&(h.push(e.assignTexture(o,"metalnessMap",u.metallicRoughnessTexture)),h.push(e.assignTexture(o,"roughnessMap",u.metallicRoughnessTexture))),a=this._invokeOne(function(p){return p.getMaterialType&&p.getMaterialType(t)}),h.push(Promise.all(this._invokeAll(function(p){return p.extendMaterialParams&&p.extendMaterialParams(t,o)})))}r.doubleSided===!0&&(o.side=ce);const c=r.alphaMode||iM;if(c===sM?(o.transparent=!0,o.depthWrite=!1):(o.transparent=!1,c===nM&&(o.alphaTest=r.alphaCutoff!==void 0?r.alphaCutoff:.5)),r.normalTexture!==void 0&&a!==ae&&(h.push(e.assignTexture(o,"normalMap",r.normalTexture)),o.normalScale=new j(1,1),r.normalTexture.scale!==void 0)){const u=r.normalTexture.scale;o.normalScale.set(u,u)}return r.occlusionTexture!==void 0&&a!==ae&&(h.push(e.assignTexture(o,"aoMap",r.occlusionTexture)),r.occlusionTexture.strength!==void 0&&(o.aoMapIntensity=r.occlusionTexture.strength)),r.emissiveFactor!==void 0&&a!==ae&&(o.emissive=new tt().fromArray(r.emissiveFactor)),r.emissiveTexture!==void 0&&a!==ae&&h.push(e.assignTexture(o,"emissiveMap",r.emissiveTexture,Bt)),Promise.all(h).then(function(){let u;return u=a===ru?n[Nt.KHR_MATERIALS_PBR_SPECULAR_GLOSSINESS].createMaterial(o):new a(o),r.name&&(u.name=r.name),qs(u,r),e.associations.set(u,{materials:t}),r.extensions&&io(n,u,r),u})}createUniqueName(t){const e=Xt.sanitizeNodeName(t||"");let i=e;for(let n=1;this.nodeNamesUsed[i];++n)i=e+"_"+n;return this.nodeNamesUsed[i]=!0,i}loadGeometries(t){const e=this,i=this.extensions,n=this.primitiveCache;function r(o){return i[Nt.KHR_DRACO_MESH_COMPRESSION].decodePrimitive(o,e).then(function(l){return Yf(l,o,e)})}const a=[];for(let o=0,l=t.length;o0&&rM(x,r),x.name=e.createUniqueName(r.name||"mesh_"+t),qs(x,r),v.extensions&&io(n,x,v),e.assignFinalMaterial(x),p.push(x)}for(let f=0,g=p.length;f1?new De:o.length===1?o[0]:new St,l!==o[0])for(let h=0,c=o.length;h{const c=new Map;for(const[u,p]of r.associations)(u instanceof ve||u instanceof ne)&&c.set(u,p);return h.traverse(u=>{const p=r.associations.get(u);p!=null&&c.set(u,p)}),c})(a),a})}}function qf(s,t,e,i){const n=e.nodes[s];return i.getDependency("node",s).then(function(r){if(n.skin===void 0)return r;let a;return i.getDependency("skin",n.skin).then(function(o){a=o;const l=[];for(let h=0,c=a.joints.length;h{const t=this.engine;if(!this._envRenderTarget1){this.disposeEnvRenderTarget(1),this._PMREMGenerator=new La(t.renderer);const e=this._envRenderTarget1=new de(1,1,{type:be,format:$t,encoding:Bt,depthBuffer:!1});e.texture.mapping=xs,e.texture.name="PMREM.cubeUv1",e.scissorTest=!0;const i=this._envRenderTarget2=new de(1,1,{type:be,format:$t,encoding:Bt,depthBuffer:!1});i.texture.mapping=xs,i.texture.name="PMREM.cubeUv2",i.scissorTest=!0,this._PMREMGenerator.prepareForRenderTarget(this._envRenderTarget1,this._envRenderTarget2,128)}t.rendering.objectsScene.visible=!1,this._rtFlipCount%2==0?(this._PMREMGenerator.fromSceneToRenderTarget(t.scene,this._envRenderTarget1,this._envRenderTarget2,0,.1,1e4),t.rendering.scene.environment=this._envRenderTarget1.texture):(this._PMREMGenerator.fromSceneToRenderTarget(t.scene,this._envRenderTarget2,this._envRenderTarget1,0,.1,1e4),t.rendering.scene.environment=this._envRenderTarget2.texture),t.rendering.objectsScene.visible=!0}),d(this,"disposeEnvRenderTarget",t=>{this._envRenderTarget1&&(this._envRenderTarget1.dispose(),this._envRenderTarget1=null),this._envRenderTarget2&&(this._envRenderTarget2.dispose(),this._envRenderTarget2=null)})}afterAddToEngine(t){super.afterAddToEngine(t),this.engine=t,this.initEnv()}initEnv(){const t=this.engine,e=this._skyAtomsphere=new Mb;e.collisionDisabled=!0,e.__isEnvironment=!0,e.renderOrder=-100,t.add(e);const i=this._cloud=new Cb,n=new Ie,r=n.load(Jt("assets/textures/cloud/weather_1.png"),h=>{r.wrapS=r.wrapT=ze,i.material.uniforms.weatherMap.value=r}),a=n.load(Jt("assets/textures/cloud/shape_1.png"),h=>{a.wrapS=a.wrapT=ze,i.material.uniforms.noiseMap.value=a}),o=n.load(Jt("assets/textures/cloud/blue_noise.png"),h=>{o.wrapS=o.wrapT=ze,i.material.uniforms.blueNoiseMap.value=o}),l=n.load(Jt("assets/textures/cloud/3d_noise_128.png"),h=>{l.wrapS=l.wrapT=ze,i.material.uniforms.shapeNoiseMap.value=l});i.material.uniforms.skyMap.value=e.material.uniforms.iChannel1.value,i.__isEnvironment=!0,i.renderOrder=-99,t.add(i)}onBeforeScenePrepareRender(){super.onBeforeScenePrepareRender();const t=this.engine,e=this._skyAtomsphere,i=this._cloud;this._skyNeedsUpdate&&(e.updateRenderTargets(t.rendering.renderer,t.rendering.camera),i.material.uniforms.skyAltitude.value=e.altitude),this.dynamicCloud&&(i.material.uniforms.time.value=t.rendering.uniforms.elapsedTime.value),(this._skyNeedsUpdate||this.dynamicCloud)&&(e.position.set(0,0,0),e.updateMatrixWorld(),i.position.set(0,0,0),i.updateMatrixWorld(),this.updateRealtimeEnvironment()),e.position.copy(t.rendering.camera.position),e.position.z-=0,i.position.copy(t.rendering.camera.position),this._skyNeedsUpdate=!1}updateLight(){if(super.updateLight(),this._lensflare){const t=this._sunDirection.z,e=this._sunDirection.x;let i=10*this.engine.map.getCameraDistance();if(t>.01&&this.sunLight.intensity>.1&&i<1e6){this._lensflare.visible=!0;const[n,r]=this.engine.map.getProjectionCenter();this._lensflare.position.set(n+e*i,r,t*i)}else this._lensflare.visible=!1}}onTimeChanged(t){this._skyAtomsphere.altitude=(t/86400-.25)*Math.PI*2,this._skyNeedsUpdate=!0}getTextures(){return this._envMapType===2?[this._envRenderTarget1.texture,this._envRenderTarget2.texture]:[]}get cloudIntensity(){return this._cloud.coverage}set cloudIntensity(t){this._cloud.coverage=t,this._skyNeedsUpdate=!0}get mixGrayFactor(){return this._skyAtomsphere.mixGrayFactor}set mixGrayFactor(t){this._skyAtomsphere.mixGrayFactor=t,this._cloud.mixGrayFactor=t,this._skyNeedsUpdate=!0}get realtimeCapture(){return this._realtimeCapture}set realtimeCapture(t){t!==this._realtimeCapture&&(console.warn("has not been supported"),this._skyNeedsUpdate=!0,this._realtimeCapture=t)}get clipUnderground(){return!1}set clipUnderground(t){console.warn("has not been supported")}beforeRemoveFromEngine(t){this.disposeEnvRenderTarget(this._realtimeCapture)}dispose(){super.dispose()}}class lM extends Fr{constructor(t={}){super(),d(this,"isSphereSky",!0),d(this,"_textureIsCube",!1),d(this,"_textureIsHDR",!1),d(this,"_textureURL",null),d(this,"_textureNames",null),d(this,"_affectWorld",!0),d(this,"_isVerticalTexture",null),d(this,"_mesh",null),d(this,"_material",null),d(this,"_sphereGeometry",null),d(this,"_engine",null),t.texture}afterAddToEngine(t){this._engine=t,super.afterAddToEngine(t);const e=this._sphereGeometry=new Os(1,32,32),i=this._material=this.createMaterial(),n=this._mesh=new lt(e,i);n.frustumCulled=!1,n.scale.setScalar(1e4),n.rotateX(Math.PI/2),n.renderOrder=-1e4,this.add(n)}createMaterial(){return new ae}onBeforeScenePrepareRender(t,e,i){this._mesh.position.copy(i.position),super.onBeforeScenePrepareRender(t)}}const hM={gradients:{value:[{stop:0,color:new tt(1/255,1/255,1/255)},{stop:.01,color:new tt(41/255/4,53/255/4,93/255/4)},{stop:.03,color:new tt(41/255/8,53/255/8,93/255/8)},{stop:.09,color:new tt(41/255/32,53/255/32,93/255/32)},{stop:.15,color:new tt(1/255,1/255,1/255)}]},isEmissive:{value:!1}};class cM extends Zt{constructor(t){super(),this.defines={NUM_COLORS:5},this.uniforms=pt.clone(hM),this.side=ce,this.vertexShader=`#define GLSLIFY 1 +varying vec2 vUv; +varying float vZ; + +void main() +{ + vec4 viewPos = modelViewMatrix * vec4(position, 1.0); + vUv = uv; + vZ = position.y; + gl_Position = projectionMatrix * viewPos; + gl_Position.z = gl_Position.w; +} +`,this.fragmentShader=`#define GLSLIFY 1 +#include +varying vec2 vUv; +varying float vZ; +uniform float zBottom; +uniform float zTop; +struct ColorStop { + float stop; + vec3 color; +}; +uniform ColorStop gradients[NUM_COLORS]; + +void main() { + + // float v = 0.01; + // if (vZ >= zTop) { + // v = 0.98; + // } + // else if (vZ > zBottom) { + // v = (vZ - zBottom) / (zTop - zBottom); + // } + // gl_FragColor = texture2D(map, vec2(0.5, vZ > 0. ? vZ * 2.0 : 0.)); + + vec3 outColor; + int last = NUM_COLORS - 1; + if (vZ <= gradients[0].stop) { + outColor = gradients[0].color; + } + else if (vZ >= gradients[last].stop) { + outColor = gradients[last].color; + } + else { + float startRatio; + float endRatio; + for (int i = 1; i < NUM_COLORS; i++) { + endRatio = gradients[i].stop; + if (vZ < endRatio) { + startRatio = gradients[i - 1].stop; + outColor = mix(gradients[i - 1].color, gradients[i].color, (vZ - startRatio) / (endRatio - startRatio)); + break; + } + } + } + + gl_FragColor = vec4(outColor, 1.0); + #include +} +`,this.depthWrite=!1,this.depthTest=!1,this.envMap=null,jt(this,["isEmissive"])}get gradients(){return this.uniforms.gradients.value}set gradients(t){(!Array.isArray(t)||t.length<2)&&console.warn("gradient must be an array and the length of gradients must be greater than 1"),this.defines.NUM_COLORS=t.length,t.sort((e,i)=>e.stop{const a=document.createElement("img");a.onload=function(){n(a)},a.onerror=function(){r()},a.crossOrigin="Anonymous",a.src=this.address+t+"/"+e+"/"+i+"."+this.format})}}class Qi extends Pt{constructor(t=1,e=1,i=1,n=1,r=!1,a=10){super();const o=[],l=[],h=[],c=[];Qi.buildPlane(t,e,i,n,o,l,h,c),r&&Qi.buildSkirt(t,e,i,n,a,o,l,h,c),this.setIndex(o),this.setAttribute("position",new et(l,3)),this.setAttribute("normal",new et(h,3)),this.setAttribute("uv",new et(c,2))}static buildPlane(t=1,e=1,i=1,n=1,r,a,o,l){const h=t/2,c=e/2,u=i+1,p=n+1,m=t/i,f=e/n;for(let g=0;g0||this.level+1>t||this.parentNode!==null&&this.parentNode.nodesLoaded0&&(this.childrenCache=this.children),this.subdivided=!1,this.isMesh=!0,this.children=[]}loadTexture(){this.mapView.provider.fetchTile(this.level,this.x,this.y).then(t=>{const e=new ne(t);e.generateMipmaps=!1,e.format=$t,e.magFilter=Wt,e.minFilter=Wt,e.needsUpdate=!0,this.material.map=e,this.nodeReady()}).catch(()=>{const t=hu.createOffscreenCanvas(1,1),e=t.getContext("2d");e.fillStyle="#FF0000",e.fillRect(0,0,1,1);const i=new ne(t);i.generateMipmaps=!1,i.needsUpdate=!0,this.material.map=i,this.nodeReady()})}nodeReady(){if(this.parentNode!==null){if(this.parentNode.nodesLoaded++,this.parentNode.nodesLoaded>=zt.childrens){this.parentNode.subdivided===!0&&(this.parentNode.isMesh=!1);for(let t=0;t{this.textureLoaded=!0},0):this.loadTexture(),this.loadHeightGeometry()}loadTexture(){this.mapView.provider.fetchTile(this.level,this.x,this.y).then(t=>{const e=new ne(t);e.generateMipmaps=!1,e.format=$t,e.magFilter=Wt,e.minFilter=Wt,e.needsUpdate=!0,this.material.map=e}).catch(()=>{console.log("texture error")}).finally(()=>{this.textureLoaded=!0,this.nodeReady()})}nodeReady(){this.heightLoaded&&this.textureLoaded&&(this.visible=!0,super.nodeReady())}createChildNodes(){const t=this.level+1,e=Object.getPrototypeOf(this).constructor,i=2*this.x,n=2*this.y;let r=new e(this,this.mapView,zt.topLeft,t,i,n);r.scale.set(.5,1,.5),r.position.set(-.25,0,-.25),this.add(r),r.updateMatrix(),r.updateMatrixWorld(!0),r=new e(this,this.mapView,zt.topRight,t,i+1,n),r.scale.set(.5,1,.5),r.position.set(.25,0,-.25),this.add(r),r.updateMatrix(),r.updateMatrixWorld(!0),r=new e(this,this.mapView,zt.bottomLeft,t,i,n+1),r.scale.set(.5,1,.5),r.position.set(-.25,0,.25),this.add(r),r.updateMatrix(),r.updateMatrixWorld(!0),r=new e(this,this.mapView,zt.bottomRight,t,i+1,n+1),r.scale.set(.5,1,.5),r.position.set(.25,0,.25),this.add(r),r.updateMatrix(),r.updateMatrixWorld(!0)}loadHeightGeometry(){if(this.mapView.heightProvider===null)throw new Error("GeoThree: MapView.heightProvider provider is null.");return this.mapView.heightProvider.fetchTile(this.level,this.x,this.y).then(t=>{const e=hu.createOffscreenCanvas(this.geometrySize+1,this.geometrySize+1),i=e.getContext("2d");i.imageSmoothingEnabled=!1,i.drawImage(t,0,0,Bi.tileSize,Bi.tileSize,0,0,e.width,e.height);const n=i.getImageData(0,0,e.width,e.height),r=new Kf(1,1,this.geometrySize,this.geometrySize,!0,10,n,!0);this.geometry=r}).catch(()=>{}).finally(()=>{this.heightLoaded=!0,this.nodeReady()})}raycast(t,e){return this.isMesh===!0&&super.raycast(t,e)}}Bi.tileSize=256,Bi.geometry=new Qi(1,1,1,1),Bi.baseGeometry=Fi.geometry,Bi.baseScale=new M(fe.EARTH_PERIMETER,1,fe.EARTH_PERIMETER);class Qf extends Pt{constructor(t,e,i,n,r,a,o){super();const l=a+o;let h=0;const c=[],u=new M,p=new M,m=[],f=[],g=[],_=[];for(let v=0;v<=i;v++){const x=[],y=v/i;for(let b=0;b<=e;b++){const S=b/e;u.x=-t*Math.cos(n+S*r)*Math.sin(a+y*o),u.y=t*Math.cos(a+y*o),u.z=t*Math.sin(n+S*r)*Math.sin(a+y*o),f.push(u.x,u.y,u.z),p.set(u.x,u.y,u.z).normalize(),g.push(p.x,p.y,p.z),_.push(S,1-y),x.push(h++)}c.push(x)}for(let v=0;v0)&&m.push(y,b,w),(v!==i-1||l{for(const i in t.userData)e.uniforms[i]=t.userData[i];e.vertexShader=` + uniform sampler2D heightMap; + `+e.vertexShader,e.vertexShader=e.vertexShader.replace("#include ",` + #include + + // Calculate height of the title + vec4 _theight = texture2D(heightMap, vUv); + float _height = ((_theight.r * 255.0 * 65536.0 + _theight.g * 255.0 * 256.0 + _theight.b * 255.0) * 0.1) - 10000.0; + vec3 _transformed = position + _height * normal; + + // Vertex position based on height + gl_Position = projectionMatrix * modelViewMatrix * vec4(_transformed, 1.0); + `)},t}loadTexture(){this.mapView.provider.fetchTile(this.level,this.x,this.y).then(t=>{const e=new ne(t);e.generateMipmaps=!1,e.format=$t,e.magFilter=Wt,e.minFilter=Wt,e.needsUpdate=!0,this.material.map=e,this.textureLoaded=!0,this.nodeReady()}).catch(t=>{console.error("GeoThree: Failed to load color node data.",t)}).finally(()=>{this.textureLoaded=!0,this.nodeReady()}),this.loadHeightGeometry()}loadHeightGeometry(){if(this.mapView.heightProvider===null)throw new Error("GeoThree: MapView.heightProvider provider is null.");return this.mapView.heightProvider.fetchTile(this.level,this.x,this.y).then(t=>{const e=new ne(t);e.generateMipmaps=!1,e.format=$t,e.magFilter=Ft,e.minFilter=Ft,e.needsUpdate=!0,this.material.userData.heightMap.value=e}).catch(t=>{console.error("GeoThree: Failed to load height node data.",t)}).finally(()=>{this.heightLoaded=!0,this.nodeReady()})}raycast(t,e){if(this.isMesh===!0){this.geometry=Fi.geometry;const i=super.raycast(t,e);return this.geometry=ei.geometry,i}return!1}}ei.emptyTexture=new ne,ei.geometrySize=256,ei.geometry=new Qi(1,1,ei.geometrySize,ei.geometrySize,!0),ei.baseGeometry=Fi.geometry,ei.baseScale=new M(fe.EARTH_PERIMETER,1,fe.EARTH_PERIMETER);const $f=new M,tg=new M;class dM{constructor(){this.subdivideDistance=50,this.simplifyDistance=300}updateLOD(t,e,i,n){e.getWorldPosition($f),t.children[0].traverse(r=>{r.getWorldPosition(tg);let a=$f.distanceTo(tg);a/=Math.pow(2,t.provider.maxZoom-r.level),athis.simplifyDistance&&r.parentNode&&r.parentNode.simplify()})}}const eg=new rt,ig=new M,cu=new Pa,uu=new M;class pM extends dM{constructor(){super(...arguments),this.subdivideDistance=120,this.simplifyDistance=400,this.testCenter=!0,this.pointOnly=!1,this.lodOffset=0}updateLOD(t,e,i,n){eg.multiplyMatrices(e.projectionMatrix,e.matrixWorldInverse),cu.setFromProjectionMatrix(eg),e.getWorldPosition(ig),t.children[0].traverse(r=>{r.getWorldPosition(uu);let a=ig.distanceTo(uu);a/=Math.pow(2,t.provider.maxZoom-r.level+this.lodOffset);const o=this.pointOnly?cu.containsPoint(uu):cu.intersectsObject(r);athis.simplifyDistance&&r.parentNode&&r.parentNode.simplify()})}}/*! ***************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */function ng(s,t,e,i){return new(e||(e=Promise))(function(n,r){function a(h){try{l(i.next(h))}catch(c){r(c)}}function o(h){try{l(i.throw(h))}catch(c){r(c)}}function l(h){var c;h.done?n(h.value):(c=h.value,c instanceof e?c:new e(function(u){u(c)})).then(a,o)}l((i=i.apply(s,[])).next())})}class mM{constructor(t=257){this.gridSize=t;const e=t-1;if(e&e-1)throw new Error(`Expected grid size to be 2^n+1, got ${t}.`);this.numTriangles=e*e*2-2,this.numParentTriangles=this.numTriangles-e*e,this.indices=new Uint32Array(this.gridSize*this.gridSize),this.coords=new Uint16Array(4*this.numTriangles);for(let i=0;i>=1)>1;){const p=r+o>>1,m=a+l>>1;1&n?(o=r,l=a,r=h,a=c):(r=o,a=l,o=h,l=c),h=p,c=m}const u=4*i;this.coords[u+0]=r,this.coords[u+1]=a,this.coords[u+2]=o,this.coords[u+3]=l}}createTile(t){return new fM(t,this)}}class fM{constructor(t,e){const i=e.gridSize;if(t.length!==i*i)throw new Error(`Expected terrain data of length ${i*i} (${i} x ${i}), got ${t.length}.`);this.terrain=t,this.martini=e,this.errors=new Float32Array(t.length),this.update()}update(){const{numTriangles:t,numParentTriangles:e,coords:i,gridSize:n}=this.martini,{terrain:r,errors:a}=this;for(let o=t-1;o>=0;o--){const l=4*o,h=i[l+0],c=i[l+1],u=i[l+2],p=i[l+3],m=h+u>>1,f=c+p>>1,g=m+f-c,_=f+h-m,v=(r[c*n+h]+r[p*n+u])/2,x=f*n+m,y=Math.abs(v-r[x]);if(a[x]=Math.max(a[x],y),o>1)*n+(h+g>>1),S=(p+_>>1)*n+(u+g>>1);a[x]=Math.max(a[x],a[b],a[S])}}}getMesh(t=0,e=!1){const{gridSize:i,indices:n}=this.martini,{errors:r}=this;let a=0,o=0;const l=i-1;let h,c,u=0;const p=[],m=[],f=[],g=[];function _(C,L,T,E,I,z){const B=C+T>>1,O=L+E>>1;Math.abs(C-I)+Math.abs(L-z)>1&&r[O*i+B]>t?(_(I,z,C,L,B,O),_(T,E,I,z,B,O)):(h=L*i+C,c=E*i+T,u=z*i+I,n[h]===0&&(e&&(C===0?p.push(a):C===l&&m.push(a),L===0?f.push(a):L===l&&g.push(a)),n[h]=++a),n[c]===0&&(e&&(T===0?p.push(a):T===l&&m.push(a),E===0?f.push(a):E===l&&g.push(a)),n[c]=++a),n[u]===0&&(e&&(I===0?p.push(a):I===l&&m.push(a),z===0?f.push(a):z===l&&g.push(a)),n[u]=++a),o++)}n.fill(0),_(0,0,l,l,l,0),_(l,l,0,0,0,l);let v=2*a,x=3*o;e&&(v+=2*(p.length+m.length+f.length+g.length),x+=3*(2*(p.length-1)+2*(m.length-1)+2*(f.length-1)+2*(g.length-1)));const y=new Uint16Array(v),b=new Uint32Array(x);let S=0;function w(C,L,T,E,I,z){const B=C+T>>1,O=L+E>>1;if(Math.abs(C-I)+Math.abs(L-z)>1&&r[O*i+B]>t)w(I,z,C,L,B,O),w(T,E,I,z,B,O);else{const F=n[L*i+C]-1,Q=n[E*i+T]-1,k=n[z*i+I]-1;y[2*F]=C,y[2*F+1]=L,y[2*Q]=T,y[2*Q+1]=E,y[2*k]=I,y[2*k+1]=z,b[S++]=F,b[S++]=Q,b[S++]=k}}if(w(0,0,l,l,l,0),w(l,l,0,0,0,l),e){let C=function(T){const E=T.length;for(let I=0;Iy[2*T+1]-y[2*E+1]),m.sort((T,E)=>y[2*E+1]-y[2*T+1]),f.sort((T,E)=>y[2*E]-y[2*T]),g.sort((T,E)=>y[2*T]-y[2*E]);let L=2*a;C(p),C(m),C(f),C(g)}return{vertices:y,triangles:b,numVerticesWithoutSkirts:a}}}class yi extends Bi{constructor(t=null,e=null,i=zt.root,n=0,r=0,a=0,{elevationDecoder:o=null,meshMaxError:l=10,exageration:h=1}={}){super(t,e,i,n,r,a,yi.geometry,yi.prepareMaterial(new fc({map:yi.emptyTexture,color:16777215,side:ce}),n,h)),this.elevationDecoder={rScaler:256,gScaler:1,bScaler:1/256,offset:-32768},this.exageration=1,this.meshMaxError=10,o&&(this.elevationDecoder=o),this.meshMaxError=l,this.exageration=h,this.frustumCulled=!1}static prepareMaterial(t,e,i=1){return t.userData={heightMap:{value:yi.emptyTexture},drawNormals:{value:0},drawBlack:{value:0},zoomlevel:{value:e},computeNormals:{value:1},drawTexture:{value:1}},t.onBeforeCompile=n=>{for(let r in t.userData)n.uniforms[r]=t.userData[r];n.vertexShader=` + uniform bool computeNormals; + uniform float zoomlevel; + uniform sampler2D heightMap; + `+n.vertexShader,n.fragmentShader=` + uniform bool drawNormals; + uniform bool drawTexture; + uniform bool drawBlack; + `+n.fragmentShader,n.fragmentShader=n.fragmentShader.replace("#include ",` + if(drawBlack) { + gl_FragColor = vec4( 0.0,0.0,0.0, 1.0 ); + } else if(drawNormals) { + gl_FragColor = vec4( ( 0.5 * vNormal + 0.5 ), 1.0 ); + } else if (!drawTexture) { + gl_FragColor = vec4( 0.0,0.0,0.0, 0.0 ); + }`),n.vertexShader=n.vertexShader.replace("#include ",` + #include + + // queried pixels: + // +-----------+ + // | | | | + // | a | b | c | + // | | | | + // +-----------+ + // | | | | + // | d | e | f | + // | | | | + // +-----------+ + // | | | | + // | g | h | i | + // | | | | + // +-----------+ + + if (computeNormals) { + float e = getElevation(vUv, 0.0); + ivec2 size = textureSize(heightMap, 0); + float offset = 1.0 / float(size.x); + float a = getElevation(vUv + vec2(-offset, -offset), 0.0); + float b = getElevation(vUv + vec2(0, -offset), 0.0); + float c = getElevation(vUv + vec2(offset, -offset), 0.0); + float d = getElevation(vUv + vec2(-offset, 0), 0.0); + float f = getElevation(vUv + vec2(offset, 0), 0.0); + float g = getElevation(vUv + vec2(-offset, offset), 0.0); + float h = getElevation(vUv + vec2(0, offset), 0.0); + float i = getElevation(vUv + vec2(offset,offset), 0.0); + + + float normalLength = 500.0 / zoomlevel; + + vec3 v0 = vec3(0.0, 0.0, 0.0); + vec3 v1 = vec3(0.0, normalLength, 0.0); + vec3 v2 = vec3(normalLength, 0.0, 0.0); + v0.z = (e + d + g + h) / 4.0; + v1.z = (e+ b + a + d) / 4.0; + v2.z = (e+ h + i + f) / 4.0; + vNormal = (normalize(cross(v2 - v0, v1 - v0))).rbg; + } + `)},t}static getTerrain(t,e,i){const{rScaler:n,bScaler:r,gScaler:a,offset:o}=i,l=e+1,h=new Float32Array(l*l);for(let c=0,u=0;ung(this,void 0,void 0,function*(){this.onHeightImage(t)})).finally(()=>{this.heightLoaded=!0,this.nodeReady()})}}yi.geometrySize=16,yi.emptyTexture=new ne,yi.geometry=new Qi(1,1,1,1),yi.tileSize=256;class Zs extends zt{constructor(t=null,e=null,i=zt.root,n=0,r=0,a=0,o=Zs.geometry,l=new yn({wireframe:!1,color:16777215})){super(t,e,i,n,r,a,o,l),this.heightLoaded=!1,this.textureLoaded=!1,this.geometrySize=16,this.geometryNormals=!1,this.isMesh=!0,this.visible=!1,this.matrixAutoUpdate=!1}initialize(){super.initialize(),this.loadTexture(),this.loadHeightGeometry()}loadTexture(){this.mapView.provider.fetchTile(this.level,this.x,this.y).then(t=>{const e=new ne(t);e.generateMipmaps=!1,e.format=$t,e.magFilter=Wt,e.minFilter=Wt,e.needsUpdate=!0,this.material.map=e}).finally(()=>{this.textureLoaded=!0,this.nodeReady()})}nodeReady(){this.heightLoaded&&this.textureLoaded&&(this.visible=!0,super.nodeReady())}createChildNodes(){const t=this.level+1,e=Object.getPrototypeOf(this).constructor,i=2*this.x,n=2*this.y;let r=new e(this,this.mapView,zt.topLeft,t,i,n);r.scale.set(.5,1,.5),r.position.set(-.25,0,-.25),this.add(r),r.updateMatrix(),r.updateMatrixWorld(!0),r=new e(this,this.mapView,zt.topRight,t,i+1,n),r.scale.set(.5,1,.5),r.position.set(.25,0,-.25),this.add(r),r.updateMatrix(),r.updateMatrixWorld(!0),r=new e(this,this.mapView,zt.bottomLeft,t,i,n+1),r.scale.set(.5,1,.5),r.position.set(-.25,0,.25),this.add(r),r.updateMatrix(),r.updateMatrixWorld(!0),r=new e(this,this.mapView,zt.bottomRight,t,i+1,n+1),r.scale.set(.5,1,.5),r.position.set(.25,0,.25),this.add(r),r.updateMatrix(),r.updateMatrixWorld(!0)}loadHeightGeometry(){if(this.mapView.heightProvider===null)throw new Error("GeoThree: MapView.heightProvider provider is null.");return this.mapView.heightProvider.fetchTile(this.level,this.x,this.y).then(t=>{const e=new Kf(1,1,this.geometrySize,this.geometrySize,!0,10,imageData,!0);this.geometry=e}).catch(()=>{console.error("GeoThree: Failed to load height node data.",this)}).finally(()=>{this.heightLoaded=!0,this.nodeReady()})}raycast(t,e){return this.isMesh===!0&&super.raycast(t,e)}}Zs.tileSize=256,Zs.geometry=new Qi(1,1,1,1),Zs.baseGeometry=Fi.geometry,Zs.baseScale=new M(fe.EARTH_PERIMETER,1,fe.EARTH_PERIMETER);class Se extends lt{constructor(t=Se.PLANAR,e=new uM,i=null,n=null){super(void 0,new ae({transparent:!0,opacity:0})),this.lod=null,this.onNodeReady=null,this.provider=null,this.heightProvider=null,this.root=null,this.overrideMaterial=n,this.lod=new pM,this.provider=e,this.heightProvider=i,this.setRoot(t)}update(t,e,i){this.lod.updateLOD(this,t,e,i)}setRoot(t){if(typeof t=="number"){if(!Se.mapModes.has(t))throw new Error("Map mode "+t+" does is not registered.");t=new(Se.mapModes.get(t))(null,this)}this.root!==null&&(this.remove(this.root),this.root=null),this.root=t,this.root!==null&&(this.geometry=this.root.constructor.baseGeometry,this.scale.copy(this.root.constructor.baseScale),this.root.mapView=this,this.add(this.root))}setProvider(t){t!==this.provider&&(this.provider=t,this.clear())}setHeightProvider(t){t!==this.heightProvider&&(this.heightProvider=t,this.clear())}clear(){return this.traverse(function(t){t.childrenCache&&(t.childrenCache=null),t.initialize&&t.initialize()}),this}getMetaData(){this.provider.getMetaData()}raycast(t,e){return!1}}Se.PLANAR=200,Se.SPHERICAL=201,Se.HEIGHT=202,Se.HEIGHT_SHADER=203,Se.MARTINI=204,Se.TERRAIN=205,Se.mapModes=new Map([[Se.PLANAR,Fi],[Se.SPHERICAL,Ys],[Se.HEIGHT,Bi],[Se.HEIGHT_SHADER,ei],[Se.MARTINI,yi],[Se.TERRAIN,Zs]]);class sg{static get(t,e,i){const n=new XMLHttpRequest;return n.overrideMimeType("text/plain"),n.open("GET",t,!0),e!==void 0&&(n.onload=function(){e(n.response)}),i!==void 0&&(n.onerror=i),n.send(null),n}static getRaw(t,e,i){var n=new XMLHttpRequest;return n.responseType="arraybuffer",n.open("GET",t,!0),e!==void 0&&(n.onload=function(){e(n.response)}),i!==void 0&&(n.onerror=i),n.send(null),n}static request(t,e,i,n,r,a,o){const l=new XMLHttpRequest;if(l.overrideMimeType("text/plain"),l.open(e,t,!0),i!=null)for(const h in i)l.setRequestHeader(h,i[h]);return r!==void 0&&(l.onload=function(h){r(function(c){try{return JSON.parse(c)}catch{return c}}(l.response),l)}),a!==void 0&&(l.onerror=a),o!==void 0&&(l.onprogress=o),n!==void 0?l.send(n):l.send(null),l}}class Pn extends Ul{constructor(t="",e=Pn.AERIAL){super(),this.maxZoom=19,this.format="jpeg",this.mapSize=512,this.subdomain="t1",this.apiKey=t,this.type=e}getMetaData(){const t="http://dev.virtualearth.net/REST/V1/Imagery/Metadata/RoadOnDemand?output=json&include=ImageryProviders&key="+this.apiKey;sg.get(t,function(e){JSON.parse(e)})}static quadKey(t,e,i){let n="";for(let r=t;r>0;r--){const a=1<{const a=document.createElement("img");if(a.onload=function(){n(a)},a.onerror=function(){r()},a.crossOrigin="Anonymous",this.getUrl){const o=this.getUrl(t,e,i);if(o!==!1)return void(a.src=o)}a.src="http://ecn."+this.subdomain+".tiles.virtualearth.net/tiles/"+this.type+Pn.quadKey(t,e,i)+".jpeg?g=1173"})}}Pn.AERIAL="a",Pn.ROAD="r",Pn.AERIAL_LABELS="h",Pn.OBLIQUE="o",Pn.OBLIQUE_LABELS="b",(class extends Ul{constructor(s,t,e,i,n,r){super(),this.appId=s!==void 0?s:"",this.appCode=t!==void 0?t:"",this.style=e!==void 0?e:"base",this.scheme=i!==void 0?i:"normal.day",this.format=n!==void 0?n:"png",this.size=r!==void 0?r:512,this.version="newest",this.server=1}nextServer(){this.server=this.server%4==0?1:this.server+1}getMetaData(){}fetchTile(s,t,e){return this.nextServer(),new Promise((i,n)=>{const r=document.createElement("img");r.onload=function(){i(r)},r.onerror=function(){n()},r.crossOrigin="Anonymous",r.src="https://"+this.server+"."+this.style+".maps.api.here.com/maptile/2.1/maptile/"+this.version+"/"+this.scheme+"/"+s+"/"+t+"/"+e+"/"+this.size+"/"+this.format+"?app_id="+this.appId+"&app_code="+this.appCode})}}).PATH="/maptile/2.1/";class $i extends Ul{constructor(t="",e="",i=$i.STYLE,n="png",r=!1,a="v4"){super(),this.apiToken=t,this.format=n,this.useHDPI=r,this.mode=i,this.mapId=e,this.style=e,this.version=a}getMetaData(){const t=$i.ADDRESS+this.version+"/"+this.mapId+".json?access_token="+this.apiToken;sg.get(t,e=>{const i=JSON.parse(e);this.name=i.name,this.minZoom=i.minZoom,this.maxZoom=i.maxZoom,this.bounds=i.bounds,this.center=i.center})}fetchTile(t,e,i){return new Promise((n,r)=>{const a=document.createElement("img");if(a.onload=function(){n(a)},a.onerror=function(){r()},a.crossOrigin="Anonymous",this.getUrl){const o=this.getUrl(t,e,i);if(o!==!1)return void(a.src=o)}this.mode===$i.STYLE?a.src=$i.ADDRESS+"styles/v1/"+this.style+"/tiles/"+t+"/"+e+"/"+i+(this.useHDPI?"@2x?access_token=":"?access_token=")+this.apiToken:a.src=$i.ADDRESS+"v4/"+this.mapId+"/"+t+"/"+e+"/"+i+(this.useHDPI?"@2x.":".")+this.format+"?access_token="+this.apiToken})}}$i.ADDRESS="https://api.mapbox.com/",$i.STYLE=100,$i.MAP_ID=101;class gM{constructor(){d(this,"_retryTimes",3),d(this,"_queued",{}),d(this,"_cached",{})}async generate(t){return{}}async get(t){if(this._cached[t])return this._cached[t];let e=!1;this._queued[t]||(this._queued[t]=[],e=!0);const i=new Promise((r,a)=>{this._queued[t].push([r,a])}),n=this._queued[t];if(e){for(let r=0;r2){var l=i.lastIndexOf("/");if(l!==i.length-1){l===-1?(i="",n=0):n=(i=i.slice(0,l)).length-1-i.lastIndexOf("/"),r=o,a=0;continue}}else if(i.length===2||i.length===1){i="",n=0,r=o,a=0;continue}}t&&(i.length>0?i+="/..":i="..",n=2)}else i.length>0?i+="/"+s.slice(r+1,o):i=s.slice(r+1,o),n=o-r-1;r=o,a=0}else e===46&&a!==-1?++a:a=-1}return i}var na={resolve:function(){for(var s,t="",e=!1,i=arguments.length-1;i>=-1&&!e;i--){var n;i>=0?n=arguments[i]:(s===void 0&&(s=process.cwd()),n=s),tn(n),n.length!==0&&(t=n+"/"+t,e=n.charCodeAt(0)===47)}return t=rg(t,!e),e?t.length>0?"/"+t:"/":t.length>0?t:"."},normalize:function(s){if(tn(s),s.length===0)return".";var t=s.charCodeAt(0)===47,e=s.charCodeAt(s.length-1)===47;return(s=rg(s,!t)).length!==0||t||(s="."),s.length>0&&e&&(s+="/"),t?"/"+s:s},isAbsolute:function(s){return tn(s),s.length>0&&s.charCodeAt(0)===47},join:function(){if(arguments.length===0)return".";for(var s,t=0;t0&&(s===void 0?s=e:s+="/"+e)}return s===void 0?".":na.normalize(s)},relative:function(s,t){if(tn(s),tn(t),s===t||(s=na.resolve(s))===(t=na.resolve(t)))return"";for(var e=1;eo){if(t.charCodeAt(r+h)===47)return t.slice(r+h+1);if(h===0)return t.slice(r+h)}else n>o&&(s.charCodeAt(e+h)===47?l=h:h===0&&(l=0));break}var c=s.charCodeAt(e+h);if(c!==t.charCodeAt(r+h))break;c===47&&(l=h)}var u="";for(h=e+l+1;h<=i;++h)h!==i&&s.charCodeAt(h)!==47||(u.length===0?u+="..":u+="/..");return u.length>0?u+t.slice(r+l):(r+=l,t.charCodeAt(r)===47&&++r,t.slice(r))},_makeLong:function(s){return s},dirname:function(s){if(tn(s),s.length===0)return".";for(var t=s.charCodeAt(0),e=t===47,i=-1,n=!0,r=s.length-1;r>=1;--r)if((t=s.charCodeAt(r))===47){if(!n){i=r;break}}else n=!1;return i===-1?e?"/":".":e&&i===1?"//":s.slice(0,i)},basename:function(s,t){if(t!==void 0&&typeof t!="string")throw new TypeError('"ext" argument must be a string');tn(s);var e,i=0,n=-1,r=!0;if(t!==void 0&&t.length>0&&t.length<=s.length){if(t.length===s.length&&t===s)return"";var a=t.length-1,o=-1;for(e=s.length-1;e>=0;--e){var l=s.charCodeAt(e);if(l===47){if(!r){i=e+1;break}}else o===-1&&(r=!1,o=e+1),a>=0&&(l===t.charCodeAt(a)?--a==-1&&(n=e):(a=-1,n=o))}return i===n?n=o:n===-1&&(n=s.length),s.slice(i,n)}for(e=s.length-1;e>=0;--e)if(s.charCodeAt(e)===47){if(!r){i=e+1;break}}else n===-1&&(r=!1,n=e+1);return n===-1?"":s.slice(i,n)},extname:function(s){tn(s);for(var t=-1,e=0,i=-1,n=!0,r=0,a=s.length-1;a>=0;--a){var o=s.charCodeAt(a);if(o!==47)i===-1&&(n=!1,i=a+1),o===46?t===-1?t=a:r!==1&&(r=1):t!==-1&&(r=-1);else if(!n){e=a+1;break}}return t===-1||i===-1||r===0||r===1&&t===i-1&&t===e+1?"":s.slice(t,i)},format:function(s){if(s===null||typeof s!="object")throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof s);return function(t,e){var i=e.dir||e.root,n=e.base||(e.name||"")+(e.ext||"");return i?i===e.root?i+n:i+t+n:n}("/",s)},parse:function(s){tn(s);var t={root:"",dir:"",base:"",ext:"",name:""};if(s.length===0)return t;var e,i=s.charCodeAt(0),n=i===47;n?(t.root="/",e=1):e=0;for(var r=-1,a=0,o=-1,l=!0,h=s.length-1,c=0;h>=e;--h)if((i=s.charCodeAt(h))!==47)o===-1&&(l=!1,o=h+1),i===46?r===-1?r=h:c!==1&&(c=1):r!==-1&&(c=-1);else if(!l){a=h+1;break}return r===-1||o===-1||c===0||c===1&&r===o-1&&r===a+1?o!==-1&&(t.base=t.name=a===0&&n?s.slice(1,o):s.slice(a,o)):(a===0&&n?(t.name=s.slice(1,r),t.base=s.slice(1,o)):(t.name=s.slice(a,r),t.base=s.slice(a,o)),t.ext=s.slice(r,o)),a>0?t.dir=s.slice(0,a-1):n&&(t.dir="/"),t},sep:"/",delimiter:":",win32:null,posix:null};na.posix=na;var pu=na;function ag(s){let t;try{t=new URL(s,"http://fakehost.com/")}catch{return null}const e=t.pathname.split("/").pop(),i=e.lastIndexOf(".");return i===-1||i===e.length-1?null:e.substring(i+1)}class vM{constructor(){this.maxSize=800,this.minSize=600,this.unloadPercent=.05,this.itemSet=new Map,this.itemList=[],this.usedSet=new Set,this.callbacks=new Map,this.unloadPriorityCallback=null;const t=this.itemSet;this.defaultPriorityCallback=e=>t.get(e)}isFull(){return this.itemSet.size>=this.maxSize}add(t,e){const i=this.itemSet;if(i.has(t)||this.isFull())return!1;const n=this.usedSet,r=this.itemList,a=this.callbacks;return r.push(t),n.add(t),i.set(t,Date.now()),a.set(t,e),!0}remove(t){const e=this.usedSet,i=this.itemSet,n=this.itemList,r=this.callbacks;if(i.has(t)){r.get(t)(t);const a=n.indexOf(t);return n.splice(a,1),e.delete(t),i.delete(t),r.delete(t),!0}return!1}markUsed(t){const e=this.itemSet,i=this.usedSet;e.has(t)&&!i.has(t)&&(e.set(t,Date.now()),i.add(t))}markAllUnused(){this.usedSet.clear()}unloadUnusedContent(){const t=this.unloadPercent,e=this.minSize,i=this.itemList,n=this.itemSet,r=this.usedSet,a=this.callbacks,o=i.length-r.size,l=i.length-e,h=this.unloadPriorityCallback||this.defaultPriorityCallback;if(l>0&&o>0){i.sort((f,g)=>{const _=r.has(f),v=r.has(g);return _&&v?0:_||v?_?1:-1:h(g)-h(f)});const c=Math.min(l,o),u=Math.max(e*t,c*t);let p=Math.min(u,o);p=Math.ceil(p);const m=i.splice(0,p);for(let f=0,g=m.length;f{this.scheduled=!1,this.unloadUnusedContent(),t&&this.markAllUnused()},Promise.resolve().then(e))}}class og{constructor(){this.maxJobs=6,this.items=[],this.callbacks=new Map,this.currJobs=0,this.scheduled=!1,this.autoUpdate=!0,this.priorityCallback=()=>{throw new Error("PriorityQueue: PriorityCallback function not defined.")},this.schedulingCallback=t=>{requestAnimationFrame(t)},this._runjobs=()=>{this.tryRunJobs(),this.scheduled=!1}}sort(){const t=this.priorityCallback;this.items.sort(t)}add(t,e){return new Promise((i,n)=>{const r=this.items,a=this.callbacks;r.push(t),a.set(t,(...o)=>e(...o).then(i).catch(n)),this.autoUpdate&&this.scheduleJobRun()})}remove(t){const e=this.items,i=this.callbacks,n=e.indexOf(t);n!==-1&&(e.splice(n,1),i.delete(t))}tryRunJobs(){this.sort();const t=this.items,e=this.callbacks,i=this.maxJobs;let n=this.currJobs;for(;i>n&&t.length>0;){n++;const r=t.pop(),a=e.get(r);e.delete(r),a(r).then(()=>{this.currJobs--,this.autoUpdate&&this.scheduleJobRun()}).catch(()=>{this.currJobs--,this.autoUpdate&&this.scheduleJobRun()})}this.currJobs=n}scheduleJobRun(){this.scheduled||(this.schedulingCallback(this._runjobs),this.scheduled=!0)}}const no=3,mu=4;function fu(s){return s===no||s===mu}function Js(s,t){return s.__lastFrameVisited===t&&s.__used}function lg(s,t){s.__lastFrameVisited!==t&&(s.__lastFrameVisited=t,s.__used=!1,s.__inFrustum=!1,s.__isLeaf=!1,s.__visible=!1,s.__active=!1,s.__error=1/0,s.__distanceFromCamera=1/0,s.__childrenWereVisible=!1,s.__allChildrenLoaded=!1)}function hg(s,t,e){if(lg(s,t),s.__used=!0,e.markUsed(s),s.__contentEmpty){const i=s.children;for(let n=0,r=i.length;n0&&s.__depth+1>=r))return!0;let h=!1;const c=s.children;for(let u=0,p=c.length;us.__depth!==t.__depth?s.__depth>t.__depth?-1:1:s.__inFrustum!==t.__inFrustum?s.__inFrustum?1:-1:s.__used!==t.__used?s.__used?1:-1:s.__error!==t.__error?s.__error>t.__error?1:-1:s.__distanceFromCamera!==t.__distanceFromCamera?s.__distanceFromCamera>t.__distanceFromCamera?-1:1:0,xM=s=>1/(s.__depthFromRenderedParent+1);class yM{get rootTileSet(){const t=this.tileSets[this.rootURL];return!t||t instanceof Promise?null:t}get root(){const t=this.rootTileSet;return t?t.root:null}constructor(t){this.tileSets={},this.rootURL=t,this.fetchOptions={},this.preprocessURL=null;const e=new vM;e.unloadPriorityCallback=xM;const i=new og;i.maxJobs=4,i.priorityCallback=fg;const n=new og;n.maxJobs=1,n.priorityCallback=fg,this.lruCache=e,this.downloadQueue=i,this.parseQueue=n,this.stats={parsing:0,downloading:0,failed:0,inFrustum:0,used:0,active:0,visible:0},this.frameCount=0,this.errorTarget=6,this.errorThreshold=1/0,this.loadSiblings=!0,this.displayActiveTiles=!1,this.maxDepth=1/0,this.stopAtEmptyTiles=!0}traverse(t,e){const i=this.tileSets[this.rootURL];i&&i.root&&gu(i.root,t,e)}update(){const t=this.stats,e=this.lruCache,i=this.tileSets,n=i[this.rootURL];if(!(this.rootURL in i))return void this.loadRootTileSet(this.rootURL);if(!n||!n.root)return;const r=n.root;t.inFrustum=0,t.used=0,t.active=0,t.visible=0,this.frameCount++,ug(r,this),dg(r,this),pg(r,this),mg(r,this),e.scheduleUnload()}parseTile(t,e,i){return null}disposeTile(t){}preprocessNode(t,e,i){if(t.content&&(!("uri"in t.content)&&"url"in t.content&&(t.content.uri=t.content.url,delete t.content.url),t.content.uri&&(t.content.uri=function(...n){const r=/^[a-zA-Z]+:\/\//;let a=-1;for(let o=0,l=n.length;o{if(n.ok)return n.json();throw new Error(`TilesRenderer: Failed to load tileset "${t}" with status ${n.status} : ${n.statusText}`)}).then(n=>{const r=n.asset.version;console.assert(r==="1.0"||r==="0.0",'asset.version is expected to be a string of "1.0" or "0.0"');const a=pu.dirname(t);return gu(n.root,(o,l)=>this.preprocessNode(o,l,a),null,i,i?i.__depth:0),n})}loadRootTileSet(t){const e=this.tileSets;if(t in e)return e[t]instanceof Error?Promise.reject(e[t]):Promise.resolve(e[t]);{const i=this.fetchTileSet(this.preprocessURL?this.preprocessURL(t):t,this.fetchOptions).then(n=>{e[t]=n});return i.catch(n=>{console.error(n),e[t]=n}),e[t]=i,i}}requestTileContents(t){if(t.__loadingState!==0)return;const e=this.stats,i=this.lruCache,n=this.downloadQueue,r=this.parseQueue,a=t.__externalTileSet;i.add(t,u=>{u.__loadingState===1?(u.__loadAbort.abort(),u.__loadAbort=null):a?u.children.length=0:this.disposeTile(u),u.__loadingState===1?e.downloading--:u.__loadingState===2&&e.parsing--,u.__loadingState=0,u.__loadIndex++,r.remove(u),n.remove(u)}),t.__loadIndex++;const o=t.__loadIndex,l=new AbortController,h=l.signal;e.downloading++,t.__loadAbort=l,t.__loadingState=1;const c=u=>{t.__loadIndex===o&&(u.name!=="AbortError"?(r.remove(t),n.remove(t),t.__loadingState===2?e.parsing--:t.__loadingState===1&&e.downloading--,e.failed++,console.error(`TilesRenderer : Failed to load tile at url "${t.content.uri}".`),console.error(u),t.__loadingState=mu):i.remove(t))};a?n.add(t,u=>{if(u.__loadIndex!==o)return Promise.resolve();const p=this.preprocessURL?this.preprocessURL(u.content.uri):u.content.uri;return this.fetchTileSet(p,Object.assign({signal:h},this.fetchOptions),u)}).then(u=>{t.__loadIndex===o&&(e.downloading--,t.__loadAbort=null,t.__loadingState=no,t.children.push(u.root))}).catch(c):n.add(t,u=>{if(u.__loadIndex!==o)return Promise.resolve();const p=this.preprocessURL?this.preprocessURL(u.content.uri):u.content.uri;return fetch(p,Object.assign({signal:h},this.fetchOptions))}).then(u=>{if(t.__loadIndex===o){if(u.ok)return u.arrayBuffer();throw new Error(`Failed to load model with error code ${u.status}`)}}).then(u=>{if(t.__loadIndex===o)return e.downloading--,e.parsing++,t.__loadAbort=null,t.__loadingState=2,r.add(t,p=>{if(p.__loadIndex!==o)return Promise.resolve();const m=ag(p.content.uri);return this.parseTile(u,p,m)})}).then(()=>{t.__loadIndex===o&&(e.parsing--,t.__loadingState=no,t.__wasSetVisible&&this.setTileVisible(t,!0),t.__wasSetActive&&this.setTileActive(t,!0))}).catch(c)}dispose(){const t=this.lruCache;this.traverse(e=>{t.remove(e)})}}function gg(s){return new TextDecoder().decode(s)}class Fl{constructor(t,e,i,n){this.buffer=t,this.binOffset=e+i,this.binLength=n;let r=null;if(i!==0){const a=new Uint8Array(t,e,i);r=JSON.parse(gg(a))}else r={};this.header=r}getKeys(){return Object.keys(this.header)}getData(t,e,i=null,n=null){const r=this.header;if(!(t in r))return null;const a=r[t];if(a instanceof Object){if(Array.isArray(a))return a;{const{buffer:o,binOffset:l,binLength:h}=this,c=a.byteOffset||0,u=a.type||n,p=a.componentType||i;if("type"in a&&n&&a.type!==n)throw new Error("FeatureTable: Specified type does not match expected type.");let m,f;switch(u){case"SCALAR":m=1;break;case"VEC2":m=2;break;case"VEC3":m=3;break;case"VEC4":m=4;break;default:throw new Error(`FeatureTable : Feature type not provided for "${t}".`)}const g=l+c,_=e*m;switch(p){case"BYTE":f=new Int8Array(o,g,_);break;case"UNSIGNED_BYTE":f=new Uint8Array(o,g,_);break;case"SHORT":f=new Int16Array(o,g,_);break;case"UNSIGNED_SHORT":f=new Uint16Array(o,g,_);break;case"INT":f=new Int32Array(o,g,_);break;case"UNSIGNED_INT":f=new Uint32Array(o,g,_);break;case"FLOAT":f=new Float32Array(o,g,_);break;case"DOUBLE":f=new Float64Array(o,g,_);break;default:throw new Error(`FeatureTable : Feature component type not provided for "${t}".`)}if(g+_*f.BYTES_PER_ELEMENT>l+h)throw new Error("FeatureTable: Feature data read outside binary body length.");return f}}return a}}class _u extends Fl{constructor(t,e,i,n,r){super(t,i,n,r),this.batchSize=e}getData(t,e=null,i=null){return super.getData(t,this.batchSize,e,i)}}class so{constructor(){this.fetchOptions={},this.workingPath=""}load(t){return fetch(t,this.fetchOptions).then(e=>{if(!e.ok)throw new Error(`Failed to load file "${t}" with status ${e.status} : ${e.statusText}`);return e.arrayBuffer()}).then(e=>(this.workingPath===""&&(this.workingPath=this.workingPathForURL(t)),this.parse(e)))}resolveExternalURL(t){return/^[^\\/]/.test(t)?this.workingPath+"/"+t:t}workingPathForURL(t){const e=t.split(/[\\/]/g);return e.pop(),e.join("/")+"/"}parse(t){throw new Error("LoaderBase: Parse not implemented.")}}class bM extends so{parse(t){const e=new DataView(t),i=String.fromCharCode(e.getUint8(0))+String.fromCharCode(e.getUint8(1))+String.fromCharCode(e.getUint8(2))+String.fromCharCode(e.getUint8(3));console.assert(i==="b3dm");const n=e.getUint32(4,!0);console.assert(n===1);const r=e.getUint32(8,!0);console.assert(r===t.byteLength);const a=e.getUint32(12,!0),o=e.getUint32(16,!0),l=e.getUint32(20,!0),h=e.getUint32(24,!0),c=t.slice(28,28+a+o),u=new Fl(c,0,a,o),p=28+a+o,m=t.slice(p,p+l+h),f=new _u(m,u.getData("BATCH_LENGTH"),0,l,h),g=p+l+h;return{version:n,featureTable:u,batchTable:f,glbBytes:new Uint8Array(t,g,r-g)}}}class _g extends bM{constructor(t=Nr){super(),this.manager=t}parse(t){const e=super.parse(t),i=e.glbBytes.slice().buffer;return new Promise((n,r)=>{const a=this.manager,o=this.fetchOptions,l=a.getHandler("path.gltf")||new ea(a);o.credentials==="include"&&o.mode==="cors"&&l.setCrossOrigin("use-credentials"),"credentials"in o&&l.setWithCredentials(o.credentials==="include"),o.headers&&l.setRequestHeader(o.headers);let h=this.workingPath;!/[\\/]$/.test(h)&&h.length&&(h+="/"),l.parse(i,h,c=>{const{batchTable:u,featureTable:p}=e,{scene:m}=c,f=p.getData("RTC_CENTER");f&&(m.position.x+=f[0],m.position.y+=f[1],m.position.z+=f[2]),c.batchTable=u,c.featureTable=p,m.batchTable=u,m.featureTable=p,n(c)},r)})}}class MM extends so{parse(t){const e=new DataView(t),i=String.fromCharCode(e.getUint8(0))+String.fromCharCode(e.getUint8(1))+String.fromCharCode(e.getUint8(2))+String.fromCharCode(e.getUint8(3));console.assert(i==="pnts");const n=e.getUint32(4,!0);console.assert(n===1);const r=e.getUint32(8,!0);console.assert(r===t.byteLength);const a=e.getUint32(12,!0),o=e.getUint32(16,!0),l=e.getUint32(20,!0),h=e.getUint32(24,!0),c=t.slice(28,28+a+o),u=new Fl(c,0,a,o),p=28+a+o,m=t.slice(p,p+l+h),f=new _u(m,u.getData("BATCH_LENGTH")||u.getData("POINTS_LENGTH"),0,l,h);return Promise.resolve({version:n,featureTable:u,batchTable:f})}}class vg extends MM{constructor(t=Nr){super(),this.manager=t}parse(t){return super.parse(t).then(e=>{const{featureTable:i}=e,n=i.getData("POINTS_LENGTH"),r=i.getData("POSITION",n,"FLOAT","VEC3"),a=i.getData("RGB",n,"UNSIGNED_BYTE","VEC3");["RTC_CENTER","QUANTIZED_VOLUME_OFFSET","QUANTIZED_VOLUME_SCALE","CONSTANT_RGBA","BATCH_LENGTH","POSITION_QUANTIZED","RGBA","RGB565","NORMAL","NORMAL_OCT16P"].forEach(u=>{u in i.header&&console.warn(`PNTSLoader: Unsupported FeatureTable feature "${u}" detected.`)});const o=new Pt;o.setAttribute("position",new se(r,3,!1));const l=new Na;l.size=2,l.sizeAttenuation=!1,a!==null&&(o.setAttribute("color",new se(a,3,!0)),l.vertexColors=!0);const h=new ll(o,l);e.scene=h,e.scene.featureTable=i;const c=i.getData("RTC_CENTER");return c&&(e.scene.position.x+=c[0],e.scene.position.y+=c[1],e.scene.position.z+=c[2]),e})}}class wM extends so{parse(t){const e=new DataView(t),i=String.fromCharCode(e.getUint8(0))+String.fromCharCode(e.getUint8(1))+String.fromCharCode(e.getUint8(2))+String.fromCharCode(e.getUint8(3));console.assert(i==="i3dm");const n=e.getUint32(4,!0);console.assert(n===1);const r=e.getUint32(8,!0);console.assert(r===t.byteLength);const a=e.getUint32(12,!0),o=e.getUint32(16,!0),l=e.getUint32(20,!0),h=e.getUint32(24,!0),c=e.getUint32(28,!0),u=t.slice(32,32+a+o),p=new Fl(u,0,a,o),m=32+a+o,f=t.slice(m,m+l+h),g=new _u(f,p.getData("INSTANCES_LENGTH"),0,l,h),_=m+l+h,v=new Uint8Array(t,_,r-_);let x=null,y=null;if(c)x=v,y=Promise.resolve();else{const b=this.resolveExternalURL(gg(v));y=fetch(b,this.fetchOptions).then(S=>{if(!S.ok)throw new Error(`I3DMLoaderBase : Failed to load file "${b}" with status ${S.status} : ${S.statusText}`);return S.arrayBuffer()}).then(S=>{x=new Uint8Array(S)})}return y.then(()=>({version:n,featureTable:p,batchTable:g,glbBytes:x}))}}const xg=new M,vu=new M,xu=new M,yg=new M,yu=new Ht,Bl=new M,Vl=new rt;class bg extends wM{constructor(t=Nr){super(),this.manager=t}resolveExternalURL(t){return this.manager.resolveURL(super.resolveExternalURL(t))}parse(t){return super.parse(t).then(e=>{const{featureTable:i,batchTable:n}=e,r=e.glbBytes.slice().buffer;return new Promise((a,o)=>{const l=this.fetchOptions,h=this.manager,c=h.getHandler("path.gltf")||new ea(h);l.credentials==="include"&&l.mode==="cors"&&c.setCrossOrigin("use-credentials"),"credentials"in l&&c.setWithCredentials(l.credentials==="include"),l.headers&&c.setRequestHeader(l.headers);let u=this.workingPath;/[\\/]$/.test(u)||(u+="/"),c.parse(r,u,p=>{const m=i.getData("INSTANCES_LENGTH"),f=i.getData("POSITION",m,"FLOAT","VEC3"),g=i.getData("NORMAL_UP",m,"FLOAT","VEC3"),_=i.getData("NORMAL_RIGHT",m,"FLOAT","VEC3"),v=i.getData("SCALE_NON_UNIFORM",m,"FLOAT","VEC3"),x=i.getData("SCALE",m,"FLOAT","SCALAR");["RTC_CENTER","QUANTIZED_VOLUME_OFFSET","QUANTIZED_VOLUME_SCALE","EAST_NORTH_UP","POSITION_QUANTIZED","NORMAL_UP_OCT32P","NORMAL_RIGHT_OCT32P"].forEach(w=>{w in i.header&&console.warn(`I3DMLoader: Unsupported FeatureTable feature "${w}" detected.`)});const y=new Map,b=[];p.scene.traverse(w=>{if(w.isMesh){const{geometry:C,material:L}=w,T=new tm(C,L,m);T.position.copy(w.position),T.rotation.copy(w.rotation),T.scale.copy(w.scale),b.push(T),y.set(w,T)}});const S=new M;for(let w=0;w{const L=C.parent;L&&(L.remove(C),L.add(w),w.updateMatrixWorld(),w.position.copy(S).applyMatrix4(w.matrixWorld))});for(let w=0;w{const a=new De;return r.forEach(o=>{a.add(o.scene)}),{tiles:r,scene:a}})}}class CM extends so{constructor(t=Nr){super(),this.manager=t}parse(t){return new Promise((e,i)=>{const n=this.manager,r=this.fetchOptions;let a=n.getHandler("path.gltf")||n.getHandler("path.glb");a||(a=new ea(n),r.credentials==="include"&&r.mode==="cors"&&a.setCrossOrigin("use-credentials"),"credentials"in r&&a.setWithCredentials(r.credentials==="include"),r.headers&&a.setRequestHeader(r.headers));let o=a.resourcePath||a.path||this.workingPath;!/[\\/]$/.test(o)&&o.length&&(o+="/"),a.parse(t,o,l=>{e(l)},i)})}}const Hl=new rt;class EM extends De{constructor(t){super(),this.name="TilesRenderer.TilesGroup",this.tilesRenderer=t}raycast(t,e){this.tilesRenderer.optimizeRaycast&&this.tilesRenderer.raycast(t,e)}updateMatrixWorld(t){if(this.matrixAutoUpdate&&this.updateMatrix(),this.matrixWorldNeedsUpdate||t){this.parent===null?Hl.copy(this.matrix):Hl.multiplyMatrices(this.parent.matrixWorld,this.matrix),this.matrixWorldNeedsUpdate=!1;const e=Hl.elements,i=this.matrixWorld.elements;let n=!1;for(let r=0;r<16;r++){const a=e[r],o=i[r];if(Math.abs(a-o)>Number.EPSILON){n=!0;break}}if(n){this.matrixWorld.copy(Hl);const r=this.children;for(let a=0,o=r.length;a{Object.getPrototypeOf(i).raycast.call(i,t,e)})}function wg(s,t,e,i){if(e.has(s)){if(Mu(s.cached.scene,i,bi),bi.length>0){bi.length>1&&bi.sort(bu);const l=bi[0];return bi.length=0,l}return null}const n=[],r=s.children;for(let l=0,h=r.length;l1e-6&&console.warn("ThreeTilesRenderer : Non uniform scale used for tile which may cause issues when raycasting.");let v={distance:1/0,tile:null};n.push(v),v.distance=Mg.distanceToSquared(aa.origin)*_*_,v.tile=c}}}n.sort(bu);let a=1/0,o=null;for(let l=0,h=n.length;la)break;{const u=c.tile,p=u.cached.scene;let m=null;if(e.has(u)?(Mu(p,i,bi),bi.length>0&&(bi.length>1&&bi.sort(bu),m=bi[0])):m=wg(u,t,e,i),m){const f=m.distance*m.distance;f{e.frustumCulled=e[Tg]&&t})}class Su extends yM{get autoDisableRendererCulling(){return this._autoDisableRendererCulling}set autoDisableRendererCulling(t){this._autoDisableRendererCulling!==t&&(super._autoDisableRendererCulling=t,this.forEachLoadedModel(e=>{Cg(e,!t)}))}constructor(...t){super(...t),this.group=new EM(this),this.cameras=[],this.cameraMap=new Map,this.cameraInfo=[],this.activeTiles=new Set,this.visibleTiles=new Set,this._autoDisableRendererCulling=!0,this.optimizeRaycast=!0,this.onLoadTileSet=null,this.onLoadModel=null,this.onDisposeModel=null,this.onTileVisibilityChange=null;const e=new um;e.setURLModifier(n=>this.preprocessURL?this.preprocessURL(n):n),this.manager=e;const i=this;this._overridenRaycast=function(n,r){i.optimizeRaycast||Object.getPrototypeOf(this).raycast.call(this,n,r)}}getBounds(t){if(!this.root)return!1;const e=this.root.cached,i=e.box,n=e.boxTransform;return!!i&&(t.copy(i),t.applyMatrix4(n),!0)}getOrientedBounds(t,e){if(!this.root)return!1;const i=this.root.cached,n=i.box,r=i.boxTransform;return!!n&&(t.copy(n),e.copy(r),!0)}getBoundingSphere(t){if(!this.root)return!1;const e=this.root.cached.sphere;return!!e&&(t.copy(e),!0)}forEachLoadedModel(t){this.traverse(e=>{const i=e.cached.scene;i&&t(i,e)})}raycast(t,e){if(this.root)if(t.firstHitOnly){const i=wg(this.root,this.group,this.activeTiles,t);i&&e.push(i)}else Sg(this.root,this.group,this.activeTiles,t,e)}hasCamera(t){return this.cameraMap.has(t)}setCamera(t){const e=this.cameras,i=this.cameraMap;return!i.has(t)&&(i.set(t,new j),e.push(t),!0)}setResolution(t,e,i){const n=this.cameraMap;return!!n.has(t)&&(e instanceof j?n.get(t).copy(e):n.get(t).set(e,i),!0)}setResolutionFromRenderer(t,e){const i=this.cameraMap;if(!i.has(t))return!1;const n=i.get(t);return e.getSize(n),n.multiplyScalar(e.getPixelRatio()),!0}deleteCamera(t){const e=this.cameras,i=this.cameraMap;if(i.has(t)){const n=e.indexOf(t);return e.splice(n,1),i.delete(t),!0}return!1}fetchTileSet(t,...e){const i=super.fetchTileSet(t,...e);return i.then(n=>{this.onLoadTileSet&&Promise.resolve().then(()=>{this.onLoadTileSet(n,t)})}),i}update(){const t=this.group,e=this.cameras,i=this.cameraMap,n=this.cameraInfo;if(e.length===0)return void console.warn("TilesRenderer: no cameras defined. Cannot update 3d tiles.");for(;n.length>e.length;)n.pop();for(;n.length1e-6&&console.warn("ThreeTilesRenderer : Non uniform scale used for tile which may cause issues when calculating screen space error.");for(let a=0,o=n.length;ap.scene);break}case"pnts":{const u=new vg(o);u.workingPath=r,u.fetchOptions=a,h=u.parse(t).then(p=>p.scene);break}case"i3dm":{const u=new bg(o);u.workingPath=r,u.fetchOptions=a,h=u.parse(t).then(p=>p.scene);break}case"cmpt":{const u=new TM(o);u.workingPath=r,u.fetchOptions=a,h=u.parse(t).then(p=>p.scene);break}case"gltf":case"glb":const c=new CM(o);c.workingPath=r,c.fetchOptions=a,h=c.parse(t).then(u=>u.scene);break;default:console.warn(`TilesRenderer: Content type "${i}" not supported.`),h=Promise.resolve(null)}return h.then(c=>{if(e._loadIndex!==l)return;const u=this.rootTileSet.asset&&this.rootTileSet.asset.gltfUpAxis||"y",p=e.cached,m=p.transform;switch(u.toLowerCase()){case"x":hs.makeRotationAxis(PM,-Math.PI/2);break;case"y":hs.makeRotationAxis(AM,Math.PI/2);break;case"z":hs.identity()}c.updateMatrix(),i!=="pnts"&&c.matrix.multiply(hs),c.matrix.premultiply(m),c.matrix.decompose(c.position,c.quaternion,c.scale),c.traverse(v=>{v[Tg]=v.frustumCulled}),Cg(c,!this.autoDisableRendererCulling),p.scene=c,c.traverse(v=>{v.raycast=this._overridenRaycast});const f=[],g=[],_=[];c.traverse(v=>{if(v.geometry&&g.push(v.geometry),v.material){const x=v.material;f.push(v.material);for(const y in x){const b=x[y];b&&b.isTexture&&_.push(b)}}}),p.materials=f,p.geometry=g,p.textures=_,this.onLoadModel&&this.onLoadModel(c,e)})}disposeTile(t){const e=t.cached;if(e.scene){const i=e.materials,n=e.geometry,r=e.textures;for(let a=0,o=n.length;a{a.setRGB(r,r,r)},this.extremeDebugDepth=-1,this.extremeDebugError=-1}initExtremes(){let t=-1;this.traverse(i=>{t=Math.max(t,i.__depth)});let e=-1;this.traverse(i=>{e=Math.max(e,i.geometricError)}),this.extremeDebugDepth=t,this.extremeDebugError=e}fetchTileSet(...t){const e=super.fetchTileSet(...t);return e.then(()=>{Promise.resolve().then(()=>{this.initExtremes()})}).catch(()=>{}),e}getTileInformationFromActiveObject(t){let e=null;return this.activeTiles.forEach(i=>{if(e)return!0;const n=i.cached.scene;n&&n.traverse(r=>{r===t&&(e=i)})}),e?{distanceToCamera:e.__distanceFromCamera,geometricError:e.geometricError,screenSpaceError:e.__error,depth:e.__depth,isLeaf:e.__isLeaf}:null}update(){if(super.update(),!this.root)return;this.boxGroup.visible=this.displayBoxBounds,this.sphereGroup.visible=this.displaySphereBounds;let t=-1;t=this.maxDebugDepth===-1?this.extremeDebugDepth:this.maxDebugDepth;let e=-1;e=this.maxDebugError===-1?this.extremeDebugError:this.maxDebugError;let i=-1;i=this.maxDebugDistance===-1?this.root.cached.sphere.radius:this.maxDebugDistance;const n=this.errorTarget,r=this.colorMode;this.visibleTiles.forEach(a=>{const o=a.cached.scene;let l,h,c;r===7&&(l=Math.random(),h=.5+.5*Math.random(),c=.375+.25*Math.random()),o.traverse(u=>{r===8&&(l=Math.random(),h=.5+.5*Math.random(),c=.375+.25*Math.random());const p=u.material;if(p){const m=u[Tu];if(r===0&&p!==m)u.material.dispose(),u.material=u[Tu];else if(r!==0&&p===m)if(u.isPoints){const f=new Na;f.size=m.size,f.sizeAttenuation=m.sizeAttenuation,u.material=f}else u.material=new yn,u.material.flatShading=!0;switch(r!==7&&delete u.material[Cu],r!==8&&delete u.material[Eu],r){case 4:{const f=a.__depth/t;this.getDebugColor(f,u.material.color);break}case 5:{const f=a.__depthFromRenderedParent/t;this.getDebugColor(f,u.material.color);break}case 1:{const f=a.__error/n;f>1?u.material.color.setRGB(1,0,0):this.getDebugColor(f,u.material.color);break}case 2:{const f=Math.min(a.geometricError/e,1);this.getDebugColor(f,u.material.color);break}case 3:{const f=Math.min(a.__distanceFromCamera/i,1);this.getDebugColor(f,u.material.color);break}case 6:a.children&&a.children.length!==0?this.getDebugColor(0,u.material.color):this.getDebugColor(1,u.material.color);break;case 8:u.material[Eu]||(u.material.color.setHSL(l,h,c),u.material[Eu]=!0);break;case 7:u.material[Cu]||(u.material.color.setHSL(l,h,c),u.material[Cu]=!0);break;case 9:this.customColorCallback?this.customColorCallback(a,u):console.warn("DebugTilesRenderer: customColorCallback not defined")}}})})}setTileVisible(t,e){super.setTileVisible(t,e);const i=t.cached,n=this.sphereGroup,r=this.boxGroup,a=i.boxHelperGroup,o=i.sphereHelper;e?(a&&(r.add(a),a.updateMatrixWorld(!0)),o&&(n.add(o),o.updateMatrixWorld(!0))):(a&&r.remove(a),o&&n.remove(o))}parseTile(t,e,i){return super.parseTile(t,e,i).then(()=>{const n=e.cached,r=n.scene;if(r){if(n.box&&n.boxTransform){const a=n.box,o=n.boxTransform,l=new De;l.name="DebugTilesRenderer.boxHelperGroup",l.matrix.copy(o),l.matrixAutoUpdate=!1;const h=new wy(a,function(c){if(!du[c]){const u=Math.random(),p=.5+.5*Math.random(),m=.375+.25*Math.random();du[c]=new tt().setHSL(u,p,m)}return du[c]}(e.__depth));h.raycast=Ag,l.add(h),n.boxHelperGroup=l,this.visibleTiles.has(e)&&this.displayBoxBounds&&(this.boxGroup.add(l),l.updateMatrixWorld(!0))}if(n.sphere){const a=n.sphere,o=new RM(a);o.raycast=Ag,n.sphereHelper=o,this.visibleTiles.has(e)&&this.displaySphereBounds&&(this.sphereGroup.add(o),o.updateMatrixWorld(!0))}r.traverse(a=>{const o=a.material;o&&(a[Tu]=o)})}})}disposeTile(t){super.disposeTile(t);const e=t.cached;e.boxHelperGroup&&(e.boxHelperGroup.children[0].geometry.dispose(),delete e.boxHelperGroup),e.sphereHelper&&(e.sphereHelper.geometry.dispose(),delete e.sphereHelper)}}class LM{constructor(t){d(this,"_tileMaxLevel",19),d(this,"_subscribedMaxLodLevel",1),d(this,"_elementHandlers",[]),d(this,"_objectParent",null),d(this,"subscribedDataTypeMap",{}),d(this,"_active",!1),d(this,"_configVersion",0),d(this,"shouldIgnoreTile",e=>e.__lodLevel>this._subscribedMaxLodLevel),d(this,"parseElements",e=>{const i=e.cached.scene,n=i.batchTable&&i.batchTable.header;if(!n||!n.id||!n.dataType)return;const r=n.id,a=n.dataType,o={},l=new Map;let h=null,c=null,u=null;for(let p=0,m=a.length;p{const n=e.data.array,r=e.data.stride*i+e.offset;return[n[r],n[r+1]]}),d(this,"getInterleavedBufferValue3",(e,i)=>{const n=e.data.array,r=e.data.stride*i+e.offset;return[n[r],n[r+1],n[r+2]]}),d(this,"findElementInMesh",(e,i,n)=>{if(!e||!e.geometry)return;const r=e.geometry.getAttribute("_batchid");if(!r)return;const a=e.geometry.getAttribute("normal");if(!a)return;const o=e.geometry.getAttribute("position"),l=e.geometry.getAttribute("uv"),h=r.data.count,c={};let u=null;for(let m=0;m{this.parseTileInfo(e),this.shouldIgnoreTile(e)}),d(this,"onTileDispose",(e,i)=>{if(!this.shouldIgnoreTile(e))for(const n of this._elementHandlers)n.disposeTileElementObjects(e)}),d(this,"onTileShow",e=>{this._active&&!this.shouldIgnoreTile(e)&&this.refreshTile(e)}),d(this,"onTileHide",e=>{if(this._active&&!this.shouldIgnoreTile(e))for(const i of this._elementHandlers)i.hideTileElementObjects(e)}),d(this,"parseTileInfo",e=>{const i=e.content.uri,n=i.substring(i.lastIndexOf("/")+1).split(".")[0],r=n.split("-");e.__id=n,e.__level=parseInt(r[0],10),e.__lodLevel=this._tileMaxLevel-e.__level}),d(this,"refreshTile",e=>{if(e.__elementsConfigVersion!==this._configVersion){for(const i of this._elementHandlers)i.disposeTileElementObjects(e);this.parseElements(e),e.__elementsConfigVersion=this._configVersion}for(const i of this._elementHandlers)i.showTileElementObjects(e)}),d(this,"refreshTiles",()=>{this.tilesRenderer.forEachLoadedModel((e,i)=>{i.__visible&&!this.shouldIgnoreTile(i)&&this.refreshTile(i)}),this.engine.requestRender()}),this._objectParent=t}registerElement(t){t.parent=this._objectParent,t.engine=this.engine;for(const e of t.subscribedDataTypeIds)this.subscribedDataTypeMap[e]=t;return this._elementHandlers.push(t),this._configVersion++,this._active=!0,this.refreshTiles(),t}unregisterElement(t){for(let i of Object.keys(this.subscribedDataTypeMap))this.subscribedDataTypeMap[i]===t&&delete this.subscribedDataTypeMap[i];let e=this._elementHandlers.indexOf(t);e>-1&&(t.dispose(),this._elementHandlers.splice(e,1)),this._configVersion++,this._active=this._elementHandlers.length>0,this.refreshTiles()}tick(t){if(this._active)for(const e of this._elementHandlers)e.tick(t)}get subscribedMaxLodLevel(){return this._subscribedMaxLodLevel}set subscribedMaxLodLevel(t){this._subscribedMaxLodLevel=t}}class Au extends St{constructor(t){if(super(),d(this,"isEventEntitySupported",!0),d(this,"_expandStepSize",100),d(this,"_meshes",[]),d(this,"_colorMap",{}),d(this,"_attributes",[]),d(this,"_idIndexMap",{}),d(this,"_indexIdMap",{}),d(this,"_instanceMatrixArray",new Float32Array(1600)),d(this,"_instanceColorArray",new Float32Array(300).fill(1)),d(this,"_instanceMatrixArraySize",100),d(this,"_currentCount",0),d(this,"_rtc",null),d(this,"updateRenderingMesh",()=>{const e=this._meshes,i=e.length,n=this.children;for(let r=0;ri)for(let r=n.length-1;r>=i;--r)this.remove(this.children[r])}),d(this,"expandInstanceArray",e=>{const i=this._instanceMatrixArraySize+this._expandStepSize*Math.ceil(e/this._expandStepSize),n=new Float32Array(16*i),r=new Float32Array(3*i).fill(1);r.set(this._instanceColorArray),n.set(this._instanceMatrixArray),this._instanceMatrixArray=n,this._instanceColorArray=r,this._instanceMatrixArraySize=i}),d(this,"copyArrayData",(e,i,n,r,a)=>{for(let o=0;othis._instanceMatrixArraySize&&this.expandInstanceArray(i),t.instanceMatrix)this._instanceMatrixArray.set(t.instanceMatrix,16*this._currentCount),this._currentCount+=i;else{const n=t.translation,r=t.scale,a=t.rotation,o=t.color,l=this._instanceMatrixArray,h=this._instanceColorArray;let c=new rt,u=new M,p=new M,m=new Wi,f=new Ht,g=null,_=null,v=this._rtc;v||(n?(v=[n[0],n[1],n[2]],this._rtc=v,this.position.set(v[0],v[1],v[2])):v=[0,0,0]);for(let x=0;xo)){if(a{const i=this._idIndexMap[e];i>-1&&this.children.forEach(n=>{n.setColorAt(i,this._colorMap[e]),n.instanceColor.needsUpdate=!0,n.needsUpdate=!0})})}set meshes(t){t&&(Array.isArray(t)?this._meshes=t:t.isMesh?this._meshes=[t]:t.isGroup&&(this._meshes=t.children),this.updateRenderingMesh(),this.update())}set needsUpdate(t){t&&this.update()}get meshes(){return this._meshes}}class Pg extends St{constructor(t){super(),d(this,"_lodMeshes",[]),d(this,"_lodChildren",{}),this._lodMeshes=t||[]}addInstances(t,e=0){let i=this._lodChildren[e];if(!i){let n=this._lodMeshes[e];n||(n=this._lodMeshes[this._lodMeshes.length-1]),i=new Au(n),this._lodChildren[e]=i,this.add(i)}i&&i.addInstances(t)}removeInstances(t,e=0){const i=this._lodChildren[e];i&&i.removeInstances(t)}setMeshesAt(t,e=0){this._lodMeshes[e]=t;const i=this._lodChildren;i[e]&&(i[e].meshes=t)}setLODMeshes(t){for(let e=0;e{const c=Object.assign({},o,l);for(const u of Object.keys(c)){const p=c[u];a=a.replace("#chunk <"+h+"_"+u+">",p)}return a}),d(this,"setCommonUniforms",a=>{for(const o of Object.keys(a))this.uniforms[o]=a[o]}),this.lights=!0,this.fog=!0,this.type="ExtendMeshStandardMaterial",this.isMeshStandardMaterial=!0,this.defines={STANDARD:""},this.defineMaterialNormalProperties=jt,this.defineMaterialAliasProperties=_i,jt(this,["roughness","metalness","map","lightMap","aoMap","emissive","emissiveMap","bumpMap","normalMap","displacementMap","roughnessMap","metalnessMap","alphaMap","envMap"]),_i(this,[["color","diffuse"]]),this.uniforms=pt.clone(pt.merge([oi.standard.uniforms,t.uniforms])),this.color=new tt(16777215),this.roughness=1,this.metalness=0,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new tt(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Hn,this.normalScale=new j(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.roughnessMap=null,this.metalnessMap=null,this.alphaMap=null,this.envMap=null,this.envMapIntensity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.flatShading=!1;const{vertexShaderChunks:e,fragmentShaderChunks:i,uniforms:n,...r}=t;this.setValues(r),this.vertexShaderChunks=e,this.fragmentShaderChunks=i}set vertexShaderChunks(t){this.vertexShader=this.getShaderSource(`#define GLSLIFY 1 +#define STANDARD + +varying vec3 vViewPosition; + +#ifdef USE_TRANSMISSION + + varying vec3 vWorldPosition; + +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#chunk + +void main() { + + #chunk + + #include + #include + #include + + #include + #include + #include + #include + #include + #include + + #include + #include + #include + #include + #include + #chunk + #include + #include + + vViewPosition = - mvPosition.xyz; + + #include + #chunk + #include + #include + +#ifdef USE_TRANSMISSION + + vWorldPosition = worldPosition.xyz; + +#endif + #chunk +}`,IM,t,"vertex"),this.needsUpdate=!0}set fragmentShaderChunks(t){this.fragmentShader=this.getShaderSource(`#define GLSLIFY 1 +#define STANDARD + +#ifdef PHYSICAL + #define IOR + #define SPECULAR +#endif + +uniform vec3 diffuse; +uniform vec3 emissive; +uniform float roughness; +uniform float metalness; +uniform float opacity; + +#ifdef IOR + uniform float ior; +#endif + +#ifdef SPECULAR + uniform float specularIntensity; + uniform vec3 specularColor; + + #ifdef USE_SPECULARINTENSITYMAP + uniform sampler2D specularIntensityMap; + #endif + + #ifdef USE_SPECULARCOLORMAP + uniform sampler2D specularColorMap; + #endif +#endif + +#ifdef USE_CLEARCOAT + uniform float clearcoat; + uniform float clearcoatRoughness; +#endif + +#ifdef USE_SHEEN + uniform vec3 sheenColor; + uniform float sheenRoughness; + + #ifdef USE_SHEENCOLORMAP + uniform sampler2D sheenColorMap; + #endif + + #ifdef USE_SHEENROUGHNESSMAP + uniform sampler2D sheenRoughnessMap; + #endif +#endif + +varying vec3 vViewPosition; + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#chunk + +void main() { + + #ifdef USE_MAP + vec2 uv = vec2(vUv); + #endif + #chunk + #include + + vec4 diffuseColor = vec4( diffuse, opacity ); + ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) ); + vec3 totalEmissiveRadiance = emissive; + + #include + #ifdef USE_MAP + + #ifdef USE_CUSTOM_MAP + #chunk + #else + vec4 sampledDiffuseColor = texture2D( map, uv ); + #endif + + #ifdef DECODE_VIDEO_TEXTURE + + // inline sRGB decode (TODO: Remove this code when https://crbug.com/1256340 is solved) + + sampledDiffuseColor = vec4( mix( pow( sampledDiffuseColor.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), sampledDiffuseColor.rgb * 0.0773993808, vec3( lessThanEqual( sampledDiffuseColor.rgb, vec3( 0.04045 ) ) ) ), sampledDiffuseColor.w ); + + #endif + + diffuseColor *= sampledDiffuseColor; + + #endif + #include + #chunk + #ifdef USE_ALPHAMAP + + diffuseColor.a *= texture2D( alphaMap, uv ).g; + + #endif + #include + float roughnessFactor = roughness; + + #ifdef USE_ROUGHNESSMAP + + vec4 texelRoughness = texture2D( roughnessMap, uv ); + + // reads channel G, compatible with a combined OcclusionRoughnessMetallic (RGB) texture + roughnessFactor *= texelRoughness.g; + + #endif + float metalnessFactor = metalness; + + #ifdef USE_METALNESSMAP + + vec4 texelMetalness = texture2D( metalnessMap, uv ); + + // reads channel B, compatible with a combined OcclusionRoughnessMetallic (RGB) texture + metalnessFactor *= texelMetalness.b; + + #endif + #include + #ifdef OBJECTSPACE_NORMALMAP + + normal = texture2D( normalMap, uv ).xyz * 2.0 - 1.0; // overrides both flatShading and attribute normals + + #ifdef FLIP_SIDED + + normal = - normal; + + #endif + + #ifdef DOUBLE_SIDED + + normal = normal * faceDirection; + + #endif + + normal = normalize( normalMatrix * normal ); + + #elif defined( TANGENTSPACE_NORMALMAP ) + + vec3 mapN = texture2D( normalMap, uv ).xyz * 2.0 - 1.0; + mapN.xy *= normalScale; + + #ifdef USE_TANGENT + + normal = normalize( vTBN * mapN ); + + #else + + normal = perturbNormal2Arb( - vViewPosition, normal, mapN, faceDirection ); + + #endif + + #elif defined( USE_BUMPMAP ) + + normal = perturbNormalArb( - vViewPosition, normal, dHdxy_fwd(), faceDirection ); + + #endif + #include + #include + #ifdef USE_EMISSIVEMAP + + vec4 emissiveColor = texture2D( emissiveMap, uv ); + + totalEmissiveRadiance *= emissiveColor.rgb; + + #endif + + // accumulation + #include + #include + #include + #include + + // modulation + #include + + vec3 totalDiffuse = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse; + vec3 totalSpecular = reflectedLight.directSpecular + reflectedLight.indirectSpecular; + + #include + + vec3 outgoingLight = totalDiffuse + totalSpecular + totalEmissiveRadiance; + + #ifdef USE_SHEEN + + // Sheen energy compensation approximation calculation can be found at the end of + // https://drive.google.com/file/d/1T0D1VSyR4AllqIJTQAraEIzjlb5h4FKH/view?usp=sharing + float sheenEnergyComp = 1.0 - 0.157 * max3( material.sheenColor ); + + outgoingLight = outgoingLight * sheenEnergyComp + sheenSpecular; + + #endif + + #ifdef USE_CLEARCOAT + + float dotNVcc = saturate( dot( geometry.clearcoatNormal, geometry.viewDir ) ); + + vec3 Fcc = F_Schlick( material.clearcoatF0, material.clearcoatF90, dotNVcc ); + + outgoingLight = outgoingLight * ( 1.0 - material.clearcoat * Fcc ) + clearcoatSpecular * material.clearcoat; + + #endif + + #include + #include + #include + #include + #include + #include + +}`,OM,t,"fragment"),this.needsUpdate=!0}dispose(){let t=["map","lightMap","aoMap","emissiveMap","bumpMap","normalMap","displacementMap","roughnessMap","metalnessMap","alphaMap","envMap","specularIntensityMap","specularColorMap","sheenColorMap","sheenRoughnessMap"];for(let e=0;e{if(s.isMesh)s.geometry.applyMatrix4(s.matrixWorld);else if(s.children.length>0)for(const t of s.children)Rg(t);s.position.set(0,0,0),s.scale.set(1,1,1),s.quaternion.set(0,0,0,1)},Dg=(s,t)=>{if(s.isMesh)t.push(s);else if(s.children.length>0)for(const e of s.children)Dg(e,t)},Wl=(s,t,e)=>{t&&(n=>{const r=new He;r.setFromObject(n);const a=Math.max(r.max.x-r.min.x,r.max.y-r.min.y,r.max.z-r.min.z);n.scale.multiplyScalar(1/a)})(s),e&&(s.rotation.x=Math.PI/2),s.updateMatrixWorld(),Rg(s),s.updateMatrixWorld();const i=[];return Dg(s,i),i},Lg=(s,t,e)=>{const i=[];for(const n of s){const r=n.name;if(!r.startsWith("lod"))continue;const a=parseInt(r.substring(3),10);if(isNaN(a))continue;const o=Wl(n,t,e);i[a]=o}return i},NM=Object.freeze(Object.defineProperty({__proto__:null,parseLODModel:Lg,parseScene:Wl},Symbol.toStringTag,{value:"Module"})),UM=new ea;class FM{constructor(){d(this,"_lastUpdateTime",0),d(this,"_updateDelayTimerHander",null),d(this,"_configVersion",0),d(this,"_treeEnabled",!0),d(this,"_labelEnabled",!1),d(this,"_idEnabled",!1),d(this,"_dataTypeEnabled",!1),d(this,"markNeedsUpdate",()=>{this._updateDelayTimerHander||(this._updateDelayTimerHander=setTimeout(()=>{this._tree.needsUpdate=!0,this.engine.requestRender(),this._updateDelayTimerHander=null},100))}),d(this,"parseInstancedData",(e,i)=>{const n=e.geometry,r=i.__id,a=n.attributes.position,o=a.count;if(o===0)return;const l=[];i.__lodLevel;const h=n.attributes.scale,c=n.attributes.rotation,u=new Float32Array(3*o),p=new Float32Array(3*o),m=new Float32Array(3*o),f=i.cached.scene.matrix,g=new M;for(let v=0;v{const n=e.geometry,r=i.__id,a=n.attributes.position,o=a.count;if(o===0)return;const l=n.attributes.rotation,h=i.cached.scene,c=h.matrix,u=h.batchTable.header.text,p=[],m=new M;for(let f=0;fe?isFinite(e)?e=Math.round(e%100):typeof e=="string"?(e=e.charCodeAt(3)||0)%100:0:0),d(this,"parseBatchTableAttribute",(e,i,n)=>{const r=e.cached.scene,a=r.children,o=r.batchTable&&r.batchTable.header;if(!o)return;const l=o[i];if(l)for(const h of a){if(h.originalMaterialName==="_tree"||h.originalMaterialName==="_label")continue;const c=h.geometry,u=c.getAttribute("_batchid");if(!u)continue;const p=u.data.count;let m=-1,f=0;const g=[];for(let _=0;_{}),d(this,"onTileDispose",(e,i)=>{}),d(this,"onTileShow",e=>{this.refreshTile(e)}),d(this,"onTileHide",e=>{const i=e.__instanceData;e.__hasAddInstancedData&&i&&(this._tree.removeInstances(i,e.__lodLevel),e.__hasAddInstancedData=!1,this.markNeedsUpdate());const n=e.__labelData;e.__hasAddLabelData&&n&&(this.engine.rendering.label.removeLabels(n),e.__hasAddLabelData=!1)}),d(this,"refreshTile",e=>{const i=e.cached.scene.children;if(e.__instanceConfigVersion!==this._configVersion){for(const a of i)a.originalMaterialName==="_tree"?(a.visible=!1,this._treeEnabled&&!e.__instanceTreeParsed&&(this.parseInstancedData(a,e),e.__instanceTreeParsed=!0)):a.originalMaterialName==="_label"&&(a.visible=!1,this._labelEnabled&&!e.__instanceLabelParsed&&(this.parseLabelData(a,e),e.__instanceLabelParsed=!0));this._idEnabled&&!e.__instanceIdParsed&&(this.parseBatchTableAttribute(e,"id","_id"),e.__instanceIdParsed=!0),this._dataTypeEnabled&&!e.__instanceDataTypeParsed&&(this.parseBatchTableAttribute(e,"dataType","_dataType"),e.__instanceDataTypeParsed=!0),e.__instanceConfigVersion=this._configVersion}const n=e.__instanceData;n&&(this._treeEnabled&&!e.__hasAddInstancedData&&(this._tree.addInstances(n,e.__lodLevel),this.markNeedsUpdate(),e.__hasAddInstancedData=!0),!this._treeEnabled&&e.__hasAddInstancedData&&(this._tree.removeInstances(n,e.__lodLevel),this.markNeedsUpdate(),e.__hasAddInstancedData=!1));const r=e.__labelData;r&&(this._labelEnabled&&!e.__hasAddLabelData&&(this.engine.rendering.label.addLabels(r,e.__lodLevel),e.__hasAddLabelData=!0),!this._labelEnabled&&e.__hasAddLabelData&&(this.engine.rendering.label.removeLabels(r,e.__lodLevel),e.__hasAddLabelData=!1))}),d(this,"refreshTiles",()=>{this.tilesRenderer.forEachLoadedModel((e,i)=>{i.__visible&&this.refreshTile(i)}),this.engine.requestRender()}),d(this,"updateTreeModelPath",e=>{UM.load(e,i=>{const n=Lg(i.scenes,!0,!0);for(const r of n)for(const a of r){if(a.material.name==="__foliage_leaf"){const o=Gl.fromMaterial(a.material);o.setCommonUniforms(this.engine.rendering.uniforms),a.material=o}a.castShadow=!0,a.receiveShadow=!0}this._tree.setLODMeshes(n)})}),this.group=new De;const t=this._tree=new Pg;this.updateTreeModelPath(Jt("assets/models/tree/tree18.glb")),this.group.add(t)}set treeModelPath(t){this.updateTreeModelPath(t)}set treeEnabled(t){this._treeEnabled=t,this._configVersion++,this.refreshTiles()}get treeEnabled(){return this._treeEnabled}set labelEnabled(t){this._labelEnabled=t,this._configVersion++,this.refreshTiles()}get labelEnabled(){return this._labelEnabled}set idEnabled(t){this._idEnabled=t,this._configVersion++,this.refreshTiles()}get idEnabled(){return this._idEnabled}set dataTypeEnabled(t){this._dataTypeEnabled=t,this._configVersion++,this.refreshTiles()}get dataTypeEnabled(){return this._dataTypeEnabled}}class BM{constructor(){d(this,"_configVersion",0),d(this,"_deletedIds",new Set),d(this,"_needsRefreshAll",!1),d(this,"updateEditableAttribute",t=>{const e=t.cached.scene,i=e.children,n=e.batchTable&&e.batchTable.header;if(!n)return;const r=n.id;if(!r)return;const a=this._deletedIds;for(const o of i){const l=o.geometry,h=l.getAttribute("_batchid");if(!h)continue;const c=h.data.count;let u=-1,p=0;const m=[];for(let f=0;f!1),d(this,"onTileLoad",(t,e)=>{t.__editableConfigVersion=0}),d(this,"onTileDispose",(t,e)=>{}),d(this,"onTileShow",t=>{this.refreshTile(t)}),d(this,"onTileHide",t=>{}),d(this,"refreshTile",t=>{t.cached.scene.children,t.__editableConfigVersion!==this._configVersion&&(this.updateEditableAttribute(t),t.__editableConfigVersion=this._configVersion)}),d(this,"refreshTiles",()=>{this._needsRefreshAll&&this.tilesRenderer.forEachLoadedModel((t,e)=>{e.__visible&&this.refreshTile(e)})})}addDeletedId(t){t+="",this._deletedIds.add(t),this._configVersion++,this._needsRefreshAll=!0,this.engine.requestRender()}addDeletedIds(t){for(let e=0;es!==void 0,VM=new M,HM=new M(1/40680631590769,1/40680631590769,1/40408299984661445e-3),cs=new M,ql=new M,Ig=function(s,t,e=0,i){const n=new M(40680631590769,40680631590769,40408299984661445e-3),r=Math.cos(t);cs.x=r*Math.cos(s),cs.y=r*Math.sin(s),cs.z=Math.sin(t),cs.normalize(),ql.multiplyVectors(n,cs);const a=Math.sqrt(cs.dot(ql));return ql.divideScalar(a),cs.multiplyScalar(e),Xl(i)||(i=new M),i.addVectors(ql,cs)};ui.lnglatToEcef=(s,t,e=0,i)=>Ig(s*Math.PI/180,t*Math.PI/180,e,i),ui.radianToEcef=Ig,ui.localFrameToFixedFrameGenerator=function(s,t){if(!Pu.hasOwnProperty(s)||!Pu[s].hasOwnProperty(t))throw new Error("firstAxis and secondAxis must be east, north, up, west, south or down.");let e,i=Pu[s][t],n=s+t;return Xl(Ru[n])?e=Ru[n]:(e=function(r,a){if(!Xl(r))throw new Error("origin is required.");if(Xl(a)||(a=new rt),r.equals(VM))Ks.fromArray(oa[s]),Qs.fromArray(oa[t]),$s.fromArray(oa[i]);else if(Math.abs(r.x)<1e-14&&Math.abs(r.y)<1e-14){let h=(o=+(o=r.z))==0?o:o>0?1:-1;Ks.fromArray(oa[s]),s!=="east"&&s!=="west"&&Ks.multiplyScalar(h),Qs.fromArray(oa[t]),t!=="east"&&t!=="west"&&Qs.multiplyScalar(h),$s.fromArray(oa[i]),i!=="east"&&i!=="west"&&$s.multiplyScalar(h)}else{((u,p)=>{p.multiplyVectors(u,HM).normalize()})(r,ii.up);let h=ii.up,c=ii.east;c.x=-r.y,c.y=r.x,c.z=0,ii.east.copy(c).normalize(),ii.north.crossVectors(h,c),ii.down.copy(ii.up).multiplyScalar(-1),ii.west.copy(ii.east).multiplyScalar(-1),ii.south.copy(ii.north).multiplyScalar(-1),Ks=ii[s],Qs=ii[t],$s=ii[i]}var o;const l=a.elements;return l[0]=Ks.x,l[1]=Ks.y,l[2]=Ks.z,l[3]=0,l[4]=Qs.x,l[5]=Qs.y,l[6]=Qs.z,l[7]=0,l[8]=$s.x,l[9]=$s.y,l[10]=$s.z,l[11]=0,l[12]=r.x,l[13]=r.y,l[14]=r.z,l[15]=1,a},Ru[n]=e),e},ui.eastNorthUpToFixedFrame=ui.localFrameToFixedFrameGenerator("east","north"),ui.northEastDownToFixedFrame=ui.localFrameToFixedFrameGenerator("north","east"),ui.northUpEastToFixedFrame=ui.localFrameToFixedFrameGenerator("north","up"),ui.northWestUpToFixedFrame=ui.localFrameToFixedFrameGenerator("north","west");const Og=(s,t)=>s.__inFrustum!==t.__inFrustum?s.__inFrustum?1:-1:s.__depth!==t.__depth?s.__depth>t.__depth?-1:1:s.__error!==t.__error?s.__error>t.__error?1:-1:s.__used!==t.__used?s.__used?1:-1:s.__distanceFromCamera!==t.__distanceFromCamera?s.__distanceFromCamera>t.__distanceFromCamera?-1:1:0;Su.prototype.setTileVisible=function(s,t){const e=s.cached.scene,i=this.visibleTiles,n=this.group;t?(n.add(e),i.add(s),e.updateMatrixWorld(!0)):(n.remove(e),i.delete(s)),this.onTileVisibleChanged&&this.onTileVisibleChanged(s,t)};class Yl{constructor(){d(this,"_materrialMap",new Map),d(this,"_inited",!1)}init(){this._inited||(this.onInit(),this._inited=!0)}onInit(){}getMaterialByKey(t){return this._materrialMap.get(t)}dispose(){this.beforeDispose();for(const t of Object.keys(this._materrialMap))this._materrialMap[t].dispose()}beforeDispose(){}}const Du=new Ie().load(Jt("assets/textures/water/waternormal.jpg"));Du.wrapS=Du.wrapT=ze;const jM=pt.merge([ot.fog,{normalMap:{value:null},alpha:{value:1},time:{value:0},size:{value:10},distortionScale:{value:2},textureMatrix:{value:new rt},sunColor:{value:new tt(16777215)},sunDirection:{value:new M(.70707,.70707,0)},eye:{value:new M},waterColor:{value:new tt(8956603)},reflectionColor:{value:new tt(8956603)},envMap:{value:null},mvt_normalMatrix:{value:new Ke}}]);class zg extends Be{constructor(t={}){super(),d(this,"_timeScaleFactor",1e-4),this.type="WaterMaterial",this.vertexShader=`#define GLSLIFY 1 +uniform mat4 textureMatrix; +uniform float time; + +varying vec4 mirrorCoord; +varying vec4 worldPosition; + +#include +#include +#include +#include + +void main() { + mirrorCoord = modelMatrix * vec4(position, 1.0); + worldPosition = mirrorCoord.xyzw; + mirrorCoord = textureMatrix * mirrorCoord; + vec4 mvPosition = modelViewMatrix * vec4(position, 1.0); + gl_Position = projectionMatrix * mvPosition; + + #include + #include + #include + #include + #include +}`,this.fragmentShader=`precision highp float; +precision highp int; +#define GLSLIFY 1 + +// uniform sampler2D mirrorSampler; +uniform float alpha; +uniform float time; +uniform float size; +uniform float distortionScale; +uniform sampler2D normalMap; +uniform vec3 sunColor; +uniform vec3 sunDirection; +uniform vec3 eye; +uniform vec3 waterColor; +#ifdef USE_ENVMAP + uniform sampler2D envMap; +#else + uniform vec3 reflectionColor; +#endif +uniform mat3 mvt_normalMatrix; + +varying vec4 mirrorCoord; +varying vec4 worldPosition; + +vec4 getNoise(vec2 uv) { + vec2 uv0 = (uv / 103.0) + vec2(time / 17.0, time / 29.0); + vec2 uv1 = uv / 107.0 - vec2(time / -19.0, time / 31.0); + vec2 uv2 = uv / vec2(8907.0, 9803.0) + vec2(time / 101.0, time / 97.0); + vec2 uv3 = uv / vec2(1091.0, 1027.0) - vec2(time / 109.0, time / -113.0); + vec4 noise = texture2D(normalMap, uv0) + + texture2D(normalMap, uv1) + + texture2D(normalMap, uv2) + + texture2D(normalMap, uv3); + return noise * 0.5 - 1.0; +} + +void sunLight(const vec3 surfaceNormal, const vec3 eyeDirection, float shiny, float spec, float diffuse, inout vec3 diffuseColor, inout vec3 specularColor) { + vec3 reflection = normalize(reflect(-sunDirection, surfaceNormal)); + float direction = max(0.0, dot(eyeDirection, reflection)); + specularColor += pow(direction, shiny) * sunColor * spec; + diffuseColor += max(dot(sunDirection, surfaceNormal), 0.0) * sunColor * diffuse; +} + +#define ENVMAP_TYPE_CUBE_UV + +#include +#include + +#include +#include +#include +#include +#include +#include + +#include + +#define MVT_FRAG_REFLECTION_FACTOR +#define MVT_FRAG_NORMAL + +void main() { + + #include + vec4 noise = getNoise(worldPosition.xy * size); + vec3 surfaceNormal = normalize(noise.xyz * vec3(1.5, 1.5, 1.0)); + + vec3 diffuseLight = vec3(0.0); + vec3 specularLight = vec3(0.0); + + vec3 worldToEye = cameraPosition - worldPosition.xyz; + vec3 eyeDirection = normalize(worldToEye); + sunLight(surfaceNormal, eyeDirection, 100.0, 2.0, 0.5, diffuseLight, specularLight); + + float distance = length(worldToEye); + + vec2 distortion = surfaceNormal.xy * (0.001 + 1.0 / distance) * distortionScale; + // vec3 reflectionSample = vec3(texture2D(mirrorSampler, mirrorCoord.xy / mirrorCoord.w + distortion)); + vec3 reflectDir = reflect(vec3(-worldToEye.x, -worldToEye.y, -worldToEye.z), vec3(0.0, 0.0, 1.0)); + reflectDir.xy += distortion; + + #ifdef USE_ENVMAP + vec3 reflectionSample = textureCubeUV(envMap, reflectDir, 0.0).xyz; + #else + vec3 reflectionSample = reflectionColor; + #endif + + float theta = max(dot(eyeDirection, surfaceNormal), 0.0); + float rf0 = 0.3; + float reflectance = rf0 + (1.0 - rf0) * pow((1.0 - theta), 5.0); + vec3 scatter = max(0.0, dot(surfaceNormal, eyeDirection)) * waterColor; + vec3 albedo = mix((sunColor * diffuseLight * 0.3 + scatter) * getShadowMask(), (vec3(0.1) + reflectionSample * 0.9 + reflectionSample * specularLight), reflectance); + vec3 outgoingLight = albedo; + gl_FragColor = vec4(outgoingLight, alpha); + float mvt_frag_reflectionFactor = 1.0; + // vec3 mvt_frag_normal = vec3(0., 0., 1.0) * mvt_normalMatrix; + vec3 mvt_frag_normal = normalize(noise.xyz * vec3(0.2, 0.2, 1.0)) * mvt_normalMatrix; + // gl_FragColor = worldPosition; + #include + #include + #include +}`,this.isWaterMaterial=!0,Object.assign(this.uniforms,pt.clone(jM)),this.defines={CUBEUV_TEXEL_WIDTH:.0003255208333333333,CUBEUV_TEXEL_HEIGHT:.000244140625,CUBEUV_MAX_MIP:"10.0"},jt(this,["sunColor","waterColor","reflectionColor","size","alpha","distortionScale"]),Object.defineProperties(this,{}),this.uniforms.normalMap.value=Du,this.setValues(t)}onBeforeSceneRender(t,e,i){if(this.uniforms.eye.value.copy(i.position),this.uniforms.time.value=t.rendering.uniforms.elapsedTime.value*this._timeScaleFactor,this.uniforms.envMap.value!==e.environment){this.uniforms.envMap.value=e.environment;const r=Ym(e.environment);r&&(this.defines.CUBEUV_TEXEL_WIDTH=r.texelWidth,this.defines.CUBEUV_TEXEL_HEIGHT=r.texelHeight,this.defines.CUBEUV_MAX_MIP=r.maxMip+".0"),e.environment?this.defines.USE_ENVMAP=!0:delete this.defines.USE_ENVMAP}this.uniforms.mvt_normalMatrix.value.getNormalMatrix(i.matrixWorld);const n=t.rendering.sky;n&&this.uniforms.sunDirection.value.copy(n.sunDirection)}get timeScaleFactor(){return this._timeScaleFactor}set timeScaleFactor(t){this._timeScaleFactor=t}dispose(){let t=["envMap","normalMap"];for(let e=0;e +varying vec3 vIdColor; +#include +void main() { + #include + gl_FragColor = vec4(vIdColor.xyz, 1.0); + +}`,this.vertexShader=`#define GLSLIFY 1 +#include +#ifdef MVT_TYPE_DATATYPE +attribute float _dataType; +#else +attribute float _id; +#endif + +varying vec3 vIdColor; +#include +void main() { + gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0); + + #ifdef MVT_TYPE_DATATYPE + float value = _dataType * 0.2536789535; + vIdColor = vec3(mod(value, 0.1) * 9.0, mod(value, 0.01) * 90.0, mod(value, 0.001) * 900.0); + // vIdColor = vec3(mod(_dataType * 0.2, 0.7), mod(1.0 - mod(_dataType * 0.835, 1.0), 0.4) + 0.4, mod(_dataType * 0.57245, 0.2) + 0.2); + #else + float value = (_id + 9.3234242) * 0.2536789535; + vIdColor = vec3(mod(value, 0.1) * 10.0, mod(value, 0.01) * 100.0, mod(value, 0.001) * 1000.0); + // vIdColor = vec3(mod(_id * 0.2, 0.7), mod(1.0 - mod(_id * 0.835, 1.0), 0.7), mod(_id * 0.57245, 0.5)); + #endif + + #include +}`,this.defines={MVT_TYPE_ID:!0},this.type=1,this.setValues(t)}set type(t){t===1?(this.defines.MVT_TYPE_ID=!0,delete this.defines.MVT_TYPE_DATATYPE):t===2&&(this.defines.MVT_TYPE_DATATYPE=!0,delete this.defines.MVT_TYPE_ID),this.needsUpdate=!0}get type(){return this.defines.MVT_TYPE_DATATYPE?2:1}}class kg{constructor(t){d(this,"_parent",null),d(this,"_material",null),d(this,"subscribedDataTypeIds",[]),d(this,"_positionScaleFactor",1.3),d(this,"_tileObjectMap",new Map),d(this,"_idObjectMap",new Map),d(this,"_objectDataMap",new Map),d(this,"_visibleIdMap",new Map),d(this,"_scaleSize",.05),d(this,"_tickInterval",500),d(this,"_lastTickTime",0),this._parent=t}set parent(t){this._parent=t}createMeshFromGeometry(t){return this._material||(this._material=new ae({color:16777130}),this._material.emissive=new tt(16777130)),new lt(t,this._material)}addTileElementObjects(t,e){const i=t.cached.scene,n=[];for(const r of e){const a=this.createMeshFromGeometry(r.geometry,r);a.userData.id=r.id;const o=r.geometry.getAttribute("position").array,l=r.geometry.getAttribute("normal").array;for(let h=0,c=o.length-2;hthis._tickInterval&&(this._lastTickTime=t,this.doTick(t))}dispose(){this._material&&this._material.dispose(),this._tileObjectMap.forEach((t,e)=>{for(const i of t)this._parent.remove(i)})}}class XM extends St{constructor(t){super(),this.geometry=t;const e=this.material=new ae({color:16777130});e.emissive=new tt(16777130);const i=this.mesh=new lt(t,e);this.add(i)}set color(t){t.isColor||(t=new tt(t)),this.material.color=t,this.material.emissive=t}get color(){return this.material.color}}const Ng=new Ie,Zl=Ng.load(Jt("assets/textures/element/traffic_light_mask.jpg"));Zl.flipY=!1,Zl.magFilter=Zl.minFilter=Ft;const Jl=Ng.load(Jt("assets/textures/element/traffic_light_number_mask.jpg"));Jl.flipY=!1,Jl.magFilter=Jl.minFilter=Ft;const qM=pt.merge([ot.fog,is,{spriteCount:{value:16},slotCount:{value:3},slotSpriteOffset0:{value:0},slotSpriteOffset1:{value:0},slotSpriteOffset2:{value:0},slotSpriteOffset3:{value:0},slotState0:{value:0},slotState1:{value:0},slotState2:{value:0},slotState3:{value:0},maskMap:{value:null},numberMaskMap:{value:null},number:0,redColor:{value:[1,.1,.1]},greenColor:{value:[.1,1,.1]},yellowColor:{value:[1,.6,.1]}}]);class YM extends Be{constructor(t={}){super(),this.type="TrafficLightMaterial",this.vertexShader=`#define GLSLIFY 1 +#include + +#include + +varying vec2 vUv; +void main() { + vUv = uv; + gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0); + #include +}`,this.fragmentShader=`#define GLSLIFY 1 +#include + +#include +uniform sampler2D maskMap; +uniform sampler2D numberMaskMap; +uniform float spriteCount; + +// 最多4个槽位, +uniform float slotCount; +// 每个槽位图标的偏移位置, -1代表当前槽位是倒数读秒数 +uniform float slotSpriteOffset0; +uniform float slotSpriteOffset1; +uniform float slotSpriteOffset2; +uniform float slotSpriteOffset3; + +// 每个slot的状态,0,1,2,3 分别代表关、红、黄、绿,后续考虑合并到一个变量中 +uniform float slotState0; +uniform float slotState1; +uniform float slotState2; +uniform float slotState3; + +uniform float number; +varying vec2 vUv; + +uniform vec3 redColor; +uniform vec3 greenColor; +uniform vec3 yellowColor; + +//#include + +void main() { + + // 当前像素落在哪个槽位 + float slotIndex = floor(vUv.y * slotCount); + float currentSlotState = 0.0; + float spriteIndex = 0.0; + if (slotIndex == 0.0) { + currentSlotState = slotState0; + spriteIndex = slotSpriteOffset0; + } + else if (slotIndex == 1.0) { + currentSlotState = slotState1; + spriteIndex = slotSpriteOffset1; + } + else if (slotIndex == 2.0) { + currentSlotState = slotState2; + spriteIndex = slotSpriteOffset2; + } + else if (slotIndex == 3.0) { + currentSlotState = slotState3; + spriteIndex = slotSpriteOffset3; + } + if (currentSlotState == 0.0) { + discard; + } + vec3 outColor; + if (currentSlotState == 1.0) { + outColor = redColor; + } + else if (currentSlotState == 2.0) { + outColor = yellowColor; + } + else if (currentSlotState == 3.0) { + outColor = greenColor; + } + //float slotRatio = 1.0 / spriteCount; + // 将高亮区域的v缩放到0-1 + float v = (vUv.y - float(slotIndex) / slotCount) * slotCount; + // v = v * 0.98 + 0.01; + + float u = 0.0; + float spriteUnit = 1.0 / spriteCount; + + // 数字 + if (spriteIndex == -1.0) { + // gl_FragColor = vec4(1.0, 0, 0, 1.0); + float i1 = floor((number + 0.001) / 10.0); + float i2 = floor(mod(number, 10.0)); + if (vUv.x < 0.5) { + u = mix(i1 * 0.1, i1 * 0.1 + 0.1, vUv.x * 2.0); + } + else { + u = mix(i2 * 0.1, i2 * 0.1 + 0.1, (vUv.x - 0.5) * 2.0); + } + float r = texture2D(numberMaskMap, vec2(u, v)).r; + if (r < 0.05) { + discard; + } + } + else { + u = mix(spriteIndex * spriteUnit, (spriteIndex + 1.0) * spriteUnit, vUv.x); + float r = texture2D(maskMap, vec2(u, v)).r; + if (r < 0.05) { + discard; + } + } + + // gl_FragColor = vec4(texture2D(maskMap, vec2(u, v)).xyz, 1.0); + gl_FragColor = vec4(outColor, 1.0); + #include + //#include +}`,this.isTrafficLightMaterial=!0,this.transparent=!0,Object.assign(this.uniforms,pt.clone(qM)),jt(this,["slotState0","slotState1","slotState2","slotState3","number","redColor","greenColor","yellowColor"]),ss(this),Object.defineProperties(this,{slotConfig:{get:function(){return this._slotConfig},set:function(e){this._slotConfig=e,this.uniforms.slotCount.value=e.length,this.uniforms.slotSpriteOffset0.value=e[0],this.uniforms.slotSpriteOffset1.value=e[1]||0,this.uniforms.slotSpriteOffset2.value=e[2]||0,this.uniforms.slotSpriteOffset3.value=e[3]||0}}}),this.uniforms.maskMap.value=Zl,this.uniforms.numberMaskMap.value=Jl,this.emissiveEnabled=!0,this.emissiveIntensity=.8,this.setValues(t)}dispose(){this.uniforms.maskMap&&this.uniforms.maskMap.value&&this.uniforms.maskMap.value.dispose(),this.uniforms.numberMaskMap&&this.uniforms.numberMaskMap.value&&this.uniforms.numberMaskMap.value.dispose(),super.dispose()}}class Ug extends St{constructor(t){super(),d(this,"isMesh",!0),d(this,"_slots",[]),d(this,"_slotCount",3),d(this,"_numberSlot",-1),d(this,"_timeTable",null),d(this,"_channelCount",3),this.geometry=t,this.material=new YM,this.number=0}set slots(t){this._slots=t,this._slotCount=t.length;let e=-1,i=0;for(let n=0,r=t.length;n=0;--r)if(e.states[r][0]<=i){this._lightState=e.states[r][1],this._number=(r===n?e.period:e.states[r+1][0])-i+1;break}this._active=!0,this.updateMaterial()}else this._lightState!==void 0&&this._lightState!==null?(this._active=!0,this.updateMaterial()):this._active&&(this.updateMaterial(),this._active=!1)}updateMaterial(){const t=this.material;this._channelCount===3?(t.slotState0=this._lightState===1?1:0,t.slotState1=this._lightState===2?2:0,t.slotState2=this._lightState===3?3:0,this._numberSlot!==-1&&(t.number=this._number,t.slotState3=this._lightState)):this._channelCount===2?(t.slotState0=this._lightState===1?1:0,t.slotState1=this._lightState===3?3:0,this._numberSlot!==-1&&(t.number=this._number,t.slotState2=this._lightState)):this._channelCount===1?(t.slotState0=this._lightState,this._numberSlot!==-1&&(t.number=this._number,t.slotState1=this._lightState)):this._channelCount===0?this._numberSlot!==-1&&(t.number=this._number,t.slotState0=this._lightState):console.warn("invalid channel count:",this._channelCount)}}const Fg=new Ug,ro=class extends rs{constructor(s){super(s),d(this,"_geoDataType"),d(this,"_geoFeatures",[]),d(this,"_geoIndexMap",[]),this.type="GeoJSONDataSource"}getOriginDataIndex(s){return s0&&e++,s.index.push(i+e),this._geoIndexMap[i+e]=[i,a];let l={position:o.geometry[this.projectionName],index:i+e};for(const h of this._attributeMap.keys()){let c;o.properties&&o.properties[this._attributeMap.get(h)]!==void 0&&o.properties[this._attributeMap.get(h)]!==null?c=o.properties[this._attributeMap.get(h)]:this._attributeMap.get(h)instanceof Function&&(c=this._attributeMap.get(h)(o.properties)),s[h].push(c),l[h]=c}t.push(l)}}}_prepareFeatures(){var s,t;this._geoFeatures=xl(this._origin,this.projectionName),this._geoDataType=super._getDataType((t=(s=this._geoFeatures[0])==null?void 0:s.geometry)==null?void 0:t.type)}get geoDataType(){return this._geoDataType}};let us=ro;d(us,"fromGeoJSON",async function(s){let t=new ro;return await t.load(s),t}),d(us,"fromUrl",async function(s){let t=new ro;return await t.load(s),t}),d(us,"fromGeoJSONObject",function(s){let t=new ro;return t.setData(s),t}),d(us,"fromObject",function(s){let t=new ro;return t.setData(s),t});var Bg=typeof Co<"u"?Co:typeof self<"u"?self:typeof window<"u"?window:{},en=[],Mi=[],ZM=typeof Uint8Array<"u"?Uint8Array:Array,Lu=!1;function Vg(){Lu=!0;for(var s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t=0,e=s.length;t>18&63]+en[n>>12&63]+en[n>>6&63]+en[63&n]);return r.join("")}function Hg(s){var t;Lu||Vg();for(var e=s.length,i=e%3,n="",r=[],a=16383,o=0,l=e-i;ol?l:o+a));return i===1?(t=s[e-1],n+=en[t>>2],n+=en[t<<4&63],n+="=="):i===2&&(t=(s[e-2]<<8)+s[e-1],n+=en[t>>10],n+=en[t>>4&63],n+=en[t<<2&63],n+="="),r.push(n),r.join("")}function Kl(s,t,e,i,n){var r,a,o=8*n-i-1,l=(1<>1,c=-7,u=e?n-1:0,p=e?-1:1,m=s[t+u];for(u+=p,r=m&(1<<-c)-1,m>>=-c,c+=o;c>0;r=256*r+s[t+u],u+=p,c-=8);for(a=r&(1<<-c)-1,r>>=-c,c+=i;c>0;a=256*a+s[t+u],u+=p,c-=8);if(r===0)r=1-h;else{if(r===l)return a?NaN:1/0*(m?-1:1);a+=Math.pow(2,i),r-=h}return(m?-1:1)*a*Math.pow(2,r-i)}function jg(s,t,e,i,n,r){var a,o,l,h=8*r-n-1,c=(1<>1,p=n===23?Math.pow(2,-24)-Math.pow(2,-77):0,m=i?0:r-1,f=i?1:-1,g=t<0||t===0&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(o=isNaN(t)?1:0,a=c):(a=Math.floor(Math.log(t)/Math.LN2),t*(l=Math.pow(2,-a))<1&&(a--,l*=2),(t+=a+u>=1?p/l:p*Math.pow(2,1-u))*l>=2&&(a++,l/=2),a+u>=c?(o=0,a=c):a+u>=1?(o=(t*l-1)*Math.pow(2,n),a+=u):(o=t*Math.pow(2,u-1)*Math.pow(2,n),a=0));n>=8;s[e+m]=255&o,m+=f,o/=256,n-=8);for(a=a<0;s[e+m]=255&a,m+=f,a/=256,h-=8);s[e+m-f]|=128*g}var KM={}.toString,Gg=Array.isArray||function(s){return KM.call(s)=="[object Array]"};function Ql(){return W.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function On(s,t){if(Ql()=Ql())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+Ql().toString(16)+" bytes");return 0|s}function nn(s){return!(s==null||!s._isBuffer)}function qg(s,t){if(nn(s))return s.length;if(typeof ArrayBuffer<"u"&&typeof ArrayBuffer.isView=="function"&&(ArrayBuffer.isView(s)||s instanceof ArrayBuffer))return s.byteLength;typeof s!="string"&&(s=""+s);var e=s.length;if(e===0)return 0;for(var i=!1;;)switch(t){case"ascii":case"latin1":case"binary":return e;case"utf8":case"utf-8":case void 0:return eh(s).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*e;case"hex":return e>>>1;case"base64":return i_(s).length;default:if(i)return eh(s).length;t=(""+t).toLowerCase(),i=!0}}function QM(s,t,e){var i=!1;if((t===void 0||t<0)&&(t=0),t>this.length||((e===void 0||e>this.length)&&(e=this.length),e<=0)||(e>>>=0)<=(t>>>=0))return"";for(s||(s="utf8");;)switch(s){case"hex":return ow(this,t,e);case"utf8":case"utf-8":return Kg(this,t,e);case"ascii":return rw(this,t,e);case"latin1":case"binary":return aw(this,t,e);case"base64":return sw(this,t,e);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return lw(this,t,e);default:if(i)throw new TypeError("Unknown encoding: "+s);s=(s+"").toLowerCase(),i=!0}}function tr(s,t,e){var i=s[t];s[t]=s[e],s[e]=i}function Yg(s,t,e,i,n){if(s.length===0)return-1;if(typeof e=="string"?(i=e,e=0):e>2147483647?e=2147483647:e<-2147483648&&(e=-2147483648),e=+e,isNaN(e)&&(e=n?0:s.length-1),e<0&&(e=s.length+e),e>=s.length){if(n)return-1;e=s.length-1}else if(e<0){if(!n)return-1;e=0}if(typeof t=="string"&&(t=W.from(t,i)),nn(t))return t.length===0?-1:Zg(s,t,e,i,n);if(typeof t=="number")return t&=255,W.TYPED_ARRAY_SUPPORT&&typeof Uint8Array.prototype.indexOf=="function"?n?Uint8Array.prototype.indexOf.call(s,t,e):Uint8Array.prototype.lastIndexOf.call(s,t,e):Zg(s,[t],e,i,n);throw new TypeError("val must be string, number or Buffer")}function Zg(s,t,e,i,n){var r,a=1,o=s.length,l=t.length;if(i!==void 0&&((i=String(i).toLowerCase())==="ucs2"||i==="ucs-2"||i==="utf16le"||i==="utf-16le")){if(s.length<2||t.length<2)return-1;a=2,o/=2,l/=2,e/=2}function h(m,f){return a===1?m[f]:m.readUInt16BE(f*a)}if(n){var c=-1;for(r=e;ro&&(e=o-l),r=e;r>=0;r--){for(var u=!0,p=0;pn&&(i=n):i=n;var r=t.length;if(r%2!=0)throw new TypeError("Invalid hex string");i>r/2&&(i=r/2);for(var a=0;a>8,l=a%256,h.push(l),h.push(o);return h}(t,s.length-e),s,e,i)}function sw(s,t,e){return t===0&&e===s.length?Hg(s):Hg(s.slice(t,e))}function Kg(s,t,e){e=Math.min(s.length,e);for(var i=[],n=t;n239?4:h>223?3:h>191?2:1;if(n+u<=e)switch(u){case 1:h<128&&(c=h);break;case 2:(192&(r=s[n+1]))==128&&(l=(31&h)<<6|63&r)>127&&(c=l);break;case 3:r=s[n+1],a=s[n+2],(192&r)==128&&(192&a)==128&&(l=(15&h)<<12|(63&r)<<6|63&a)>2047&&(l<55296||l>57343)&&(c=l);break;case 4:r=s[n+1],a=s[n+2],o=s[n+3],(192&r)==128&&(192&a)==128&&(192&o)==128&&(l=(15&h)<<18|(63&r)<<12|(63&a)<<6|63&o)>65535&&l<1114112&&(c=l)}c===null?(c=65533,u=1):c>65535&&(c-=65536,i.push(c>>>10&1023|55296),c=56320|1023&c),i.push(c),n+=u}return function(p){var m=p.length;if(m<=Qg)return String.fromCharCode.apply(String,p);for(var f="",g=0;g0&&(s=this.toString("hex",0,50).match(/.{2}/g).join(" "),this.length>50&&(s+=" ... ")),""},W.prototype.compare=function(s,t,e,i,n){if(!nn(s))throw new TypeError("Argument must be a Buffer");if(t===void 0&&(t=0),e===void 0&&(e=s?s.length:0),i===void 0&&(i=0),n===void 0&&(n=this.length),t<0||e>s.length||i<0||n>this.length)throw new RangeError("out of range index");if(i>=n&&t>=e)return 0;if(i>=n)return-1;if(t>=e)return 1;if(this===s)return 0;for(var r=(n>>>=0)-(i>>>=0),a=(e>>>=0)-(t>>>=0),o=Math.min(r,a),l=this.slice(i,n),h=s.slice(t,e),c=0;cn)&&(e=n),s.length>0&&(e<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");for(var r=!1;;)switch(i){case"hex":return $M(this,s,t,e);case"utf8":case"utf-8":return tw(this,s,t,e);case"ascii":return Jg(this,s,t,e);case"latin1":case"binary":return ew(this,s,t,e);case"base64":return iw(this,s,t,e);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return nw(this,s,t,e);default:if(r)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),r=!0}},W.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var Qg=4096;function rw(s,t,e){var i="";e=Math.min(s.length,e);for(var n=t;ni)&&(e=i);for(var n="",r=t;re)throw new RangeError("Trying to access beyond buffer length")}function ni(s,t,e,i,n,r){if(!nn(s))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>n||ts.length)throw new RangeError("Index out of range")}function $l(s,t,e,i){t<0&&(t=65535+t+1);for(var n=0,r=Math.min(s.length-e,2);n>>8*(i?n:1-n)}function th(s,t,e,i){t<0&&(t=4294967295+t+1);for(var n=0,r=Math.min(s.length-e,4);n>>8*(i?n:3-n)&255}function $g(s,t,e,i,n,r){if(e+i>s.length)throw new RangeError("Index out of range");if(e<0)throw new RangeError("Index out of range")}function t_(s,t,e,i,n){return n||$g(s,0,e,4),jg(s,t,e,i,23,4),e+4}function e_(s,t,e,i,n){return n||$g(s,0,e,8),jg(s,t,e,i,52,8),e+8}W.prototype.slice=function(s,t){var e,i=this.length;if((s=~~s)<0?(s+=i)<0&&(s=0):s>i&&(s=i),(t=t===void 0?i:~~t)<0?(t+=i)<0&&(t=0):t>i&&(t=i),t0&&(n*=256);)i+=this[s+--t]*n;return i},W.prototype.readUInt8=function(s,t){return t||Ee(s,1,this.length),this[s]},W.prototype.readUInt16LE=function(s,t){return t||Ee(s,2,this.length),this[s]|this[s+1]<<8},W.prototype.readUInt16BE=function(s,t){return t||Ee(s,2,this.length),this[s]<<8|this[s+1]},W.prototype.readUInt32LE=function(s,t){return t||Ee(s,4,this.length),(this[s]|this[s+1]<<8|this[s+2]<<16)+16777216*this[s+3]},W.prototype.readUInt32BE=function(s,t){return t||Ee(s,4,this.length),16777216*this[s]+(this[s+1]<<16|this[s+2]<<8|this[s+3])},W.prototype.readIntLE=function(s,t,e){s|=0,t|=0,e||Ee(s,t,this.length);for(var i=this[s],n=1,r=0;++r=(n*=128)&&(i-=Math.pow(2,8*t)),i},W.prototype.readIntBE=function(s,t,e){s|=0,t|=0,e||Ee(s,t,this.length);for(var i=t,n=1,r=this[s+--i];i>0&&(n*=256);)r+=this[s+--i]*n;return r>=(n*=128)&&(r-=Math.pow(2,8*t)),r},W.prototype.readInt8=function(s,t){return t||Ee(s,1,this.length),128&this[s]?-1*(255-this[s]+1):this[s]},W.prototype.readInt16LE=function(s,t){t||Ee(s,2,this.length);var e=this[s]|this[s+1]<<8;return 32768&e?4294901760|e:e},W.prototype.readInt16BE=function(s,t){t||Ee(s,2,this.length);var e=this[s+1]|this[s]<<8;return 32768&e?4294901760|e:e},W.prototype.readInt32LE=function(s,t){return t||Ee(s,4,this.length),this[s]|this[s+1]<<8|this[s+2]<<16|this[s+3]<<24},W.prototype.readInt32BE=function(s,t){return t||Ee(s,4,this.length),this[s]<<24|this[s+1]<<16|this[s+2]<<8|this[s+3]},W.prototype.readFloatLE=function(s,t){return t||Ee(s,4,this.length),Kl(this,s,!0,23,4)},W.prototype.readFloatBE=function(s,t){return t||Ee(s,4,this.length),Kl(this,s,!1,23,4)},W.prototype.readDoubleLE=function(s,t){return t||Ee(s,8,this.length),Kl(this,s,!0,52,8)},W.prototype.readDoubleBE=function(s,t){return t||Ee(s,8,this.length),Kl(this,s,!1,52,8)},W.prototype.writeUIntLE=function(s,t,e,i){s=+s,t|=0,e|=0,i||ni(this,s,t,e,Math.pow(2,8*e)-1,0);var n=1,r=0;for(this[t]=255&s;++r=0&&(r*=256);)this[t+n]=s/r&255;return t+e},W.prototype.writeUInt8=function(s,t,e){return s=+s,t|=0,e||ni(this,s,t,1,255,0),W.TYPED_ARRAY_SUPPORT||(s=Math.floor(s)),this[t]=255&s,t+1},W.prototype.writeUInt16LE=function(s,t,e){return s=+s,t|=0,e||ni(this,s,t,2,65535,0),W.TYPED_ARRAY_SUPPORT?(this[t]=255&s,this[t+1]=s>>>8):$l(this,s,t,!0),t+2},W.prototype.writeUInt16BE=function(s,t,e){return s=+s,t|=0,e||ni(this,s,t,2,65535,0),W.TYPED_ARRAY_SUPPORT?(this[t]=s>>>8,this[t+1]=255&s):$l(this,s,t,!1),t+2},W.prototype.writeUInt32LE=function(s,t,e){return s=+s,t|=0,e||ni(this,s,t,4,4294967295,0),W.TYPED_ARRAY_SUPPORT?(this[t+3]=s>>>24,this[t+2]=s>>>16,this[t+1]=s>>>8,this[t]=255&s):th(this,s,t,!0),t+4},W.prototype.writeUInt32BE=function(s,t,e){return s=+s,t|=0,e||ni(this,s,t,4,4294967295,0),W.TYPED_ARRAY_SUPPORT?(this[t]=s>>>24,this[t+1]=s>>>16,this[t+2]=s>>>8,this[t+3]=255&s):th(this,s,t,!1),t+4},W.prototype.writeIntLE=function(s,t,e,i){if(s=+s,t|=0,!i){var n=Math.pow(2,8*e-1);ni(this,s,t,e,n-1,-n)}var r=0,a=1,o=0;for(this[t]=255&s;++r>0)-o&255;return t+e},W.prototype.writeIntBE=function(s,t,e,i){if(s=+s,t|=0,!i){var n=Math.pow(2,8*e-1);ni(this,s,t,e,n-1,-n)}var r=e-1,a=1,o=0;for(this[t+r]=255&s;--r>=0&&(a*=256);)s<0&&o===0&&this[t+r+1]!==0&&(o=1),this[t+r]=(s/a>>0)-o&255;return t+e},W.prototype.writeInt8=function(s,t,e){return s=+s,t|=0,e||ni(this,s,t,1,127,-128),W.TYPED_ARRAY_SUPPORT||(s=Math.floor(s)),s<0&&(s=255+s+1),this[t]=255&s,t+1},W.prototype.writeInt16LE=function(s,t,e){return s=+s,t|=0,e||ni(this,s,t,2,32767,-32768),W.TYPED_ARRAY_SUPPORT?(this[t]=255&s,this[t+1]=s>>>8):$l(this,s,t,!0),t+2},W.prototype.writeInt16BE=function(s,t,e){return s=+s,t|=0,e||ni(this,s,t,2,32767,-32768),W.TYPED_ARRAY_SUPPORT?(this[t]=s>>>8,this[t+1]=255&s):$l(this,s,t,!1),t+2},W.prototype.writeInt32LE=function(s,t,e){return s=+s,t|=0,e||ni(this,s,t,4,2147483647,-2147483648),W.TYPED_ARRAY_SUPPORT?(this[t]=255&s,this[t+1]=s>>>8,this[t+2]=s>>>16,this[t+3]=s>>>24):th(this,s,t,!0),t+4},W.prototype.writeInt32BE=function(s,t,e){return s=+s,t|=0,e||ni(this,s,t,4,2147483647,-2147483648),s<0&&(s=4294967295+s+1),W.TYPED_ARRAY_SUPPORT?(this[t]=s>>>24,this[t+1]=s>>>16,this[t+2]=s>>>8,this[t+3]=255&s):th(this,s,t,!1),t+4},W.prototype.writeFloatLE=function(s,t,e){return t_(this,s,t,!0,e)},W.prototype.writeFloatBE=function(s,t,e){return t_(this,s,t,!1,e)},W.prototype.writeDoubleLE=function(s,t,e){return e_(this,s,t,!0,e)},W.prototype.writeDoubleBE=function(s,t,e){return e_(this,s,t,!1,e)},W.prototype.copy=function(s,t,e,i){if(e||(e=0),i||i===0||(i=this.length),t>=s.length&&(t=s.length),t||(t=0),i>0&&i=this.length)throw new RangeError("sourceStart out of bounds");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),s.length-t=0;--n)s[n+t]=this[n+e];else if(r<1e3||!W.TYPED_ARRAY_SUPPORT)for(n=0;n>>=0,e=e===void 0?this.length:e>>>0,s||(s=0),typeof s=="number")for(r=t;r55295&&e<57344){if(!n){if(e>56319){(t-=3)>-1&&r.push(239,191,189);continue}if(a+1===i){(t-=3)>-1&&r.push(239,191,189);continue}n=e;continue}if(e<56320){(t-=3)>-1&&r.push(239,191,189),n=e;continue}e=65536+(n-55296<<10|e-56320)}else n&&(t-=3)>-1&&r.push(239,191,189);if(n=null,e<128){if((t-=1)<0)break;r.push(e)}else if(e<2048){if((t-=2)<0)break;r.push(e>>6|192,63&e|128)}else if(e<65536){if((t-=3)<0)break;r.push(e>>12|224,e>>6&63|128,63&e|128)}else{if(!(e<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;r.push(e>>18|240,e>>12&63|128,e>>6&63|128,63&e|128)}}return r}function i_(s){return function(t){var e,i,n,r,a,o;Lu||Vg();var l=t.length;if(l%4>0)throw new Error("Invalid string. Length must be a multiple of 4");a=t[l-2]==="="?2:t[l-1]==="="?1:0,o=new ZM(3*l/4-a),n=a>0?l-4:l;var h=0;for(e=0,i=0;e>16&255,o[h++]=r>>8&255,o[h++]=255&r;return a===2?(r=Mi[t.charCodeAt(e)]<<2|Mi[t.charCodeAt(e+1)]>>4,o[h++]=255&r):a===1&&(r=Mi[t.charCodeAt(e)]<<10|Mi[t.charCodeAt(e+1)]<<4|Mi[t.charCodeAt(e+2)]>>2,o[h++]=r>>8&255,o[h++]=255&r),o}(function(t){if((t=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(t).replace(hw,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(s))}function ih(s,t,e,i){for(var n=0;n=t.length||n>=s.length);++n)t[n+e]=s[n];return n}function wi(s){return s!=null&&(!!s._isBuffer||n_(s)||function(t){return typeof t.readFloatLE=="function"&&typeof t.slice=="function"&&n_(t.slice(0,0))}(s))}function n_(s){return!!s.constructor&&typeof s.constructor.isBuffer=="function"&&s.constructor.isBuffer(s)}class Kt extends Error{constructor(t,e,i,...n){Array.isArray(e)&&(e=e.join(" ").trim()),super(e),Error.captureStackTrace!==void 0&&Error.captureStackTrace(this,Kt),this.code=t;for(const r of n)for(const a in r){const o=r[a];this[a]=wi(o)?o.toString(i.encoding):o==null?o:JSON.parse(JSON.stringify(o))}}}const uw=function(s){return typeof s=="object"&&s!==null&&!Array.isArray(s)},s_=function(s){const t=[];for(let e=0,i=s.length;e=this.size&&(this.resize(),e>=this.size))throw Error("INVALID_BUFFER_STATE");const i=this.buf;this.buf=W.allocUnsafe(this.size),t.copy(this.buf,0),i.copy(this.buf,t.length),this.length+=t.length}else{const e=this.length++;e===this.size&&this.resize();const i=this.clone();this.buf[0]=t,i.copy(this.buf,1,0,e)}}append(t){const e=this.length++;e===this.size&&this.resize(),this.buf[e]=t}clone(){return W.from(this.buf.slice(0,this.length))}resize(){const t=this.length;this.size=2*this.size;const e=W.allocUnsafe(this.size);this.buf.copy(e,0,0,t),this.buf=e}toString(t){return t?this.buf.slice(0,this.length).toString(t):Uint8Array.prototype.slice.call(this.buf.slice(0,this.length))}toJSON(){return this.toString("utf8")}reset(){this.length=0}}const dw=function(s){return{bomSkipped:!1,bufBytesStart:0,castField:s.cast_function,commenting:!1,error:void 0,enabled:s.from_line===1,escaping:!1,escapeIsQuote:wi(s.escape)&&wi(s.quote)&&W.compare(s.escape,s.quote)===0,expectedRecordLength:Array.isArray(s.columns)?s.columns.length:void 0,field:new r_(20),firstLineToHeaders:s.cast_first_line_to_header,needMoreDataSize:Math.max(s.comment!==null?s.comment.length:0,...s.delimiter.map(t=>t.length),s.quote!==null?s.quote.length:0),previousBuf:void 0,quoting:!1,stop:!1,rawBuffer:new r_(100),record:[],recordHasError:!1,record_length:0,recordDelimiterMaxLength:s.record_delimiter.length===0?0:Math.max(...s.record_delimiter.map(t=>t.length)),trimChars:[W.from(" ",s.encoding)[0],W.from(" ",s.encoding)[0]],wasQuoting:!1,wasRowDelimiter:!1,timchars:[W.from(W.from([13],"utf8").toString(),s.encoding),W.from(W.from([10],"utf8").toString(),s.encoding),W.from(W.from([12],"utf8").toString(),s.encoding),W.from(W.from([32],"utf8").toString(),s.encoding),W.from(W.from([9],"utf8").toString(),s.encoding)]}},a_=function(s){const t={};for(const n in s)t[e=n,e.replace(/([A-Z])/g,function(r,a){return"_"+a.toLowerCase()})]=s[n];var e;if(t.encoding===void 0||t.encoding===!0)t.encoding="utf8";else if(t.encoding===null||t.encoding===!1)t.encoding=null;else if(typeof t.encoding!="string"&&t.encoding!==null)throw new Kt("CSV_INVALID_OPTION_ENCODING",["Invalid option encoding:","encoding must be a string or null to return a buffer,",`got ${JSON.stringify(t.encoding)}`],t);if(t.bom===void 0||t.bom===null||t.bom===!1)t.bom=!1;else if(t.bom!==!0)throw new Kt("CSV_INVALID_OPTION_BOM",["Invalid option bom:","bom must be true,",`got ${JSON.stringify(t.bom)}`],t);if(t.cast_function=null,t.cast===void 0||t.cast===null||t.cast===!1||t.cast==="")t.cast=void 0;else if(typeof t.cast=="function")t.cast_function=t.cast,t.cast=!0;else if(t.cast!==!0)throw new Kt("CSV_INVALID_OPTION_CAST",["Invalid option cast:","cast must be true or a function,",`got ${JSON.stringify(t.cast)}`],t);if(t.cast_date===void 0||t.cast_date===null||t.cast_date===!1||t.cast_date==="")t.cast_date=!1;else if(t.cast_date===!0)t.cast_date=function(n){const r=Date.parse(n);return isNaN(r)?n:new Date(r)};else if(typeof t.cast_date!="function")throw new Kt("CSV_INVALID_OPTION_CAST_DATE",["Invalid option cast_date:","cast_date must be true or a function,",`got ${JSON.stringify(t.cast_date)}`],t);if(t.cast_first_line_to_header=null,t.columns===!0)t.cast_first_line_to_header=void 0;else if(typeof t.columns=="function")t.cast_first_line_to_header=t.columns,t.columns=!0;else if(Array.isArray(t.columns))t.columns=s_(t.columns);else{if(t.columns!==void 0&&t.columns!==null&&t.columns!==!1)throw new Kt("CSV_INVALID_OPTION_COLUMNS",["Invalid option columns:","expect an array, a function or true,",`got ${JSON.stringify(t.columns)}`],t);t.columns=!1}if(t.group_columns_by_name===void 0||t.group_columns_by_name===null||t.group_columns_by_name===!1)t.group_columns_by_name=!1;else{if(t.group_columns_by_name!==!0)throw new Kt("CSV_INVALID_OPTION_GROUP_COLUMNS_BY_NAME",["Invalid option group_columns_by_name:","expect an boolean,",`got ${JSON.stringify(t.group_columns_by_name)}`],t);if(t.columns===!1)throw new Kt("CSV_INVALID_OPTION_GROUP_COLUMNS_BY_NAME",["Invalid option group_columns_by_name:","the `columns` mode must be activated."],t)}if(t.comment===void 0||t.comment===null||t.comment===!1||t.comment==="")t.comment=null;else if(typeof t.comment=="string"&&(t.comment=W.from(t.comment,t.encoding)),!wi(t.comment))throw new Kt("CSV_INVALID_OPTION_COMMENT",["Invalid option comment:","comment must be a buffer or a string,",`got ${JSON.stringify(t.comment)}`],t);const i=JSON.stringify(t.delimiter);if(Array.isArray(t.delimiter)||(t.delimiter=[t.delimiter]),t.delimiter.length===0)throw new Kt("CSV_INVALID_OPTION_DELIMITER",["Invalid option delimiter:","delimiter must be a non empty string or buffer or array of string|buffer,",`got ${i}`],t);if(t.delimiter=t.delimiter.map(function(n){if(n==null||n===!1)return W.from(",",t.encoding);if(typeof n=="string"&&(n=W.from(n,t.encoding)),!wi(n)||n.length===0)throw new Kt("CSV_INVALID_OPTION_DELIMITER",["Invalid option delimiter:","delimiter must be a non empty string or buffer or array of string|buffer,",`got ${i}`],t);return n}),t.escape===void 0||t.escape===!0?t.escape=W.from('"',t.encoding):typeof t.escape=="string"?t.escape=W.from(t.escape,t.encoding):t.escape!==null&&t.escape!==!1||(t.escape=null),t.escape!==null&&!wi(t.escape))throw new Error(`Invalid Option: escape must be a buffer, a string or a boolean, got ${JSON.stringify(t.escape)}`);if(t.from===void 0||t.from===null)t.from=1;else{if(typeof t.from=="string"&&/\d+/.test(t.from)&&(t.from=parseInt(t.from)),!Number.isInteger(t.from))throw new Error(`Invalid Option: from must be an integer, got ${JSON.stringify(t.from)}`);if(t.from<0)throw new Error(`Invalid Option: from must be a positive integer, got ${JSON.stringify(s.from)}`)}if(t.from_line===void 0||t.from_line===null)t.from_line=1;else{if(typeof t.from_line=="string"&&/\d+/.test(t.from_line)&&(t.from_line=parseInt(t.from_line)),!Number.isInteger(t.from_line))throw new Error(`Invalid Option: from_line must be an integer, got ${JSON.stringify(s.from_line)}`);if(t.from_line<=0)throw new Error(`Invalid Option: from_line must be a positive integer greater than 0, got ${JSON.stringify(s.from_line)}`)}if(t.ignore_last_delimiters===void 0||t.ignore_last_delimiters===null)t.ignore_last_delimiters=!1;else if(typeof t.ignore_last_delimiters=="number")t.ignore_last_delimiters=Math.floor(t.ignore_last_delimiters),t.ignore_last_delimiters===0&&(t.ignore_last_delimiters=!1);else if(typeof t.ignore_last_delimiters!="boolean")throw new Kt("CSV_INVALID_OPTION_IGNORE_LAST_DELIMITERS",["Invalid option `ignore_last_delimiters`:","the value must be a boolean value or an integer,",`got ${JSON.stringify(t.ignore_last_delimiters)}`],t);if(t.ignore_last_delimiters===!0&&t.columns===!1)throw new Kt("CSV_IGNORE_LAST_DELIMITERS_REQUIRES_COLUMNS",["The option `ignore_last_delimiters`","requires the activation of the `columns` option"],t);if(t.info===void 0||t.info===null||t.info===!1)t.info=!1;else if(t.info!==!0)throw new Error(`Invalid Option: info must be true, got ${JSON.stringify(t.info)}`);if(t.max_record_size===void 0||t.max_record_size===null||t.max_record_size===!1)t.max_record_size=0;else if(!(Number.isInteger(t.max_record_size)&&t.max_record_size>=0)){if(typeof t.max_record_size!="string"||!/\d+/.test(t.max_record_size))throw new Error(`Invalid Option: max_record_size must be a positive integer, got ${JSON.stringify(t.max_record_size)}`);t.max_record_size=parseInt(t.max_record_size)}if(t.objname===void 0||t.objname===null||t.objname===!1)t.objname=void 0;else if(wi(t.objname)){if(t.objname.length===0)throw new Error("Invalid Option: objname must be a non empty buffer");t.encoding===null||(t.objname=t.objname.toString(t.encoding))}else if(typeof t.objname=="string"){if(t.objname.length===0)throw new Error("Invalid Option: objname must be a non empty string")}else if(typeof t.objname!="number")throw new Error(`Invalid Option: objname must be a string or a buffer, got ${t.objname}`);if(t.objname!==void 0){if(typeof t.objname=="number"){if(t.columns!==!1)throw Error("Invalid Option: objname index cannot be combined with columns or be defined as a field")}else if(t.columns===!1)throw Error("Invalid Option: objname field must be combined with columns or be defined as an index")}if(t.on_record===void 0||t.on_record===null)t.on_record=void 0;else if(typeof t.on_record!="function")throw new Kt("CSV_INVALID_OPTION_ON_RECORD",["Invalid option `on_record`:","expect a function,",`got ${JSON.stringify(t.on_record)}`],t);if(t.quote===null||t.quote===!1||t.quote==="")t.quote=null;else if(t.quote===void 0||t.quote===!0?t.quote=W.from('"',t.encoding):typeof t.quote=="string"&&(t.quote=W.from(t.quote,t.encoding)),!wi(t.quote))throw new Error(`Invalid Option: quote must be a buffer or a string, got ${JSON.stringify(t.quote)}`);if(t.raw===void 0||t.raw===null||t.raw===!1)t.raw=!1;else if(t.raw!==!0)throw new Error(`Invalid Option: raw must be true, got ${JSON.stringify(t.raw)}`);if(t.record_delimiter===void 0)t.record_delimiter=[];else if(typeof t.record_delimiter=="string"||wi(t.record_delimiter)){if(t.record_delimiter.length===0)throw new Kt("CSV_INVALID_OPTION_RECORD_DELIMITER",["Invalid option `record_delimiter`:","value must be a non empty string or buffer,",`got ${JSON.stringify(t.record_delimiter)}`],t);t.record_delimiter=[t.record_delimiter]}else if(!Array.isArray(t.record_delimiter))throw new Kt("CSV_INVALID_OPTION_RECORD_DELIMITER",["Invalid option `record_delimiter`:","value must be a string, a buffer or array of string|buffer,",`got ${JSON.stringify(t.record_delimiter)}`],t);if(t.record_delimiter=t.record_delimiter.map(function(n,r){if(typeof n!="string"&&!wi(n))throw new Kt("CSV_INVALID_OPTION_RECORD_DELIMITER",["Invalid option `record_delimiter`:","value must be a string, a buffer or array of string|buffer",`at index ${r},`,`got ${JSON.stringify(n)}`],t);if(n.length===0)throw new Kt("CSV_INVALID_OPTION_RECORD_DELIMITER",["Invalid option `record_delimiter`:","value must be a non empty string or buffer",`at index ${r},`,`got ${JSON.stringify(n)}`],t);return typeof n=="string"&&(n=W.from(n,t.encoding)),n}),typeof t.relax_column_count!="boolean"){if(t.relax_column_count!==void 0&&t.relax_column_count!==null)throw new Error(`Invalid Option: relax_column_count must be a boolean, got ${JSON.stringify(t.relax_column_count)}`);t.relax_column_count=!1}if(typeof t.relax_column_count_less!="boolean"){if(t.relax_column_count_less!==void 0&&t.relax_column_count_less!==null)throw new Error(`Invalid Option: relax_column_count_less must be a boolean, got ${JSON.stringify(t.relax_column_count_less)}`);t.relax_column_count_less=!1}if(typeof t.relax_column_count_more!="boolean"){if(t.relax_column_count_more!==void 0&&t.relax_column_count_more!==null)throw new Error(`Invalid Option: relax_column_count_more must be a boolean, got ${JSON.stringify(t.relax_column_count_more)}`);t.relax_column_count_more=!1}if(typeof t.relax_quotes!="boolean"){if(t.relax_quotes!==void 0&&t.relax_quotes!==null)throw new Error(`Invalid Option: relax_quotes must be a boolean, got ${JSON.stringify(t.relax_quotes)}`);t.relax_quotes=!1}if(typeof t.skip_empty_lines!="boolean"){if(t.skip_empty_lines!==void 0&&t.skip_empty_lines!==null)throw new Error(`Invalid Option: skip_empty_lines must be a boolean, got ${JSON.stringify(t.skip_empty_lines)}`);t.skip_empty_lines=!1}if(typeof t.skip_records_with_empty_values!="boolean"){if(t.skip_records_with_empty_values!==void 0&&t.skip_records_with_empty_values!==null)throw new Error(`Invalid Option: skip_records_with_empty_values must be a boolean, got ${JSON.stringify(t.skip_records_with_empty_values)}`);t.skip_records_with_empty_values=!1}if(typeof t.skip_records_with_error!="boolean"){if(t.skip_records_with_error!==void 0&&t.skip_records_with_error!==null)throw new Error(`Invalid Option: skip_records_with_error must be a boolean, got ${JSON.stringify(t.skip_records_with_error)}`);t.skip_records_with_error=!1}if(t.rtrim===void 0||t.rtrim===null||t.rtrim===!1)t.rtrim=!1;else if(t.rtrim!==!0)throw new Error(`Invalid Option: rtrim must be a boolean, got ${JSON.stringify(t.rtrim)}`);if(t.ltrim===void 0||t.ltrim===null||t.ltrim===!1)t.ltrim=!1;else if(t.ltrim!==!0)throw new Error(`Invalid Option: ltrim must be a boolean, got ${JSON.stringify(t.ltrim)}`);if(t.trim===void 0||t.trim===null||t.trim===!1)t.trim=!1;else if(t.trim!==!0)throw new Error(`Invalid Option: trim must be a boolean, got ${JSON.stringify(t.trim)}`);if(t.trim===!0&&s.ltrim!==!1?t.ltrim=!0:t.ltrim!==!0&&(t.ltrim=!1),t.trim===!0&&s.rtrim!==!1?t.rtrim=!0:t.rtrim!==!0&&(t.rtrim=!1),t.to===void 0||t.to===null)t.to=-1;else{if(typeof t.to=="string"&&/\d+/.test(t.to)&&(t.to=parseInt(t.to)),!Number.isInteger(t.to))throw new Error(`Invalid Option: to must be an integer, got ${JSON.stringify(s.to)}`);if(t.to<=0)throw new Error(`Invalid Option: to must be a positive integer greater than 0, got ${JSON.stringify(s.to)}`)}if(t.to_line===void 0||t.to_line===null)t.to_line=-1;else{if(typeof t.to_line=="string"&&/\d+/.test(t.to_line)&&(t.to_line=parseInt(t.to_line)),!Number.isInteger(t.to_line))throw new Error(`Invalid Option: to_line must be an integer, got ${JSON.stringify(s.to_line)}`);if(t.to_line<=0)throw new Error(`Invalid Option: to_line must be a positive integer greater than 0, got ${JSON.stringify(s.to_line)}`)}return t},o_=function(s){return s.every(t=>t==null||t.toString&&t.toString().trim()==="")},ha={utf8:W.from([239,187,191]),utf16le:W.from([255,254])},pw=function(s,t={}){typeof s=="string"&&(s=W.from(s));const e=t&&t.objname?{}:[],i=function(l={}){const h=a_(l);return{info:{bytes:0,comment_lines:0,empty_lines:0,invalid_field_length:0,lines:1,records:0},original_options:l,options:h,state:dw(h),__needMoreData:function(c,u,p){if(p)return!1;const{encoding:m,escape:f,quote:g}=this.options,{quoting:_,needMoreDataSize:v,recordDelimiterMaxLength:x}=this.state;return u-c-1L)return this.state.stop=!0,void m();this.state.quoting===!1&&z.length===0&&this.__autoDiscoverRecordDelimiter(k,U)&&(z=this.options.record_delimiter);const H=k[U];if(y===!0&&F.append(H),H!==13&&H!==10||this.state.wasRowDelimiter!==!1||(this.state.wasRowDelimiter=!0),this.state.escaping===!0)this.state.escaping=!1;else{if(E!==null&&this.state.quoting===!0&&this.__isEscape(k,U,H)&&U+E.length!!ha[R].equals(this.state.field.toString())&&R).filter(Boolean)[0],wt=this.__error(new Kt("INVALID_OPENING_QUOTE",["Invalid Opening Quote:",`a quote is found on field ${JSON.stringify(_t.column)} at line ${_t.lines}, value is ${JSON.stringify(this.state.field.toString(g))}`,Mt?`(${Mt} bom)`:void 0],this.options,_t,{field:this.state.field}));if(wt!==void 0)return wt}}if(this.state.quoting===!1){const _t=this.__isRecordDelimiter(H,k,U);if(_t!==0){if(this.state.commenting&&this.state.wasQuoting===!1&&this.state.record.length===0&&this.state.field.length===0)this.info.comment_lines++;else{if(this.state.enabled===!1&&this.info.lines+(this.state.wasRowDelimiter===!0?1:0)>=_){this.state.enabled=!0,this.__resetField(),this.__resetRecord(),U+=_t-1;continue}if(w===!0&&this.state.wasQuoting===!1&&this.state.record.length===0&&this.state.field.length===0){this.info.empty_lines++,U+=_t-1;continue}this.info.bytes=this.state.bufBytesStart+U;const wt=this.__onField();if(wt!==void 0)return wt;this.info.bytes=this.state.bufBytesStart+U+_t;const R=this.__onRecord(p);if(R!==void 0)return R;if(C!==-1&&this.info.records>=C)return this.state.stop=!0,void m()}this.state.commenting=!1,U+=_t-1;continue}if(this.state.commenting)continue;if((T===null?0:this.__compareBytes(T,k,U,H))!==0){this.state.commenting=!0;continue}const Mt=this.__isDelimiter(k,U,H);if(Mt!==0){this.info.bytes=this.state.bufBytesStart+U;const wt=this.__onField();if(wt!==void 0)return wt;U+=Mt-1;continue}}}if(this.state.commenting===!1&&x!==0&&this.state.record_length+this.state.field.length>x)return this.__error(new Kt("CSV_MAX_RECORD_SIZE",["Max Record Size:","record exceed the maximum number of tolerated bytes",`of ${x}`,`at line ${this.info.lines}`],this.options,this.__infoField()));const Z=v===!1||this.state.quoting===!0||this.state.field.length!==0||!this.__isCharTrimable(k,U),mt=S===!1||this.state.wasQuoting===!1;if(Z!==!0||mt!==!0){if(S!==!0||this.__isCharTrimable(k,U)){Z===!1&&(U+=this.__isCharTrimable(k,U)-1);continue}return this.__error(new Kt("CSV_NON_TRIMABLE_CHAR_AFTER_CLOSING_QUOTE",["Invalid Closing Quote:","found non trimable byte after quote",`at line ${this.info.lines}`],this.options,this.__infoField()))}this.state.field.append(H)}if(u===!0)if(this.state.quoting===!0){const H=this.__error(new Kt("CSV_QUOTE_NOT_CLOSED",["Quote Not Closed:",`the parsing is finished with an opening quote at line ${this.info.lines}`],this.options,this.__infoField()));if(H!==void 0)return H}else if(this.state.wasQuoting===!0||this.state.record.length!==0||this.state.field.length!==0){this.info.bytes=this.state.bufBytesStart+U;const H=this.__onField();if(H!==void 0)return H;const Z=this.__onRecord(p);if(Z!==void 0)return Z}else this.state.wasRowDelimiter===!0?this.info.empty_lines++:this.state.commenting===!0&&this.info.comment_lines++;else this.state.bufBytesStart+=U,this.state.previousBuf=k.slice(U);this.state.wasRowDelimiter===!0&&(this.info.lines++,this.state.wasRowDelimiter=!1)},__onRecord:function(c){const{columns:u,group_columns_by_name:p,encoding:m,info:f,from:g,relax_column_count:_,relax_column_count_less:v,relax_column_count_more:x,raw:y,skip_records_with_empty_values:b}=this.options,{enabled:S,record:w}=this.state;if(S===!1)return this.__resetRecord();const C=w.length;if(u===!0)return b===!0&&o_(w)?void this.__resetRecord():this.__firstLineToColumns(w);if(u===!1&&this.info.records===0&&(this.state.expectedRecordLength=C),C!==this.state.expectedRecordLength){const L=u===!1?new Kt("CSV_RECORD_INCONSISTENT_FIELDS_LENGTH",["Invalid Record Length:",`expect ${this.state.expectedRecordLength},`,`got ${C} on line ${this.info.lines}`],this.options,this.__infoField(),{record:w}):new Kt("CSV_RECORD_INCONSISTENT_COLUMNS",["Invalid Record Length:",`columns length is ${u.length},`,`got ${C} on line ${this.info.lines}`],this.options,this.__infoField(),{record:w});if(_===!0||v===!0&&Cthis.state.expectedRecordLength)this.info.invalid_field_length++,this.state.error=L;else{const T=this.__error(L);if(T)return T}}if(b===!0&&o_(w))this.__resetRecord();else{if(this.state.recordHasError===!0)return this.__resetRecord(),void(this.state.recordHasError=!1);if(this.info.records++,g===1||this.info.records>=g){const{objname:L}=this.options;if(u!==!1){const T={};for(let E=0,I=w.length;E{const{timchars:f}=this.state;t:for(let g=0;g=0},__compareBytes:function(c,u,p,m){if(c[0]!==m)return 0;const f=c.length;for(let g=1;gthis.state.record.length?c[this.state.record.length].name:null:this.state.record.length,quoting:this.state.wasQuoting}}}}(t),n=l=>{i.options.objname===void 0?e.push(l):e[l[0]]=l[1]},r=()=>{},a=i.parse(s,!1,n,r);if(a!==void 0)throw a;const o=i.parse(void 0,!0,n,r);if(o!==void 0)throw o;return e};var ao={exports:{}};ao.exports=c_,ao.exports.parse=c_,ao.exports.stringify=function s(t){t.type==="Feature"&&(t=t.geometry);function e(a){return a.join(" ")}function i(a){return a.map(e).join(", ")}function n(a){return a.map(i).map(r).join(", ")}function r(a){return"("+a+")"}switch(t.type){case"Point":return"POINT ("+e(t.coordinates)+")";case"LineString":return"LINESTRING ("+i(t.coordinates)+")";case"Polygon":return"POLYGON ("+n(t.coordinates)+")";case"MultiPoint":return"MULTIPOINT ("+i(t.coordinates)+")";case"MultiPolygon":return"MULTIPOLYGON ("+(t.coordinates.map(n).map(r).join(", ")+")");case"MultiLineString":return"MULTILINESTRING ("+n(t.coordinates)+")";case"GeometryCollection":return"GEOMETRYCOLLECTION ("+t.geometries.map(s).join(", ")+")";default:throw new Error("stringify requires a valid GeoJSON Feature or geometry object as input")}};var l_=/[-+]?([0-9]*\.[0-9]+|[0-9]+)([eE][-+]?[0-9]+)?/,h_=new RegExp("^"+l_.source+"(\\s"+l_.source+"){1,}");function c_(s){var t=s.split(";"),e=t.pop(),i=(t.shift()||"").split("=").pop(),n=0;function r(c){var u=e.substring(n).match(c);return u?(n+=u[0].length,u[0]):null}function a(){r(/^\s*/)}function o(){a();for(var c,u=0,p=[],m=[p],f=p;c=r(/^(\()/)||r(/^(\))/)||r(/^(,)/)||r(h_);){if(c==="(")m.push(f),f=[],m[m.length-1].push(f),u++;else if(c===")"){if(f.length===0||!(f=m.pop()))return null;if(--u===0)break}else if(c===",")f=[],m[m.length-1].push(f);else{if(c.split(/\s/g).some(isNaN))return null;Array.prototype.push.apply(f,c.split(/\s/g).map(parseFloat))}a()}return u!==0?null:p}function l(){for(var c,u,p=[];u=r(h_)||r(/^(,)/);)u===","?(p.push(c),c=[]):u.split(/\s/g).some(isNaN)||(c||(c=[]),Array.prototype.push.apply(c,u.split(/\s/g).map(parseFloat))),a();return c?(p.push(c),p.length?p:null):null}function h(){return function(){if(!r(/^(point(\sz)?)/i)||(a(),!r(/^(\()/)))return null;var c=l();return c?(a(),r(/^(\))/)?{type:"Point",coordinates:c[0]}:null):null}()||function(){if(!r(/^(linestring(\sz)?)/i)||(a(),!r(/^(\()/)))return null;var c=l();return c&&r(/^(\))/)?{type:"LineString",coordinates:c}:null}()||function(){if(!r(/^(polygon(\sz)?)/i))return null;a();var c=o();return c?{type:"Polygon",coordinates:c}:null}()||function(){if(!r(/^(multipoint)/i))return null;a();var c=e.substring(e.indexOf("(")+1,e.length-1).replace(/\(/g,"").replace(/\)/g,"");e="MULTIPOINT ("+c+")";var u=o();return u?(a(),{type:"MultiPoint",coordinates:u}):null}()||function(){if(!r(/^(multilinestring)/i))return null;a();var c=o();return c?(a(),{type:"MultiLineString",coordinates:c}):null}()||function(){if(!r(/^(multipolygon)/i))return null;a();var c=o();return c?{type:"MultiPolygon",coordinates:c}:null}()||function(){var c,u=[];if(!r(/^(geometrycollection)/i)||(a(),!r(/^(\()/)))return null;for(;c=h();)u.push(c),a(),r(/^(,)/),a();return r(/^(\))/)?{type:"GeometryCollection",geometries:u}:null}()}return function(c){return c&&i.match(/\d+/)&&(c.crs={type:"name",properties:{name:"urn:ogc:def:crs:EPSG::"+i}}),c}(h())}const u_=class extends rs{constructor(s){super(s),d(this,"_coordinatesKey","coordinates"),d(this,"_csvDataType"),d(this,"_csvFeatures",[]),d(this,"_csvIndexMap",[]),this.type="CSVDataSource"}async _getFetchData(s){return await s.text()}getOriginDataIndex(s){return s0&&e++,s.index.push(i+e),this._csvIndexMap[i+e]=[i,a];let l={position:o.geometry[this.projectionName],index:i+e};for(const h of this._attributeMap.keys()){let c;o.properties&&o.properties[this._attributeMap.get(h)]!==void 0&&o.properties[this._attributeMap.get(h)]!==null?c=o.properties[this._attributeMap.get(h)]:this._attributeMap.get(h)instanceof Function&&(c=this._attributeMap.get(h)(o.properties)),s[h].push(c),l[h]=c}t.push(l)}}}_prepareFeatures(){this._csvFeatures=this.csvToFeatures(),this._getDataType()}csvToFeatures(){if(!this.origin)return[];let s=pw(this.origin,{columns:!0,skip_empty_lines:!0});const t=[];for(let e=0;e{a===this._coordinatesKey?r={geometry:ao.exports(i[a]),properties:n}:n[a]=i[a]}),Array.isArray(r)?t.push(...r):t.push(r)}return xl(t,this.projectionName)}_getDataType(){var s,t;this._csvDataType=super._getDataType((t=(s=this._csvFeatures[0])==null?void 0:s.geometry)==null?void 0:t.type)}get csvDataType(){return this._csvDataType}};let d_=u_;d(d_,"fromUrl",async function(s){let t=new u_;return await t.load(s),t});const ku=class extends rs{constructor(s){super(s),d(this,"_coordinatesKey","coordinates"),d(this,"_jsonFeatures",[]),d(this,"_jsonIndexMap",[]),d(this,"_jsonDataType"),this.type="JSONDataSource"}getOriginDataIndex(s){return s0&&e++,s.index.push(i+e),this._jsonIndexMap[i+e]=[i,a];let l={position:o.geometry[this.projectionName],index:i+e};for(const h of this._attributeMap.keys()){let c;o.properties&&o.properties[this._attributeMap.get(h)]!==void 0&&o.properties[this._attributeMap.get(h)]!==null?c=o.properties[this._attributeMap.get(h)]:this._attributeMap.get(h)instanceof Function&&(c=this._attributeMap.get(h)(o.properties)),s[h].push(c),l[h]=c}t.push(l)}}}_getDataType(){var s,t;this._jsonDataType=super._getDataType((t=(s=this._jsonFeatures[0])==null?void 0:s.geometry)==null?void 0:t.type)}onClear(){this._jsonDataType=void 0,this._jsonFeatures=[]}get jsonDataType(){return this._jsonDataType}get coordinatesKey(){return this._coordinatesKey}set coordinatesKey(s){this._coordinatesKey=s}};let Nu=ku;d(Nu,"fromUrl",async function(s){let t=new ku;return await t.load(s),t}),d(Nu,"fromJSON",function(s){let t=new ku;return t.setData(s),t});class mw{constructor(){d(this,"_process",[]),d(this,"_hasTime",!1)}provide(t){let e=0;this._hasTime||(e=new Date().valueOf());for(let i=0;i=0?1:-1,y=1-v*v;if(y>Number.EPSILON){const S=Math.sqrt(y),w=Math.atan2(S,v*x);_=Math.sin(_*w)/S,o=Math.sin(o*w)/S}const b=o*x;if(l=l*_+p*b,h=h*_+m*b,c=c*_+f*b,u=u*_+g*b,_===1-o){const S=1/Math.sqrt(l*l+h*h+c*c+u*u);l*=S,h*=S,c*=S,u*=S}}t[e]=l,t[e+1]=h,t[e+2]=c,t[e+3]=u}static multiplyQuaternionsFlat(t,e,i,n,r,a){const o=i[n],l=i[n+1],h=i[n+2],c=i[n+3],u=r[a],p=r[a+1],m=r[a+2],f=r[a+3];return t[e]=o*f+c*u+l*m-h*p,t[e+1]=l*f+c*p+h*u-o*m,t[e+2]=h*f+c*m+o*p-l*u,t[e+3]=c*f-o*u-l*p-h*m,t}get x(){return this._x}set x(t){this._x=t,this._onChangeCallback()}get y(){return this._y}set y(t){this._y=t,this._onChangeCallback()}get z(){return this._z}set z(t){this._z=t,this._onChangeCallback()}get w(){return this._w}set w(t){this._w=t,this._onChangeCallback()}set(t,e,i,n){return this._x=t,this._y=e,this._z=i,this._w=n,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._w)}copy(t){return this._x=t.x,this._y=t.y,this._z=t.z,this._w=t.w,this._onChangeCallback(),this}setFromEuler(t,e){if(!t||!t.isEuler)throw new Error("THREE.Quaternion: .setFromEuler() now expects an Euler rotation rather than a Vector3 and order.");const i=t._x,n=t._y,r=t._z,a=t._order,o=Math.cos,l=Math.sin,h=o(i/2),c=o(n/2),u=o(r/2),p=l(i/2),m=l(n/2),f=l(r/2);switch(a){case"XYZ":this._x=p*c*u+h*m*f,this._y=h*m*u-p*c*f,this._z=h*c*f+p*m*u,this._w=h*c*u-p*m*f;break;case"YXZ":this._x=p*c*u+h*m*f,this._y=h*m*u-p*c*f,this._z=h*c*f-p*m*u,this._w=h*c*u+p*m*f;break;case"ZXY":this._x=p*c*u-h*m*f,this._y=h*m*u+p*c*f,this._z=h*c*f+p*m*u,this._w=h*c*u-p*m*f;break;case"ZYX":this._x=p*c*u-h*m*f,this._y=h*m*u+p*c*f,this._z=h*c*f-p*m*u,this._w=h*c*u+p*m*f;break;case"YZX":this._x=p*c*u+h*m*f,this._y=h*m*u+p*c*f,this._z=h*c*f-p*m*u,this._w=h*c*u-p*m*f;break;case"XZY":this._x=p*c*u-h*m*f,this._y=h*m*u-p*c*f,this._z=h*c*f+p*m*u,this._w=h*c*u+p*m*f;break;default:console.warn("THREE.Quaternion: .setFromEuler() encountered an unknown order: "+a)}return e!==!1&&this._onChangeCallback(),this}setFromAxisAngle(t,e){const i=e/2,n=Math.sin(i);return this._x=t.x*n,this._y=t.y*n,this._z=t.z*n,this._w=Math.cos(i),this._onChangeCallback(),this}setFromRotationMatrix(t){const e=t.elements,i=e[0],n=e[4],r=e[8],a=e[1],o=e[5],l=e[9],h=e[2],c=e[6],u=e[10],p=i+o+u;if(p>0){const m=.5/Math.sqrt(p+1);this._w=.25/m,this._x=(c-l)*m,this._y=(r-h)*m,this._z=(a-n)*m}else if(i>o&&i>u){const m=2*Math.sqrt(1+i-o-u);this._w=(c-l)/m,this._x=.25*m,this._y=(n+a)/m,this._z=(r+h)/m}else if(o>u){const m=2*Math.sqrt(1+o-i-u);this._w=(r-h)/m,this._x=(n+a)/m,this._y=.25*m,this._z=(l+c)/m}else{const m=2*Math.sqrt(1+u-i-o);this._w=(a-n)/m,this._x=(r+h)/m,this._y=(l+c)/m,this._z=.25*m}return this._onChangeCallback(),this}setFromUnitVectors(t,e){let i=t.dot(e)+1;return iMath.abs(t.z)?(this._x=-t.y,this._y=t.x,this._z=0,this._w=i):(this._x=0,this._y=-t.z,this._z=t.y,this._w=i)):(this._x=t.y*e.z-t.z*e.y,this._y=t.z*e.x-t.x*e.z,this._z=t.x*e.y-t.y*e.x,this._w=i),this.normalize()}angleTo(t){return 2*Math.acos(Math.abs(p_(this.dot(t),-1,1)))}rotateTowards(t,e){const i=this.angleTo(t);if(i===0)return this;const n=Math.min(1,e/i);return this.slerp(t,n),this}identity(){return this.set(0,0,0,1)}invert(){return this.conjugate()}conjugate(){return this._x*=-1,this._y*=-1,this._z*=-1,this._onChangeCallback(),this}dot(t){return this._x*t._x+this._y*t._y+this._z*t._z+this._w*t._w}lengthSq(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w}length(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)}normalize(){let t=this.length();return t===0?(this._x=0,this._y=0,this._z=0,this._w=1):(t=1/t,this._x=this._x*t,this._y=this._y*t,this._z=this._z*t,this._w=this._w*t),this._onChangeCallback(),this}multiply(t,e){return e!==void 0?(console.warn("THREE.Quaternion: .multiply() now only accepts one argument. Use .multiplyQuaternions( a, b ) instead."),this.multiplyQuaternions(t,e)):this.multiplyQuaternions(this,t)}premultiply(t){return this.multiplyQuaternions(t,this)}multiplyQuaternions(t,e){const i=t._x,n=t._y,r=t._z,a=t._w,o=e._x,l=e._y,h=e._z,c=e._w;return this._x=i*c+a*o+n*h-r*l,this._y=n*c+a*l+r*o-i*h,this._z=r*c+a*h+i*l-n*o,this._w=a*c-i*o-n*l-r*h,this._onChangeCallback(),this}slerp(t,e){if(e===0)return this;if(e===1)return this.copy(t);const i=this._x,n=this._y,r=this._z,a=this._w;let o=a*t._w+i*t._x+n*t._y+r*t._z;if(o<0?(this._w=-t._w,this._x=-t._x,this._y=-t._y,this._z=-t._z,o=-o):this.copy(t),o>=1)return this._w=a,this._x=i,this._y=n,this._z=r,this;const l=1-o*o;if(l<=Number.EPSILON){const m=1-e;return this._w=m*a+e*this._w,this._x=m*i+e*this._x,this._y=m*n+e*this._y,this._z=m*r+e*this._z,this.normalize(),this._onChangeCallback(),this}const h=Math.sqrt(l),c=Math.atan2(h,o),u=Math.sin((1-e)*c)/h,p=Math.sin(e*c)/h;return this._w=a*u+this._w*p,this._x=i*u+this._x*p,this._y=n*u+this._y*p,this._z=r*u+this._z*p,this._onChangeCallback(),this}slerpQuaternions(t,e,i){return this.copy(t).slerp(e,i)}random(){const t=Math.random(),e=Math.sqrt(1-t),i=Math.sqrt(t),n=2*Math.PI*Math.random(),r=2*Math.PI*Math.random();return this.set(e*Math.cos(n),i*Math.sin(r),i*Math.cos(r),e*Math.sin(n))}equals(t){return t._x===this._x&&t._y===this._y&&t._z===this._z&&t._w===this._w}fromArray(t,e=0){return this._x=t[e],this._y=t[e+1],this._z=t[e+2],this._w=t[e+3],this._onChangeCallback(),this}toArray(t=[],e=0){return t[e]=this._x,t[e+1]=this._y,t[e+2]=this._z,t[e+3]=this._w,t}fromBufferAttribute(t,e){return this._x=t.getX(e),this._y=t.getY(e),this._z=t.getZ(e),this._w=t.getW(e),this}_onChange(t){return this._onChangeCallback=t,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._w}}class ca{constructor(t=0,e=0,i=0){this.isVector3=!0,this.x=t,this.y=e,this.z=i}set(t,e,i){return i===void 0&&(i=this.z),this.x=t,this.y=e,this.z=i,this}setScalar(t){return this.x=t,this.y=t,this.z=t,this}setX(t){return this.x=t,this}setY(t){return this.y=t,this}setZ(t){return this.z=t,this}setComponent(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;default:throw new Error("index is out of range: "+t)}return this}getComponent(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw new Error("index is out of range: "+t)}}clone(){return new this.constructor(this.x,this.y,this.z)}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this}add(t,e){return e!==void 0?(console.warn("THREE.Vector3: .add() now only accepts one argument. Use .addVectors( a, b ) instead."),this.addVectors(t,e)):(this.x+=t.x,this.y+=t.y,this.z+=t.z,this)}addScalar(t){return this.x+=t,this.y+=t,this.z+=t,this}addVectors(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this}addScaledVector(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this}sub(t,e){return e!==void 0?(console.warn("THREE.Vector3: .sub() now only accepts one argument. Use .subVectors( a, b ) instead."),this.subVectors(t,e)):(this.x-=t.x,this.y-=t.y,this.z-=t.z,this)}subScalar(t){return this.x-=t,this.y-=t,this.z-=t,this}subVectors(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this}multiply(t,e){return e!==void 0?(console.warn("THREE.Vector3: .multiply() now only accepts one argument. Use .multiplyVectors( a, b ) instead."),this.multiplyVectors(t,e)):(this.x*=t.x,this.y*=t.y,this.z*=t.z,this)}multiplyScalar(t){return this.x*=t,this.y*=t,this.z*=t,this}multiplyVectors(t,e){return this.x=t.x*e.x,this.y=t.y*e.y,this.z=t.z*e.z,this}applyEuler(t){return t&&t.isEuler||console.error("THREE.Vector3: .applyEuler() now expects an Euler rotation rather than a Vector3 and order."),this.applyQuaternion(m_.setFromEuler(t))}applyAxisAngle(t,e){return this.applyQuaternion(m_.setFromAxisAngle(t,e))}applyMatrix3(t){const e=this.x,i=this.y,n=this.z,r=t.elements;return this.x=r[0]*e+r[3]*i+r[6]*n,this.y=r[1]*e+r[4]*i+r[7]*n,this.z=r[2]*e+r[5]*i+r[8]*n,this}applyNormalMatrix(t){return this.applyMatrix3(t).normalize()}applyMatrix4(t){const e=this.x,i=this.y,n=this.z,r=t.elements,a=1/(r[3]*e+r[7]*i+r[11]*n+r[15]);return this.x=(r[0]*e+r[4]*i+r[8]*n+r[12])*a,this.y=(r[1]*e+r[5]*i+r[9]*n+r[13])*a,this.z=(r[2]*e+r[6]*i+r[10]*n+r[14])*a,this}applyQuaternion(t){const e=this.x,i=this.y,n=this.z,r=t.x,a=t.y,o=t.z,l=t.w,h=l*e+a*n-o*i,c=l*i+o*e-r*n,u=l*n+r*i-a*e,p=-r*e-a*i-o*n;return this.x=h*l+p*-r+c*-o-u*-a,this.y=c*l+p*-a+u*-r-h*-o,this.z=u*l+p*-o+h*-a-c*-r,this}project(t){return this.applyMatrix4(t.matrixWorldInverse).applyMatrix4(t.projectionMatrix)}unproject(t){return this.applyMatrix4(t.projectionMatrixInverse).applyMatrix4(t.matrixWorld)}transformDirection(t){const e=this.x,i=this.y,n=this.z,r=t.elements;return this.x=r[0]*e+r[4]*i+r[8]*n,this.y=r[1]*e+r[5]*i+r[9]*n,this.z=r[2]*e+r[6]*i+r[10]*n,this.normalize()}divide(t){return this.x/=t.x,this.y/=t.y,this.z/=t.z,this}divideScalar(t){return this.multiplyScalar(1/t)}min(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this}max(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this}clamp(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this.z=Math.max(t.z,Math.min(e.z,this.z)),this}clampScalar(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this.z=Math.max(t,Math.min(e,this.z)),this}clampLength(t,e){const i=this.length();return this.divideScalar(i||1).multiplyScalar(Math.max(t,Math.min(e,i)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this}roundToZero(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this.z=this.z<0?Math.ceil(this.z):Math.floor(this.z),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this}dot(t){return this.x*t.x+this.y*t.y+this.z*t.z}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)}normalize(){return this.divideScalar(this.length()||1)}setLength(t){return this.normalize().multiplyScalar(t)}lerp(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this.z+=(t.z-this.z)*e,this}lerpVectors(t,e,i){return this.x=t.x+(e.x-t.x)*i,this.y=t.y+(e.y-t.y)*i,this.z=t.z+(e.z-t.z)*i,this}cross(t,e){return e!==void 0?(console.warn("THREE.Vector3: .cross() now only accepts one argument. Use .crossVectors( a, b ) instead."),this.crossVectors(t,e)):this.crossVectors(this,t)}crossVectors(t,e){const i=t.x,n=t.y,r=t.z,a=e.x,o=e.y,l=e.z;return this.x=n*l-r*o,this.y=r*a-i*l,this.z=i*o-n*a,this}projectOnVector(t){const e=t.lengthSq();if(e===0)return this.set(0,0,0);const i=t.dot(this)/e;return this.copy(t).multiplyScalar(i)}projectOnPlane(t){return Uu.copy(this).projectOnVector(t),this.sub(Uu)}reflect(t){return this.sub(Uu.copy(t).multiplyScalar(2*this.dot(t)))}angleTo(t){const e=Math.sqrt(this.lengthSq()*t.lengthSq());if(e===0)return Math.PI/2;const i=this.dot(t)/e;return Math.acos(p_(i,-1,1))}distanceTo(t){return Math.sqrt(this.distanceToSquared(t))}distanceToSquared(t){const e=this.x-t.x,i=this.y-t.y,n=this.z-t.z;return e*e+i*i+n*n}manhattanDistanceTo(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)+Math.abs(this.z-t.z)}setFromSpherical(t){return this.setFromSphericalCoords(t.radius,t.phi,t.theta)}setFromSphericalCoords(t,e,i){const n=Math.sin(e)*t;return this.x=n*Math.sin(i),this.y=Math.cos(e)*t,this.z=n*Math.cos(i),this}setFromCylindrical(t){return this.setFromCylindricalCoords(t.radius,t.theta,t.y)}setFromCylindricalCoords(t,e,i){return this.x=t*Math.sin(e),this.y=i,this.z=t*Math.cos(e),this}setFromMatrixPosition(t){const e=t.elements;return this.x=e[12],this.y=e[13],this.z=e[14],this}setFromMatrixScale(t){const e=this.setFromMatrixColumn(t,0).length(),i=this.setFromMatrixColumn(t,1).length(),n=this.setFromMatrixColumn(t,2).length();return this.x=e,this.y=i,this.z=n,this}setFromMatrixColumn(t,e){return this.fromArray(t.elements,4*e)}setFromMatrix3Column(t,e){return this.fromArray(t.elements,3*e)}setFromEuler(t){return this.x=t._x,this.y=t._y,this.z=t._z,this}equals(t){return t.x===this.x&&t.y===this.y&&t.z===this.z}fromArray(t,e=0){return this.x=t[e],this.y=t[e+1],this.z=t[e+2],this}toArray(t=[],e=0){return t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t}fromBufferAttribute(t,e,i){return i!==void 0&&console.warn("THREE.Vector3: offset has been removed from .fromBufferAttribute()."),this.x=t.getX(e),this.y=t.getY(e),this.z=t.getZ(e),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}randomDirection(){const t=2*(Math.random()-.5),e=Math.random()*Math.PI*2,i=Math.sqrt(1-t**2);return this.x=i*Math.cos(e),this.y=i*Math.sin(e),this.z=t,this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z}}const Uu=new ca,m_=new fw;function oo(s,t,e=2e-7){return ds(s,t)F.angle()&&Q.angle()F.angle()&&Q.angle()F.negate().angle()){const X=Math.PI/2-Math.abs(l)+e*O/2,U=T*Math.cos(X),H=T*Math.sin(X);S=[b.x+U,b.y-H],w=[-U,H]}else{const X=Math.abs(l)+e*O/2,U=T*Math.sin(X),H=T*Math.cos(X);S=[b.x-U,b.y+H],w=[-U,H]}break;case 4:if(Q.angle()F.negate().angle()){const X=Math.abs(l)+e*O/2,U=T*Math.sin(X),H=T*Math.cos(X);S=[b.x+U,b.y+H],w=[-U,-H]}else{const X=Math.PI/2-Math.abs(l)+e*O/2,U=T*Math.cos(X),H=T*Math.sin(X);S=[b.x-U,b.y-H],w=[-U,-H]}}}return{point:S,center:b,interPointA:c,interPointB:x,direction:w}}class gw{constructor(t){d(this,"id",null),d(this,"data",[]),d(this,"interpolateDirectThreshold",10),t&&typeof t=="number"&&(this.data=new Array(t))}tick(t,e){let i=this.data[0],n=this.data[1];if(!i||!n)return null;const r=(e-i.time)/(n.time-i.time),a=Fu(i.point,n.point,r),o=t.map.projectPointArr(a);let l=i.dir,h=ds(o,t.map.projectPointArr(n.point));return h{r.length===this._entityCacheTimes.length&&r.push(void 0)}),this._entityCacheTimes.push(e)}shift(t){const e=this._entities,i=this._entityCacheTimes;let n=0,r=[];for(let a=1;a{o.splice(0,n),o.empty&&(e.delete(a),r.push(a))}),i.length===1&&this.reset(),r}tick(t,e){if(e-this.delay{if(c.geometry){c.geometry.boundingBox||c.geometry.computeBoundingBox(),c.updateMatrixWorld();const u=lo.computeTransformedBoundingBox(c.geometry.boundingBox,c.matrixWorld);e.boundingBox?e.boundingBox=e.boundingBox.union(u):e.boundingBox=u}}),h=e.boundingSphere?e.boundingSphere:e.geometry&&e.geometry.boundingSphere?e.geometry.boundingSphere:e.boundingBox.getBoundingSphere(new mi),n=h.center}else if(e instanceof M)n=e.clone();else{if(!(e instanceof Array))return null;n=new M(e[0],e[1],e[2]||0)}const a=t.camera,o=a.clone();o.rotation.copy(a.rotation),o.rotation.order="ZXY",o.rotation.z=r.y-Math.PI/2,o.rotation.x=i.pitch,o.updateMatrix(),o.updateMatrixWorld();const l=o.getWorldDirection(new M).multiplyScalar(-i.radius);return o.position.copy(n.add(l)),a.position.copy(o.position),a.position.z+=i.height||0,a.rotation.copy(o.rotation),a.updateMatrix(),a.updateMatrixWorld(),a.updateProjectionMatrix(),{heading:(r.y-Math.PI/2)/Math.PI*180,pitch:i.pitch/Math.PI*180,center:[a.position.x,a.position.y]}}static computeTransformedBoundingBox(t,e){const i=[new M(t.min.x,t.min.y,t.min.z).applyMatrix4(e),new M(t.min.x,t.min.y,t.min.z).applyMatrix4(e),new M(t.max.x,t.min.y,t.min.z).applyMatrix4(e),new M(t.min.x,t.max.y,t.min.z).applyMatrix4(e),new M(t.min.x,t.min.y,t.max.z).applyMatrix4(e),new M(t.min.x,t.max.y,t.max.z).applyMatrix4(e),new M(t.max.x,t.max.y,t.min.z).applyMatrix4(e),new M(t.max.x,t.min.y,t.max.z).applyMatrix4(e),new M(t.max.x,t.max.y,t.max.z).applyMatrix4(e)],n=new He;return n.setFromPoints(i),n}}const vw=new ea;new rt;let nh=new rt,er=new rt,ho=new rt,sh=new lt,kn=[],ir=new M,ua=new Lt;class Si extends Sn{constructor(t,e){super(),d(this,"type","InstancedMesh"),d(this,"isMesh",!0),d(this,"isInstancedMesh",!0),d(this,"frustumCulled",!1),d(this,"instanceColor",null),d(this,"count",0),d(this,"instanceMatrix"),d(this,"_enableInstanceColor",!1),d(this,"instanceMorphMatrix",new rt),d(this,"isEventEntitySupported",!0),d(this,"getInstanceLocalMatrix",(i,n,r)=>null),d(this,"addCustomAttributes",()=>{}),this.geometry=t,this.material=e,this.instanceMatrix=new Xi(new Float32Array(0),16)}set enableInstanceColor(t){t!==this._enableInstanceColor&&(this._enableInstanceColor=t,this.needsUpdate=!0)}get enableInstanceColor(){return this._enableInstanceColor}collisionTest(t){let e=this.material.keepSize?this.size:0;return{width:e,height:e}}setData(){let t=[];t=this._enableCollision&&this._collisionData?this._collisionData:this.dataSource.userData;const e=[],i=[],n=[];let r=1/0,a=1/0,o=1/0,l=-1/0,h=-1/0,c=-1/0;for(let p=0;pl&&(l=f),gh&&(h=g),_c&&(c=_)}let u=[(r+l)/2,(a+h)/2,(o+c)/2||0];for(let p=0;p=g&&ua.y>=v&&ua.x<=_&&ua.y<=x){ir.set(er.elements[12],er.elements[13],er.elements[14]);const b=t.ray.origin.distanceTo(ir);b>=t.near&&b<=t.far&&(kn[0]={distance:b,point:ir.clone(),itemIndex:y,object:this},e.push(kn[0]),kn.length=0)}}else for(let h=0;h0&&(kn[0].instanceId=h,kn[0].object=this,e.push(kn[0]),kn.length=0)}}class __ extends Sn{constructor(){super(...arguments),d(this,"isPoints",!0),d(this,"isEventEntitySupported",!0)}get size(){return this.material.size}set size(t){this.material.size=t}raycast(t,e){const i=t.params.Points.threshold;let n=i*this.size;this.material.uniforms.zoomUnits&&(n*=this.material.uniforms.zoomUnits.value),t.params.Points.threshold=n,ll.prototype.raycast.call(this,t,e),t.params.Points.threshold=i}getEntityByIndex(t){const e=this.dataSource.data,i={};for(const n of Object.keys(e))i[n]=e[n][t];return i}}class xw extends Pt{constructor(t){super(t),this.parameters=t}setData(t){const{vertexSizes:e,vertexColors:i}=this.parameters,{aPositions:n,aObjectIndices:r,aMapIndexs:a,aColors:o,aSizes:l}=t;this.setAttribute("position",new et(n,3)),this.setAttribute("objectIndex",new et(r,1)),this.setAttribute("aMapIndex",new et(a,1)),i&&this.setAttribute("aColor",new et(o,4)),e&&this.setAttribute("aSize",new et(l,1))}}const yw=new Ie,bw=pt.merge([ot.fog,ki,is,{isEmissive:{value:!1},color:{value:[0,1,1,1]},size:{value:30},vertexColors:{value:!1},vertexSizes:{value:!1},uShapeType:{value:2},opacity:{value:1},map:{value:null},useMap:{value:!1},uOffset:{value:[0,0]}}]);class Mw extends Be{constructor(t){super(),this.type="SimplePointMaterial",this.vertexShader=`#define GLSLIFY 1 +#include + +#ifdef MVT_USE_VERTEX_SIZE + attribute float aSize; + varying float vSize; +#endif + +#ifdef MVT_USE_VERTEX_OFFSET + attribute vec2 aOffset; +#else + uniform vec2 uOffset; +#endif + +#ifdef MVT_USE_VERTEX_COLOR + attribute vec4 aColor; + varying vec4 vColor; +#endif + +uniform float size; +uniform float pixelRatio; +uniform vec2 resolution; + +#include +#include +#include + +void main() { + #include + + vec4 worldPosition = modelMatrix * vec4(position, 1.0); + float pixelSize = getPixelSize(worldPosition.xyz); + + #ifdef MVT_USE_VERTEX_OFFSET + vec2 offset = aOffset * 2. * pixelRatio * pixelSize; + #else + vec2 offset = uOffset * 2. * pixelRatio * pixelSize; + #endif + + gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0); + gl_Position.xy = gl_Position.xy - offset; + + #ifdef MVT_USE_VERTEX_SIZE + vSize = aSize * pixelRatio; + gl_PointSize = vSize; + #else + gl_PointSize = size * pixelRatio; + #endif + + #ifdef MVT_USE_VERTEX_COLOR + vColor = aColor; + #endif + + #include +}`,this.fragmentShader=`#define GLSLIFY 1 +#include + +#ifdef MVT_USE_VERTEX_COLOR + varying vec4 vColor; +#endif +uniform vec4 color; +uniform float uShapeType; +uniform float opacity; + +#ifdef MVT_USE_VERTEX_SIZE + varying float vSize; +#else + uniform float size; +#endif +uniform bool useMap; +uniform sampler2D map; + +#include +#include + +void main() { + + #ifdef MVT_USE_VERTEX_COLOR + gl_FragColor = vColor; + #else + gl_FragColor = color; + #endif + + if (uShapeType == 2.) { + float d = distance(gl_PointCoord, vec2(0.5, 0.5)); + #ifdef MVT_USE_VERTEX_SIZE + float alpha = smoothstep(0.5 + 0.5 / vSize, 0.5 - 1.0 / vSize, d); + #else + float alpha = smoothstep(0.5 + 0.5 / size, 0.5 - 1.0 / size, d); + #endif + + if (alpha <= 0.) { + discard; + } else { + gl_FragColor.a *= alpha; + } + } + + if (useMap) { + vec4 tColor = texture2D(map, vec2(gl_PointCoord.x, 1.0 - gl_PointCoord.y)); + // gl_FragColor.rgb = tColor.rgb * tColor.a + gl_FragColor.rgb * (1.0 - tColor.a); + // gl_FragColor.a += tColor.a; + + gl_FragColor = mix(gl_FragColor, tColor, tColor.a); + // gl_FragColor.rgb = mix(gl_FragColor.rgb, tColor.rgb, tColor.a); + // gl_FragColor.a += tColor.a; + // gl_FragColor = tColor; + } + gl_FragColor.a *= opacity; + if (gl_FragColor.a <= 0.) { + discard; + } + #include + #include + #include + #include + +}`,this.isSimplePointMaterial=!0,this.transparent=!0,Object.assign(this.uniforms,pt.clone(bw)),ns(this),jt(this,["size","uShapeType","opacity","isEmissive"]),_i(this,[["offset","uOffset"]]),Bs(this,["color"]),Qe(this,[["vertexColors","MVT_USE_VERTEX_COLOR"],["vertexSizes","MVT_USE_VERTEX_SIZE"]]),ss(this),Object.defineProperties(this,{mapSrc:{get:function(){return this.uniforms.map.value},set:function(e){const i=this.mapSrc,n="url_map";if(this.userData[n]===e)return;if(i&&i.dispose(),!e)return this.uniforms.map.value=null,this.uniforms.useMap.value=!1,void delete this.userData[n];const r=yw.load(e);r.wrapS=r.wrapT=ue,this.uniforms.map.value=r,this.userData[n]=e,this.uniforms.useMap.value=!0}}}),this.emissiveEnabled=!0,this.emissive=[0,0,0],this.setValues(t)}dispose(){this.uniforms.map.value&&this.uniforms.map.value.dispose(),super.dispose()}}class Bu extends __{constructor(t){super(t),d(this,"geometry"),d(this,"material"),d(this,"color"),d(this,"vertexColors"),d(this,"size"),d(this,"vertexSizes"),d(this,"opacity"),d(this,"emissive"),this.parameters=t,this.defineMaterialProxyProperties(["size","uShapeType","opacity","emissive","vertexColors","vertexSizes","color","mapSrc"])}collisionTest(t){return this.parameters.vertexSizes&&t.size?{width:t.size,height:t.size}:{width:this.size,height:this.size}}initObject(){this.geometry=new xw(this.parameters),this.material=new Mw(this.parameters),this.material.setCommonUniforms(this.engine.rendering.uniforms)}setData(){const t=this.dataSource.data,{vertexSizes:e,vertexColors:i}=this.parameters;let n=[];n=this._enableCollision&&this._collisionData?this._collisionData:this.dataSource.userData;const r=[],a=[],o=[],l=[];for(let h=0;h{this.setAttribute("position",new et([-.5,-.5,0,-.5,.5,0,.5,.5,0,.5,-.5,0],3)),this.setAttribute("uv",new et([0,0,0,1,1,1,1,0],2)),this.setIndex([0,2,1,0,3,2])}),this.setModelData()}}const ww=s=>{Object.defineProperties(s,{color:{get:function(){return this.uniforms.color.value},set:function(t){this.uniforms.color.value=es(t)}},height:{get:function(){return this.uniforms.height.value},set:function(t){this.uniforms.height.value=t}},size:{get:function(){return this.uniforms.size.value},set:function(t){this.uniforms.size.value=t}},size3:{get:function(){return this.uniforms.size3.value},set:function(t){Array.isArray(t)&&t.length===3&&(this.uniforms.size3.value=t)}},useSize3:{get:function(){return this.defines.USE_SIZE3},set:function(t){t===this.defines.USE_SIZE3&&(this.defines.USE_SIZE3=!!t),this.needsUpdate=!0}},opacity:{get:function(){return this.uniforms.opacity.value},set:function(t){this.uniforms.opacity.value=t}}})},Sw=s=>{Object.defineProperties(s,{animationRotate:{get:function(){return!!this.defines.ENABLE_ANIMATION_ROTATE},set:function(t){t!==this.animationRotate&&(t?this.defines.ENABLE_ANIMATION_ROTATE=!0:delete this.defines.ENABLE_ANIMATION_ROTATE,this.needsUpdate=!0)}},animationRotatePeriod:{get:function(){return this.uniforms.animationRotatePeriod.value},set:function(t){this.uniforms.animationRotatePeriod.value=t}},animationJump:{get:function(){return!!this.defines.ENABLE_ANIMATION_JUMP},set:function(t){t!==this.animationJump&&(t?this.defines.ENABLE_ANIMATION_JUMP=!0:delete this.defines.ENABLE_ANIMATION_JUMP,this.needsUpdate=!0)}},animationJumpPeriod:{get:function(){return this.uniforms.animationJumpPeriod.value},set:function(t){this.uniforms.animationJumpPeriod.value=t}},animationJumpHeight:{get:function(){return this.uniforms.animationJumpHeight.value},set:function(t){this.uniforms.animationJumpHeight.value=t}},animationPeriodOffset:{get:function(){return this.uniforms.animationPeriodOffset.value},set:function(t){this.uniforms.animationPeriodOffset.value=t}},animationEffect:{get:function(){return this.uniforms.animationEffect.value},set:function(t){this.uniforms.animationEffect.value=t}},animationEffectPeriod:{get:function(){return this.uniforms.animationEffectPeriod.value},set:function(t){this.uniforms.animationEffectPeriod.value=t}}})},Tw=pt.merge([ot.fog,{height:{value:0},size:{value:1},size3:{value:[1,1,1]},resolution:{value:[1,1]},zoomUnits:{value:1},color:{value:[1,0,0,1]},opacity:{value:1}},{animationRotatePeriod:{value:4e3},animationJumpPeriod:{value:4e3},animationJumpHeight:{value:30},animationPeriodOffset:{value:!1},animationEffect:{value:!0},animationEffectPeriod:{value:4e3}},ki,Ic,{isCesium:{value:!1}}]);class sn extends Be{constructor(t){super(),this.type="InstancedEffectPointMaterial",this.isInstancedEffectPointMaterial=!0,this.lights=!1,this.transparent=!0,Object.assign(this.uniforms,pt.clone(Tw)),ww(this),Sw(this),ns(this),Oc(this),this.setValues(t)}}const Cw=pt.merge([ot.fog,ki,{isEmissive:{value:!1},elapsedTime:{value:0}}]);class Ew extends sn{constructor(t){super(t),d(this,"type","SpecialPointMaterial"),d(this,"isSpecialPointMaterial",!0),this.vertexShader=`#define GLSLIFY 1 +#include + +attribute vec3 instancedPosition; +attribute float instancedRandomFactor; + +uniform float height; +uniform float size; +uniform float elapsedTime; +uniform bool animationEffect; +uniform float animationEffectPeriod; + +varying vec2 vPosition; +varying float vEffectRatio; +varying vec2 vUV; + +#include +#include +#include +#include + +void main() { + vUV = uv; + #include + vPosition = position.xy; + vec3 transformed = vec3(position); + + #include + + transformed *= size; + + #include + + // gl_Position = projectionMatrix * modelViewMatrix * + // vec4(instancedPosition + transformed, 1.0); + gl_Position = projectionMatrix * modelViewMatrix * instanceMatrix * vec4(transformed, 1.0); +}`,this.fragmentShader=`#define GLSLIFY 1 +#define SMOOTH(r,R) (1.0-smoothstep(R-1.0,R+1.0, r)) +#define RANGE(a,b,x) ( step(a,x)*(1.0-step(b,x)) ) +#define RS(a,b,x) ( smoothstep(a-1.0,a+1.0,x)*(1.0-smoothstep(b-1.0,b+1.0,x)) ) +#define M_PI 3.1415926535897932384626433832795 + +#define blue1 vec3(0.74,0.95,1.00) +#define blue2 vec3(0.87,0.98,1.00) +#define blue3 vec3(0.35,0.76,0.83) +#define blue4 vec3(0.953,0.969,0.89) +#define red vec3(1.00,0.38,0.227) + +#define MOV(a,b,c,d,t) (vec2(a*cos(t)+b*cos(0.1*(t)), c*sin(t)+d*cos(0.1*(t)))) + +uniform float ratio; + +float PI = 3.1415926; +uniform float elapsedTime; +uniform vec2 resolution; +varying vec2 vPosition; +varying vec2 vUV; + +float movingLine(vec2 uv, vec2 center, float radius) +{ + //angle of the line + float theta0 = 90.0 * elapsedTime / 1000.; + vec2 d = uv - center; + float r = sqrt( dot( d, d ) ); + if(r opening ) + return SMOOTH(r-width/2.0,radius)-SMOOTH(r+width/2.0,radius); + else + return 0.0; +} +float circle3(vec2 uv, vec2 center, float radius, float width) +{ + vec2 d = uv - center; + float r = sqrt( dot( d, d ) ); + d = normalize(d); + float theta = 180.0*(atan(d.y,d.x)/M_PI); + return smoothstep(2.0, 2.1, abs(mod(theta+2.0,45.0)-2.0)) * + mix( 0.5, 1.0, step(45.0, abs(mod(theta, 180.0)-90.0)) ) * + (SMOOTH(r-width/2.0,radius)-SMOOTH(r+width/2.0,radius)); +} + +float triangles(vec2 uv, vec2 center, float radius) +{ + vec2 d = uv - center; + return RS(-8.0, 0.0, d.x-radius) * (1.0-smoothstep( 7.0+d.x-radius,9.0+d.x-radius, abs(d.y))) + + RS( 0.0, 8.0, d.x+radius) * (1.0-smoothstep( 7.0-d.x-radius,9.0-d.x-radius, abs(d.y))) + + RS(-8.0, 0.0, d.y-radius) * (1.0-smoothstep( 7.0+d.y-radius,9.0+d.y-radius, abs(d.x))) + + RS( 0.0, 8.0, d.y+radius) * (1.0-smoothstep( 7.0-d.y-radius,9.0-d.y-radius, abs(d.x))); +} + +float _cross(vec2 uv, vec2 center, float radius) +{ + vec2 d = uv - center; + int x = int(d.x); + int y = int(d.y); + float r = sqrt( dot( d, d ) ); + if( (r= 50.0 ) && ( r < 115.0 ) ) + return 0.5; + else + return 0.0; +} +float bip1(vec2 uv, vec2 center) +{ + return SMOOTH(length(uv - center),3.0); +} +float bip2(vec2 uv, vec2 center) +{ + float r = length(uv - center); + float R = 8.0+mod(87.0*elapsedTime / 1000., 80.0); + return (0.5-0.5*cos(30.0*elapsedTime / 1000.)) * SMOOTH(r,5.0) + + SMOOTH(6.0,r)-SMOOTH(8.0,r) + + smoothstep(max(8.0,R-20.0),R,r)-SMOOTH(R,r); +} +void main() { + vec2 _uv = vec2(vPosition.x * resolution.x, vPosition.y * resolution.y); + vec3 finalColor; + vec2 uv = _uv; + //center of the image + vec2 c = vec2(vUV.x / 2.0, vUV.y / 2.0); + finalColor = vec3( 0.3*_cross(uv, c, 240.0) ); + finalColor += ( circle(uv, c, 100.0, 1.0) + + circle(uv, c, 165.0, 1.0) ) * blue1; + finalColor += (circle(uv, c, 240.0, 2.0) );//+ dots(uv,c,240.0)) * blue4; + finalColor += circle3(uv, c, 313.0, 4.0) * blue1; + finalColor += triangles(uv, c, 315.0 + 30.0*sin(elapsedTime / 1000.)) * blue2; + finalColor += movingLine(uv, c, 240.0) * blue3; + finalColor += circle(uv, c, 10.0, 1.0) * blue3; + finalColor += 0.7 * circle2(uv, c, 262.0, 1.0, 0.5+0.2*cos(elapsedTime / 1000.)) * blue3; + if( length(uv-c) < 240.0 ) + { + //animate some bips with random movements + vec2 p = 130.0*MOV(1.3,1.0,1.0,1.4,3.0+0.1*elapsedTime / 1000.); + finalColor += bip1(uv, c+p) * vec3(1,1,1); + p = 130.0*MOV(0.9,-1.1,1.7,0.8,-2.0+sin(0.1*elapsedTime / 1000.)+0.15*elapsedTime / 1000.); + finalColor += bip1(uv, c+p) * vec3(1,1,1); + p = 50.0*MOV(1.54,1.7,1.37,1.8,sin(0.1*elapsedTime / 1000.+7.0)+0.2*elapsedTime / 1000.); + // finalColor += bip2(uv,c+p) * red; + } + + gl_FragColor = vec4( finalColor, 1.0 ); + // gl_FragColor.a *= finalColor.r; + +}`,this.transparent=!0,this.side=2,this.depthWrite=!1,Object.assign(this.uniforms,pt.clone(Cw)),jt(this,["isEmissive","elapsedTime"]),this.setValues(t)}}const y_=`#define GLSLIFY 1 +#include + +varying vec2 vUV; +uniform float size; +varying vec2 vPosition; + +#include +void main() { + vUV = uv; + vec3 transformed = vec3(position); + vPosition = position.xy; + + transformed *= size; + gl_Position = projectionMatrix * modelViewMatrix * instanceMatrix * vec4( transformed, 1.0 ); + #include +}`;let co=pt.merge([{speed:{value:1},color:{value:[1,0,0,1]},size:{value:100},isEmissive:{value:!1}}]);class Aw extends sn{constructor(t){super(t),d(this,"type","InstancedFanMaterial"),d(this,"isInstancedFanMaterial",!0),this.depthWrite=!1,jt(this,["speed","isEmissive"]),t.type==="Fan"?(this.vertexShader=`#define GLSLIFY 1 +#include + +attribute vec3 instancedPosition; +attribute float instancedRandomFactor; + +uniform float height; +uniform float size; +uniform float elapsedTime; +uniform float speed; +uniform bool animationEffect; +uniform float animationEffectPeriod; + +varying vec2 vPosition; +varying float vEffectRatio; + +#include +#include +#include +#include +#include + +void main() { + + #include + vPosition = position.xy; + vec3 transformed = vec3(position); + + float elapsedTime = elapsedTime * speed * .5; + #include + + transformed *= size; + + #include + + // gl_Position = projectionMatrix * modelViewMatrix * + // vec4(instancedPosition + transformed, 1.0); + gl_Position = projectionMatrix * modelViewMatrix * instanceMatrix * vec4(transformed, 1.0); + #include +}`,this.fragmentShader=`#define GLSLIFY 1 +// #include + +uniform vec4 color; +uniform float opacity; +uniform bool animationEffect; + +varying float vEffectRatio; +varying vec2 vPosition; + +// #include +#include +void main() { + + float bb = atan(vPosition.y, vPosition.x) + 3.15; + + float pi = 3.14 * 1.; + // bb = mod(bb, 6.28); + if (bb > pi) { + discard; + } else { + float aa = mod(bb / pi, 1.0); + float dis = distance(vPosition, vec2(0, 0)); + if (dis > 0.5) { + discard; + } else { + gl_FragColor = color; + gl_FragColor.a *= aa; + } + } + #include + #include + + // #include + #include +}`):t.type==="Radar"?(co=pt.merge([co,{segmentAngle:{value:.25*Math.PI}}]),jt(this,["segmentAngle"]),this.vertexShader=`#include +precision mediump float; +precision mediump int; +#define GLSLIFY 1 +#include +varying vec2 vPosition; +uniform float elapsedTime; +uniform float speed; +attribute float instancedRandomFactor; +uniform float size; + +#include +void main() { + vec3 transformed = vec3(position); + float elapsedTime = elapsedTime * speed * .5; + #include + transformed *= size; + vPosition = position.xy; + gl_Position = projectionMatrix * modelViewMatrix * instanceMatrix * vec4( transformed, 1.0 ); + #include +}`,this.fragmentShader=`#define GLSLIFY 1 +uniform float segmentAngle; +uniform vec4 color; +varying vec2 vPosition; + +#define PI 3.1415926 +#define radius .5 +#include + +float cros(vec2 line1, vec2 line2){ + return line1.x * line2.y - line2.x * line1.y; +} + +void main() { + bool crossNPI = false; + float wholeAng = abs(mod(segmentAngle , PI * 2.)); + float dis = length(vec2(vPosition.xy - vec2(0.0))); + + // if(wholeAng < -1.0*PI){ + // crossNPI = true; + // wholeAng = 2.0*PI + endAng-startAng; + // } + if (dis 0.0 && abs(nV.y) < 0.01) { + angle = 0.5*PI; + } + else if (nV.x<0.0 && abs(nV.y) < 0.01) { + angle = -0.5*PI; + } + else { + angle = atan(nV.x,nV.y); + } + + if (angle<.0) { + angle = 2. * PI + angle; + } + + float alpha = 0.1; + + if (angle > 0. && angle < wholeAng) { + // alpha = 1.1 - (endAng-angle)/wholeAng; + alpha = 1.1 - (1. - (wholeAng-angle) / wholeAng); + } + + gl_FragColor = color; + gl_FragColor.a = alpha; + } + else { + discard; + } + #include + #include + #include +}`):t.type==="RadarLayered"?(co=pt.merge([co,{sideColor:{value:[.87,.98,1,1]}}]),Bs(this,["sideColor"]),this.vertexShader=y_,this.fragmentShader=`#define GLSLIFY 1 +#define SMOOTH(r,R) (1.0-smoothstep(R-1.0,R+1.0, r)) +#define RANGE(a,b,x) ( step(a,x)*(1.0-step(b,x)) ) +#define RS(a,b,x) ( smoothstep(a-1.0,a+1.0,x)*(1.0-smoothstep(b-1.0,b+1.0,x)) ) +#define M_PI 3.1415926535897932384626433832795 + +// #define blue1 vec4(0.74,0.95,1.00,1.) +// #define blue2 vec4(0.87,0.98,1.00,1.) +// #define blue3 vec4(0.35,0.76,0.83,1.) +// #define blue4 vec4(0.953,0.969,0.89,1.) +// #define red vec4(1.00,0.38,0.227,1.) + +#define MOV(a,b,c,d,t) (vec2(a*cos(t)+b*cos(0.1*(t)), c*sin(t)+d*cos(0.1*(t)))) +// #define elapsedTime 0.01 +uniform float elapsedTime; +uniform float speed; +varying vec2 vPosition; +uniform vec4 color; +uniform vec4 sideColor; +#include +float movingLine(vec2 uv, vec2 center, float radius) +{ + //angle of the line + float theta0 = 90.0 * elapsedTime * speed *.0006; + vec2 d = uv - center; + float r = sqrt( dot( d, d ) ); + if(r opening ) + return SMOOTH(r-width/2.0,radius)-SMOOTH(r+width/2.0,radius); + else + return 0.0; +} +float circle3(vec2 uv, vec2 center, float radius, float width) +{ + vec2 d = uv - center; + float r = sqrt( dot( d, d ) ); + d = normalize(d); + float theta = 180.0*(atan(d.y,d.x)/M_PI); + return smoothstep(2.0, 2.1, abs(mod(theta+2.0,45.0)-2.0)) * + mix( 0.5, 1.0, step(45.0, abs(mod(theta, 180.0)-90.0)) ) * + (SMOOTH(r-width/2.0,radius)-SMOOTH(r+width/2.0,radius)); +} + +float triangles(vec2 uv, vec2 center, float radius) +{ + vec2 d = uv - center; + return RS(-8.0, 0.0, d.x-radius) * (1.0-smoothstep( 7.0+d.x-radius,9.0+d.x-radius, abs(d.y))) + + RS( 0.0, 8.0, d.x+radius) * (1.0-smoothstep( 7.0-d.x-radius,9.0-d.x-radius, abs(d.y))) + + RS(-8.0, 0.0, d.y-radius) * (1.0-smoothstep( 7.0+d.y-radius,9.0+d.y-radius, abs(d.x))) + + RS( 0.0, 8.0, d.y+radius) * (1.0-smoothstep( 7.0-d.y-radius,9.0-d.y-radius, abs(d.x))); +} + +float _cross(vec2 uv, vec2 center, float radius) +{ + vec2 d = uv - center; + int x = int(d.x * 100.); + int y = int(d.y * 100.); + float r = sqrt( dot( d, d ) ); + if( (r + //center of the image + vec2 c = vec2(0.0, 0.0); + finalColor += 0.3*_cross( vPosition.xy, c, .5); + finalColor += ( circle(uv, c, .3, .01) + + circle(uv, c, .4, .01) ) * color; + finalColor += (circle(uv, c, .5, .02) ) * sideColor;//+ dots(uv,c,240.0)) * blue4; + // finalColor += circle3(uv, c, 313.0, 4.0) * blue1; + // finalColor += triangles(uv, c, 315.0 + 30.0*sin(elapsedTime * speed *.0006)) * blue2; + finalColor += movingLine(uv, c, .5) * color; + finalColor += circle(uv, c, .05, .01) * color; + // finalColor += 0.7 * circle2(uv, c, 262.0, 1.0, 0.5+0.2*cos(elapsedTime * speed *.0006)) * blue3; + if( length(uv-c) < .5 ) { + if( length(finalColor)<0.2) { + discard; + } + } + else{ + discard; + } + if (finalColor.a <= 0.) { + discard; + } + gl_FragColor = finalColor; + #include + #include +}`):(this.vertexShader=y_,this.fragmentShader=`#define GLSLIFY 1 +#include + +varying vec2 vUV; +uniform vec4 color; +uniform float speed; +uniform float elapsedTime; + +vec3 RadarPing(in vec2 uv, in vec2 center, in float innerTail, + in float frontierBorder, in float timeResetSeconds, + in float radarPingSpeed, in float fadeDistance, float t) { + vec2 diff = center-uv; + float r = length(diff); + float time = mod(t, timeResetSeconds) * radarPingSpeed; + + float circle; + circle += smoothstep(time - innerTail, time, r) * smoothstep(time + frontierBorder,time, r); + circle *= smoothstep(fadeDistance, 0.25, r); // fade to 0 after fadeDistance + + return vec3(circle); +} +#include +void main() { + // gl_FragColor = vec4(1.,.0,.0,1.); + //normalize coordinates + vec2 uv = vUV; //move coordinates to 0..1 + uv = uv.xy*2.; // translate to the center + uv += vec2(-1.0, -1.0); + #include + vec3 color1; + // generate some radar pings + float fadeDistance = 0.8; + float resetTimeSec = 3.0; + float radarPingSpeed = 0.2; + vec2 greenPing = vec2(0.0, 0.0); + color1 += RadarPing(uv, greenPing, 0.08, 0.00025, resetTimeSec, + radarPingSpeed, fadeDistance, elapsedTime * speed * .0006) * vec3(color.rgb); + // color += RadarPing(uv, greenPing, 0.08, 0.00025, resetTimeSec, + // radarPingSpeed, fadeDistance, elapsedTime * speed * .0006 + 1.) * uColor; + color1 += RadarPing(uv, greenPing, 0.08, 0.00025, resetTimeSec, + radarPingSpeed, fadeDistance, elapsedTime * speed * .0006 + 2.) * vec3(color.rgb); + //return the new color + if(length(color1)<0.001){ + discard; + }else{ + gl_FragColor = vec4(color1,clamp(length(color1),0.0,1.0)); + } + #include + #include +}`),Object.assign(this.uniforms,pt.clone(co)),this.setValues(t)}}const b_=`#define GLSLIFY 1 +#include + +attribute vec3 instancedPosition; +attribute float instancedRandomFactor; + +uniform float height; +uniform float size; +uniform float elapsedTime; +uniform bool animationEffect; +uniform float animationEffectPeriod; + +varying vec2 vPosition; +varying float vEffectRatio; + +#include +#include +#include +#include +#include +void main() { + + #include + vPosition = position.xy; + vec3 transformed = vec3(position); + + #include + + transformed *= size; + + #include + + gl_Position = projectionMatrix * modelViewMatrix * instanceMatrix * vec4(transformed, 1.0); + #include +}`,Pw=pt.merge([{color:{value:[1,1,0,1]},size:{value:10},duration:{value:2e3},trail:{value:.5},center:{value:.1},radius:{value:.5},radiusDiff:{value:.08},isEmissive:{value:!1}}]);class Rw extends sn{constructor(t){super(t),d(this,"type","InstancedBubbleMaterial"),d(this,"isInstancedBubbleMaterial",!0),this.depthTest=!1,this.depthWrite=!1,t.type=="Breath"?(this.vertexShader=`#define GLSLIFY 1 +#include + +attribute vec3 instancedPosition; +attribute float instancedRandomFactor; + +uniform float height; +uniform float size; +uniform float elapsedTime; +uniform bool animationEffect; +uniform float animationEffectPeriod; + +varying vec2 vPosition; +varying float vEffectRatio; + +#include +#include +#include +#include +#include +void main() { + + #include + vPosition = position.xy; + vec3 transformed = vec3(position); + + #include + + transformed *= size; + + #include + + if (animationEffect) { + vEffectRatio = mod(elapsedTime, animationEffectPeriod) / animationEffectPeriod; + if (animationPeriodOffset) { + vEffectRatio += instancedRandomFactor; + } + vEffectRatio = mod(vEffectRatio, 1.0); + transformed *= vEffectRatio; + } else { + vEffectRatio = 1.0; + } + gl_Position = projectionMatrix * modelViewMatrix * instanceMatrix * vec4(transformed, 1.0); + #include +}`,this.fragmentShader=`#define GLSLIFY 1 +#include + +uniform vec4 color; +uniform float opacity; +uniform bool animationEffect; + +varying float vEffectRatio; +varying vec2 vPosition; + +#include +#include +void main() { + float d = distance(vPosition, vec2(0, 0)); + if (d > 0.5) { + discard; + } + + gl_FragColor = color; + + gl_FragColor.a *= opacity; + if (animationEffect) { + if (vEffectRatio > 0.7) { + gl_FragColor.a *= (1.0 - vEffectRatio) / 0.3; + } + } + + #include + #include + #include + #include + +}`):t.type=="Wave"?(this.vertexShader=b_,this.fragmentShader=`#define GLSLIFY 1 +#include + +uniform vec4 color; +uniform float opacity; +uniform bool animationEffect; +uniform float elapsedTime; +uniform float duration; +uniform float trail; +uniform float radiusDiff; +uniform float center; +uniform float radius; + +varying float vEffectRatio; +varying vec2 vPosition; + +#include +#include +void main() { + float d = distance(vPosition, vec2(0, 0)); + if (d > radius) { + discard; + } + vec4 vColor = color; + + float alpha = sin((radiusDiff - d) / radiusDiff * trail * 2.0 * 3.14 + elapsedTime / duration * 10.); + // 中心点 + if (d <= center){ + if (d > 0.9 * center && d <= center) { + if (alpha >= 0.5) { + vColor.a = 1.0; + } else { + vColor.a = 1.0 - smoothstep(center - 0.0001, center, d); + } + } + } + else { + if (alpha >= 0.6) { + vColor.a = 1.0 - d / radius; + if (alpha >= 0.5 && alpha <= 0.6) { + vColor.a *= smoothstep(0.0, 0.1, alpha - 0.5); + } + + if (d >= 0.8 * radiusDiff && d <= radiusDiff) { + vColor.a *= 1.0 - smoothstep(0.9, 1.0, d / radiusDiff); + } + + } + else { + vColor.a = 0.0; + } + } + gl_FragColor = vColor; + #include + #include + #include + #include + +}`):(this.vertexShader=b_,this.fragmentShader=`#define GLSLIFY 1 +#include + +uniform vec4 color; +uniform float opacity; +uniform bool animationEffect; +uniform float elapsedTime; +uniform float duration; +uniform float trail; +uniform float center; +uniform float radius; + +varying float vEffectRatio; +varying vec2 vPosition; + +#include +#include +void main() { + float d = distance(vPosition, vec2(0, 0)); + if (d > 0.5) { + discard; + } + vec4 vColor = color; + float range = mod(elapsedTime, (duration + trail)); + float percent = 0.0; + if (range <= duration) { + percent = range / duration * 2.0; + } else { + percent = 1.0; + } + float r = radius * percent; + + // 中心点 + if (d <= center){ + if(d > 0.99 * center && d <= center) { + vColor.a = 1.0 - smoothstep(0.99 * center, center, d); + } + } + else { + if (d < r) { + vColor.a = smoothstep(0.1, 0.9, pow(d / r, 2.0) * 0.9); + // 边缘抗锯齿 + if (d >= 0.99 * r && d <= r) { + vColor.a *= 1.0 - smoothstep(0.99, 1.0, d / r); + } + // 拖尾渐隐 + if (range > duration) { + vColor.a *= 1.0 - (range - duration) / trail; + } + } + else { + vColor.a = 0.0; + } + + } + gl_FragColor = vColor; + #include + #include + #include + #include + +}`),Object.assign(this.uniforms,pt.clone(Pw)),jt(this,["duration","trail","isEmissive"]),this.setValues(t)}}const uo=new M;new rt;const M_=new rt;new rt;class Dw extends rh{constructor(t){super(t),d(this,"_shapeType","cube"),d(this,"fillNoLine",(e,i,n,r,a)=>{for(let o=0,l=e.length;o{const h=i.length/3;let c,u,p,m,f,g,_,v;for(let x=0,y=e.length;x{const n=[];for(let r=0,a=e.length;r + +attribute vec3 instancedPosition; +attribute float instancedRandomFactor; +attribute float isLine; +attribute float isLineStart; +attribute float lineSide; +attribute vec3 adjacentPoint; +// attribute mat4 instanceMatrix; + +uniform bool isCesium; + +uniform float height; +uniform vec3 size3; +uniform float time; +uniform float lineWidth; +varying float vIsLine; + +#include +#include +#include +#include + +#define MVT_KEEP_PROJECTION_POSITION + +vec3 transformPosition(vec3 p) { + vec3 transformed = vec3(p); + + #include + + transformed *= size3; + transformed.z += height; + + #include + + return transformed; +} +void main() { + + #include + vec4 mvp_projectPosition; + if (isLine == 1.0) { + vIsLine = 1.0; + mat4 m = projectionMatrix * modelViewMatrix * instanceMatrix; + vec4 p1 = m * vec4(transformPosition(position), 1.0); + vec4 p2 = m * vec4(transformPosition(adjacentPoint), 1.0); + mvp_projectPosition = vec4(p1); + p1 /= p1.w; + p2 /= p2.w; + vec2 dir; + if (isLineStart == 1.0) { + dir = normalize(p2.xy - p1.xy); + } else { + dir = normalize(p1.xy - p2.xy); + } + vec2 _normal = vec2(-dir.y, dir.x); + // multiply by 2 and then divide by 2 + vec2 offset = _normal * lineSide / resolution * lineWidth; + gl_Position = p1; + gl_Position.xy += offset; + } else { + vIsLine = 0.0; + vec3 transformed = transformPosition(position); + // mat4 tm = mat4( + // 1,0,0,0, + // 0,1,0,0, + // 0,0,1,0, + // instanceMatrix[3][0],4826138.4,0,1 + // ); + gl_Position = projectionMatrix * modelViewMatrix * instanceMatrix * + vec4(transformed, 1.0); + // gl_Position = projectionMatrix * viewMatrix * + // vec4(transformed.x + 12957564.9, transformed.y + 4826138.4, transformed.z + 0.0, 1.0); + // vTest.x = instanceMatrix[1][1]; + // gl_Position = projectionMatrix * viewMatrix * + // vec4(instancedPosition + transformed, 1.0); + mvp_projectPosition = gl_Position; + } +}`,this.fragmentShader=`#define GLSLIFY 1 +#include + +uniform vec4 color; +uniform vec4 lineColor; +uniform float opacity; + +varying float vIsLine; + +#include + +void main() { + if (vIsLine == 1.0) { + gl_FragColor = lineColor; + } + else { + gl_FragColor = color; + // test + // gl_FragColor.r = vTest.x; + // gl_FragColor.g = vTest.y; + // gl_FragColor.b = vTest.z; + // gl_FragColor.a = 1.0; + // test end + } + gl_FragColor.a *= opacity; + #include +}`,Object.assign(this.uniforms,pt.clone(Lw)),jt(this,["isEmissive","lineWidth"]),Bs(this,["lineColor"]),this.setValues(t)}}class Ow extends Pt{constructor(t){super(t),this.parameters=t}setData(t){const{vertexSizes:e,vertexColors:i,vertexOffsets:n}=this.parameters,{aPositions:r,aObjectIndices:a,aMapIndexs:o,aColors:l,aSizes:h,aOffsets:c}=t;this.setAttribute("position",new et(r,3)),this.setAttribute("objectIndex",new et(a,1)),this.setAttribute("aMapIndex",new et(o,1)),i&&this.setAttribute("aColor",new et(l,4)),e&&this.setAttribute("aSize",new et(h,1)),n&&this.setAttribute("aOffset",new et(c,2))}}const zw=new Ie,kw=pt.merge([ot.fog,ki,{emissive:{value:[0,0,0]},isEmissive:{value:!1},color:{value:[0,1,1,1]},size:{value:30},uOffset:{value:[0,0]},ulength:{value:0},useCanvasMap:{value:!1},vertexColors:{value:!1},vertexSizes:{value:!1},vertexOffsets:{value:!1},uShapeType:{value:2},opacity:{value:1},map:{value:null},useMap:{value:!1}}]);class Nw extends Be{constructor(t){super(),this.type="IconPointMaterial",this.vertexShader=`#define GLSLIFY 1 +#include + +uniform float size; +uniform float pixelRatio; +uniform vec2 resolution; + +#ifdef MVT_USE_VERTEX_SIZE + attribute float aSize; + varying float vSize; +#endif + +#ifdef MVT_USE_VERTEX_OFFSET + attribute vec2 aOffset; +#else + uniform vec2 uOffset; +#endif + +#ifdef MVT_USE_VERTEX_COLOR + attribute vec4 aColor; + varying vec4 vColor; +#endif + +#ifdef MVT_USE_VERTEX_ICON + attribute float aMapIndex; + varying float vMapIndex; +#endif + +#include +#include +#include + +void main() { + #include + + vec4 worldPosition = modelMatrix * vec4(position, 1.0); + float pixelSize = getPixelSize(worldPosition.xyz); + + #ifdef MVT_USE_VERTEX_OFFSET + vec2 offset = aOffset * 2. * pixelRatio * pixelSize; + #else + vec2 offset = uOffset * 2. * pixelRatio * pixelSize; + #endif + gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0); + gl_Position.xy = gl_Position.xy - offset; + + #ifdef MVT_USE_VERTEX_SIZE + vSize = aSize * pixelRatio; + gl_PointSize = vSize; + #else + gl_PointSize = size * pixelRatio; + #endif + + #ifdef MVT_USE_VERTEX_COLOR + vColor = aColor; + #endif + + #ifdef MVT_USE_VERTEX_ICON + vMapIndex = aMapIndex; + #endif + + #include +}`,this.fragmentShader=`#define GLSLIFY 1 +#include + +#ifdef MVT_USE_VERTEX_COLOR + varying vec4 vColor; +#endif +uniform vec4 color; +uniform float uShapeType; +uniform float opacity; + +#ifdef MVT_USE_VERTEX_SIZE + varying float vSize; +#else + uniform float size; +#endif + +#ifdef MVT_USE_VERTEX_ICON + varying float vMapIndex; + uniform float ulength; +#endif +uniform bool useMap; +uniform bool useCanvasMap; +uniform sampler2D map; + +#include +#include +#include + +void main() { + + #ifdef MVT_USE_VERTEX_COLOR + gl_FragColor = vColor; + #else + gl_FragColor = color; + #endif + + if (uShapeType == 2.) { + float d = distance(gl_PointCoord, vec2(0.5, 0.5)); + #ifdef MVT_USE_VERTEX_SIZE + float alpha = smoothstep(0.5 + 0.5 / vSize, 0.5 - 1.0 / vSize, d); + #else + float alpha = smoothstep(0.5 + 0.5 / size, 0.5 - 1.0 / size, d); + #endif + + if (alpha <= 0.) { + discard; + } else { + gl_FragColor.a *= alpha; + } + } + + if (useMap) { + vec4 tColor = texture2D(map, vec2(gl_PointCoord.x, 1.0 - gl_PointCoord.y)); + // gl_FragColor.rgb = tColor.rgb * tColor.a + gl_FragColor.rgb * (1.0 - tColor.a); + // gl_FragColor.a += tColor.a; + + gl_FragColor = mix(gl_FragColor, tColor, tColor.a); + // gl_FragColor.rgb = mix(gl_FragColor.rgb, tColor.rgb, tColor.a); + // gl_FragColor.a += tColor.a; + // gl_FragColor = tColor; + } + + #ifdef MVT_USE_VERTEX_ICON + if(useCanvasMap) { + vec4 tColor = texture2D(map, vec2(vMapIndex / ulength + 1.0 / ulength * gl_PointCoord.x, 1.0 - gl_PointCoord.y)); + gl_FragColor = mix(gl_FragColor, tColor, tColor.a); + } + #endif + + gl_FragColor.a *= opacity; + if (gl_FragColor.a <= 0.) { + discard; + } + + #include + #include + #include +}`,this.isIconPointMaterial=!0,this.transparent=!0,Object.assign(this.uniforms,pt.clone(kw)),ns(this),jt(this,["size","uShapeType","opacity","emissive","isEmissive"]),Bs(this,["color"]),_i(this,[["offset","uOffset"]]),Qe(this,[["vertexColors","MVT_USE_VERTEX_COLOR"],["vertexSizes","MVT_USE_VERTEX_SIZE"],["vertexIcons","MVT_USE_VERTEX_ICON"],["vertexOffsets","MVT_USE_VERTEX_OFFSET"]]),Object.defineProperties(this,{mapSrc:{get:function(){return this.uniforms.map.value},set:function(e){const i=this.mapSrc,n=this.userData[this.urlCacheKey],r=this;if(n!==e){if(i&&i.dispose(),!e)return this.uniforms.map.value=null,this.uniforms.useMap.value=!1,void delete this.userData[this.urlCacheKey];zw.load(e,function(a){a.wrapS=a.wrapT=ue,r.uniforms.map.value=a,r.userData[r.urlCacheKey]=e,r.uniforms.useMap.value=!0,r.uniforms.useCanvasMap.value=!1})}}},mapTexture:{get:function(){return this.uniforms.map.value},set:function(e){if(!e)return this.uniforms.map.value=null,void(this.uniforms.useCanvasMap.value=!1);e.wrapS=e.wrapT=ue,this.uniforms.map.value=e,this.uniforms.useMap.value=!1,this.uniforms.useCanvasMap.value=!0,delete this.userData[this.urlCacheKey]}}}),this.setValues(t)}dispose(){this.uniforms.map.value&&this.uniforms.map.value.dispose(),super.dispose()}}class po extends __{constructor(t){super(t),d(this,"canvas"),d(this,"ctx"),d(this,"oldMapTextureRes"),d(this,"geometry"),d(this,"material"),d(this,"color"),d(this,"vertexColors"),d(this,"size"),d(this,"vertexSizes"),d(this,"mapSrc"),d(this,"vertexIcons"),d(this,"opacity"),d(this,"getTextureAndHash",(e,i,n,r)=>{const a=new Map;if(!r&&this.oldMapTextureRes)return this.oldMapTextureRes;if(!e[0]||!e[0][i])return{texture:this.texture,iconUrlHash:a};const o=this;let l=0;for(let h=0;h{let u=new Image;u.setAttribute("crossOrigin","Anonymous"),u.onload=function(){o.ctx.drawImage(u,c*n,0,n,n),o.texture.needsUpdate=!0},u.src=h[0]}),this.texture.dispose(),this.texture=new Le(this.canvas),this.oldMapTextureRes={texture:this.texture,iconUrlHash:a},{texture:this.texture,iconUrlHash:a}}),this.parameters=t,this.canvas=document.createElement("canvas"),this.ctx=this.canvas.getContext("2d"),this.texture=new Le(this.canvas),this.defineMaterialProxyProperties(["color","size","offset","uShapeType","opacity","vertexColors","vertexSizes","vertexOffsets","vertexIcons","mapSrc","mapTexture"])}initObject(){this.geometry=new Ow(this.parameters),this.material=new Nw(this.parameters),this.material.setCommonUniforms(this.engine.rendering.uniforms)}collisionTest(t){let e=0;return e=this.parameters.vertexSizes&&t.size?t.size:this.size,{width:e,height:e}}setData(){const t=this.dataSource.data,{vertexIcons:e,vertexColors:i,vertexSizes:n,vertexOffsets:r,inconPropName:a="icon",size:o=30}=this.parameters;let l=[];l=this._enableCollision&&this._collisionData?this._collisionData:this.dataSource.userData;const h=[],c=[];let u="",p={};const m=[],f=[],g=[],_=[];if(e){const v=this.getTextureAndHash(l,a,o,!0);u=v.texture,p=v.iconUrlHash,this.material.mapTexture=u,this.material.uniforms.ulength.value=p.size}for(let v=0;v + +attribute float pIndex; +attribute float aMapIndex; + +uniform float pixelRatio; +uniform float width; +uniform float height; +uniform float uScale; +uniform float ulength; +uniform vec2 resolution; +uniform vec2 offset; +uniform bool uFlat; +uniform bool keepSize; + +varying vec2 vUv; + +#include +#include +#include + +void main() { + #include + + vec4 worldPosition = modelMatrix * vec4(position, 1.0); + float pixelSize = getPixelSize(worldPosition.xyz); + if (uFlat) { + float hw = width * 0.5; + float hh = height * 0.5; + if (keepSize) { + hw *= pixelSize; + hh *= pixelSize; + } + if (pIndex == 1.0) { + hw = -hw; + } else if (pIndex == 2.0) { + + } else if (pIndex == 3.0) { + hh = -hh; + } else { + hw = -hw; + hh = -hh; + } + gl_Position = projectionMatrix * modelViewMatrix * vec4(position.x + hw, position.y + hh, position.z, 1.0); + } + else { + gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0); + float w = gl_Position.w; + gl_Position /= w; + + float hw = width / resolution.x * uScale; + float hh = height / resolution.y * uScale; + vec2 o = offset; + if (!keepSize) { + hw /= pixelSize; + hh /= pixelSize; + o /= pixelSize; + } + + gl_Position.x += o.x * 2. / resolution.x; + gl_Position.y -= o.y * 2. / resolution.y; + + if (pIndex == 1.0) { + gl_Position.x -= hw; + gl_Position.y += hh; + } else if (pIndex == 2.0) { + gl_Position.x += hw; + gl_Position.y += hh; + } else if (pIndex == 3.0) { + gl_Position.x += hw; + gl_Position.y -= hh; + } else { + gl_Position.x -= hw; + gl_Position.y -= hh; + } + + gl_Position *= w; + } + + vUv = uv; + + #include +}`,this.fragmentShader=`#define GLSLIFY 1 +#include + +uniform float opacity; + +uniform bool useMap; +uniform bool useCanvasMap; +uniform sampler2D map; +uniform float width; +uniform float height; + +varying vec2 vUv; + +#include +#include +#include + +void main() { + + gl_FragColor = texture2D(map, vec2(vUv.x, vUv.y)); + // gl_FragColor = mix(gl_FragColor, vec4(1., 0., 0., 1.), 0.5); + + if (gl_FragColor.a <= 0.) { + discard; + } + gl_FragColor.a *= opacity; + + #include + #include + #include + #include + #include +}`,this.isIconMaterial=!0,this.transparent=!0,Object.assign(this.uniforms,pt.clone(Fw)),Oc(this),ns(this),jt(this,["width","height","offset","opacity","emissive","isEmissive"]),_i(this,[["scale","uScale"],["flat","uFlat"]]),Object.defineProperties(this,{mapSrc:{get:function(){return this.uniforms.map.value},set:function(e){const i=this.mapSrc,n=this.userData[this.urlCacheKey],r=this;if(n!==e){if(i&&i.dispose(),!e)return this.uniforms.map.value=null,this.uniforms.useMap.value=!1,void delete this.userData[this.urlCacheKey];Uw.load(e,function(a){a.wrapS=a.wrapT=ue,a.encoding=3001,r.uniforms.map.value=a,r.userData[r.urlCacheKey]=e,r.uniforms.useMap.value=!0,r.uniforms.useCanvasMap.value=!1})}}},mapTexture:{get:function(){return this.uniforms.map.value},set:function(e){if(!e)return this.uniforms.map.value=null,void(this.uniforms.useCanvasMap.value=!1);e.wrapS=e.wrapT=ue,e.encoding=3001,this.uniforms.map.value=e,this.uniforms.useMap.value=!1,this.uniforms.useCanvasMap.value=!0,delete this.userData[this.urlCacheKey]}}}),this.setValues(t)}dispose(){this.uniforms.map.value&&this.uniforms.map.value.dispose(),super.dispose()}}class Vw extends Pt{constructor(t){super(t),this.parameters=t}setData(t){const{aPositions:e,aObjectIndices:i,aUvs:n,pIndices:r,indices:a}=t;this.setAttribute("position",new et(e,3)),this.setAttribute("pIndex",new et(r,1)),this.setAttribute("objectIndex",new et(i,1)),this.setAttribute("uv",new et(n,2)),this.setIndex(a)}}const Vu=new M,rn=new Lt,oh=new rt;class w_ extends as{constructor(t){super(t),d(this,"isEventEntitySupported",!0),d(this,"_padding"),d(this,"oldMapTextureRes",new Map),d(this,"texture"),d(this,"geometry"),d(this,"material"),d(this,"canvas"),d(this,"ctx"),d(this,"iconUrlHash",new Map),d(this,"getTextureAndHash",(i,n,r,a,o)=>{const l=this,h=this.engine.rendering.pixelRatio,c=this.iconUrlHash;if(!o&&this.oldMapTextureRes)return this.oldMapTextureRes;if(!i[0]||!i[0][n])return{texture:this.texture,iconUrlHash:c};let u=c.size,p=c.size,m=new Map;for(let x=0;x{let b=new Image;b.setAttribute("crossOrigin","Anonymous"),b.onload=function(){l.ctx.save(),l.ctx.scale(h,h),l.ctx.drawImage(b,0,0,b.width,b.height,x[1]*r+l.padding[0]*(x[1]+.5),l.padding[1]/2,r,a),l.ctx.restore(),l.texture.dispose(),l.texture=new Le(l.canvas),l.oldMapTextureRes={texture:l.texture,iconUrlHash:c},l.material.mapTexture=l.texture},b.src=x[0]}),this.texture.dispose(),this.texture=new Le(this.canvas),this.oldMapTextureRes={texture:this.texture,iconUrlHash:c},{texture:this.texture,iconUrlHash:c}}),this.parameters=t,this._padding=this.parameters.padding!==void 0?this.parameters.padding:[2,2];const e=this.canvas=document.createElement("canvas");e.width=e.height=1,this.ctx=e.getContext("2d"),this.texture=new Le(e),this.defineMaterialProxyProperties(["width","height","offset","map","opacity","flat","keepSize"])}initObject(){let{vertexIcons:t,...e}=this.parameters;this.geometry=new Vw(this.parameters),this.material=new Bw(e),this.material.setCommonUniforms(this.engine.rendering.uniforms)}getDefaultParams(){return{width:12,height:12}}collisionTest(t){return{width:this.width,height:this.height}}setData(){const{vertexIcons:t,inconPropName:e="icon",width:i,height:n}=this.parameters;let r=[];r=this._enableCollision&&this._collisionData?this._collisionData:this.dataSource.userData;const a=[],o=[],l=[],h=[],c=[];let u="",p={};if(t){const m=this.getTextureAndHash(r,e,i,n,!0);u=m.texture,p=m.iconUrlHash||{},this.material.mapTexture=u,this.material.uniforms.ulength.value=p.size;for(let f=0;f=c&&g<=u&&v>=u){Vu.set(b[w],b[w+1],b[w+2]),Vu.applyMatrix4(this.matrixWorld);const L={instanceId:w/12,object:this,distance:Vu.distanceTo(o.position)};e.push(L)}}onDispose(){this.texture&&this.texture.dispose()}set padding(t){this._padding=t}get padding(){return this._padding}}const Ti=new Lt,ms=new rt,da=new j;class mo extends Sn{constructor(t){super(t),d(this,"isDomPoints",!0),d(this,"frustumCulled",!1),d(this,"onBeforeScenePrepareRenderHook",(e,i,n)=>{this.container=e.map.container;let r=e.renderer;const a=this.points,o=this.nodes;r.getSize(da),ms.multiplyMatrices(n.matrixWorldInverse,this.matrixWorld),ms.multiplyMatrices(n.projectionMatrix,ms);for(let l=0;l{t.remove()})}set visible(t){let e=t?"":"hidden";this.nodes&&this.nodes.length&&this.nodes.forEach(i=>{i.style.visibility=e})}get visible(){return!this.nodes||!this.nodes.length||this.nodes[0].style.visibility!=="hidden"}}const Hw=new Ie,jw=pt.merge([ot.fog,ki,Ic,{emissive:{value:[0,0,0]},isEmissive:{value:!1},width:{value:12},height:{value:12},offset:{value:[0,0]},ulength:{value:1},useCanvasMap:{value:!1},vertexIcons:{value:!1},opacity:{value:1},map:{value:null},useMap:{value:!1},uFlat:{value:!1},keepSize:{value:!0}}]);class Gw extends Be{constructor(t){super(),this.type="LabelMaterial",this.vertexShader=`#define GLSLIFY 1 +#include + +attribute float pIndex; +attribute float aMapIndex; + +uniform float pixelRatio; +uniform float width; +uniform float height; +uniform float ulength; +uniform vec2 resolution; +uniform vec2 offset; +uniform bool uFlat; +uniform bool keepSize; + +varying vec2 vUv; + +#include +#include +#include + +void main() { + #include + + vec4 worldPosition = modelMatrix * vec4(position, 1.0); + float pixelSize = getPixelSize(worldPosition.xyz); + if (uFlat) { + float hw = width * 0.5; + float hh = height * 0.5; + vec2 o = offset; + if (keepSize) { + hw *= pixelSize; + hh *= pixelSize; + o *= pixelSize; + } + if (pIndex == 1.0) { + hw = -hw; + } else if (pIndex == 2.0) { + + } else if (pIndex == 3.0) { + hh = -hh; + } else { + hw = -hw; + hh = -hh; + } + gl_Position = projectionMatrix * modelViewMatrix * vec4(position.x + hw, position.y + hh, position.z, 1.0); + } + else { + gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0); + float w = gl_Position.w; + gl_Position /= w; + + float hw = width / resolution.x; + float hh = height / resolution.y; + vec2 o = offset; + if (!keepSize) { + hw /= pixelSize; + hh /= pixelSize; + o /= pixelSize; + } + + gl_Position.x += o.x * 2. / resolution.x; + gl_Position.y -= o.y * 2. / resolution.y; + + if (pIndex == 1.0) { + gl_Position.x -= hw; + gl_Position.y += hh; + } else if (pIndex == 2.0) { + gl_Position.x += hw; + gl_Position.y += hh; + } else if (pIndex == 3.0) { + gl_Position.x += hw; + gl_Position.y -= hh; + } else { + gl_Position.x -= hw; + gl_Position.y -= hh; + } + + gl_Position *= w; + } + + vUv = uv; + + #include +}`,this.fragmentShader=`#define GLSLIFY 1 +#include + +uniform float opacity; + +uniform bool useMap; +uniform bool useCanvasMap; +uniform sampler2D map; +uniform float width; +uniform float height; + +varying vec2 vUv; + +#include +#include +#include + +void main() { + + gl_FragColor = texture2D(map, vec2(vUv.x, 1. - vUv.y)); + // gl_FragColor = mix(gl_FragColor, vec4(1., 0., 0., 1.), 0.5); + + if (gl_FragColor.a <= 0.) { + discard; + } + gl_FragColor.a *= opacity; + + #include + #include + #include +}`,this.isLabelMaterial=!0,this.transparent=!0,Object.assign(this.uniforms,pt.clone(jw)),Oc(this),ns(this),_i(this,[["flat","uFlat"]]),jt(this,["width","height","offset","opacity","emissive","isEmissive"]),Object.defineProperties(this,{mapSrc:{get:function(){return this.uniforms.map.value},set:function(e){const i=this.mapSrc,n=this.userData[this.urlCacheKey],r=this;if(n!==e){if(i&&i.dispose(),!e)return this.uniforms.map.value=null,this.uniforms.useMap.value=!1,void delete this.userData[this.urlCacheKey];Hw.load(e,function(a){a.wrapS=a.wrapT=ue,a.encoding=3001,r.uniforms.map.value=a,r.userData[r.urlCacheKey]=e,r.uniforms.useMap.value=!0,r.uniforms.useCanvasMap.value=!1})}}},mapTexture:{get:function(){return this.uniforms.map.value},set:function(e){if(!e)return this.uniforms.map.value=null,void(this.uniforms.useCanvasMap.value=!1);e.wrapS=e.wrapT=ue,e.encoding=3001,this.uniforms.map.value=e,this.uniforms.useMap.value=!1,this.uniforms.useCanvasMap.value=!0,delete this.userData[this.urlCacheKey]}}}),this.setValues(t)}dispose(){this.uniforms.map.value&&this.uniforms.map.value.dispose(),super.dispose()}}class Ww extends Pt{constructor(t){super(t),this.parameters=t}setData(t){const{aPositions:e,aObjectIndices:i,aUvs:n,pIndices:r,indices:a}=t;this.setAttribute("position",new et(e,3)),this.setAttribute("pIndex",new et(r,1)),this.setAttribute("objectIndex",new et(i,1)),this.setAttribute("uv",new et(n,2)),this.setIndex(a)}}const Hu=new M,an=new Lt,lh=new rt;class S_ extends as{constructor(t){super(t),d(this,"isEventEntitySupported",!0),d(this,"geometry"),d(this,"material"),d(this,"canvas"),d(this,"ctx"),d(this,"texture"),d(this,"iconUrlHash",new Map),d(this,"labelHash",new Map),d(this,"boxHash",new Map),d(this,"gap",[2,2]),d(this,"_padding"),d(this,"_fillStyle"),d(this,"oldMapTextureRes",{}),d(this,"getTextureAndHash",async(i,n,r,a,o)=>{const l=this.ctx,h=this.labelHash,c=this.iconUrlHash;if(!o&&this.oldMapTextureRes)return this.oldMapTextureRes;if(!i[0]||!i[0][a])return{texture:this.texture,labelHash:h};let u=h.size,p=h.size,m=new Map;for(let g=0;gtypeof g[1]=="string").map(([g,_])=>new Promise((v,x)=>{this.url2canvas(g,y=>{c.set(g,y),v(g)})}));return await Promise.all(f).then(g=>{if(!this.canvas)return this.oldMapTextureRes;for(let[y,b]of h){const S=JSON.parse(y).icon,w=JSON.parse(y).text,C=c.get(S);if(typeof C=="string")continue;const L=this.boxes.findIndex(B=>B.key===y);if(L>0){const B=this.boxes.splice(L,1);this.boxes.unshift(B[0]);continue}const T=C.width,E=C.height,I=T+this.gap[0],z=E+this.gap[1];this.boxes.unshift({w:I,h:z,width:T,height:E,key:y,icon:C,text:w}),this.boxes.length>this.boxSize&&this.boxes.splice(this.boxSize)}const _=nf(this.boxes);for(let y=0;y=e||n+a[0]+a[2]>=i?n-1:this.getFontSize(t,e,i,n+1)}getEntityByIndex(t){const e=this.dataSource,i={index:t,value:e.getOriginData(t),itemIndex:e.getOriginDataIndex(t),pairs:{}},n=e.data;for(const r of Object.keys(n))i.pairs[r]=n[r][t];return i}raycast(t,e){if(this.flat)return;const i=this.geometry,n=i.getAttribute("position");if(!n||!n.array||!n.array.length===0)return;const r=i.getAttribute("offset");let a=[];r&&(a=r.array);const o=t.camera,l=t.mouse,h=this.material.uniforms.resolution.value,c=l.x,u=l.y,p=this.width/h[0],m=this.height/h[0];let f=0,g=0,_=0,v=0,x=0,y=0;lh.multiplyMatrices(o.projectionMatrix,o.matrixWorldInverse),lh.multiplyMatrices(lh,this.matrixWorld);const b=n.array;let S=0;for(let w=0,C=b.length-11;w=c&&g<=u&&v>=u){Hu.set(b[w],b[w+1],b[w+2]),Hu.applyMatrix4(this.matrixWorld);const L={instanceId:w/12,object:this,distance:Hu.distanceTo(o.position)};e.push(L)}}set padding(t){t.length===2?this._padding=[t[0],t[1],t[0],t[1]]:t.length===3?this._padding=[t[0],t[1],t[2],t[1]]:t.length>=4&&(this._padding=[t[0],t[1],t[2],t[3]])}get padding(){return this._padding}onDispose(){this.texture&&this.texture.dispose(),this.canvas&&(this.canvas=null),this.iconUrlHash.clear(),this.labelHash.clear(),this.boxHash.clear()}}function ju(s,t,e,i,n,r){if(n-i<=e)return;const a=i+n>>1;T_(s,t,a,i,n,r%2),ju(s,t,e,i,a-1,r+1),ju(s,t,e,a+1,n,r+1)}function T_(s,t,e,i,n,r){for(;n>i;){if(n-i>600){const h=n-i+1,c=e-i+1,u=Math.log(h),p=.5*Math.exp(2*u/3),m=.5*Math.sqrt(u*p*(h-p)/h)*(c-h/2<0?-1:1);T_(s,t,e,Math.max(i,Math.floor(e-c*p/h+m)),Math.min(n,Math.floor(e+(h-c)*p/h+m)),r)}const a=t[2*e+r];let o=i,l=n;for(fo(s,t,i,e),t[2*n+r]>a&&fo(s,t,i,n);oa;)l--}t[2*i+r]===a?fo(s,t,i,l):(l++,fo(s,t,l,n)),l<=e&&(i=l+1),e<=l&&(n=l-1)}}function fo(s,t,e,i){Gu(s,e,i),Gu(t,2*e,2*i),Gu(t,2*e+1,2*i+1)}function Gu(s,t,e){const i=s[t];s[t]=s[e],s[e]=i}function C_(s,t,e,i){const n=s-e,r=t-i;return n*n+r*r}const Xw=s=>s[0],qw=s=>s[1];class E_{constructor(t,e=Xw,i=qw,n=64,r=Float64Array){this.nodeSize=n,this.points=t;const a=t.length<65536?Uint16Array:Uint32Array,o=this.ids=new a(t.length),l=this.coords=new r(2*t.length);for(let h=0;h=o&&f<=h&&g>=l&&g<=c&&m.push(r[S]);continue}const y=Math.floor((x+v)/2);f=a[2*y],g=a[2*y+1],f>=o&&f<=h&&g>=l&&g<=c&&m.push(r[y]);const b=(_+1)%2;(_===0?o<=f:l<=g)&&(p.push(x),p.push(y-1),p.push(b)),(_===0?h>=f:c>=g)&&(p.push(y+1),p.push(v),p.push(b))}return m}(this.ids,this.coords,t,e,i,n,this.nodeSize)}within(t,e,i){return function(n,r,a,o,l,h){const c=[0,n.length-1,0],u=[],p=l*l;for(;c.length;){const m=c.pop(),f=c.pop(),g=c.pop();if(f-g<=h){for(let b=g;b<=f;b++)C_(r[2*b],r[2*b+1],a,o)<=p&&u.push(n[b]);continue}const _=Math.floor((g+f)/2),v=r[2*_],x=r[2*_+1];C_(v,x,a,o)<=p&&u.push(n[_]);const y=(m+1)%2;(m===0?a-l<=v:o-l<=x)&&(c.push(g),c.push(_-1),c.push(y)),(m===0?a+l>=v:o+l>=x)&&(c.push(_+1),c.push(f),c.push(y))}return u}(this.ids,this.coords,t,e,i,this.nodeSize)}}const Yw={minZoom:0,maxZoom:16,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:s=>s};class Zw{constructor(t){this.options=go(Object.create(Yw),t),this.trees=new Array(this.options.maxZoom+1)}load(t){const{log:e,minZoom:i,maxZoom:n,nodeSize:r}=this.options;e&&console.time("total time");const a=`prepare ${t.length} points`;e&&console.time(a),this.points=t;let o=[];for(let l=0;l=i;l--){const h=+Date.now();o=this._cluster(o,l),this.trees[l]=new E_(o,R_,D_,r,Float32Array),e&&console.log("z%d: %d clusters in %dms",l,o.length,+Date.now()-h)}return e&&console.timeEnd("total time"),this}getClusters(t,e){let i=((t[0]+180)%360+360)%360-180;const n=Math.max(-90,Math.min(90,t[1]));let r=t[2]===180?180:((t[2]+180)%360+360)%360-180;const a=Math.max(-90,Math.min(90,t[3]));if(t[2]-t[0]>=360)i=-180,r=180;else if(i>r){const c=this.getClusters([i,n,180,a],e),u=this.getClusters([-180,n,r,a],e);return c.concat(u)}const o=this.trees[this._limitZoom(e)],l=o.range(Wu(i),Xu(a),Wu(r),Xu(n)),h=[];for(const c of l){const u=o.points[c];h.push(u.numPoints?A_(u):this.points[u.index])}return h}getChildren(t){const e=this._getOriginId(t),i=this._getOriginZoom(t),n="No cluster with the specified id.",r=this.trees[i];if(!r)throw new Error(n);const a=r.points[e];if(!a)throw new Error(n);const o=this.options.radius/(this.options.extent*Math.pow(2,i-1)),l=r.within(a.x,a.y,o),h=[];for(const c of l){const u=r.points[c];u.parentId===t&&h.push(u.numPoints?A_(u):this.points[u.index])}if(h.length===0)throw new Error(n);return h}getLeaves(t,e,i){e=e||10,i=i||0;const n=[];return this._appendLeaves(n,t,e,i,0),n}getTile(t,e,i){const n=this.trees[this._limitZoom(t)],r=Math.pow(2,t),{extent:a,radius:o}=this.options,l=o/a,h=(i-l)/r,c=(i+1+l)/r,u={features:[]};return this._addTileFeatures(n.range((e-l)/r,h,(e+1+l)/r,c),n.points,e,i,r,u),e===0&&this._addTileFeatures(n.range(1-l/r,h,1,c),n.points,r,i,r,u),e===r-1&&this._addTileFeatures(n.range(0,h,l/r,c),n.points,-1,i,r,u),u.features.length?u:null}getClusterExpansionZoom(t){let e=this._getOriginZoom(t)-1;for(;e<=this.options.maxZoom;){const i=this.getChildren(t);if(e++,i.length!==1)break;t=i[0].properties.cluster_id}return e}_appendLeaves(t,e,i,n,r){const a=this.getChildren(e);for(const o of a){const l=o.properties;if(l&&l.cluster?r+l.point_count<=n?r+=l.point_count:r=this._appendLeaves(t,l.cluster_id,i,n,r):r1?this._map(h,!0):null;const _=(l<<5)+(e+1)+this.points.length;for(const v of u){const x=c.points[v];if(x.zoom<=e)continue;x.zoom=e;const y=x.numPoints||1;m+=x.x*y,f+=x.y*y,p+=y,x.parentId=_,a&&(g||(g=this._map(h,!0)),a(g,this._map(x)))}p===1?i.push(h):(h.parentId=_,i.push(Jw(m/p,f/p,_,p,g)))}return i}_getOriginId(t){return t-this.points.length>>5}_getOriginZoom(t){return(t-this.points.length)%32}_map(t,e){if(t.numPoints)return e?go({},t.properties):t.properties;const i=this.points[t.index].properties,n=this.options.map(i);return e&&n===i?go({},n):n}}function Jw(s,t,e,i,n){return{x:s,y:t,zoom:1/0,id:e,parentId:-1,numPoints:i,properties:n}}function Kw(s,t){const[e,i]=Array.isArray(s)?s:s.geometry.coordinates;return{x:Wu(e),y:Xu(i),zoom:1/0,index:t,parentId:-1}}function A_(s){return{type:"Feature",id:s.id,properties:P_(s),geometry:{type:"Point",coordinates:[(t=s.x,360*(t-.5)),Qw(s.y)]}};var t}function P_(s){const t=s.numPoints,e=t>=1e4?`${Math.round(t/1e3)}k`:t>=1e3?Math.round(t/100)/10+"k":t;return go(go({},s.properties),{cluster:!0,cluster_id:s.id,point_count:t,point_count_abbreviated:e})}function Wu(s){return s/360+.5}function Xu(s){const t=Math.sin(s*Math.PI/180),e=.5-.25*Math.log((1+t)/(1-t))/Math.PI;return e<0?0:e>1?1:e}function Qw(s){const t=(180-360*s)*Math.PI/180;return 360*Math.atan(Math.exp(t))/Math.PI-90}function go(s,t){for(const e in t)s[e]=t[e];return s}function R_(s){return s.x}function D_(s){return s.y}class L_ extends Sn{constructor(){super(...arguments),d(this,"isEventEntitySupported",!0)}addComponent(t){if(!t.isGeoObject)return void console.warn("Only GeoObject can be added");t.__eventProxyByParent=!0,this.add(t),t.afterAddToEngine(this.engine);const e=this.getChildDataSource(t);return e&&(t.dataSource=e),this.needsUpdate=!0,t}removeComponent(t){this.remove(t),t.__eventProxyByParent=!1,t.dataSource=null,t.beforeRemoveFromEngine(this.engine),this.needsUpdate=!0}getChildDataSource(t){return this.dataSource}onBeforeScenePrepareRender(t,e,i,n){super.onBeforeScenePrepareRender&&super.onBeforeScenePrepareRender(t,e,i,n);for(const r of this.children)r.onBeforeScenePrepareRender&&r.onBeforeScenePrepareRender(t,e,i,n)}onBeforeSceneRender(t,e,i,n){super.onBeforeSceneRender&&super.onBeforeSceneRender(t,e,i,n);for(const r of this.children)r.onBeforeSceneRender&&r.onBeforeSceneRender(t,e,i,n)}setDataSource(t){super.setDataSource(t);for(const e of this.children)e.setDataSource(this.getChildDataSource(e))}setData(){for(const t of this.children)t.needsUpdate&&t.setData();this.needsUpdate=!1}dispose(){for(const t of this.children)t.dispose()}}const $w={width:30,height:30,mapSrc:"https://bj.bcebos.com/v1/yanpan-screen-attachment/resources/image/yinlianPOC/djiudian.png"},tS={collides:!1,fillStyle:"#ccc",fontSize:16,flat:!1},eS={maxZoom:18,minZoom:5,radius:50},iS=pt.merge([{emissive:{value:[0,0,0]},isEmissive:{value:!1}}]);class nS extends sn{constructor(t){super(),this.type="InstancedEffectModelMaterial",this.isInstancedEffectModelMaterial=!0,this.vertexShader=`#define GLSLIFY 1 +#include + +uniform float height; +#if defined(USE_SIZE3) +uniform vec3 size3; +#else +uniform float size; +#endif + +uniform float elapsedTime; +attribute float instancedRandomFactor; + +#if defined(VERTEX_COLOR4) + attribute vec4 color; + varying vec4 vColor; +#elif defined(VERTEX_COLOR3) + attribute vec3 color; + varying vec3 vColor; +#endif + +#include +#include +#include +#include + +#define MVT_KEEP_PROJECTION_POSITION + +#include +vec3 transformPosition(vec3 p) { + vec3 transformed = vec3(p); + + #include + + #if defined(USE_SIZE3) + transformed *= size3; + #else + transformed *= size; + #endif + transformed.z += height; + + #include + + return transformed; +} +void main() { + + #if defined(VERTEX_COLOR4) + vColor = vec4(color); + #elif defined(VERTEX_COLOR3) + vColor = vec3(color); + #endif + + #include + vec4 mvp_projectPosition; + + vec3 transformed = transformPosition(position); + + gl_Position = projectionMatrix * modelViewMatrix * instanceMatrix * + vec4(transformed, 1.0); + + mvp_projectPosition = gl_Position; + + #include +}`,this.fragmentShader=`#define GLSLIFY 1 +#include + +#if defined(VERTEX_COLOR4) + varying vec4 vColor; +#elif defined(VERTEX_COLOR3) + varying vec3 vColor; +#else + uniform vec4 color; +#endif + +uniform float opacity; +uniform vec3 emissive; + +#include +#include +#define MVT_EMISSIVE_SHADER +void main() { + + #include + + #if defined(VERTEX_COLOR4) + gl_FragColor = vColor; + #elif defined(VERTEX_COLOR3) + gl_FragColor = vec4(vColor, 1.0); + #else + gl_FragColor = color; + #endif + + gl_FragColor.a *= opacity; + vec4 out_emissive = vec4(emissive, 1.0); + #include + + #include + #include +}`,Object.assign(this.uniforms,pt.clone(iS)),this.defines={},jt(this,["emissive","isEmissive"]),this.setValues(t)}get vertexColors4(){return this.defines.VERTEX_COLOR4=!0}set vertexColors4(t){t!==this.defines.VERTEX_COLOR4&&(this.defines.VERTEX_COLOR4=!!t,this.needsUpdate=!0)}get vertexColors3(){return this.defines.VERTEX_COLOR3=!0}set vertexColors3(t){t!==this.defines.VERTEX_COLOR3&&(this.defines.VERTEX_COLOR3=!!t,this.needsUpdate=!0)}}const sS={normalize:!0,rotateToZUp:!0,keepSize:!0};class rS extends Sn{constructor(){super(...arguments),d(this,"isLine",!0),d(this,"isLineSegments",!0)}}class aS extends Pt{constructor(t){super(t),this.parameters=t}setData(t){const{vertexColors:e,vertexHeights:i}=this.parameters,{aPositions:n,indices:r,aColors:a,aHeights:o,aLengths:l}=t;this.setAttribute("position",new et(n,3)),this.setAttribute("aLength",new et(l,1)),e&&this.setAttribute("aColor",new et(a,4)),i&&this.setAttribute("aHeight",new et(o,1)),this.setIndex(r)}}const oS=pt.merge([ot.fog,ki,is,{isEmissive:{value:!1},color:{value:[1,1,0,1]},height:{value:100},vertexColors:{value:!1},vertexHeights:{value:!1},tailLength:{value:50},speed:{value:1},idle:{value:2e3}}]);class lS extends Be{constructor(t){super(),this.type="SparkMaterial",this.isSparkMaterial=!0,this.vertexShader=`#define GLSLIFY 1 +#include + +attribute float aLength; + +uniform float elapsedTime; +uniform float tailLength; +uniform float speed; +uniform float idle; + +#ifdef MVT_USE_VERTEX_COLOR + attribute vec4 aColor; +#else + uniform vec4 color; +#endif + +#ifdef MVT_USE_VERTEX_HEIGHT + attribute float aHeight; +#else + uniform float height; +#endif + +varying float vOpacity; +varying vec4 vColor; + +#include +#include + +void main() { + #include + + #ifdef MVT_USE_VERTEX_COLOR + vColor = aColor; + #else + vColor = color; + #endif + + #include + #include + + #ifdef MVT_USE_VERTEX_HEIGHT + float total = aHeight + tailLength; + #else + float total = height + tailLength; + #endif + float currentHeight = mod(elapsedTime * speed, total + idle * speed); + vOpacity = (aLength - (currentHeight - tailLength)) / tailLength; + // vOpacity = 1.; + + #include +}`,this.fragmentShader=`#define GLSLIFY 1 +#include + +varying vec4 vColor; +varying float vOpacity; + +#include +#include + +void main() { + if (vOpacity > 1.0 || vOpacity < 0.0) { + discard; + } + gl_FragColor = vec4(vColor.rgb, vColor.a * vOpacity); + + #include + #include +} +`,this.transparent=!0,Object.assign(this.uniforms,pt.clone(oS)),ns(this),jt(this,["isEmissive","height","tailLength","speed","idle"]),Bs(this,["color"]),Qe(this,[["vertexColors","MVT_USE_VERTEX_COLOR"],["vertexHeights","MVT_USE_VERTEX_HEIGHT"]]),ss(this),this.emissiveEnabled=!0,this.emissive=[0,0,0],this.setValues(t)}}let qu=pt.merge([is,{color:{value:[1,.5,0,1]},borderColor:{value:[0,1,0,1]},opacity:{value:1},radius:{value:.5},borderWidth:{value:1},isEmissive:{value:!1}}]);class hS extends sn{constructor(t){super(),d(this,"type","CircleMaterial"),d(this,"isCircleMaterial",!0),this.depthTest=!1,this.depthWrite=!1,t.vertexSizes||(qu=pt.merge([qu,{size:{value:100}}])),Object.assign(this.uniforms,pt.clone(qu)),jt(this,["borderWidth","opacity","isEmissive"]),Bs(this,["borderColor"]),Qe(this,[["vertexColors","MVT_USE_VERTEX_COLOR"],["vertexSizes","MVT_USE_VERTEX_SIZE"]]),ss(this),this.vertexShader=`#define GLSLIFY 1 +#include + +#ifdef MVT_USE_VERTEX_COLOR + varying vec4 vColor; +#endif + +#ifndef MVT_USE_VERTEX_SIZE + uniform float size; +#endif + +varying vec2 vPosition; +varying float vScale; + +#include +#include +#include +#include + +void main() { + + #include + vPosition = position.xy; + + vec3 transformed = vec3(position); + #ifdef MVT_USE_VERTEX_SIZE + vScale = instanceMatrix[0][0]; + #else + vScale = size; + transformed *= size; + #endif + + #include + + gl_Position = projectionMatrix * modelViewMatrix * instanceMatrix * vec4(transformed, 1.0); + #include + + #if defined(MVT_USE_VERTEX_COLOR) && defined(USE_INSTANCING_COLOR) + vColor.xyz = instanceColor.xyz; + vColor.a = 1.0; + #endif +}`,t.type==="Gradient"?this.fragmentShader=`#define GLSLIFY 1 +#include + +#ifdef MVT_USE_VERTEX_COLOR + varying vec4 vColor; +#else + uniform vec4 color; +#endif +uniform float radius; + +varying vec2 vPosition; + +#include +#include + +void main() { + float d = distance(vPosition, vec2(0, 0)); + if (d > 0.5) { + discard; + } + #ifdef MVT_USE_VERTEX_COLOR + vec4 fillColor = vColor; + #else + vec4 fillColor = color; + #endif + + fillColor.a = smoothstep(0.0, 1.0, pow(d / radius, 2.0)); + // 边缘抗锯齿 + if(d >- 0.99 * radius) { + fillColor.a *= 1.0 - smoothstep(0.99, 1.0, d / radius); + } + gl_FragColor = fillColor; + + #include + #include +}`:this.fragmentShader=`#define GLSLIFY 1 +#include + +#ifdef MVT_USE_VERTEX_COLOR + varying vec4 vColor; +#else + uniform vec4 color; +#endif +uniform vec4 borderColor; +uniform float opacity; +uniform float radius; +uniform float borderWidth; + +varying vec2 vPosition; +varying float vScale; + +#include +#include + +void main() { + float dis = distance(vPosition, vec2(0, 0)); + + // 用来保持边框的宽度不会随着缩放而变化 + float radius2 = radius - (borderWidth / vScale) * radius; + + // 用于抗锯齿 + float blur = 0.001; + float pct = (1.0 - smoothstep(radius - blur, radius + blur, dis)); + #ifdef MVT_USE_VERTEX_COLOR + vec4 currentColor = mix(vColor, borderColor, smoothstep( radius2 - blur,radius2 + blur, dis)); + #else + vec4 currentColor = mix(color, borderColor, smoothstep( radius2 - blur,radius2 + blur, dis)); + #endif + + // 设置的自身颜色的透明度优先级高于设置的opacity优先级 + if(currentColor.a == 1.0) { + gl_FragColor = vec4(currentColor.rgb, pct * opacity); + } else { + gl_FragColor = vec4(currentColor.rgb, pct * currentColor.a); + } + + #include + #include +}`,this.emissiveEnabled=!0,this.emissive=[0,0,0],this.setValues(t)}}class Yu extends Si{constructor(t){super(t),d(this,"geometry"),d(this,"material"),d(this,"color"),d(this,"size"),d(this,"opacity"),d(this,"type"),d(this,"borderColor"),d(this,"borderWidth"),d(this,"getInstanceLocalMatrix",(e,i,n)=>{const{vertexSizes:r}=this.parameters,{size:a}=this.dataSource.data;if(r&&a){const o=new rt;return o.makeScale(a[n],a[n],a[n]),o}return null}),d(this,"addCustomAttributes",()=>{const{vertexColors:e}=this.parameters,{color:i}=this.dataSource.data,n=[];e&&i&&i.forEach(r=>{const a=Xm(r);n.push(...a.toArray())}),this.instanceColor=new Xi(new Float32Array(n),3)}),this.parameters=t,this.defineMaterialProxyProperties(["color","size","size3","opacity","borderWidth","borderColor","radius","keepSize"])}initObject(){this.geometry=new ah,this.material=new hS(this.parameters),this.material.setCommonUniforms(this.engine.rendering.uniforms)}collisionTest(t){let e=0;return this.material.keepSize&&(e=this.parameters.vertexSizes&&t.size?t.size:this.size),{width:e,height:e}}}const cS=pt.merge([ot.fog,{heatmap:{value:null},heatmapDepth:{value:null},gradientMap:{value:null},opacity:{value:1}}]);class uS extends Be{constructor(t){super(t),this.type="HeatmapMaterial",this.isHeatmapMaterial=!0,this.fog=!0,this.lights=!1,this.transparent=!0,this.fragmentShader=`#define GLSLIFY 1 +#include + +uniform sampler2D heatmap; +uniform sampler2D gradientMap; +uniform sampler2D heatmapDepth; +uniform float opacity; +uniform vec2 resolution; + +varying vec2 vUv; + +#include + +#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT ) + uniform float logDepthBufFC; +#endif + +void main() { + vec4 color = texture2D(heatmap, vUv); + + if (color.a <= 0.) { + discard; + } + gl_FragColor = texture2D(gradientMap, vec2(color.a, 0.5)); + float addAlpha = 1.0; + if (color.a < 0.3) { + addAlpha = color.a * 3.3; + } + // if (color.a < 0.3) { + // gl_FragColor.a = color.a * 3.3; + // } else { + // gl_FragColor.a = 1.0; + // } + gl_FragColor.a *= color.a; + gl_FragColor.a *= opacity; + + vec4 depthColor = texture2D(heatmapDepth, vUv); + + #if defined( USE_LOGDEPTHBUF ) + gl_FragDepthEXT = unpackRGBAToDepth(depthColor); + #endif + // gl_FragColor = depthColor; + // #if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT ) + // int r = int(color.r * 255.0); + // int g = int(color.g * 255.0); + // int b = int(color.b * 255.0); + // int d = r << 16 + g << 8 + b; + // float z = float(d) / 16581375.0; + // gl_FragDepthEXT = z; + //gl_FragDepthEXT = color.r; + // gl_FragColor = vec4(1.0, 0, 0, color.r); + // gl_FragDepthEXT = log2( color.r ) * logDepthBufFC * 0.5; + // gl_FragDepthEXT = 1.0; + + // float depth = dot( vec2(color.r, color.g), 1.0 / vec2(1.0, 256.0) ); + // gl_FragDepthEXT = depth * (256.0*256.0) / (256.0*256.0 - 1.0); +// gl_FragColor = vec4(gl_FragDepthEXT, gl_FragDepthEXT, 0, 1.0); + // #endif + // gl_FragColor.a = color.a * 0.8; + // gl_FragColor = vec4(vUv, 0, 1.0); + // gl_FragColor = vec4(1.0, 0,0, 0.8); +}`,this.vertexShader=`#define GLSLIFY 1 +#include +uniform sampler2D gradientMap; + +varying vec2 vUv; + +void main() { + + gl_Position = vec4(position, 1.0); + // vUv = position.xy; + vUv = vec2((position.x + 1.0) * 0.5, (position.y + 1.0) * 0.5); + // vec4 gray = texture2D(gradientMap, vUv); + + // vec4 m0 = matrixWorldInverse * vec4(gl_Position.xy, 0.0, 1.0); + // vec4 m1 = matrixWorldInverse * vec4(gl_Position.xy, 1.0, 1.0); + // m0 /= m0.w; + // m1 /= m1.w; + // vec4 pixel = m0 + (-m0.z / (m1.z - m0.z)) * (m1 - m0); + // pixel.z = 100. * gray.a; + + // gl_Position = projectionMatrix * pixelToViewMatrix * vec4(pixel.xyz, 1.0); +}`,Object.assign(this.uniforms,pt.clone(cS)),jt(this,["opacity","resolution"]),_i(this,[]),Qe(this,[]),this._cachedGradient=null,Object.defineProperties(this,{gradient:{get:function(){return this._cachedGradient},set:function(e){this._cachedGradient=e,this.updateGradientMap()}}}),this.createGradientMap(),this.uniforms.gradientMap.value=this._cachedGradientMap,this.setValues(t)}createGradientMap(){let t=document.createElement("canvas");t.width=64,t.height=2;let e=t.getContext("2d"),i=e.createLinearGradient(0,0,64,0);i.addColorStop(0,"rgba(0,0,255,1)"),i.addColorStop(.3,"rgba(0,255,0,1)"),i.addColorStop(.6,"rgba(255,255,0,1)"),i.addColorStop(1,"rgba(255,0,0,1)"),e.fillStyle=i,e.fillRect(0,0,64,2),this._cachedGradientMap=new Le(t)}updateGradientMap(){let t=this._cachedGradient;if(Object.prototype.toString.call(t)!=="[object Object]")return;let e=this._cachedGradientMap.image.getContext("2d");e.clearRect(0,0,64,2);let i=e.createLinearGradient(0,0,64,0);for(const n in t)Object.hasOwnProperty.call(t,n)&&i.addColorStop(n,t[n]);e.fillStyle=i,e.fillRect(0,0,64,2),this._cachedGradientMap.needsUpdate=!0}dispose(){this._cachedGradientMap&&this._cachedGradientMap.dispose(),super.dispose()}}const dS=pt.merge([ot.fog,{radius:{value:30},circleMap:{value:null},minValue:{value:0},maxValue:{value:100},keepSize:{value:!1},attenuateMValueFactor:{value:0}}]);class pS extends Be{constructor(t){super(t),this.type="HeatmapTextureMaterial",this.isHeatmapTextureMaterial=!0,this.fog=!0,this.lights=!1,this.transparent=!0,this.depthTest=!1,this.fragmentShader=`#define GLSLIFY 1 +#include + +uniform sampler2D circleMap; + +varying vec2 vUv; +varying float vWeight; +varying float vZDepth; +#include +void main() { + #include + gl_FragColor.a = texture2D(circleMap, vUv).a * vWeight; + // gl_FragColor.a = 1.; + //#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT ) + // gl_FragColor = vec4(vec3(gl_FragDepthEXT), 1.0); + // int d = int(gl_FragDepthEXT * 16581375.0); + // gl_FragColor.r = float((d & 0xff0000) >> 16) / 255.0; + // gl_FragColor.g = float((d & 0x00ff00) >> 8) / 255.0; + // gl_FragColor.b = float(d & 0x0000ff) / 255.0; + // gl_FragColor.r = gl_FragDepthEXT; // a + // gl_FragColor.g = mod(gl_FragDepthEXT * 10.0, 1.0); + // gl_FragColor.b = mod(gl_FragDepthEXT * 1000.0, 1.0); + // int d = int(gl_FragDepthEXT * 10000000.0); + // gl_FragColor.r = (d & 0xff000 >> 16) / 255.0; + // gl_FragColor.g = (d & 0x00ff00 >> 8) / 255.0; + // gl_FragColor.b = (d & 0x0000ff ) / 255.0; + // gl_FragColor.r = gl_FragDepthEXT; + // gl_FragColor.r = gl_FragCoord.z; + + // float depthVal = gl_FragCoord.z * (256.0*256.0 - 1.0) / (256.0*256.0); + // vec3 encode = fract( depthVal * vec3(1.0, 256.0, 256.0*256.0) ); + // encode.xy = encode.xy - encode.yz / 256.0 + 1.0/512.0; + // gl_FragColor.rgb = encode; + + // #else + // gl_FragColor.r = gl_FragCoord.z; + // #endif + // gl_FragColor.r = 1.0; + // gl_FragColor.a = gl_FragCoord.z; +}`,this.vertexShader=`#define GLSLIFY 1 +#include + +attribute float instancedWeight; + +uniform float radius; +uniform float maxValue; +uniform float minValue; +uniform bool keepSize; +uniform float attenuateMValueFactor; +uniform float pixelRatio; +uniform vec2 resolution; + +varying vec2 vUv; +varying float vWeight; + +#include +#include + +void main() { + + float range = (maxValue - minValue) * attenuateMValueFactor; + + vec4 worldPosition = (modelMatrix * vec4(position, 1.0)); + float pixelSize = getPixelSize(worldPosition.xyz); + + if (keepSize) { + gl_Position = projectionMatrix * modelViewMatrix * instanceMatrix * vec4(position * radius * pixelSize, 1.0); + range *= pixelSize; + } else { + gl_Position = projectionMatrix * modelViewMatrix * instanceMatrix * vec4(position * radius, 1.0); + } + + // gl_Position = vec4(position, 1.0); + // vZDepth = (gl_Position.z / gl_Position.w + 1.0) * 0.5; + + vUv = vec2(position.x + 0.5, position.y + 0.5); + + vWeight = (instancedWeight - minValue) / (maxValue + range - minValue); + + #include +}`,Object.assign(this.uniforms,pt.clone(dS)),jt(this,["radius","minValue","maxValue","keepSize","attenuateMValueFactor"]),_i(this,[]),Qe(this,[]);const e=this.createCircleMap();this.uniforms.circleMap.value=e,this.setValues(t),this.blending=md,this.blendSrc=Po,this.blendDst=_d,this.blendSrcAlpha=Po,this.blendDstAlpha=Po}createCircleMap(){let t=document.createElement("canvas");t.width=64,t.height=64;let e=t.getContext("2d"),i=e.createRadialGradient(32,32,0,32,32,32);return i.addColorStop(0,"rgba(0,0,0,1)"),i.addColorStop(1,"rgba(0,0,0,0)"),e.fillStyle=i,e.arc(32,32,32,0,2*Math.PI,!1),e.fill(),new Le(t)}dispose(){this.uniforms.circleMap.value&&this.uniforms.circleMap.value.dispose(),super.dispose()}}const mS=pt.merge([ot.fog,{radius:{value:30},circleMap:{value:null},minValue:{value:0},maxValue:{value:100},keepSize:{value:!1},attenuateMValueFactor:{value:0}}]);class fS extends Be{constructor(t){super(t),this.type="HeatmapDepthTextureMaterial",this.isHeatmapDepthTextureMaterial=!0,this.fog=!0,this.lights=!1,this.transparent=!0,this.depthTest=!1,this.fragmentShader=`#define GLSLIFY 1 +#include +#include +#include +void main() { + #include + + #if defined( USE_LOGDEPTHBUF ) + + gl_FragColor = packDepthToRGBA(gl_FragDepthEXT); + #else + gl_FragColor = packDepthToRGBA(gl_FragCoord.z); + #endif + +}`,this.vertexShader=`#define GLSLIFY 1 +#include +attribute vec3 instancedPosition; + +uniform float radius; +uniform bool keepSize; +uniform float pixelRatio; +uniform vec2 resolution; + +#include +#include + +void main() { + + vec4 worldPosition = (modelMatrix * vec4(position, 1.0)); + float pixelSize = getPixelSize(worldPosition.xyz); + if (keepSize) { + gl_Position = projectionMatrix * modelViewMatrix * instanceMatrix * vec4(position * radius * pixelSize * 1.1, 1.0); + } else { + gl_Position = projectionMatrix * modelViewMatrix * instanceMatrix * vec4(position * radius * 1.1, 1.0); + } + #include +}`,Object.assign(this.uniforms,pt.clone(mS)),jt(this,["radius","minValue","maxValue","keepSize","attenuateMValueFactor"]),_i(this,[]),Qe(this,[]),this.setValues(t)}}class gS extends vm{constructor(){super();const t=this.geometry=new Rs;this.setAttribute("position",t.attributes.position),this.setAttribute("uv",t.attributes.uv),this.setIndex(t.index)}dispose(){this.geometry.dispose()}}const _S=pt.merge([ot.fog,{heightRatio:{value:100},opacity:{value:1},map:{value:null}}]);class vS extends Be{constructor(t){super(t),this.type="HeatmapMaterial",this.isHeatmapMaterial=!0,this.fog=!0,this.lights=!1,this.transparent=!0,this.depthWrite=!0,this.depthTest=!0,this.fragmentShader=`#define GLSLIFY 1 +#include + +uniform sampler2D map; +uniform float opacity; +uniform vec2 resolution; + +varying vec2 vUv; +#include + +void main() { + + gl_FragColor = texture2D(map, vUv); + gl_FragColor.a *= opacity; + + #include + +}`,this.vertexShader=`#define GLSLIFY 1 +#include + +uniform float heightRatio; +uniform sampler2D map; + +varying vec2 vUv; + +#include +void main() { + + vUv = vec2(uv.x, 1. - uv.y); + #include + + transformed.z = texture2D(map, vUv).a * heightRatio; + + #include + #include +}`,Object.assign(this.uniforms,pt.clone(_S)),jt(this,["heightRatio","resolution","opacity","map"]),this.setValues(t)}}var I_={exports:{}};(function(s){function t(e){if(!(this instanceof t))return new t(e);this._canvas=e=typeof e=="string"?document.getElementById(e):e,this._ctx=e.getContext("2d"),this._width=e.width,this._height=e.height,this._max=1,this._data=[]}s.exports=t,t.prototype={defaultRadius:25,defaultGradient:{.4:"blue",.6:"cyan",.7:"lime",.8:"yellow",1:"red"},data:function(e){return this._data=e,this},max:function(e){return this._max=e,this},add:function(e){return this._data.push(e),this},clear:function(){return this._data=[],this},radius:function(e,i){i=i===void 0?15:i;var n=this._circle=this._createCanvas(),r=n.getContext("2d"),a=this._r=e+i;return n.width=n.height=2*a,r.shadowOffsetX=r.shadowOffsetY=2*a,r.shadowBlur=i,r.shadowColor="black",r.beginPath(),r.arc(-a,-a,e,0,2*Math.PI,!0),r.closePath(),r.fill(),this},resize:function(){this._width=this._canvas.width,this._height=this._canvas.height},gradient:function(e){var i=this._createCanvas(),n=i.getContext("2d"),r=n.createLinearGradient(0,0,0,256);for(var a in i.width=1,i.height=256,e)r.addColorStop(+a,e[a]);return n.fillStyle=r,n.fillRect(0,0,1,256),this._grad=n.getImageData(0,0,1,256).data,this},draw:function(e){this._circle||this.radius(this.defaultRadius),this._grad||this.gradient(this.defaultGradient);var i=this._ctx;i.clearRect(0,0,this._width,this._height);for(var n,r=0,a=this._data.length;r{let p=0,m=new j;const f=[o[0],o[1]];let g=Ye([a[0],a[1]],f);if(u&&(m=Ze(g),this._volumeExtrusions(t,e,n,i,a,m,h)),l){let _=Ye(f,[l[0],l[1]]),v=new j;v.addVectors(g,_),v.normalize();const x=f_(g,_),y=Ze(g),b=Math.min(h,h/x.dot(y));this._volumeExtrusions(t,e,n,i,o,x,b),p+=2}else m=Ze(g),this._volumeExtrusions(t,e,n,i,o,m,h),p+=2;return p}),d(this,"_volumeExtrusions",(t,e,i,n,r,a,o)=>{i.push(a.x,a.y,0,-a.x,-a.y,0),t.push(r[0]+a.x*o/2,r[1]+a.y*o/2,r[2]),e.push(r[0]-a.x*o/2,r[1]-a.y*o/2,r[2]),n.push(o,o)})}createVolumeGeometry(t,e){let i=this.parameters.lineWidth*e,n=[];for(let r=0;r{let _=0,v=new j,x=new j,y=new j;const b=this.parameters.lineCap==="square",S=this.parameters.lineCap==="round",w=this.parameters.lineJoin==="bevel",C=this.parameters.lineJoin==="round",L=[u[0],u[1]],T=[c[0],c[1]];let E=Ye(T,L),I=0;if(this._needsCounter&&(I=ds(L,T),this._flags.totalDistance+=I),this._flags.normal||(this._flags.normal=new j,this._flags.normal=Ze(E)),!this._flags.started)if(this._flags.started=!0,b){const z=new j,B=new j;z.addVectors(this._flags.normal,E),B.subVectors(this._flags.normal,E),o.push(B.x,B.y,0,-z.x,-z.y,0),e.push(c[0],c[1],c[2],c[0],c[1],c[2]),i.push(this._flags.totalDistance-I,0,this._flags.totalDistance-I,1),n.push(this._flags.totalDistance-I,this._flags.totalDistance-I),a.push(m,m),r.push(0,0),this.parameters.vertexColors&&l.push(f[0],f[1],f[2],f[3],f[0],f[1],f[2],f[3])}else if(S){const z=E.clone();z.negate();const B=new j;B.subVectors(this._flags.normal,E),B.normalize();const O=new j;O.addVectors(this._flags.normal,E),O.normalize();const F=this._flags.normal.clone(),Q=this._flags.normal.clone();Q.negate(),o.push(z.x,z.y,0),o.push(B.x,B.y,0),o.push(-O.x,-O.y,0),o.push(F.x,F.y,0),o.push(Q.x,Q.y,0);for(let k=0;k<5;k++)e.push(c[0],c[1],c[2]),a.push(m),i.push(this._flags.totalDistance-I,0),n.push(this._flags.totalDistance-I),r.push(0),this.parameters.vertexColors&&l.push(f[0],f[1],f[2],f[3]);h.push(g+0,g+2,g+1,g+1,g+2,g+3,g+3,g+2,g+4),_+=3,g+=3}else this._extrusions(e,o,i,n,r,a,l,c,this._flags.normal,this._flags.totalDistance-I,m,f);if(h.push(...this._flags.lastFlip===-1?[g+0,g+1,g+2]:[g+1,g+0,g+2]),p){x=Ye(L,[p[0],p[1]]),y.addVectors(E,x),y.normalize();const z=f_(E,x),B=Ze(E),O=m/z.dot(B);let F=y.dot(this._flags.normal)>0?-1:1,Q=w;if(!Q&&this.parameters.lineJoin==="miter"&&(Math.abs(O)>this.parameters.miterLimit||2*m)&&(Q=!0),Q){const k=Math.min(2*m,Math.abs(O));o.push(this._flags.normal.x*F,this._flags.normal.y*F,0),o.push(-z.x*F,-z.y*F,0),e.push(u[0],u[1],u[2],u[0],u[1],u[2]),a.push(m,k),n.push(this._flags.totalDistance,this._flags.totalDistance),r.push(0,0),h.push(...this._flags.lastFlip===-F?this._flags.lastFlip===-1?[g+2,g+1,g+3]:[g+1,g+2,g+3]:this._flags.lastFlip===-1?[g+0,g+2,g+3]:[g+2,g+0,g+3]),v=Ze(x),this._flags.normal.copy(v),o.push(this._flags.normal.x*F,this._flags.normal.y*F,0),e.push(u[0],u[1],u[2]),a.push(m),n.push(this._flags.totalDistance),r.push(0),h.push(...F===1?[g+2,g+3,g+4]:[g+3,g+2,g+4]),this._flipedUV(i,this._flags.totalDistance,F,!0),this.parameters.vertexColors&&l.push(f[0],f[1],f[2],f[3],f[0],f[1],f[2],f[3],f[0],f[1],f[2],f[3]),_+=3}else if(C){const k=Math.min(2*m,Math.abs(O));o.push(this._flags.normal.x*F,this._flags.normal.y*F,0),e.push(u[0],u[1],u[2]),a.push(m),n.push(this._flags.totalDistance),r.push(0),o.push(z.x*F,z.y*F,0),e.push(u[0],u[1],u[2]),a.push(m),n.push(this._flags.totalDistance),r.push(0),o.push(-z.x*F,-z.y*F,0),e.push(u[0],u[1],u[2]),a.push(k),n.push(this._flags.totalDistance),r.push(0),h.push(...this._flags.lastFlip===-F?this._flags.lastFlip===-1?[g+2,g+1,g+4,g+2,g+4,g+3]:[g+1,g+2,g+4,g+4,g+2,g+3]:this._flags.lastFlip===-1?[g+0,g+2,g+4,g+2,g+3,g+4]:[g+2,g+0,g+4,g+3,g+2,g+4]),v=Ze(x),this._flags.normal.copy(v),o.push(this._flags.normal.x*F,this._flags.normal.y*F,0),e.push(u[0],u[1],u[2]),a.push(m),n.push(this._flags.totalDistance),r.push(0),h.push(...F===-1?[g+4,g+3,g+5]:[g+3,g+4,g+5]),this._flipedUV(i,this._flags.totalDistance,F,!1),this.parameters.vertexColors&&l.push(f[0],f[1],f[2],f[3],f[0],f[1],f[2],f[3],f[0],f[1],f[2],f[3],f[0],f[1],f[2],f[3]),_+=4}else this._extrusions(e,o,i,n,r,a,l,u,z,this._flags.totalDistance,O,f),h.push(...this._flags.lastFlip===-1?[g+2,g+1,g+3]:[g+2,g+0,g+3]),F=-1,this._flags.normal.copy(z),_+=2;this._flags.lastFlip=F}else{if(this._flags.normal=Ze(E),b){const z=new j,B=new j;z.addVectors(E,this._flags.normal),B.subVectors(E,this._flags.normal),o.push(z.x,z.y,0,B.x,B.y,0),e.push(u[0],u[1],u[2],u[0],u[1],u[2]),a.push(m,m),i.push(this._flags.totalDistance,0,this._flags.totalDistance,1),n.push(this._flags.totalDistance,this._flags.totalDistance),r.push(0,0),this.parameters.vertexColors&&l.push(f[0],f[1],f[2],f[3],f[0],f[1],f[2],f[3])}else this._extrusions(e,o,i,n,r,a,l,u,this._flags.normal,this._flags.totalDistance,m,f);if(h.push(...this._flags.lastFlip===-1?[g+2,g+1,g+3]:[g+2,g+0,g+3]),_+=2,S){const z=new j;z.addVectors(E,this._flags.normal),z.normalize();const B=new j;B.subVectors(E,this._flags.normal),B.normalize();const O=E.clone();o.push(z.x,z.y,0),o.push(B.x,B.y,0),o.push(O.x,O.y,0);for(let F=0;F<3;F++)e.push(u[0],u[1],u[2]),a.push(m),i.push(this._flags.totalDistance,0),n.push(this._flags.totalDistance),r.push(0),this.parameters.vertexColors&&l.push(f[0],f[1],f[2],f[3]);h.push(g+2,g+3,g+4,g+4,g+3,g+5,g+4,g+5,g+6),_+=3}}return _}),d(this,"_extrusions",(e,i,n,r,a,o,l,h,c,u,p,m)=>{i.push(c.x,c.y,0,-c.x,-c.y,0),e.push(h[0],h[1],h[2],h[0],h[1],h[2]),o.push(p,p),n.push(u,0,u,1),r.push(u,u),a.push(0,0),this.parameters.vertexColors&&l.push(m[0],m[1],m[2],m[3],m[0],m[1],m[2],m[3])}),this.parameters=t,this._needsUpdate=!1,this._needsCounter=!1,this._flags={lastFlip:-1,started:!1,normal:null,totalDistance:0}}setData(t){this._needsUpdate=!0,(this.parameters.dashed||this.parameters.enableAnimation||this.parameters.mapSrc||this.parameters.map)&&(this._needsCounter=!0),this.updateGeometry(t)}updateGeometry(t){const e=[],i=[],n=[],r=[],a=[],o=[],l=[],h=[],c=[],u=[],p=[];let m=0;for(let f=0;f +#include +#include + +varying vec3 vLightFront; +varying vec3 vIndirectFront; + +uniform sampler2D map; +uniform bool useMap; +uniform bool keepSize; +uniform float lineWidth; +uniform float mapGap; +uniform float opacity; +uniform float alphaTest; +uniform float elapsedTime; + +varying vec2 vUV; +varying vec4 vColor; +varying float vCounter; +varying float vLength; +varying float vTotalLength; +varying float vZoomUnits; + +#ifdef USE_ANIMATION +uniform float animationInterval; +varying float vAnimationOpacity; +#endif + +#ifdef USE_DASH +uniform float dashArray; +uniform float dashOffset; +uniform float dashRatio; +varying float vDashOpacity; +#endif + +void main() { + + vec4 c = vColor; + + if(useMap) { + // icon之间的间隔,经验值为间隔50倍宽度,比较稀疏且好看 + float margin = lineWidth * mapGap; + float halfMargin = margin / 2.0; + float texWidth = lineWidth; + if (keepSize) { + margin *= vZoomUnits; + texWidth *= vZoomUnits; + } + float delta = mod(vUV.x, texWidth + margin); + if (delta >= halfMargin && delta <= halfMargin + texWidth) { + float uvx = (delta - halfMargin) / texWidth; + vec4 texture = texture2D(map, vec2(uvx, vUV.y)); + c = texture.a >= 0.5 ? texture : c; + } + } + + #ifdef USE_ANIMATION + float animationAlpha = vAnimationOpacity; + if (animationInterval > 0.0) { + animationAlpha = mod(vAnimationOpacity, animationInterval); + } + if (animationAlpha > 1.0 || animationAlpha < 0.0) { + discard; + } + c.a *= animationAlpha; + #endif + + #ifdef USE_DASH + float darray = dashArray; + if (keepSize) { + darray *= vZoomUnits; + } + c.a *= step(mod(vLength + dashOffset, darray), (darray * dashRatio)); + #endif + + if (c.a < alphaTest) { + discard; + } + + gl_FragColor = c; + + gl_FragColor.a *= opacity; + + #include + #include + #include + #include + +}`,this.vertexShader=`#define GLSLIFY 1 +#include + +#ifdef USE_A_COLOR +attribute vec4 aColor; +#endif + +attribute float totalLength; +attribute float aWidth; +attribute float lengths; +attribute float randomFactor; + +uniform float elapsedTime; +uniform bool vertexColors; +uniform vec4 uColor; +uniform float lineWidth; +uniform float height; +uniform float opacity; + +varying vec2 vUV; +varying vec4 vColor; +varying float vCounter; +varying float vLength; +varying float vTotalLength; +varying float vZoomUnits; + +#ifdef USE_ANIMATION +uniform float animationSpeed; +uniform float animationTailType; +uniform float animationTailRatio; +uniform float animationTailLength; +uniform float animationIdle; +varying float vAnimationOpacity; +#endif + +#include +#include +#include +#include + +#ifdef MVT_USE_VERTEX_ZINDEX +attribute float layerIndex; +uniform float maxLayerIndex; + +#define WORLD_DISTANCE_NEAR 100000.0 +#define WORLD_DISTANCE_MID 1500000.0 +#define WORLD_DISTANCE_FAR 6000000.0 +#define LAYER_INDEX (maxLayerIndex - layerIndex) +// 在mid和far交接那块,因为线数据特别碎,导致layerIndex很多,地面会陷很深,还没找到比较好的函数来解决这个case + +float y1(float x) { + return pow(LAYER_INDEX * log2(x * 5.), 1.5); +} + +float y2(float x) { + float xx = x - WORLD_DISTANCE_NEAR; + return LAYER_INDEX * log2(xx) + y1(WORLD_DISTANCE_NEAR); +} + +float y3(float x) { + float xx = x - WORLD_DISTANCE_MID; + return log2(LAYER_INDEX * xx) + y2(WORLD_DISTANCE_MID); +} + +float y4(float x) { + return 110. * LAYER_INDEX + y3(WORLD_DISTANCE_FAR); +} + +/** +y1 = pow(x, 2) x: (0, near] +y2 = (x - near) + y1(near) x: (near, mid] +y3 = sqrt(x - mid) + y2(mid) x: (mid, far] +y4 = n + y3(far) x: (far, +∞) +*/ +float y(float x) { + if (x <= WORLD_DISTANCE_NEAR) { + return y1(x); + } + if (x > WORLD_DISTANCE_NEAR && x <= WORLD_DISTANCE_MID) { + return y2(x); + } + else if (x > WORLD_DISTANCE_MID && x <= WORLD_DISTANCE_FAR) { + return y3(x); + } + else if (x > WORLD_DISTANCE_FAR) { + return y4(x); + } +} +#endif + +void main() { + + #ifdef USE_A_COLOR + vColor = aColor; + #else + vColor = uColor; + #endif + + vUV = uv; + // vCounter = counter; + vLength = lengths; + vTotalLength = totalLength; + + #include + + vec4 worldPosition = modelMatrix * vec4(transformed, 1.0); + float pixelSize = getPixelSize(worldPosition.xyz); + vZoomUnits = pixelSize; + + vec2 extrude = normal.xy * aWidth / 2.0; + if (keepSize) { + extrude *= pixelSize; + } + worldPosition.xy += extrude; + worldPosition.z += height; + + #ifdef MVT_USE_VERTEX_ZINDEX + vec3 worldToEye = cameraPosition - worldPosition.xyz; + float dis = length(worldToEye); + float layerGap = maxLayerIndex - layerIndex; + // float zOffset = log2(layerGap * dis + 1.0); + // float zOffset = exp(layerGap * log2(dis * 10.0)); + // float zOffset = pow(layerGap * log2(dis * 5.0), 1.5); + float zOffset = y(dis); + worldPosition.z -= zOffset; + #endif + + #ifdef USE_ANIMATION + float tailLength = animationTailType == 1.0 ? vTotalLength * animationTailRatio : animationTailLength; + + #ifdef ANIMATION_CHAOS + float currentTime = elapsedTime + randomFactor * 1000.0 * 3600.; + #else + float currentTime = elapsedTime; + #endif + float currentLength = mod(currentTime * animationSpeed, vTotalLength + tailLength + animationIdle * animationSpeed); + vAnimationOpacity = (vLength - (currentLength - tailLength)) / tailLength; + #endif + + gl_Position = projectionMatrix * viewMatrix * worldPosition; + + // #ifdef MVT_USE_VERTEX_ZINDEX + // float depth = layerGap * 10.0; + // gl_Position.z = gl_Position.z + depth; + // #endif + + #include + #include + #include +}`,Object.assign(this.uniforms,pt.clone(SS)),jt(this,["map","mapGap","lineWidth","keepSize","height","opacity","dashArray","dashOffset","dashRatio","alphaTest","maxLayerIndex","animationInterval","animationSpeed","animationTailType","animationTailRatio","animationTailLength","animationIdle","isEmissive"]),_i(this,[["color","uColor",es]]),Qe(this,[["vertexColors","USE_A_COLOR"],["vertexZIndex","MVT_USE_VERTEX_ZINDEX"],["enableAnimation","USE_ANIMATION"],["enableAnimationChaos","ANIMATION_CHAOS"],["dashed","USE_DASH"]]),ss(this),Object.defineProperties(this,{mapSrc:{get:function(){return this.uniforms.map.value},set:function(e){const i=this.mapSrc,n="url_map";if(this.userData[n]===e)return;if(i&&i.dispose(),!e)return this.uniforms.map.value=null,this.uniforms.useMap.value=!1,void delete this.userData[n];const r=wS.load(e);r.wrapS=r.wrapT=ue,this.uniforms.map.value=r,this.userData[n]=e,this.uniforms.useMap.value=!0}}}),this.emissiveEnabled=!0,this.emissive=[0,0,0],this.setValues(t)}dispose(){this.uniforms.map.value&&this.uniforms.map.value.dispose(),super.dispose()}}var pa={exports:{}};function hh(s,t,e){e=e||2;var i,n,r,a,o,l,h,c=t&&t.length,u=c?t[0]*e:s.length,p=O_(s,0,u,e,!0),m=[];if(!p||p.next===p.prev)return m;if(c&&(p=function(g,_,v,x){var y,b,S,w=[];for(y=0,b=_.length;y80*e){i=r=s[0],n=a=s[1];for(var f=e;fr&&(r=o),l>a&&(a=l);h=(h=Math.max(r-i,a-n))!==0?32767/h:0}return _o(p,m,e,i,n,h,0),m}function O_(s,t,e,i,n){var r,a;if(n===Ku(s,t,e,i)>0)for(r=t;r=t;r-=i)a=N_(r,s[r],s[r+1],a);return a&&ch(a,a.next)&&(xo(a),a=a.next),a}function nr(s,t){if(!s)return s;t||(t=s);var e,i=s;do if(e=!1,i.steiner||!ch(i,i.next)&&pe(i.prev,i,i.next)!==0)i=i.next;else{if(xo(i),(i=t=i.prev)===i.next)break;e=!0}while(e||i!==t);return t}function _o(s,t,e,i,n,r,a){if(s){!a&&r&&function(c,u,p,m){var f=c;do f.z===0&&(f.z=Zu(f.x,f.y,u,p,m)),f.prevZ=f.prev,f.nextZ=f.next,f=f.next;while(f!==c);f.prevZ.nextZ=null,f.prevZ=null,function(g){var _,v,x,y,b,S,w,C,L=1;do{for(v=g,g=null,b=null,S=0;v;){for(S++,x=v,w=0,_=0;_0||C>0&&x;)w!==0&&(C===0||!x||v.z<=x.z)?(y=v,v=v.nextZ,w--):(y=x,x=x.nextZ,C--),b?b.nextZ=y:g=y,y.prevZ=b,b=y;v=x}b.nextZ=null,L*=2}while(S>1)}(f)}(s,i,n,r);for(var o,l,h=s;s.prev!==s.next;)if(o=s.prev,l=s.next,r?ES(s,i,n,r):CS(s))t.push(o.i/e|0),t.push(s.i/e|0),t.push(l.i/e|0),xo(s),s=l.next,h=l.next;else if((s=l)===h){a?a===1?_o(s=AS(nr(s),t,e),t,e,i,n,r,2):a===2&&PS(s,t,e,i,n,r):_o(nr(s),t,e,i,n,r,1);break}}}function CS(s){var t=s.prev,e=s,i=s.next;if(pe(t,e,i)>=0)return!1;for(var n=t.x,r=e.x,a=i.x,o=t.y,l=e.y,h=i.y,c=nr?n>a?n:a:r>a?r:a,m=o>l?o>h?o:h:l>h?l:h,f=i.next;f!==t;){if(f.x>=c&&f.x<=p&&f.y>=u&&f.y<=m&&ma(n,o,r,l,a,h,f.x,f.y)&&pe(f.prev,f,f.next)>=0)return!1;f=f.next}return!0}function ES(s,t,e,i){var n=s.prev,r=s,a=s.next;if(pe(n,r,a)>=0)return!1;for(var o=n.x,l=r.x,h=a.x,c=n.y,u=r.y,p=a.y,m=ol?o>h?o:h:l>h?l:h,_=c>u?c>p?c:p:u>p?u:p,v=Zu(m,f,t,e,i),x=Zu(g,_,t,e,i),y=s.prevZ,b=s.nextZ;y&&y.z>=v&&b&&b.z<=x;){if(y.x>=m&&y.x<=g&&y.y>=f&&y.y<=_&&y!==n&&y!==a&&ma(o,c,l,u,h,p,y.x,y.y)&&pe(y.prev,y,y.next)>=0||(y=y.prevZ,b.x>=m&&b.x<=g&&b.y>=f&&b.y<=_&&b!==n&&b!==a&&ma(o,c,l,u,h,p,b.x,b.y)&&pe(b.prev,b,b.next)>=0))return!1;b=b.nextZ}for(;y&&y.z>=v;){if(y.x>=m&&y.x<=g&&y.y>=f&&y.y<=_&&y!==n&&y!==a&&ma(o,c,l,u,h,p,y.x,y.y)&&pe(y.prev,y,y.next)>=0)return!1;y=y.prevZ}for(;b&&b.z<=x;){if(b.x>=m&&b.x<=g&&b.y>=f&&b.y<=_&&b!==n&&b!==a&&ma(o,c,l,u,h,p,b.x,b.y)&&pe(b.prev,b,b.next)>=0)return!1;b=b.nextZ}return!0}function AS(s,t,e){var i=s;do{var n=i.prev,r=i.next.next;!ch(n,r)&&z_(n,i,i.next,r)&&vo(n,r)&&vo(r,n)&&(t.push(n.i/e|0),t.push(i.i/e|0),t.push(r.i/e|0),xo(i),xo(i.next),i=s=r),i=i.next}while(i!==s);return nr(i)}function PS(s,t,e,i,n,r){var a=s;do{for(var o=a.next.next;o!==a.prev;){if(a.i!==o.i&&OS(a,o)){var l=k_(a,o);return a=nr(a,a.next),l=nr(l,l.next),_o(a,t,e,i,n,r,0),void _o(l,t,e,i,n,r,0)}o=o.next}a=a.next}while(a!==s)}function RS(s,t){return s.x-t.x}function DS(s,t){var e=function(n,r){var a,o=r,l=n.x,h=n.y,c=-1/0;do{if(h<=o.y&&h>=o.next.y&&o.next.y!==o.y){var u=o.x+(h-o.y)*(o.next.x-o.x)/(o.next.y-o.y);if(u<=l&&u>c&&(c=u,a=o.x=o.x&&o.x>=f&&l!==o.x&&ma(ha.x||o.x===a.x&&LS(a,o)))&&(a=o,_=p)),o=o.next;while(o!==m);return a}(s,t);if(!e)return t;var i=k_(e,s);return nr(i,i.next),nr(e,e.next)}function LS(s,t){return pe(s.prev,s,t.prev)<0&&pe(t.next,s,s.next)<0}function Zu(s,t,e,i,n){return(s=1431655765&((s=858993459&((s=252645135&((s=16711935&((s=(s-e)*n|0)|s<<8))|s<<4))|s<<2))|s<<1))|(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=(t-i)*n|0)|t<<8))|t<<4))|t<<2))|t<<1))<<1}function IS(s){var t=s,e=s;do(t.x=(s-a)*(r-o)&&(s-a)*(i-o)>=(e-a)*(t-o)&&(e-a)*(r-o)>=(n-a)*(i-o)}function OS(s,t){return s.next.i!==t.i&&s.prev.i!==t.i&&!function(e,i){var n=e;do{if(n.i!==e.i&&n.next.i!==e.i&&n.i!==i.i&&n.next.i!==i.i&&z_(n,n.next,e,i))return!0;n=n.next}while(n!==e);return!1}(s,t)&&(vo(s,t)&&vo(t,s)&&function(e,i){var n=e,r=!1,a=(e.x+i.x)/2,o=(e.y+i.y)/2;do n.y>o!=n.next.y>o&&n.next.y!==n.y&&a<(n.next.x-n.x)*(o-n.y)/(n.next.y-n.y)+n.x&&(r=!r),n=n.next;while(n!==e);return r}(s,t)&&(pe(s.prev,s,t.prev)||pe(s,t.prev,t))||ch(s,t)&&pe(s.prev,s,s.next)>0&&pe(t.prev,t,t.next)>0)}function pe(s,t,e){return(t.y-s.y)*(e.x-t.x)-(t.x-s.x)*(e.y-t.y)}function ch(s,t){return s.x===t.x&&s.y===t.y}function z_(s,t,e,i){var n=dh(pe(s,t,e)),r=dh(pe(s,t,i)),a=dh(pe(e,i,s)),o=dh(pe(e,i,t));return n!==r&&a!==o||!(n!==0||!uh(s,e,t))||!(r!==0||!uh(s,i,t))||!(a!==0||!uh(e,s,i))||!(o!==0||!uh(e,t,i))}function uh(s,t,e){return t.x<=Math.max(s.x,e.x)&&t.x>=Math.min(s.x,e.x)&&t.y<=Math.max(s.y,e.y)&&t.y>=Math.min(s.y,e.y)}function dh(s){return s>0?1:s<0?-1:0}function vo(s,t){return pe(s.prev,s,s.next)<0?pe(s,t,s.next)>=0&&pe(s,s.prev,t)>=0:pe(s,t,s.prev)<0||pe(s,s.next,t)<0}function k_(s,t){var e=new Ju(s.i,s.x,s.y),i=new Ju(t.i,t.x,t.y),n=s.next,r=t.prev;return s.next=t,t.prev=s,e.next=n,n.prev=e,i.next=e,e.prev=i,r.next=i,i.prev=r,i}function N_(s,t,e,i){var n=new Ju(s,t,e);return i?(n.next=i.next,n.prev=i,i.next.prev=n,i.next=n):(n.prev=n,n.next=n),n}function xo(s){s.next.prev=s.prev,s.prev.next=s.next,s.prevZ&&(s.prevZ.nextZ=s.nextZ),s.nextZ&&(s.nextZ.prevZ=s.prevZ)}function Ju(s,t,e){this.i=s,this.x=t,this.y=e,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}function Ku(s,t,e,i){for(var n=0,r=t,a=e-i;r0&&(i+=s[n-1].length,e.holes.push(i))}return e};const ph=[1,1,0,1];class zS extends Pt{constructor(t){super(),d(this,"isPolygonGeometry",!0),d(this,"_useUV",!1),d(this,"_useNormal",!1),d(this,"_sideUVNormalized",!1),d(this,"_sideUVReversed",!1),d(this,"_sideUVUseHeight",!1),d(this,"addGeoPolygonToVertices",(e,i,n=0,r=0,a,o,l,h,c,u,p,m,f=!1)=>{const g=e.vertices,_=e.dimensions;Array.isArray(u)||(u=ph);let v=1/0,x=1/0;for(let b=0,S=g.length-_+1;b{let i=e.length,n=0;for(let r=i-1,a=0;a{let m=e[0],f=n;m.length,this.isClockWise(m)&&(m=m.reverse()),Array.isArray(c)||(c=ph);let g=0,_=0,v=0;for(let x=0,y=m.length-1;x0&&this.addSideFace(p,g,n.length/3,n,l,r,a,h,f,o,m)}this.cachedPositions=n,this.cachedObjectIndices=o,this.setAttribute("position",new et(n,3)),this.parameters.vertexColors&&this.setAttribute("aColor",new et(h,4)),this._useUV?this.setAttribute("uv",new et(a,2)):this.deleteAttribute("uv"),this._useNormal?this.setAttribute("normal",new et(r,3)):this.deleteAttribute("normal"),this.setIndex(l),this.clearGroups(),this.addGroup(0,c,1),this.extrude&&this.addGroup(c,l.length-c,0),this.computeBoundingSphere(),this._needsUpdate=!1}get extrude(){return this._extrude}set extrude(t){const e=!!t;e!==this._extrude&&(this._extrude=e,this._needsUpdate=!0)}get extrudeValue(){return this._extrudeValue}set extrudeValue(t){!isNaN(t)&&t>=0&&t!==this._extrudeValue&&(this._extrudeValue=t,this._needsUpdate=!0)}get sideUVNormalized(){return this._sideUVNormalized}set sideUVNormalized(t){t!==this._sideUVNormalized&&(this._extrude&&(this._needsUpdate=!0),this._sideUVNormalized=t)}get sideUVReversed(){return this._sideUVReversed}set sideUVReversed(t){t!==this._sideUVReversed&&(this._extrude&&(this._needsUpdate=!0),this._sideUVReversed=t)}get sideUVUseHeight(){return this._sideUVUseHeight}set sideUVUseHeight(t){t!==this._sideUVUseHeight&&(this._extrude&&(this._needsUpdate=!0),this._sideUVUseHeight=t)}get useUV(){return this._useUV}set useUV(t){t!==this._useUV&&(this._needsUpdate=!0,this._useUV=t)}get useNormal(){return this._useNormal}set useNormal(t){t!==this._useNormal&&(this._needsUpdate=!0,this._useNormal=t)}get needsUpdate(){return this._needsUpdate}set needsUpdate(t){this._needsUpdate=t}}const kS=new Ie,NS=pt.merge([ot.fog,ki,is,{isEmissive:{value:!1},opacity:{value:1},color:{value:[0,1,1,1]},vertexColors:{value:!1},map:{value:void 0},mapLength:{value:new j},mapSrc:{value:""},mapScale:{value:1}}]);class US extends Be{constructor(t){super(),this.type="PolygonMaterial",this.isPolygonMaterial=!0,this.fog=!0,this.transparent=!0,this.depthWrite=!0,this.depthTest=!0,this.fragmentShader=`#define GLSLIFY 1 +#include + +#ifdef USE_MAP + varying vec2 vUv; + uniform sampler2D map; + uniform vec2 mapLength; +#else + #ifdef MVT_USE_VERTEX_COLOR + varying vec4 vColor; + #endif +#endif + +uniform vec4 color; +uniform float opacity; + +#include +#include + +void main() { + #ifdef USE_MAP + gl_FragColor = texture2D(map, vec2(mod(vUv.x, mapLength.x) / mapLength.x, mod(vUv.y, mapLength.y) / mapLength.y)); + #else + #ifdef MVT_USE_VERTEX_COLOR + gl_FragColor = vColor; + #else + gl_FragColor = color; + #endif + #endif + + gl_FragColor.a *= opacity; + if (gl_FragColor.a <= 0.) { + discard; + } + + #include + #include + #include + #include + #include + +} + +`,this.vertexShader=`#define GLSLIFY 1 +#include +#include + +#ifdef USE_MAP + varying vec2 vUv; + uniform float mapScale; +#else + #ifdef MVT_USE_VERTEX_COLOR + attribute vec4 aColor; + varying vec4 vColor; + #endif +#endif + +#include +#include + +void main() { + + #include + + #ifdef USE_MAP + vUv = uv / mapScale; + #else + #ifdef MVT_USE_VERTEX_COLOR + vColor = aColor; + #endif + #endif + + #include + #include + + #include + #include + +} + +`,Object.defineProperty(this,"mapSrc",{get:function(){return this.uniforms.map.value},set:function(e){const i=this.mapSrc,n=this.userData[this.urlCacheKey],r=this;if(n!==e){if(i&&i.dispose(),!e)return this.uniforms.map.value=null,delete this.defines.USE_MAP,void delete this.userData[this.urlCacheKey];kS.load(e,function(a){a.encoding=3001,r.uniforms.map.value=a,r.uniforms.mapLength.value=new j(a.image.naturalWidth,a.image.naturalHeight),r.userData[r.urlCacheKey]=e,r.defines.USE_MAP=!0,r.needsUpdate=!0})}}}),Object.assign(this.uniforms,pt.clone(NS)),t.mapSrc&&(this.mapSrc=t.mapSrc,delete t.mapSrc),jt(this,["opacity","mapScale","isEmissive"]),Bs(this,["color"]),Qe(this,[["vertexColors","MVT_USE_VERTEX_COLOR"]]),ns(this),ss(this),this.emissiveEnabled=!0,this.emissive=[0,0,0],this.setValues(t)}dispose(){this.uniforms.map.value&&this.uniforms.map.value.dispose(),super.dispose()}}class fs extends as{constructor(t){super(),d(this,"isEventEntitySupported",!0),d(this,"geometry"),d(this,"material"),d(this,"extrude"),d(this,"extrudeValue"),d(this,"color"),d(this,"vertexColors"),d(this,"emissive"),d(this,"opacity"),d(this,"mapSrc"),d(this,"mapScale"),this.parameters=t,this.defineGeometryProxyProperties(["extrude","extrudeValue","vertexHeights","enableBottomFace","zOffset"]),this.defineMaterialProxyProperties(["opacity","color","vertexColors","emissive","mapSrc","mapScale","side","depthWrite","colorWrite","stencilWrite","stencilFunc","stencilZFail","stencilZPass"])}initObject(){const{extrude:t,extrudeValue:e,vertexHeights:i,enableBottomFace:n,zOffset:r,...a}=this.parameters;this.geometry=new zS(this.parameters),(this.material=new US(a)).setCommonUniforms(this.engine.rendering.uniforms)}setData(){let t=this.dataSource.data;this.geometry.setData(t),this.geometry.computeBoundingSphere(),this.makeGeometryOffsetPosition(this.geometry,this.geometry.cachedPositions),this.geometry.computeBoundingSphere(),this.geometry.computeBoundingBox(),this.needsUpdate=!1}afterGeometryUpdate(){this.makeGeometryOffsetPosition(this.geometry,this.geometry.cachedPositions),this.geometry.computeBoundingSphere(),this.geometry.computeBoundingBox()}getEntityIndexByFace(t,e){return this.geometry.cachedObjectIndices[e]}raycast(t,e){lt.prototype.raycast.call(this,t,e)}}const U_=new rt,Qu=new vr,mh=new mi;class sr extends as{constructor(t){super(),d(this,"isEventEntitySupported",!0),d(this,"_dataSource",new ee),d(this,"geometry"),d(this,"material"),d(this,"lineJoin"),d(this,"lineCap"),d(this,"miterLimit"),d(this,"keepSize"),d(this,"color"),d(this,"vertexColors"),d(this,"emissive"),d(this,"map"),d(this,"opacity"),d(this,"alphaTest"),d(this,"dashed"),d(this,"dashArray"),d(this,"dashOffset"),d(this,"dashRatio"),d(this,"enbaleAnimation"),d(this,"enableAnimationChaos"),d(this,"animationSpeed"),d(this,"animationTailType"),d(this,"animationTailRatio"),d(this,"animationTailLength"),d(this,"animationIdle"),this.parameters=t,this.defineGeometryProxyProperties(["lineJoin","lineCap","miterLimit"]),this.defineMaterialProxyProperties(["map","mapGap","height","keepSize","opacity","alphaTest","dashed","dashArray","dashOffset","dashRatio","enableAnimation","enableAnimationChaos","animationInterval","animationSpeed","animationTailType","animationTailRatio","animationTailLength","animationIdle","color","vertexColors","vertexWidths","emissive"])}createVolumeDataSource(){const{data:t,userData:e,_attributeMap:i}=this.dataSource;let n=1;if(this.keepSize){const l=this.engine.map.getZoomUnits();l===Math.min()||Number.isNaN(l)||(n=l)}const r={position:this.geometry.createVolumeGeometry(t.position,n),index:t.index,payload:e},a=new ee;let o=i.keys();for(let l of o){const h=i.get(l);typeof h=="string"?a.setAttribute(l,h):a.setAttribute(l)}return a.setData(r),a}specifiedVolumeClass(){this._VolumeClass=fs}getDefaultParams(){return{lineWidth:4}}initObject(){const{lineJoin:t,lineCap:e,...i}=this.parameters;this.geometry=new MS(this.parameters),(this.material=new TS(i)).setCommonUniforms(this.engine.rendering.uniforms)}setData(){const t=this.dataSource.data;this.geometry.setData(t),this.geometry.computeBoundingSphere(),this.geometry.computeBoundingBox(),this.makeGeometryOffsetPosition(this.geometry,this.geometry.cachedPositions),this.needsUpdate=!1}get lineWidth(){return this.parameters.lineWidth}set lineWidth(t){this.parameters.lineWidth=t}raycast(t,e){const i=this.geometry,n=this.matrixWorld,r=t.params.Line.threshold,a=i.drawRange;let o=this.lineWidth/2;if(this.material.keepSize&&(o*=this.material.uniforms.zoomUnits.value),i.boundingSphere===null&&i.computeBoundingSphere(),mh.copy(i.boundingSphere),mh.applyMatrix4(n),mh.radius+=o,t.ray.intersectsSphere(mh)===!1)return;U_.copy(n).invert(),Qu.copy(t.ray).applyMatrix4(U_);const l=o/((this.scale.x+this.scale.y+this.scale.z)/3),h=l*l,c=new M,u=new M,p=new M,m=new M;if(i.isBufferGeometry){const f=i.index,g=i.attributes,_=g.position,v=g.objectIndex;if(f!==null)for(let x=Math.max(0,a.start),y=Math.min(f.count,a.start+a.count)-1;xh)continue;m.applyMatrix4(this.matrixWorld);const w=t.ray.origin.distanceTo(m);wt.far||e.push({distance:w,point:p.clone().applyMatrix4(this.matrixWorld),index:v.getX(b),face:null,faceIndex:null,object:this})}else for(let x=Math.max(0,a.start),y=Math.min(_.count,a.start+a.count)-1;xh)continue;m.applyMatrix4(this.matrixWorld);const b=t.ray.origin.distanceTo(m);bt.far||e.push({distance:b,point:p.clone().applyMatrix4(this.matrixWorld),index:x,face:null,faceIndex:null,object:this})}}t.params.Line.threshold=r}}class FS extends Pt{constructor(t){super(),d(this,"isWallGeometry",!0),d(this,"_needsUpdate",!1),this.parameters=t}setData(t){this._needsUpdate=!0,this.cachedData=t,this.updateGeometry()}updateGeometry(){let t=this.cachedData;const e=[],i=[],n=[],r=[],a=[],o=[],l=[];for(let h=0;h +#include +#include + +#include +varying vec3 vLightFront; +varying vec3 vIndirectFront; + +uniform sampler2D map; +uniform bool useMap; +uniform float minOpacity; +uniform float maxOpacity; +uniform float opacity; +uniform float elapsedTime; + +varying vec2 vUV; +varying vec4 vColor; +varying float vCounter; +varying float vDistance; +varying float vTotalDistance; + +#ifdef USE_ANIMATION +uniform float animationRatio; +uniform float animationBales; +uniform float animationSpeed; +varying float vAnimationOpacity; +varying float vAnimationTailType; +#endif + +void main() { + + vec4 c = vColor; + + if(useMap) { + vec4 texture = texture2D(map, vec2(vUV.x / vTotalDistance, vUV.y)); + c *= texture; + } + + #ifdef USE_ANIMATION + if (vAnimationOpacity > 1.0 || vAnimationOpacity < 0.0) { + c.a = 0.0; + } + + if(vAnimationTailType == 4.) { + float ratio = animationRatio; + float bales = animationBales; + if(animationRatio > 1.) { + ratio = 1.; + } + if(animationRatio < .0) { + ratio = .0; + } + if(animationBales < 1.) { + bales = 1.; + } + if(mod((vUV.y - elapsedTime * animationSpeed * .0001), 1./bales) < ratio / bales) { + c.a = (1. - vUV.y) * maxOpacity; + } else { + c.a = minOpacity; + } + } else { + c.a *= vAnimationOpacity; + } + #endif + + gl_FragColor = c; + gl_FragColor.a *= opacity; + + if (maxOpacity > minOpacity) { + gl_FragColor.a = clamp(gl_FragColor.a, minOpacity, maxOpacity); + } + + #include + #include +}`,this.vertexShader=`#define GLSLIFY 1 +#include +#include +#include +#include +#ifdef USE_A_COLOR +attribute vec4 aColor; +#endif + +attribute float counter; +attribute float totalDistance; +attribute float distances; + +uniform float elapsedTime; +uniform bool vertexColors; +uniform vec4 uColor; +uniform float opacity; + +varying vec2 vUV; +varying vec4 vColor; +varying float vCounter; +varying float vDistance; +varying float vTotalDistance; + +#ifdef USE_ANIMATION +uniform float animationSpeed; +uniform float animationTailType; +varying float vAnimationTailType; +uniform float animationTailRatio; +uniform float animationTailLength; +uniform float animationIdle; +varying float vAnimationOpacity; +#endif + +void main() { + + #ifdef USE_A_COLOR + vColor = aColor; + #else + vColor = uColor; + #endif + + vUV = uv; + vCounter = counter; + vDistance = distances; + vTotalDistance = totalDistance; + + gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0); + + #ifdef USE_ANIMATION + if (animationTailType < 3.0) { + float tailLength = animationTailType == 1.0 ? totalDistance * animationTailRatio : animationTailLength; + float currentLength = mod(elapsedTime * animationSpeed, totalDistance + tailLength + animationIdle * animationSpeed); + vAnimationOpacity = (distances - (currentLength - tailLength)) / tailLength; + } + else if (animationTailType == 3.0) { + vAnimationOpacity = 1.0 - mod(elapsedTime * animationSpeed / 1000.0, 1.0) + uv.y; + } + else if (animationTailType == 4.0) { + vAnimationTailType = animationTailType; + } + #endif + + #include + vec4 mvPosition = modelViewMatrix * vec4(position, 1.0); + #include + + #include +}`,Object.assign(this.uniforms,pt.clone(VS)),jt(this,["map","minOpacity","maxOpacity","opacity","elapsedTime","animationSpeed","animationTailType","animationTailRatio","animationTailLength","animationIdle","animationBales","animationRatio","isEmissive"]),_i(this,[["color","uColor",es]]),Qe(this,[["vertexColors","USE_A_COLOR"],["enableAnimation","USE_ANIMATION"]]),ss(this),Object.defineProperties(this,{mapSrc:{get:function(){return this.uniforms.map.value},set:function(e){const i=this.mapSrc,n="url_map";if(this.userData[n]===e)return;if(i&&i.dispose(),!e)return this.uniforms.map.value=null,this.uniforms.useMap.value=!1,void delete this.userData[n];const r=BS.load(e);r.wrapS=r.wrapT=ue,this.uniforms.map.value=r,this.userData[n]=e,this.uniforms.useMap.value=!0}}}),this.emissiveEnabled=!0,this.emissive=[0,0,0],this.setValues(t)}dispose(){this.uniforms.map.value&&this.uniforms.map.value.dispose(),super.dispose()}}class F_ extends as{constructor(t){super(),d(this,"geometry"),d(this,"material"),d(this,"height"),d(this,"color"),d(this,"vertexColors"),d(this,"emissive"),d(this,"map"),d(this,"opacity"),d(this,"minOpacity"),d(this,"maxOpacity"),d(this,"enableAnimation"),d(this,"animationSpeed"),d(this,"animationTailType"),d(this,"animationTailRatio"),d(this,"animationTailLength"),d(this,"animationIdle"),d(this,"animationRatio"),d(this,"animationBales"),this.parameters=t,this.defineGeometryProxyProperties(["height"]),this.defineMaterialProxyProperties(["color","vertexColors","emissive","map","opacity","minOpacity","maxOpacity","enableAnimation","animationSpeed","animationTailType","animationTailRatio","animationTailLength","animationIdle","animationBales","animationRatio"])}getDefaultParams(){return{height:100}}initObject(){const{height:t,...e}=this.parameters;this.geometry=new FS(this.parameters),(this.material=new HS(e)).setCommonUniforms(this.engine.rendering.uniforms)}setData(){const t=this.dataSource.data;this.geometry.setData(t),this.geometry.computeBoundingSphere(),this.geometry.computeBoundingBox(),this.makeGeometryOffsetPosition(this.geometry,this.geometry.cachedPositions),this.needsUpdate=!1}}class jS extends rh{constructor(t){super(t),d(this,"isLightSphereGeometry",!0),d(this,"_needsUpdate",!1),d(this,"setModelData",()=>{this._needsUpdate=!0,this.updateGeometry()}),this.type="LightSphereGeometry",this.parameters=t,this.setModelData()}updateGeometry(){const t=[],e=[],i=[],n=[];let r=this.parameters.radius||10,a=this.parameters.widthSegments||32,o=this.parameters.heightSegments||16,l=this.parameters.phiStart||0,h=this.parameters.phiLength||2*Math.PI,c=this.parameters.thetaStart||0,u=this.parameters.thetaLength||Math.PI;this.parameters.widthSegments=Math.max(3,Math.floor(a)),this.parameters.heightSegments=Math.max(2,Math.floor(o));const p=Math.min(c+u,Math.PI);let m=0;const f=[],g=new M,_=new M;for(let v=0;v<=o;v++){const x=[],y=v/o;let b=0;v===0&&c===0?b=.5/a:v===o&&p===Math.PI&&(b=-.5/a);for(let S=0;S<=a;S++){const w=S/a;g.x=-r*Math.cos(l+w*h)*Math.sin(c+y*u),g.y=r*Math.cos(c+y*u),g.z=r*Math.sin(l+w*h)*Math.sin(c+y*u),e.push(g.x,g.y,g.z),_.copy(g).normalize(),i.push(_.x,_.y,_.z),n.push(w+b,1-y),x.push(m++)}f.push(x)}for(let v=0;v0)&&t.push(y,b,w),(v!==o-1||p + +varying vec3 vNormal; +uniform float elapsedTime; +uniform bool animationEffect; +uniform float animationEffectPeriod; + +void main() { + vNormal = normalize(normalMatrix * normal); // 顶点的法向量执行插值计算 + if (animationEffect) { + float scaleRatio = mod(elapsedTime, animationEffectPeriod) / animationEffectPeriod; + float t = sin(scaleRatio * 2.0 * PI) * 0.5 + 0.5; + vec3 newPosition = mix(position, position * 2.0, t); + gl_Position = projectionMatrix * modelViewMatrix * instanceMatrix * vec4(newPosition, 1.0); + } + else { + gl_Position = projectionMatrix * modelViewMatrix * instanceMatrix * vec4(position, 1.0); + } +}`,this.fragmentShader=`#define GLSLIFY 1 +#include + +varying vec3 vNormal; +uniform vec4 color; + +void main() { + vec3 z = vec3(0.0, 0.0, 1.0); // z轴方向单位向量 + float x = abs(dot(vNormal, z)); // 点乘结果余弦值绝对值范围[0,1] + float alpha = pow(1.0 - x, 2.0); + gl_FragColor = vec4(vec3(color[0], color[1], color[2]), alpha); +}`,Object.assign(this.uniforms,pt.clone(GS)),jt(this,["maxHeight","isEmissive"]),this.setValues(t)}}class $u extends rh{constructor(t){super(t),d(this,"_needsUpdate",!1),d(this,"setModelData",()=>{this._needsUpdate=!0,this.updateGeometry()}),this.parameters={...t,radiusTop:t.radiusTop||t.radius||6,radiusBottom:t.radiusBottom||t.radius||6,height:t.height||50,openEnded:t.openEnded||!1,color:t.color||[80,20,170,.8],isLight:t.isLight||!0,lightPos:t.lightPos||60},this.parameters.radialSegments=t.radialSegments?Math.floor(t.radialSegments):4,this.parameters.heightSegments=t.heightSegments?Math.floor(t.heightSegments):1,this.setModelData()}updateGeometry(){const t=[],e=[],i=[],n=[],r=[];let a={index:0,indexArray:[],halfHeight:0,groupStart:0};this.generateTorso(t,e,i,n,r,a),this.parameters.openEnded===!1&&(this.parameters.radiusTop>0&&this.generateCap(!0,t,e,i,n,r,a),this.parameters.radiusBottom>0&&this.generateCap(!1,t,e,i,n,r,a)),this.addCustomGeometry(t,e,i,n,r,a),this.setIndex(t),this.setAttribute("position",new et(e,3)),this.setAttribute("normal",new et(i,3)),this.setAttribute("uv",new et(n,2)),this.addCustomAttribute(r),this._needsUpdate=!1}addCustomGeometry(){}addCustomAttribute(){}generateCap(t,e,i,n,r,a,o){}generateTorso(t,e,i,n,r,a){}get needsUpdate(){return this._needsUpdate}set needsUpdate(t){this._needsUpdate=t}}class XS extends $u{constructor(t){super(t),this.type="GridGeometry",this.parameters.multiColor=t.multiColor||[],this.parameters.isMultiColor=t.isMultiColor||!1}generateTorso(t,e,i,n,r,a){const o=new M,l=new M;let h=0;const c=(this.parameters.radiusBottom-this.parameters.radiusTop)/this.parameters.height;for(let u=0;u<=this.parameters.heightSegments;u++){const p=[],m=u/this.parameters.heightSegments,f=(1-m)*this.parameters.radiusBottom+m*this.parameters.radiusTop;for(let g=0;g<=this.parameters.radialSegments;g++){const _=g/this.parameters.radialSegments,v=2*_*Math.PI,x=Math.sin(v),y=Math.cos(v);l.x=f*x,l.y=f*y,l.z=m*this.parameters.height,e.push(l.x,l.y,l.z),this.parameters.isMultiColor&&Array.isArray(this.parameters.multiColor)&&this.addMultiColors("torso",r,l.z),o.set(x,y,c).normalize(),i.push(o.x,o.y,o.z),n.push(_,m),p.push(a.index++)}a.indexArray.push(p)}for(let u=0;uYi(r));if(t==="cap")i===this.parameters.height?e.push(...n[n.length-1]):e.push(...n[0]);else if(t==="torso"&&this.parameters.heightSegments<=n.length){const r=this.parameters.height/this.parameters.heightSegments;for(let a=0;a<=this.parameters.heightSegments;a++)i===r*a&&e.push(...n[a])}}}const qS=pt.merge([{color:{value:[0,.7,.9,1]},lightPos:{value:60},isEmissive:{value:!1}}]);class YS extends sn{constructor(t){super(t),d(this,"type","GridMaterial"),d(this,"isGridMaterial",!0),this.vertexShader=`#define GLSLIFY 1 +#include + +attribute vec4 mColor; + +varying vec3 vPosition; +varying vec4 vColor; +uniform vec4 color; + +void main() { + + #ifdef USE_MULTICOLOR + vColor = mColor; + #else + vColor = color; + #endif + + vPosition = position; + + gl_Position = projectionMatrix * modelViewMatrix * instanceMatrix * vec4(position, 1.0); +}`,this.fragmentShader=`#define GLSLIFY 1 +#include + +varying vec3 vPosition; +uniform vec4 color; +uniform float lightPos; +varying vec4 vColor; + +void main() { + + #ifdef USE_LIGHT + float a = 1.0 - vPosition.z / lightPos; + if (a <= 0.) { + discard; + } + #else + float a = 1.0; + #endif + + gl_FragColor = vec4(vec3(vColor[0], vColor[1], vColor[2]), a); +}`,this.side=ce,this.transparent=!0,Object.assign(this.uniforms,pt.clone(qS)),jt(this,["lightPos","isEmissive"]),Qe(this,[["isMultiColor","USE_MULTICOLOR"],["isLight","USE_LIGHT"]]),this.setValues(t)}}class ZS extends $u{constructor(t){super(t),this.type="PillarGeometry"}generateTorso(t,e,i,n,r,a){const o=new M,l=new M;let h=0;for(let c=0;c<=this.parameters.heightSegments;c++){const u=[],p=c/this.parameters.heightSegments,m=this.parameters.radius;for(let f=0;f<=this.parameters.radialSegments;f++){const g=f/this.parameters.radialSegments,_=2*g*Math.PI,v=Math.sin(_),x=Math.cos(_);l.x=m*v,l.y=m*x,this.parameters.vertexHeights?l.z=p:l.z=p*this.parameters.height,e.push(l.x,l.y,l.z),o.set(v,x,0).normalize(),i.push(o.x,o.y,o.z),n.push(g,p),u.push(a.index++)}a.indexArray.push(u)}for(let c=0;c + +uniform float maxHeight; +varying vec2 vUv; + +#include +void main() { + gl_Position = projectionMatrix * modelViewMatrix * instanceMatrix * vec4(position, 1.0); + + #ifdef MVT_USE_VERTEX_HEIGHT + float instanceHeight = instanceMatrix[2][2]; + vUv = vec2(uv.x, uv.y * (instanceHeight / maxHeight)); + #else + vUv = uv; + #endif + + #include +}`,this.fragmentShader=`#define GLSLIFY 1 +#include + +uniform sampler2D gradientMap; +uniform float opacity; + +varying vec2 vUv; + +#include +void main() { + gl_FragColor = texture2D(gradientMap, vUv.yx); + gl_FragColor.a *= opacity; + + #include +}`,this.side=ce,this.transparent=!0,jt(this,["maxHeight","isEmissive"]),Qe(this,[["vertexHeights","MVT_USE_VERTEX_HEIGHT"]]),Object.assign(this.uniforms,pt.clone(JS)),this._cachedGradient=null,Object.defineProperties(this,{gradient:{get:function(){return this._cachedGradient},set:function(e){this._cachedGradient=e,this.updateGradientMap()}}}),this.createGradientMap(),this.uniforms.gradientMap.value=this._cachedGradientMap,this.setValues(t)}createGradientMap(){let t=document.createElement("canvas");t.width=64,t.height=2;let e=t.getContext("2d"),i=e.createLinearGradient(0,0,64,0);i.addColorStop(0,"rgba(0,0,255,1)"),i.addColorStop(.3,"rgba(0,255,0,1)"),i.addColorStop(.6,"rgba(255,255,0,1)"),i.addColorStop(1,"rgba(255,0,0,1)"),e.fillStyle=i,e.fillRect(0,0,64,2),this._cachedGradientMap=new Le(t)}updateGradientMap(){let t=this._cachedGradient;if(Object.prototype.toString.call(t)!=="[object Object]")return;let e=this._cachedGradientMap.image.getContext("2d");e.clearRect(0,0,64,2);let i=e.createLinearGradient(0,0,64,0);for(const n in t)Object.hasOwnProperty.call(t,n)&&i.addColorStop(n,t[n]);e.fillStyle=i,e.fillRect(0,0,64,2),this._cachedGradientMap.needsUpdate=!0}dispose(){this._cachedGradientMap&&this._cachedGradientMap.dispose(),super.dispose()}}class QS extends $u{constructor(t){super(t),this.type="PillarGeometry"}addRadiusFunc(t){return 1-Math.sqrt(t)}generateTorso(t,e,i,n,r,a){const o=new M;let l=0;for(let h=0;h<=this.parameters.heightSegments;h++){const c=[],u=h/this.parameters.heightSegments;let p=this.addRadiusFunc(u);this.parameters.vertexSizes||(p*=this.parameters.size);for(let m=0;m<=this.parameters.radialSegments;m++){const f=m/this.parameters.radialSegments,g=2*f*Math.PI,_=Math.sin(g),v=Math.cos(g);o.x=p*_,o.y=p*v,this.parameters.vertexHeights?o.z=u:o.z=u*this.parameters.height,e.push(o.x,o.y,o.z),n.push(f,u),c.push(a.index++)}a.indexArray.push(c)}for(let h=0;h + +uniform float maxHeight; +uniform int sphereIndex; +varying vec2 vUv; + +#include +void main() { + // 球体和非球体部分使用不同的规则 + if(gl_VertexID < sphereIndex) { + gl_Position = projectionMatrix * modelViewMatrix * instanceMatrix * vec4(position, 1.0); + } else { + float xOffset = instanceMatrix[3][0]; + float yOffset = instanceMatrix[3][1]; + float height = instanceMatrix[2][2]; + gl_Position = projectionMatrix * modelViewMatrix * vec4(position.x + xOffset + , position.y + yOffset + , position.z + height, 1.0); + } + + #ifdef MVT_USE_VERTEX_HEIGHT + float instanceHeight = instanceMatrix[2][2]; + vUv = vec2(uv.x, uv.y * (instanceHeight / maxHeight)); + #else + vUv = uv; + #endif + + #include +} +`,this.fragmentShader=`#define GLSLIFY 1 +#include + +uniform sampler2D gradientMap; +uniform float opacity; + +varying vec2 vUv; + +#include +void main() { + gl_FragColor = texture2D(gradientMap, vUv.yx); + gl_FragColor.a *= opacity; + + #include +}`,this.side=Fn,this.transparent=!0,jt(this,["maxHeight","sphereIndex","isEmissive"]),Qe(this,[["vertexHeights","MVT_USE_VERTEX_HEIGHT"]]),Object.assign(this.uniforms,pt.clone($S)),this._cachedGradient=null,Object.defineProperties(this,{gradient:{get:function(){return this._cachedGradient},set:function(e){this._cachedGradient=e,this.updateGradientMap()}}}),this.createGradientMap(),this.uniforms.gradientMap.value=this._cachedGradientMap,this.setValues(t)}createGradientMap(){let t=document.createElement("canvas");t.width=64,t.height=2;let e=t.getContext("2d"),i=e.createLinearGradient(0,0,64,0);i.addColorStop(0,"rgba(0,0,255,1)"),i.addColorStop(.3,"rgba(0,255,0,1)"),i.addColorStop(.6,"rgba(255,255,0,1)"),i.addColorStop(1,"rgba(255,0,0,1)"),e.fillStyle=i,e.fillRect(0,0,64,2),this._cachedGradientMap=new Le(t)}updateGradientMap(){let t=this._cachedGradient;if(Object.prototype.toString.call(t)!=="[object Object]")return;let e=this._cachedGradientMap.image.getContext("2d");e.clearRect(0,0,64,2);let i=e.createLinearGradient(0,0,64,0);for(const n in t)Object.hasOwnProperty.call(t,n)&&i.addColorStop(n,t[n]);e.fillStyle=i,e.fillRect(0,0,64,2),this._cachedGradientMap.needsUpdate=!0}dispose(){this.uniforms.map.value&&this.uniforms.map.value.dispose(),super.dispose()}}const B_=new Us,e2=new ai(new M(0,0,1),0),fh=new M;class td extends St{constructor(t={}){super(t),d(this,"_container"),d(this,"_point"),d(this,"_dom"),d(this,"_div"),d(this,"_visible"),d(this,"_offset"),d(this,"_stopPropagation",!1),d(this,"_enableDragging"),d(this,"handleMouseDown",e=>{const i=this.engine.rendering.canvas.getBoundingClientRect();this._sub=new j().set(this._screenPos.x-e.x+i.left,this._screenPos.y-e.y+i.top),(this.stopPropagation||this.enableDragging)&&e.stopPropagation(),this.dom.addEventListener(vt.MOVE,this.handleMouseMove)}),d(this,"handleMouseUp",e=>{this.dom.removeEventListener(vt.MOVE,this.handleMouseMove)}),d(this,"handleMouseMove",e=>{e.preventDefault();const i=this.engine,n=i.rendering.canvas.getBoundingClientRect(),r=e.clientX+this._sub.x-n.left,a=e.clientY+this._sub.y-n.top,o=r/n.width*2-1,l=1-2*a/n.height;B_.setFromCamera({x:o,y:l},i.rendering.camera),B_.ray.intersectPlane(e2,fh);const h=[fh.x,fh.y,fh.z],c=i.map.unprojectPointArr(h);this.point=[c[0],c[1],this.point[2]]}),d(this,"handleWheel",e=>{(this.stopPropagation||this.enableDragging)&&e.stopPropagation()}),this.isDOMOverlay=!0,this.parameters=t,this._point=t.point||[],this._offset=t.offset||[0,0],this._className=t.className||"",this._enableDragging=t.enableDragging||!1,this._visible=!("visible"in t)||t.visible,this._div=document.getElementById(`${te}-overlay`),this._div||(this._div=document.createElement("div"),this._div.id=`${te}-overlay`,xt(this._div,`${te}-overlay-pane`))}afterAddToEngine(t){this.engine=t;const e=t.container,i=e instanceof HTMLElement||e&&typeof e=="object"&&e.nodeType===1&&typeof e.nodeName=="string";this._container=i?e:e.container||e._container,document.getElementById(`${te}-overlay`)||this._container.appendChild(this._div),this.dom=this.initDom(),this.point=this._point,this.offset=this._offset,this.className=this._className,this.enableDragging=this._enableDragging,this.visible=this._visible,this.afterInit()}beforeRemoveFromEngine(t){this.dispose()}initDom(){if(this.parameters.dom)return this.parameters.dom;console.warn("`DOMOverlay` must contain a property `dom`.")}afterInit(){}onBeforeScenePrepareRender(t,e,i){if(this.dom&&this.visible){this.camera=i,this.renderer=t.renderer;let n=new j;t.renderer.getSize(n);const r=this.position.clone().project(i),a=(1+r.x)*n.x/2,o=(1-r.y)*n.y/2,l=this.dom.clientWidth,h=this.dom.clientHeight;let c,u,p=a-l/2+this.offset[0],m=a+l/2+this.offset[0];if(this.isPopup?(c=o-h+this.offset[1],u=o+this.offset[1]):(c=o-h/2+this.offset[1],u=o+h/2+this.offset[1]),m<0||p>n.x||u<0||c>n.y)return void(this.dom.style.visibility!=="hidden"&&(this.dom.style.visibility="hidden"));if(this.dom.style.position="absolute",this.dom.style.visibility==="hidden"&&(this.dom.style.visibility="visible"),this.dom.style.left=p+"px",this.dom.style.top=c+"px",this.enableDragging){const f=new M(this.position.x,this.position.y,0).clone().project(i),g=(1+f.x)*n.x/2,_=(1-f.y)*n.y/2;this._screenPos=new j().set(g,_)}}}onDispose(){}dispose(){this.onDispose(),this.enableDragging&&(this.dom.removeEventListener(vt.DOWN,this.handleMouseDown),this.dom.removeEventListener(vt.UP,this.handleMouseUp)),this.dom.removeEventListener("wheel",this.handleWheel),this.dom.remove(),this._div.childElementCount===0&&this._div.remove()}get dom(){return this._dom}set dom(t){if(this._dom&&(this.enableDragging&&(this._dom.removeEventListener(vt.DOWN,this.handleMouseDown),this._dom.removeEventListener(vt.UP,this.handleMouseUp)),this._div.removeChild(this._dom)),typeof t=="string"){const e=document.createElement("div");xt(e,`${te}-dom-overlay-custom`);const i=new DOMParser().parseFromString(t,"text/html").body.children;for(let n=0;n1&&(this._point=t,this.engine&&this.position.set(...this.engine.map.projectPointArr(t)))}get visible(){return this._visible}set visible(t){t!==this._visible&&(this._visible=t,this.dom&&(this.dom.style.visibility=t?"visible":"hidden"))}get offset(){return this._offset}set offset(t){this._offset=t}get stopPropagation(){return this._stopPropagation}set stopPropagation(t){this._stopPropagation=t}get enableDragging(){return this._enableDragging}set enableDragging(t){this._enableDragging!==t&&(this._enableDragging=t,this.dom&&(t?(this.dom.addEventListener(vt.DOWN,this.handleMouseDown),this.dom.addEventListener(vt.UP,this.handleMouseUp),this.dom.style.cursor="pointer"):(this.dom.removeEventListener(vt.DOWN,this.handleMouseDown),this.dom.removeEventListener(vt.UP,this.handleMouseUp),this.dom.style.cursor="auto")))}get className(){return this._className}set className(t){t!==this._className&&(this.dom&&(this._className&&function(e,i){if(i)if(e.className===i)e.removeAttribute("class");else{const n=e.className.split(/ +/),r=n.indexOf(i);r!==-1&&(n.splice(r,1),e.className=n.join(" "))}else e.className=void 0}(this.dom,this._className),xt(this.dom,t)),this._className=t)}}const i2={pars:` + uniform float minAltitude; + uniform float maxAltitude; + #ifdef USE_NOISE_MAP + varying vec2 vWorldXy; + #endif + `,main_after:` + vUv.x = (clamp(position.y, minAltitude, maxAltitude) - minAltitude) / (maxAltitude - minAltitude); + vUv.y = 0.5; + #ifdef USE_NOISE_MAP + vWorldXy = worldPosition.xy; + #endif + `},n2={pars:` + #ifdef USE_NOISE_MAP + uniform sampler2D noiseMap; + uniform float noiseUvScale; + uniform float noiseScale; + uniform float noiseBais; + varying vec2 vWorldXy; + #endif + `,main_before:` + #ifdef USE_NOISE_MAP + vec2 noiseUv = mod(vWorldXy, 1000.0) * noiseUvScale; + uv.x = clamp(uv.x + noiseScale * (texture2D(noiseMap, noiseUv).y + noiseBais), 0.0, 1.0); + #endif + `,color_after:` + // diffuseColor.x = uv.x; + // diffuseColor.y = 0.0; + // diffuseColor.z = 0.0; + `},fa=new Wi(0,0,0,"ZXY"),ga=new M,s2={type:"change"},r2={type:"lock"},a2={type:"unlock"},V_=Math.PI/2;class o2 extends pn{constructor(t,e){super(),e===void 0&&(console.warn('THREE.PointerLockControls: The second parameter "domElement" is now mandatory.'),e=document.body),this.domElement=e,this.isLocked=!1,this.minPolarAngle=0,this.maxPolarAngle=Math.PI,this.pointerSpeed=1;const i=this;function n(o){if(i.isLocked===!1)return;const l=o.movementX||o.mozMovementX||o.webkitMovementX||0,h=o.movementY||o.mozMovementY||o.webkitMovementY||0;fa.setFromQuaternion(t.quaternion),fa.z-=.002*l*i.pointerSpeed,fa.x-=.002*h*i.pointerSpeed,fa.x=Math.max(V_-i.maxPolarAngle,Math.min(V_-i.minPolarAngle,fa.x)),t.quaternion.setFromEuler(fa),i.dispatchEvent(s2)}function r(){i.domElement.ownerDocument.pointerLockElement===i.domElement?(i.dispatchEvent(r2),i.isLocked=!0):(i.dispatchEvent(a2),i.isLocked=!1)}function a(){console.error("THREE.PointerLockControls: Unable to use Pointer Lock API")}this.connect=function(){i.domElement.ownerDocument.addEventListener("mousemove",n),i.domElement.ownerDocument.addEventListener("pointerlockchange",r),i.domElement.ownerDocument.addEventListener("pointerlockerror",a)},this.disconnect=function(){i.domElement.ownerDocument.removeEventListener("mousemove",n),i.domElement.ownerDocument.removeEventListener("pointerlockchange",r),i.domElement.ownerDocument.removeEventListener("pointerlockerror",a)},this.dispose=function(){this.disconnect()},this.getObject=function(){return t},this.getDirection=function(){const o=new M(0,0,-1);return function(l){return l.copy(o).applyQuaternion(t.quaternion)}}(),this.moveForward=function(o){ga.setFromMatrixColumn(t.matrix,0),ga.crossVectors(t.up,ga),t.position.addScaledVector(ga,o)},this.moveRight=function(o){ga.setFromMatrixColumn(t.matrix,0),t.position.addScaledVector(ga,o)},this.lock=function(){this.domElement.requestPointerLock()},this.unlock=function(){i.domElement.ownerDocument.exitPointerLock()},this.connect()}}const H_="follow",l2="lock",h2="unlock",c2="keyFrame",u2="activeFrame";class yo extends St{constructor(){super(...arguments),d(this,"_enabled",!1),d(this,"_drawedGraph",[]),d(this,"_transformBox",null),d(this,"_trnasformIndex",null),d(this,"_completedDataSource",null),d(this,"_completedElement",null),d(this,"_selectedIndex",-1),d(this,"_stage",0),d(this,"_isAdd",!1)}afterAddToEngine(){this.initObjects()}initObjects(){}initEvents(){}reset(){this.clearBuffers(),this._trnasformIndex=null,this._transformBox=null,this._stage=0}clearAll(){this.complete(),this._drawedGraph=[],this._completedDataSource.setData(),this._engine.requestRender()}attachTransform(t,e="z"){const i=new oe(1,1,1),n=new ae;this._transformBox=new lt(i,n),this._transformBox.position.set(...t);let r=this._getNodeNormal(this._transformIndex).angle();this._transformBox.rotation[e]=r,this._transformBox.scale.set(2,2,2),this._engine.add(this._transformBox),this._transformBox.visible=!1,this._engine.selection.attachTransform(this._transformBox)}detachTransform(){this._transformBox&&(this._engine.selection.transformControl.removeEventListener("objectChange",this._handleTransformChanging),this._engine.selection.transformControl.removeEventListener("mouseUp",this._handleTransformChanged),this._engine.selection.detachTransform(),this._engine.remove(this._transformBox),this._transformBox=null)}_getTransformBoxState(){const t=this._transformBox,e=new M,i=new M,n=new Ht,r=new Wi;t.matrixWorld.decompose(e,n,i),r.setFromQuaternion(n);const a=this._engine,o=[e.x,e.y,e.z],l=a.map.unprojectPointArr(o),h=[r.x,r.y,r.z],c=i.x,u=i.y;return{point:l,position:o,width:c,height:i.z,length:u,angle:h}}clearBuffers(){}unbindEvents(){}_getNodeNormal(){return new j(0,0)}complete(){if(this._stage!==1&&this._enabled){if(this._isAdd){const t=this.graphInfo(this.drawedGraph.length);this._drawedGraph.push(t)}else if(this._selectedIndex!==-1){const t=this.graphInfo(this._selectedIndex);this._drawedGraph.splice(this._selectedIndex,1,t)}this._completedDataSource.setData();for(let t=0;t0){const i=this.drawedGraph[0].dataItem.position;e=this._completedDataSource._getDataTypeByCoordinates(i)}for(let i=0;ia.point),e==="Polygon"&&(r=[r])):r=n.point,t.push({type:"Feature",geometry:{type:e,coordinates:r},properties:this._getProperties(n)})}return{type:"FeatureCollection",features:t}}_getProperties(t){return{}}}class ed extends yo{constructor(t,e={}){super(),d(this,"_virtualLineBuffer",{position:[[]],index:[],payload:[]}),d(this,"_splineBuffer",{position:[[]],index:[],payload:[]}),d(this,"_helpersBuffer",{position:[],index:[],payload:[]}),d(this,"_engine"),d(this,"_options"),d(this,"_virtualLine"),d(this,"_virtualLineDataSource"),d(this,"_helpers"),d(this,"_helpersDataSource"),d(this,"_spline"),d(this,"_splineDataSource"),d(this,"_completedDataSource"),d(this,"_completedElement"),d(this,"_isAdd"),d(this,"_selectedIndex"),d(this,"_stage"),d(this,"_transformIndex"),d(this,"_lastDataItem"),d(this,"_handleCompleteClick",i=>{if(this._stage!==1){this.complete(),this._selectedIndex=i.entity.value.index,this._engine.event.unbind("click",this._handleAddClick),this._lastDataItem=this._drawedGraph.slice(this._selectedIndex,this._selectedIndex+1),this._stage=2,this._completedDataSource.setData();for(let n=0;n{this._isAdd=!0;let n=this.length;if(this._stage===0||this._stage===1){if(this._stage=1,this.length>2&&oo(i.position,this._helpersBuffer.position.slice(-1)[0]))return this.addNode(n,i.position,i.point),void this._handleAddFinish();this.addNode(n,i.position,i.point),this.dispatchEvent({type:"addNode",value:this.data}),this._engine.event.bind("mousemove",this._handleAddMove)}this._engine.requestRender()}),d(this,"_handleAddMove",i=>{let n=this._helpersBuffer.position[this.length-1],r=i.position;this._virtualLineBuffer.position[0]=[n,r],this._virtualLineBuffer.index=[0],this._virtualLineDataSource.setData(this._virtualLineBuffer),this.dispatchEvent({type:"moveNode",value:r})}),d(this,"_handleAddFinish",i=>{if(this.length!==2){if(this._stage===1){this._stage=2;let n=this.length-1;this._virtualLineDataSource.setData(),this.removeNode(n);for(let r=0;r{i.domEvent?i.event.domEvent.preventDefault():i.event.preventDefault(),!i.entity||this._stage!==2&&this._stage!==3||(this._transformIndex=i.entity.index,this.attachTransform(i.entity.position),this._stage=3,this._engine.selection.transformControl.addEventListener("objectChange",this._handleTransformChanging),this._engine.selection.transformControl.addEventListener("mouseUp",this._handleTransformChanged))}),d(this,"_handleTransformChanging",i=>{let n=this._getTransformBoxState();if(this._stage===3)if(this._transformIndex===0){let r=n.position,a=this._helpersBuffer.position[this._transformIndex+1];this._virtualLineBuffer.position[0]=[r,a],this._virtualLineBuffer.index=[0],this._virtualLineDataSource.setData(this._virtualLineBuffer)}else if(this._transformIndex===this.length-1){let r=this._helpersBuffer.position[this._transformIndex-1],a=n.position;this._virtualLineBuffer.position[0]=[r,a],this._virtualLineBuffer.index=[0],this._virtualLineDataSource.setData(this._virtualLineBuffer)}else{let r=this._helpersBuffer.position[this._transformIndex-1],a=n.position,o=this._helpersBuffer.position[this._transformIndex+1];this._virtualLineBuffer.position[0]=[r,a,o],this._virtualLineBuffer.index=[0,1],this._virtualLineDataSource.setData(this._virtualLineBuffer)}this._stage!==3&&this._stage!==4||(this.updateNode(this._transformIndex,n),this.dispatchEvent({type:"change",value:this.data}),this._stage=4)}),d(this,"_handleTransformChanged",i=>{let n=this._getTransformBoxState();this._stage===4&&(this.updateNode(this._transformIndex,n),this._virtualLineDataSource.setData(),this.dispatchEvent({type:"change",value:this.data}),this._stage=3)}),d(this,"_handleCancelEdit",i=>{this._stage===3&&(this.detachTransform(),this._stage=2)}),this._engine=t,e.lineColor||(e.lineColor="rgb(200, 200, 50)"),this._options=e}initSpline(){let t=this._splineDataSource=new ee,e=this._spline=this._engine.add(new sr({lineWidth:3,color:this._options.lineColor,keepSize:!0,lineJoin:"round"}));return e.dataSource=t,e}initVirtualLine(){let t=this._virtualLineDataSource=new ee,e=this._virtualLine=this._engine.add(new sr({lineWidth:2,color:this._options.lineColor,opacity:.2,keepSize:!0,lineJoin:"round"}));return e.dataSource=t,e}initHelpers(){let t=this._helpersDataSource=new ee,e=this._helpers=this._engine.add(new po({color:"rgba(0, 0, 0, 0)",mapSrc:Jt("assets/images/node.png"),size:10,uShapeType:1}));return e.dataSource=t,e}initCompeleteElement(){let t=this._completedDataSource=new ee,e=this._completedElement=this._engine.add(new sr({lineWidth:3,color:this._options.lineColor,keepSize:!0,lineJoin:"round"}));e.dataSource=t,this._engine.event.bind(e,"click",this._handleCompleteClick)}initObjects(){this.initSpline(),this.initHelpers(),this.initVirtualLine(),this.initCompeleteElement()}initEvents(){this._engine.event.bind("click",this._handleAddClick),this._drawedGraph.length>0&&(this._engine.event.bind("click",this._handleCancelEdit),this._engine.event.bind(this._completedElement,"click",this._handleCompleteClick))}graphInfo(t){const e=new Ni(this._splineBuffer.position[0],this._splineBuffer.payload);return e.index=t,{splineBuffer:this._splineBuffer,helpersBuffer:this._helpersBuffer,dataItem:e}}_getNodeNormal(t){if(t===0)return Ze(Ye(this._helpersBuffer.position[t],this._helpersBuffer.position[t+1]));if(t===this.length-1)return Ze(Ye(this._helpersBuffer.position[t-1],this._helpersBuffer.position[t]));let e=this._helpersBuffer.position[t-1],i=this._helpersBuffer.position[t],n=this._helpersBuffer.position[t+1],r=Ye(e,i),a=Ye(i,n),o=new j;return o.addVectors(r,a),Ze(o)}addNode(t,e,i){this._splineBuffer.position[0].splice(t,0,e),this._splineBuffer.payload.splice(t,0,{point:i,position:e,scale:2}),this._splineBuffer.index.push(this.length),this._splineDataSource.setData(this._splineBuffer),this._helpersBuffer.position.splice(t,0,e),this._helpersBuffer.payload.splice(t,0,{point:i,position:e,scale:2}),this._helpersBuffer.index.push(this.length),this._helpersDataSource.setData(this._helpersBuffer)}removeNode(t){this._splineBuffer.position[0].splice(t,1),this._splineBuffer.payload.splice(t,1),this._splineBuffer.index.pop(),this._splineDataSource.setData(this._splineBuffer),this._helpersBuffer.position.splice(t,1),this._helpersBuffer.payload.pop(),this._helpersBuffer.index.pop(),this._helpersDataSource.setData(this._helpersBuffer)}updateNode(t,e){let{point:i,position:n}=e;this._splineBuffer.position[0].splice(t,1,n),this._splineBuffer.payload.splice(t,1,{point:i,position:n,scale:e.width,angle:e.angle[2]}),this._splineDataSource.setData(this._splineBuffer),this._helpersBuffer.position.splice(t,1,n),this._helpersBuffer.payload.splice(t,1,{point:i,position:n,scale:e.width,angle:e.angle[2]}),this._helpersDataSource.setData(this._helpersBuffer)}overwriteNodes(t){this.clearBuffers();for(let e=0;e{if(this._stage!==1){this.complete(),this._selectedIndex=i.entity.value.index,this._engine.event.unbind("click",this._handleAddClick),this._lastDataItem=this._drawedGraph.slice(this._selectedIndex,this._selectedIndex+1),this._stage=2,this._completedDataSource.setData();for(let n=0;n{this._isAdd=!0,this._hasBeenMove=!1,this._stage!==0&&this._stage!==1||(this._stage=1,this.addNode(i.position,i.point),this.dispatchEvent({type:"addNode",value:this.data}),this._engine.event.unbind("click",this._handleAddClick),this._engine.event.bind("mousemove",this._handleAddMove),this._engine.event.bind("click",this._handleAddFinish))}),d(this,"_handleAddFinish",i=>{this._hasBeenMove&&(this._stage===1&&(this._stage=2),this.dispatchEvent({type:"change",value:this.data}),this._engine.requestRender(),this._engine.event.unbind("click",this._handleAddFinish),this._engine.event.unbind("mousemove",this._handleAddMove),this._engine.event.bind(this._helpers,"click",this._handleNodeClick),this._engine.event.bind("click",this._handleCancelEdit))}),d(this,"_handleNodeClick",i=>{i.domEvent?i.event.domEvent.preventDefault():i.event.preventDefault(),!i.entity||this._stage!==2&&this._stage!==3||(this._transformIndex=i.entity.index,this.attachTransform(i.entity.position),this._transformIndex?this._engine.selection.transformControl.showZ=!1:this._engine.selection.transformControl.showZ=!0,this._stage=3,this._engine.selection.transformControl.addEventListener("objectChange",this._handleTransformChanging),this._engine.selection.transformControl.addEventListener("mouseUp",this._handleTransformChanged))}),d(this,"_handleTransformChanging",i=>{let n=this._getTransformBoxState();if(this._stage===3||this._stage===4){if(this._transformIndex===0)this.moveNode(n);else{this.adjustRadius(n);let r=this._getNodeNormal().angle();this._transformBox.rotation.z=r}this.dispatchEvent({type:"change",value:this.data}),this._stage=4}}),d(this,"_handleTransformChanged",i=>{this._stage===4&&(this.dispatchEvent({type:"change",value:this.data}),this._stage=3)}),d(this,"_handleCancelEdit",i=>{this._stage===3&&(this.detachTransform(),this._engine.selection.transformControl.showZ=!0,this._stage=2)}),d(this,"_handleAddMove",i=>{const n=this._helpersBuffer.position[0],r=i.position,a=this.calcLength(n,r);this._circleBuffer.payload[0].size=2*a,this._circleDataSource.setData(this._circleBuffer),this._helpersBuffer.position[1]=r,this._helpersBuffer.payload[1]={position:r,point:i.point,scale:2},this._helpersBuffer.index[1]=1,this._helpersDataSource.setData(this._helpersBuffer),this._virtualLineBuffer.position[0]=this._helpersBuffer.position,this._virtualLineBuffer.index=this._helpersBuffer.index,this._virtualLineDataSource.setData(this._virtualLineBuffer),this.dispatchEvent({type:"moveNode",value:this.data}),this._hasBeenMove=!0}),this._engine=t,e.circleColor||(e.circleColor="rgb(200, 200, 50)"),this._options=e}initObjects(){this.initCircle(),this.initvirtualLine(),this.initHelper(),this.initCompletedElement()}initCircle(){let t=this._circleDataSource=new ee,e=this._circle=this._engine.add(new Yu({color:this._options.circleColor,borderWidth:0,opacity:.3,vertexSizes:!0}));t.setAttribute("size"),e.dataSource=t}initvirtualLine(){let t=this._virtualLineDataSource=new ee;(this._virtualLine=this._engine.add(new sr({lineWidth:2,keepSize:!0}))).dataSource=t}initHelper(){let t=this._helpersDataSource=new ee;(this._helpers=this._engine.add(new po({color:"rgba(0, 0, 0, 0)",mapSrc:Jt("assets/images/node.png"),size:10,uShapeType:1}))).dataSource=t}initCompletedElement(){let t=this._completedDataSource=new ee,e=this._completedElement=this._engine.add(new Yu({color:this._options.circleColor,borderWidth:0,opacity:.3,vertexSizes:!0}));t.setAttribute("size").setAttribute("selectedIndex"),e.dataSource=t,this._engine.event.bind(e,"click",this._handleCompleteClick)}graphInfo(t){const e=new Ni(this._circleBuffer.position[0],this._circleBuffer.payload[0]);return e.index=t,{circleBuffer:this._circleBuffer,virtualLineBuffer:this._virtualLineBuffer,helpersBuffer:this._helpersBuffer,dataItem:e}}initEvents(){this._engine.event.bind("click",this._handleAddClick),this._drawedGraph.length>0&&(this._engine.event.bind("click",this._handleCancelEdit),this._engine.event.bind(this._completedElement,"click",this._handleCompleteClick))}_getNodeNormal(){return Ze(Ye(this._helpersBuffer.position[0],this._helpersBuffer.position[1]))}calcLength(t,e){let i=Math.pow(Math.abs(t[0]-e[0]),2),n=Math.pow(Math.abs(t[1]-e[1]),2),r=Math.pow(Math.abs(t[2]-e[2]),2);return Math.pow(i+n+r,.5)}addNode(t,e){this._circleBuffer.position[0]=t,this._circleBuffer.payload[0]={point:e,position:t,scale:2,size:0},this._circleBuffer.index=[0],this._helpersBuffer.position[0]=t,this._helpersBuffer.payload[0]={point:e,position:t,scale:2,size:0},this._helpersBuffer.index=[0]}moveNode(t){let{position:e,point:i}=t;this._circleBuffer.position[0]=e,this._circleBuffer.payload[0]={...this._circleBuffer.payload[0],position:e,point:i,scale:t.width},this._circleDataSource.setData(this._circleBuffer);const n=new M(...this._helpersBuffer.position[0]),r=new M(...this._helpersBuffer.payload[0].point),a=new M(...e),o=new M(...i),l=a.sub(n),h=o.sub(r);let c=this._helpersBuffer.position;for(let u=0,p=c.length;u{if(this._stage!==1){this.complete(),this._selectedIndex=i.entity.value.index,this._engine.event.unbind("click",this._handleAddClick),this._lastDataItem=this._drawedGraph.slice(this._selectedIndex,this._selectedIndex+1),this._stage=2,this._completedDataSource.setData();for(let n=0;n{this._isAdd=!0,this._stage!==0&&this._stage!==1||(this._stage=1,this.addNode(i.position,i.point),this._engine.event.unbind("click",this._handleAddClick),this._engine.event.bind("mousemove",this._handleAddMove),this._engine.event.bind("click",this._handleAddFinish))}),d(this,"_handleAddMove",i=>{let n=this._helpersBuffer.position[0],r=this._rectBuffer.payload[0].point;const{position:a,point:o}=i,l=[[a[0],n[1],n[2]],a,[n[0],a[1],a[2]],n],h=[{point:[o[0],r[1],r[2]],position:l[0],scale:2},{point:o,position:l[1],scale:2},{point:[r[0],o[1],o[2]],position:l[2],scale:2},{point:r,position:l[3],scale:2}];this._rectBuffer.position[0][0].splice(1,4,...l),this._rectBuffer.payload.splice(1,4,...h),this._rectBuffer.index=[0,1,2,3,4],this._rectDataSource.setData(this._rectBuffer),this._helpersBuffer.position.splice(1,3,...l.slice(0,l.length-1)),this._helpersBuffer.payload=this._rectBuffer.payload.slice(0,4),this._helpersBuffer.index=[0,1,2,3],this._helpersDataSource.setData(this._helpersBuffer),this.dispatchEvent({type:"moveNode",value:this.data})}),d(this,"_handleAddFinish",i=>{if(!(this._rectBuffer.payload.length<5)){this._stage===1&&(this._stage=2);for(let n=0;n<5;n++)this._rectBuffer.payload[n].angle=this._getNodeNormal().angle();this.dispatchEvent({type:"change",value:this.data}),this._engine.requestRender(),this._engine.event.unbind("click",this._handleAddFinish),this._engine.event.unbind("mousemove",this._handleAddMove),this._engine.event.bind(this._helpers,"click",this._handleNodeClick),this._engine.event.bind("click",this._handleCancelEdit)}}),d(this,"_handleNodeClick",i=>{i.domEvent?i.event.domEvent.preventDefault():i.event.preventDefault(),!i.entity||this._stage!==2&&this._stage!==3||(this._transformIndex=i.entity.index,this.attachTransform(i.entity.position,"x"),this._stage=3,this._engine.selection.transformControl.addEventListener("objectChange",this._handleTransformChanging),this._engine.selection.transformControl.addEventListener("mouseUp",this._handleTransformChanged))}),d(this,"_handleTransformChanging",i=>{let n=this._getTransformBoxState();if(this._stage===3||this._stage===4){this.updateNode(this._transformIndex,n);let r=this._getNodeNormal(this._transformIndex).angle();this._transformBox.rotation.x=r,this.dispatchEvent({type:"change",value:this.data}),this._stage=4}}),d(this,"_handleTransformChanged",i=>{this._stage===4&&(this.dispatchEvent({type:"change",value:this.data}),this._stage=3)}),d(this,"_handleCancelEdit",i=>{this._stage===3&&(this.detachTransform(),this._stage=2)}),this._engine=t,e.rectColor||(e.rectColor="rgb(200, 200, 50)"),this._options=e}initObjects(){this.initRect(),this.initHelpers(),this.initCompletedElement()}initRect(){let t=this._rectDataSource=new ee,e=this._rect=this._engine.add(new fs({color:this._options.rectColor}));return e.material.side=ce,e.dataSource=t,e}initHelpers(){let t=this._helpersDataSource=new ee,e=this._helpers=this._engine.add(new po({color:"rgba(0, 0, 0, 0)",mapSrc:Jt("assets/images/node.png"),size:10,uShapeType:1}));return e.dataSource=t,e}initCompletedElement(){let t=this._completedDataSource=new ee,e=this._completedElement=this._engine.add(new fs({color:this._options.rectColor}));e.material.side=ce,e.dataSource=t,this._engine.event.bind(e,"click",this._handleCompleteClick)}graphInfo(t){const e=new Ni(this._rectBuffer.position[0],this._rectBuffer.payload);return e.index=t,{rectBuffer:this._rectBuffer,helpersBuffer:this._helpersBuffer,dataItem:e}}initEvents(){this._engine.event.bind("click",this._handleAddClick),this._drawedGraph.length>0&&(this._engine.event.bind("click",this._handleCancelEdit),this._engine.event.bind(this._completedElement,"click",this._handleCompleteClick))}_getNodeNormal(){let t=new M().fromArray(this._helpersBuffer.position[0]),e=new M().fromArray(this._helpersBuffer.position[1]),i=new M().fromArray(this._helpersBuffer.position[2]),n=new M().subVectors(e,t),r=new M().subVectors(e,i),a=n.z*r.x-r.z*n.x,o=n.x*r.y-r.x*n.y;return new j(a,o).normalize()}addNode(t,e){this._rectBuffer.payload.push({point:e,position:t,scale:2}),this._rectBuffer.position[0][0].push(t),this._rectBuffer.index.push(0),this._helpersBuffer.position.push(t),this._helpersBuffer.index.push(0)}updateNode(t,e){let{position:i,point:n,width:r}=e,a=this._getNodeNormal().angle(),o=(t+2)%4;const{position:l,point:h}=this._rectBuffer.payload[o];let c=(4+t-1)%4,u=(4+t+1)%4,p=[i[0],l[1],l[2]],m=[l[0],i[1],i[2]],f={point:[n[0],h[1],h[2]],position:p,scale:r,angle:a},g={point:[h[0],n[1],n[2]],position:m,scale:r,angle:a};this._helpersBuffer.position[t]=i,this._rectBuffer.payload[t]={point:n,position:i,scale:r,angle:a},t%2?(this._helpersBuffer.position[c]=m,this._helpersBuffer.position[u]=p,this._rectBuffer.payload[c]=g,this._rectBuffer.payload[u]=f):(this._helpersBuffer.position[c]=p,this._helpersBuffer.position[u]=m,this._rectBuffer.payload[c]=f,this._rectBuffer.payload[u]=g),this._rectBuffer.position[0][0]=[...this._helpersBuffer.position,this._helpersBuffer.position[0]],this._rectBuffer.payload[4]=this._rectBuffer.payload[0],this._helpersBuffer.payload=this._rectBuffer.payload.slice(0,4),this._rectDataSource.setData(this._rectBuffer),this._helpersDataSource.setData(this._helpersBuffer)}clearBuffers(){this._rectBuffer={position:[[[]]],index:[],payload:[]},this._helpersBuffer={position:[],index:[],payload:[]}}clearObjects(){this._rectDataSource.setData(),this._helpersDataSource.setData(),this._engine.requestRender()}overwriteNodes(t){this.clearBuffers();for(let e=0;e{if(this._stage!==1){this.complete(),this._selectedIndex=i.entity.value.index,this._engine.event.unbind("click",this._handleAddClick),this._lastDataItem=this._drawedGraph.slice(this._selectedIndex,this._selectedIndex+1),this._stage=2,this._completedDataSource.setData();for(let n=0;n{this._isAdd=!0;let n=this.length;if(this.stage===0||this.stage===1){if(this.stage=1,this.length>2&&oo(i.position,this._helpersBuffer.position.slice(-1)[0]))return this._polygonBuffer.payload.splice(-2),this._polygonBuffer.payload.push(this._polygonBuffer.payload[0]),this._polygonDataSource.setData(this._polygonBuffer),void this._handleAddFinish();this.length>0&&(this._strokeLineBuffer.index.splice(-2),this._strokeLineBuffer.position[0].splice(-2),this._strokeLineBuffer.payload.splice(-2)),this.addNode(n,i.position,i.point),this.dispatchEvent({type:"addNode",value:this.data}),this._engine.event.bind("mousemove",this._handleAddMove)}this._engine.requestRender()}),d(this,"_handleAddMove",i=>{let n=this._helpersBuffer.position[0],r=i.position;this._strokeLineBuffer.position[0].splice(this.length,2,r,n),this._strokeLineBuffer.index.splice(this.length,2,this.length,this.length+1),this._strokeLineDataSource.setData(this._strokeLineBuffer),this._polygonBuffer.position[0]=this._strokeLineBuffer.position,this._polygonBuffer.payload.splice(this.length,2,{point:i.point,position:r,scale:2},this._polygonBuffer.payload[0]),this._polygonBuffer.index=this._strokeLineBuffer.index,this._polygonDataSource.setData(this._polygonBuffer),this.dispatchEvent({type:"moveNode",value:this.data})}),d(this,"_handleAddFinish",i=>{if(this.stage===1){this.stage=2;for(let n=0;n{i.domEvent?i.event.domEvent.preventDefault():i.event.preventDefault(),!i.entity||this.stage!==2&&this.stage!==3||(this._transformIndex=i.entity.index,this.attachTransform(i.entity.position),this.stage=3,this._engine.selection.transformControl.addEventListener("objectChange",this._handleTransformChanging),this._engine.selection.transformControl.addEventListener("mouseUp",this._handleTransformChanged))}),d(this,"_handleTransformChanging",i=>{let n=this._getTransformBoxState();this.stage!==3&&this.stage!==4||(this.updateNode(this._transformIndex,n),this.dispatchEvent({type:"change",value:this.data}),this.stage=4)}),d(this,"_handleTransformChanged",i=>{let n=this._getTransformBoxState();this.stage===4&&(this.updateNode(this._transformIndex,n),this.dispatchEvent({type:"change",value:this.data}),this.stage=3)}),d(this,"_handleCancelEdit",i=>{this.stage===3&&(this.detachTransform(),this.stage=2)}),this._engine=t,e.polygonColor||(e.polygonColor="rgb(200, 200, 50)"),e.borderColor||(e.borderColor="rgb(200, 50, 50)"),this._options=e}initObjects(){this.initPolygon(),this.initStrokeLine(),this.initHelpers(),this.initCompletedElement()}initPolygon(){let t=this._polygonDataSource=new ee,e=this._polygon=this._engine.add(new fs({color:this._options.polygonColor,opacity:this._virtualOpacity}));return e.material.side=ce,e.dataSource=t,e}initStrokeLine(){let t=this._strokeLineDataSource=new ee,e=this._strokeLine=this._engine.add(new sr({lineWidth:3,color:this._options.borderColor,keepSize:!0,lineJoin:"round"}));return e.dataSource=t,e}initHelpers(){let t=this._helpersDataSource=new ee,e=this._helpers=this._engine.add(new po({color:"rgba(0, 0, 0, 0)",mapSrc:Jt("assets/images/node.png"),size:10,uShapeType:1}));return e.dataSource=t,e}initCompletedElement(){let t=this._completedDataSource=new ee,e=this._completedElement=this._engine.add(new fs({color:this._options.polygonColor,opacity:this._polygonOpacity}));e.material.side=ce,e.dataSource=t,this._engine.event.bind(e,"click",this._handleCompleteClick)}initEvents(){this._engine.event.bind("click",this._handleAddClick),this._drawedGraph.length>0&&(this._engine.event.bind("click",this._handleCancelEdit),this._engine.event.bind(this._completedElement,"click",this._handleCompleteClick))}graphInfo(t){let e=new Ni(this._polygonBuffer.position[0],this._polygonBuffer.payload);return e.index=t,{polygonBuffer:this._polygonBuffer,strokeLineBuffer:this._strokeLineBuffer,helpersBuffer:this._helpersBuffer,dataItem:e}}_getNodeNormal(t){let e,i,n;t===0||t?(t=0,e=this._helpersBuffer.position[this.length-1],i=this._helpersBuffer.position[t],n=this._helpersBuffer.position[t+1]):t===this.length-1?(e=this._helpersBuffer.position[t-1],i=this._helpersBuffer.position[t],n=this._helpersBuffer.position[0]):(e=this._helpersBuffer.position[t-1],i=this._helpersBuffer.position[t],n=this._helpersBuffer.position[t+1]);let r=Ye(e,i),a=Ye(i,n),o=new j;return o.addVectors(r,a),Ze(o)}addNode(t,e,i){this._strokeLineBuffer.position[0].push(e),this._strokeLineBuffer.index.push(t),this.length>0&&(this._strokeLineBuffer.position[0].push(this._helpersBuffer.position[0]),this._strokeLineBuffer.index.push(t+1)),this._strokeLineDataSource.setData(this._strokeLineBuffer),this._polygonBuffer.position[0]=this._strokeLineBuffer.position,this._polygonBuffer.index=this._strokeLineBuffer.index,this._polygonBuffer.payload.splice(t,0,{point:i,position:e,scale:2}),this._helpersBuffer.position.push(e),this._helpersBuffer.payload.splice(t,0,{point:i,position:e,scale:2}),this._helpersBuffer.index.push(t),this._helpersDataSource.setData(this._helpersBuffer)}updateNode(t,e){let{point:i,position:n}=e,r=this._strokeLineBuffer.position[0].length;this._transformIndex===0?(this._strokeLineBuffer.position[0].splice(0,1,n),this._strokeLineBuffer.position[0].splice(r-1,1,n),this._strokeLineBuffer.payload.splice(0,1,{point:i,position:n,scale:e.width,angle:e.angle[2]}),this._strokeLineBuffer.payload.splice(r-1,1,{point:i,position:n,scale:e.width,angle:e.angle[2]}),this._strokeLineDataSource.setData(this._strokeLineBuffer)):(this._strokeLineBuffer.position[0].splice(t,1,n),this._strokeLineDataSource.setData(this._strokeLineBuffer)),this._polygonBuffer.payload=this._strokeLineBuffer.payload,this._polygonBuffer.position[0]=this._strokeLineBuffer.position,this._polygonDataSource.setData(this._polygonBuffer),this._helpersBuffer.position.splice(t,1,n),this._helpersBuffer.payload.splice(t,1,{position:n,point:i,scale:e.width,angle:e.angle[2]}),this._helpersDataSource.setData(this._helpersBuffer)}overwriteNodes(t){this.clearBuffers();for(let e=0;e{}),d(this,"_moveNode",t=>{}),d(this,"_changeNode",t=>{})}afterAddToEngine(){this.initEditor(),this.initInfoMarkers()}static getLength(t,e,i){i=i||X_;const{pointToLngLat:n}=Xe.prototype,r=Xe.toRadians,a=n(new Xr(...t)),o=n(new Xr(...e)),l=r(o.lat-a.lat)/2,h=r(o.lng-a.lng)/2,c=r(a.lat),u=r(o.lat),p=Math.sin(l)*Math.sin(l)+Math.sin(h/2)*Math.sin(h/2)*Math.cos(c)*Math.cos(u),m=i*(2*Math.atan2(Math.sqrt(p),Math.sqrt(1-p))),f=Math.abs(t[2]||0-e[2]||0);return Math.sqrt(Math.pow(m,2)+Math.pow(f,2))}static getSegementLength(t){if(t.length<2)return;const e=[];let i=t[0];for(let n=1,r=t.length;n0){this._dataArrayBuffer=new Float32Array(i*e*4),this._lengthArrayBuffer=new Float32Array(4*t.length);const o=this._dataArrayBuffer,l=this._lengthArrayBuffer;let h=0;t.forEach(function(p,m){const f=p._float32View;let g=0;for(let _=0;_{this._node=e.value}),d(this,"_movePolygonNode",e=>{this._node=e.value;const i=this._node.map(n=>n.position);this._area=Nn.getArea(i),this.setInfoMarkers(i)}),d(this,"_moveRectNode",e=>{this._node=e.value;const i=this._node.map(n=>n.position);this._area=Nn.getArea(i),this.setInfoMarkers(i)}),d(this,"_moveCircleNode",e=>{this._node=e.value;const{size:i}=e.value[0],n=Math.PI*Math.pow(i/2,2);this._area=n;const r=this._node.map(a=>a.position);this.setInfoMarkers(r)}),d(this,"_moveNode",e=>{this._adjustNode(e)}),d(this,"_changeNode",e=>{this._adjustNode(e)}),d(this,"_adjustNode",e=>{this._options.type==="rect"?this._moveRectNode(e):this._options.type==="circle"?this._moveCircleNode(e):this._movePolygonNode(e)}),this._engine=s,this._options=t}initEditor(){let s;return s=this._options.type==="rect"?this._editor=this._engine.add(new G_(this._engine,{})):this._options.type==="circle"?this._editor=this._engine.add(new j_(this._engine,{})):this._editor=this._engine.add(new W_(this._engine,{})),s}initInfoMarkers(){let s=this._infoMarkers=this._engine.add(new mo({callback:this.createInfoMarkers,offset:[0,0]}));s.renderItem=this.createInfoMarkers;let t=this._infoMarkersDataSource=new ee;this._infoMarkersDataSource.setAttribute("payload","area"),s.dataSource=t}createInfoMarkers(s){const t=document.createElement("div");return t.innerText=s>1e4?Math.round(s/1e6*100)/100+" km²":Math.round(100*s)/100+" m²",xt(t,`${te}-measure-pane`),t}setInfoMarkers(s){let t;t=this._editor.selectedIndex===-1?this._editor.drawedGraph.length:this._editor.selectedIndex,this._infoMarkersBuffer.position.splice(t,1,s[0]),this._infoMarkersBuffer.index.splice(t,1,t),this._infoMarkersBuffer.payload.splice(t,1,{area:this._area}),this._infoMarkersDataSource.setData(this._infoMarkersBuffer)}clearBuffer(){this._infoMarkersBuffer={position:[],index:[],payload:[]}}clearAll(){this.enabled=!1,this._editor.clearAll(),this.clearBuffer(),this._infoMarkersDataSource.setData()}dispose(){this.clearAll(),this._infoMarkers&&this._engine.remove(this._infoMarkers)}get area(){return this._area}},st.BubblePoint=class extends Si{constructor(s){super(s),d(this,"geometry"),d(this,"material"),d(this,"color"),d(this,"size"),d(this,"duration"),d(this,"trail"),d(this,"type"),this.parameters=s,this.defineMaterialProxyProperties(["color","size","duration","trail","size3","height","opacity"])}initObject(){this.geometry=new ah,this.material=new Rw(this.parameters),this.material.setCommonUniforms(this.engine.rendering.uniforms)}},st.CSVDataSource=d_,st.Circle=Yu,st.CircleEditor=j_,st.ClippingPlane=gh,st.ClippingPlaneCollection=gs,st.ClusterPoint=class extends L_{constructor(s={}){super(s),d(this,"_ready"),d(this,"_cluster"),d(this,"_clusterDataSource"),d(this,"_icon"),d(this,"_label"),d(this,"_minUpdateInterval"),d(this,"isEventEntitySupported",!0),d(this,"_minUpdateInterval",300),d(this,"_lastUpdateTime",0),d(this,"_updateTimeoutHandler",null),d(this,"_updateRenderingData",()=>{const{map:t}=this.engine,e=t.getBoundingBox(),i=Math.round(t.getZoom()),n=this.engine.map.unprojectPointArr(e.min.toArray()),r=this.engine.map.unprojectPointArr(e.max.toArray()),a=this._cluster.getClusters([...n,...r],i);this._clusterDataSource.setData(a),this._clusterDataSource.update();for(const o of this.children)o.setData()}),this.parameters=s,this._ready=!1,this._cluster=new Zw(Object.assign({},eS,s.cluster)),this._cluster.load([]),(this._clusterDataSource=new us).setAttribute("size").setAttribute("icon").setAttribute("text",t=>(t&&t.cluster?t.point_count:0)+"")}initObject(){}afterAddToEngine(s){super.afterAddToEngine(s);const t=this.parameters;t.icon&&(this._icon=this.addComponent(new w_(Object.assign({},$w,t.icon)))),t.label&&(this._label=this.addComponent(new S_(Object.assign({},tS,t.label)))),this._ready=!0}setData(){let s=this.dataSource.data;this.cachedData=s,this._cluster.load(this.dataSource._geoFeatures),this.needsUpdate=!1}onBeforeScenePrepareRender(s,t,e,i){if(!this._ready||!this.dataSource)return;this._needsUpdate&&this._updateRenderingData(),clearTimeout(this._updateTimeoutHandler);const n=i.time;if(n-this._lastUpdateTime>this._minUpdateInterval)return this._updateRenderingData(),void(this._lastUpdateTime=n);this._updateTimeoutHandler=setTimeout(()=>{this._updateRenderingData(),s.requestRender()},this._minUpdateInterval),super.onBeforeScenePrepareRender(s,t,e,i)}getChildDataSource(){return this._clusterDataSource}getEntityByIndex(s){const t=this._clusterDataSource;if(!t)return;const e={index:s,value:t.getOriginData(s),itemIndex:t.getOriginDataIndex(s),pairs:{}},i=t.data;for(const n of Object.keys(i))e.pairs[n]=i[n][s];return e}get minUpdateInterval(){return this._minUpdateInterval}set minUpdateInterval(s){s<16&&(s=16),this._minUpdateInterval=s}get clusterDataSource(){return this._clusterDataSource}},st.Cone=class extends Si{constructor(s){super(s),d(this,"geometry"),d(this,"material"),d(this,"opacity"),d(this,"height"),d(this,"size"),d(this,"getInstanceLocalMatrix",(t,e,i)=>{const{vertexHeights:n,vertexSizes:r}=this.parameters,{height:a,size:o}=this.dataSource.data;let l=new rt;if(n&&a){const h=new rt;h.makeScale(1,1,a[i]),l.multiply(h)}if(r&&o){const h=new rt;h.makeScale(o[i],o[i],1),l.multiply(h)}return l}),d(this,"addCustomAttributes",()=>{this.calcMaxHeight(),this.getSphereIndex()}),this.parameters=s,this.defineMaterialProxyProperties(["opacity","color","size"])}initObject(){this.geometry=new QS(this.parameters),this.material=new t2(this.parameters),this.material.setCommonUniforms(this.engine.rendering.uniforms)}calcMaxHeight(){const{vertexHeights:s}=this.parameters,{height:t}=this.dataSource.data;let e=-1;if(!s||!t)return e;for(let i=0;i{this._debugTilesRenderer||(!this._freezeUpdate&&this._visibile&&(this._elementsManager&&this._elementsManager.tick(r),this._tilesRenderer.update()),this._editableElementManager.refreshTiles())}),d(this,"handleLoadTileSet",(n,r,a)=>{this.engine.requestRender()}),d(this,"handleUpdateModel",n=>{this._materialManager?n.traverse(r=>{if(r.originalMaterial){const a=r.originalMaterialName,o=this._materialManager.getMaterialByKey(a);r.material=o||r.originalMaterial}}):n.traverse(r=>{r.originalMaterial&&(r.material=r.originalMaterial)}),this.engine.requestRender()}),d(this,"parseTileInfo",n=>{const r=n.content.uri,a=r.substring(r.lastIndexOf("/")+1).split(".")[0],o=a.split("-");n.__id=a,n.__level=parseInt(o[0],10),n.__lodLevel=this._tileMaxLevel-n.__level}),d(this,"handleLoadModel",(n,r)=>{this._materialManager&&n.traverse(a=>{if(a.material){const o=a.material.name;a.originalMaterial=a.material,a.originalMaterialName=o;const l=this._materialManager.getMaterialByKey(o);l&&(a.material=l),this._excludeCastShadowMaterials[o]||(a.castShadow=!0),a.receiveShadow=!0}}),n._tileUri=r.content.uri,this.parseTileInfo(r),this._instancedElementManager.onTileLoad(r,n),this._elementsManager.onTileLoad(r,n),this._editableElementManager.onTileLoad(r,n),this.engine.requestRender()}),d(this,"handleDisposeModel",(n,r)=>{this._instancedElementManager.onTileDispose(r,n),this._elementsManager.onTileDispose(r,n),this._editableElementManager.onTileDispose(r,n)}),d(this,"handleTileVisibleChanged",(n,r)=>{r?(this._editableElementManager.onTileShow(n),this._instancedElementManager.onTileShow(n),this._elementsManager.onTileShow(n)):(this._editableElementManager.onTileHide(n),this._instancedElementManager.onTileHide(n),this._elementsManager.onTileHide(n))}),d(this,"handleDebugBeforeengineRender",()=>{this._freezeUpdate||this._debugTilesRenderer.update()}),d(this,"_updateTilesCustomLoaders",n=>{for(const r of this._loaders)n.manager.addHandler(r[0],r[1])}),d(this,"handleDebugLoadTileSet",()=>{this.engine.requestRender()}),d(this,"handleDebugLoadModel",()=>{this.engine.requestRender()}),d(this,"transformFromEcefToPlane",(n,r,a=0)=>{let o=ui.eastNorthUpToFixedFrame(ui.lnglatToEcef(n,r,a));o.invert();const l=new rt,h=Wr([n,r]);l.makeTranslation(h[0],h[1],0);const c=new rt;c.multiplyMatrices(l,o),c.decompose(this.position,this.quaternion,this.scale)}),d(this,"disposeTilesRender",n=>{n.forEachLoadedModel((r,a)=>{n.disposeTile(a)})}),this.options=s;const t=this._tilesRenderer=new Su(this.options.url);t.fetchOptions=s.fetchOptions||{},t.errorTarget=s.errorTarget||64,t.preprocessURL=s.preprocessURL||null,t.errorThreshold=s.errorThreshold||1/0,t.maxDepth=s.maxDepth||1/0,t.loadSiblings=s.loadSiblings===void 0||s.loadSiblings,t.displayActiveTiles=s.displayActiveTiles!==void 0&&s.displayActiveTiles,t.autoDisableRendererCulling=s.autoDisableRendererCulling===void 0||s.autoDisableRendererCulling,s.lruCache_maxSize&&(t.lruCache.minSize=Math.max(.25*s.lruCache_maxSize,100),t.lruCache.maxSize=s.lruCache_maxSize),t.downloadQueue.priorityCallback=Og,s.maxDownloadJobs&&(t.downloadQueue.maxJobs=s.maxDownloadJobs),t.parseQueue.priorityCallback=Og,s.maxParseJobs&&(t.parseQueue.maxJobs=s.maxParseJobs),this.add(t.group);const e=this._elementsGroup=new De;this.add(e),(this._elementsManager=new LM(this._elementsGroup)).tilesRenderer=t;const i=this._instancedElementManager=new FM;i.tilesRenderer=t,this.add(i.group),(this._editableElementManager=new BM).tilesRenderer=t,Array.isArray(s.loaders)?this._loaders=s.loaders:this._loaders=[],this._updateTilesCustomLoaders(t)}afterAddToEngine(s){this.engine=s;const t=this._tilesRenderer;t.setCamera(s.camera),t.setResolutionFromRenderer(s.camera,s.renderer),t.onLoadTileSet=this.handleLoadTileSet,t.onLoadModel=this.handleLoadModel,t.onDisposeModel=this.handleDisposeModel,t.onTileVisibleChanged=this.handleTileVisibleChanged,s.addPrepareRenderListener(this.handleBeforeRender),this._instancedElementManager.engine=s,this._elementsManager.engine=s,this._editableElementManager.engine=s}beforeRemoveFromEngine(s){this.dispose()}getBounds(){const s=new He,t=this._tilesRenderer.getBounds(s);return t&&s.applyMatrix4(this.matrixWorld),t?s:null}createDebugTilesRenderer(){this._tilesRenderer.group.visible=!1;const s=this._debugTilesRenderer=new DM(this.options.url),t=this.engine;s.setCamera(t.camera),s.setResolutionFromRenderer(t.camera,t.renderer),s.errorTarget=this._tilesRenderer.errorTarget,s.loadSiblings=this._tilesRenderer.loadSiblings,s.displayActiveTiles=this._tilesRenderer.displayActiveTiles,s.autoDisableRendererCulling=this._tilesRenderer.autoDisableRendererCulling,s.preprocessURL=this._tilesRenderer.preprocessURL,s.errorThreshold=this._tilesRenderer.errorThreshold,s.maxDepth=this._tilesRenderer.maxDepth,s.displayBoxBounds=!0,s.onLoadTileSet=this.handleLoadTileSet,s.onLoadModel=this.handleLoadModel,t.addPrepareRenderListener(this.handleDebugBeforeengineRender),this._updateTilesCustomLoaders(s),this.add(this._debugTilesRenderer.group)}isEntityVisible(s){return!s.id||!this._editableElementManager.hasDeletedId(s.id)}destoryDebugTilesRenderer(){this.remove(this._debugTilesRenderer.group),this.engine.removePrepareRenderListener(this.handleDebugBeforeengineRender),this.disposeTilesRender(this._debugTilesRenderer),this._debugTilesRenderer.dispose(),this._tilesRenderer.group.visible=!0}dispose(){this.remove(this._tilesRenderer.group),this.engine.removePrepareRenderListener(this.handleBeforeRender),this.disposeTilesRender(this._tilesRenderer),this._tilesRenderer.dispose(),this._debugTilesRenderer&&(this.remove(this._debugTilesRenderer.group),this.engine.removePrepareRenderListener(this.handleDebugBeforeengineRender),this.disposeTilesRender(this._debugTilesRenderer),this._debugTilesRenderer.dispose())}set materialManager(s){s&&(s.engine=this.engine,s.tiles=this,s.init(),s.Identity3DTilesMaterialManager&&(s.type=this._identityType)),this._materialManager=s,this._tilesRenderer.forEachLoadedModel(this.handleUpdateModel)}get materialManager(){return this._materialManager}set showDebug(s){s?this._debugTilesRenderer||this.createDebugTilesRenderer():this._debugTilesRenderer&&(this.destoryDebugTilesRenderer(),this._debugTilesRenderer=null),this.engine.requestRender()}get showDebug(){return!!this._debugTilesRenderer}get debugTilesRenderer(){return this._debugTilesRenderer}get elementsManager(){return this._elementsManager}get freezeUpdate(){return this._freezeUpdate}set freezeUpdate(s){this._freezeUpdate=s}get errorTarget(){return this._tilesRenderer.errorTarget}set errorTarget(s){this._tilesRenderer.errorTarget=s,this._debugTilesRenderer&&(this._debugTilesRenderer.errorTarget=s),this.engine.requestRender()}get tilesGroup(){return this._tilesRenderer.group}get tilesRenderer(){return this._tilesRenderer}get instancedElementManager(){return this._instancedElementManager}get editableElementManager(){return this._editableElementManager}get identityType(){return this._identityType}set identityType(s){this._identityType=s,this._materialManager&&this._materialManager.isIdentity3DTilesMaterialManager&&(this._materialManager.type=s)}get loadSiblings(){return this._tilesRenderer.loadSiblings}set loadSiblings(s){this._tilesRenderer.loadSiblings=s,this._debugTilesRenderer&&(this._debugTilesRenderer.loadSiblings=s)}get displayActiveTiles(){return this._tilesRenderer.displayActiveTiles}set displayActiveTiles(s){this._tilesRenderer.displayActiveTiles=s,this._debugTilesRenderer&&(this._debugTilesRenderer.displayActiveTiles=s)}get autoDisableRendererCulling(){return this._tilesRenderer.autoDisableRendererCulling}set autoDisableRendererCulling(s){this._tilesRenderer.autoDisableRendererCulling=s,this._debugTilesRenderer&&(this._debugTilesRenderer.autoDisableRendererCulling=s)}get preprocessURL(){return this._tilesRenderer.preprocessURL}set preprocessURL(s){this._tilesRenderer.preprocessURL=s,this._debugTilesRenderer&&(this._debugTilesRenderer.preprocessURL=s)}get errorThreshold(){return this._tilesRenderer.errorThreshold}set errorThreshold(s){this._tilesRenderer.errorThreshold=s,this._debugTilesRenderer&&(this._debugTilesRenderer.errorThreshold=s)}get maxDepth(){return this._tilesRenderer.maxDepth}set maxDepth(s){this._tilesRenderer.maxDepth=s,this._debugTilesRenderer&&(this._debugTilesRenderer.maxDepth=s)}set visible(s){this._visibile=s,this._tilesRenderer&&(this._tilesRenderer.group.visible=s)}get visible(){return this._visibile}},st.Default3DTilesMaterialManager=Yl,st.DomPoints=mo,st.DynamicInstancedMesh=Au,st.DynamicSky=Jf,st.DynamicWeather=Ec,st.EffectModelPoint=class extends Sn{constructor(s){super(),d(this,"_model"),d(this,"_normalize"),d(this,"_rotateToZUp"),d(this,"_keepSize"),d(this,"_size"),d(this,"_size3"),d(this,"_useSize3"),d(this,"_height"),d(this,"_animationRotate"),d(this,"_animationRotatePeriod"),d(this,"_animationJump"),d(this,"_animationJumpPeriod"),d(this,"_animationJumpHeight"),d(this,"isEventEntitySupported",!0),d(this,"_model",null),d(this,"_normalize",!0),d(this,"_rotateToZUp",!0),d(this,"_keepSize",!0),d(this,"_size",1),d(this,"_size3",[1,1,1]),d(this,"_useSize3",!1),d(this,"_height",0),d(this,"_animationRotate",!1),d(this,"_animationRotatePeriod",3e3),d(this,"_animationJump",!1),d(this,"_animationJumpPeriod",3e3),d(this,"_animationJumpHeight",30),d(this,"_updateModel",()=>{this._cleanOldMesh();const t=Wl(this._model,this._normalize,this._rotateToZUp);for(const e of t){const i=e.material;let n=new nS;n.setCommonUniforms(this.engine.rendering.uniforms),n.transparent=i.transparent,n.opacity=i.opacity,n.side=i.side,n.depthWrite=i.depthWrite,n.depthTest=i.depthTest,n.depthFunc=i.depthFunc,n.blendDst=i.blendDst,n.blendDstAlpha=i.blendDstAlpha,n.blendEquation=i.blendEquation,n.blendEquationAlpha=i.blendEquationAlpha,n.blending=i.blending,n.blendSrc=i.blendSrc,n.blendSrcAlpha=i.blendSrcAlpha,n.premultipliedAlpha=i.premultipliedAlpha,n.color=i.color,n.colorWrite=i.colorWrite,n.emissive=i.emissive,n.keepSize=this._keepSize,n.size=this._size,n.size3=this._size3,n.useSize3=this._useSize3,n.height=this._height,n.animationRotate=this._animationRotate,n.animationRotatePeriod=this._animationRotatePeriod,n.animationJump=this._animationJump,n.animationJumpPeriod=this._animationJumpPeriod,n.animationJumpHeight=this._animationJumpHeight;const r=e.geometry,a=r.getAttribute("color");a&&(a.itemSize===4?n.vertexColors4=!0:a.itemSize===3&&(n.vertexColors3=!0));const o=new Si(r,n);o.engine=this.engine,o.dataAutoUpdate=!1,o.__eventProxyByParent=!0,this.dataSource&&(o.dataSource=this.dataSource),this.add(o)}this.needsUpdate=!0}),d(this,"_cleanOldMesh",()=>{const t=this.children;for(const e of t)this.remove(e),e.geometry&&e.geometry.dispose(),e.material&&e.material.dispose()}),d(this,"_defineChildrenMaterialProperty",t=>{Object.defineProperty(this,t,{get:function(){return this["_"+t]},set:function(e){this["_"+t]=e;for(const i of this.children)i.material[t]=e}})}),s=Object.assign({},sS,s),this._normalize=s.normalize,this._rotateToZUp=s.rotateToZUp,["size","size3","useSize3","height","keepSize","animationRotate","animationRotatePeriod","animationJump","animationJumpPeriod","animationJumpHeight"].forEach(t=>{s[t]!==void 0&&(this["_"+t]=s[t]),this._defineChildrenMaterialProperty(t)})}setData(){const s=this.dataSource;for(const t of this.children)t.dataSource=s,t.setData();this.needsUpdate=!1}onDispose(){this._cleanOldMesh()}set model(s){s!==this._model&&(this._model=s,this._updateModel())}get model(){return this._model}},st.EmptySky=Fr,st.Engine=class{constructor(s,t={}){d(this,"_container"),d(this,"_event"),d(this,"_map"),d(this,"_rendering"),d(this,"_selection"),d(this,"_controls"),d(this,"isEngine",!0),this._container=s,this._event=new Zi(this,t.event),this._map=new eb(this,t.map),this._map.init();const e=this.map.getResolution();this._rendering=new T1(this,{resolution:e,...t.rendering}),this._rendering.init(),this._map.afterInit(),this._rendering.startRenderLoop(),this._selection=new lb(this,t.selection),this._controls=new vb(this,t.controls),this.trackingRequest()}add(s){return this._rendering.add(s)}remove(s){this._rendering.remove(s)}requestRender(){this._rendering.requestRender()}addPrepareRenderListener(s){this._rendering.addPrepareRenderListener(s)}addBeforeRenderListener(s){this._rendering.addBeforeRenderListener(s)}removeBeforeRenderListener(s){this._rendering.removeBeforeRenderListener(s)}removePrepareRenderListener(s){this._rendering.removePrepareRenderListener(s)}addBeforePrepareRenderObject(s){this._rendering.addBeforePrepareRenderObject(s)}removeBeforePrepareRenderObject(s){this._rendering.removeBeforePrepareRenderObject(s)}addBeforeRenderObject(s){this._rendering.addBeforeRenderObject(s)}removeBeforeRenderObject(s){this._rendering.removeBeforeRenderObject(s)}lockCamera(){this.camera._isLocked=!0}unlockCamera(){this.camera._isLocked=!1}get container(){return this._container}get map(){return this._map}get rendering(){return this._rendering}get controls(){return this._controls}get renderer(){return this._rendering.renderer}get scene(){return this._rendering.scene}get camera(){return this._rendering.camera}get event(){return this._event}get selection(){return this._selection}dispose(){this._controls.dispose(),this._event.dispose(),this._selection.dispose(),this._rendering.dispose(),this._map.dispose()}trackingRequest(){const s=`http://api.map.baidu.com/images/blank.gif?product=jsapi&sub_product=mapvthree&usebmap=${window.BMapGL?1:0}&ak=${window.BMAP_AUTHENTIC_KEY}`;let t=new Image;t.src=s,t.onload=()=>{t=null},t.onerror=()=>{t=null}}},st.ExtendMeshStandardMaterial=jl,st.FanPoint=class extends Si{constructor(s){super(s),d(this,"geometry"),d(this,"material"),d(this,"color"),d(this,"opacity"),d(this,"size"),d(this,"height"),d(this,"speed"),d(this,"type"),d(this,"segmentAngle"),d(this,"sideColor"),this.parameters=s,this.defineMaterialProxyProperties(["color","size","size3","height","opacity","speed","segmentAngle","sideColor"])}initObject(){this.geometry=new ah,this.material=new Aw(this.parameters),this.material.animationRotate=!0,this.material.setCommonUniforms(this.engine.rendering.uniforms)}},st.FatLine=sr,st.FlyManager=class extends St{constructor(){super(...arguments),d(this,"_engine"),d(this,"_isRunning",!1),d(this,"_animationStartTime",0),d(this,"_animationDuration",0),d(this,"_animationStartState",null),d(this,"_animationFinishState",null),d(this,"update",(s,t)=>{if(!this._isRunning)return;const e=t.time-this._animationStartTime;let i=1;this._animationDuration>0&&(i=e/this._animationDuration),i>1&&(i=1);const n=this._animationStartState,r=this._animationFinishState,a=this._engine.map;let o={};n.heading!==void 0&&(o.heading=ps(n.heading,r.heading,i)),n.pitch!==void 0&&(o.pitch=ps(n.pitch,r.pitch,i)),n.zoom!==void 0&&(o.zoom=ps(n.zoom,r.zoom,i)),n.range!==void 0&&(o.range=ps(n.range,r.range,i));let l=Fu(n.center,r.center,i);a.lookAt(l,o),e>=this._animationDuration||i>=1?(this._isRunning=!1,this.onFinish&&this.onFinish()):this._engine.requestRender()}),d(this,"restrictHeading",(s,t)=>Math.abs(t-s+360)<180?t+360:Math.abs(t-s-360)<180?t-360:t)}afterAddToEngine(s){this._engine=s,s.addPrepareRenderListener(this.update)}flyTo(s,t={}){let{center:e,pitch:i,heading:n,zoom:r,range:a}=s;const{duration:o=300}=t,l={},h={},c=this._engine.map,u=c.getCenter(),p=e||c.getCenter();!u[2]&&(u[2]=0),!p[2]&&(p[2]=0),l.center=u,h.center=p,isNaN(i)||(l.pitch=c.getPitch(),h.pitch=i),isNaN(n)||(n=this.restrictHeading(c.getHeading(),n),l.heading=c.getHeading(),h.heading=n),isNaN(r)||(l.zoom=c.getZoom(),h.zoom=r),isNaN(a)||(l.range=c.getCameraDistance(),h.range=a),this._animationStartState=l,this._animationFinishState=h,this._animationDuration=o,this._isRunning=!0,this._animationStartTime=new Date().getTime(),this._engine.requestRender(),this.onStart&&this.onStart()}beforeRemoveFromEngine(){this._engine.removePrepareRenderListener(this.update),this.removeFromParent()}},st.FoliageLeafMaterial=Gl,st.GeoInstancedMesh=Si,st.GeoJSONDataSource=us,st.Grid=class extends Si{constructor(s){super(s),d(this,"geometry"),d(this,"material"),d(this,"color"),d(this,"height"),d(this,"radialSegments"),d(this,"radiusTop"),d(this,"radiusBottom"),d(this,"openEnded"),d(this,"heightSegments"),d(this,"isMultiColor"),d(this,"multiColor"),d(this,"isLight"),d(this,"lightPos"),this.parameters=s,this.defineGeometryProxyProperties(["height","radiusTop","radiusBottom","height","radialSegments","heightSegments","openEnded"]),this.defineMaterialProxyProperties(["color","multiColor","isMultiColor","lightPos"])}initObject(){this.geometry=new XS(this.parameters),this.material=new YS(this.parameters),this.material.setCommonUniforms(this.engine.rendering.uniforms)}},st.Heatmap=class extends as{constructor(s){super(s),d(this,"isHeatmap",!0),d(this,"frustumCulled",!1),d(this,"geometry"),d(this,"material"),d(this,"scene"),d(this,"pointMesh"),d(this,"pointMaterial"),d(this,"pointGeometry"),d(this,"renderTarget"),d(this,"depthMaterial"),d(this,"depthRenderTarget"),this.parameters=s,this.defineMaterialProxyProperties(["resolution"])}getDefaultParams(){return{radius:100,maxValue:1,gradient:{0:"rgba(0,0,255,1)",.3:"rgba(0,255,0,1)",.6:"rgba(255,255,0,1)",1:"rgba(255,0,0,1)"}}}initObject(){let s=this.parameters;const t=this.geometry=new Pt;t.setAttribute("position",new se(new Float32Array([-1,1,0,1,1,0,-1,-1,0,1,-1,0]),3)),t.setAttribute("uv",new se(new Float32Array([0,1,1,1,0,0,1,0]),2)),t.setIndex([0,2,1,2,3,1]),(this.material=new uS({})).setCommonUniforms(this.engine.rendering.uniforms);const[e,i]=this.resolution||[],n=this.scene=new Gp;this.renderTarget=new de(e,i),this.depthRenderTarget=new de(e,i,{}),this.depthMaterial=new fS({keepSize:this.parameters.keepSize});const r=this.pointGeometry=new gS,a=this.pointMaterial=new pS({keepSize:this.parameters.keepSize});a.setCommonUniforms(this.engine.rendering.uniforms),this.depthMaterial.setCommonUniforms(this.engine.rendering.uniforms);const o=this.pointMesh=new Si(r,a);o.engine=this.engine,this.pointMesh.matrixAutoUpdate=!0,o.frustumCulled=!1,n.add(o),this.material.uniforms.heatmap.value=this.renderTarget.texture,this.material.uniforms.heatmapDepth.value=this.depthRenderTarget.texture,s.gradient!==void 0&&(this.gradient=s.gradient),s.radius!==void 0&&(this.radius=s.radius),s.minValue!==void 0&&(this.minValue=s.minValue),s.maxValue!==void 0&&(this.maxValue=s.maxValue),s.opacity!==void 0&&(this.opacity=s.opacity),s.keepSize!==void 0&&(this.keepSize=s.keepSize),s.attenuateMValueFactor!==void 0&&(this.attenuateMValueFactor=s.attenuateMValueFactor)}onBeforeSceneRenderHook(s,t,e,i){let n=s.renderer;this.scene.position.set(-i.cameraOffsetX,-i.cameraOffsetY,0),n.setRenderTarget(this.renderTarget),n.autoClear===!1&&n.clear(),n.render(this.scene,e),n.setRenderTarget(this.depthRenderTarget),n.autoClear===!1&&n.clear(),this.scene.overrideMaterial=this.depthMaterial,n.render(this.scene,e),this.scene.overrideMaterial=null,n.setRenderTarget(null)}set dataSource(s){this.pointMesh.dataSource=s}get dataSource(){return this.pointMesh.dataSource}setData(){this.pointMesh.dataSource&&(this.pointMesh.addCustomAttributes=(s,t)=>{let e=t.data,i=[];for(let n=0;n0&&(this.pointMaterial.radius=s,this.depthMaterial.radius=s)}get radius(){return this.pointMaterial.radius}set minValue(s){isNaN(s)||(this.pointMaterial.minValue=s)}get minValue(){return this.pointMaterial.minValue}set maxValue(s){isNaN(s)||(this.pointMaterial.maxValue=s)}get maxValue(){return this.pointMaterial.maxValue}set opacity(s){isNaN(s)||(this.material.opacity=s)}get opacity(){return this.material.opacity}set keepSize(s){this.pointMaterial.keepSize=s,this.depthMaterial.keepSize=s}get keepSize(){return this.pointMaterial.keepSize}set attenuateMValueFactor(s){this.pointMaterial.attenuateMValueFactor=s}},st.Heatmap3D=class extends as{constructor(s){super(s),d(this,"_gradient"),d(this,"_radius"),d(this,"_maxValue"),d(this,"isHeatmap3D",!0),d(this,"frustumCulled",!1),d(this,"geometry"),d(this,"material"),d(this,"opacity"),d(this,"heightRatio"),this.parameters=s,this._gradient=this.parameters.gradient!==void 0?this.parameters.gradient:{.4:"rgba(0,0,255,1)",.6:"rgba(0,255,0,1)",.8:"rgba(255,255,0,1)",1:"rgba(255,0,0,1)"},this._radius=this.parameters.radius!==void 0?this.parameters.radius:100,this._maxValue=this.parameters.maxValue!==void 0?this.parameters.maxValue:1,this.defineMaterialProxyProperties(["resolution","opacity","heightRatio"])}initObject(){const{radius:s,maxValue:t,...e}=this.parameters;this.geometry=new Rs,(this.material=new vS(e)).setCommonUniforms(this.engine.rendering.uniforms)}setData(){let s=this.dataSource.data,t=1/0,e=1/0,i=1/0,n=-1/0,r=-1/0,a=-1/0,o=[];for(let x=0;x{x[0]=x[0]-t+this._radius,x[1]=x[1]-e+this._radius});let f=xS(m),g=f._ctx;g.save(),g.scale(u/h,u/c),f.data(o).radius(this._radius).max(this._maxValue).gradient(this._gradient).draw(),g.restore(),this.geometry&&this.geometry.dispose();const _=this.geometry=new Rs(h,c,p,p);_.computeBoundingSphere(),_.computeBoundingBox(),this.texture&&this.texture.dispose();let v=this.texture=new Le(m);this.material.uniforms.map.value=v,this.needsUpdate=!1}onDispose(){this.texture&&this.texture.dispose()}get gradient(){return this._gradient}set gradient(s){this._gradient=s}get radius(){return this._radius}set radius(s){this._radius=s}get maxValue(){return this._maxValue}set maxValue(s){this._maxValue=s}},st.Icon=w_,st.IconPoint=po,st.Identity3DTilesMaterialManager=class extends Yl{constructor(){super(),d(this,"_type",1),d(this,"isIdentity3DTilesMaterialManager",!0),this.material=new WM({color:35020})}onInit(){this.updateType()}updateType(){this.tiles.instancedElementManager.idEnabled=this._type===1,this.tiles.instancedElementManager.dataTypeEnabled=this._type===2,this.material.type=this._type}getMaterialByKey(s){return this.material}dispose(){this.material.dispose()}set type(s){this._type=s,this.updateType()}get type(){return this._type}},st.JSONDataSource=Nu,st.LODDynamicInstancedMesh=Pg,st.LODModel=class extends St{constructor(s){super(s),d(this,"_hysteresis",.1),d(this,"_levels",[]),d(this,"_currentLevel"),d(this,"_currentModel"),d(this,"_generateModelMesh",async t=>new Promise((e,i)=>{_M.load(t,n=>{e(n.scene)},null,i)})),d(this,"update",async()=>{if(!this.visible)return;const t=this._engine.camera,e=this.levels,i=this.position,n=e.length;if(n>0){const r=t.position.distanceTo(i),a=e[n-1].hysteresis||this.hysteresis;if(r>e[n-1].distance*(1+a))return this._modelMeshSingleton.keys.forEach(async h=>{(await this._modelMeshSingleton.get(h)).visible=!1}),this._currentLevel=void 0,void(this._currentModel=void 0);let o,l;for(let h=0;h=0){let h=e[o],c=await this._modelMeshSingleton.get(h.file);h.init?c.visible=!0:(this.add(c),h.init=!0,this.handleLoaded(c)),l=c}this._currentLevel=o,this._currentModel=l}}),s.hysteresis&&(this.hysteresis=s.hysteresis),s.levels&&(this.levels=s.levels)}afterAddToEngine(s){this._engine=s,this._modelMeshSingleton=new gM,this._modelMeshSingleton.generate=this._generateModelMesh,this._engine.rendering.addPrepareRenderListener(this.update)}beforeRemoveFromEngine(s){this.dispose()}addLevel(s,t=0,e=0){t=Math.abs(t);const i=this.levels;let n;for(n=0;nt.init)&&this.dispatchEvent({type:"complete",value:this})}dispose(){if(this._loaded){this._engine.rendering.removePrepareRenderListener(this.update),this._modelMeshSingleton.keys.forEach(async s=>{let t=await this._modelMeshSingleton.get(s);this.remove(t)});for(let s=0;s(t.init=!1,t))}get levels(){return this._levels}set hysteresis(s){this._hysteresis=s}get hysteresis(){return this._hysteresis}set lodFactor(s){this._lodFactor=s}get lodFactor(){return this._lodFactor}},st.Label=S_,st.LengthMeasure=class extends Nn{constructor(s,t={}){super(),d(this,"_editor",null),d(this,"_node"),d(this,"_moveMarker"),d(this,"_moveMarkerDataSource"),d(this,"_infoMarkers"),d(this,"_infoMarkersDataSource"),d(this,"_totalMarker"),d(this,"_totalMarkerDataSource"),d(this,"_length",0),d(this,"_segmentLengths",[]),d(this,"_indexOffset",[0,0]),d(this,"_infoMarkersBuffer",{position:[],index:[],payload:[]}),d(this,"_moveMarkerBuffer",{position:[],index:[],payload:[]}),d(this,"_totalMarkerBuffer",{position:[],index:[],payload:[]}),d(this,"createInfoMarkers",e=>{const i=document.createElement("div");return i.innerText=e.toFixed(this.fixedNum),xt(i,`${te}-measure-pane`),i}),d(this,"createTotalMarker",e=>{const i=document.createElement("div");return i.innerText=`总长度:${e.toFixed(this.fixedNum)}`,xt(i,`${te}-measure-pane`),i}),d(this,"_addNode",e=>{this._node=e.value;const i=this._node.map(h=>h.position);if(i.length<2)return;this._segmentLengths=Nn.getSegementLength(i),this._length=this._segmentLengths.reduce((h,c)=>h+c,0);const n=this._editor._helpersBuffer,{position:r}=n,a=[];for(let h=0,c=r.length;hc+l)),this._infoMarkersBuffer.payload.splice(l,o,...this._segmentLengths.map(h=>({length:h}))),this._infoMarkersDataSource.setData(this._infoMarkersBuffer),this._moveMarkerDataSource.setData([])}),d(this,"_moveNode",e=>{const i=this._node[this._node.length-1],n=Nn.getLength(i.position,e.value);this._moveMarkerBuffer.position=[e.value],this._moveMarkerBuffer.index=[0],this._moveMarkerBuffer.payload=[{length:n}],this._moveMarkerDataSource.setData(this._moveMarkerBuffer)}),d(this,"_changeNode",e=>{this._node=e.value;const i=this._node.map(n=>n.position);i.length<2||(this._addNode(e),this._moveMarkerDataSource.setData([]),this._totalMarkerBuffer.position.splice(this.selectedIndex,1,i[i.length-1]),this._totalMarkerBuffer.index.splice(this.selectedIndex,1,this.selectedIndex),this._totalMarkerBuffer.payload.splice(this.selectedIndex,1,{length:this._length}),this._totalMarkerDataSource.setData(this._totalMarkerBuffer))}),this._engine=s,this._options=t,t.fixedNum&&(this.fixedNum=t.fixedNum)}initEditor(){return this._editor=this._engine.add(new ed(this._engine,{lineColor:this._options.lineColor}))}initInfoMarkers(){let s=this._infoMarkers=this._engine.add(new mo({callback:this.createInfoMarkers,offset:[0,0]})),t=this._moveMarker=this._engine.add(new mo({callback:this.createInfoMarkers,offset:[0,0]})),e=this._totalMarker=this._engine.add(new mo({callback:this.createTotalMarker,offset:[0,0]}));s.renderItem=this.createInfoMarkers,t.renderItem=this.createInfoMarkers,e.renderItem=this.createTotalMarker;let i=this._infoMarkersDataSource=new ee,n=this._moveMarkerDataSource=new ee,r=this._totalMarkerDataSource=new ee;this._infoMarkersDataSource.setAttribute("payload","length"),this._moveMarkerDataSource.setAttribute("payload","length"),this._totalMarkerDataSource.setAttribute("payload","length"),s.dataSource=i,t.dataSource=n,e.dataSource=r}clearBuffer(){this._infoMarkersBuffer={position:[],index:[],payload:[]},this._moveMarkerBuffer={position:[],index:[],payload:[]},this._totalMarkerBuffer={position:[],index:[],payload:[]}}clearAll(){this._editor.enabled=!1,this._editor.clearAll(),this.clearBuffer(),this._infoMarkersDataSource.setData(),this._moveMarkerDataSource.setData(),this._totalMarkerDataSource.setData()}dispose(){this.clearAll(),this._infoMarkers&&this._engine.remove(this._infoMarkers),this._moveMarker&&this._engine.remove(this._moveMarker),this._totalMarker&&this._engine.remove(this._totalMarker)}get selectedIndex(){let s;return s=this._editor.selectedIndex===-1?this._editor.drawedGraph.length:this._editor.selectedIndex,s}get length(){return this._length}get segmentLengths(){return this._segmentLengths}},st.LightSphere=class extends Si{constructor(s){super(s),d(this,"geometry"),d(this,"material"),d(this,"radius"),d(this,"color"),d(this,"widthSegments"),d(this,"heightSegments"),d(this,"phiStart"),d(this,"phiLength"),d(this,"thetaStart"),d(this,"thetaLength"),d(this,"animationEffect"),d(this,"animationEffectPeriod"),this.parameters=s,this.defineMaterialProxyProperties(["radius","color","widthSegments","heightSegments","phiStart","phiLength","thetaStart","thetaLength"])}initObject(){this.geometry=new jS(this.parameters),this.material=new WS(this.parameters),this.material.animationRotate=!0,this.material.setCommonUniforms(this.engine.rendering.uniforms)}},st.Marker=class extends td{constructor(s={}){super(s),d(this,"_icon"),d(this,"_width"),d(this,"_height"),this.isMarker=!0}initDom(){let s=document.createElement("img");return xt(s,`${te}-marker`),s}afterInit(){this.icon=this.parameters.icon||"",this.width=this.parameters.width||20,this.height=this.parameters.height||20}get icon(){return this._icon}set icon(s){this.dom&&(this.dom.src=s),this._icon=s}get width(){return this._width}set width(s){this.dom&&(this.dom.width=s),this._width=s}get height(){return this._height}set height(s){this.dom&&(this.dom.height=s),this._height=s}},st.Measure=Nn,st.MeshHeightMaterial=class extends jl{constructor(s){super({uniforms:{minAltitude:{value:0},maxAltitude:{value:870},noiseMap:{value:null},noiseUvScale:{value:.001},noiseScale:{value:.21},noiseBais:{value:-.2}}}),d(this,"_gradient",null),d(this,"_cachedGradientMap",null),d(this,"isMeshHeightMaterial",!0),this.defineMaterialNormalProperties(this,["minAltitude","maxAltitude","noiseUvScale","noiseScale","noiseBais"]),this.vertexShaderChunks=i2,this.fragmentShaderChunks=n2,this.createGradientMap(),this.setValues(s)}get gradient(){return this._gradient}set gradient(s){this._gradient=s,this.updateGradientMap()}get noiseMap(){return this.uniforms.noiseMap.value}set noiseMap(s){this.uniforms.noiseMap.value=s,s?this.defines.USE_NOISE_MAP=!0:delete this.defines.USE_NOISE_MAP,this.needsUpdate=!0}createGradientMap(){let s=document.createElement("canvas");s.width=64,s.height=2;let t=s.getContext("2d"),e=t.createLinearGradient(0,0,64,0);e.addColorStop(0,"#062516"),e.addColorStop(.2,"#85765d"),e.addColorStop(.6,"#032a21"),e.addColorStop(.9,"#001323"),e.addColorStop(.95,"#051420"),e.addColorStop(1,"#263241"),t.fillStyle=e,t.fillRect(0,0,64,2),this._cachedGradientMap=new Le(s),this.map=this._cachedGradientMap}updateGradientMap(){let s=this._cachedGradient;if(Object.prototype.toString.call(s)!=="[object Object]")return;let t=this._cachedGradientMap.image.getContext("2d");t.clearRect(0,0,64,2);let e=t.createLinearGradient(0,0,64,0);for(const i in s)Object.hasOwnProperty.call(s,i)&&e.addColorStop(i,s[i]);t.fillStyle=e,t.fillRect(0,0,64,2),this._cachedGradientMap.needsUpdate=!0}dispose(){this.noiseMap&&this.noiseMap.dispose(),super.dispose()}},st.MultiClippingPlaneCollection=q_,st.ObjectTracker=lo,st.PathTracker=class extends St{constructor(){super(...arguments),d(this,"_isRunning",!1),d(this,"_animationStartTime",0),d(this,"_animationDuration",0),d(this,"_animationTransform",{}),d(this,"_animationCurrenState",null),d(this,"_engine",null),d(this,"_track",null),d(this,"_frameInfo",null),d(this,"_sampledPath",[]),d(this,"_isPause",!1),d(this,"_pauseTime",0),d(this,"_pauseTimestamp",0),d(this,"_object",null),d(this,"_interpolateDirectThreshold",10),d(this,"_interpolateDirectThresholdPercent",.4),d(this,"_lockView",!1),d(this,"_viewFollow",!0),d(this,"_viewMode",H_),d(this,"_arcInfo",{})}afterAddToEngine(s){this._engine=s,s.map.mapType!=="blank"&&s.map.mapType!=="blank_3dcontrol"&&console.error("PathTracker is not compatible with current type of Map.")}onBeforeScenePrepareRender(s,t,e,i){if(!this._isRunning||this._isPause)return;const n=i.time-this._pauseTime-this._animationStartTime;let r=1;this._animationDuration>0&&(r=n/this._animationDuration),r>1&&(r=1);const a=this._interpolatePath(r);this._animationCurrenState=a;const o=this._engine.map;if(a.position!==void 0&&a.pitch!==void 0&&a.direction!==void 0){let l=a.direction;const h=this._engine._container.clientHeight;let c=this._animationTransform.distance/(h/2)*Math.tan(o.fov/2*Math.PI/180),u=this._engine.map.getZoomByZoomUnits(c);this.viewFollow&&this._updateCamera(e,a.position,u,c,l-Math.PI/2,a.pitch),this.object&&(this.object.position.set(...a.position),this.object.rotation.y=l,this.object.rotation.z=a.pitch)}n>=this._animationDuration||r>=1?(this.stop(),this._arcInfo={}):this._engine.requestRender()}_updateCamera(s,t,e,i,n,r){let a=this._engine.map;a.mapType==="blank"?this._computeCameraMatrixBlankMap(s,t,e,i,n,r):a.mapType==="blank_3dcontrol"&&this._computeCameraMatrixBlankMap3D(s,t,e,i,n,r)}_computeCameraMatrixBlankMap(s,t,e,i,n,r){const a=this._engine.map,{distance:o,heading:l,pitch:h}=this._animationTransform,c=this._engine._container.clientWidth,u=this._engine._container.clientHeight;if(s.position.set(0,0,0),s.quaternion.set(0,0,0,1),s.up.set(0,0,1),s.translateX(t[0]),s.translateY(t[1]),t[2]&&s.translateZ(t[2]),this.lockView)s.rotateOnAxis(new M(0,0,1),l*Math.PI/180+n),s.rotateOnAxis(new M(1,0,0),h*Math.PI/180+r),s.translateZ(o);else{s.rotateOnAxis(new M(0,0,1),a.getHeading()*Math.PI/180),s.rotateOnAxis(new M(1,0,0),a.getPitch()*Math.PI/180);const m=u/2/Math.tan(a.fov/2*Math.PI/180)*a.getZoomUnits();s.translateZ(m)}s.updateMatrix(),s.updateMatrixWorld(),s.aspect=c/u;let p=i;p<1&&(p=1),s.near=a.near,s.far=a.far*p,s.updateProjectionMatrix(),a.map.center=t,this.lockView&&(a.map.cameraDistance=o,a.map.zoomUnits=i,a.map.zoom=e,a.map.heading=l+n/Math.PI*180,a.map.pitch=h+r/Math.PI*180)}_computeCameraMatrixBlankMap3D(s,t,e,i,n,r){const a=this._engine.map,{distance:o,heading:l,pitch:h}=this._animationTransform;let c=a.unprojectPointArr(t);this.lockView?a.lookAt(c,{heading:l+re.radToDeg(n),pitch:h+re.radToDeg(r),range:o}):a.lookAt(c,{heading:a.getHeading(),pitch:a.getPitch(),range:a.getCameraDistance()})}_interpolatePath(s){const t=this._engine.map;for(let r=1;r=h.percent&&s1-I,O=[h.position,l.position,I],F=[l.position,c.position,z];if(B||y){B&&(this._arcInfo.line1=O),B&&(this._arcInfo.line2=F),B&&(this._arcInfo.startRatio=z);const Q=(u-(1-I))/I,k=u/this._arcInfo.startRatio,X=B?Q:k,{point:U,direction:H}=g_(this._arcInfo.line1,this._arcInfo.line2,B?X:1+X),Z=t.unprojectPointArr(U);U&&(p[0]=Z[0])&&(p[1]=Z[1]),v=new j(...H).angle()+Math.PI/2,b=B?X/2:(1+X)/2}}else if(y){const w=u/this._arcInfo.startRatio,{point:C,direction:L}=g_(this._arcInfo.line1,this._arcInfo.line2,1+w);C&&(p[0]=C[0])&&(p[1]=C[1]),v=new j(...L).angle()+Math.PI/2,b=(1+w)/2}const S=t.projectPointArr(p);if(a&&o)switch(this._viewMode){case c2:if(v=o.yaw+(a.yaw-o.yaw)*b,x=o.pitch+(a.pitch-o.pitch)*b,o.aim){const{aim:w}=o,C=t.projectPointArr(w),[L,T,E]=C;v=new j(L-S[0],T-S[1]).angle();const I=ds(S,C);x=Math.PI/2-Math.asin(Math.abs(E-S[2])/I)}break;case u2:v=o.yaw+(a.yaw-o.yaw)*u,x=o.pitch+(a.pitch-o.pitch)*u}return{percent:s,point:p,position:S,distance:ps(h.distance,l.distance,u),direction:v,pitch:x}}}const[e,i]=this._sampledPath[this._sampledPath.length-1].direction;let n={...this._sampledPath[this._sampledPath.length-1],direction:new j(e,i).angle()};if(this._frameInfo[this._sampledPath.length-1])if(this._frameInfo[this._sampledPath.length-1].aim){const{aim:r}=this._frameInfo[this._sampledPath.length-1],{position:a}=this._sampledPath[this._sampledPath.length-1],o=t.projectPointArr(r),[l,h,c]=o;n.direction=new j(l-a[0],h-a[1]).angle();const u=ds(a,o);n.pitch=Math.PI/2-Math.asin(Math.abs(c-a[2])/u)}else n.direction=this._frameInfo[this._sampledPath.length-1].yaw,n.pitch=this._frameInfo[this._sampledPath.length-1].pitch;return n}_createSampledPath(s){const t=this._engine.map;if(!s)return;let e=0,i=[0],n=[],r=[],a=0,o=[0];for(let p=1;pv.speed)){const v=_/this._frameInfo[p-1].speed*1e3;o[p]=v+a,a+=v}if(this._frameInfo&&this._frameInfo.length&&this._frameInfo.every(v=>v.time)){const v=this._frameInfo[p-1];o[p]=v.time+a,a+=v.time}if(p===1&&(n[0]=Ye(f,m).toArray(),r[0]=this._getRadians(f,m)),g){const v=Ye(f,m).toArray(),x=Ye(m,g).toArray(),y=(h=x,c=.5,[(l=v)[0]+(h[0]-l[0])*c,l[1]+(h[1]-l[1])*c]);n[p]=y;const b=this._getRadians(f,m),S=this._getRadians(m,g);r[p]=ps(b,S,.5)}else n[p]=Ye(f,m).toArray(),r[p]=this._getRadians(f,m)}var l,h,c;const u=[];for(let p=0;pi[p-1]&&p!==0&&s.length;const f={percent:(i[p]/e).toFixed(6),point:m,position:t.projectPointArr(m),distance:i[p],direction:n[p],pitch:r[p]};a&&o&&(f.percent=(o[p]/a).toFixed(6)),u.push(f),i[p]+this.interpolateDirectThresholdp.percent-m.percent),this._sampledPath=u,u}_getRadians(s,t){const e=this._engine.map,i=ds(s=e.projectPointArr([s[0],s[1],s[2]||0]),t=e.projectPointArr([t[0],t[1],t[2]||0])),n=(r=s,a=t,Math.sqrt(Math.pow(r[0]-a[0],2)+Math.pow(r[1]-a[1],2)));var r,a;const o=Math.acos(n/i);return s[2]>=t[2]?-o:o}start(s={}){const{duration:t=1e3,heading:e=0,pitch:i=60,distance:n=100}=s;if(this.track){if(this.lockView&&this._engine.lockCamera(),this._isPause)return this._pauseTime+=new Date().valueOf()-this._pauseTimestamp,this._isPause=!1,void this._engine.requestRender();if(!this._isRunning){if(this._isRunning=!0,this._animationTransform={heading:e,pitch:i,distance:n},this._animationDuration=t,this._frameInfo&&this._frameInfo.length&&this._frameInfo.every(r=>r.time)){this._animationTransform={heading:0,pitch:0,distance:n};let r=0;this._frameInfo.forEach(a=>{const{time:o}=a;r+=o}),this._animationDuration=r}this._animationStartTime=new Date().getTime(),this._engine.requestRender(),this.onStart&&this.onStart()}}}pause(s){return this._isPause=!0,this._pauseTimestamp=new Date().valueOf(),s&&this.lockView&&(this._engine.unlockCamera(),this._engine.requestRender()),this._animationCurrenState}stop(){this._isRunning&&(this._isRunning=!1,this._engine.unlockCamera(),this._engine.requestRender(),this._pauseTimestamp=0,this._pauseTime=0,this._animationCurrenState=null,this.onFinish&&this.onFinish())}set track(s){if(s){if(s instanceof Array&&s[0]instanceof Array&&typeof s[0][0]=="number"&&s.length>=2)this._track=s,this._createSampledPath(s);else if(s.constructor===Object&&s.geometry&&s.geometry.type==="LineString"&&Array.isArray(s.geometry.coordinates)){const{properties:t={}}=s;this._track=s.geometry.coordinates,this._frameInfo=t.frameInfo||[],this._createSampledPath(s.geometry.coordinates)}else if(s instanceof Array){const t=[],e=[];s.forEach(i=>{const{x:n,y:r,z:a,pitch:o,yaw:l,aim:h,speed:c,time:u}=i;t.push([n,r,a]),e.push({pitch:o,yaw:l,aim:h,speed:c,time:u})}),this._track=t,this._frameInfo=e,this._createSampledPath(t)}}else this._track=null}get track(){return this._track}set interpolateDirectThreshold(s){this._interpolateDirectThreshold!==s&&(this._interpolateDirectThreshold=s,this._createSampledPath(this.track))}get interpolateDirectThreshold(){return this._interpolateDirectThreshold}set interpolateDirectThresholdPercent(s){this._interpolateDirectThresholdPercent!==s&&(this._interpolateDirectThresholdPercent=s,this._createSampledPath(this.track))}get interpolateDirectThresholdPercent(){return this._interpolateDirectThresholdPercent}set viewMode(s){switch(this._viewMode=s,s){case H_:this.lockView=!1,this.viewFollow=!0;break;case l2:this.lockView=!0,this.viewFollow=!0;break;case h2:this.lockView=!1,this.viewFollow=!1;break;default:this.lockView=!0,this.viewFollow=!0}}get viewMode(){return this._viewMode}set lockView(s){this._lockView=s,this._isRunning&&s===!0?this._engine.lockCamera():this._engine.unlockCamera()}get lockView(){return this._lockView}set object(s){this._object=s}get object(){return this._object}get viewFollow(){return this._viewFollow}set viewFollow(s){this._viewFollow!==s&&(this._viewFollow=s)}},st.Pillar=class extends Si{constructor(s){super(s),d(this,"geometry"),d(this,"material"),d(this,"opacity"),d(this,"height"),d(this,"radiusSegments"),d(this,"radius"),d(this,"gradient"),d(this,"vertexHeights"),d(this,"openEnded"),d(this,"getInstanceLocalMatrix",(t,e,i)=>{const{vertexHeights:n}=this.parameters,{height:r}=this.dataSource.data;if(n&&r){const a=new rt;return a.makeScale(1,1,r[i]),a}return null}),d(this,"addCustomAttributes",()=>{const{vertexHeights:t}=this.parameters,{height:e}=this.dataSource.data;let i=-1;if(!t||!e)return i;for(let n=0;n{this._isAdd=!0,this._stage!==0&&this._stage!==1||(this._stage=1,this.addNode(e.position,e.point),this._handleAddFinish()),this._engine.requestRender()}),d(this,"_handleCompleteClick",e=>{if(this._stage!==1){this.complete(),this._selectedIndex=e.entity.selectedIndex,this._engine.event.unbind("click",this._handleAddClick),this._lastDataItem=this._drawedGraph.slice(this._selectedIndex,this._selectedIndex+1),this._stage=2,this._completedDataSource.setData();for(let i=0;i{this._stage===1&&(this._stage=2),this._hasBeenPush=!1,this.dispatchEvent({type:"change",value:this.data}),this._engine.requestRender(),this._engine.event.unbind("click",this._handleAddClick),this._engine.event.bind(this._point,"click",this._handleNodeClick),this._engine.event.bind("click",this._handleCancelEdit)}),d(this,"_handleNodeClick",e=>{e.domEvent?e.event.domEvent.preventDefault():e.event.preventDefault(),!e.entity||this._stage!==2&&this._stage!==3||(this._transformIndex=e.entity.index,this.attachTransform(e.entity.position),this._stage=3,this._engine.selection.transformControl.addEventListener("objectChange",this._handleTransformChanging),this._engine.selection.transformControl.addEventListener("mouseUp",this._handleTransformChanged))}),d(this,"_handleTransformChanging",e=>{let i=this._getTransformBoxState();this._stage!==3&&this._stage!==4||(this.updateNode(this._transformIndex,i),this.dispatchEvent({type:"change",value:this.data}),this._stage=4)}),d(this,"_handleTransformChanged",e=>{let i=this._getTransformBoxState();this._stage===4&&(this.updateNode(this._transformIndex,i),this.dispatchEvent({type:"change",value:this.data}),this._stage=3)}),d(this,"_handleCancelEdit",e=>{this._stage===3&&(this.detachTransform(),this._stage=2)}),this._engine=s,t.pointColor||(t.pointColor="rgb(200, 200, 50)"),t.pointSize||(t.pointSize=10),this._options=t}initObjects(){this.initPoint(),this.initCompleteElement()}initPoint(){let s=this._pointDataSource=new ee;(this._point=this._engine.add(new Bu({color:this._options.pointColor,size:1.1*this._options.pointSize}))).dataSource=s}initCompleteElement(){let s=this._completedDataSource=new ee,t=this._completedElement=this._engine.add(new Bu({color:this._options.pointColor,size:this._options.pointSize}));s.setAttribute("selectedIndex"),t.dataSource=s,this._engine.event.bind(t,"click",this._handleCompleteClick)}initEvents(){this._engine.event.bind("click",this._handleAddClick),this._drawedGraph.length>0&&(this._engine.event.bind("click",this._handleCancelEdit),this._engine.event.bind(this._completedElement,"click",this._handleCompleteClick))}graphInfo(s){this._pointBuffer.payload[0].selectedIndex=s;const t=new Ni(this._pointBuffer.position[0],this._pointBuffer.payload[0]);return{pointBuffer:this._pointBuffer,dataItem:t}}addNode(s,t){this._pointBuffer.position.push(s),this._pointBuffer.index=[0],this._pointBuffer.payload.push({point:t,position:s,scale:2}),this._pointDataSource.setData(this._pointBuffer)}updateNode(s,t){const{point:e,position:i}=t;this._pointBuffer.position.splice(s,1,i),this._pointBuffer.payload.splice(s,1,{point:e,position:i,scale:t.width,angle:t.angle[2]}),this._pointDataSource.setData(this._pointBuffer)}unbindEvents(){this._engine.event.unbind("click",this._handleAddClick),this._engine.event.unbind("click",this._handleCancelEdit),this._engine.event.unbind("mousemove",this._handleAddMove),this._engine.event.unbind(this._point,"click",this._handleNodeClick),this._engine.event.unbind(this._completedElement,"click",this._handleCompleteClick),this._engine.selection.transformControl.removeEventListener("objectChange",this._handleTransformChanging),this._engine.selection.transformControl.removeEventListener("mouseUp",this._handleTransformChanged)}clearBuffers(){this._pointBuffer={position:[],index:[],payload:[]}}clearObjects(){this._pointDataSource.setData(),this._engine.requestRender()}dispose(){this.enabled=!1,this._engine.remove(this._point)}overwriteNodes(s){this.clearBuffers(),this._pointBuffer.position[0]=s[0].position,this._pointBuffer.index=[0],this._pointBuffer.payload=s,this._pointDataSource.setData(this._pointBuffer)}_getProperties(s){const{scale:t}=s;return{scale:t}}get data(){return this._pointBuffer.payload}set data(s){this.overwriteNodes(s),this._handleCancelEdit(),this._stage=2,this._isAdd=!0,this.dispatchEvent({type:"change",value:s}),this._engine.requestRender()}},st.PointGroup=L_,st.PointerLockControl=class extends o2{constructor(s){super(s.camera,s.map.container),d(this,"_enableKeyboardEvent",!1),d(this,"_moveForward",!1),d(this,"_moveBackward",!1),d(this,"_moveLeft",!1),d(this,"_moveRight",!1),d(this,"_prevTime"),d(this,"_velocity",new M),d(this,"_direction",new M),d(this,"handleKeyDownEvent",t=>{switch(t.keyCode){case 87:this._moveForward=!0;break;case 83:this._moveBackward=!0;break;case 65:this._moveLeft=!0;break;case 68:this._moveRight=!0;break;case 76:!this.isLocked&&this.lock()}}),d(this,"animationMove",()=>{if(!this._enableKeyboardEvent)return;const t=performance.now();requestAnimationFrame(this.animationMove);const e=(t-this._prevTime)/1e3;this._velocity.x-=10*this._velocity.x*e,this._velocity.z-=10*this._velocity.z*e,this._direction.z=Number(this._moveForward)-Number(this._moveBackward),this._direction.x=Number(this._moveRight)-Number(this._moveLeft),this._direction.normalize(),(this._moveForward||this._moveBackward)&&(this._velocity.z-=this._direction.z*this.forwardStepSize*e),(this._moveLeft||this._moveRight)&&(this._velocity.x-=this._direction.x*this.rightStepSize*e),this.moveRight(-this._velocity.x),this.moveForward(-this._velocity.z),this._prevTime=t}),d(this,"handleKeyUpEvent",t=>{switch(t.keyCode){case 87:this._moveForward=!1;break;case 83:this._moveBackward=!1;break;case 65:this._moveLeft=!1;break;case 68:this._moveRight=!1}}),this._engine=s,this._engine.camera.up.set(0,0,1),this.stepSize=10,this.addEventListener("change",t=>{s.requestRender()})}dispose(){super.dispose(),this.enableKeyboardEvent=!1}get forwardStepSize(){return this._forwardStepSize}set forwardStepSize(s){this._forwardStepSize=s}get rightStepSize(){return this._rightStepSize}set rightStepSize(s){this._rightStepSize=s}set stepSize(s){this.forwardStepSize=s,this.rightStepSize=s}set enableKeyboardEvent(s){s!==this._enableKeyboardEvent&&(this._enableKeyboardEvent=s,s?(this._prevTime=performance.now(),requestAnimationFrame(this.animationMove),window.addEventListener("keydown",this.handleKeyDownEvent),window.addEventListener("keyup",this.handleKeyUpEvent)):(window.removeEventListener("keydown",this.handleKeyDownEvent),window.removeEventListener("keyup",this.handleKeyUpEvent)))}},st.Polygon=fs,st.PolygonEditor=W_,st.Popup=class extends td{constructor(s){super(s),d(this,"_titleDiv"),d(this,"_contentDiv"),d(this,"_title"),d(this,"_content"),d(this,"_closePopup"),d(this,"click",()=>{this.visible=!1}),this.isPopup=!0}initDom(){const s=document.createElement("div");xt(s,`${te}-popup`);const t=document.createElement("div");xt(t,"frame");const e=this._titleDiv=document.createElement("div");xt(e,"title"),e.innerText=this.title;const i=this._closePopup=document.createElement("div");xt(i,"close"),i.innerText="x",i.addEventListener("click",this.click);const n=this._contentDiv=document.createElement("div");xt(n,"content"),n.innerText=this.content,t.appendChild(i),t.appendChild(e),t.appendChild(n);const r=document.createElement("div");return xt(r,"triangle"),s.appendChild(t),s.appendChild(r),s}afterInit(){this.title=this.parameters.title||"title",this.content=this.parameters.content||"content"}onDispose(){this._closePopup.removeEventListener("click",this.click)}get title(){return this._title}set title(s){s&&(this._title=s,this._titleDiv&&(this._titleDiv.innerText=s))}get content(){return this._content}set content(s){this._content=s,this._contentDiv&&(this._contentDiv.innerText=s)}},st.Realistic3DTilesMaterialManager=class extends Yl{constructor(){super(...arguments),d(this,"isRealistic3DTilesMaterialManager",!0),d(this,"_autoTimingLight",!0),d(this,"_nightLightDensity",0),d(this,"getTexture",(s,t,e,i,n)=>{const r=la.load(Tc(pl(),"assets/textures/realistic",`TexturesCom_${s}_${t}.${i.format||"jpg"}`),n);return r.wrapS=r.wrapT=ze,r.repeat=e,r}),d(this,"createPbrMaterial",(s,t,e,i={},n={})=>{e||(e=new j(.5,.5)),t||(t={albedo:!0,normal:!0,roughness:!0,ao:!1});const r={...i,envMapIntensity:2};return t.albedo&&(r.map=this.getTexture(s,"albedo",e,n)),t.normal&&(r.normalMap=this.getTexture(s,"normal",e,n)),t.roughness&&(r.roughnessMap=this.getTexture(s,"roughness",e,n)),t.ao&&(r.aoMap=this.getTexture(s,"ao",e,n)),t.emissive&&(r.emissiveMap=this.getTexture(s,"emissive",e,n)),new yn(r)}),d(this,"createBuildingMaterial",()=>{const s=la.load(Jt("assets/textures/building/building3_atlas_diffuse.jpg"));s.wrapS=s.wrapT=ze;const t=la.load(Jt("assets/textures/building/building3_atlas_normal.jpg"));t.wrapS=t.wrapT=ze;const e=la.load(Jt("assets/textures/building/building3_atlas_metallic_roughness.jpg"));e.wrapS=e.wrapT=ze;const i=la.load(Jt("assets/textures/building/building_atlas_emissive.jpg"));i.wrapS=i.wrapT=ze;const n=la.load(Jt("assets/textures/building/ac1.png"));n.flipY=!1;const r=new jl({roughness:.5,metalness:.2,map:s,normalMap:t,roughnessMap:e,metalnessMap:e,emissiveMap:i,uniforms:{acMap:{value:n}},vertexShaderChunks:{pars:` + attribute float _mt; + varying float vMt; + `,main_before:` + vMt = _mt; + `},fragmentShaderChunks:{pars:` + uniform sampler2D acMap; + varying float vMt; + #define USE_CUSTOM_MAP + `,main_before:` + if (vMt < 100.0) { + float row = floor(vMt / 4.0); + float col = mod(vMt, 4.0); + uv.x = col * 0.25 + mod(vUv.x / 36.0, 0.25); + if (vUv.y < 3.0) { + uv.y = 0.02; + uv.x = 0.02; + } else { + // uv.y = vUv.y / 9.0; + uv.y = 1.0 - (row * 0.25 + 0.25 - mod(vUv.y / 36.0, 0.25)); + } + } + `,custom_map:` + vec4 sampledDiffuseColor; + if (vMt < 100.0) { + sampledDiffuseColor = texture2D( map, uv ); + } + else { + sampledDiffuseColor = texture2D( acMap, vUv ); + } + `,color_after:` + // diffuseColor.xyz = vec3(vMt / 15.0, 0, 0); + `}});return r.uniforms.acMap.value=n,r}),d(this,"handleWeatherChanged",s=>{let t=.8,e=1,i=!1;s==="cloudy"||s==="partlyCloudy"?(t=.4,e=1):s==="rainy"?(t=.2,e=1,i=!0):s==="snow"&&(t=.2,e=.2);const n=this._materrialMap.get("road");if(n.envMapIntensity=t,n.roughness=e,i){const r=this.getTexture("Ground_MudWet_512","roughness",new j(.1,.1),{},()=>{this.engine.requestRender()});n._roughnessMap=n.roughnessMap,n.roughnessMap=r,n.map.repeat=new j(.05,.05)}else n._roughnessMap&&(n.roughnessMap=n._roughnessMap,n._roughnessMap=null,n.map.repeat=new j(.5,.5));this._materrialMap.get("buildingSide").envMapIntensity=t}),d(this,"handleTimeChanged",s=>{if(!this._autoTimingLight)return;let t=0;t=s>66600||s<19800?1:s>63e3?(s-63e3)/3600:s<23400?(23400-s)/3600:0,this.updateLightDensity(t)})}onInit(){this.addMaterials();const s=this.engine,t=s.rendering.sky;t&&(t.addTimeChangedListener(this.handleTimeChanged),this.handleTimeChanged(t.time));const e=s.rendering.weather;e&&(e.addWeatherChangedListener(this.handleWeatherChanged),this.handleWeatherChanged(e.weather))}addMaterials(){this._materrialMap.set("road",this.createPbrMaterial("Asphalt_Base10_2x2_512",null,null,{color:11184810,roughness:.8,side:ce,emissiveIntensity:0,emissive:new tt(920067)})),this._materrialMap.set("isolation",this.createPbrMaterial("Nature_Pebbles_512",null,null,{})),this._materrialMap.set("green",this.createPbrMaterial("Nature_Moss_512",null,null,{color:13434828})),this._materrialMap.set("buildingSide",this.createBuildingMaterial()),this._materrialMap.set("buildingRoof",this.createPbrMaterial("Roofing_Bitumen_512",{},new j(1,1),{color:5592405,metalness:.2,roughness:.8},{format:"jpg"}));const s=new zg;this._materrialMap.set("water",s),this.engine.addBeforeRenderObject(s)}updateLightDensity(s){const t=this._materrialMap.get("buildingSide");this._materrialMap.get("road"),t.uniforms.emissive.value.copy(GM).multiplyScalar(.3*s)}get autoTimingLight(){return this._autoTimingLight}set autoTimingLight(s){if(s=!!s,this._autoTimingLight=s,s){const t=this.engine.sky;t&&this.handleTimeChanged(t.time)}else this.updateLightDensity(this._nightLightDensity)}get nightLightDensity(){return this._nightLightDensity}set nightLightDensity(s){this._nightLightDensity=s,this._autoTimingLight||this.updateLightDensity(s)}},st.RectEditor=G_,st.RoadLight3DTilesElement=class extends kg{constructor(){super(...arguments),d(this,"subscribedDataTypeIds",[101]),d(this,"_tickInterval",0),d(this,"_scaleSize",.04),d(this,"_powerStates",new Set),d(this,"_colorStates",new Map),d(this,"_allPowerOn",!1)}createMeshFromGeometry(s){return new XM(s)}_refreshPowerViewState(s,t){this._allPowerOn||this._powerStates.has(s)?(t.visible=!0,this._colorStates.has(s)&&(t.color=this._colorStates.get(s))):t.visible=!1}onEntityShow(s,t){this._refreshPowerViewState(s,t)}setPowerState(s,t){if(t?this._powerStates.add(s):this._powerStates.delete(s),this._visibleIdMap.has(s)){const e=this._visibleIdMap.get(s);this._refreshPowerViewState(s,e),this.engine.requestRender()}}togglePowerState(s){this.setPowerState(s,!this.isPowerOn(s)),this.engine.requestRender()}isPowerOn(s){return this._powerStates.has(s)}setColor(s,t){if(this._colorStates.set(s,t),this._visibleIdMap.has(s)){const e=this._visibleIdMap.get(s);this._refreshPowerViewState(s,e),this.engine.requestRender()}}set allPowerOn(s){this._allPowerOn=s}get allPowerOn(){return this._allPowerOn}},st.ShapePoint=class extends Si{constructor(s){super(s),this.parameters=s,this.defineGeometryProxyProperties(["shapeType"])}getDefaultParams(){return{shapeType:"cube"}}initObject(){const{shapeType:s,...t}=this.parameters;this.geometry=new Dw(this.parameters),this.material=new Iw(t),this.material.setCommonUniforms(this.engine.rendering.uniforms)}},st.SimplePoint=Bu,st.Spark=class extends rS{constructor(s){super(s),d(this,"geometry"),d(this,"material"),d(this,"color"),d(this,"vertexColors"),d(this,"height"),d(this,"vertexHeights"),d(this,"speed"),d(this,"tailLength"),d(this,"idle"),d(this,"emissive"),this.parameters=s,this.defineMaterialProxyProperties(["color","height","tailLength","speed","idle","emissive","vertexColors","vertexHeights"])}getDefaultParams(){return{height:100}}initObject(){this.geometry=new aS(this.parameters),this.material=new lS(this.parameters),this.material.setCommonUniforms(this.engine.rendering.uniforms)}setData(){const s=this.dataSource.data,t=[],e=[],i=[],n=[],r=[];for(let a=0;a{let i=e.value;this.clearBuffers(),this._drawSplineArea(i),this.dispatchEvent({type:"change",value:{polygon:this.positions,spline:i}})}),d(this,"_drawSplineArea",e=>{let i=this._parseSplineToArea(e);for(let n=0;n=0;i--){const n=s[i];let r=new j(1,0);r=r.rotateAround(e,n.angle),r.normalize();let a=[n.position[0]-r.x*n.scale,n.position[1]-r.y*n.scale,n.position[2]];t.push(a)}return t.push(t[0]),t}clearBuffers(){this._strokeBuffer={position:[[]],index:[],payload:[]},this._fillBuffer={position:[[[]]],index:[],payload:[]}}clearObjects(){this._strokeDataSource.setData(),this._fillDataSource.setData(),this._engine.requestRender()}dispose(){this.enabled=!1,this._engine.remove(this._stroke),this._engine.remove(this._fill)}get spline(){return this._splineEditor}set positions(s){this._splineEditor.data=s}get positions(){return this._fillBuffer.position[0][0]}get enabled(){return this._splineEditor.enabled}set enabled(s){s!==this._enabled&&(this._splineEditor.enabled=s,this._splineEditor.clearAll(),s?(this.clearBuffers(),this._splineEditor.addEventListener("change",this._handleSplineChange)):(this._splineEditor.removeEventListener("change",this._handleSplineChange),this.clearObjects()))}},st.SplineEditor=ed,st.StaticSky=class extends Uf{constructor(){super(),d(this,"isStaticSky",!0),d(this,"_phase","default"),d(this,"_lastPhase",null),d(this,"_lastWeather",null),d(this,"_nightStartTime",64800),d(this,"_nightEndTime",21600),d(this,"_afternoonTime",55800),d(this,"_duskTime",61200),d(this,"_engine",null),d(this,"_PMREMGenerator",null),this.time=43200}afterAddToEngine(s){super.afterAddToEngine(s),this._engine=s,this._PMREMGenerator=new La(s.renderer),this.loadSkyTexture()}onTimeChanged(s){s>=this._nightStartTime||s<=this._nightEndTime?this._phase="night":s>=this._duskTime?this._phase="dusk":s>=this._afternoonTime?this._phase="afternoon":this._phase="default",this.loadSkyTexture()}onWeatherChanged(s){this._weather=s,this.loadSkyTexture()}loadSkyTexture(){if(!this._engine||this._phase===this._lastPhase&&this.weather===this._lastWeather)return;let s=Tc(pl(),"assets/textures/sky",this.weather,this._phase,"/"+this._phase+".jpg");this.textureURL=s,this._lastPhase=this._phase,this._lastWeather=this._weather}},st.TerrainClipPlan=class extends St{constructor(s={}){super(),d(this,"_coveragePosition",[]),d(this,"_splitNum",100),d(this,"_bottomImg"),d(this,"_wallImg"),d(this,"_bottomPolygon"),d(this,"_sideWall"),d(this,"_multiClippingPlaneCollection"),d(this,"_terrainHeight"),d(this,"_dirty"),d(this,"_dirtyList",{lists:[[]],lastIndex:0}),d(this,"isClockWise",t=>{let e=t.length,i=0;for(let n=e-1,r=0;rn.slice(3*h,3*(h+1))),l=gs.fromPoints(this._engine,o,{});this._updateExcavateMinHeight(o),e.add(l),a+=3}}else{const i=gs.fromPoints(this._engine,s,{});this._updateExcavateMinHeight(s),e.add(i)}this._multiClippingPlaneCollection=e,this.dirty=!1}else if(t){const e=this._cutCoordinates.vertices,i=this._cutTriangle;for(let n=0;ne.slice(3*a,3*(a+1)));this._updateExcavateMinHeight(r),n+=3}}else this._updateExcavateMinHeight(s);this._prepareData(),this.build()}_updateExcavateMinHeight(s){for(let t=0;t0)for(let r=0;rthis.excavateMaxHeight&&(this.excavateMaxHeight=a),a1&&t[0][0]===0&&t[i-1][1]===e-1&&(t[0][0]=t[i-1][0],t.splice(i-1,1),i-=1);for(let n=0;na?c=o-a:othis.terrainHeight?this.excavateMaxHeight-this.terrainHeight:this.terrainHeight-this.excavateMinHeight:this.height+(this.excavateMaxHeight-this.lerpExcavateMinHeight);const i=e+(this.excavateMaxHeight-this.lerpExcavateMinHeight)+500;for(let a=0;a=0?1:-1,t!==void 0&&t!==e)return!0;t=e}return!1}clear(){this._bottomPolygon&&this._engine.remove(this._bottomPolygon),this._sideWall&&this._engine.remove(this._sideWall),this._bottomPolygon&&this._bottomPolygon.setData(),this._sideWall&&this._sideWall.setData(),this._dirtyList={lists:[[]],lastIndex:0}}dispose(){this.clear(),this._clearMultiClippingPlane()}get dirty(){return this._dirty}set dirty(s){this._dirty!==s&&(this._dirty=s)}get bottomImg(){return this._bottomImg}set bottomImg(s){this._bottomImg=s}get wallImg(){return this._wallImg}set wallImg(s){this._wallImg=s}get height(){return this._height}set height(s){this._height=s}get isTerrainHeight(){return this._isTerrainHeight}set isTerrainHeight(s){s!==this._isTerrainHeight&&(this._isTerrainHeight=s)}get terrainHeight(){return this._terrainHeight}set terrainHeight(s){this._terrainHeight=s}get coveragePosition(){return this._coveragePosition}set coveragePosition(s){const t=s.length;if(s&&t>2){const e=this.isClockWise(s);this._coveragePosition=e?[...s].reverse():s}else this._coveragePosition=[];this.dirty=!0}get length(){return this._coveragePosition.length}set terrain(s){this._terrain=s}},st.TerrainMap=class extends St{constructor(s={}){super(),d(this,"visible",!0),d(this,"freezeUpdate",!1),d(this,"_engine"),d(this,"_mapView"),d(this,"handleNodeCreated",n=>{this._engine&&this._engine.requestRender(),n.receiveShadow=this.tileReceiveShadow,n.castShadow=this.tileCastShadow}),d(this,"handleStateChange",()=>{this._engine&&this._engine.requestRender()});let t=new Pn;this.tileReceiveShadow=s.receiveShadow||!1,this.tileCastShadow=s.castShadow||!1;let e=new $i;e.getUrl=s.getTerrainUrl;const i=this._mapView=new Se(Se.HEIGHT,t,e,s.overrideMaterial);i.rotateX(Math.PI/2),this.add(i),i.onNodeReady=this.handleStateChange,i.onNodeCreated=this.handleNodeCreated,i.onNodeSubdivided=this.handleStateChange,i.children[0].receiveShadow=this.tileReceiveShadow,i.children[0].castShadow=this.tileCastShadow}afterAddToEngine(s){this._engine=s}onBeforeScenePrepareRender(){!this.visible||this.freezeUpdate||this._mapView.update(this._engine.rendering.camera)}get mapView(){return this._mapView}},st.TextMesh=bl,st.TrafficLight3DTilesElement=class extends kg{constructor(s){super(s),d(this,"subscribedDataTypeIds",[110,111,112,113]),d(this,"_tickInterval",1e3),d(this,"_typeConfigMap",{110:{slots:[0,0,0],stateType:1},111:{slots:[1,1,1]},112:{slots:[4,5]},113:{slots:[-1]},xxx:{slots:[0,0,0,-1]},xxx1:{slots:[0,0,-1],stateType:2}}),d(this,"_scaleSize",.1),d(this,"_stateMap",new Map),d(this,"_timeTableMap",new Map),d(this,"_refreshObjectViewState",(t,e)=>{if(this._timeTableMap.has(t))e.timeTable=this._timeTableMap.get(t);else if(e.timeTable=null,this._stateMap.has(t)){const i=this._stateMap.get(t);e.lightState=i.state,e.number=i.number,e.stateStartTime=i.startAt}else e.lightState=null;e.updateState(Date.now()/1e3)})}createMeshFromGeometry(s,t){const e=new Ug(s);e.lightStatus=-1,e.dataType=t.dataType;const i=this._typeConfigMap[t.dataType];return e.slots=i.slots,e.stateType=i.stateType,e}tickObject(s,t){s.updateState(t)}onEntityShow(s,t){this._refreshObjectViewState(s,t)}setLightState(s,t,e=0){if(t!=null?this._stateMap.set(s,{state:t,number:e,startAt:Date.now()/1e3}):this._stateMap.delete(s),this._visibleIdMap.has(s)){const i=this._visibleIdMap.get(s);this._refreshObjectViewState(s,i),this.engine.requestRender()}}setTimeTable(s,t){if(t?this._timeTableMap.set(s,t):this._timeTableMap.delete(s),this._visibleIdMap.has(s)){const e=this._visibleIdMap.get(s);this._refreshObjectViewState(s,e),this.engine.requestRender()}}getTimeTable(s){return this._timeTableMap.get(s)}getLightState(s){return this._stateMap.get(s)}getRealtimeState(s){let t=this._visibleIdMap.get(s);if(t){const e=this._timeTableMap.get(s);if(e)t=Fg,t.timeTable=e;else{const i=this.getLightState(s);i&&(t=Fg,t.lightState=i.state,t.number=i.number,t.stateStartTime=i.startAt)}}return t?(t.updateStatus(Date.now()),{lightState:t.lightState,number:t.number}):null}},st.TransformControl=zf,st.Twin=class extends St{constructor(s={}){super(),d(this,"engine",null),d(this,"_dataProvider",null),d(this,"_modelConfig",{}),d(this,"_modelLoaded",!0),d(this,"_buffers",{}),d(this,"_instances",{}),d(this,"_objects",[]),d(this,"_objectAttributes",{}),d(this,"handleBeforeRender",(t,e)=>{if(!this._entityManager||this._isPause)return;let{buffers:i,modelIndexMap:n}=this._entityManager.tick(t,e.time);if(this._buffers=i,this._modelLoaded){Object.keys(this._instances).forEach(r=>{let a=this._instances[r],o=this._filterBuffer(n,r);a&&(a.setBufferData(o),a.update())});for(let r=0;r{s.clear()}),this._trackInfo=null,this._isStarted=!1}_filterBuffer(s,t){if(!s||!s[t])return null;const e=s[t],i=[],n=[],r=[],a=[],o=[],l=[];for(let h=0;h{vw.load(s,i=>{let n=Wl(i.scene,!1,!0);t(n)})})}modelClear(){this._modelConfig={},Object.values(this._instances).forEach(s=>{this.engine.remove(s)}),this._instances={}}getCurrentBuffers(){return this._buffers}setColorById(s,t){this._modelLoaded&&Object.keys(this._instances).forEach(e=>{this._instances[e].setColor(s,new tt(t))})}_track(){if(this._modelLoaded){const{id:s,option:t}=this._trackInfo;Object.keys(this._instances).forEach(e=>{let i=this._instances[e];const n=i._idIndexMap[s];n!==void 0&&this._objectTracker.track({instance:i,instanceIndex:n},t)})}}trackById(s,t={radius:100,pitch:1.2}){this._trackInfo={id:s,option:t}}clearTrack(){this._trackInfo=null,this._objectTracker.stop()}get dataProvider(){return this._dataProvider}get entityManager(){return this._entityManager}get objectAttributes(){return this._objectAttributes}set objectAttributes(s){this._objectAttributes=s}get objects(){return this._objects}set objects(s){for(let t=0;tthis.loadModelAsync(i));Promise.all(e).then(i=>{this.modelClear();for(let n=0;ni.map(i=>d[i]); +import{d as z,o as y,c as v,r as C,a as ne,t as j,n as ee,b as N,w,e as P,T as os,_ as R,u as Jo,i as ea,f as ta,g as Ht,h as F,j as b,k as g,p as de,l as pe,m as At,q as si,s as B,v as I,x as Mn,y as Ze,z as bt,A as as,B as vi,C as na,D as O,F as G,E as ie,G as xi,H as ls,I as S,J as Ve,K as Gr,L as cs,M as U,N as ot,O as sa,P as ss,Q as ii,R as _t,S as Hr,U as us,V as ia,W as ra,X as vn,Y as Wr,Z as ye,$ as oa,a0 as aa,a1 as Zr,a2 as la,a3 as ca,a4 as wi,a5 as He,a6 as We,a7 as he,a8 as xn,a9 as je,aa as ua,ab as ha,ac as Qi,ad as da,ae as pa,af as fa,ag as ma,ah as ga,ai as ya,aj as Xi}from"./framework.n6hqIsqL.js";const _a=z({__name:"VPBadge",props:{text:{},type:{default:"tip"}},setup(l){return(e,t)=>(y(),v("span",{class:ee(["VPBadge",e.type])},[C(e.$slots,"default",{},()=>[ne(j(e.text),1)])],2))}}),ba={key:0,class:"VPBackdrop"},Ma=z({__name:"VPBackdrop",props:{show:{type:Boolean}},setup(l){return(e,t)=>(y(),N(os,{name:"fade"},{default:w(()=>[e.show?(y(),v("div",ba)):P("",!0)]),_:1}))}}),va=R(Ma,[["__scopeId","data-v-458bad70"]]),W=Jo;function xa(l,e){let t,n=!1;return()=>{t&&clearTimeout(t),n?t=setTimeout(l,e):(l(),(n=!0)&&setTimeout(()=>n=!1,e))}}function ri(l){return/^\//.test(l)?l:`/${l}`}function ki(l){const{pathname:e,search:t,hash:n,protocol:s}=new URL(l,"http://a.com");if(ea(l)||l.startsWith("#")||!s.startsWith("http")||!ta(e))return l;const{site:i}=W(),r=e.endsWith("/")||e.endsWith(".html")?l:l.replace(/(?:(^\.+)\/)?.*$/,`$1${e.replace(/(\.md)?$/,i.value.cleanUrls?"":".html")}${t}${n}`);return Ht(r)}function wn({correspondingLink:l=!1}={}){const{site:e,localeIndex:t,page:n,theme:s,hash:i}=W(),r=F(()=>{var a,c;return{label:(a=e.value.locales[t.value])==null?void 0:a.label,link:((c=e.value.locales[t.value])==null?void 0:c.link)||(t.value==="root"?"/":`/${t.value}/`)}});return{localeLinks:F(()=>Object.entries(e.value.locales).flatMap(([a,c])=>r.value.label===c.label?[]:{text:c.label,link:wa(c.link||(a==="root"?"/":`/${a}/`),s.value.i18nRouting!==!1&&l,n.value.relativePath.slice(r.value.link.length-1),!e.value.cleanUrls)+i.value})),currentLang:r}}function wa(l,e,t,n){return e?l.replace(/\/$/,"")+ri(t.replace(/(^|\/)index\.md$/,"$1").replace(/\.md$/,n?".html":"")):l}const ka=l=>(de("data-v-c70eed8a"),l=l(),pe(),l),Sa={class:"NotFound"},Ta={class:"code"},Aa={class:"title"},Ca=ka(()=>b("div",{class:"divider"},null,-1)),Ia={class:"quote"},La={class:"action"},za=["href","aria-label"],Ba=z({__name:"NotFound",setup(l){const{theme:e}=W(),{currentLang:t}=wn();return(n,s)=>{var i,r,o,a,c;return y(),v("div",Sa,[b("p",Ta,j(((i=g(e).notFound)==null?void 0:i.code)??"404"),1),b("h1",Aa,j(((r=g(e).notFound)==null?void 0:r.title)??"PAGE NOT FOUND"),1),Ca,b("blockquote",Ia,j(((o=g(e).notFound)==null?void 0:o.quote)??"But if you don't change your direction, and if you keep looking, you may end up where you are heading."),1),b("div",La,[b("a",{class:"link",href:g(Ht)(g(t).link),"aria-label":((a=g(e).notFound)==null?void 0:a.linkLabel)??"go to home"},j(((c=g(e).notFound)==null?void 0:c.linkText)??"Take me home"),9,za)])])}}}),Oa=R(Ba,[["__scopeId","data-v-c70eed8a"]]);function Yr(l,e){if(Array.isArray(l))return es(l);if(l==null)return[];e=ri(e);const t=Object.keys(l).sort((s,i)=>i.split("/").length-s.split("/").length).find(s=>e.startsWith(ri(s))),n=t?l[t]:[];return Array.isArray(n)?es(n):es(n.items,n.base)}function Na(l){const e=[];let t=0;for(const n in l){const s=l[n];if(s.items){t=e.push(s);continue}e[t]||e.push({items:[]}),e[t].items.push(s)}return e}function Pa(l){const e=[];function t(n){for(const s of n)s.text&&s.link&&e.push({text:s.text,link:s.link,docFooterText:s.docFooterText}),s.items&&t(s.items)}return t(l),e}function oi(l,e){return Array.isArray(e)?e.some(t=>oi(l,t)):At(l,e.link)?!0:e.items?oi(l,e.items):!1}function es(l,e){return[...l].map(t=>{const n={...t},s=n.base||e;return s&&n.link&&(n.link=s+n.link),n.items&&(n.items=es(n.items,s)),n})}function at(){const{frontmatter:l,page:e,theme:t}=W(),n=si("(min-width: 960px)"),s=B(!1),i=F(()=>{const m=t.value.sidebar,_=e.value.relativePath;return m?Yr(m,_):[]}),r=B(i.value);I(i,(m,_)=>{JSON.stringify(m)!==JSON.stringify(_)&&(r.value=i.value)});const o=F(()=>l.value.sidebar!==!1&&r.value.length>0&&l.value.layout!=="home"),a=F(()=>c?l.value.aside==null?t.value.aside==="left":l.value.aside==="left":!1),c=F(()=>l.value.layout==="home"?!1:l.value.aside!=null?!!l.value.aside:t.value.aside!==!1),u=F(()=>o.value&&n.value),d=F(()=>o.value?Na(r.value):[]);function h(){s.value=!0}function p(){s.value=!1}function f(){s.value?p():h()}return{isOpen:s,sidebar:r,sidebarGroups:d,hasSidebar:o,hasAside:c,leftAside:a,isSidebarEnabled:u,open:h,close:p,toggle:f}}function Ea(l,e){let t;Mn(()=>{t=l.value?document.activeElement:void 0}),Ze(()=>{window.addEventListener("keyup",n)}),bt(()=>{window.removeEventListener("keyup",n)});function n(s){s.key==="Escape"&&l.value&&(e(),t==null||t.focus())}}function Da(l){const{page:e,hash:t}=W(),n=B(!1),s=F(()=>l.value.collapsed!=null),i=F(()=>!!l.value.link),r=B(!1),o=()=>{r.value=At(e.value.relativePath,l.value.link)};I([e,l,t],o),Ze(o);const a=F(()=>r.value?!0:l.value.items?oi(e.value.relativePath,l.value.items):!1),c=F(()=>!!(l.value.items&&l.value.items.length));Mn(()=>{n.value=!!(s.value&&l.value.collapsed)}),as(()=>{(r.value||a.value)&&(n.value=!1)});function u(){s.value&&(n.value=!n.value)}return{collapsed:n,collapsible:s,isLink:i,isActiveLink:r,hasActiveLink:a,hasChildren:c,toggle:u}}function Ra(){const{hasSidebar:l}=at(),e=si("(min-width: 960px)"),t=si("(min-width: 1280px)");return{isAsideEnabled:F(()=>!t.value&&!e.value?!1:l.value?t.value:e.value)}}const ai=[];function Qr(l){return typeof l.outline=="object"&&!Array.isArray(l.outline)&&l.outline.label||l.outlineTitle||"On this page"}function Si(l){const e=[...document.querySelectorAll(".VPDoc :where(h1,h2,h3,h4,h5,h6)")].filter(t=>t.id&&t.hasChildNodes()).map(t=>{const n=Number(t.tagName[1]);return{element:t,title:$a(t),link:"#"+t.id,level:n}});return ja(e,l)}function $a(l){let e="";for(const t of l.childNodes)if(t.nodeType===1){if(t.classList.contains("VPBadge")||t.classList.contains("header-anchor")||t.classList.contains("ignore-header"))continue;e+=t.textContent}else t.nodeType===3&&(e+=t.textContent);return e.trim()}function ja(l,e){if(e===!1)return[];const t=(typeof e=="object"&&!Array.isArray(e)?e.level:e)||2,[n,s]=typeof t=="number"?[t,t]:t==="deep"?[2,6]:t;l=l.filter(r=>r.level>=n&&r.level<=s),ai.length=0;for(const{element:r,link:o}of l)ai.push({element:r,link:o});const i=[];e:for(let r=0;r=0;a--){const c=l[a];if(c.level{requestAnimationFrame(i),window.addEventListener("scroll",n)}),vi(()=>{r(location.hash)}),bt(()=>{window.removeEventListener("scroll",n)});function i(){if(!t.value)return;const o=window.scrollY,a=window.innerHeight,c=document.body.offsetHeight,u=Math.abs(o+a-c)<1,d=ai.map(({element:p,link:f})=>({link:f,top:Va(p)})).filter(({top:p})=>!Number.isNaN(p)).sort((p,f)=>p.top-f.top);if(!d.length){r(null);return}if(o<1){r(null);return}if(u){r(d[d.length-1].link);return}let h=null;for(const{link:p,top:f}of d){if(f>o+na()+4)break;h=p}r(h)}function r(o){s&&s.classList.remove("active"),o==null?s=null:s=l.value.querySelector(`a[href="${decodeURIComponent(o)}"]`);const a=s;a?(a.classList.add("active"),e.value.style.top=a.offsetTop+39+"px",e.value.style.opacity="1"):(e.value.style.top="33px",e.value.style.opacity="0")}}function Va(l){let e=0;for(;l!==document.body;){if(l===null)return NaN;e+=l.offsetTop,l=l.offsetParent}return e}const qa=["href","title"],Ua=z({__name:"VPDocOutlineItem",props:{headers:{},root:{type:Boolean}},setup(l){function e({target:t}){const n=t.href.split("#")[1],s=document.getElementById(decodeURIComponent(n));s==null||s.focus({preventScroll:!0})}return(t,n)=>{const s=O("VPDocOutlineItem",!0);return y(),v("ul",{class:ee(["VPDocOutlineItem",t.root?"root":"nested"])},[(y(!0),v(G,null,ie(t.headers,({children:i,link:r,title:o})=>(y(),v("li",null,[b("a",{class:"outline-link",href:r,onClick:e,title:o},j(o),9,qa),i!=null&&i.length?(y(),N(s,{key:0,headers:i},null,8,["headers"])):P("",!0)]))),256))],2)}}}),Xr=R(Ua,[["__scopeId","data-v-89fc9c0f"]]),Ga={class:"content"},Ha={"aria-level":"2",class:"outline-title",id:"doc-outline-aria-label",role:"heading"},Wa=z({__name:"VPDocAsideOutline",setup(l){const{frontmatter:e,theme:t}=W(),n=xi([]);ls(()=>{n.value=Si(e.value.outline??t.value.outline)});const s=B(),i=B();return Fa(s,i),(r,o)=>(y(),v("nav",{"aria-labelledby":"doc-outline-aria-label",class:ee(["VPDocAsideOutline",{"has-outline":n.value.length>0}]),ref_key:"container",ref:s},[b("div",Ga,[b("div",{class:"outline-marker",ref_key:"marker",ref:i},null,512),b("div",Ha,j(g(Qr)(g(t))),1),S(Xr,{headers:n.value,root:!0},null,8,["headers"])])],2))}}),Za=R(Wa,[["__scopeId","data-v-68dfa8f1"]]),Ya={class:"VPDocAsideCarbonAds"},Qa=z({__name:"VPDocAsideCarbonAds",props:{carbonAds:{}},setup(l){const e=()=>null;return(t,n)=>(y(),v("div",Ya,[S(g(e),{"carbon-ads":t.carbonAds},null,8,["carbon-ads"])]))}}),Xa=l=>(de("data-v-d75a4a6d"),l=l(),pe(),l),Ka={class:"VPDocAside"},Ja=Xa(()=>b("div",{class:"spacer"},null,-1)),el=z({__name:"VPDocAside",setup(l){const{theme:e}=W();return(t,n)=>(y(),v("div",Ka,[C(t.$slots,"aside-top",{},void 0,!0),C(t.$slots,"aside-outline-before",{},void 0,!0),S(Za),C(t.$slots,"aside-outline-after",{},void 0,!0),Ja,C(t.$slots,"aside-ads-before",{},void 0,!0),g(e).carbonAds?(y(),N(Qa,{key:0,"carbon-ads":g(e).carbonAds},null,8,["carbon-ads"])):P("",!0),C(t.$slots,"aside-ads-after",{},void 0,!0),C(t.$slots,"aside-bottom",{},void 0,!0)]))}}),tl=R(el,[["__scopeId","data-v-d75a4a6d"]]);function nl(){const{theme:l,page:e}=W();return F(()=>{const{text:t="Edit this page",pattern:n=""}=l.value.editLink||{};let s;return typeof n=="function"?s=n(e.value):s=n.replace(/:path/g,e.value.filePath),{url:s,text:t}})}function sl(){const{page:l,theme:e,frontmatter:t}=W();return F(()=>{var c,u,d,h,p,f,m,_;const n=Yr(e.value.sidebar,l.value.relativePath),s=Pa(n),i=il(s,M=>M.link.replace(/[?#].*$/,"")),r=i.findIndex(M=>At(l.value.relativePath,M.link)),o=((c=e.value.docFooter)==null?void 0:c.prev)===!1&&!t.value.prev||t.value.prev===!1,a=((u=e.value.docFooter)==null?void 0:u.next)===!1&&!t.value.next||t.value.next===!1;return{prev:o?void 0:{text:(typeof t.value.prev=="string"?t.value.prev:typeof t.value.prev=="object"?t.value.prev.text:void 0)??((d=i[r-1])==null?void 0:d.docFooterText)??((h=i[r-1])==null?void 0:h.text),link:(typeof t.value.prev=="object"?t.value.prev.link:void 0)??((p=i[r-1])==null?void 0:p.link)},next:a?void 0:{text:(typeof t.value.next=="string"?t.value.next:typeof t.value.next=="object"?t.value.next.text:void 0)??((f=i[r+1])==null?void 0:f.docFooterText)??((m=i[r+1])==null?void 0:m.text),link:(typeof t.value.next=="object"?t.value.next.link:void 0)??((_=i[r+1])==null?void 0:_.link)}}})}function il(l,e){const t=new Set;return l.filter(n=>{const s=e(n);return t.has(s)?!1:t.add(s)})}const Ne=z({__name:"VPLink",props:{tag:{},href:{},noIcon:{type:Boolean},target:{},rel:{}},setup(l){const e=l,t=F(()=>e.tag??(e.href?"a":"span")),n=F(()=>e.href&&Gr.test(e.href)||e.target==="_blank");return(s,i)=>(y(),N(Ve(t.value),{class:ee(["VPLink",{link:s.href,"vp-external-link-icon":n.value,"no-icon":s.noIcon}]),href:s.href?g(ki)(s.href):void 0,target:s.target??(n.value?"_blank":void 0),rel:s.rel??(n.value?"noreferrer":void 0)},{default:w(()=>[C(s.$slots,"default")]),_:3},8,["class","href","target","rel"]))}}),rl={class:"VPLastUpdated"},ol=["datetime"],al=z({__name:"VPDocFooterLastUpdated",setup(l){const{theme:e,page:t,lang:n}=W(),s=F(()=>new Date(t.value.lastUpdated)),i=F(()=>s.value.toISOString()),r=B("");return Ze(()=>{Mn(()=>{var o,a,c;r.value=new Intl.DateTimeFormat((a=(o=e.value.lastUpdated)==null?void 0:o.formatOptions)!=null&&a.forceLocale?n.value:void 0,((c=e.value.lastUpdated)==null?void 0:c.formatOptions)??{dateStyle:"short",timeStyle:"short"}).format(s.value)})}),(o,a)=>{var c;return y(),v("p",rl,[ne(j(((c=g(e).lastUpdated)==null?void 0:c.text)||g(e).lastUpdatedText||"Last updated")+": ",1),b("time",{datetime:i.value},j(r.value),9,ol)])}}}),ll=R(al,[["__scopeId","data-v-d13ed2a1"]]),Kr=l=>(de("data-v-7be4e7ea"),l=l(),pe(),l),cl={key:0,class:"VPDocFooter"},ul={key:0,class:"edit-info"},hl={key:0,class:"edit-link"},dl=Kr(()=>b("span",{class:"vpi-square-pen edit-link-icon"},null,-1)),pl={key:1,class:"last-updated"},fl={key:1,class:"prev-next","aria-labelledby":"doc-footer-aria-label"},ml=Kr(()=>b("span",{class:"visually-hidden",id:"doc-footer-aria-label"},"Pager",-1)),gl={class:"pager"},yl=["innerHTML"],_l=["innerHTML"],bl={class:"pager"},Ml=["innerHTML"],vl=["innerHTML"],xl=z({__name:"VPDocFooter",setup(l){const{theme:e,page:t,frontmatter:n}=W(),s=nl(),i=sl(),r=F(()=>e.value.editLink&&n.value.editLink!==!1),o=F(()=>t.value.lastUpdated),a=F(()=>r.value||o.value||i.value.prev||i.value.next);return(c,u)=>{var d,h,p,f;return a.value?(y(),v("footer",cl,[C(c.$slots,"doc-footer-before",{},void 0,!0),r.value||o.value?(y(),v("div",ul,[r.value?(y(),v("div",hl,[S(Ne,{class:"edit-link-button",href:g(s).url,"no-icon":!0},{default:w(()=>[dl,ne(" "+j(g(s).text),1)]),_:1},8,["href"])])):P("",!0),o.value?(y(),v("div",pl,[S(ll)])):P("",!0)])):P("",!0),(d=g(i).prev)!=null&&d.link||(h=g(i).next)!=null&&h.link?(y(),v("nav",fl,[ml,b("div",gl,[(p=g(i).prev)!=null&&p.link?(y(),N(Ne,{key:0,class:"pager-link prev",href:g(i).prev.link},{default:w(()=>{var m;return[b("span",{class:"desc",innerHTML:((m=g(e).docFooter)==null?void 0:m.prev)||"Previous page"},null,8,yl),b("span",{class:"title",innerHTML:g(i).prev.text},null,8,_l)]}),_:1},8,["href"])):P("",!0)]),b("div",bl,[(f=g(i).next)!=null&&f.link?(y(),N(Ne,{key:0,class:"pager-link next",href:g(i).next.link},{default:w(()=>{var m;return[b("span",{class:"desc",innerHTML:((m=g(e).docFooter)==null?void 0:m.next)||"Next page"},null,8,Ml),b("span",{class:"title",innerHTML:g(i).next.text},null,8,vl)]}),_:1},8,["href"])):P("",!0)])])):P("",!0)])):P("",!0)}}}),wl=R(xl,[["__scopeId","data-v-7be4e7ea"]]),kl=l=>(de("data-v-d38f0326"),l=l(),pe(),l),Sl={class:"container"},Tl=kl(()=>b("div",{class:"aside-curtain"},null,-1)),Al={class:"aside-container"},Cl={class:"aside-content"},Il={class:"content"},Ll={class:"content-container"},zl={class:"main"},Bl=z({__name:"VPDoc",setup(l){const{theme:e}=W(),t=cs(),{hasSidebar:n,hasAside:s,leftAside:i}=at(),r=F(()=>t.path.replace(/[./]+/g,"_").replace(/_html$/,""));return(o,a)=>{const c=O("Content");return y(),v("div",{class:ee(["VPDoc",{"has-sidebar":g(n),"has-aside":g(s)}])},[C(o.$slots,"doc-top",{},void 0,!0),b("div",Sl,[g(s)?(y(),v("div",{key:0,class:ee(["aside",{"left-aside":g(i)}])},[Tl,b("div",Al,[b("div",Cl,[S(tl,null,{"aside-top":w(()=>[C(o.$slots,"aside-top",{},void 0,!0)]),"aside-bottom":w(()=>[C(o.$slots,"aside-bottom",{},void 0,!0)]),"aside-outline-before":w(()=>[C(o.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":w(()=>[C(o.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":w(()=>[C(o.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":w(()=>[C(o.$slots,"aside-ads-after",{},void 0,!0)]),_:3})])])],2)):P("",!0),b("div",Il,[b("div",Ll,[C(o.$slots,"doc-before",{},void 0,!0),b("main",zl,[S(c,{class:ee(["vp-doc",[r.value,g(e).externalLinkIcon&&"external-link-icon-enabled"]])},null,8,["class"])]),S(wl,null,{"doc-footer-before":w(()=>[C(o.$slots,"doc-footer-before",{},void 0,!0)]),_:3}),C(o.$slots,"doc-after",{},void 0,!0)])])]),C(o.$slots,"doc-bottom",{},void 0,!0)],2)}}}),Ol=R(Bl,[["__scopeId","data-v-d38f0326"]]),Nl=z({__name:"VPButton",props:{tag:{},size:{default:"medium"},theme:{default:"brand"},text:{},href:{},target:{},rel:{}},setup(l){const e=l,t=F(()=>e.href&&Gr.test(e.href)),n=F(()=>e.tag||e.href?"a":"button");return(s,i)=>(y(),N(Ve(n.value),{class:ee(["VPButton",[s.size,s.theme]]),href:s.href?g(ki)(s.href):void 0,target:e.target??(t.value?"_blank":void 0),rel:e.rel??(t.value?"noreferrer":void 0)},{default:w(()=>[ne(j(s.text),1)]),_:1},8,["class","href","target","rel"]))}}),Pl=R(Nl,[["__scopeId","data-v-613710ba"]]),El=["src","alt"],Dl=z({inheritAttrs:!1,__name:"VPImage",props:{image:{},alt:{}},setup(l){return(e,t)=>{const n=O("VPImage",!0);return e.image?(y(),v(G,{key:0},[typeof e.image=="string"||"src"in e.image?(y(),v("img",U({key:0,class:"VPImage"},typeof e.image=="string"?e.$attrs:{...e.image,...e.$attrs},{src:g(Ht)(typeof e.image=="string"?e.image:e.image.src),alt:e.alt??(typeof e.image=="string"?"":e.image.alt||"")}),null,16,El)):(y(),v(G,{key:1},[S(n,U({class:"dark",image:e.image.dark,alt:e.image.alt},e.$attrs),null,16,["image","alt"]),S(n,U({class:"light",image:e.image.light,alt:e.image.alt},e.$attrs),null,16,["image","alt"])],64))],64)):P("",!0)}}}),is=R(Dl,[["__scopeId","data-v-91ed8563"]]),Rl=l=>(de("data-v-177d11bd"),l=l(),pe(),l),$l={class:"container"},jl={class:"main"},Fl={key:0,class:"name"},Vl=["innerHTML"],ql=["innerHTML"],Ul=["innerHTML"],Gl={key:0,class:"actions"},Hl={key:0,class:"image"},Wl={class:"image-container"},Zl=Rl(()=>b("div",{class:"image-bg"},null,-1)),Yl=z({__name:"VPHero",props:{name:{},text:{},tagline:{},image:{},actions:{}},setup(l){const e=ot("hero-image-slot-exists");return(t,n)=>(y(),v("div",{class:ee(["VPHero",{"has-image":t.image||g(e)}])},[b("div",$l,[b("div",jl,[C(t.$slots,"home-hero-info-before",{},void 0,!0),C(t.$slots,"home-hero-info",{},()=>[t.name?(y(),v("h1",Fl,[b("span",{innerHTML:t.name,class:"clip"},null,8,Vl)])):P("",!0),t.text?(y(),v("p",{key:1,innerHTML:t.text,class:"text"},null,8,ql)):P("",!0),t.tagline?(y(),v("p",{key:2,innerHTML:t.tagline,class:"tagline"},null,8,Ul)):P("",!0)],!0),C(t.$slots,"home-hero-info-after",{},void 0,!0),t.actions?(y(),v("div",Gl,[(y(!0),v(G,null,ie(t.actions,s=>(y(),v("div",{key:s.link,class:"action"},[S(Pl,{tag:"a",size:"medium",theme:s.theme,text:s.text,href:s.link,target:s.target,rel:s.rel},null,8,["theme","text","href","target","rel"])]))),128))])):P("",!0),C(t.$slots,"home-hero-actions-after",{},void 0,!0)]),t.image||g(e)?(y(),v("div",Hl,[b("div",Wl,[Zl,C(t.$slots,"home-hero-image",{},()=>[t.image?(y(),N(is,{key:0,class:"image-src",image:t.image},null,8,["image"])):P("",!0)],!0)])])):P("",!0)])],2))}}),Ql=R(Yl,[["__scopeId","data-v-177d11bd"]]),Xl=z({__name:"VPHomeHero",setup(l){const{frontmatter:e}=W();return(t,n)=>g(e).hero?(y(),N(Ql,{key:0,class:"VPHomeHero",name:g(e).hero.name,text:g(e).hero.text,tagline:g(e).hero.tagline,image:g(e).hero.image,actions:g(e).hero.actions},{"home-hero-info-before":w(()=>[C(t.$slots,"home-hero-info-before")]),"home-hero-info":w(()=>[C(t.$slots,"home-hero-info")]),"home-hero-info-after":w(()=>[C(t.$slots,"home-hero-info-after")]),"home-hero-actions-after":w(()=>[C(t.$slots,"home-hero-actions-after")]),"home-hero-image":w(()=>[C(t.$slots,"home-hero-image")]),_:3},8,["name","text","tagline","image","actions"])):P("",!0)}}),Kl=l=>(de("data-v-dc68b5a7"),l=l(),pe(),l),Jl={class:"box"},ec={key:0,class:"icon"},tc=["innerHTML"],nc=["innerHTML"],sc=["innerHTML"],ic={key:4,class:"link-text"},rc={class:"link-text-value"},oc=Kl(()=>b("span",{class:"vpi-arrow-right link-text-icon"},null,-1)),ac=z({__name:"VPFeature",props:{icon:{},title:{},details:{},link:{},linkText:{},rel:{},target:{}},setup(l){return(e,t)=>(y(),N(Ne,{class:"VPFeature",href:e.link,rel:e.rel,target:e.target,"no-icon":!0,tag:e.link?"a":"div"},{default:w(()=>[b("article",Jl,[typeof e.icon=="object"&&e.icon.wrap?(y(),v("div",ec,[S(is,{image:e.icon,alt:e.icon.alt,height:e.icon.height||48,width:e.icon.width||48},null,8,["image","alt","height","width"])])):typeof e.icon=="object"?(y(),N(is,{key:1,image:e.icon,alt:e.icon.alt,height:e.icon.height||48,width:e.icon.width||48},null,8,["image","alt","height","width"])):e.icon?(y(),v("div",{key:2,class:"icon",innerHTML:e.icon},null,8,tc)):P("",!0),b("h2",{class:"title",innerHTML:e.title},null,8,nc),e.details?(y(),v("p",{key:3,class:"details",innerHTML:e.details},null,8,sc)):P("",!0),e.linkText?(y(),v("div",ic,[b("p",rc,[ne(j(e.linkText)+" ",1),oc])])):P("",!0)])]),_:1},8,["href","rel","target","tag"]))}}),lc=R(ac,[["__scopeId","data-v-dc68b5a7"]]),cc={key:0,class:"VPFeatures"},uc={class:"container"},hc={class:"items"},dc=z({__name:"VPFeatures",props:{features:{}},setup(l){const e=l,t=F(()=>{const n=e.features.length;if(n){if(n===2)return"grid-2";if(n===3)return"grid-3";if(n%3===0)return"grid-6";if(n>3)return"grid-4"}else return});return(n,s)=>n.features?(y(),v("div",cc,[b("div",uc,[b("div",hc,[(y(!0),v(G,null,ie(n.features,i=>(y(),v("div",{key:i.title,class:ee(["item",[t.value]])},[S(lc,{icon:i.icon,title:i.title,details:i.details,link:i.link,"link-text":i.linkText,rel:i.rel,target:i.target},null,8,["icon","title","details","link","link-text","rel","target"])],2))),128))])])])):P("",!0)}}),pc=R(dc,[["__scopeId","data-v-a03d2aeb"]]),fc=z({__name:"VPHomeFeatures",setup(l){const{frontmatter:e}=W();return(t,n)=>g(e).features?(y(),N(pc,{key:0,class:"VPHomeFeatures",features:g(e).features},null,8,["features"])):P("",!0)}}),mc=z({__name:"VPHomeContent",setup(l){const{width:e}=sa({initialWidth:0,includeScrollbar:!1});return(t,n)=>(y(),v("div",{class:"vp-doc container",style:ss(g(e)?{"--vp-offset":`calc(50% - ${g(e)/2}px)`}:{})},[C(t.$slots,"default",{},void 0,!0)],4))}}),gc=R(mc,[["__scopeId","data-v-0c16a4e2"]]),yc={class:"VPHome"},_c=z({__name:"VPHome",setup(l){const{frontmatter:e}=W();return(t,n)=>{const s=O("Content");return y(),v("div",yc,[C(t.$slots,"home-hero-before",{},void 0,!0),S(Xl,null,{"home-hero-info-before":w(()=>[C(t.$slots,"home-hero-info-before",{},void 0,!0)]),"home-hero-info":w(()=>[C(t.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-info-after":w(()=>[C(t.$slots,"home-hero-info-after",{},void 0,!0)]),"home-hero-actions-after":w(()=>[C(t.$slots,"home-hero-actions-after",{},void 0,!0)]),"home-hero-image":w(()=>[C(t.$slots,"home-hero-image",{},void 0,!0)]),_:3}),C(t.$slots,"home-hero-after",{},void 0,!0),C(t.$slots,"home-features-before",{},void 0,!0),S(fc),C(t.$slots,"home-features-after",{},void 0,!0),g(e).markdownStyles!==!1?(y(),N(gc,{key:0},{default:w(()=>[S(s)]),_:1})):(y(),N(s,{key:1}))])}}}),bc=R(_c,[["__scopeId","data-v-1920c5ce"]]),Mc={},vc={class:"VPPage"};function xc(l,e){const t=O("Content");return y(),v("div",vc,[C(l.$slots,"page-top"),S(t),C(l.$slots,"page-bottom")])}const wc=R(Mc,[["render",xc]]),kc=z({__name:"VPContent",setup(l){const{page:e,frontmatter:t}=W(),{hasSidebar:n}=at();return(s,i)=>(y(),v("div",{class:ee(["VPContent",{"has-sidebar":g(n),"is-home":g(t).layout==="home"}]),id:"VPContent"},[g(e).isNotFound?C(s.$slots,"not-found",{key:0},()=>[S(Oa)],!0):g(t).layout==="page"?(y(),N(wc,{key:1},{"page-top":w(()=>[C(s.$slots,"page-top",{},void 0,!0)]),"page-bottom":w(()=>[C(s.$slots,"page-bottom",{},void 0,!0)]),_:3})):g(t).layout==="home"?(y(),N(bc,{key:2},{"home-hero-before":w(()=>[C(s.$slots,"home-hero-before",{},void 0,!0)]),"home-hero-info-before":w(()=>[C(s.$slots,"home-hero-info-before",{},void 0,!0)]),"home-hero-info":w(()=>[C(s.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-info-after":w(()=>[C(s.$slots,"home-hero-info-after",{},void 0,!0)]),"home-hero-actions-after":w(()=>[C(s.$slots,"home-hero-actions-after",{},void 0,!0)]),"home-hero-image":w(()=>[C(s.$slots,"home-hero-image",{},void 0,!0)]),"home-hero-after":w(()=>[C(s.$slots,"home-hero-after",{},void 0,!0)]),"home-features-before":w(()=>[C(s.$slots,"home-features-before",{},void 0,!0)]),"home-features-after":w(()=>[C(s.$slots,"home-features-after",{},void 0,!0)]),_:3})):g(t).layout&&g(t).layout!=="doc"?(y(),N(Ve(g(t).layout),{key:3})):(y(),N(Ol,{key:4},{"doc-top":w(()=>[C(s.$slots,"doc-top",{},void 0,!0)]),"doc-bottom":w(()=>[C(s.$slots,"doc-bottom",{},void 0,!0)]),"doc-footer-before":w(()=>[C(s.$slots,"doc-footer-before",{},void 0,!0)]),"doc-before":w(()=>[C(s.$slots,"doc-before",{},void 0,!0)]),"doc-after":w(()=>[C(s.$slots,"doc-after",{},void 0,!0)]),"aside-top":w(()=>[C(s.$slots,"aside-top",{},void 0,!0)]),"aside-outline-before":w(()=>[C(s.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":w(()=>[C(s.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":w(()=>[C(s.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":w(()=>[C(s.$slots,"aside-ads-after",{},void 0,!0)]),"aside-bottom":w(()=>[C(s.$slots,"aside-bottom",{},void 0,!0)]),_:3}))],2))}}),Sc=R(kc,[["__scopeId","data-v-45773a36"]]),Tc={class:"container"},Ac=["innerHTML"],Cc=["innerHTML"],Ic=z({__name:"VPFooter",setup(l){const{theme:e,frontmatter:t}=W(),{hasSidebar:n}=at();return(s,i)=>g(e).footer&&g(t).footer!==!1?(y(),v("footer",{key:0,class:ee(["VPFooter",{"has-sidebar":g(n)}])},[b("div",Tc,[g(e).footer.message?(y(),v("p",{key:0,class:"message",innerHTML:g(e).footer.message},null,8,Ac)):P("",!0),g(e).footer.copyright?(y(),v("p",{key:1,class:"copyright",innerHTML:g(e).footer.copyright},null,8,Cc)):P("",!0)])],2)):P("",!0)}}),Lc=R(Ic,[["__scopeId","data-v-017ba2a0"]]);function zc(){const{theme:l,frontmatter:e}=W(),t=xi([]),n=F(()=>t.value.length>0);return ls(()=>{t.value=Si(e.value.outline??l.value.outline)}),{headers:t,hasLocalNav:n}}const Bc=l=>(de("data-v-47ba0ca8"),l=l(),pe(),l),Oc={class:"menu-text"},Nc=Bc(()=>b("span",{class:"vpi-chevron-right icon"},null,-1)),Pc={class:"header"},Ec={class:"outline"},Dc=z({__name:"VPLocalNavOutlineDropdown",props:{headers:{},navHeight:{}},setup(l){const e=l,{theme:t}=W(),n=B(!1),s=B(0),i=B(),r=B();function o(d){var h;(h=i.value)!=null&&h.contains(d.target)||(n.value=!1)}I(n,d=>{if(d){document.addEventListener("click",o);return}document.removeEventListener("click",o)}),ii("Escape",()=>{n.value=!1}),ls(()=>{n.value=!1});function a(){n.value=!n.value,s.value=window.innerHeight+Math.min(window.scrollY-e.navHeight,0)}function c(d){d.target.classList.contains("outline-link")&&(r.value&&(r.value.style.transition="none"),_t(()=>{n.value=!1}))}function u(){n.value=!1,window.scrollTo({top:0,left:0,behavior:"smooth"})}return(d,h)=>(y(),v("div",{class:"VPLocalNavOutlineDropdown",style:ss({"--vp-vh":s.value+"px"}),ref_key:"main",ref:i},[d.headers.length>0?(y(),v("button",{key:0,onClick:a,class:ee({open:n.value})},[b("span",Oc,j(g(Qr)(g(t))),1),Nc],2)):(y(),v("button",{key:1,onClick:u},j(g(t).returnToTopLabel||"Return to top"),1)),S(os,{name:"flyout"},{default:w(()=>[n.value?(y(),v("div",{key:0,ref_key:"items",ref:r,class:"items",onClick:c},[b("div",Pc,[b("a",{class:"top-link",href:"#",onClick:u},j(g(t).returnToTopLabel||"Return to top"),1)]),b("div",Ec,[S(Xr,{headers:d.headers},null,8,["headers"])])],512)):P("",!0)]),_:1})],4))}}),Rc=R(Dc,[["__scopeId","data-v-47ba0ca8"]]),$c=l=>(de("data-v-c018a891"),l=l(),pe(),l),jc={class:"container"},Fc=["aria-expanded"],Vc=$c(()=>b("span",{class:"vpi-align-left menu-icon"},null,-1)),qc={class:"menu-text"},Uc=z({__name:"VPLocalNav",props:{open:{type:Boolean}},emits:["open-menu"],setup(l){const{theme:e,frontmatter:t}=W(),{hasSidebar:n}=at(),{headers:s}=zc(),{y:i}=Hr(),r=B(0);Ze(()=>{r.value=parseInt(getComputedStyle(document.documentElement).getPropertyValue("--vp-nav-height"))}),ls(()=>{s.value=Si(t.value.outline??e.value.outline)});const o=F(()=>s.value.length===0),a=F(()=>o.value&&!n.value),c=F(()=>({VPLocalNav:!0,"has-sidebar":n.value,empty:o.value,fixed:a.value}));return(u,d)=>g(t).layout!=="home"&&(!a.value||g(i)>=r.value)?(y(),v("div",{key:0,class:ee(c.value)},[b("div",jc,[g(n)?(y(),v("button",{key:0,class:"menu","aria-expanded":u.open,"aria-controls":"VPSidebarNav",onClick:d[0]||(d[0]=h=>u.$emit("open-menu"))},[Vc,b("span",qc,j(g(e).sidebarMenuLabel||"Menu"),1)],8,Fc)):P("",!0),S(Rc,{headers:g(s),navHeight:r.value},null,8,["headers","navHeight"])])],2)):P("",!0)}}),Gc=R(Uc,[["__scopeId","data-v-c018a891"]]);function Hc(){const l=B(!1);function e(){l.value=!0,window.addEventListener("resize",s)}function t(){l.value=!1,window.removeEventListener("resize",s)}function n(){l.value?t():e()}function s(){window.outerWidth>=768&&t()}const i=cs();return I(()=>i.path,t),{isScreenOpen:l,openScreen:e,closeScreen:t,toggleScreen:n}}const Wc={},Zc={class:"VPSwitch",type:"button",role:"switch"},Yc={class:"check"},Qc={key:0,class:"icon"};function Xc(l,e){return y(),v("button",Zc,[b("span",Yc,[l.$slots.default?(y(),v("span",Qc,[C(l.$slots,"default",{},void 0,!0)])):P("",!0)])])}const Kc=R(Wc,[["render",Xc],["__scopeId","data-v-29792024"]]),Jr=l=>(de("data-v-0e6d6f6a"),l=l(),pe(),l),Jc=Jr(()=>b("span",{class:"vpi-sun sun"},null,-1)),eu=Jr(()=>b("span",{class:"vpi-moon moon"},null,-1)),tu=z({__name:"VPSwitchAppearance",setup(l){const{isDark:e,theme:t}=W(),n=ot("toggle-appearance",()=>{e.value=!e.value}),s=B("");return as(()=>{s.value=e.value?t.value.lightModeSwitchTitle||"Switch to light theme":t.value.darkModeSwitchTitle||"Switch to dark theme"}),(i,r)=>(y(),N(Kc,{title:s.value,class:"VPSwitchAppearance","aria-checked":g(e),onClick:g(n)},{default:w(()=>[Jc,eu]),_:1},8,["title","aria-checked","onClick"]))}}),Ti=R(tu,[["__scopeId","data-v-0e6d6f6a"]]),nu={key:0,class:"VPNavBarAppearance"},su=z({__name:"VPNavBarAppearance",setup(l){const{site:e}=W();return(t,n)=>g(e).appearance&&g(e).appearance!=="force-dark"&&g(e).appearance!=="force-auto"?(y(),v("div",nu,[S(Ti)])):P("",!0)}}),iu=R(su,[["__scopeId","data-v-c222bf71"]]),Ai=B();let eo=!1,ks=0;function ru(l){const e=B(!1);if(us){!eo&&ou(),ks++;const t=I(Ai,n=>{var s,i,r;n===l.el.value||(s=l.el.value)!=null&&s.contains(n)?(e.value=!0,(i=l.onFocus)==null||i.call(l)):(e.value=!1,(r=l.onBlur)==null||r.call(l))});bt(()=>{t(),ks--,ks||au()})}return ia(e)}function ou(){document.addEventListener("focusin",to),eo=!0,Ai.value=document.activeElement}function au(){document.removeEventListener("focusin",to)}function to(){Ai.value=document.activeElement}const lu={class:"VPMenuLink"},cu=z({__name:"VPMenuLink",props:{item:{}},setup(l){const{page:e}=W();return(t,n)=>(y(),v("div",lu,[S(Ne,{class:ee({active:g(At)(g(e).relativePath,t.item.activeMatch||t.item.link,!!t.item.activeMatch)}),href:t.item.link,target:t.item.target,rel:t.item.rel},{default:w(()=>[ne(j(t.item.text),1)]),_:1},8,["class","href","target","rel"])]))}}),hs=R(cu,[["__scopeId","data-v-b7305b0e"]]),uu={class:"VPMenuGroup"},hu={key:0,class:"title"},du=z({__name:"VPMenuGroup",props:{text:{},items:{}},setup(l){return(e,t)=>(y(),v("div",uu,[e.text?(y(),v("p",hu,j(e.text),1)):P("",!0),(y(!0),v(G,null,ie(e.items,n=>(y(),v(G,null,["link"in n?(y(),N(hs,{key:0,item:n},null,8,["item"])):P("",!0)],64))),256))]))}}),pu=R(du,[["__scopeId","data-v-bd822ce4"]]),fu={class:"VPMenu"},mu={key:0,class:"items"},gu=z({__name:"VPMenu",props:{items:{}},setup(l){return(e,t)=>(y(),v("div",fu,[e.items?(y(),v("div",mu,[(y(!0),v(G,null,ie(e.items,n=>(y(),v(G,{key:JSON.stringify(n)},["link"in n?(y(),N(hs,{key:0,item:n},null,8,["item"])):"component"in n?(y(),N(Ve(n.component),U({key:1,ref_for:!0},n.props),null,16)):(y(),N(pu,{key:2,text:n.text,items:n.items},null,8,["text","items"]))],64))),128))])):P("",!0),C(e.$slots,"default",{},void 0,!0)]))}}),yu=R(gu,[["__scopeId","data-v-280aa891"]]),_u=l=>(de("data-v-880135bb"),l=l(),pe(),l),bu=["aria-expanded","aria-label"],Mu={key:0,class:"text"},vu=["innerHTML"],xu=_u(()=>b("span",{class:"vpi-chevron-down text-icon"},null,-1)),wu={key:1,class:"vpi-more-horizontal icon"},ku={class:"menu"},Su=z({__name:"VPFlyout",props:{icon:{},button:{},label:{},items:{}},setup(l){const e=B(!1),t=B();ru({el:t,onBlur:n});function n(){e.value=!1}return(s,i)=>(y(),v("div",{class:"VPFlyout",ref_key:"el",ref:t,onMouseenter:i[1]||(i[1]=r=>e.value=!0),onMouseleave:i[2]||(i[2]=r=>e.value=!1)},[b("button",{type:"button",class:"button","aria-haspopup":"true","aria-expanded":e.value,"aria-label":s.label,onClick:i[0]||(i[0]=r=>e.value=!e.value)},[s.button||s.icon?(y(),v("span",Mu,[s.icon?(y(),v("span",{key:0,class:ee([s.icon,"option-icon"])},null,2)):P("",!0),s.button?(y(),v("span",{key:1,innerHTML:s.button},null,8,vu)):P("",!0),xu])):(y(),v("span",wu))],8,bu),b("div",ku,[S(yu,{items:s.items},{default:w(()=>[C(s.$slots,"default",{},void 0,!0)]),_:3},8,["items"])])],544))}}),Ci=R(Su,[["__scopeId","data-v-880135bb"]]),Tu=["href","aria-label","innerHTML"],Au=z({__name:"VPSocialLink",props:{icon:{},link:{},ariaLabel:{}},setup(l){const e=l,t=F(()=>typeof e.icon=="object"?e.icon.svg:``);return(n,s)=>(y(),v("a",{class:"VPSocialLink no-icon",href:n.link,"aria-label":n.ariaLabel??(typeof n.icon=="string"?n.icon:""),target:"_blank",rel:"noopener",innerHTML:t.value},null,8,Tu))}}),Cu=R(Au,[["__scopeId","data-v-cb925418"]]),Iu={class:"VPSocialLinks"},Lu=z({__name:"VPSocialLinks",props:{links:{}},setup(l){return(e,t)=>(y(),v("div",Iu,[(y(!0),v(G,null,ie(e.links,({link:n,icon:s,ariaLabel:i})=>(y(),N(Cu,{key:n,icon:s,link:n,ariaLabel:i},null,8,["icon","link","ariaLabel"]))),128))]))}}),ds=R(Lu,[["__scopeId","data-v-3adab7c4"]]),zu={key:0,class:"group translations"},Bu={class:"trans-title"},Ou={key:1,class:"group"},Nu={class:"item appearance"},Pu={class:"label"},Eu={class:"appearance-action"},Du={key:2,class:"group"},Ru={class:"item social-links"},$u=z({__name:"VPNavBarExtra",setup(l){const{site:e,theme:t}=W(),{localeLinks:n,currentLang:s}=wn({correspondingLink:!0}),i=F(()=>n.value.length&&s.value.label||e.value.appearance||t.value.socialLinks);return(r,o)=>i.value?(y(),N(Ci,{key:0,class:"VPNavBarExtra",label:"extra navigation"},{default:w(()=>[g(n).length&&g(s).label?(y(),v("div",zu,[b("p",Bu,j(g(s).label),1),(y(!0),v(G,null,ie(g(n),a=>(y(),N(hs,{key:a.link,item:a},null,8,["item"]))),128))])):P("",!0),g(e).appearance&&g(e).appearance!=="force-dark"&&g(e).appearance!=="force-auto"?(y(),v("div",Ou,[b("div",Nu,[b("p",Pu,j(g(t).darkModeSwitchLabel||"Appearance"),1),b("div",Eu,[S(Ti)])])])):P("",!0),g(t).socialLinks?(y(),v("div",Du,[b("div",Ru,[S(ds,{class:"social-links-list",links:g(t).socialLinks},null,8,["links"])])])):P("",!0)]),_:1})):P("",!0)}}),ju=R($u,[["__scopeId","data-v-9d822b30"]]),Fu=l=>(de("data-v-aa3920fb"),l=l(),pe(),l),Vu=["aria-expanded"],qu=Fu(()=>b("span",{class:"container"},[b("span",{class:"top"}),b("span",{class:"middle"}),b("span",{class:"bottom"})],-1)),Uu=[qu],Gu=z({__name:"VPNavBarHamburger",props:{active:{type:Boolean}},emits:["click"],setup(l){return(e,t)=>(y(),v("button",{type:"button",class:ee(["VPNavBarHamburger",{active:e.active}]),"aria-label":"mobile navigation","aria-expanded":e.active,"aria-controls":"VPNavScreen",onClick:t[0]||(t[0]=n=>e.$emit("click"))},Uu,10,Vu))}}),Hu=R(Gu,[["__scopeId","data-v-aa3920fb"]]),Wu=["innerHTML"],Zu=z({__name:"VPNavBarMenuLink",props:{item:{}},setup(l){const{page:e}=W();return(t,n)=>(y(),N(Ne,{class:ee({VPNavBarMenuLink:!0,active:g(At)(g(e).relativePath,t.item.activeMatch||t.item.link,!!t.item.activeMatch)}),href:t.item.link,noIcon:t.item.noIcon,target:t.item.target,rel:t.item.rel,tabindex:"0"},{default:w(()=>[b("span",{innerHTML:t.item.text},null,8,Wu)]),_:1},8,["class","href","noIcon","target","rel"]))}}),Yu=R(Zu,[["__scopeId","data-v-db690c89"]]),Qu=z({__name:"VPNavBarMenuGroup",props:{item:{}},setup(l){const e=l,{page:t}=W(),n=i=>"component"in i?!1:"link"in i?At(t.value.relativePath,i.link,!!e.item.activeMatch):i.items.some(n),s=F(()=>n(e.item));return(i,r)=>(y(),N(Ci,{class:ee({VPNavBarMenuGroup:!0,active:g(At)(g(t).relativePath,i.item.activeMatch,!!i.item.activeMatch)||s.value}),button:i.item.text,items:i.item.items},null,8,["class","button","items"]))}}),Xu=l=>(de("data-v-51416b45"),l=l(),pe(),l),Ku={key:0,"aria-labelledby":"main-nav-aria-label",class:"VPNavBarMenu"},Ju=Xu(()=>b("span",{id:"main-nav-aria-label",class:"visually-hidden"}," Main Navigation ",-1)),eh=z({__name:"VPNavBarMenu",setup(l){const{theme:e}=W();return(t,n)=>g(e).nav?(y(),v("nav",Ku,[Ju,(y(!0),v(G,null,ie(g(e).nav,s=>(y(),v(G,{key:JSON.stringify(s)},["link"in s?(y(),N(Yu,{key:0,item:s},null,8,["item"])):"component"in s?(y(),N(Ve(s.component),U({key:1,ref_for:!0},s.props),null,16)):(y(),N(Qu,{key:2,item:s},null,8,["item"]))],64))),128))])):P("",!0)}}),th=R(eh,[["__scopeId","data-v-51416b45"]]);function nh(l){const{localeIndex:e,theme:t}=W();function n(s){var f,m,_;const i=s.split("."),r=(f=t.value.search)==null?void 0:f.options,o=r&&typeof r=="object",a=o&&((_=(m=r.locales)==null?void 0:m[e.value])==null?void 0:_.translations)||null,c=o&&r.translations||null;let u=a,d=c,h=l;const p=i.pop();for(const M of i){let A=null;const T=h==null?void 0:h[M];T&&(A=h=T);const x=d==null?void 0:d[M];x&&(A=d=x);const L=u==null?void 0:u[M];L&&(A=u=L),T||(h=A),x||(d=A),L||(u=A)}return(u==null?void 0:u[p])??(d==null?void 0:d[p])??(h==null?void 0:h[p])??""}return n}const sh=["aria-label"],ih={class:"DocSearch-Button-Container"},rh=b("span",{class:"vp-icon DocSearch-Search-Icon"},null,-1),oh={class:"DocSearch-Button-Placeholder"},ah=b("span",{class:"DocSearch-Button-Keys"},[b("kbd",{class:"DocSearch-Button-Key"}),b("kbd",{class:"DocSearch-Button-Key"},"K")],-1),Ki=z({__name:"VPNavBarSearchButton",setup(l){const t=nh({button:{buttonText:"Search",buttonAriaLabel:"Search"}});return(n,s)=>(y(),v("button",{type:"button",class:"DocSearch DocSearch-Button","aria-label":g(t)("button.buttonAriaLabel")},[b("span",ih,[rh,b("span",oh,j(g(t)("button.buttonText")),1)]),ah],8,sh))}}),lh={class:"VPNavBarSearch"},ch={id:"local-search"},uh={key:1,id:"docsearch"},hh=z({__name:"VPNavBarSearch",setup(l){const e=ra(()=>vn(()=>import("./VPLocalSearchBox.6F88UWle.js"),__vite__mapDeps([0,1]))),t=()=>null,{theme:n}=W(),s=B(!1),i=B(!1);Ze(()=>{});function r(){s.value||(s.value=!0,setTimeout(o,16))}function o(){const d=new Event("keydown");d.key="k",d.metaKey=!0,window.dispatchEvent(d),setTimeout(()=>{document.querySelector(".DocSearch-Modal")||o()},16)}function a(d){const h=d.target,p=h.tagName;return h.isContentEditable||p==="INPUT"||p==="SELECT"||p==="TEXTAREA"}const c=B(!1);ii("k",d=>{(d.ctrlKey||d.metaKey)&&(d.preventDefault(),c.value=!0)}),ii("/",d=>{a(d)||(d.preventDefault(),c.value=!0)});const u="local";return(d,h)=>{var p;return y(),v("div",lh,[g(u)==="local"?(y(),v(G,{key:0},[c.value?(y(),N(g(e),{key:0,onClose:h[0]||(h[0]=f=>c.value=!1)})):P("",!0),b("div",ch,[S(Ki,{onClick:h[1]||(h[1]=f=>c.value=!0)})])],64)):g(u)==="algolia"?(y(),v(G,{key:1},[s.value?(y(),N(g(t),{key:0,algolia:((p=g(n).search)==null?void 0:p.options)??g(n).algolia,onVnodeBeforeMount:h[2]||(h[2]=f=>i.value=!0)},null,8,["algolia"])):P("",!0),i.value?P("",!0):(y(),v("div",uh,[S(Ki,{onClick:r})]))],64)):P("",!0)])}}}),dh=z({__name:"VPNavBarSocialLinks",setup(l){const{theme:e}=W();return(t,n)=>g(e).socialLinks?(y(),N(ds,{key:0,class:"VPNavBarSocialLinks",links:g(e).socialLinks},null,8,["links"])):P("",!0)}}),ph=R(dh,[["__scopeId","data-v-52114c91"]]),fh=["href","rel","target"],mh={key:1},gh={key:2},yh=z({__name:"VPNavBarTitle",setup(l){const{site:e,theme:t}=W(),{hasSidebar:n}=at(),{currentLang:s}=wn(),i=F(()=>{var a;return typeof t.value.logoLink=="string"?t.value.logoLink:(a=t.value.logoLink)==null?void 0:a.link}),r=F(()=>{var a;return typeof t.value.logoLink=="string"||(a=t.value.logoLink)==null?void 0:a.rel}),o=F(()=>{var a;return typeof t.value.logoLink=="string"||(a=t.value.logoLink)==null?void 0:a.target});return(a,c)=>(y(),v("div",{class:ee(["VPNavBarTitle",{"has-sidebar":g(n)}])},[b("a",{class:"title",href:i.value??g(ki)(g(s).link),rel:r.value,target:o.value},[C(a.$slots,"nav-bar-title-before",{},void 0,!0),g(t).logo?(y(),N(is,{key:0,class:"logo",image:g(t).logo},null,8,["image"])):P("",!0),g(t).siteTitle?(y(),v("span",mh,j(g(t).siteTitle),1)):g(t).siteTitle===void 0?(y(),v("span",gh,j(g(e).title),1)):P("",!0),C(a.$slots,"nav-bar-title-after",{},void 0,!0)],8,fh)],2))}}),_h=R(yh,[["__scopeId","data-v-88897abb"]]),bh={class:"items"},Mh={class:"title"},vh=z({__name:"VPNavBarTranslations",setup(l){const{theme:e}=W(),{localeLinks:t,currentLang:n}=wn({correspondingLink:!0});return(s,i)=>g(t).length&&g(n).label?(y(),N(Ci,{key:0,class:"VPNavBarTranslations",icon:"vpi-languages",label:g(e).langMenuLabel||"Change language"},{default:w(()=>[b("div",bh,[b("p",Mh,j(g(n).label),1),(y(!0),v(G,null,ie(g(t),r=>(y(),N(hs,{key:r.link,item:r},null,8,["item"]))),128))])]),_:1},8,["label"])):P("",!0)}}),xh=R(vh,[["__scopeId","data-v-e872f165"]]),wh=l=>(de("data-v-d6015568"),l=l(),pe(),l),kh={class:"wrapper"},Sh={class:"container"},Th={class:"title"},Ah={class:"content"},Ch={class:"content-body"},Ih=wh(()=>b("div",{class:"divider"},[b("div",{class:"divider-line"})],-1)),Lh=z({__name:"VPNavBar",props:{isScreenOpen:{type:Boolean}},emits:["toggle-screen"],setup(l){const e=l,{y:t}=Hr(),{hasSidebar:n}=at(),{frontmatter:s}=W(),i=B({});return as(()=>{i.value={"has-sidebar":n.value,home:s.value.layout==="home",top:t.value===0,"screen-open":e.isScreenOpen}}),(r,o)=>(y(),v("div",{class:ee(["VPNavBar",i.value])},[b("div",kh,[b("div",Sh,[b("div",Th,[S(_h,null,{"nav-bar-title-before":w(()=>[C(r.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":w(()=>[C(r.$slots,"nav-bar-title-after",{},void 0,!0)]),_:3})]),b("div",Ah,[b("div",Ch,[C(r.$slots,"nav-bar-content-before",{},void 0,!0),S(hh,{class:"search"}),S(th,{class:"menu"}),S(xh,{class:"translations"}),S(iu,{class:"appearance"}),S(ph,{class:"social-links"}),S(ju,{class:"extra"}),C(r.$slots,"nav-bar-content-after",{},void 0,!0),S(Hu,{class:"hamburger",active:r.isScreenOpen,onClick:o[0]||(o[0]=a=>r.$emit("toggle-screen"))},null,8,["active"])])])])]),Ih],2))}}),zh=R(Lh,[["__scopeId","data-v-d6015568"]]),Bh={key:0,class:"VPNavScreenAppearance"},Oh={class:"text"},Nh=z({__name:"VPNavScreenAppearance",setup(l){const{site:e,theme:t}=W();return(n,s)=>g(e).appearance&&g(e).appearance!=="force-dark"&&g(e).appearance!=="force-auto"?(y(),v("div",Bh,[b("p",Oh,j(g(t).darkModeSwitchLabel||"Appearance"),1),S(Ti)])):P("",!0)}}),Ph=R(Nh,[["__scopeId","data-v-0a5ebde1"]]),Eh=z({__name:"VPNavScreenMenuLink",props:{item:{}},setup(l){const e=ot("close-screen");return(t,n)=>(y(),N(Ne,{class:"VPNavScreenMenuLink",href:t.item.link,target:t.item.target,rel:t.item.rel,onClick:g(e),innerHTML:t.item.text},null,8,["href","target","rel","onClick","innerHTML"]))}}),Dh=R(Eh,[["__scopeId","data-v-be396de1"]]),Rh=z({__name:"VPNavScreenMenuGroupLink",props:{item:{}},setup(l){const e=ot("close-screen");return(t,n)=>(y(),N(Ne,{class:"VPNavScreenMenuGroupLink",href:t.item.link,target:t.item.target,rel:t.item.rel,onClick:g(e)},{default:w(()=>[ne(j(t.item.text),1)]),_:1},8,["href","target","rel","onClick"]))}}),no=R(Rh,[["__scopeId","data-v-b790879e"]]),$h={class:"VPNavScreenMenuGroupSection"},jh={key:0,class:"title"},Fh=z({__name:"VPNavScreenMenuGroupSection",props:{text:{},items:{}},setup(l){return(e,t)=>(y(),v("div",$h,[e.text?(y(),v("p",jh,j(e.text),1)):P("",!0),(y(!0),v(G,null,ie(e.items,n=>(y(),N(no,{key:n.text,item:n},null,8,["item"]))),128))]))}}),Vh=R(Fh,[["__scopeId","data-v-23d42460"]]),qh=l=>(de("data-v-b53b7144"),l=l(),pe(),l),Uh=["aria-controls","aria-expanded"],Gh=["innerHTML"],Hh=qh(()=>b("span",{class:"vpi-plus button-icon"},null,-1)),Wh=["id"],Zh={key:0,class:"item"},Yh={key:1,class:"item"},Qh={key:2,class:"group"},Xh=z({__name:"VPNavScreenMenuGroup",props:{text:{},items:{}},setup(l){const e=l,t=B(!1),n=F(()=>`NavScreenGroup-${e.text.replace(" ","-").toLowerCase()}`);function s(){t.value=!t.value}return(i,r)=>(y(),v("div",{class:ee(["VPNavScreenMenuGroup",{open:t.value}])},[b("button",{class:"button","aria-controls":n.value,"aria-expanded":t.value,onClick:s},[b("span",{class:"button-text",innerHTML:i.text},null,8,Gh),Hh],8,Uh),b("div",{id:n.value,class:"items"},[(y(!0),v(G,null,ie(i.items,o=>(y(),v(G,{key:JSON.stringify(o)},["link"in o?(y(),v("div",Zh,[S(no,{item:o},null,8,["item"])])):"component"in o?(y(),v("div",Yh,[(y(),N(Ve(o.component),U({ref_for:!0},o.props,{"screen-menu":""}),null,16))])):(y(),v("div",Qh,[S(Vh,{text:o.text,items:o.items},null,8,["text","items"])]))],64))),128))],8,Wh)],2))}}),Kh=R(Xh,[["__scopeId","data-v-b53b7144"]]),Jh={key:0,class:"VPNavScreenMenu"},ed=z({__name:"VPNavScreenMenu",setup(l){const{theme:e}=W();return(t,n)=>g(e).nav?(y(),v("nav",Jh,[(y(!0),v(G,null,ie(g(e).nav,s=>(y(),v(G,{key:JSON.stringify(s)},["link"in s?(y(),N(Dh,{key:0,item:s},null,8,["item"])):"component"in s?(y(),N(Ve(s.component),U({key:1,ref_for:!0},s.props,{"screen-menu":""}),null,16)):(y(),N(Kh,{key:2,text:s.text||"",items:s.items},null,8,["text","items"]))],64))),128))])):P("",!0)}}),td=z({__name:"VPNavScreenSocialLinks",setup(l){const{theme:e}=W();return(t,n)=>g(e).socialLinks?(y(),N(ds,{key:0,class:"VPNavScreenSocialLinks",links:g(e).socialLinks},null,8,["links"])):P("",!0)}}),so=l=>(de("data-v-47ae1f67"),l=l(),pe(),l),nd=so(()=>b("span",{class:"vpi-languages icon lang"},null,-1)),sd=so(()=>b("span",{class:"vpi-chevron-down icon chevron"},null,-1)),id={class:"list"},rd=z({__name:"VPNavScreenTranslations",setup(l){const{localeLinks:e,currentLang:t}=wn({correspondingLink:!0}),n=B(!1);function s(){n.value=!n.value}return(i,r)=>g(e).length&&g(t).label?(y(),v("div",{key:0,class:ee(["VPNavScreenTranslations",{open:n.value}])},[b("button",{class:"title",onClick:s},[nd,ne(" "+j(g(t).label)+" ",1),sd]),b("ul",id,[(y(!0),v(G,null,ie(g(e),o=>(y(),v("li",{key:o.link,class:"item"},[S(Ne,{class:"link",href:o.link},{default:w(()=>[ne(j(o.text),1)]),_:2},1032,["href"])]))),128))])],2)):P("",!0)}}),od=R(rd,[["__scopeId","data-v-47ae1f67"]]),ad={class:"container"},ld=z({__name:"VPNavScreen",props:{open:{type:Boolean}},setup(l){const e=B(null),t=Wr(us?document.body:null);return(n,s)=>(y(),N(os,{name:"fade",onEnter:s[0]||(s[0]=i=>t.value=!0),onAfterLeave:s[1]||(s[1]=i=>t.value=!1)},{default:w(()=>[n.open?(y(),v("div",{key:0,class:"VPNavScreen",ref_key:"screen",ref:e,id:"VPNavScreen"},[b("div",ad,[C(n.$slots,"nav-screen-content-before",{},void 0,!0),S(ed,{class:"menu"}),S(od,{class:"translations"}),S(Ph,{class:"appearance"}),S(td,{class:"social-links"}),C(n.$slots,"nav-screen-content-after",{},void 0,!0)])],512)):P("",!0)]),_:3}))}}),cd=R(ld,[["__scopeId","data-v-b9c5a51e"]]),ud={key:0,class:"VPNav"},hd=z({__name:"VPNav",setup(l){const{isScreenOpen:e,closeScreen:t,toggleScreen:n}=Hc(),{frontmatter:s}=W(),i=F(()=>s.value.navbar!==!1);return ye("close-screen",t),Mn(()=>{us&&document.documentElement.classList.toggle("hide-nav",!i.value)}),(r,o)=>i.value?(y(),v("header",ud,[S(zh,{"is-screen-open":g(e),onToggleScreen:g(n)},{"nav-bar-title-before":w(()=>[C(r.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":w(()=>[C(r.$slots,"nav-bar-title-after",{},void 0,!0)]),"nav-bar-content-before":w(()=>[C(r.$slots,"nav-bar-content-before",{},void 0,!0)]),"nav-bar-content-after":w(()=>[C(r.$slots,"nav-bar-content-after",{},void 0,!0)]),_:3},8,["is-screen-open","onToggleScreen"]),S(cd,{open:g(e)},{"nav-screen-content-before":w(()=>[C(r.$slots,"nav-screen-content-before",{},void 0,!0)]),"nav-screen-content-after":w(()=>[C(r.$slots,"nav-screen-content-after",{},void 0,!0)]),_:3},8,["open"])])):P("",!0)}}),dd=R(hd,[["__scopeId","data-v-4cefd8a6"]]),io=l=>(de("data-v-7c2923f1"),l=l(),pe(),l),pd=["role","tabindex"],fd=io(()=>b("div",{class:"indicator"},null,-1)),md=io(()=>b("span",{class:"vpi-chevron-right caret-icon"},null,-1)),gd=[md],yd={key:1,class:"items"},_d=z({__name:"VPSidebarItem",props:{item:{},depth:{}},setup(l){const e=l,{collapsed:t,collapsible:n,isLink:s,isActiveLink:i,hasActiveLink:r,hasChildren:o,toggle:a}=Da(F(()=>e.item)),c=F(()=>o.value?"section":"div"),u=F(()=>s.value?"a":"div"),d=F(()=>o.value?e.depth+2===7?"p":`h${e.depth+2}`:"p"),h=F(()=>s.value?void 0:"button"),p=F(()=>[[`level-${e.depth}`],{collapsible:n.value},{collapsed:t.value},{"is-link":s.value},{"is-active":i.value},{"has-active":r.value}]);function f(_){"key"in _&&_.key!=="Enter"||!e.item.link&&a()}function m(){e.item.link&&a()}return(_,M)=>{const A=O("VPSidebarItem",!0);return y(),N(Ve(c.value),{class:ee(["VPSidebarItem",p.value])},{default:w(()=>[_.item.text?(y(),v("div",U({key:0,class:"item",role:h.value},aa(_.item.items?{click:f,keydown:f}:{},!0),{tabindex:_.item.items&&0}),[fd,_.item.link?(y(),N(Ne,{key:0,tag:u.value,class:"link",href:_.item.link,rel:_.item.rel,target:_.item.target},{default:w(()=>[(y(),N(Ve(d.value),{class:"text",innerHTML:_.item.text},null,8,["innerHTML"]))]),_:1},8,["tag","href","rel","target"])):(y(),N(Ve(d.value),{key:1,class:"text",innerHTML:_.item.text},null,8,["innerHTML"])),_.item.collapsed!=null&&_.item.items&&_.item.items.length?(y(),v("div",{key:2,class:"caret",role:"button","aria-label":"toggle section",onClick:m,onKeydown:oa(m,["enter"]),tabindex:"0"},gd,32)):P("",!0)],16,pd)):P("",!0),_.item.items&&_.item.items.length?(y(),v("div",yd,[_.depth<5?(y(!0),v(G,{key:0},ie(_.item.items,T=>(y(),N(A,{key:T.text,item:T,depth:_.depth+1},null,8,["item","depth"]))),128)):P("",!0)])):P("",!0)]),_:1},8,["class"])}}}),bd=R(_d,[["__scopeId","data-v-7c2923f1"]]),Md=z({__name:"VPSidebarGroup",props:{items:{}},setup(l){const e=B(!0);let t=null;return Ze(()=>{t=setTimeout(()=>{t=null,e.value=!1},300)}),Zr(()=>{t!=null&&(clearTimeout(t),t=null)}),(n,s)=>(y(!0),v(G,null,ie(n.items,i=>(y(),v("div",{key:i.text,class:ee(["group",{"no-transition":e.value}])},[S(bd,{item:i,depth:0},null,8,["item"])],2))),128))}}),vd=R(Md,[["__scopeId","data-v-5c4d175a"]]),ro=l=>(de("data-v-4f209ff7"),l=l(),pe(),l),xd=ro(()=>b("div",{class:"curtain"},null,-1)),wd={class:"nav",id:"VPSidebarNav","aria-labelledby":"sidebar-aria-label",tabindex:"-1"},kd=ro(()=>b("span",{class:"visually-hidden",id:"sidebar-aria-label"}," Sidebar Navigation ",-1)),Sd=z({__name:"VPSidebar",props:{open:{type:Boolean}},setup(l){const{sidebarGroups:e,hasSidebar:t}=at(),n=l,s=B(null),i=Wr(us?document.body:null);I([n,s],()=>{var o;n.open?(i.value=!0,(o=s.value)==null||o.focus()):i.value=!1},{immediate:!0,flush:"post"});const r=B(0);return I(e,()=>{r.value+=1},{deep:!0}),(o,a)=>g(t)?(y(),v("aside",{key:0,class:ee(["VPSidebar",{open:o.open}]),ref_key:"navEl",ref:s,onClick:a[0]||(a[0]=la(()=>{},["stop"]))},[xd,b("nav",wd,[kd,C(o.$slots,"sidebar-nav-before",{},void 0,!0),(y(),N(vd,{items:g(e),key:r.value},null,8,["items"])),C(o.$slots,"sidebar-nav-after",{},void 0,!0)])],2)):P("",!0)}}),Td=R(Sd,[["__scopeId","data-v-4f209ff7"]]),Ad=z({__name:"VPSkipLink",setup(l){const e=cs(),t=B();I(()=>e.path,()=>t.value.focus());function n({target:s}){const i=document.getElementById(decodeURIComponent(s.hash).slice(1));if(i){const r=()=>{i.removeAttribute("tabindex"),i.removeEventListener("blur",r)};i.setAttribute("tabindex","-1"),i.addEventListener("blur",r),i.focus(),window.scrollTo(0,0)}}return(s,i)=>(y(),v(G,null,[b("span",{ref_key:"backToTop",ref:t,tabindex:"-1"},null,512),b("a",{href:"#VPContent",class:"VPSkipLink visually-hidden",onClick:n}," Skip to content ")],64))}}),Cd=R(Ad,[["__scopeId","data-v-f2865425"]]),Id=z({__name:"Layout",setup(l){const{isOpen:e,open:t,close:n}=at(),s=cs();I(()=>s.path,n),Ea(e,n);const{frontmatter:i}=W(),r=ca(),o=F(()=>!!r["home-hero-image"]);return ye("hero-image-slot-exists",o),(a,c)=>{const u=O("Content");return g(i).layout!==!1?(y(),v("div",{key:0,class:ee(["Layout",g(i).pageClass])},[C(a.$slots,"layout-top",{},void 0,!0),S(Cd),S(va,{class:"backdrop",show:g(e),onClick:g(n)},null,8,["show","onClick"]),S(dd,null,{"nav-bar-title-before":w(()=>[C(a.$slots,"nav-bar-title-before",{},void 0,!0)]),"nav-bar-title-after":w(()=>[C(a.$slots,"nav-bar-title-after",{},void 0,!0)]),"nav-bar-content-before":w(()=>[C(a.$slots,"nav-bar-content-before",{},void 0,!0)]),"nav-bar-content-after":w(()=>[C(a.$slots,"nav-bar-content-after",{},void 0,!0)]),"nav-screen-content-before":w(()=>[C(a.$slots,"nav-screen-content-before",{},void 0,!0)]),"nav-screen-content-after":w(()=>[C(a.$slots,"nav-screen-content-after",{},void 0,!0)]),_:3}),S(Gc,{open:g(e),onOpenMenu:g(t)},null,8,["open","onOpenMenu"]),S(Td,{open:g(e)},{"sidebar-nav-before":w(()=>[C(a.$slots,"sidebar-nav-before",{},void 0,!0)]),"sidebar-nav-after":w(()=>[C(a.$slots,"sidebar-nav-after",{},void 0,!0)]),_:3},8,["open"]),S(Sc,null,{"page-top":w(()=>[C(a.$slots,"page-top",{},void 0,!0)]),"page-bottom":w(()=>[C(a.$slots,"page-bottom",{},void 0,!0)]),"not-found":w(()=>[C(a.$slots,"not-found",{},void 0,!0)]),"home-hero-before":w(()=>[C(a.$slots,"home-hero-before",{},void 0,!0)]),"home-hero-info-before":w(()=>[C(a.$slots,"home-hero-info-before",{},void 0,!0)]),"home-hero-info":w(()=>[C(a.$slots,"home-hero-info",{},void 0,!0)]),"home-hero-info-after":w(()=>[C(a.$slots,"home-hero-info-after",{},void 0,!0)]),"home-hero-actions-after":w(()=>[C(a.$slots,"home-hero-actions-after",{},void 0,!0)]),"home-hero-image":w(()=>[C(a.$slots,"home-hero-image",{},void 0,!0)]),"home-hero-after":w(()=>[C(a.$slots,"home-hero-after",{},void 0,!0)]),"home-features-before":w(()=>[C(a.$slots,"home-features-before",{},void 0,!0)]),"home-features-after":w(()=>[C(a.$slots,"home-features-after",{},void 0,!0)]),"doc-footer-before":w(()=>[C(a.$slots,"doc-footer-before",{},void 0,!0)]),"doc-before":w(()=>[C(a.$slots,"doc-before",{},void 0,!0)]),"doc-after":w(()=>[C(a.$slots,"doc-after",{},void 0,!0)]),"doc-top":w(()=>[C(a.$slots,"doc-top",{},void 0,!0)]),"doc-bottom":w(()=>[C(a.$slots,"doc-bottom",{},void 0,!0)]),"aside-top":w(()=>[C(a.$slots,"aside-top",{},void 0,!0)]),"aside-bottom":w(()=>[C(a.$slots,"aside-bottom",{},void 0,!0)]),"aside-outline-before":w(()=>[C(a.$slots,"aside-outline-before",{},void 0,!0)]),"aside-outline-after":w(()=>[C(a.$slots,"aside-outline-after",{},void 0,!0)]),"aside-ads-before":w(()=>[C(a.$slots,"aside-ads-before",{},void 0,!0)]),"aside-ads-after":w(()=>[C(a.$slots,"aside-ads-after",{},void 0,!0)]),_:3}),S(Lc),C(a.$slots,"layout-bottom",{},void 0,!0)],2)):(y(),N(u,{key:1}))}}}),Ld=R(Id,[["__scopeId","data-v-cc65dcc6"]]),zd=l=>(de("data-v-14b7c446"),l=l(),pe(),l),Bd={class:"profile"},Od={class:"avatar"},Nd=["src","alt"],Pd={class:"data"},Ed={class:"name"},Dd={key:0,class:"affiliation"},Rd={key:0,class:"title"},$d={key:1,class:"at"},jd=["innerHTML"],Fd={key:2,class:"links"},Vd={key:0,class:"sp"},qd=zd(()=>b("span",{class:"vpi-heart sp-icon"},null,-1)),Ud=z({__name:"VPTeamMembersItem",props:{size:{default:"medium"},member:{}},setup(l){return(e,t)=>(y(),v("article",{class:ee(["VPTeamMembersItem",[e.size]])},[b("div",Bd,[b("figure",Od,[b("img",{class:"avatar-img",src:e.member.avatar,alt:e.member.name},null,8,Nd)]),b("div",Pd,[b("h1",Ed,j(e.member.name),1),e.member.title||e.member.org?(y(),v("p",Dd,[e.member.title?(y(),v("span",Rd,j(e.member.title),1)):P("",!0),e.member.title&&e.member.org?(y(),v("span",$d," @ ")):P("",!0),e.member.org?(y(),N(Ne,{key:2,class:ee(["org",{link:e.member.orgLink}]),href:e.member.orgLink,"no-icon":""},{default:w(()=>[ne(j(e.member.org),1)]),_:1},8,["class","href"])):P("",!0)])):P("",!0),e.member.desc?(y(),v("p",{key:1,class:"desc",innerHTML:e.member.desc},null,8,jd)):P("",!0),e.member.links?(y(),v("div",Fd,[S(ds,{links:e.member.links},null,8,["links"])])):P("",!0)])]),e.member.sponsor?(y(),v("div",Vd,[S(Ne,{class:"sp-link",href:e.member.sponsor,"no-icon":""},{default:w(()=>[qd,ne(" "+j(e.member.actionText||"Sponsor"),1)]),_:1},8,["href"])])):P("",!0)],2))}}),Gd=R(Ud,[["__scopeId","data-v-14b7c446"]]),Hd={class:"container"},Wd=z({__name:"VPTeamMembers",props:{size:{default:"medium"},members:{}},setup(l){const e=l,t=F(()=>[e.size,`count-${e.members.length}`]);return(n,s)=>(y(),v("div",{class:ee(["VPTeamMembers",t.value])},[b("div",Hd,[(y(!0),v(G,null,ie(n.members,i=>(y(),v("div",{key:i.name,class:"item"},[S(Gd,{size:n.size,member:i},null,8,["size","member"])]))),128))])],2))}}),F0=R(Wd,[["__scopeId","data-v-212c59e2"]]),Ss={Layout:Ld,enhanceApp:({app:l})=>{l.component("Badge",_a)}};function Zd(l){return{all:l=l||new Map,on:function(e,t){var n=l.get(e);n?n.push(t):l.set(e,[t])},off:function(e,t){var n=l.get(e);n&&(t?n.splice(n.indexOf(t)>>>0,1):l.set(e,[]))},emit:function(e,t){var n=l.get(e);n&&n.slice().map(function(s){s(t)}),(n=l.get("*"))&&n.slice().map(function(s){s(e,t)})}}}const Yd=Zd();function oo(){return Yd}const li=()=>{},Ts={};function Te({key:l,src:e,addCalToWindow:t=!1,exportGetter:n=li}){let s;try{s=n()}catch{}if(!Ts[l]&&!s)Ts[l]=new Promise((i,r)=>{const o=document.createElement("script"),a=()=>{i({[l]:n()}),window.document.body.removeChild(o)};t?window[l]=a:o.onload=function(){(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")&&(o.onload=null,a())},o.src=e,o.type="text/javascript",o.defer=!0,o.onerror=r,document.body.appendChild(o)});else if(s!==void 0)return Promise.resolve({[l]:s});return Ts[l]}const Le={Mapvgl:"https://unpkg.com/mapvgl/dist/mapvgl.min.js",MapvglThreeLayers:"https://unpkg.com/mapvgl/dist/mapvgl.threelayers.min.js",Mapv:"https://unpkg.com/mapv/build/mapv.min.js",MapvThree:"https://unpkg.com/mapv-three/dist/mapvthree.umd.js",TrackAnimation:"https://mapopen.bj.bcebos.com/github/BMapGLLib/TrackAnimation/src/TrackAnimation.min.js",DrawingManager:"https://mapopen.bj.bcebos.com/github/BMapGLLib/DrawingManager/src/DrawingManager.min.js",DistanceTool:"https://mapopen.bj.bcebos.com/github/BMapGLLib/DistanceTool/src/DistanceTool.min.js",GeoUtils:"https://mapopen.bj.bcebos.com/github/BMapGLLib/GeoUtils/src/GeoUtils.min.js",AreaRestriction:"https://mapopen.bj.bcebos.com/github/BMapGLLib/AreaRestriction/src/AreaRestriction.min.js",InfoBox:"https://mapopen.bj.bcebos.com/github/BMapGLLib/InfoBox/src/InfoBox.min.js",RichMarker:"https://bj.bcebos.com/v1/mapopen/github/BMapGLLib/RichMarker/src/RichMarker.min.js",LuShu:"https://bj.bcebos.com/v1/mapopen/github/BMapGLLib/Lushu/src/Lushu.min.js"},Qd={TrackAnimation:l=>Te({src:l||Le.TrackAnimation,key:"trackAnimation",exportGetter:()=>window.BMapGLLib.TrackAnimation}),DrawingManager:l=>Te({src:l||Le.DrawingManager,key:"DrawingManager",exportGetter:()=>window.BMapGLLib.DrawingManager}),DistanceTool:l=>Te({src:l||Le.DistanceTool,key:"DistanceTool",exportGetter:()=>window.BMapGLLib.DistanceTool}),GeoUtils:l=>Te({src:l||Le.GeoUtils,key:"GeoUtils",exportGetter:()=>window.BMapGLLib.GeoUtils}),RichMarker:l=>Te({src:l||Le.RichMarker,key:"RichMarker",exportGetter:()=>window.BMapGLLib.RichMarker}),AreaRestriction:l=>Te({src:l||Le.AreaRestriction,key:"AreaRestriction",exportGetter:()=>window.BMapGLLib.AreaRestriction}),InfoBox:l=>Te({src:l||Le.InfoBox,key:"InfoBox",exportGetter:()=>window.BMapGLLib.InfoBox}),LuShu:l=>Te({src:l||Le.Lushu,key:"Lushu",exportGetter:()=>window.BMapGLLib.LuShu}),Mapvgl:l=>Te({src:l||Le.Mapvgl,key:"Mapvgl",exportGetter:()=>window.mapvgl}),MapvglThreeLayers:l=>Te({src:l||Le.MapvglThreeLayers,key:"MapvglThreeLayers",exportGetter:()=>window.mapvglThreeLayers}),Mapv:l=>Te({src:l||Le.Mapv,key:"Mapv",exportGetter:()=>window.mapv}),MapvThree:l=>Te({src:l||Le.MapvThree,key:"MapvThree",exportGetter:()=>window.mapvthree})};function Xd(l,e={}){const t=[...new Set(l)].reduce((n,s)=>{let i;return typeof s=="string"&&(i=Qd[s])?n.push(i(e[s])):typeof s=="function"&&n.push(s()),n},[]);return Promise.all(t).then(n=>{const s={};return n.forEach(i=>{Object.assign(s,i)}),s})}function Me(l,e,t){for(const n of Object.keys(l))if(/^on/.test(n)&&l[n]){const s=n.replace(/^on/,"").toLocaleLowerCase();t.addEventListener(s,i=>{var r,o;i.preventDefault=i.preventDefault||((r=i.domEvent)===null||r===void 0?void 0:r.preventDefault.bind(i.domEvent)),i.stopPropagation=i.stopPropagation||((o=i.domEvent)===null||o===void 0?void 0:o.stopPropagation.bind(i.domEvent)),e(s,i)})}}function Ii(l,e){console.warn(`[Vue3 BaiduMap GL/${l}]: ${e}`)}function Pe(l,e){console.error(`[Vue3 BaiduMap GL/${l}]: ${e}`)}const Kd=typeof window<"u",ts=l=>typeof l<"u";function rs(l){return Object.prototype.toString.call(l)==="[object String]"}function ao(l){return Object.prototype.toString.call(l)==="[object Array]"}var ci;(function(l){l[l.PROVINCE=0]="PROVINCE",l[l.CITY=1]="CITY",l[l.AREA=2]="AREA"})(ci||(ci={}));function Fe(l){return l.map(({lng:e,lat:t})=>new BMapGL.Point(e,t))}function Ji({lng:l,lat:e}){return new BMapGL.Point(l,e)}let Jd=0;function ep(){return`${Jd++}`}function tp(l,e,t,n){Object.defineProperty(l,e,{get(){return t},set(s){t=s,n&&n(t)}})}function er(l,e,t){return n=>l()?e(n):t(n)}function ae(l){return(e,t)=>{(e===t||e!==t&&JSON.stringify(e)!==JSON.stringify(t))&&l(e)}}function lo(l){const e=B(!1),t=B([]);let n;const s=i=>{n||(n=new BMapGL.Boundary),e.value=!0,n.get(i,r=>{e.value=!1,t.value=r.boundaries,l&&l(t)})};return bt(()=>n=null),{isLoading:e,boundaries:t,get:s}}const np={1:"PLAYING",2:"INITIAL",3:"STOPPING"};function sp(l,e){let t,n,s,i;const r=B("INITIAL"),o=e||{};let a;I(()=>l.value,_=>{s=_});const c=()=>{t||(i=s.getMapInstance(),t=new BMapGLLib.TrackAnimation(i,n,o),tp(t,"_status",t._status,m))},u=_=>{const M=_.map(A=>new BMapGL.Point(A.lng,A.lat));n=new BMapGL.Polyline(M),c()},d=()=>{const _=performance.now(),M=a||0,A=o.delay||0;t&&_-M>A&&r.value==="INITIAL"&&t.start(),a=performance.now()},h=()=>{t&&t.cancel()},p=()=>{t&&t.pause()},f=()=>{t&&t.continue()},m=()=>{t&&(r.value=np[t._status])};return bt(()=>{t&&r.value!=="INITIAL"&&t.cancel(),i&&(i.removeOverlay(n),n=null)}),{setPath:u,start:d,stop:p,cancel:h,proceed:f,status:r}}function ip(l,e){e=e||{},e.disableDragging=e.disableDragging===void 0;const t=B("INITIAL"),n={animationcancel:[()=>t.value="INITIAL"],animationend:[()=>t.value="INITIAL"],animationstart:[()=>t.value="PLAYING"]};let s,i,r=!1;I(()=>l.value,m=>{s=m});const o=()=>{const{enableDragging:m}=s.getBaseMapOptions();s.setDragging(m)};let c={addEventListener(m,_){n[m]||(n[m]=[]),n[m].push(_)},removeEventListener(m,_){const M=n[m];if(M)if(!_)n[m]=[];else for(let A=M.length;A>=0;A--)M[A]===_&&M.splice(A,1)}};const u=m=>{const{loop:_,duration:M,delay:A}=e;for(const T of m)if(T.center){const{lng:x,lat:L}=T.center;T.center=new BMapGL.Point(x,L)}c=new BMapGL.ViewAnimation(m,{duration:M,delay:A,interation:_});for(const T of Object.keys(n)){const x=n[T];x&&x.length&&x.forEach(L=>{c.addEventListener(T,L)})}r=!0},d=()=>{r&&t.value!=="PLAYING"&&(i=s.getMapInstance(),i.startViewAnimation(c),s.setDragging(!e.disableDragging))},h=()=>{r&&t.value!=="INITIAL"&&(c._cancel(i),o())},p=()=>{r&&t.value==="PLAYING"&&(c._pause(),t.value="STOPPING")},f=()=>{r&&t.value==="STOPPING"&&(c._continue(),t.value="PLAYING")};return bt(()=>{try{c&&t.value=="INITIAL"&&(i=s.getMapInstance(),c._cancel(i),o())}catch{return!1}}),{viewAnimation:c,start:d,cancel:h,stop:p,proceed:f,status:t,setKeyFrames:u}}function rp(l){const e=B({}),t=B(!0);return{location:e,isLoading:t,get:()=>{t.value=!0,new BMapGL.LocalCity().get(s=>{t.value=!1,e.value={code:s.code,point:s.center,name:s.name},l&&l(e)})}}}const op={0:"BMAP_STATUS_SUCCESS",8:"ERR_POSITION_TIMEOUT",2:"ERR_POSITION_UNAVAILABLE",6:"ERR_PERMISSION_DENIED"};function ap(l,e){l=l||{};const t=B({}),n=B(!0),s=B(!1),i=B();return{get:()=>{l.SDKLocation=l.enableSDKLocation,new Promise((o,a)=>{n.value=!0;const c=new BMapGL.Geolocation;c.getCurrentPosition(function(u){const d=c.getStatus();if(i.value=op[d],d===window.BMAP_STATUS_SUCCESS){const{address:h,accuracy:p,point:f}=u;o({accuracy:p,point:f,address:h})}else a()},l)}).then(o=>{s.value=!1,t.value=o,e&&e(t)}).catch(()=>{s.value=!0}).finally(()=>{n.value=!1})},isLoading:n,isError:s,status:i,location:t}}function Li(l){const e=B(),t=B(!0),n=B(!0);let s;const i=()=>{s||(s=new BMapGL.Geocoder)};return{get:(o,a)=>{if(i(),!o)return Pe("useAddressGeocoder","missing required params: address");if(!a)return Pe("useAddressGeocoder","missing required params: city");const c=ao(o);t.value=!0,(c?Promise.all(o.map(u=>tr(s,u,a))):tr(s,o,a)).then(u=>{if(u)if(c){let d=0;e.value=u.map(h=>(d+=+!h,h)),n.value=d===u.length}else e.value=u,n.value=!1;else e.value=u,n.value=!0;l&&l(e)}).catch(u=>{Pe("useAddressGeocoder",u.message),n.value=!0,e.value=null}).finally(()=>{t.value=!1})},point:e,isLoading:t,isEmpty:n}}function tr(l,e,t){return new Promise(n=>{l.getPoint(e,s=>n(s||null),t)})}function co(l,e){l=l||{};const t=B(),n=B(!0),s=B(!0);let i;return{get:o=>{if(!o)return Pe("usePointGeocoder","missing required params: point");i||(i=new BMapGL.Geocoder);const a=ao(o);n.value=!0,(a?Promise.all(o.map(c=>nr(i,c,l))):nr(i,o,l)).then(c=>{if(c)if(a){let u=0;t.value=c.map(d=>(u+=+!d,d)),s.value=u===c.length}else t.value=c,s.value=!1;else t.value=c,s.value=!0}).catch(()=>{s.value=!0,t.value=void 0}).finally(()=>{n.value=!1})},result:t,isLoading:n,isEmpty:s}}function nr(l,e,t){return new Promise(n=>{l.getLocation(new BMapGL.Point(e.lng,e.lat),s=>{n(s||null)},t)})}var ui;(function(l){l[l.COORDINATES_WGS84=1]="COORDINATES_WGS84",l[l.COORDINATES_WGS84_MC=2]="COORDINATES_WGS84_MC",l[l.COORDINATES_GCJ02=3]="COORDINATES_GCJ02",l[l.COORDINATES_GCJ02_MC=4]="COORDINATES_GCJ02_MC",l[l.COORDINATES_BD09=5]="COORDINATES_BD09",l[l.COORDINATES_BD09_MC=6]="COORDINATES_BD09_MC",l[l.COORDINATES_MAPBAR=7]="COORDINATES_MAPBAR",l[l.COORDINATES_51=8]="COORDINATES_51"})(ui||(ui={}));var hi;(function(l){l[l.COORDINATES_GCJ02=3]="COORDINATES_GCJ02",l[l.COORDINATES_BD09=5]="COORDINATES_BD09",l[l.COORDINATES_BD09_MC=6]="COORDINATES_BD09_MC"})(hi||(hi={}));function lp(){const l=B(),e=B(!0),t=B(!1),n=B();let s;return{convert:(r,o,a)=>{if(!r)return Pe("usePointConvertor","missing required params: points");if(!o)return Pe("usePointConvertor","missing required params: from");if(!a)return Pe("usePointConvertor","missing required params: to");if(!r.length)return;s||(s=new BMapGL.Convertor),e.value=!0;const c=r.map(u=>new BMapGL.Point(u.lng,u.lat));cp(s,c,o,a).then(u=>{l.value=u.points.map(d=>({lng:d.lng,lat:d.lat})),n.value=u.status,t.value=!1}).catch(u=>{u.value=u,t.value=!0}).finally(()=>{e.value=!1})},result:l,isLoading:e,isError:t,status:n}}function cp(l,e,t,n){return new Promise((s,i)=>{l.translate(e,t,n,r=>{r.status===0?s(r):i(r.status)})})}let Bt=null;function uo(){if(Bt!==null)return Bt;const l="//mapopen.bj.bcebos.com/cms/react-bmap/markers_new2x_fbb9e99.png";Bt={simple_red:new BMapGL.Icon(l,new BMapGL.Size(42/2,66/2),{imageOffset:new BMapGL.Size(454/2,378/2),imageSize:new BMapGL.Size(600/2,600/2)}),simple_blue:new BMapGL.Icon(l,new BMapGL.Size(42/2,66/2),{imageOffset:new BMapGL.Size(454/2,450/2),imageSize:new BMapGL.Size(600/2,600/2)}),loc_red:new BMapGL.Icon(l,new BMapGL.Size(46/2,70/2),{imageOffset:new BMapGL.Size(400/2,378/2),imageSize:new BMapGL.Size(600/2,600/2)}),loc_blue:new BMapGL.Icon(l,new BMapGL.Size(46/2,70/2),{imageOffset:new BMapGL.Size(400/2,450/2),imageSize:new BMapGL.Size(600/2,600/2)}),start:new BMapGL.Icon(l,new BMapGL.Size(50/2,80/2),{imageOffset:new BMapGL.Size(400/2,278/2),imageSize:new BMapGL.Size(600/2,600/2)}),end:new BMapGL.Icon(l,new BMapGL.Size(50/2,80/2),{imageOffset:new BMapGL.Size(450/2,278/2),imageSize:new BMapGL.Size(600/2,600/2)}),location:new BMapGL.Icon(l,new BMapGL.Size(28/2,40/2),{imageOffset:new BMapGL.Size(248/2,466/2),imageSize:new BMapGL.Size(600/2,600/2)})};for(let e=1;e<=10;e++)Bt["red"+e]=new BMapGL.Icon(l,new BMapGL.Size(42/2,66/2),{imageOffset:new BMapGL.Size(42/2*(e-1),0),imageSize:new BMapGL.Size(600/2,600/2)});for(let e=1;e<=10;e++)Bt["blue"+e]=new BMapGL.Icon(l,new BMapGL.Size(42/2,66/2),{imageOffset:new BMapGL.Size(42/2*(e-1),132/2),imageSize:new BMapGL.Size(600/2,600/2)});return Bt}function ho(){const l=ep();return ye("parentComponentId",l),l}const up=["id"];var kn=z(Object.assign({name:"BMap"},{__name:"index",props:{ak:{type:String,required:!1},apiUrl:{type:String,required:!1},width:{type:[String,Number],required:!1,default:"100%"},height:{type:[String,Number],required:!1,default:"550px"},center:{type:null,required:!1,default:()=>({lat:39.915185,lng:116.403901})},mapType:{type:null,required:!1,default:"BMAP_NORMAL_MAP"},zoom:{type:Number,required:!1,default:14},heading:{type:Number,required:!1,default:0},tilt:{type:Number,required:!1,default:0},minZoom:{type:Number,required:!1,default:0},maxZoom:{type:Number,required:!1,default:21},noAnimation:{type:Boolean,required:!1,default:!1},mapStyleId:{type:String,required:!1},mapStyleJson:{type:Array,required:!1},showControls:{type:Boolean,required:!1,default:!1},plugins:{type:null,required:!1},pluginsSourceLink:{type:Object,required:!1},displayOptions:{type:Object,required:!1},restrictCenter:{type:Boolean,required:!1,default:!0},enableTraffic:{type:Boolean,required:!1,default:!1},enableDragging:{type:Boolean,required:!1,default:!0},enableInertialDragging:{type:Boolean,required:!1,default:!0},enableScrollWheelZoom:{type:Boolean,required:!1,default:!1},enableContinuousZoom:{type:Boolean,required:!1,default:!0},enableResizeOnCenter:{type:Boolean,required:!1,default:!0},enableDoubleClickZoom:{type:Boolean,required:!1,default:!1},enableKeyboard:{type:Boolean,required:!1,default:!0},enablePinchToZoom:{type:Boolean,required:!1,default:!0},enableAutoResize:{type:Boolean,required:!1,default:!0},enableIconClick:{type:Boolean,required:!1},loadingBgColor:{type:String,required:!1,default:"#f1f1f1"},loadingTextColor:{type:String,required:!1,default:"#999"},backgroundColor:{type:Array,required:!1,default:()=>[245,245,245,100]},onClick:{type:null,required:!1},onDblclick:{type:null,required:!1},onRightclick:{type:null,required:!1},onRightdblclick:{type:null,required:!1},onMaptypechange:{type:null,required:!1},onMousemove:{type:null,required:!1},onMouseover:{type:null,required:!1},onMouseout:{type:null,required:!1},onMovestart:{type:null,required:!1},onMoving:{type:null,required:!1},onMoveend:{type:null,required:!1},onZoomstart:{type:null,required:!1},onZoomend:{type:null,required:!1},onAddoverlay:{type:null,required:!1},onAddcontrol:{type:null,required:!1},onRemovecontrol:{type:null,required:!1},onRemoveoverlay:{type:null,required:!1},onClearoverlays:{type:null,required:!1},onDragstart:{type:null,required:!1},onDragging:{type:null,required:!1},onDragend:{type:null,required:!1},onAddtilelayer:{type:null,required:!1},onRemovetilelayer:{type:null,required:!1},onLoad:{type:null,required:!1},onResize:{type:null,required:!1},onHotspotclick:{type:null,required:!1},onHotspotover:{type:null,required:!1},onHotspotout:{type:null,required:!1},onTilesloaded:{type:null,required:!1},onTouchstart:{type:null,required:!1},onTouchmove:{type:null,required:!1},onTouchend:{type:null,required:!1},onLongpress:{type:null,required:!1}},emits:["initd","unload","pluginReady","click","dblclick","rightclick","rightdblclick","maptypechange","mousemove","mouseover","mouseout","movestart","moving","moveend","zoomstart","zoomend","addoverlay","addcontrol","removecontrol","removeoverlay","clearoverlays","dragstart","dragging","dragend","addtilelayer","removetilelayer","load","resize","hotspotclick","hotspotover","hotspotout","tilesloaded","touchstart","touchmove","touchend","longpress"],setup(l,{expose:e,emit:t}){const n=l,s=B();let i=null,r=B(!1);const o=wi(),a=ho(),{emit:c}=oo(),u=F(()=>rs(n.width)?n.width:`${n.width}px`),d=F(()=>rs(n.height)?n.height:`${n.height}px`),h=Kd&&!!o;function p(){if(!h)return;const{proxy:$}=o,Ie=n.ak||$&&$.$baiduMapAk,Ee=n.apiUrl||$&&$.$baiduMapApiUrl,Qe=n.plugins&&$.$baiduMapPlugins?Object.assign($.$baiduMapPlugins,n.plugins):n.plugins||$.$baiduMapPlugins,ms=n.pluginsSourceLink&&$.$baiduMapPluginsSourceLink?Object.assign($.$baiduMapPluginsSourceLink,n.pluginsSourceLink):n.pluginsSourceLink||$.$baiduMapPluginsSourceLink||{},In=Ee||`_initBMap_${Ie}`;Te({src:Ee||`//api.map.baidu.com/api?type=webgl&v=1.0&ak=${Ie}&callback=${In}`,addCalToWindow:!Ee,key:In,exportGetter:()=>window.BMapGL}).then(()=>{const{restrictCenter:tn,enableIconClick:gs,backgroundColor:ys,minZoom:_s,maxZoom:bs,mapType:Ms,enableAutoResize:vs,showControls:xs,center:Xo,displayOptions:Ko}=n;if(!s.value)return;i=new BMapGL.Map(s.value,{backgroundColor:ys,enableIconClick:gs,restrictCenter:tn,minZoom:_s,maxZoom:bs,mapType:window[Ms],enableAutoResize:vs,showControls:xs,displayOptions:Ko}),T(Xo),_(),f(),m(),Me(n,t,i),Qe&&Xd(Qe,ms).then(ws=>{t("pluginReady",i,ws)}).catch(ws=>{Pe("BMap","plugins error: "+ws)});const Yi={map:i,instance:o,BMapGL:window.BMapGL};c(a,Yi),t("initd",Yi),r.value=!0}).catch(tn=>Pe("BMap",tn.message))}function f(){if(n.mapStyleId){i.setMapStyleV2({styleId:n.mapStyleId});return}else n.mapStyleJson&&i.setMapStyleV2({styleJson:n.mapStyleJson})}function m(){I(()=>n.zoom,L),I(()=>n.tilt,V),I(()=>n.heading,E),I(()=>n.center,ae(T),{deep:!0}),I(()=>n.mapStyleId,f),I(()=>n.mapStyleJson,ae(f),{deep:!0}),I(()=>n.displayOptions,ae(x),{deep:!0}),I(()=>n.mapType,D),I(()=>n.enableTraffic,A),I(()=>n.enableDragging,H),I(()=>n.enableInertialDragging,q),I(()=>n.enableScrollWheelZoom,Q),I(()=>n.enableContinuousZoom,Z),I(()=>n.enableResizeOnCenter,Y),I(()=>n.enableDoubleClickZoom,oe),I(()=>n.enableKeyboard,J),I(()=>n.enablePinchToZoom,fe),I(()=>n.enableAutoResize,Ce)}function _(){const{enableDragging:$,enableInertialDragging:Ie,enableScrollWheelZoom:Ee,enableContinuousZoom:Qe,enableResizeOnCenter:ms,enableDoubleClickZoom:In,enableKeyboard:tn,enablePinchToZoom:gs,enableAutoResize:ys,enableTraffic:_s,mapType:bs,zoom:Ms,tilt:vs,heading:xs}=n;L(Ms),V(vs),A(_s),E(xs),D(bs),J(tn),H($),Ce(ys),fe(gs),Z(Qe),Y(ms),oe(In),Q(Ee),q(Ie)}function M($,Ie){return new BMapGL.Point($,Ie)}function A($){$?i.setTrafficOn():i.setTrafficOff()}function T($){typeof $=="string"?i.centerAndZoom($,n.zoom):i.centerAndZoom(M($.lng,$.lat),n.zoom)}function x($){i.setDisplayOptions($||{})}function L($){i.setZoom($,{noAnimation:n.noAnimation})}function D($){window[$]!==void 0&&i.setMapType(window[$])}function E($){i.setHeading($)}function V($){i.setTilt($)}function H($){$?i.enableDragging():i.disableDragging()}function q($){$?i.enableInertialDragging():i.disableInertialDragging()}function Q($){$?i.enableScrollWheelZoom():i.disableScrollWheelZoom()}function Z($){$?i.enableContinuousZoom():i.disableContinuousZoom()}function Y($){$?i.enableResizeOnCenter():i.disableResizeOnCenter()}function oe($){$?i.enableDoubleClickZoom():i.disableDoubleClickZoom()}function J($){$?i.enableKeyboard():i.disableKeyboard()}function fe($){$?i.enablePinchToZoom():i.disablePinchToZoom()}function Ce($){$?i.enableAutoResize():i.disableAutoResize()}return Ze(p),bt(()=>{if(i)try{i.destroy()}catch($){Pe("BMapGL SDK",$.message)}}),e({getMapInstance:()=>i,getBaseMapOptions:()=>n,resetCenter:()=>T(n.center),setDragging:H}),ye("getMapInstance",()=>i),ye("baseMapSetCenterAndZoom",$=>T($)),ye("baseMapSetDragging",$=>H($)),ye("getBaseMapOptions",()=>n),($,Ie)=>g(h)?(y(),v("div",{key:0,id:g(a),class:"baidu-map-container",ref_key:"mapContainer",ref:s,style:ss([{width:u.value,height:d.value,background:n.loadingBgColor},{position:"relative",overflow:"hidden"}])},[C($.$slots,"loading",{},()=>[b("div",{style:ss([{color:n.loadingTextColor},{position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)"}])},j(g(r)?"":"map loading..."),5)]),C($.$slots,"default")],12,up)):P("v-if",!0)}}));kn.__file="packages/components/map/index.vue";function re(l){const{on:e,off:t,emit:n}=oo(),s=wi(),i=ho(),{emit:r}=s||{emit:li},o=ot("getMapInstance",void 0),c=ot("parentComponentId",void 0)||"",u=s&&s.type.name||"";if(typeof o>"u")return{ready:li};const d=o();let h;const p=f=>{h=l(f.map)};return Ze(()=>{d?p({map:d}):e(c,p)}),Zr(()=>{try{h&&h()}catch(f){Pe(u,f.message)}r("unload"),t(c,p)}),{ready:(f,m)=>{const _={map:f,instance:m,BMapGL:window.BMapGL};r("initd",_),n(i,_)}}}const hp={style:{display:"none"}};var po=z(Object.assign({name:"BControl",inheritAttrs:!1},{__name:"index",props:{anchor:{type:null,required:!1,default:"BMAP_ANCHOR_TOP_LEFT"},offset:{type:Object,required:!1,default:()=>({x:83,y:18})},visible:{type:Boolean,required:!1,default:!0}},emits:["initd","unload"],setup(l){const e=l,t=B(),{ready:n}=re(s=>{if(!t.value)return;const{offset:i,anchor:r,visible:o}=e,a=new BMapGL.Control;return a.defaultAnchor=window[r],a.defaultOffset=new BMapGL.Size(i.x,i.y),a.initialize=c=>c.getContainer().appendChild(t.value),o&&s.addControl(a),n(s,a),I(()=>e.visible,c=>{s[c?"addControl":"removeControl"](a)}),()=>s.removeControl(a)});return(s,i)=>(y(),v("div",hp,[b("div",U({ref_key:"controlContainer",ref:t},s.$attrs),[C(s.$slots,"default")],16)]))}}));po.__file="packages/components/control/control/index.vue";var fo=z(Object.assign({name:"BScale"},{__name:"index",props:{anchor:{type:null,required:!1,default:"BMAP_ANCHOR_BOTTOM_LEFT"},offset:{type:Object,required:!1,default:()=>({x:83,y:18})},unit:{type:null,required:!1,default:"BMAP_UNIT_METRIC"},visible:{type:Boolean,required:!1,default:!0}},emits:["initd","unload"],setup(l){const e=l;let t;const{ready:n}=re(i=>{const{visible:r,offset:o,anchor:a}=e;return t=new BMapGL.ScaleControl({offset:new BMapGL.Size(o.x,o.y),anchor:window[a]}),r&&i.addControl(t),s(),n(i,t),I(()=>e.visible,c=>{i[c?"addControl":"removeControl"](t)}),()=>i.removeControl(t)});I(()=>e.unit,s);function s(){t.setUnit(window[e.unit])}return(i,r)=>null}}));fo.__file="packages/components/control/scale/index.vue";var mo=z(Object.assign({name:"BZoom"},{__name:"index",props:{anchor:{type:null,required:!1,default:"BMAP_ANCHOR_BOTTOM_RIGHT"},offset:{type:Object,required:!1,default:()=>({x:83,y:18})},visible:{type:Boolean,required:!1,default:!0}},emits:["initd","unload"],setup(l){const e=l;let t;const{ready:n}=re(s=>{const{visible:i,offset:r,anchor:o}=e;return t=new BMapGL.ZoomControl({offset:new BMapGL.Size(r.x,r.y),anchor:window[o]}),i&&s.addControl(t),n(s,t),I(()=>e.visible,a=>{s[a?"addControl":"removeControl"](t)}),()=>s.removeControl(t)});return(s,i)=>null}}));mo.__file="packages/components/control/zoom/index.vue";var go=z(Object.assign({name:"BCityList"},{__name:"index",props:{anchor:{type:null,required:!1,default:"BMAP_ANCHOR_TOP_LEFT"},offset:{type:Object,required:!1,default:()=>({x:18,y:18})},expand:{type:Boolean,required:!1,default:!1},visible:{type:Boolean,required:!1,default:!0}},emits:["initd","unload"],setup(l){const e=l;let t;const{ready:n}=re(s=>{const{visible:i,expand:r,offset:o,anchor:a}=e;return t=new BMapGL.CityListControl({expand:r,offset:new BMapGL.Size(o.x,o.y),anchor:window[a]}),i&&s.addControl(t),n(s,t),I(()=>e.visible,c=>{s[c?"addControl":"removeControl"](t)}),()=>s.removeControl(t)});return(s,i)=>null}}));go.__file="packages/components/control/city-list/index.vue";var yo=z(Object.assign({name:"BLocation"},{__name:"index",props:{anchor:{type:null,required:!1,default:"BMAP_ANCHOR_BOTTOM_RIGHT"},offset:{type:Object,required:!1,default:()=>({x:18,y:18})},visible:{type:Boolean,required:!1,default:!0},onLocationError:{type:null,required:!1},onLocationSuccess:{type:null,required:!1}},emits:["initd","unload","locationSuccess","locationError"],setup(l,{emit:e}){const t=l;let n;const{ready:s}=re(i=>{const{visible:r,offset:o,anchor:a}=t;return n=new BMapGL.LocationControl({offset:new BMapGL.Size(o.x,o.y),anchor:window[a]}),r&&i.addControl(n),s(i,n),Me(t,e,n),I(()=>t.visible,c=>{i[c?"addControl":"removeControl"](n)}),()=>i.removeControl(n)});return(i,r)=>null}}));yo.__file="packages/components/control/location/index.vue";const Ln={},dp={style:{display:"none"}};var _o=z(Object.assign({name:"BCopyright",inheritAttrs:!1},{__name:"index",props:{anchor:{type:null,required:!1,default:"BMAP_ANCHOR_BOTTOM_RIGHT"},offset:{type:Object,required:!1,default:()=>({x:83,y:18})},visible:{type:Boolean,required:!1,default:!0}},emits:["initd","unload"],setup(l){var e;const t=l,n=B();let s;const i=(e=wi())===null||e===void 0?void 0:e.uid,{ready:r}=re(o=>{const{anchor:a,offset:c,visible:u}=t;if(!n.value)return;let d=o.getBounds();return(s=Ln[a])||(s=new BMapGL.CopyrightControl({offset:new BMapGL.Size(c.x,c.y),anchor:window[a]}),Ln[a]=s,o.addControl(s)),u&&s.addCopyright({id:i,content:n.value.innerHTML,bounds:d}),r(o,s),I(()=>t.visible,h=>{h?n.value&&s.addCopyright({id:i,content:n.value.innerHTML,bounds:d}):i&&s.removeCopyright(i)}),()=>{var h,p;const f=Ln[a],m=(h=f==null?void 0:f.getCopyrightCollection)===null||h===void 0?void 0:h.bind(f);m&&((p=m())===null||p===void 0?void 0:p.length)>1?f.removeCopyright(i):(o.removeControl(f),Reflect.deleteProperty(Ln,a))}});return vi(()=>{if(!s)return;let o=s.getCopyright(i);o&&n.value&&o.content!==n.value.innerHTML&&s.addCopyright({id:i,content:n.value.innerHTML,bounds:o.bounds})}),(o,a)=>(y(),v("div",dp,[b("div",U({ref_key:"copyrightContainer",ref:n},o.$attrs),[C(o.$slots,"default")],16)]))}}));_o.__file="packages/components/control/copyright/index.vue";var bo=z(Object.assign({name:"BNavigation3d"},{__name:"index",props:{anchor:{type:null,required:!1,default:"BMAP_ANCHOR_BOTTOM_RIGHT"},offset:{type:Object,required:!1,default:()=>({x:83,y:18})},visible:{type:Boolean,required:!1,default:!0}},emits:["initd","unload"],setup(l){const e=l;let t;const{ready:n}=re(s=>{const{visible:i,offset:r,anchor:o}=e;return t=new BMapGL.NavigationControl3D({offset:new BMapGL.Size(r.x,r.y),anchor:window[o]}),i&&s.addControl(t),n(s,t),I(()=>e.visible,a=>{s[a?"addControl":"removeControl"](t)}),()=>s.removeControl(t)});return(s,i)=>null}}));bo.__file="packages/components/control/navigation3d/index.vue";var Mo=z(Object.assign({name:"BPanoramaControl"},{__name:"index",props:{anchor:{type:null,required:!1,default:"BMAP_ANCHOR_TOP_RIGHT"},offset:{type:Object,required:!1,default:()=>({x:10,y:10})},visible:{type:Boolean,required:!1,default:!0}},emits:["initd","unload"],setup(l){const e=l;let t;const{ready:n}=re(s=>{const{visible:i,offset:r,anchor:o}=e;return t=new BMapGL.PanoramaControl,t.setOffset(new BMapGL.Size(r.x,r.y)),t.setAnchor(window[o]),i&&s.addControl(t),n(s,t),I(()=>e.visible,a=>{s[a?"addControl":"removeControl"](t)}),()=>s.removeControl(t)});return(s,i)=>null}}));Mo.__file="packages/components/control/panorama-control/index.vue";var vo=z(Object.assign({name:"BPanoramaCoverageLayer"},{__name:"index",emits:["initd","unload"],setup(l){let e;const{ready:t}=re(n=>(e=new BMapGL.PanoramaCoverageLayer,n.addTileLayer(e),t(n,e),()=>n.removeTileLayer(e)));return(n,s)=>null}}));vo.__file="packages/components/layer/panorama-coverage/index.vue";var Sn=z(Object.assign({name:"BMarker"},{__name:"index",props:{position:{type:null,required:!0},offset:{type:Object,required:!1,default:()=>({x:0,y:0})},icon:{type:null,required:!1},zIndex:{type:Number,required:!1},enableMassClear:{type:Boolean,required:!1,default:!0},enableDragging:{type:Boolean,required:!1,default:!1},enableClicking:{type:Boolean,required:!1,default:!0},raiseOnDrag:{type:Boolean,required:!1,default:!1},draggingCursor:{type:String,required:!1,default:"pointer"},rotation:{type:Number,required:!1,default:0},title:{type:String,required:!1,default:""},visible:{type:Boolean,required:!1,default:!0},onClick:{type:null,required:!1},onDblclick:{type:null,required:!1},onMousedown:{type:null,required:!1},onMouseup:{type:null,required:!1},onMouseout:{type:null,required:!1},onMouseover:{type:null,required:!1},onRemove:{type:null,required:!1},onInfowindowclose:{type:null,required:!1},onInfowindowopen:{type:null,required:!1},onDragstart:{type:null,required:!1},onDragging:{type:null,required:!1},onDragend:{type:null,required:!1},onRightclick:{type:null,required:!1}},emits:["initd","unload","click","dblclick","mousedown","mouseup","mouseout","mouseover","remove","infowindowclose","infowindowopen","dragstart","dragging","dragend","rightclick"],setup(l,{emit:e}){const t=l;let n;const{ready:s}=re(p=>{const f=()=>{n&&p.removeOverlay(n)},m=()=>{if(!t.position)return!1;const{position:_,offset:M,enableMassClear:A,enableDragging:T,enableClicking:x,raiseOnDrag:L,draggingCursor:D,rotation:E,title:V,icon:H,zIndex:q,visible:Q}=t,Z={offset:new BMapGL.Size(M.x,M.y),enableMassClear:A,enableDragging:T,enableClicking:x,raiseOnDrag:L,draggingCursor:D,title:V};H&&(Z.icon=i()),n=new BMapGL.Marker(new BMapGL.Point(_.lng,_.lat),Z),h(E),ts(q)&&r(q),Q&&p.addOverlay(n),Me(t,e,n),s(p,n)};return m(),I(()=>t.position,ae(_=>{n?o(_):m()}),{deep:!0}),I(()=>t.icon,ae(a),{deep:!0}),I(()=>t.offset,ae(d),{deep:!0}),I(()=>t.enableDragging,c),I(()=>t.enableMassClear,u),I(()=>t.rotation,h),I(()=>t.visible,_=>{p[_?"addOverlay":"removeOverlay"](n)}),f});ye("getOverlayInstance",()=>n);function i(){const p=uo(),{icon:f}=t;if(rs(f)&&p[f])return p[f];{const{anchor:m,imageOffset:_,imageSize:M,imageUrl:A,printImageUrl:T,size:x}=f,L={size:new BMapGL.Size(x.width,x.height)};return M&&(L.imageSize=new BMapGL.Size(M.width,M.height)),m&&(L.anchor=new BMapGL.Size(m.x,m.y)),_&&(L.imageOffset=new BMapGL.Size(_.x,_.y)),T&&(L.printImageUrl=T),new BMapGL.Icon(A,new BMapGL.Size(x.width,x.height),L)}}function r(p){n.setZIndex(p)}function o(p){p&&p.lat&&p.lng&&n.setPosition(new BMapGL.Point(p.lng,p.lat))}function a(){n.setIcon(i())}function c(p){p?n.enableDragging():n.disableDragging()}function u(p){p?n.enableMassClear():n.disableMassClear()}function d(p){p&&n.setOffset(new BMapGL.Size(p.x,p.y))}function h(p){p!==void 0&&n.setRotation(p)}return(p,f)=>C(p.$slots,"default")}}));Sn.__file="packages/components/overlay/marker/index.vue";var xo=z(Object.assign({name:"BMarker3d"},{__name:"index",props:{position:{type:null,required:!0},height:{type:Number,required:!0},size:{type:Number,required:!1,default:50},shape:{type:String,required:!1,default:"BMAP_SHAPE_CIRCLE"},fillColor:{type:String,required:!1,default:"#f00"},fillOpacity:{type:Number,required:!1,default:.8},icon:{type:Object,required:!1},enableMassClear:{type:Boolean,required:!1,default:!0},visible:{type:Boolean,required:!1,default:!0},onClick:{type:null,required:!1},onDblclick:{type:null,required:!1},onMousedown:{type:null,required:!1},onMouseup:{type:null,required:!1},onMouseout:{type:null,required:!1},onMouseover:{type:null,required:!1},onRemove:{type:null,required:!1},onRightclick:{type:null,required:!1}},emits:["initd","unload","click","dblclick","mousedown","mouseup","mouseout","mouseover","remove","rightclick"],setup(l,{emit:e}){const t=l;let n;const{ready:s}=re(h=>{const p=()=>{h.removeOverlay(n)},f=()=>{if(!t.position||!t.height)return!1;const{position:m,shape:_,fillColor:M,fillOpacity:A,size:T,icon:x,height:L,enableMassClear:D,visible:E}=t,V={size:T,fillColor:M,fillOpacity:A,shape:window[_]};x&&(V.icon=i()),n=new BMapGL.Marker3D(new BMapGL.Point(m.lng,m.lat),L,V),E&&h.addOverlay(n),d(D),Me(t,e,n),s(h,n)};return f(),I(()=>t.position,ae(m=>{n?r(m):f()}),{deep:!0}),I(()=>t.height,m=>{n?o(m):f()}),I(()=>t.enableMassClear,d),I(()=>t.icon,ae(u),{deep:!0}),I(()=>t.enableMassClear,d),I(()=>t.fillOpacity,c),I(()=>t.fillColor,a),I(()=>t.visible,m=>{h[m?"addOverlay":"removeOverlay"](n)}),p});ye("getOverlayInstance",()=>n);function i(){const{icon:h}=t,{anchor:p,imageOffset:f,imageSize:m,imageUrl:_,printImageUrl:M}=h,A={imageSize:new BMapGL.Size(m.width,m.height)};return p&&(A.anchor=new BMapGL.Size(p.x,p.y)),f&&(A.imageOffset=new BMapGL.Size(f.x,f.y)),M&&(A.printImageUrl=M),new BMapGL.Icon(_,new BMapGL.Size(m.width,m.height),A)}function r(h){try{n.setPosition(new BMapGL.Point(h.lng,h.lat))}catch(p){console.error(p)}}function o(h){n.setHeight(h)}function a(h){n.setFillColor(h)}function c(h){n.setFillOpacity(h)}function u(){n.setIcon(i())}function d(h){h?n.enableMassClear():n.disableMassClear()}return(h,p)=>C(h.$slots,"default")}}));xo.__file="packages/components/overlay/marker3d/index.vue";var wo=z(Object.assign({name:"BLabel"},{__name:"index",props:{content:{type:String,required:!0},position:{type:null,required:!0},offset:{type:Object,required:!1,default:()=>({x:0,y:0})},zIndex:{type:Number,required:!1},style:{type:null,required:!1},enableMassClear:{type:Boolean,required:!1,default:!0},visible:{type:Boolean,required:!1,default:!0},onClick:{type:null,required:!1},onDblclick:{type:null,required:!1},onMousedown:{type:null,required:!1},onMouseup:{type:null,required:!1},onMouseout:{type:null,required:!1},onMouseover:{type:null,required:!1},onRemove:{type:null,required:!1},onRightclick:{type:null,required:!1}},emits:["initd","unload","click","dblclick","mousedown","mouseup","mouseout","mouseover","remove","rightclick"],setup(l,{emit:e}){const t=l;let n;const s=()=>!!n,{ready:i}=re(h=>{const p=()=>{n&&h.removeOverlay(n)},f=()=>{if(!t.content||!t.position)return!1;const{content:m,position:_,offset:M,enableMassClear:A,style:T,visible:x,zIndex:L}=t,D={position:new BMapGL.Point(_.lng,_.lat),offset:new BMapGL.Size(M.x,M.y),enableMassClear:A};n=new BMapGL.Label(m,D),T&&n.setStyle(T),x&&h.addOverlay(n),ts(L)&&r(L),Me(t,e,n),I(()=>t.offset,ae(u),{deep:!0}),I(()=>t.style,ae(a),{deep:!0}),I(()=>t.enableMassClear,d),I(()=>t.zIndex,r),I(()=>t.visible,E=>{h[E?"addOverlay":"removeOverlay"](n)})};return f(),i(h,n),I(()=>t.position,ae(er(s,o,f)),{deep:!0}),I(()=>t.content,er(s,c,f)),p});ye("getOverlayInstance",()=>n);function r(h){ts(h)&&n.setZIndex(h)}function o(h){n.setPosition(new BMapGL.Point(h.lng,h.lat))}function a(h){ts(h)&&n.setStyle(h)}function c(h){n.setContent(h)}function u(h){n.setOffset(new BMapGL.Size(h.x,h.y))}function d(h){h?n.enableMassClear():n.disableMassClear()}return(h,p)=>C(h.$slots,"default")}}));wo.__file="packages/components/overlay/label/index.vue";var ko=z(Object.assign({name:"BPolyline"},{__name:"index",props:{path:{type:Array,required:!0},strokeColor:{type:String,required:!1,default:"#000"},strokeWeight:{type:Number,required:!1,default:2},strokeOpacity:{type:Number,required:!1,default:1},strokeStyle:{type:null,required:!1,default:"solid"},enableMassClear:{type:Boolean,required:!1,default:!0},enableEditing:{type:Boolean,required:!1,default:!1},enableClicking:{type:Boolean,required:!1,default:!0},geodesic:{type:Boolean,required:!1,default:!1},clip:{type:Boolean,required:!1,default:!0},linkRight:{type:Boolean,required:!1,default:!0},visible:{type:Boolean,required:!1,default:!0},onClick:{type:null,required:!1},onDblclick:{type:null,required:!1},onMousedown:{type:null,required:!1},onMouseup:{type:null,required:!1},onMouseout:{type:null,required:!1},onMouseover:{type:null,required:!1},onRemove:{type:null,required:!1},onLineupdate:{type:null,required:!1}},emits:["initd","unload","click","dblclick","mousedown","mouseup","mouseout","mouseover","remove","lineupdate"],setup(l,{emit:e}){const t=l;let n;const{ready:s}=re(h=>{const p=()=>{n&&h.removeOverlay(n)},f=()=>{if(!t.path||!t.path.length)return!1;const{path:m,strokeColor:_,strokeWeight:M,strokeOpacity:A,strokeStyle:T,enableMassClear:x,enableEditing:L,enableClicking:D,geodesic:E,clip:V,linkRight:H,visible:q}=t,Q=Fe(m);n=new BMapGL.Polyline(Q,{strokeColor:_,strokeWeight:M,strokeOpacity:A,strokeStyle:T,enableMassClear:x,enableEditing:L,enableClicking:D,geodesic:E,linkRight:H,clip:V}),q&&h.addOverlay(n),Me(t,e,n),s(h,n),I(()=>t.strokeColor,r),I(()=>t.strokeOpacity,o),I(()=>t.strokeWeight,a),I(()=>t.strokeStyle,c),I(()=>t.enableMassClear,u),I(()=>t.enableEditing,d)};return f(),I(()=>t.path,ae(m=>{n?m.length?i(m):p():f()}),{deep:!0}),I(()=>t.visible,m=>{h[m?"addOverlay":"removeOverlay"](n)}),p});ye("getOverlayInstance",()=>n);function i(h){n&&n.setPath(Fe(h))}function r(h){n&&n.setStrokeColor(h)}function o(h){n&&n.setStrokeOpacity(h)}function a(h){n&&n.setStrokeWeight(h)}function c(h){n&&n.setStrokeStyle(h)}function u(h){n&&(h?n.enableMassClear():n.disableMassClear())}function d(h){n&&(h?n.enableEditing():n.disableEditing())}return(h,p)=>C(h.$slots,"default")}}));ko.__file="packages/components/overlay/polyline/index.vue";var So=z(Object.assign({name:"BBezierCurve"},{__name:"index",props:{path:{type:Array,required:!0},controlPoints:{type:Array,required:!0},strokeColor:{type:String,required:!1,default:"#000"},strokeWeight:{type:Number,required:!1,default:2},strokeOpacity:{type:Number,required:!1,default:1},strokeStyle:{type:null,required:!1,default:"solid"},enableMassClear:{type:Boolean,required:!1,default:!0},visible:{type:Boolean,required:!1,default:!0},onClick:{type:null,required:!1},onDblclick:{type:null,required:!1},onMousedown:{type:null,required:!1},onMouseup:{type:null,required:!1},onMouseout:{type:null,required:!1},onMouseover:{type:null,required:!1},onRemove:{type:null,required:!1},onLineupdate:{type:null,required:!1}},emits:["initd","unload","click","dblclick","mousedown","mouseup","mouseout","mouseover","remove","lineupdate"],setup(l,{emit:e}){const t=l;let n;const{ready:s}=re(h=>{const p=()=>{h.removeOverlay(n)},f=()=>{if(!t.path||!(t.path&&t.path.length)||!t.controlPoints||!(t.controlPoints&&t.controlPoints.length))return!1;const{path:m,controlPoints:_,strokeColor:M,strokeWeight:A,strokeOpacity:T,strokeStyle:x,enableMassClear:L,visible:D}=t,E=Fe(m),V=_.map(H=>Fe(H));try{n=new BMapGL.BezierCurve(E,V,{strokeColor:M,strokeWeight:A,strokeOpacity:T,strokeStyle:x,enableMassClear:L})}catch{}D&&h.addOverlay(n),s(h,n),Me(t,e,n)};return f(),I(()=>t.path,ae(m=>{n?i(m):f()}),{deep:!0}),I(()=>t.controlPoints,ae(m=>{n?r(m):f()}),{deep:!0}),I(()=>t.strokeColor,o),I(()=>t.strokeOpacity,a),I(()=>t.strokeWeight,c),I(()=>t.strokeStyle,u),I(()=>t.enableMassClear,d),I(()=>t.visible,m=>{h[m?"addOverlay":"removeOverlay"](n)}),p});ye("getOverlayInstance",()=>n);function i(h){n.setPath(Fe(h))}function r(h){n.setControlPoints(h.map(p=>Fe(p)))}function o(h){n.setStrokeColor(h)}function a(h){n.setStrokeOpacity(h)}function c(h){n.setStrokeWeight(h)}function u(h){n.setStrokeStyle(h)}function d(h){h?n.enableMassClear():n.disableMassClear()}return(h,p)=>C(h.$slots,"default")}}));So.__file="packages/components/overlay/bezierCurve/index.vue";var To=z(Object.assign({name:"BPolygon"},{__name:"index",props:{path:{type:Array,required:!0},isBoundary:{type:Boolean,required:!1},strokeColor:{type:String,required:!1,default:"#000"},autoCenter:{type:Boolean,required:!1,default:!0},strokeWeight:{type:Number,required:!1,default:2},strokeOpacity:{type:Number,required:!1,default:1},strokeStyle:{type:null,required:!1,default:"solid"},fillColor:{type:String,required:!1,default:"#fff"},fillOpacity:{type:Number,required:!1,default:.3},enableMassClear:{type:Boolean,required:!1},enableEditing:{type:Boolean,required:!1},enableClicking:{type:Boolean,required:!1},geodesic:{type:Boolean,required:!1,default:!1},clip:{type:Boolean,required:!1,default:!0},visible:{type:Boolean,required:!1,default:!0},onClick:{type:null,required:!1},onDblclick:{type:null,required:!1},onMousedown:{type:null,required:!1},onMouseup:{type:null,required:!1},onMouseout:{type:null,required:!1},onMouseover:{type:null,required:!1},onRemove:{type:null,required:!1},onLineupdate:{type:null,required:!1}},emits:["initd","unload","click","dblclick","mousedown","mouseup","mouseout","mouseover","remove","lineupdate"],setup(l,{emit:e}){const t=l,n=ot("baseMapSetCenterAndZoom");let s;const{ready:i}=re(_=>{const M=()=>{s&&_.removeOverlay(s)},A=()=>{if(!t.path)return!1;if(!t.path.length)return;const{path:T,strokeColor:x,strokeWeight:L,strokeOpacity:D,strokeStyle:E,fillOpacity:V,fillColor:H,enableMassClear:q,enableEditing:Q,enableClicking:Z,geodesic:Y,clip:oe,isBoundary:J,visible:fe}=t,Ce=J?T:Fe(T);Ce&&(s=new BMapGL.Polygon(Ce,{strokeColor:x,strokeWeight:L,strokeOpacity:D,strokeStyle:E,fillOpacity:V,fillColor:H,enableMassClear:q,enableEditing:Q,enableClicking:Z,geodesic:Y,clip:oe}),fe&&_.addOverlay(s),fe&&r(),Me(t,e,s),i(_,s),I(()=>t.strokeColor,a),I(()=>t.strokeOpacity,u),I(()=>t.fillColor,c),I(()=>t.fillOpacity,d),I(()=>t.strokeWeight,h),I(()=>t.strokeStyle,p),I(()=>t.enableMassClear,f),I(()=>t.enableEditing,m),I(()=>t.visible,$=>{_[$?"addOverlay":"removeOverlay"](s),$&&r()}))};return A(),I(()=>t.path,ae(T=>{s?o(T):A()}),{deep:!0}),M});ye("getOverlayInstance",()=>s);function r(){_t(()=>{if(t.autoCenter)try{const _=s.getBounds();if(_){const M=_.getCenter();M&&n(M)}}catch(_){console.warn("BPolygon","auto set center error",_)}})}function o(_){const{isBoundary:M}=t;s.setPath(M?_:Fe(_)),r()}function a(_){s&&s.setStrokeColor(_)}function c(_){s&&s.setFillColor(_)}function u(_){s&&s.setStrokeOpacity(_)}function d(_){s&&s.setFillOpacity(_)}function h(_){s&&s.setStrokeWeight(_)}function p(_){s&&s.setStrokeStyle(_)}function f(_){s&&(_?s.enableMassClear():s.disableMassClear())}function m(_){s&&(_?s.enableEditing():s.disableEditing())}return(_,M)=>C(_.$slots,"default")}}));To.__file="packages/components/overlay/polygon/index.vue";const pp={style:{display:"none"}};var zi=z(Object.assign({name:"BInfoWindow"},{__name:"index",props:{modelValue:{type:Boolean,required:!1,default:void 0},show:{type:Boolean,required:!1,default:!1},title:{type:String,required:!1,default:""},position:{type:null,required:!0},width:{type:null,required:!1,default:0},height:{type:null,required:!1,default:0},maxWidth:{type:null,required:!1,default:220},offset:{type:Object,required:!1,default:()=>({x:0,y:0})},enableAutoPan:{type:Boolean,required:!1,default:!0},enableCloseOnClick:{type:Boolean,required:!1,default:!0},onClose:{type:null,required:!1},onOpen:{type:null,required:!1},onMaximize:{type:null,required:!1},onRestore:{type:null,required:!1},onClickclose:{type:null,required:!1}},emits:["initd","unload","close","open","maximize","restore","clickclose","update:show"],setup(l,{emit:e}){const t=l,n=F({get:()=>t.show,set:x=>e("update:show",x)}),s=B();let i,r;Mn(()=>{typeof t.modelValue<"u"});const{ready:o}=re(x=>{r=x;const L=()=>{i&&x.removeOverlay(i)},D=()=>{const{title:E,width:V,height:H,enableAutoPan:q,maxWidth:Q,offset:Z,enableCloseOnClick:Y}=t,oe={width:V,height:H,title:E,maxWidth:Q,enableAutoPan:q,enableCloseOnClick:Y,offset:new BMapGL.Size(Z.x,Z.y)};i=new BMapGL.InfoWindow(s.value||"",oe),i.addEventListener("close",()=>{t.show&&(n.value=!1)}),i.addEventListener("open",()=>{t.show||(n.value=!0)}),x.addOverlay(i),d(),a(),Me(t,e,i),o(x,i),t.show&&_t(()=>{c(),_t(()=>{!i._visible&&(n.value=!1)})})};return s.value?D():_t(()=>D()),I(()=>t.position,ae(E=>A(E)),{deep:!0}),I(()=>t.title,h),I(()=>t.width,f),I(()=>t.height,p),I(()=>t.maxWidth,m),I(()=>t.enableAutoPan,_),I(()=>t.enableCloseOnClick,M),I(()=>t.show,ae(()=>{t.show?c():u()})),L});vi(()=>{i&&i.isOpen()&&(T(s.value||""),d())}),ye("getOverlayInstance",()=>i);function a(){const x=window.MutationObserver;x&&new x(()=>{i.redraw()}).observe(s.value,{attributes:!0,childList:!0,characterData:!0,subtree:!0})}function c(){const{position:x}=t;!x||!i||(r.openInfoWindow(i,new BMapGL.Point(x.lng,x.lat)),n.value=!0)}function u(){i&&(i.hide(),n.value=!1)}function d(){var x;i.redraw(),Array.prototype.forEach.call(((x=s.value)===null||x===void 0?void 0:x.querySelectorAll("img"))||[],L=>{L.onload=()=>{i.redraw()}})}function h(x){i.setTitle(x)}function p(x){i.setHeight(x)}function f(x){i.setWidth(x)}function m(x){i.setMaxWidth(x)}function _(x){x?i.enableAutoPan():i.disableAutoPan()}function M(x){x?i.enableCloseOnClick():i.disableCloseOnClick()}function A(x){c(),i.setPosition(new BMapGL.Point(x.lng,x.lat)),n.value||u()}function T(x){i.setContent(x)}return(x,L)=>(y(),v("div",pp,[b("div",U({ref_key:"infoWindowContainer",ref:s},x.$attrs),[C(x.$slots,"default")],16)]))}}));zi.__file="packages/components/overlay/infowindow/index.vue";var Ao=z(Object.assign({name:"BCircle"},{__name:"index",props:{center:{type:null,required:!0},radius:{type:Number,required:!0},strokeColor:{type:String,required:!1,default:"#000"},strokeOpacity:{type:Number,required:!1,default:1},fillColor:{type:String,required:!1,default:"#fff"},fillOpacity:{type:Number,required:!1,default:.3},strokeWeight:{type:Number,required:!1,default:2},strokeStyle:{type:null,required:!1,default:"solid"},enableMassClear:{type:Boolean,required:!1,default:!0},enableEditing:{type:Boolean,required:!1,default:!1},enableClicking:{type:Boolean,required:!1,default:!0},geodesic:{type:Boolean,required:!1,default:!1},clip:{type:Boolean,required:!1,default:!0},visible:{type:Boolean,required:!1,default:!0},onClick:{type:null,required:!1},onDblclick:{type:null,required:!1},onMousedown:{type:null,required:!1},onMouseup:{type:null,required:!1},onMouseout:{type:null,required:!1},onMouseover:{type:null,required:!1},onRemove:{type:null,required:!1},onLineupdate:{type:null,required:!1}},emits:["initd","unload","click","dblclick","mousedown","mouseup","mouseout","mouseover","remove","lineupdate"],setup(l,{emit:e}){const t=l;let n;const{ready:s}=re(m=>{const _=()=>{m.removeOverlay(n)};return(()=>{const{center:A,radius:T,strokeColor:x,strokeOpacity:L,fillColor:D,fillOpacity:E,strokeWeight:V,strokeStyle:H,enableMassClear:q,enableEditing:Q,enableClicking:Z,geodesic:Y,clip:oe,visible:J}=t,fe=new BMapGL.Point(A.lng,A.lat);n=new BMapGL.Circle(fe,T,{strokeColor:x,strokeWeight:V,strokeOpacity:L,strokeStyle:H,enableMassClear:q,enableEditing:Q,enableClicking:Z,geodesic:Y,clip:oe,fillOpacity:E,fillColor:D}),J&&m.addOverlay(n),Me(t,e,n),s(m,n)})(),I(()=>t.center,ae(r),{deep:!0}),I(()=>t.radius,i),I(()=>t.strokeColor,o),I(()=>t.strokeOpacity,c),I(()=>t.fillColor,a),I(()=>t.fillOpacity,u),I(()=>t.strokeWeight,d),I(()=>t.strokeStyle,h),I(()=>t.enableMassClear,p),I(()=>t.enableEditing,f),I(()=>t.visible,A=>{m[A?"addOverlay":"removeOverlay"](n)}),_});ye("getOverlayInstance",()=>n);function i(m){n.setRadius(m)}function r(m){n&&n.setCenter(new BMapGL.Point(m.lng,m.lat))}function o(m){n.setStrokeColor(m)}function a(m){n.setFillColor(m)}function c(m){n.setStrokeOpacity(m)}function u(m){n.setFillOpacity(m)}function d(m){n.setStrokeWeight(m)}function h(m){n.setStrokeStyle(m)}function p(m){m?n.enableMassClear():n.disableMassClear()}function f(m){m?n.enableEditing():n.disableEditing()}return(m,_)=>C(m.$slots,"default")}}));Ao.__file="packages/components/overlay/circle/index.vue";var Co=z(Object.assign({name:"BPrism"},{__name:"index",props:{path:{type:Array,required:!0},altitude:{type:Number,required:!0},isBoundary:{type:Boolean,required:!1},topFillColor:{type:String,required:!1,default:"#fff"},topFillOpacity:{type:Number,required:!1,default:.5},sideFillColor:{type:String,required:!1,default:"#fff"},sideFillOpacity:{type:Number,required:!1,default:.8},autoCenter:{type:Boolean,required:!1,default:!0},enableMassClear:{type:Boolean,required:!1,default:!0},visible:{type:Boolean,required:!1,default:!0},onClick:{type:null,required:!1},onDblclick:{type:null,required:!1},onMousedown:{type:null,required:!1},onMouseup:{type:null,required:!1},onMouseout:{type:null,required:!1},onMouseover:{type:null,required:!1},onRemove:{type:null,required:!1},onLineupdate:{type:null,required:!1}},emits:["initd","unload","click","dblclick","mousedown","mouseup","mouseout","mouseover","remove","lineupdate"],setup(l,{emit:e}){const t=l,n=ot("baseMapSetCenterAndZoom");let s;const{ready:i}=re(f=>{const m=()=>{s&&f.removeOverlay(s)},_=()=>{if(!t.path||!(t.path&&t.path.length))return!1;const{path:M,altitude:A,isBoundary:T,topFillColor:x,topFillOpacity:L,sideFillColor:D,sideFillOpacity:E,enableMassClear:V,visible:H}=t,q=T?M:Fe(M);s=new BMapGL.Prism(q,A,{topFillColor:x,topFillOpacity:L,sideFillColor:D,sideFillOpacity:E,enableMassClear:V}),H&&f.addOverlay(s),Me(t,e,s),i(f,s),r(),I(()=>t.enableMassClear,o),I(()=>t.topFillColor,c),I(()=>t.topFillOpacity,u),I(()=>t.sideFillColor,d),I(()=>t.sideFillOpacity,h),I(()=>t.altitude,p)};return _(),I(()=>t.path,ae(M=>{s?a(M):_()}),{deep:!0}),I(()=>t.visible,M=>{f[M?"addOverlay":"removeOverlay"](s)}),m});ye("getOverlayInstance",()=>s);function r(){t.autoCenter&&_t(()=>{var f;try{const m=(f=s.getBounds())===null||f===void 0?void 0:f.getCenter();n(m)}catch{Ii("BPrism","auto set center error")}})}function o(f){f?s.enableMassClear():s.disableMassClear()}function a(f){const{isBoundary:m}=t;s.setPath(m?f:Fe(f))}function c(f){s&&s.setTopFillColor(f)}function u(f){s&&s.setTopFillOpacity(f)}function d(f){s&&s.setSideFillColor(f)}function h(f){s&&s.setSideFillOpacity(f)}function p(f){s&&s.setAltitude(f)}return(f,m)=>C(f.$slots,"default")}}));Co.__file="packages/components/overlay/prism/index.vue";var Io=z(Object.assign({name:"BGroundOverlay"},{__name:"index",props:{type:{type:String,required:!0},url:{type:[String,Function],required:!0,skipCheck:!0},startPoint:{type:null,required:!0},endPoint:{type:null,required:!0},autoCenter:{type:Boolean,required:!1,default:!1},opacity:{type:Number,required:!1,default:1},visible:{type:Boolean,required:!1,default:!0},onClick:{type:null,required:!1},onDblclick:{type:null,required:!1},onMousemove:{type:null,required:!1},onMouseover:{type:null,required:!1},onMouseout:{type:null,required:!1}},emits:["initd","unload","click","dblclick","mousemove","mouseover","mouseout"],setup(l,{emit:e}){const t=l;let n;const{ready:s}=re(o=>{const a=()=>{n&&o.removeOverlay(n)},c=()=>{a();let{startPoint:u,endPoint:d,opacity:h,type:p,autoCenter:f,visible:m}=t;const _=r();if(!_)return;if(!u||!d)return!1;const M=i(u,d),A={opacity:h,type:p,url:_.value||_};n=new BMapGL.GroundOverlay(M,A),m&&o.addOverlay(n),f&&_t(()=>{try{const T=M.getCenter();o.panTo(T)}catch{Ii("GroundOverlay","auto set center error")}})};return c(),Me(t,e,n),s(o,n),I(()=>t,ae(c),{deep:!0}),I(()=>t.visible,u=>{o[u?"addOverlay":"removeOverlay"](n)}),a});ye("getOverlayInstance",()=>n);function i(o,a){return new BMapGL.Bounds(new BMapGL.Point(o.lng,a.lat),new BMapGL.Point(a.lng,o.lat))}function r(){let o=t.url;return typeof o=="function"&&(o=o(),!o)?!1:o}return(o,a)=>C(o.$slots,"default")}}));Io.__file="packages/components/overlay/ground-overlay/index.vue";var Lo=z(Object.assign({name:"BContextMenu",inheritAttrs:!1},{__name:"index",props:{width:{type:Number,required:!1,default:100},visible:{type:Boolean,required:!1,default:!0},menuItems:{type:Array,required:!1,default:()=>[]},onOpen:{type:null,required:!1},onClose:{type:null,required:!1}},emits:["initd","unload","open","close"],setup(l,{emit:e}){const t=l,n=ot("getOverlayInstance",()=>null);let s;const{ready:i}=re(r=>{const o=n()||r,a=()=>{s&&o.removeContextMenu(s)},c=()=>{const{width:u,menuItems:d,visible:h}=t;s=new BMapGL.ContextMenu;for(const p of d){if(rs(p)&&p==="-"){s.addSeparator();continue}const f=new BMapGL.MenuItem(p.text,function(m,_){p.callback.call(null,{point:m,pixel:_,map:r,BMapGL,target:o})},{width:u,id:String(Math.random())});p.disabled?f.disable():f.enable(),s.addItem(f)}h&&o.addContextMenu(s),Me(t,e,s)};return I(()=>t.visible,u=>{s&&o[u?"addContextMenu":"removeContextMenu"](s)}),I(()=>t.menuItems,ae(()=>{a(),c()}),{deep:!0}),c(),i(r,s),a});return(r,o)=>null}}));Lo.__file="packages/components/contextMenu/index.vue";var zo=z(Object.assign({name:"BDistrictLayer"},{__name:"index",props:{visible:{type:Boolean,required:!1,default:!0},name:{type:String,required:!0},kind:{type:null,required:!1,default:0},fillColor:{type:String,required:!1,default:"#fdfd27"},fillOpacity:{type:Number,required:!1,default:1},strokeColor:{type:String,required:!1,default:"#231cf8"},strokeWeight:{type:Number,required:!1,default:1},strokeOpacity:{type:Number,required:!1,default:1},viewport:{type:Boolean,required:!1,default:!1},onClick:{type:null,required:!1},onDblclick:{type:null,required:!1},onRightclick:{type:null,required:!1},onRightdblclick:{type:null,required:!1},onMousemove:{type:null,required:!1},onMouseover:{type:null,required:!1},onMouseout:{type:null,required:!1}},emits:["initd","unload","mouseover","mouseout","click"],setup(l,{emit:e}){const t=l;let n;const{ready:s}=re(i=>{if(!t.name)return Pe("BDistrictLayer","DistrictLayer props.name is required");const{visible:r,name:o,kind:a,fillColor:c,fillOpacity:u,strokeColor:d,strokeOpacity:h,strokeWeight:p,viewport:f}=t;n=new BMapGL.DistrictLayer({name:`(${o})`,kind:a,fillColor:c,fillOpacity:u,strokeColor:d,strokeOpacity:h,strokeWeight:p,viewport:f}),r&&i.addDistrictLayer(n),Me(t,e,n),I(()=>t.visible,_=>{n&&i[_?"addDistrictLayer":"removeDistrictLayer"](n)});const m=setTimeout(()=>{s(i,n)},400);return()=>{clearTimeout(m),i.removeDistrictLayer(n)}});return(i,r)=>null}}));zo.__file="packages/components/layer/district/index.vue";var Bi=z(Object.assign({name:"BMapMask"},{__name:"index",props:{path:{type:Array,required:!0},showRegion:{type:null,required:!1,default:"inside"},isBuildingMask:{type:Boolean,required:!1,default:!1},isMapMask:{type:Boolean,required:!1,default:!1},isPoiMask:{type:Boolean,required:!1,default:!1},visible:{type:Boolean,required:!1,default:!0},onClick:{type:null,required:!1},onDblclick:{type:null,required:!1},onMousedown:{type:null,required:!1},onMouseup:{type:null,required:!1},onMouseout:{type:null,required:!1},onMouseover:{type:null,required:!1},onRightclick:{type:null,required:!1}},emits:["initd","unload","click","dblclick","mousedown","mouseup","mouseout","mouseover","rightclick"],setup(l,{emit:e}){const t=l;let n;const{ready:s}=re(i=>{const r=()=>{n&&i.removeOverlay(n)};return as(()=>{if(r(),!t.path||!(t.path&&t.path.length))return!1;const{path:a,showRegion:c,isBuildingMask:u,isMapMask:d,isPoiMask:h,visible:p}=t,f=Fe(a);n=new BMapGL.MapMask(f,{showRegion:c,isBuildingMask:u,isMapMask:d,isPoiMask:h}),p&&i.addOverlay(n),Me(t,e,n),s(i,n)}),r});return ye("getOverlayInstance",()=>n),(i,r)=>C(i.$slots,"default")}}));Bi.__file="packages/components/overlay/map-mask/index.vue";var Oi=z(Object.assign({name:"BAutoComplete"},{__name:"index",props:{location:{type:null,required:!1},types:{type:Array,required:!1},onSearchComplete:{type:null,required:!1},onHighlight:{type:null,required:!1},onConfirm:{type:null,required:!1}},emits:["initd","unload","searchComplete","highlight","confirm"],setup(l,{emit:e}){const t=l,n=B();let s;const{ready:i}=re(r=>{n.value||Ii("BAutoComplete","render error");const{location:o,types:a}=t;let c=r;typeof o=="object"&&o.lat&&o.lng&&(c=Ji(o)),s=new BMapGL.Autocomplete({location:c,onSearchComplete:u=>e("searchComplete",u),input:n.value,types:a}),Me(t,e,s),i(r,s),I(()=>t.location,u=>{let d=r;typeof u=="object"&&u.lat&&u.lng&&(d=Ji(u)),s.setLocation(d)}),I(()=>t.types,u=>{u&&s.setTypes(u)})});return(r,o)=>(y(),v("input",{class:"b-auto-complete-input",type:"text",ref_key:"autoCompleteInput",ref:n,placeholder:"请输入搜索关键词"},null,512))}}));Oi.__file="packages/components/autoComplete/index.vue";var fp=[kn,po,fo,mo,bo,Sn,xo,_o,yo,wo,ko,To,Bi,So,Ao,go,Co,zi,Lo,Mo,vo,Io,zo,Oi];const Ni={install:(l,e)=>{const{ak:t,apiUrl:n,plugins:s,pluginsSourceLink:i}=e||{},r=l.config.globalProperties;for(const o of fp){const a=o.name;l.component(a,o)}t&&(r.$baiduMapAk=t),n&&(r.$baiduMapApiUrl=n),s&&(r.$baiduMapPlugins=s),i&&(r.$baiduMapPluginsSourceLink=i)},version:"2.5.0"};Ni.install;Ni.version;const mp=z({__name:"index",setup(l){const{get:e,point:t}=Li();function n(s){const i=s.item.value;e(i.city||i.business,i.province+i.city+i.district+i.street+i.business)}return(s,i)=>(y(),N(g(kn),{center:g(t)},{default:w(()=>[S(g(Oi),{style:{width:"100%"},onConfirm:n}),S(g(Sn),{position:g(t)},null,8,["position"])]),_:1},8,["center"]))}}),gp=Object.freeze(Object.defineProperty({__proto__:null,default:mp},Symbol.toStringTag,{value:"Module"})),yp=z({__name:"index",setup(l){const e=B("北京市"),t=B([{text:"放大一级",callback:function({map:s}){s.zoomIn()}},{text:"缩小一级",callback:function({map:s}){s.zoomOut()}},"-",{text:"去上海",callback:function(){e.value=e.value==="上海市"?"北京市":"上海市",setTimeout(()=>{t.value[3].text="回北京"})}}]),n=B([{text:"覆盖物上下文菜单",callback:function({map:s}){alert("点击了覆盖物上下文菜单")}}]);return(s,i)=>{const r=O("BContextMenu"),o=O("BMarker"),a=O("BMap");return y(),N(a,U(s.$attrs,{center:e.value}),{default:w(()=>[S(r,{menuItems:t.value},null,8,["menuItems"]),S(o,{icon:"simple_red",position:{lat:39.915185,lng:116.403901}},{default:w(()=>[S(r,{menuItems:n.value,width:200},null,8,["menuItems"])]),_:1})]),_:1},16,["center"])}}}),_p=Object.freeze(Object.defineProperty({__proto__:null,default:yp},Symbol.toStringTag,{value:"Module"})),bp={};function Mp(l,e){const t=O("BCityList"),n=O("BMap");return y(),N(n,He(We(l.$attrs)),{default:w(()=>[S(t)]),_:1},16)}const vp=R(bp,[["render",Mp]]),xp=Object.freeze(Object.defineProperty({__proto__:null,default:vp},Symbol.toStringTag,{value:"Module"})),wp=b("div",{style:{display:"flex","align-items":"flex-end"}},[b("img",{width:"40",src:"https://s1.ax1x.com/2022/09/29/xmTpcT.png",alt:""}),ne(" @我是自定义版权控件呀 ")],-1),kp=z({__name:"copyRight",setup(l){const e=B(1),t=B(!0);function n(){t.value=!t.value}return setInterval(()=>{e.value++},1e3),(s,i)=>{const r=O("BCopyright"),o=O("BMap");return y(),v("div",null,[S(o,He(We(s.$attrs)),{default:w(()=>[S(r,{anchor:"BMAP_ANCHOR_TOP_RIGHT",visible:t.value},{default:w(()=>[wp]),_:1},8,["visible"]),S(r,{anchor:"BMAP_ANCHOR_BOTTOM_RIGHT"},{default:w(()=>[b("h3",null,"动态内容1: "+j(e.value),1)]),_:1}),S(r,{anchor:"BMAP_ANCHOR_BOTTOM_RIGHT"},{default:w(()=>[b("h3",null,"动态内容2: "+j(e.value),1)]),_:1})]),_:1},16),b("button",{class:"myButton no-m-b",onClick:n},j(t.value?"隐藏":"显示")+"右上角版权",1)])}}}),Sp=Object.freeze(Object.defineProperty({__proto__:null,default:kp},Symbol.toStringTag,{value:"Module"})),Tp=z({__name:"custom",setup(l){const e=B(10);let t;function n({map:r}){t=r}function s(){e.value=t.getZoom()-1}function i(){e.value=t.getZoom()+1}return(r,o)=>{const a=O("BControl"),c=O("BMap");return y(),N(c,U(r.$attrs,{onInitd:n,zoom:e.value}),{default:w(()=>[S(a,{style:{display:"flex","background-color":"#fff",padding:"10px"},offset:{x:0,y:0}},{default:w(()=>[b("button",{onClick:s},"缩小"),b("button",{onClick:i},"放大")]),_:1})]),_:1},16,["zoom"])}}}),Ap=R(Tp,[["__scopeId","data-v-373892af"]]),Cp=Object.freeze(Object.defineProperty({__proto__:null,default:Ap},Symbol.toStringTag,{value:"Module"})),Ip={};function Lp(l,e){const t=O("BLocation"),n=O("BMap");return y(),N(n,He(We(l.$attrs)),{default:w(()=>[S(t)]),_:1},16)}const zp=R(Ip,[["render",Lp]]),Bp=Object.freeze(Object.defineProperty({__proto__:null,default:zp},Symbol.toStringTag,{value:"Module"})),Op={};function Np(l,e){const t=O("BNavigation3d"),n=O("BMap");return y(),N(n,He(We(l.$attrs)),{default:w(()=>[S(t)]),_:1},16)}const Pp=R(Op,[["render",Np]]),Ep=Object.freeze(Object.defineProperty({__proto__:null,default:Pp},Symbol.toStringTag,{value:"Module"})),Dp={};function Rp(l,e){const t=O("BPanoramaControl"),n=O("BPanoramaCoverageLayer"),s=O("BMap");return y(),N(s,U(l.$attrs,{enableScrollWheelZoom:""}),{default:w(()=>[S(t),S(n)]),_:1},16)}const $p=R(Dp,[["render",Rp]]),jp=Object.freeze(Object.defineProperty({__proto__:null,default:$p},Symbol.toStringTag,{value:"Module"})),Fp={};function Vp(l,e){const t=O("BScale"),n=O("BMap");return y(),N(n,He(We(l.$attrs)),{default:w(()=>[S(t)]),_:1},16)}const qp=R(Fp,[["render",Vp]]),Up=Object.freeze(Object.defineProperty({__proto__:null,default:qp},Symbol.toStringTag,{value:"Module"})),Gp={};function Hp(l,e){const t=O("BZoom"),n=O("BMap");return y(),N(n,He(We(l.$attrs)),{default:w(()=>[S(t)]),_:1},16)}const Wp=R(Gp,[["render",Hp]]),Zp=Object.freeze(Object.defineProperty({__proto__:null,default:Wp},Symbol.toStringTag,{value:"Module"})),Yp=z({__name:"draw",setup(l){let e=B({instance:null,isDrawing:!1,toggle(){let a=e.value;a.isDrawing?a.instance.closeAll():a.instance.open(),a.isDrawing=!a.isDrawing}}),t=B({instance:null,isDrawing:!1,toggle(){let a=t.value;a.isDrawing?a.instance.closeAll():a.instance.open(),a.isDrawing=!a.isDrawing}}),n=B({instance:null,isDrawing:!1,toggle(){let a=n.value;a.isDrawing?a.instance.closeAll():a.instance.open(),a.isDrawing=!a.isDrawing}}),s=B({instance:null,isDrawing:!1,toggle(){let a=s.value;a.isDrawing?a.instance.closeAll():a.instance.open(),a.isDrawing=!a.isDrawing}}),i=B({instance:null,isDrawing:!1,toggle(){let a=i.value;a.isDrawing?a.instance.closeAll():a.instance.open(),a.isDrawing=!a.isDrawing}}),r=B();function o({map:a,BMapGL:c}){vn(async()=>{const{DrawScene:u,MarkerDraw:d,PolylineDraw:h,CircleDraw:p,PolygonDraw:f,RectDraw:m}=await import("./bmap-draw.min.4O0BZXxI.js").then(_=>_.b);return{DrawScene:u,MarkerDraw:d,PolylineDraw:h,CircleDraw:p,PolygonDraw:f,RectDraw:m}},__vite__mapDeps([2,3])).then(({DrawScene:u,MarkerDraw:d,PolylineDraw:h,CircleDraw:p,PolygonDraw:f,RectDraw:m})=>{const _=new u(a);r.value=()=>_.clearData();const M=uo();e.value.instance=new d(_,{isOpen:!1,isSeries:!0,enableDragging:!0,baseOpts:{icon:M.red1}}),n.value.instance=new h(_,{isOpen:!1,enableSnap:!0,matchOverlay:{type:"Marker",icon:new c.Icon("http://maponline0.bdimg.com/sty/map_icons2x/MapRes/shenghui_1.png",new c.Size(10,10),{offset:new c.Size(5,5)})}}),s.value.instance=new f(_,{isOpen:!1,labelOptions:{borderRadius:"2px",background:"#b5d3fb",border:"1px solid #b5d3fb",color:"#333",fontSize:"12px",letterSpacing:"0",padding:"5px"},baseOpts:{fillColor:"#fff",strokeWeight:5,strokeOpacity:1,fillOpacity:.2}}),t.value.instance=new p(_,{isOpen:!1,labelOptions:{borderRadius:"2px",background:"#b5d3fb",border:"1px solid #b5d3fb",color:"#333",fontSize:"12px",letterSpacing:"0",padding:"5px"},baseOpts:{strokeColor:"#6d77f9",fillColor:"#fff",strokeWeight:5,strokeOpacity:1,fillOpacity:.2}}),i.value.instance=new m(_,{isOpen:!1,isSeries:!0,labelOptions:{borderRadius:"2px",background:"#b5d3fb",border:"1px solid #b5d3fb",color:"#333",fontSize:"12px",letterSpacing:"0",padding:"5px"},baseOpts:{fillColor:"#fff",strokeWeight:5,strokeOpacity:1,fillOpacity:.2}})})}return(a,c)=>{const u=O("BMap");return y(),v("div",null,[g(e).isDrawing?(y(),v("button",{key:1,class:"myButton",type:"button",onClick:c[1]||(c[1]=(...d)=>g(e).toggle&&g(e).toggle(...d))},"禁用绘制点")):(y(),v("button",{key:0,class:"myButton",type:"button",onClick:c[0]||(c[0]=(...d)=>g(e).toggle&&g(e).toggle(...d))},"绘制点")),g(n).isDrawing?(y(),v("button",{key:3,class:"myButton",type:"button",onClick:c[3]||(c[3]=(...d)=>g(n).toggle&&g(n).toggle(...d))},"禁用绘制线")):(y(),v("button",{key:2,class:"myButton",type:"button",onClick:c[2]||(c[2]=(...d)=>g(n).toggle&&g(n).toggle(...d))},"绘制线")),g(t).isDrawing?(y(),v("button",{key:5,class:"myButton",type:"button",onClick:c[5]||(c[5]=(...d)=>g(t).toggle&&g(t).toggle(...d))},"禁用绘制圆")):(y(),v("button",{key:4,class:"myButton",type:"button",onClick:c[4]||(c[4]=(...d)=>g(t).toggle&&g(t).toggle(...d))},"绘制圆")),g(s).isDrawing?(y(),v("button",{key:7,class:"myButton",type:"button",onClick:c[7]||(c[7]=(...d)=>g(s).toggle&&g(s).toggle(...d))},"禁用绘制多边形")):(y(),v("button",{key:6,class:"myButton",type:"button",onClick:c[6]||(c[6]=(...d)=>g(s).toggle&&g(s).toggle(...d))},"绘制多边形")),g(i).isDrawing?(y(),v("button",{key:9,class:"myButton",type:"button",onClick:c[9]||(c[9]=(...d)=>g(i).toggle&&g(i).toggle(...d))},"禁用绘制矩形")):(y(),v("button",{key:8,class:"myButton",type:"button",onClick:c[8]||(c[8]=(...d)=>g(i).toggle&&g(i).toggle(...d))},"绘制矩形")),b("button",{class:"myButton",type:"button",onClick:c[10]||(c[10]=(...d)=>g(r)&&g(r)(...d))},"清空"),S(u,U(a.$attrs,{center:{lng:116.385243,lat:39.913063},zoom:16,"enable-scroll-wheel-zoom":"",onInitd:o,mapStyleId:"980161f3645989feac25a0da15da4178"}),null,16)])}}}),Qp=Object.freeze(Object.defineProperty({__proto__:null,default:Yp},Symbol.toStringTag,{value:"Module"})),Xp=z({__name:"meterage",setup(l){let e=B({instance:null,isMeasuring:!0,toggle(){let s=e.value;s.isMeasuring?s.instance.close():s.instance.open(),s.isMeasuring=!s.isMeasuring}}),t=B({instance:null,isMeasuring:!0,toggle(){let s=t.value;s.isMeasuring?s.instance.close():s.instance.open(),s.isMeasuring=!s.isMeasuring}});function n({map:s}){vn(async()=>{const{DrawScene:i,DistanceMeasure:r,AreaMeasure:o}=await import("./bmap-draw.min.4O0BZXxI.js").then(a=>a.b);return{DrawScene:i,DistanceMeasure:r,AreaMeasure:o}},__vite__mapDeps([2,3])).then(({DrawScene:i,DistanceMeasure:r,AreaMeasure:o})=>{const a=new i(s);e.value.instance=new r(a),e.value.toggle(),e.value.instance.addEventListener("measure-length-end",c=>{console.log("measure-end",c)}),t.value.instance=new o(a),t.value.toggle(),t.value.instance.addEventListener("measure-area-end",c=>{console.log("measure-end",c)})})}return(s,i)=>{const r=O("BMap");return y(),v("div",null,[g(e).isMeasuring?(y(),v("button",{key:1,class:"myButton",type:"button",onClick:i[1]||(i[1]=(...o)=>g(e).toggle&&g(e).toggle(...o))},"取消测量距离")):(y(),v("button",{key:0,class:"myButton",type:"button",onClick:i[0]||(i[0]=(...o)=>g(e).toggle&&g(e).toggle(...o))},"测量距离")),g(t).isMeasuring?(y(),v("button",{key:3,class:"myButton",type:"button",onClick:i[3]||(i[3]=(...o)=>g(t).toggle&&g(t).toggle(...o))},"取消测量面积")):(y(),v("button",{key:2,class:"myButton",type:"button",onClick:i[2]||(i[2]=(...o)=>g(t).toggle&&g(t).toggle(...o))},"测量面积")),S(r,U(s.$attrs,{center:{lng:116.385243,lat:39.913063},zoom:13.5,"enable-scroll-wheel-zoom":"",onInitd:n}),null,16)])}}}),Kp=Object.freeze(Object.defineProperty({__proto__:null,default:Xp},Symbol.toStringTag,{value:"Module"}));/** + * @license + * Copyright 2010-2022 Three.js Authors + * SPDX-License-Identifier: MIT + */const Bo="147",di=0,Jp=1,Oo=2,sr=1,ef=100,tf=204,nf=205,sf=3,rf=0,No=300,fn=1e3,hn=1001,pi=1002,fi=1003,of=1004,af=1005,Pi=1006,lf=1007,Ei=1008,cf=1009,uf=1015,Po=1023,mn=2300,Zt=2301,As=2302,ir=2400,rr=2401,or=2402,hf=2500,df=1,Eo=2,pf=3e3,gn=3001,ff=0,st="srgb",mi="srgb-linear",Cs=7680,mf=519,gi=35044;class ps{addEventListener(e,t){this._listeners===void 0&&(this._listeners={});const n=this._listeners;n[e]===void 0&&(n[e]=[]),n[e].indexOf(t)===-1&&n[e].push(t)}hasEventListener(e,t){if(this._listeners===void 0)return!1;const n=this._listeners;return n[e]!==void 0&&n[e].indexOf(t)!==-1}removeEventListener(e,t){if(this._listeners===void 0)return;const s=this._listeners[e];if(s!==void 0){const i=s.indexOf(t);i!==-1&&s.splice(i,1)}}dispatchEvent(e){if(this._listeners===void 0)return;const n=this._listeners[e.type];if(n!==void 0){e.target=this;const s=n.slice(0);for(let i=0,r=s.length;i>8&255]+be[l>>16&255]+be[l>>24&255]+"-"+be[e&255]+be[e>>8&255]+"-"+be[e>>16&15|64]+be[e>>24&255]+"-"+be[t&63|128]+be[t>>8&255]+"-"+be[t>>16&255]+be[t>>24&255]+be[n&255]+be[n>>8&255]+be[n>>16&255]+be[n>>24&255]).toLowerCase()}function we(l,e,t){return Math.max(e,Math.min(t,l))}function Di(l,e){return(l%e+e)%e}function gf(l,e,t,n,s){return n+(l-e)*(s-n)/(t-e)}function yf(l,e,t){return l!==e?(t-l)/(e-l):0}function pn(l,e,t){return(1-t)*l+t*e}function _f(l,e,t,n){return pn(l,e,1-Math.exp(-t*n))}function bf(l,e=1){return e-Math.abs(Di(l,e*2)-e)}function Mf(l,e,t){return l<=e?0:l>=t?1:(l=(l-e)/(t-e),l*l*(3-2*l))}function vf(l,e,t){return l<=e?0:l>=t?1:(l=(l-e)/(t-e),l*l*l*(l*(l*6-15)+10))}function xf(l,e){return l+Math.floor(Math.random()*(e-l+1))}function wf(l,e){return l+Math.random()*(e-l)}function kf(l){return l*(.5-Math.random())}function Sf(l){l!==void 0&&(ar=l);let e=ar+=1831565813;return e=Math.imul(e^e>>>15,e|1),e^=e+Math.imul(e^e>>>7,e|61),((e^e>>>14)>>>0)/4294967296}function Tf(l){return l*dn}function Af(l){return l*yn}function Cf(l){return(l&l-1)===0&&l!==0}function Do(l){return Math.pow(2,Math.ceil(Math.log(l)/Math.LN2))}function If(l){return Math.pow(2,Math.floor(Math.log(l)/Math.LN2))}function Lf(l,e,t,n,s){const i=Math.cos,r=Math.sin,o=i(t/2),a=r(t/2),c=i((e+n)/2),u=r((e+n)/2),d=i((e-n)/2),h=r((e-n)/2),p=i((n-e)/2),f=r((n-e)/2);switch(s){case"XYX":l.set(o*u,a*d,a*h,o*c);break;case"YZY":l.set(a*h,o*u,a*d,o*c);break;case"ZXZ":l.set(a*d,a*h,o*u,o*c);break;case"XZX":l.set(o*u,a*f,a*p,o*c);break;case"YXY":l.set(a*p,o*u,a*f,o*c);break;case"ZYZ":l.set(a*f,a*p,o*u,o*c);break;default:console.warn("THREE.MathUtils: .setQuaternionFromProperEuler() encountered an unknown order: "+s)}}function rt(l,e){switch(e.constructor){case Float32Array:return l;case Uint16Array:return l/65535;case Uint8Array:return l/255;case Int16Array:return Math.max(l/32767,-1);case Int8Array:return Math.max(l/127,-1);default:throw new Error("Invalid component type.")}}function se(l,e){switch(e.constructor){case Float32Array:return l;case Uint16Array:return Math.round(l*65535);case Uint8Array:return Math.round(l*255);case Int16Array:return Math.round(l*32767);case Int8Array:return Math.round(l*127);default:throw new Error("Invalid component type.")}}var zf=Object.freeze({__proto__:null,DEG2RAD:dn,RAD2DEG:yn,generateUUID:qe,clamp:we,euclideanModulo:Di,mapLinear:gf,inverseLerp:yf,lerp:pn,damp:_f,pingpong:bf,smoothstep:Mf,smootherstep:vf,randInt:xf,randFloat:wf,randFloatSpread:kf,seededRandom:Sf,degToRad:Tf,radToDeg:Af,isPowerOfTwo:Cf,ceilPowerOfTwo:Do,floorPowerOfTwo:If,setQuaternionFromProperEuler:Lf,normalize:se,denormalize:rt});class le{constructor(e=0,t=0){le.prototype.isVector2=!0,this.x=e,this.y=t}get width(){return this.x}set width(e){this.x=e}get height(){return this.y}set height(e){this.y=e}set(e,t){return this.x=e,this.y=t,this}setScalar(e){return this.x=e,this.y=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;default:throw new Error("index is out of range: "+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;default:throw new Error("index is out of range: "+e)}}clone(){return new this.constructor(this.x,this.y)}copy(e){return this.x=e.x,this.y=e.y,this}add(e){return this.x+=e.x,this.y+=e.y,this}addScalar(e){return this.x+=e,this.y+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this}subScalar(e){return this.x-=e,this.y-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this}multiply(e){return this.x*=e.x,this.y*=e.y,this}multiplyScalar(e){return this.x*=e,this.y*=e,this}divide(e){return this.x/=e.x,this.y/=e.y,this}divideScalar(e){return this.multiplyScalar(1/e)}applyMatrix3(e){const t=this.x,n=this.y,s=e.elements;return this.x=s[0]*t+s[3]*n+s[6],this.y=s[1]*t+s[4]*n+s[7],this}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this}clamp(e,t){return this.x=Math.max(e.x,Math.min(t.x,this.x)),this.y=Math.max(e.y,Math.min(t.y,this.y)),this}clampScalar(e,t){return this.x=Math.max(e,Math.min(t,this.x)),this.y=Math.max(e,Math.min(t,this.y)),this}clampLength(e,t){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(e,Math.min(t,n)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}roundToZero(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this}negate(){return this.x=-this.x,this.y=-this.y,this}dot(e){return this.x*e.x+this.y*e.y}cross(e){return this.x*e.y-this.y*e.x}lengthSq(){return this.x*this.x+this.y*this.y}length(){return Math.sqrt(this.x*this.x+this.y*this.y)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)}normalize(){return this.divideScalar(this.length()||1)}angle(){return Math.atan2(-this.y,-this.x)+Math.PI}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){const t=this.x-e.x,n=this.y-e.y;return t*t+n*n}manhattanDistanceTo(e){return Math.abs(this.x-e.x)+Math.abs(this.y-e.y)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this}lerpVectors(e,t,n){return this.x=e.x+(t.x-e.x)*n,this.y=e.y+(t.y-e.y)*n,this}equals(e){return e.x===this.x&&e.y===this.y}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e}fromBufferAttribute(e,t){return this.x=e.getX(t),this.y=e.getY(t),this}rotateAround(e,t){const n=Math.cos(t),s=Math.sin(t),i=this.x-e.x,r=this.y-e.y;return this.x=i*n-r*s+e.x,this.y=i*s+r*n+e.y,this}random(){return this.x=Math.random(),this.y=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y}}class It{constructor(){It.prototype.isMatrix3=!0,this.elements=[1,0,0,0,1,0,0,0,1]}set(e,t,n,s,i,r,o,a,c){const u=this.elements;return u[0]=e,u[1]=s,u[2]=o,u[3]=t,u[4]=i,u[5]=a,u[6]=n,u[7]=r,u[8]=c,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(e){const t=this.elements,n=e.elements;return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[4]=n[4],t[5]=n[5],t[6]=n[6],t[7]=n[7],t[8]=n[8],this}extractBasis(e,t,n){return e.setFromMatrix3Column(this,0),t.setFromMatrix3Column(this,1),n.setFromMatrix3Column(this,2),this}setFromMatrix4(e){const t=e.elements;return this.set(t[0],t[4],t[8],t[1],t[5],t[9],t[2],t[6],t[10]),this}multiply(e){return this.multiplyMatrices(this,e)}premultiply(e){return this.multiplyMatrices(e,this)}multiplyMatrices(e,t){const n=e.elements,s=t.elements,i=this.elements,r=n[0],o=n[3],a=n[6],c=n[1],u=n[4],d=n[7],h=n[2],p=n[5],f=n[8],m=s[0],_=s[3],M=s[6],A=s[1],T=s[4],x=s[7],L=s[2],D=s[5],E=s[8];return i[0]=r*m+o*A+a*L,i[3]=r*_+o*T+a*D,i[6]=r*M+o*x+a*E,i[1]=c*m+u*A+d*L,i[4]=c*_+u*T+d*D,i[7]=c*M+u*x+d*E,i[2]=h*m+p*A+f*L,i[5]=h*_+p*T+f*D,i[8]=h*M+p*x+f*E,this}multiplyScalar(e){const t=this.elements;return t[0]*=e,t[3]*=e,t[6]*=e,t[1]*=e,t[4]*=e,t[7]*=e,t[2]*=e,t[5]*=e,t[8]*=e,this}determinant(){const e=this.elements,t=e[0],n=e[1],s=e[2],i=e[3],r=e[4],o=e[5],a=e[6],c=e[7],u=e[8];return t*r*u-t*o*c-n*i*u+n*o*a+s*i*c-s*r*a}invert(){const e=this.elements,t=e[0],n=e[1],s=e[2],i=e[3],r=e[4],o=e[5],a=e[6],c=e[7],u=e[8],d=u*r-o*c,h=o*a-u*i,p=c*i-r*a,f=t*d+n*h+s*p;if(f===0)return this.set(0,0,0,0,0,0,0,0,0);const m=1/f;return e[0]=d*m,e[1]=(s*c-u*n)*m,e[2]=(o*n-s*r)*m,e[3]=h*m,e[4]=(u*t-s*a)*m,e[5]=(s*i-o*t)*m,e[6]=p*m,e[7]=(n*a-c*t)*m,e[8]=(r*t-n*i)*m,this}transpose(){let e;const t=this.elements;return e=t[1],t[1]=t[3],t[3]=e,e=t[2],t[2]=t[6],t[6]=e,e=t[5],t[5]=t[7],t[7]=e,this}getNormalMatrix(e){return this.setFromMatrix4(e).invert().transpose()}transposeIntoArray(e){const t=this.elements;return e[0]=t[0],e[1]=t[3],e[2]=t[6],e[3]=t[1],e[4]=t[4],e[5]=t[7],e[6]=t[2],e[7]=t[5],e[8]=t[8],this}setUvTransform(e,t,n,s,i,r,o){const a=Math.cos(i),c=Math.sin(i);return this.set(n*a,n*c,-n*(a*r+c*o)+r+e,-s*c,s*a,-s*(-c*r+a*o)+o+t,0,0,1),this}scale(e,t){return this.premultiply(Is.makeScale(e,t)),this}rotate(e){return this.premultiply(Is.makeRotation(-e)),this}translate(e,t){return this.premultiply(Is.makeTranslation(e,t)),this}makeTranslation(e,t){return this.set(1,0,e,0,1,t,0,0,1),this}makeRotation(e){const t=Math.cos(e),n=Math.sin(e);return this.set(t,-n,0,n,t,0,0,0,1),this}makeScale(e,t){return this.set(e,0,0,0,t,0,0,0,1),this}equals(e){const t=this.elements,n=e.elements;for(let s=0;s<9;s++)if(t[s]!==n[s])return!1;return!0}fromArray(e,t=0){for(let n=0;n<9;n++)this.elements[n]=e[n+t];return this}toArray(e=[],t=0){const n=this.elements;return e[t]=n[0],e[t+1]=n[1],e[t+2]=n[2],e[t+3]=n[3],e[t+4]=n[4],e[t+5]=n[5],e[t+6]=n[6],e[t+7]=n[7],e[t+8]=n[8],e}clone(){return new this.constructor().fromArray(this.elements)}}const Is=new It;function Bf(l){for(let e=l.length-1;e>=0;--e)if(l[e]>=65535)return!0;return!1}function yi(l){return document.createElementNS("http://www.w3.org/1999/xhtml",l)}function kt(l){return l<.04045?l*.0773993808:Math.pow(l*.9478672986+.0521327014,2.4)}function ns(l){return l<.0031308?l*12.92:1.055*Math.pow(l,.41666)-.055}const Ls={[st]:{[mi]:kt},[mi]:{[st]:ns}},ve={legacyMode:!0,get workingColorSpace(){return mi},set workingColorSpace(l){console.warn("THREE.ColorManagement: .workingColorSpace is readonly.")},convert:function(l,e,t){if(this.legacyMode||e===t||!e||!t)return l;if(Ls[e]&&Ls[e][t]!==void 0){const n=Ls[e][t];return l.r=n(l.r),l.g=n(l.g),l.b=n(l.b),l}throw new Error("Unsupported color space conversion.")},fromWorkingColorSpace:function(l,e){return this.convert(l,this.workingColorSpace,e)},toWorkingColorSpace:function(l,e){return this.convert(l,e,this.workingColorSpace)}},Ro={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074},me={r:0,g:0,b:0},De={h:0,s:0,l:0},zn={h:0,s:0,l:0};function zs(l,e,t){return t<0&&(t+=1),t>1&&(t-=1),t<1/6?l+(e-l)*6*t:t<1/2?e:t<2/3?l+(e-l)*6*(2/3-t):l}function Bn(l,e){return e.r=l.r,e.g=l.g,e.b=l.b,e}class _e{constructor(e,t,n){return this.isColor=!0,this.r=1,this.g=1,this.b=1,t===void 0&&n===void 0?this.set(e):this.setRGB(e,t,n)}set(e){return e&&e.isColor?this.copy(e):typeof e=="number"?this.setHex(e):typeof e=="string"&&this.setStyle(e),this}setScalar(e){return this.r=e,this.g=e,this.b=e,this}setHex(e,t=st){return e=Math.floor(e),this.r=(e>>16&255)/255,this.g=(e>>8&255)/255,this.b=(e&255)/255,ve.toWorkingColorSpace(this,t),this}setRGB(e,t,n,s=ve.workingColorSpace){return this.r=e,this.g=t,this.b=n,ve.toWorkingColorSpace(this,s),this}setHSL(e,t,n,s=ve.workingColorSpace){if(e=Di(e,1),t=we(t,0,1),n=we(n,0,1),t===0)this.r=this.g=this.b=n;else{const i=n<=.5?n*(1+t):n+t-n*t,r=2*n-i;this.r=zs(r,i,e+1/3),this.g=zs(r,i,e),this.b=zs(r,i,e-1/3)}return ve.toWorkingColorSpace(this,s),this}setStyle(e,t=st){function n(i){i!==void 0&&parseFloat(i)<1&&console.warn("THREE.Color: Alpha component of "+e+" will be ignored.")}let s;if(s=/^((?:rgb|hsl)a?)\(([^\)]*)\)/.exec(e)){let i;const r=s[1],o=s[2];switch(r){case"rgb":case"rgba":if(i=/^\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(o))return this.r=Math.min(255,parseInt(i[1],10))/255,this.g=Math.min(255,parseInt(i[2],10))/255,this.b=Math.min(255,parseInt(i[3],10))/255,ve.toWorkingColorSpace(this,t),n(i[4]),this;if(i=/^\s*(\d+)\%\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(o))return this.r=Math.min(100,parseInt(i[1],10))/100,this.g=Math.min(100,parseInt(i[2],10))/100,this.b=Math.min(100,parseInt(i[3],10))/100,ve.toWorkingColorSpace(this,t),n(i[4]),this;break;case"hsl":case"hsla":if(i=/^\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\%\s*,\s*(\d*\.?\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(o)){const a=parseFloat(i[1])/360,c=parseFloat(i[2])/100,u=parseFloat(i[3])/100;return n(i[4]),this.setHSL(a,c,u,t)}break}}else if(s=/^\#([A-Fa-f\d]+)$/.exec(e)){const i=s[1],r=i.length;if(r===3)return this.r=parseInt(i.charAt(0)+i.charAt(0),16)/255,this.g=parseInt(i.charAt(1)+i.charAt(1),16)/255,this.b=parseInt(i.charAt(2)+i.charAt(2),16)/255,ve.toWorkingColorSpace(this,t),this;if(r===6)return this.r=parseInt(i.charAt(0)+i.charAt(1),16)/255,this.g=parseInt(i.charAt(2)+i.charAt(3),16)/255,this.b=parseInt(i.charAt(4)+i.charAt(5),16)/255,ve.toWorkingColorSpace(this,t),this}return e&&e.length>0?this.setColorName(e,t):this}setColorName(e,t=st){const n=Ro[e.toLowerCase()];return n!==void 0?this.setHex(n,t):console.warn("THREE.Color: Unknown color "+e),this}clone(){return new this.constructor(this.r,this.g,this.b)}copy(e){return this.r=e.r,this.g=e.g,this.b=e.b,this}copySRGBToLinear(e){return this.r=kt(e.r),this.g=kt(e.g),this.b=kt(e.b),this}copyLinearToSRGB(e){return this.r=ns(e.r),this.g=ns(e.g),this.b=ns(e.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(e=st){return ve.fromWorkingColorSpace(Bn(this,me),e),we(me.r*255,0,255)<<16^we(me.g*255,0,255)<<8^we(me.b*255,0,255)<<0}getHexString(e=st){return("000000"+this.getHex(e).toString(16)).slice(-6)}getHSL(e,t=ve.workingColorSpace){ve.fromWorkingColorSpace(Bn(this,me),t);const n=me.r,s=me.g,i=me.b,r=Math.max(n,s,i),o=Math.min(n,s,i);let a,c;const u=(o+r)/2;if(o===r)a=0,c=0;else{const d=r-o;switch(c=u<=.5?d/(r+o):d/(2-r-o),r){case n:a=(s-i)/d+(s"u")return e.src;let t;if(e instanceof HTMLCanvasElement)t=e;else{Ot===void 0&&(Ot=yi("canvas")),Ot.width=e.width,Ot.height=e.height;const n=Ot.getContext("2d");e instanceof ImageData?n.putImageData(e,0,0):n.drawImage(e,0,0,e.width,e.height),t=Ot}return t.width>2048||t.height>2048?(console.warn("THREE.ImageUtils.getDataURL: Image converted to jpg for performance reasons",e),t.toDataURL("image/jpeg",.6)):t.toDataURL("image/png")}static sRGBToLinear(e){if(typeof HTMLImageElement<"u"&&e instanceof HTMLImageElement||typeof HTMLCanvasElement<"u"&&e instanceof HTMLCanvasElement||typeof ImageBitmap<"u"&&e instanceof ImageBitmap){const t=yi("canvas");t.width=e.width,t.height=e.height;const n=t.getContext("2d");n.drawImage(e,0,0,e.width,e.height);const s=n.getImageData(0,0,e.width,e.height),i=s.data;for(let r=0;r1)switch(this.wrapS){case fn:e.x=e.x-Math.floor(e.x);break;case hn:e.x=e.x<0?0:1;break;case pi:Math.abs(Math.floor(e.x)%2)===1?e.x=Math.ceil(e.x)-e.x:e.x=e.x-Math.floor(e.x);break}if(e.y<0||e.y>1)switch(this.wrapT){case fn:e.y=e.y-Math.floor(e.y);break;case hn:e.y=e.y<0?0:1;break;case pi:Math.abs(Math.floor(e.y)%2)===1?e.y=Math.ceil(e.y)-e.y:e.y=e.y-Math.floor(e.y);break}return this.flipY&&(e.y=1-e.y),e}set needsUpdate(e){e===!0&&(this.version++,this.source.needsUpdate=!0)}}Ue.DEFAULT_IMAGE=null;Ue.DEFAULT_MAPPING=No;Ue.DEFAULT_ANISOTROPY=1;class Oe{constructor(e=0,t=0,n=0,s=1){Oe.prototype.isVector4=!0,this.x=e,this.y=t,this.z=n,this.w=s}get width(){return this.z}set width(e){this.z=e}get height(){return this.w}set height(e){this.w=e}set(e,t,n,s){return this.x=e,this.y=t,this.z=n,this.w=s,this}setScalar(e){return this.x=e,this.y=e,this.z=e,this.w=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setZ(e){return this.z=e,this}setW(e){return this.w=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;case 2:this.z=t;break;case 3:this.w=t;break;default:throw new Error("index is out of range: "+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw new Error("index is out of range: "+e)}}clone(){return new this.constructor(this.x,this.y,this.z,this.w)}copy(e){return this.x=e.x,this.y=e.y,this.z=e.z,this.w=e.w!==void 0?e.w:1,this}add(e){return this.x+=e.x,this.y+=e.y,this.z+=e.z,this.w+=e.w,this}addScalar(e){return this.x+=e,this.y+=e,this.z+=e,this.w+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this.z=e.z+t.z,this.w=e.w+t.w,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this.z+=e.z*t,this.w+=e.w*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this.z-=e.z,this.w-=e.w,this}subScalar(e){return this.x-=e,this.y-=e,this.z-=e,this.w-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this.z=e.z-t.z,this.w=e.w-t.w,this}multiply(e){return this.x*=e.x,this.y*=e.y,this.z*=e.z,this.w*=e.w,this}multiplyScalar(e){return this.x*=e,this.y*=e,this.z*=e,this.w*=e,this}applyMatrix4(e){const t=this.x,n=this.y,s=this.z,i=this.w,r=e.elements;return this.x=r[0]*t+r[4]*n+r[8]*s+r[12]*i,this.y=r[1]*t+r[5]*n+r[9]*s+r[13]*i,this.z=r[2]*t+r[6]*n+r[10]*s+r[14]*i,this.w=r[3]*t+r[7]*n+r[11]*s+r[15]*i,this}divideScalar(e){return this.multiplyScalar(1/e)}setAxisAngleFromQuaternion(e){this.w=2*Math.acos(e.w);const t=Math.sqrt(1-e.w*e.w);return t<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=e.x/t,this.y=e.y/t,this.z=e.z/t),this}setAxisAngleFromRotationMatrix(e){let t,n,s,i;const a=e.elements,c=a[0],u=a[4],d=a[8],h=a[1],p=a[5],f=a[9],m=a[2],_=a[6],M=a[10];if(Math.abs(u-h)<.01&&Math.abs(d-m)<.01&&Math.abs(f-_)<.01){if(Math.abs(u+h)<.1&&Math.abs(d+m)<.1&&Math.abs(f+_)<.1&&Math.abs(c+p+M-3)<.1)return this.set(1,0,0,0),this;t=Math.PI;const T=(c+1)/2,x=(p+1)/2,L=(M+1)/2,D=(u+h)/4,E=(d+m)/4,V=(f+_)/4;return T>x&&T>L?T<.01?(n=0,s=.707106781,i=.707106781):(n=Math.sqrt(T),s=D/n,i=E/n):x>L?x<.01?(n=.707106781,s=0,i=.707106781):(s=Math.sqrt(x),n=D/s,i=V/s):L<.01?(n=.707106781,s=.707106781,i=0):(i=Math.sqrt(L),n=E/i,s=V/i),this.set(n,s,i,t),this}let A=Math.sqrt((_-f)*(_-f)+(d-m)*(d-m)+(h-u)*(h-u));return Math.abs(A)<.001&&(A=1),this.x=(_-f)/A,this.y=(d-m)/A,this.z=(h-u)/A,this.w=Math.acos((c+p+M-1)/2),this}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this.z=Math.min(this.z,e.z),this.w=Math.min(this.w,e.w),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this.z=Math.max(this.z,e.z),this.w=Math.max(this.w,e.w),this}clamp(e,t){return this.x=Math.max(e.x,Math.min(t.x,this.x)),this.y=Math.max(e.y,Math.min(t.y,this.y)),this.z=Math.max(e.z,Math.min(t.z,this.z)),this.w=Math.max(e.w,Math.min(t.w,this.w)),this}clampScalar(e,t){return this.x=Math.max(e,Math.min(t,this.x)),this.y=Math.max(e,Math.min(t,this.y)),this.z=Math.max(e,Math.min(t,this.z)),this.w=Math.max(e,Math.min(t,this.w)),this}clampLength(e,t){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(e,Math.min(t,n)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this.w=Math.floor(this.w),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this.w=Math.ceil(this.w),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this.w=Math.round(this.w),this}roundToZero(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this.z=this.z<0?Math.ceil(this.z):Math.floor(this.z),this.w=this.w<0?Math.ceil(this.w):Math.floor(this.w),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,this}dot(e){return this.x*e.x+this.y*e.y+this.z*e.z+this.w*e.w}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)+Math.abs(this.w)}normalize(){return this.divideScalar(this.length()||1)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this.z+=(e.z-this.z)*t,this.w+=(e.w-this.w)*t,this}lerpVectors(e,t,n){return this.x=e.x+(t.x-e.x)*n,this.y=e.y+(t.y-e.y)*n,this.z=e.z+(t.z-e.z)*n,this.w=e.w+(t.w-e.w)*n,this}equals(e){return e.x===this.x&&e.y===this.y&&e.z===this.z&&e.w===this.w}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this.z=e[t+2],this.w=e[t+3],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e[t+2]=this.z,e[t+3]=this.w,e}fromBufferAttribute(e,t){return this.x=e.getX(t),this.y=e.getY(t),this.z=e.getZ(t),this.w=e.getW(t),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this.w=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z,yield this.w}}class Mt{constructor(e=0,t=0,n=0,s=1){this.isQuaternion=!0,this._x=e,this._y=t,this._z=n,this._w=s}static slerpFlat(e,t,n,s,i,r,o){let a=n[s+0],c=n[s+1],u=n[s+2],d=n[s+3];const h=i[r+0],p=i[r+1],f=i[r+2],m=i[r+3];if(o===0){e[t+0]=a,e[t+1]=c,e[t+2]=u,e[t+3]=d;return}if(o===1){e[t+0]=h,e[t+1]=p,e[t+2]=f,e[t+3]=m;return}if(d!==m||a!==h||c!==p||u!==f){let _=1-o;const M=a*h+c*p+u*f+d*m,A=M>=0?1:-1,T=1-M*M;if(T>Number.EPSILON){const L=Math.sqrt(T),D=Math.atan2(L,M*A);_=Math.sin(_*D)/L,o=Math.sin(o*D)/L}const x=o*A;if(a=a*_+h*x,c=c*_+p*x,u=u*_+f*x,d=d*_+m*x,_===1-o){const L=1/Math.sqrt(a*a+c*c+u*u+d*d);a*=L,c*=L,u*=L,d*=L}}e[t]=a,e[t+1]=c,e[t+2]=u,e[t+3]=d}static multiplyQuaternionsFlat(e,t,n,s,i,r){const o=n[s],a=n[s+1],c=n[s+2],u=n[s+3],d=i[r],h=i[r+1],p=i[r+2],f=i[r+3];return e[t]=o*f+u*d+a*p-c*h,e[t+1]=a*f+u*h+c*d-o*p,e[t+2]=c*f+u*p+o*h-a*d,e[t+3]=u*f-o*d-a*h-c*p,e}get x(){return this._x}set x(e){this._x=e,this._onChangeCallback()}get y(){return this._y}set y(e){this._y=e,this._onChangeCallback()}get z(){return this._z}set z(e){this._z=e,this._onChangeCallback()}get w(){return this._w}set w(e){this._w=e,this._onChangeCallback()}set(e,t,n,s){return this._x=e,this._y=t,this._z=n,this._w=s,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._w)}copy(e){return this._x=e.x,this._y=e.y,this._z=e.z,this._w=e.w,this._onChangeCallback(),this}setFromEuler(e,t){const n=e._x,s=e._y,i=e._z,r=e._order,o=Math.cos,a=Math.sin,c=o(n/2),u=o(s/2),d=o(i/2),h=a(n/2),p=a(s/2),f=a(i/2);switch(r){case"XYZ":this._x=h*u*d+c*p*f,this._y=c*p*d-h*u*f,this._z=c*u*f+h*p*d,this._w=c*u*d-h*p*f;break;case"YXZ":this._x=h*u*d+c*p*f,this._y=c*p*d-h*u*f,this._z=c*u*f-h*p*d,this._w=c*u*d+h*p*f;break;case"ZXY":this._x=h*u*d-c*p*f,this._y=c*p*d+h*u*f,this._z=c*u*f+h*p*d,this._w=c*u*d-h*p*f;break;case"ZYX":this._x=h*u*d-c*p*f,this._y=c*p*d+h*u*f,this._z=c*u*f-h*p*d,this._w=c*u*d+h*p*f;break;case"YZX":this._x=h*u*d+c*p*f,this._y=c*p*d+h*u*f,this._z=c*u*f-h*p*d,this._w=c*u*d-h*p*f;break;case"XZY":this._x=h*u*d-c*p*f,this._y=c*p*d-h*u*f,this._z=c*u*f+h*p*d,this._w=c*u*d+h*p*f;break;default:console.warn("THREE.Quaternion: .setFromEuler() encountered an unknown order: "+r)}return t!==!1&&this._onChangeCallback(),this}setFromAxisAngle(e,t){const n=t/2,s=Math.sin(n);return this._x=e.x*s,this._y=e.y*s,this._z=e.z*s,this._w=Math.cos(n),this._onChangeCallback(),this}setFromRotationMatrix(e){const t=e.elements,n=t[0],s=t[4],i=t[8],r=t[1],o=t[5],a=t[9],c=t[2],u=t[6],d=t[10],h=n+o+d;if(h>0){const p=.5/Math.sqrt(h+1);this._w=.25/p,this._x=(u-a)*p,this._y=(i-c)*p,this._z=(r-s)*p}else if(n>o&&n>d){const p=2*Math.sqrt(1+n-o-d);this._w=(u-a)/p,this._x=.25*p,this._y=(s+r)/p,this._z=(i+c)/p}else if(o>d){const p=2*Math.sqrt(1+o-n-d);this._w=(i-c)/p,this._x=(s+r)/p,this._y=.25*p,this._z=(a+u)/p}else{const p=2*Math.sqrt(1+d-n-o);this._w=(r-s)/p,this._x=(i+c)/p,this._y=(a+u)/p,this._z=.25*p}return this._onChangeCallback(),this}setFromUnitVectors(e,t){let n=e.dot(t)+1;return nMath.abs(e.z)?(this._x=-e.y,this._y=e.x,this._z=0,this._w=n):(this._x=0,this._y=-e.z,this._z=e.y,this._w=n)):(this._x=e.y*t.z-e.z*t.y,this._y=e.z*t.x-e.x*t.z,this._z=e.x*t.y-e.y*t.x,this._w=n),this.normalize()}angleTo(e){return 2*Math.acos(Math.abs(we(this.dot(e),-1,1)))}rotateTowards(e,t){const n=this.angleTo(e);if(n===0)return this;const s=Math.min(1,t/n);return this.slerp(e,s),this}identity(){return this.set(0,0,0,1)}invert(){return this.conjugate()}conjugate(){return this._x*=-1,this._y*=-1,this._z*=-1,this._onChangeCallback(),this}dot(e){return this._x*e._x+this._y*e._y+this._z*e._z+this._w*e._w}lengthSq(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w}length(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)}normalize(){let e=this.length();return e===0?(this._x=0,this._y=0,this._z=0,this._w=1):(e=1/e,this._x=this._x*e,this._y=this._y*e,this._z=this._z*e,this._w=this._w*e),this._onChangeCallback(),this}multiply(e){return this.multiplyQuaternions(this,e)}premultiply(e){return this.multiplyQuaternions(e,this)}multiplyQuaternions(e,t){const n=e._x,s=e._y,i=e._z,r=e._w,o=t._x,a=t._y,c=t._z,u=t._w;return this._x=n*u+r*o+s*c-i*a,this._y=s*u+r*a+i*o-n*c,this._z=i*u+r*c+n*a-s*o,this._w=r*u-n*o-s*a-i*c,this._onChangeCallback(),this}slerp(e,t){if(t===0)return this;if(t===1)return this.copy(e);const n=this._x,s=this._y,i=this._z,r=this._w;let o=r*e._w+n*e._x+s*e._y+i*e._z;if(o<0?(this._w=-e._w,this._x=-e._x,this._y=-e._y,this._z=-e._z,o=-o):this.copy(e),o>=1)return this._w=r,this._x=n,this._y=s,this._z=i,this;const a=1-o*o;if(a<=Number.EPSILON){const p=1-t;return this._w=p*r+t*this._w,this._x=p*n+t*this._x,this._y=p*s+t*this._y,this._z=p*i+t*this._z,this.normalize(),this._onChangeCallback(),this}const c=Math.sqrt(a),u=Math.atan2(c,o),d=Math.sin((1-t)*u)/c,h=Math.sin(t*u)/c;return this._w=r*d+this._w*h,this._x=n*d+this._x*h,this._y=s*d+this._y*h,this._z=i*d+this._z*h,this._onChangeCallback(),this}slerpQuaternions(e,t,n){return this.copy(e).slerp(t,n)}random(){const e=Math.random(),t=Math.sqrt(1-e),n=Math.sqrt(e),s=2*Math.PI*Math.random(),i=2*Math.PI*Math.random();return this.set(t*Math.cos(s),n*Math.sin(i),n*Math.cos(i),t*Math.sin(s))}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._w===this._w}fromArray(e,t=0){return this._x=e[t],this._y=e[t+1],this._z=e[t+2],this._w=e[t+3],this._onChangeCallback(),this}toArray(e=[],t=0){return e[t]=this._x,e[t+1]=this._y,e[t+2]=this._z,e[t+3]=this._w,e}fromBufferAttribute(e,t){return this._x=e.getX(t),this._y=e.getY(t),this._z=e.getZ(t),this._w=e.getW(t),this}_onChange(e){return this._onChangeCallback=e,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._w}}class k{constructor(e=0,t=0,n=0){k.prototype.isVector3=!0,this.x=e,this.y=t,this.z=n}set(e,t,n){return n===void 0&&(n=this.z),this.x=e,this.y=t,this.z=n,this}setScalar(e){return this.x=e,this.y=e,this.z=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setZ(e){return this.z=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;case 2:this.z=t;break;default:throw new Error("index is out of range: "+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw new Error("index is out of range: "+e)}}clone(){return new this.constructor(this.x,this.y,this.z)}copy(e){return this.x=e.x,this.y=e.y,this.z=e.z,this}add(e){return this.x+=e.x,this.y+=e.y,this.z+=e.z,this}addScalar(e){return this.x+=e,this.y+=e,this.z+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this.z=e.z+t.z,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this.z+=e.z*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this.z-=e.z,this}subScalar(e){return this.x-=e,this.y-=e,this.z-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this.z=e.z-t.z,this}multiply(e){return this.x*=e.x,this.y*=e.y,this.z*=e.z,this}multiplyScalar(e){return this.x*=e,this.y*=e,this.z*=e,this}multiplyVectors(e,t){return this.x=e.x*t.x,this.y=e.y*t.y,this.z=e.z*t.z,this}applyEuler(e){return this.applyQuaternion(lr.setFromEuler(e))}applyAxisAngle(e,t){return this.applyQuaternion(lr.setFromAxisAngle(e,t))}applyMatrix3(e){const t=this.x,n=this.y,s=this.z,i=e.elements;return this.x=i[0]*t+i[3]*n+i[6]*s,this.y=i[1]*t+i[4]*n+i[7]*s,this.z=i[2]*t+i[5]*n+i[8]*s,this}applyNormalMatrix(e){return this.applyMatrix3(e).normalize()}applyMatrix4(e){const t=this.x,n=this.y,s=this.z,i=e.elements,r=1/(i[3]*t+i[7]*n+i[11]*s+i[15]);return this.x=(i[0]*t+i[4]*n+i[8]*s+i[12])*r,this.y=(i[1]*t+i[5]*n+i[9]*s+i[13])*r,this.z=(i[2]*t+i[6]*n+i[10]*s+i[14])*r,this}applyQuaternion(e){const t=this.x,n=this.y,s=this.z,i=e.x,r=e.y,o=e.z,a=e.w,c=a*t+r*s-o*n,u=a*n+o*t-i*s,d=a*s+i*n-r*t,h=-i*t-r*n-o*s;return this.x=c*a+h*-i+u*-o-d*-r,this.y=u*a+h*-r+d*-i-c*-o,this.z=d*a+h*-o+c*-r-u*-i,this}project(e){return this.applyMatrix4(e.matrixWorldInverse).applyMatrix4(e.projectionMatrix)}unproject(e){return this.applyMatrix4(e.projectionMatrixInverse).applyMatrix4(e.matrixWorld)}transformDirection(e){const t=this.x,n=this.y,s=this.z,i=e.elements;return this.x=i[0]*t+i[4]*n+i[8]*s,this.y=i[1]*t+i[5]*n+i[9]*s,this.z=i[2]*t+i[6]*n+i[10]*s,this.normalize()}divide(e){return this.x/=e.x,this.y/=e.y,this.z/=e.z,this}divideScalar(e){return this.multiplyScalar(1/e)}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this.z=Math.min(this.z,e.z),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this.z=Math.max(this.z,e.z),this}clamp(e,t){return this.x=Math.max(e.x,Math.min(t.x,this.x)),this.y=Math.max(e.y,Math.min(t.y,this.y)),this.z=Math.max(e.z,Math.min(t.z,this.z)),this}clampScalar(e,t){return this.x=Math.max(e,Math.min(t,this.x)),this.y=Math.max(e,Math.min(t,this.y)),this.z=Math.max(e,Math.min(t,this.z)),this}clampLength(e,t){const n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(e,Math.min(t,n)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this}roundToZero(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this.z=this.z<0?Math.ceil(this.z):Math.floor(this.z),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this}dot(e){return this.x*e.x+this.y*e.y+this.z*e.z}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)}normalize(){return this.divideScalar(this.length()||1)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this.z+=(e.z-this.z)*t,this}lerpVectors(e,t,n){return this.x=e.x+(t.x-e.x)*n,this.y=e.y+(t.y-e.y)*n,this.z=e.z+(t.z-e.z)*n,this}cross(e){return this.crossVectors(this,e)}crossVectors(e,t){const n=e.x,s=e.y,i=e.z,r=t.x,o=t.y,a=t.z;return this.x=s*a-i*o,this.y=i*r-n*a,this.z=n*o-s*r,this}projectOnVector(e){const t=e.lengthSq();if(t===0)return this.set(0,0,0);const n=e.dot(this)/t;return this.copy(e).multiplyScalar(n)}projectOnPlane(e){return Os.copy(this).projectOnVector(e),this.sub(Os)}reflect(e){return this.sub(Os.copy(e).multiplyScalar(2*this.dot(e)))}angleTo(e){const t=Math.sqrt(this.lengthSq()*e.lengthSq());if(t===0)return Math.PI/2;const n=this.dot(e)/t;return Math.acos(we(n,-1,1))}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){const t=this.x-e.x,n=this.y-e.y,s=this.z-e.z;return t*t+n*n+s*s}manhattanDistanceTo(e){return Math.abs(this.x-e.x)+Math.abs(this.y-e.y)+Math.abs(this.z-e.z)}setFromSpherical(e){return this.setFromSphericalCoords(e.radius,e.phi,e.theta)}setFromSphericalCoords(e,t,n){const s=Math.sin(t)*e;return this.x=s*Math.sin(n),this.y=Math.cos(t)*e,this.z=s*Math.cos(n),this}setFromCylindrical(e){return this.setFromCylindricalCoords(e.radius,e.theta,e.y)}setFromCylindricalCoords(e,t,n){return this.x=e*Math.sin(t),this.y=n,this.z=e*Math.cos(t),this}setFromMatrixPosition(e){const t=e.elements;return this.x=t[12],this.y=t[13],this.z=t[14],this}setFromMatrixScale(e){const t=this.setFromMatrixColumn(e,0).length(),n=this.setFromMatrixColumn(e,1).length(),s=this.setFromMatrixColumn(e,2).length();return this.x=t,this.y=n,this.z=s,this}setFromMatrixColumn(e,t){return this.fromArray(e.elements,t*4)}setFromMatrix3Column(e,t){return this.fromArray(e.elements,t*3)}setFromEuler(e){return this.x=e._x,this.y=e._y,this.z=e._z,this}equals(e){return e.x===this.x&&e.y===this.y&&e.z===this.z}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this.z=e[t+2],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e[t+2]=this.z,e}fromBufferAttribute(e,t){return this.x=e.getX(t),this.y=e.getY(t),this.z=e.getZ(t),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}randomDirection(){const e=(Math.random()-.5)*2,t=Math.random()*Math.PI*2,n=Math.sqrt(1-e**2);return this.x=n*Math.cos(t),this.y=n*Math.sin(t),this.z=e,this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z}}const Os=new k,lr=new Mt;class Qt{constructor(e=new k(1/0,1/0,1/0),t=new k(-1/0,-1/0,-1/0)){this.isBox3=!0,this.min=e,this.max=t}set(e,t){return this.min.copy(e),this.max.copy(t),this}setFromArray(e){let t=1/0,n=1/0,s=1/0,i=-1/0,r=-1/0,o=-1/0;for(let a=0,c=e.length;ai&&(i=u),d>r&&(r=d),h>o&&(o=h)}return this.min.set(t,n,s),this.max.set(i,r,o),this}setFromBufferAttribute(e){let t=1/0,n=1/0,s=1/0,i=-1/0,r=-1/0,o=-1/0;for(let a=0,c=e.count;ai&&(i=u),d>r&&(r=d),h>o&&(o=h)}return this.min.set(t,n,s),this.max.set(i,r,o),this}setFromPoints(e){this.makeEmpty();for(let t=0,n=e.length;tthis.max.x||e.ythis.max.y||e.zthis.max.z)}containsBox(e){return this.min.x<=e.min.x&&e.max.x<=this.max.x&&this.min.y<=e.min.y&&e.max.y<=this.max.y&&this.min.z<=e.min.z&&e.max.z<=this.max.z}getParameter(e,t){return t.set((e.x-this.min.x)/(this.max.x-this.min.x),(e.y-this.min.y)/(this.max.y-this.min.y),(e.z-this.min.z)/(this.max.z-this.min.z))}intersectsBox(e){return!(e.max.xthis.max.x||e.max.ythis.max.y||e.max.zthis.max.z)}intersectsSphere(e){return this.clampPoint(e.center,vt),vt.distanceToSquared(e.center)<=e.radius*e.radius}intersectsPlane(e){let t,n;return e.normal.x>0?(t=e.normal.x*this.min.x,n=e.normal.x*this.max.x):(t=e.normal.x*this.max.x,n=e.normal.x*this.min.x),e.normal.y>0?(t+=e.normal.y*this.min.y,n+=e.normal.y*this.max.y):(t+=e.normal.y*this.max.y,n+=e.normal.y*this.min.y),e.normal.z>0?(t+=e.normal.z*this.min.z,n+=e.normal.z*this.max.z):(t+=e.normal.z*this.max.z,n+=e.normal.z*this.min.z),t<=-e.constant&&n>=-e.constant}intersectsTriangle(e){if(this.isEmpty())return!1;this.getCenter(nn),On.subVectors(this.max,nn),Nt.subVectors(e.a,nn),Pt.subVectors(e.b,nn),Et.subVectors(e.c,nn),lt.subVectors(Pt,Nt),ct.subVectors(Et,Pt),xt.subVectors(Nt,Et);let t=[0,-lt.z,lt.y,0,-ct.z,ct.y,0,-xt.z,xt.y,lt.z,0,-lt.x,ct.z,0,-ct.x,xt.z,0,-xt.x,-lt.y,lt.x,0,-ct.y,ct.x,0,-xt.y,xt.x,0];return!Ps(t,Nt,Pt,Et,On)||(t=[1,0,0,0,1,0,0,0,1],!Ps(t,Nt,Pt,Et,On))?!1:(Nn.crossVectors(lt,ct),t=[Nn.x,Nn.y,Nn.z],Ps(t,Nt,Pt,Et,On))}clampPoint(e,t){return t.copy(e).clamp(this.min,this.max)}distanceToPoint(e){return vt.copy(e).clamp(this.min,this.max).sub(e).length()}getBoundingSphere(e){return this.getCenter(e.center),e.radius=this.getSize(vt).length()*.5,e}intersect(e){return this.min.max(e.min),this.max.min(e.max),this.isEmpty()&&this.makeEmpty(),this}union(e){return this.min.min(e.min),this.max.max(e.max),this}applyMatrix4(e){return this.isEmpty()?this:(Xe[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(e),Xe[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(e),Xe[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(e),Xe[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(e),Xe[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(e),Xe[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(e),Xe[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(e),Xe[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(e),this.setFromPoints(Xe),this)}translate(e){return this.min.add(e),this.max.add(e),this}equals(e){return e.min.equals(this.min)&&e.max.equals(this.max)}}const Xe=[new k,new k,new k,new k,new k,new k,new k,new k],vt=new k,Ns=new Qt,Nt=new k,Pt=new k,Et=new k,lt=new k,ct=new k,xt=new k,nn=new k,On=new k,Nn=new k,wt=new k;function Ps(l,e,t,n,s){for(let i=0,r=l.length-3;i<=r;i+=3){wt.fromArray(l,i);const o=s.x*Math.abs(wt.x)+s.y*Math.abs(wt.y)+s.z*Math.abs(wt.z),a=e.dot(wt),c=t.dot(wt),u=n.dot(wt);if(Math.max(-Math.max(a,c,u),Math.min(a,c,u))>o)return!1}return!0}const Ef=new Qt,sn=new k,Es=new k;class Xt{constructor(e=new k,t=-1){this.center=e,this.radius=t}set(e,t){return this.center.copy(e),this.radius=t,this}setFromPoints(e,t){const n=this.center;t!==void 0?n.copy(t):Ef.setFromPoints(e).getCenter(n);let s=0;for(let i=0,r=e.length;ithis.radius*this.radius&&(t.sub(this.center).normalize(),t.multiplyScalar(this.radius).add(this.center)),t}getBoundingBox(e){return this.isEmpty()?(e.makeEmpty(),e):(e.set(this.center,this.center),e.expandByScalar(this.radius),e)}applyMatrix4(e){return this.center.applyMatrix4(e),this.radius=this.radius*e.getMaxScaleOnAxis(),this}translate(e){return this.center.add(e),this}expandByPoint(e){if(this.isEmpty())return this.center.copy(e),this.radius=0,this;sn.subVectors(e,this.center);const t=sn.lengthSq();if(t>this.radius*this.radius){const n=Math.sqrt(t),s=(n-this.radius)*.5;this.center.addScaledVector(sn,s/n),this.radius+=s}return this}union(e){return e.isEmpty()?this:this.isEmpty()?(this.copy(e),this):(this.center.equals(e.center)===!0?this.radius=Math.max(this.radius,e.radius):(Es.subVectors(e.center,this.center).setLength(e.radius),this.expandByPoint(sn.copy(e.center).add(Es)),this.expandByPoint(sn.copy(e.center).sub(Es))),this)}equals(e){return e.center.equals(this.center)&&e.radius===this.radius}clone(){return new this.constructor().copy(this)}}const Ke=new k,Ds=new k,Pn=new k,ut=new k,Rs=new k,En=new k,$s=new k;class Ri{constructor(e=new k,t=new k(0,0,-1)){this.origin=e,this.direction=t}set(e,t){return this.origin.copy(e),this.direction.copy(t),this}copy(e){return this.origin.copy(e.origin),this.direction.copy(e.direction),this}at(e,t){return t.copy(this.direction).multiplyScalar(e).add(this.origin)}lookAt(e){return this.direction.copy(e).sub(this.origin).normalize(),this}recast(e){return this.origin.copy(this.at(e,Ke)),this}closestPointToPoint(e,t){t.subVectors(e,this.origin);const n=t.dot(this.direction);return n<0?t.copy(this.origin):t.copy(this.direction).multiplyScalar(n).add(this.origin)}distanceToPoint(e){return Math.sqrt(this.distanceSqToPoint(e))}distanceSqToPoint(e){const t=Ke.subVectors(e,this.origin).dot(this.direction);return t<0?this.origin.distanceToSquared(e):(Ke.copy(this.direction).multiplyScalar(t).add(this.origin),Ke.distanceToSquared(e))}distanceSqToSegment(e,t,n,s){Ds.copy(e).add(t).multiplyScalar(.5),Pn.copy(t).sub(e).normalize(),ut.copy(this.origin).sub(Ds);const i=e.distanceTo(t)*.5,r=-this.direction.dot(Pn),o=ut.dot(this.direction),a=-ut.dot(Pn),c=ut.lengthSq(),u=Math.abs(1-r*r);let d,h,p,f;if(u>0)if(d=r*a-o,h=r*o-a,f=i*u,d>=0)if(h>=-f)if(h<=f){const m=1/u;d*=m,h*=m,p=d*(d+r*h+2*o)+h*(r*d+h+2*a)+c}else h=i,d=Math.max(0,-(r*h+o)),p=-d*d+h*(h+2*a)+c;else h=-i,d=Math.max(0,-(r*h+o)),p=-d*d+h*(h+2*a)+c;else h<=-f?(d=Math.max(0,-(-r*i+o)),h=d>0?-i:Math.min(Math.max(-i,-a),i),p=-d*d+h*(h+2*a)+c):h<=f?(d=0,h=Math.min(Math.max(-i,-a),i),p=h*(h+2*a)+c):(d=Math.max(0,-(r*i+o)),h=d>0?i:Math.min(Math.max(-i,-a),i),p=-d*d+h*(h+2*a)+c);else h=r>0?-i:i,d=Math.max(0,-(r*h+o)),p=-d*d+h*(h+2*a)+c;return n&&n.copy(this.direction).multiplyScalar(d).add(this.origin),s&&s.copy(Pn).multiplyScalar(h).add(Ds),p}intersectSphere(e,t){Ke.subVectors(e.center,this.origin);const n=Ke.dot(this.direction),s=Ke.dot(Ke)-n*n,i=e.radius*e.radius;if(s>i)return null;const r=Math.sqrt(i-s),o=n-r,a=n+r;return o<0&&a<0?null:o<0?this.at(a,t):this.at(o,t)}intersectsSphere(e){return this.distanceSqToPoint(e.center)<=e.radius*e.radius}distanceToPlane(e){const t=e.normal.dot(this.direction);if(t===0)return e.distanceToPoint(this.origin)===0?0:null;const n=-(this.origin.dot(e.normal)+e.constant)/t;return n>=0?n:null}intersectPlane(e,t){const n=this.distanceToPlane(e);return n===null?null:this.at(n,t)}intersectsPlane(e){const t=e.distanceToPoint(this.origin);return t===0||e.normal.dot(this.direction)*t<0}intersectBox(e,t){let n,s,i,r,o,a;const c=1/this.direction.x,u=1/this.direction.y,d=1/this.direction.z,h=this.origin;return c>=0?(n=(e.min.x-h.x)*c,s=(e.max.x-h.x)*c):(n=(e.max.x-h.x)*c,s=(e.min.x-h.x)*c),u>=0?(i=(e.min.y-h.y)*u,r=(e.max.y-h.y)*u):(i=(e.max.y-h.y)*u,r=(e.min.y-h.y)*u),n>r||i>s||((i>n||isNaN(n))&&(n=i),(r=0?(o=(e.min.z-h.z)*d,a=(e.max.z-h.z)*d):(o=(e.max.z-h.z)*d,a=(e.min.z-h.z)*d),n>a||o>s)||((o>n||n!==n)&&(n=o),(a=0?n:s,t)}intersectsBox(e){return this.intersectBox(e,Ke)!==null}intersectTriangle(e,t,n,s,i){Rs.subVectors(t,e),En.subVectors(n,e),$s.crossVectors(Rs,En);let r=this.direction.dot($s),o;if(r>0){if(s)return null;o=1}else if(r<0)o=-1,r=-r;else return null;ut.subVectors(this.origin,e);const a=o*this.direction.dot(En.crossVectors(ut,En));if(a<0)return null;const c=o*this.direction.dot(Rs.cross(ut));if(c<0||a+c>r)return null;const u=-o*ut.dot($s);return u<0?null:this.at(u/r,i)}applyMatrix4(e){return this.origin.applyMatrix4(e),this.direction.transformDirection(e),this}equals(e){return e.origin.equals(this.origin)&&e.direction.equals(this.direction)}clone(){return new this.constructor().copy(this)}}class K{constructor(){K.prototype.isMatrix4=!0,this.elements=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]}set(e,t,n,s,i,r,o,a,c,u,d,h,p,f,m,_){const M=this.elements;return M[0]=e,M[4]=t,M[8]=n,M[12]=s,M[1]=i,M[5]=r,M[9]=o,M[13]=a,M[2]=c,M[6]=u,M[10]=d,M[14]=h,M[3]=p,M[7]=f,M[11]=m,M[15]=_,this}identity(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this}clone(){return new K().fromArray(this.elements)}copy(e){const t=this.elements,n=e.elements;return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[4]=n[4],t[5]=n[5],t[6]=n[6],t[7]=n[7],t[8]=n[8],t[9]=n[9],t[10]=n[10],t[11]=n[11],t[12]=n[12],t[13]=n[13],t[14]=n[14],t[15]=n[15],this}copyPosition(e){const t=this.elements,n=e.elements;return t[12]=n[12],t[13]=n[13],t[14]=n[14],this}setFromMatrix3(e){const t=e.elements;return this.set(t[0],t[3],t[6],0,t[1],t[4],t[7],0,t[2],t[5],t[8],0,0,0,0,1),this}extractBasis(e,t,n){return e.setFromMatrixColumn(this,0),t.setFromMatrixColumn(this,1),n.setFromMatrixColumn(this,2),this}makeBasis(e,t,n){return this.set(e.x,t.x,n.x,0,e.y,t.y,n.y,0,e.z,t.z,n.z,0,0,0,0,1),this}extractRotation(e){const t=this.elements,n=e.elements,s=1/Dt.setFromMatrixColumn(e,0).length(),i=1/Dt.setFromMatrixColumn(e,1).length(),r=1/Dt.setFromMatrixColumn(e,2).length();return t[0]=n[0]*s,t[1]=n[1]*s,t[2]=n[2]*s,t[3]=0,t[4]=n[4]*i,t[5]=n[5]*i,t[6]=n[6]*i,t[7]=0,t[8]=n[8]*r,t[9]=n[9]*r,t[10]=n[10]*r,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,this}makeRotationFromEuler(e){const t=this.elements,n=e.x,s=e.y,i=e.z,r=Math.cos(n),o=Math.sin(n),a=Math.cos(s),c=Math.sin(s),u=Math.cos(i),d=Math.sin(i);if(e.order==="XYZ"){const h=r*u,p=r*d,f=o*u,m=o*d;t[0]=a*u,t[4]=-a*d,t[8]=c,t[1]=p+f*c,t[5]=h-m*c,t[9]=-o*a,t[2]=m-h*c,t[6]=f+p*c,t[10]=r*a}else if(e.order==="YXZ"){const h=a*u,p=a*d,f=c*u,m=c*d;t[0]=h+m*o,t[4]=f*o-p,t[8]=r*c,t[1]=r*d,t[5]=r*u,t[9]=-o,t[2]=p*o-f,t[6]=m+h*o,t[10]=r*a}else if(e.order==="ZXY"){const h=a*u,p=a*d,f=c*u,m=c*d;t[0]=h-m*o,t[4]=-r*d,t[8]=f+p*o,t[1]=p+f*o,t[5]=r*u,t[9]=m-h*o,t[2]=-r*c,t[6]=o,t[10]=r*a}else if(e.order==="ZYX"){const h=r*u,p=r*d,f=o*u,m=o*d;t[0]=a*u,t[4]=f*c-p,t[8]=h*c+m,t[1]=a*d,t[5]=m*c+h,t[9]=p*c-f,t[2]=-c,t[6]=o*a,t[10]=r*a}else if(e.order==="YZX"){const h=r*a,p=r*c,f=o*a,m=o*c;t[0]=a*u,t[4]=m-h*d,t[8]=f*d+p,t[1]=d,t[5]=r*u,t[9]=-o*u,t[2]=-c*u,t[6]=p*d+f,t[10]=h-m*d}else if(e.order==="XZY"){const h=r*a,p=r*c,f=o*a,m=o*c;t[0]=a*u,t[4]=-d,t[8]=c*u,t[1]=h*d+m,t[5]=r*u,t[9]=p*d-f,t[2]=f*d-p,t[6]=o*u,t[10]=m*d+h}return t[3]=0,t[7]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,this}makeRotationFromQuaternion(e){return this.compose(Df,e,Rf)}lookAt(e,t,n){const s=this.elements;return ke.subVectors(e,t),ke.lengthSq()===0&&(ke.z=1),ke.normalize(),ht.crossVectors(n,ke),ht.lengthSq()===0&&(Math.abs(n.z)===1?ke.x+=1e-4:ke.z+=1e-4,ke.normalize(),ht.crossVectors(n,ke)),ht.normalize(),Dn.crossVectors(ke,ht),s[0]=ht.x,s[4]=Dn.x,s[8]=ke.x,s[1]=ht.y,s[5]=Dn.y,s[9]=ke.y,s[2]=ht.z,s[6]=Dn.z,s[10]=ke.z,this}multiply(e){return this.multiplyMatrices(this,e)}premultiply(e){return this.multiplyMatrices(e,this)}multiplyMatrices(e,t){const n=e.elements,s=t.elements,i=this.elements,r=n[0],o=n[4],a=n[8],c=n[12],u=n[1],d=n[5],h=n[9],p=n[13],f=n[2],m=n[6],_=n[10],M=n[14],A=n[3],T=n[7],x=n[11],L=n[15],D=s[0],E=s[4],V=s[8],H=s[12],q=s[1],Q=s[5],Z=s[9],Y=s[13],oe=s[2],J=s[6],fe=s[10],Ce=s[14],$=s[3],Ie=s[7],Ee=s[11],Qe=s[15];return i[0]=r*D+o*q+a*oe+c*$,i[4]=r*E+o*Q+a*J+c*Ie,i[8]=r*V+o*Z+a*fe+c*Ee,i[12]=r*H+o*Y+a*Ce+c*Qe,i[1]=u*D+d*q+h*oe+p*$,i[5]=u*E+d*Q+h*J+p*Ie,i[9]=u*V+d*Z+h*fe+p*Ee,i[13]=u*H+d*Y+h*Ce+p*Qe,i[2]=f*D+m*q+_*oe+M*$,i[6]=f*E+m*Q+_*J+M*Ie,i[10]=f*V+m*Z+_*fe+M*Ee,i[14]=f*H+m*Y+_*Ce+M*Qe,i[3]=A*D+T*q+x*oe+L*$,i[7]=A*E+T*Q+x*J+L*Ie,i[11]=A*V+T*Z+x*fe+L*Ee,i[15]=A*H+T*Y+x*Ce+L*Qe,this}multiplyScalar(e){const t=this.elements;return t[0]*=e,t[4]*=e,t[8]*=e,t[12]*=e,t[1]*=e,t[5]*=e,t[9]*=e,t[13]*=e,t[2]*=e,t[6]*=e,t[10]*=e,t[14]*=e,t[3]*=e,t[7]*=e,t[11]*=e,t[15]*=e,this}determinant(){const e=this.elements,t=e[0],n=e[4],s=e[8],i=e[12],r=e[1],o=e[5],a=e[9],c=e[13],u=e[2],d=e[6],h=e[10],p=e[14],f=e[3],m=e[7],_=e[11],M=e[15];return f*(+i*a*d-s*c*d-i*o*h+n*c*h+s*o*p-n*a*p)+m*(+t*a*p-t*c*h+i*r*h-s*r*p+s*c*u-i*a*u)+_*(+t*c*d-t*o*p-i*r*d+n*r*p+i*o*u-n*c*u)+M*(-s*o*u-t*a*d+t*o*h+s*r*d-n*r*h+n*a*u)}transpose(){const e=this.elements;let t;return t=e[1],e[1]=e[4],e[4]=t,t=e[2],e[2]=e[8],e[8]=t,t=e[6],e[6]=e[9],e[9]=t,t=e[3],e[3]=e[12],e[12]=t,t=e[7],e[7]=e[13],e[13]=t,t=e[11],e[11]=e[14],e[14]=t,this}setPosition(e,t,n){const s=this.elements;return e.isVector3?(s[12]=e.x,s[13]=e.y,s[14]=e.z):(s[12]=e,s[13]=t,s[14]=n),this}invert(){const e=this.elements,t=e[0],n=e[1],s=e[2],i=e[3],r=e[4],o=e[5],a=e[6],c=e[7],u=e[8],d=e[9],h=e[10],p=e[11],f=e[12],m=e[13],_=e[14],M=e[15],A=d*_*c-m*h*c+m*a*p-o*_*p-d*a*M+o*h*M,T=f*h*c-u*_*c-f*a*p+r*_*p+u*a*M-r*h*M,x=u*m*c-f*d*c+f*o*p-r*m*p-u*o*M+r*d*M,L=f*d*a-u*m*a-f*o*h+r*m*h+u*o*_-r*d*_,D=t*A+n*T+s*x+i*L;if(D===0)return this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);const E=1/D;return e[0]=A*E,e[1]=(m*h*i-d*_*i-m*s*p+n*_*p+d*s*M-n*h*M)*E,e[2]=(o*_*i-m*a*i+m*s*c-n*_*c-o*s*M+n*a*M)*E,e[3]=(d*a*i-o*h*i-d*s*c+n*h*c+o*s*p-n*a*p)*E,e[4]=T*E,e[5]=(u*_*i-f*h*i+f*s*p-t*_*p-u*s*M+t*h*M)*E,e[6]=(f*a*i-r*_*i-f*s*c+t*_*c+r*s*M-t*a*M)*E,e[7]=(r*h*i-u*a*i+u*s*c-t*h*c-r*s*p+t*a*p)*E,e[8]=x*E,e[9]=(f*d*i-u*m*i-f*n*p+t*m*p+u*n*M-t*d*M)*E,e[10]=(r*m*i-f*o*i+f*n*c-t*m*c-r*n*M+t*o*M)*E,e[11]=(u*o*i-r*d*i-u*n*c+t*d*c+r*n*p-t*o*p)*E,e[12]=L*E,e[13]=(u*m*s-f*d*s+f*n*h-t*m*h-u*n*_+t*d*_)*E,e[14]=(f*o*s-r*m*s-f*n*a+t*m*a+r*n*_-t*o*_)*E,e[15]=(r*d*s-u*o*s+u*n*a-t*d*a-r*n*h+t*o*h)*E,this}scale(e){const t=this.elements,n=e.x,s=e.y,i=e.z;return t[0]*=n,t[4]*=s,t[8]*=i,t[1]*=n,t[5]*=s,t[9]*=i,t[2]*=n,t[6]*=s,t[10]*=i,t[3]*=n,t[7]*=s,t[11]*=i,this}getMaxScaleOnAxis(){const e=this.elements,t=e[0]*e[0]+e[1]*e[1]+e[2]*e[2],n=e[4]*e[4]+e[5]*e[5]+e[6]*e[6],s=e[8]*e[8]+e[9]*e[9]+e[10]*e[10];return Math.sqrt(Math.max(t,n,s))}makeTranslation(e,t,n){return this.set(1,0,0,e,0,1,0,t,0,0,1,n,0,0,0,1),this}makeRotationX(e){const t=Math.cos(e),n=Math.sin(e);return this.set(1,0,0,0,0,t,-n,0,0,n,t,0,0,0,0,1),this}makeRotationY(e){const t=Math.cos(e),n=Math.sin(e);return this.set(t,0,n,0,0,1,0,0,-n,0,t,0,0,0,0,1),this}makeRotationZ(e){const t=Math.cos(e),n=Math.sin(e);return this.set(t,-n,0,0,n,t,0,0,0,0,1,0,0,0,0,1),this}makeRotationAxis(e,t){const n=Math.cos(t),s=Math.sin(t),i=1-n,r=e.x,o=e.y,a=e.z,c=i*r,u=i*o;return this.set(c*r+n,c*o-s*a,c*a+s*o,0,c*o+s*a,u*o+n,u*a-s*r,0,c*a-s*o,u*a+s*r,i*a*a+n,0,0,0,0,1),this}makeScale(e,t,n){return this.set(e,0,0,0,0,t,0,0,0,0,n,0,0,0,0,1),this}makeShear(e,t,n,s,i,r){return this.set(1,n,i,0,e,1,r,0,t,s,1,0,0,0,0,1),this}compose(e,t,n){const s=this.elements,i=t._x,r=t._y,o=t._z,a=t._w,c=i+i,u=r+r,d=o+o,h=i*c,p=i*u,f=i*d,m=r*u,_=r*d,M=o*d,A=a*c,T=a*u,x=a*d,L=n.x,D=n.y,E=n.z;return s[0]=(1-(m+M))*L,s[1]=(p+x)*L,s[2]=(f-T)*L,s[3]=0,s[4]=(p-x)*D,s[5]=(1-(h+M))*D,s[6]=(_+A)*D,s[7]=0,s[8]=(f+T)*E,s[9]=(_-A)*E,s[10]=(1-(h+m))*E,s[11]=0,s[12]=e.x,s[13]=e.y,s[14]=e.z,s[15]=1,this}decompose(e,t,n){const s=this.elements;let i=Dt.set(s[0],s[1],s[2]).length();const r=Dt.set(s[4],s[5],s[6]).length(),o=Dt.set(s[8],s[9],s[10]).length();this.determinant()<0&&(i=-i),e.x=s[12],e.y=s[13],e.z=s[14],Re.copy(this);const c=1/i,u=1/r,d=1/o;return Re.elements[0]*=c,Re.elements[1]*=c,Re.elements[2]*=c,Re.elements[4]*=u,Re.elements[5]*=u,Re.elements[6]*=u,Re.elements[8]*=d,Re.elements[9]*=d,Re.elements[10]*=d,t.setFromRotationMatrix(Re),n.x=i,n.y=r,n.z=o,this}makePerspective(e,t,n,s,i,r){const o=this.elements,a=2*i/(t-e),c=2*i/(n-s),u=(t+e)/(t-e),d=(n+s)/(n-s),h=-(r+i)/(r-i),p=-2*r*i/(r-i);return o[0]=a,o[4]=0,o[8]=u,o[12]=0,o[1]=0,o[5]=c,o[9]=d,o[13]=0,o[2]=0,o[6]=0,o[10]=h,o[14]=p,o[3]=0,o[7]=0,o[11]=-1,o[15]=0,this}makeOrthographic(e,t,n,s,i,r){const o=this.elements,a=1/(t-e),c=1/(n-s),u=1/(r-i),d=(t+e)*a,h=(n+s)*c,p=(r+i)*u;return o[0]=2*a,o[4]=0,o[8]=0,o[12]=-d,o[1]=0,o[5]=2*c,o[9]=0,o[13]=-h,o[2]=0,o[6]=0,o[10]=-2*u,o[14]=-p,o[3]=0,o[7]=0,o[11]=0,o[15]=1,this}equals(e){const t=this.elements,n=e.elements;for(let s=0;s<16;s++)if(t[s]!==n[s])return!1;return!0}fromArray(e,t=0){for(let n=0;n<16;n++)this.elements[n]=e[n+t];return this}toArray(e=[],t=0){const n=this.elements;return e[t]=n[0],e[t+1]=n[1],e[t+2]=n[2],e[t+3]=n[3],e[t+4]=n[4],e[t+5]=n[5],e[t+6]=n[6],e[t+7]=n[7],e[t+8]=n[8],e[t+9]=n[9],e[t+10]=n[10],e[t+11]=n[11],e[t+12]=n[12],e[t+13]=n[13],e[t+14]=n[14],e[t+15]=n[15],e}}const Dt=new k,Re=new K,Df=new k(0,0,0),Rf=new k(1,1,1),ht=new k,Dn=new k,ke=new k,cr=new K,ur=new Mt;class Tn{constructor(e=0,t=0,n=0,s=Tn.DefaultOrder){this.isEuler=!0,this._x=e,this._y=t,this._z=n,this._order=s}get x(){return this._x}set x(e){this._x=e,this._onChangeCallback()}get y(){return this._y}set y(e){this._y=e,this._onChangeCallback()}get z(){return this._z}set z(e){this._z=e,this._onChangeCallback()}get order(){return this._order}set order(e){this._order=e,this._onChangeCallback()}set(e,t,n,s=this._order){return this._x=e,this._y=t,this._z=n,this._order=s,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._order)}copy(e){return this._x=e._x,this._y=e._y,this._z=e._z,this._order=e._order,this._onChangeCallback(),this}setFromRotationMatrix(e,t=this._order,n=!0){const s=e.elements,i=s[0],r=s[4],o=s[8],a=s[1],c=s[5],u=s[9],d=s[2],h=s[6],p=s[10];switch(t){case"XYZ":this._y=Math.asin(we(o,-1,1)),Math.abs(o)<.9999999?(this._x=Math.atan2(-u,p),this._z=Math.atan2(-r,i)):(this._x=Math.atan2(h,c),this._z=0);break;case"YXZ":this._x=Math.asin(-we(u,-1,1)),Math.abs(u)<.9999999?(this._y=Math.atan2(o,p),this._z=Math.atan2(a,c)):(this._y=Math.atan2(-d,i),this._z=0);break;case"ZXY":this._x=Math.asin(we(h,-1,1)),Math.abs(h)<.9999999?(this._y=Math.atan2(-d,p),this._z=Math.atan2(-r,c)):(this._y=0,this._z=Math.atan2(a,i));break;case"ZYX":this._y=Math.asin(-we(d,-1,1)),Math.abs(d)<.9999999?(this._x=Math.atan2(h,p),this._z=Math.atan2(a,i)):(this._x=0,this._z=Math.atan2(-r,c));break;case"YZX":this._z=Math.asin(we(a,-1,1)),Math.abs(a)<.9999999?(this._x=Math.atan2(-u,c),this._y=Math.atan2(-d,i)):(this._x=0,this._y=Math.atan2(o,p));break;case"XZY":this._z=Math.asin(-we(r,-1,1)),Math.abs(r)<.9999999?(this._x=Math.atan2(h,c),this._y=Math.atan2(o,i)):(this._x=Math.atan2(-u,p),this._y=0);break;default:console.warn("THREE.Euler: .setFromRotationMatrix() encountered an unknown order: "+t)}return this._order=t,n===!0&&this._onChangeCallback(),this}setFromQuaternion(e,t,n){return cr.makeRotationFromQuaternion(e),this.setFromRotationMatrix(cr,t,n)}setFromVector3(e,t=this._order){return this.set(e.x,e.y,e.z,t)}reorder(e){return ur.setFromEuler(this),this.setFromQuaternion(ur,e)}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._order===this._order}fromArray(e){return this._x=e[0],this._y=e[1],this._z=e[2],e[3]!==void 0&&(this._order=e[3]),this._onChangeCallback(),this}toArray(e=[],t=0){return e[t]=this._x,e[t+1]=this._y,e[t+2]=this._z,e[t+3]=this._order,e}_onChange(e){return this._onChangeCallback=e,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._order}toVector3(){console.error("THREE.Euler: .toVector3() has been removed. Use Vector3.setFromEuler() instead")}}Tn.DefaultOrder="XYZ";Tn.RotationOrders=["XYZ","YZX","ZXY","XZY","YXZ","ZYX"];class $f{constructor(){this.mask=1}set(e){this.mask=(1<>>0}enable(e){this.mask|=1<1){for(let t=0;t1){for(let n=0;n0){s.children=[];for(let o=0;o0){s.animations=[];for(let o=0;o0&&(n.geometries=o),a.length>0&&(n.materials=a),c.length>0&&(n.textures=c),u.length>0&&(n.images=u),d.length>0&&(n.shapes=d),h.length>0&&(n.skeletons=h),p.length>0&&(n.animations=p),f.length>0&&(n.nodes=f)}return n.object=s,n;function r(o){const a=[];for(const c in o){const u=o[c];delete u.metadata,a.push(u)}return a}}clone(e){return new this.constructor().copy(this,e)}copy(e,t=!0){if(this.name=e.name,this.up.copy(e.up),this.position.copy(e.position),this.rotation.order=e.rotation.order,this.quaternion.copy(e.quaternion),this.scale.copy(e.scale),this.matrix.copy(e.matrix),this.matrixWorld.copy(e.matrixWorld),this.matrixAutoUpdate=e.matrixAutoUpdate,this.matrixWorldNeedsUpdate=e.matrixWorldNeedsUpdate,this.matrixWorldAutoUpdate=e.matrixWorldAutoUpdate,this.layers.mask=e.layers.mask,this.visible=e.visible,this.castShadow=e.castShadow,this.receiveShadow=e.receiveShadow,this.frustumCulled=e.frustumCulled,this.renderOrder=e.renderOrder,this.userData=JSON.parse(JSON.stringify(e.userData)),t===!0)for(let n=0;n0?s.multiplyScalar(1/Math.sqrt(i)):s.set(0,0,0)}static getBarycoord(e,t,n,s,i){$e.subVectors(s,t),et.subVectors(n,t),js.subVectors(e,t);const r=$e.dot($e),o=$e.dot(et),a=$e.dot(js),c=et.dot(et),u=et.dot(js),d=r*c-o*o;if(d===0)return i.set(-2,-1,-1);const h=1/d,p=(c*a-o*u)*h,f=(r*u-o*a)*h;return i.set(1-p-f,f,p)}static containsPoint(e,t,n,s){return this.getBarycoord(e,t,n,s,tt),tt.x>=0&&tt.y>=0&&tt.x+tt.y<=1}static getUV(e,t,n,s,i,r,o,a){return this.getBarycoord(e,t,n,s,tt),a.set(0,0),a.addScaledVector(i,tt.x),a.addScaledVector(r,tt.y),a.addScaledVector(o,tt.z),a}static isFrontFacing(e,t,n,s){return $e.subVectors(n,t),et.subVectors(e,t),$e.cross(et).dot(s)<0}set(e,t,n){return this.a.copy(e),this.b.copy(t),this.c.copy(n),this}setFromPointsAndIndices(e,t,n,s){return this.a.copy(e[t]),this.b.copy(e[n]),this.c.copy(e[s]),this}setFromAttributeAndIndices(e,t,n,s){return this.a.fromBufferAttribute(e,t),this.b.fromBufferAttribute(e,n),this.c.fromBufferAttribute(e,s),this}clone(){return new this.constructor().copy(this)}copy(e){return this.a.copy(e.a),this.b.copy(e.b),this.c.copy(e.c),this}getArea(){return $e.subVectors(this.c,this.b),et.subVectors(this.a,this.b),$e.cross(et).length()*.5}getMidpoint(e){return e.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)}getNormal(e){return it.getNormal(this.a,this.b,this.c,e)}getPlane(e){return e.setFromCoplanarPoints(this.a,this.b,this.c)}getBarycoord(e,t){return it.getBarycoord(e,this.a,this.b,this.c,t)}getUV(e,t,n,s,i){return it.getUV(e,this.a,this.b,this.c,t,n,s,i)}containsPoint(e){return it.containsPoint(e,this.a,this.b,this.c)}isFrontFacing(e){return it.isFrontFacing(this.a,this.b,this.c,e)}intersectsBox(e){return e.intersectsTriangle(this)}closestPointToPoint(e,t){const n=this.a,s=this.b,i=this.c;let r,o;$t.subVectors(s,n),jt.subVectors(i,n),Fs.subVectors(e,n);const a=$t.dot(Fs),c=jt.dot(Fs);if(a<=0&&c<=0)return t.copy(n);Vs.subVectors(e,s);const u=$t.dot(Vs),d=jt.dot(Vs);if(u>=0&&d<=u)return t.copy(s);const h=a*d-u*c;if(h<=0&&a>=0&&u<=0)return r=a/(a-u),t.copy(n).addScaledVector($t,r);qs.subVectors(e,i);const p=$t.dot(qs),f=jt.dot(qs);if(f>=0&&p<=f)return t.copy(i);const m=p*c-a*f;if(m<=0&&c>=0&&f<=0)return o=c/(c-f),t.copy(n).addScaledVector(jt,o);const _=u*f-p*d;if(_<=0&&d-u>=0&&p-f>=0)return gr.subVectors(i,s),o=(d-u)/(d-u+(p-f)),t.copy(s).addScaledVector(gr,o);const M=1/(_+m+h);return r=m*M,o=h*M,t.copy(n).addScaledVector($t,r).addScaledVector(jt,o)}equals(e){return e.a.equals(this.a)&&e.b.equals(this.b)&&e.c.equals(this.c)}}let Uf=0;class St extends ps{constructor(){super(),this.isMaterial=!0,Object.defineProperty(this,"id",{value:Uf++}),this.uuid=qe(),this.name="",this.type="Material",this.blending=sr,this.side=di,this.vertexColors=!1,this.opacity=1,this.transparent=!1,this.blendSrc=tf,this.blendDst=nf,this.blendEquation=ef,this.blendSrcAlpha=null,this.blendDstAlpha=null,this.blendEquationAlpha=null,this.depthFunc=sf,this.depthTest=!0,this.depthWrite=!0,this.stencilWriteMask=255,this.stencilFunc=mf,this.stencilRef=0,this.stencilFuncMask=255,this.stencilFail=Cs,this.stencilZFail=Cs,this.stencilZPass=Cs,this.stencilWrite=!1,this.clippingPlanes=null,this.clipIntersection=!1,this.clipShadows=!1,this.shadowSide=null,this.colorWrite=!0,this.precision=null,this.polygonOffset=!1,this.polygonOffsetFactor=0,this.polygonOffsetUnits=0,this.dithering=!1,this.alphaToCoverage=!1,this.premultipliedAlpha=!1,this.visible=!0,this.toneMapped=!0,this.userData={},this.version=0,this._alphaTest=0}get alphaTest(){return this._alphaTest}set alphaTest(e){this._alphaTest>0!=e>0&&this.version++,this._alphaTest=e}onBuild(){}onBeforeRender(){}onBeforeCompile(){}customProgramCacheKey(){return this.onBeforeCompile.toString()}setValues(e){if(e!==void 0)for(const t in e){const n=e[t];if(n===void 0){console.warn("THREE.Material: '"+t+"' parameter is undefined.");continue}const s=this[t];if(s===void 0){console.warn("THREE."+this.type+": '"+t+"' is not a property of this material.");continue}s&&s.isColor?s.set(n):s&&s.isVector3&&n&&n.isVector3?s.copy(n):this[t]=n}}toJSON(e){const t=e===void 0||typeof e=="string";t&&(e={textures:{},images:{}});const n={metadata:{version:4.5,type:"Material",generator:"Material.toJSON"}};n.uuid=this.uuid,n.type=this.type,this.name!==""&&(n.name=this.name),this.color&&this.color.isColor&&(n.color=this.color.getHex()),this.roughness!==void 0&&(n.roughness=this.roughness),this.metalness!==void 0&&(n.metalness=this.metalness),this.sheen!==void 0&&(n.sheen=this.sheen),this.sheenColor&&this.sheenColor.isColor&&(n.sheenColor=this.sheenColor.getHex()),this.sheenRoughness!==void 0&&(n.sheenRoughness=this.sheenRoughness),this.emissive&&this.emissive.isColor&&(n.emissive=this.emissive.getHex()),this.emissiveIntensity&&this.emissiveIntensity!==1&&(n.emissiveIntensity=this.emissiveIntensity),this.specular&&this.specular.isColor&&(n.specular=this.specular.getHex()),this.specularIntensity!==void 0&&(n.specularIntensity=this.specularIntensity),this.specularColor&&this.specularColor.isColor&&(n.specularColor=this.specularColor.getHex()),this.shininess!==void 0&&(n.shininess=this.shininess),this.clearcoat!==void 0&&(n.clearcoat=this.clearcoat),this.clearcoatRoughness!==void 0&&(n.clearcoatRoughness=this.clearcoatRoughness),this.clearcoatMap&&this.clearcoatMap.isTexture&&(n.clearcoatMap=this.clearcoatMap.toJSON(e).uuid),this.clearcoatRoughnessMap&&this.clearcoatRoughnessMap.isTexture&&(n.clearcoatRoughnessMap=this.clearcoatRoughnessMap.toJSON(e).uuid),this.clearcoatNormalMap&&this.clearcoatNormalMap.isTexture&&(n.clearcoatNormalMap=this.clearcoatNormalMap.toJSON(e).uuid,n.clearcoatNormalScale=this.clearcoatNormalScale.toArray()),this.iridescence!==void 0&&(n.iridescence=this.iridescence),this.iridescenceIOR!==void 0&&(n.iridescenceIOR=this.iridescenceIOR),this.iridescenceThicknessRange!==void 0&&(n.iridescenceThicknessRange=this.iridescenceThicknessRange),this.iridescenceMap&&this.iridescenceMap.isTexture&&(n.iridescenceMap=this.iridescenceMap.toJSON(e).uuid),this.iridescenceThicknessMap&&this.iridescenceThicknessMap.isTexture&&(n.iridescenceThicknessMap=this.iridescenceThicknessMap.toJSON(e).uuid),this.map&&this.map.isTexture&&(n.map=this.map.toJSON(e).uuid),this.matcap&&this.matcap.isTexture&&(n.matcap=this.matcap.toJSON(e).uuid),this.alphaMap&&this.alphaMap.isTexture&&(n.alphaMap=this.alphaMap.toJSON(e).uuid),this.lightMap&&this.lightMap.isTexture&&(n.lightMap=this.lightMap.toJSON(e).uuid,n.lightMapIntensity=this.lightMapIntensity),this.aoMap&&this.aoMap.isTexture&&(n.aoMap=this.aoMap.toJSON(e).uuid,n.aoMapIntensity=this.aoMapIntensity),this.bumpMap&&this.bumpMap.isTexture&&(n.bumpMap=this.bumpMap.toJSON(e).uuid,n.bumpScale=this.bumpScale),this.normalMap&&this.normalMap.isTexture&&(n.normalMap=this.normalMap.toJSON(e).uuid,n.normalMapType=this.normalMapType,n.normalScale=this.normalScale.toArray()),this.displacementMap&&this.displacementMap.isTexture&&(n.displacementMap=this.displacementMap.toJSON(e).uuid,n.displacementScale=this.displacementScale,n.displacementBias=this.displacementBias),this.roughnessMap&&this.roughnessMap.isTexture&&(n.roughnessMap=this.roughnessMap.toJSON(e).uuid),this.metalnessMap&&this.metalnessMap.isTexture&&(n.metalnessMap=this.metalnessMap.toJSON(e).uuid),this.emissiveMap&&this.emissiveMap.isTexture&&(n.emissiveMap=this.emissiveMap.toJSON(e).uuid),this.specularMap&&this.specularMap.isTexture&&(n.specularMap=this.specularMap.toJSON(e).uuid),this.specularIntensityMap&&this.specularIntensityMap.isTexture&&(n.specularIntensityMap=this.specularIntensityMap.toJSON(e).uuid),this.specularColorMap&&this.specularColorMap.isTexture&&(n.specularColorMap=this.specularColorMap.toJSON(e).uuid),this.envMap&&this.envMap.isTexture&&(n.envMap=this.envMap.toJSON(e).uuid,this.combine!==void 0&&(n.combine=this.combine)),this.envMapIntensity!==void 0&&(n.envMapIntensity=this.envMapIntensity),this.reflectivity!==void 0&&(n.reflectivity=this.reflectivity),this.refractionRatio!==void 0&&(n.refractionRatio=this.refractionRatio),this.gradientMap&&this.gradientMap.isTexture&&(n.gradientMap=this.gradientMap.toJSON(e).uuid),this.transmission!==void 0&&(n.transmission=this.transmission),this.transmissionMap&&this.transmissionMap.isTexture&&(n.transmissionMap=this.transmissionMap.toJSON(e).uuid),this.thickness!==void 0&&(n.thickness=this.thickness),this.thicknessMap&&this.thicknessMap.isTexture&&(n.thicknessMap=this.thicknessMap.toJSON(e).uuid),this.attenuationDistance!==void 0&&this.attenuationDistance!==1/0&&(n.attenuationDistance=this.attenuationDistance),this.attenuationColor!==void 0&&(n.attenuationColor=this.attenuationColor.getHex()),this.size!==void 0&&(n.size=this.size),this.shadowSide!==null&&(n.shadowSide=this.shadowSide),this.sizeAttenuation!==void 0&&(n.sizeAttenuation=this.sizeAttenuation),this.blending!==sr&&(n.blending=this.blending),this.side!==di&&(n.side=this.side),this.vertexColors&&(n.vertexColors=!0),this.opacity<1&&(n.opacity=this.opacity),this.transparent===!0&&(n.transparent=this.transparent),n.depthFunc=this.depthFunc,n.depthTest=this.depthTest,n.depthWrite=this.depthWrite,n.colorWrite=this.colorWrite,n.stencilWrite=this.stencilWrite,n.stencilWriteMask=this.stencilWriteMask,n.stencilFunc=this.stencilFunc,n.stencilRef=this.stencilRef,n.stencilFuncMask=this.stencilFuncMask,n.stencilFail=this.stencilFail,n.stencilZFail=this.stencilZFail,n.stencilZPass=this.stencilZPass,this.rotation!==void 0&&this.rotation!==0&&(n.rotation=this.rotation),this.polygonOffset===!0&&(n.polygonOffset=!0),this.polygonOffsetFactor!==0&&(n.polygonOffsetFactor=this.polygonOffsetFactor),this.polygonOffsetUnits!==0&&(n.polygonOffsetUnits=this.polygonOffsetUnits),this.linewidth!==void 0&&this.linewidth!==1&&(n.linewidth=this.linewidth),this.dashSize!==void 0&&(n.dashSize=this.dashSize),this.gapSize!==void 0&&(n.gapSize=this.gapSize),this.scale!==void 0&&(n.scale=this.scale),this.dithering===!0&&(n.dithering=!0),this.alphaTest>0&&(n.alphaTest=this.alphaTest),this.alphaToCoverage===!0&&(n.alphaToCoverage=this.alphaToCoverage),this.premultipliedAlpha===!0&&(n.premultipliedAlpha=this.premultipliedAlpha),this.wireframe===!0&&(n.wireframe=this.wireframe),this.wireframeLinewidth>1&&(n.wireframeLinewidth=this.wireframeLinewidth),this.wireframeLinecap!=="round"&&(n.wireframeLinecap=this.wireframeLinecap),this.wireframeLinejoin!=="round"&&(n.wireframeLinejoin=this.wireframeLinejoin),this.flatShading===!0&&(n.flatShading=this.flatShading),this.visible===!1&&(n.visible=!1),this.toneMapped===!1&&(n.toneMapped=!1),this.fog===!1&&(n.fog=!1),JSON.stringify(this.userData)!=="{}"&&(n.userData=this.userData);function s(i){const r=[];for(const o in i){const a=i[o];delete a.metadata,r.push(a)}return r}if(t){const i=s(e.textures),r=s(e.images);i.length>0&&(n.textures=i),r.length>0&&(n.images=r)}return n}clone(){return new this.constructor().copy(this)}copy(e){this.name=e.name,this.blending=e.blending,this.side=e.side,this.vertexColors=e.vertexColors,this.opacity=e.opacity,this.transparent=e.transparent,this.blendSrc=e.blendSrc,this.blendDst=e.blendDst,this.blendEquation=e.blendEquation,this.blendSrcAlpha=e.blendSrcAlpha,this.blendDstAlpha=e.blendDstAlpha,this.blendEquationAlpha=e.blendEquationAlpha,this.depthFunc=e.depthFunc,this.depthTest=e.depthTest,this.depthWrite=e.depthWrite,this.stencilWriteMask=e.stencilWriteMask,this.stencilFunc=e.stencilFunc,this.stencilRef=e.stencilRef,this.stencilFuncMask=e.stencilFuncMask,this.stencilFail=e.stencilFail,this.stencilZFail=e.stencilZFail,this.stencilZPass=e.stencilZPass,this.stencilWrite=e.stencilWrite;const t=e.clippingPlanes;let n=null;if(t!==null){const s=t.length;n=new Array(s);for(let i=0;i!==s;++i)n[i]=t[i].clone()}return this.clippingPlanes=n,this.clipIntersection=e.clipIntersection,this.clipShadows=e.clipShadows,this.shadowSide=e.shadowSide,this.colorWrite=e.colorWrite,this.precision=e.precision,this.polygonOffset=e.polygonOffset,this.polygonOffsetFactor=e.polygonOffsetFactor,this.polygonOffsetUnits=e.polygonOffsetUnits,this.dithering=e.dithering,this.alphaTest=e.alphaTest,this.alphaToCoverage=e.alphaToCoverage,this.premultipliedAlpha=e.premultipliedAlpha,this.visible=e.visible,this.toneMapped=e.toneMapped,this.userData=JSON.parse(JSON.stringify(e.userData)),this}dispose(){this.dispatchEvent({type:"dispose"})}set needsUpdate(e){e===!0&&this.version++}}class Gt extends St{constructor(e){super(),this.isMeshBasicMaterial=!0,this.type="MeshBasicMaterial",this.color=new _e(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=rf,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.specularMap=e.specularMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,this.combine=e.combine,this.reflectivity=e.reflectivity,this.refractionRatio=e.refractionRatio,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.fog=e.fog,this}}const ue=new k,$n=new le;class Ge{constructor(e,t,n){if(Array.isArray(e))throw new TypeError("THREE.BufferAttribute: array should be a Typed Array.");this.isBufferAttribute=!0,this.name="",this.array=e,this.itemSize=t,this.count=e!==void 0?e.length/t:0,this.normalized=n===!0,this.usage=gi,this.updateRange={offset:0,count:-1},this.version=0}onUploadCallback(){}set needsUpdate(e){e===!0&&this.version++}setUsage(e){return this.usage=e,this}copy(e){return this.name=e.name,this.array=new e.array.constructor(e.array),this.itemSize=e.itemSize,this.count=e.count,this.normalized=e.normalized,this.usage=e.usage,this}copyAt(e,t,n){e*=this.itemSize,n*=t.itemSize;for(let s=0,i=this.itemSize;s0&&(e.userData=this.userData),this.parameters!==void 0){const a=this.parameters;for(const c in a)a[c]!==void 0&&(e[c]=a[c]);return e}e.data={attributes:{}};const t=this.index;t!==null&&(e.data.index={type:t.array.constructor.name,array:Array.prototype.slice.call(t.array)});const n=this.attributes;for(const a in n){const c=n[a];e.data.attributes[a]=c.toJSON(e.data)}const s={};let i=!1;for(const a in this.morphAttributes){const c=this.morphAttributes[a],u=[];for(let d=0,h=c.length;d0&&(s[a]=u,i=!0)}i&&(e.data.morphAttributes=s,e.data.morphTargetsRelative=this.morphTargetsRelative);const r=this.groups;r.length>0&&(e.data.groups=JSON.parse(JSON.stringify(r)));const o=this.boundingSphere;return o!==null&&(e.data.boundingSphere={center:o.center.toArray(),radius:o.radius}),e}clone(){return new this.constructor().copy(this)}copy(e){this.index=null,this.attributes={},this.morphAttributes={},this.groups=[],this.boundingBox=null,this.boundingSphere=null;const t={};this.name=e.name;const n=e.index;n!==null&&this.setIndex(n.clone(t));const s=e.attributes;for(const c in s){const u=s[c];this.setAttribute(c,u.clone(t))}const i=e.morphAttributes;for(const c in i){const u=[],d=i[c];for(let h=0,p=d.length;h0){const s=t[n[0]];if(s!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let i=0,r=s.length;it.far?null:{distance:c,point:Hn.clone(),object:l}}function Wn(l,e,t,n,s,i,r,o,a,c,u,d){dt.fromBufferAttribute(s,c),pt.fromBufferAttribute(s,u),ft.fromBufferAttribute(s,d);const h=l.morphTargetInfluences;if(i&&h){jn.set(0,0,0),Fn.set(0,0,0),Vn.set(0,0,0);for(let f=0,m=i.length;f1?null:t.copy(n).multiplyScalar(i).add(e.start)}intersectsLine(e){const t=this.distanceToPoint(e.start),n=this.distanceToPoint(e.end);return t<0&&n>0||n<0&&t>0}intersectsBox(e){return e.intersectsPlane(this)}intersectsSphere(e){return e.intersectsPlane(this)}coplanarPoint(e){return e.copy(this.normal).multiplyScalar(-this.constant)}applyMatrix4(e,t){const n=t||Qf.getNormalMatrix(e),s=this.coplanarPoint(Qs).applyMatrix4(e),i=this.normal.applyMatrix3(n).normalize();return this.constant=-s.dot(i),this}translate(e){return this.constant-=e.dot(this.normal),this}equals(e){return e.normal.equals(this.normal)&&e.constant===this.constant}clone(){return new this.constructor().copy(this)}}const Ut=new Xt,Zn=new k;class Xf{constructor(e=new qt,t=new qt,n=new qt,s=new qt,i=new qt,r=new qt){this.planes=[e,t,n,s,i,r]}set(e,t,n,s,i,r){const o=this.planes;return o[0].copy(e),o[1].copy(t),o[2].copy(n),o[3].copy(s),o[4].copy(i),o[5].copy(r),this}copy(e){const t=this.planes;for(let n=0;n<6;n++)t[n].copy(e.planes[n]);return this}setFromProjectionMatrix(e){const t=this.planes,n=e.elements,s=n[0],i=n[1],r=n[2],o=n[3],a=n[4],c=n[5],u=n[6],d=n[7],h=n[8],p=n[9],f=n[10],m=n[11],_=n[12],M=n[13],A=n[14],T=n[15];return t[0].setComponents(o-s,d-a,m-h,T-_).normalize(),t[1].setComponents(o+s,d+a,m+h,T+_).normalize(),t[2].setComponents(o+i,d+c,m+p,T+M).normalize(),t[3].setComponents(o-i,d-c,m-p,T-M).normalize(),t[4].setComponents(o-r,d-u,m-f,T-A).normalize(),t[5].setComponents(o+r,d+u,m+f,T+A).normalize(),this}intersectsObject(e){const t=e.geometry;return t.boundingSphere===null&&t.computeBoundingSphere(),Ut.copy(t.boundingSphere).applyMatrix4(e.matrixWorld),this.intersectsSphere(Ut)}intersectsSprite(e){return Ut.center.set(0,0,0),Ut.radius=.7071067811865476,Ut.applyMatrix4(e.matrixWorld),this.intersectsSphere(Ut)}intersectsSphere(e){const t=this.planes,n=e.center,s=-e.radius;for(let i=0;i<6;i++)if(t[i].distanceToPoint(n)0?e.max.x:e.min.x,Zn.y=s.normal.y>0?e.max.y:e.min.y,Zn.z=s.normal.z>0?e.max.z:e.min.z,s.distanceToPoint(Zn)<0)return!1}return!0}containsPoint(e){const t=this.planes;for(let n=0;n<6;n++)if(t[n].distanceToPoint(e)<0)return!1;return!0}clone(){return new this.constructor().copy(this)}}class jo extends $o{constructor(e=-1,t=1,n=1,s=-1,i=.1,r=2e3){super(),this.isOrthographicCamera=!0,this.type="OrthographicCamera",this.zoom=1,this.view=null,this.left=e,this.right=t,this.top=n,this.bottom=s,this.near=i,this.far=r,this.updateProjectionMatrix()}copy(e,t){return super.copy(e,t),this.left=e.left,this.right=e.right,this.top=e.top,this.bottom=e.bottom,this.near=e.near,this.far=e.far,this.zoom=e.zoom,this.view=e.view===null?null:Object.assign({},e.view),this}setViewOffset(e,t,n,s,i,r){this.view===null&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=e,this.view.fullHeight=t,this.view.offsetX=n,this.view.offsetY=s,this.view.width=i,this.view.height=r,this.updateProjectionMatrix()}clearViewOffset(){this.view!==null&&(this.view.enabled=!1),this.updateProjectionMatrix()}updateProjectionMatrix(){const e=(this.right-this.left)/(2*this.zoom),t=(this.top-this.bottom)/(2*this.zoom),n=(this.right+this.left)/2,s=(this.top+this.bottom)/2;let i=n-e,r=n+e,o=s+t,a=s-t;if(this.view!==null&&this.view.enabled){const c=(this.right-this.left)/this.view.fullWidth/this.zoom,u=(this.top-this.bottom)/this.view.fullHeight/this.zoom;i+=c*this.view.offsetX,r=i+c*this.view.width,o-=u*this.view.offsetY,a=o-u*this.view.height}this.projectionMatrix.makeOrthographic(i,r,o,a,this.near,this.far),this.projectionMatrixInverse.copy(this.projectionMatrix).invert()}toJSON(e){const t=super.toJSON(e);return t.object.zoom=this.zoom,t.object.left=this.left,t.object.right=this.right,t.object.top=this.top,t.object.bottom=this.bottom,t.object.near=this.near,t.object.far=this.far,this.view!==null&&(t.object.view=Object.assign({},this.view)),t}}class Xs extends ce{constructor(){super(),this.isGroup=!0,this.type="Group"}}class Kf{constructor(e,t){this.isInterleavedBuffer=!0,this.array=e,this.stride=t,this.count=e!==void 0?e.length/t:0,this.usage=gi,this.updateRange={offset:0,count:-1},this.version=0,this.uuid=qe()}onUploadCallback(){}set needsUpdate(e){e===!0&&this.version++}setUsage(e){return this.usage=e,this}copy(e){return this.array=new e.array.constructor(e.array),this.count=e.count,this.stride=e.stride,this.usage=e.usage,this}copyAt(e,t,n){e*=this.stride,n*=t.stride;for(let s=0,i=this.stride;sa)continue;h.applyMatrix4(this.matrixWorld);const V=e.ray.origin.distanceTo(h);Ve.far||t.push({distance:V,point:d.clone().applyMatrix4(this.matrixWorld),index:T,face:null,faceIndex:null,object:this})}}else{const M=Math.max(0,r.start),A=Math.min(_.count,r.start+r.count);for(let T=M,x=A-1;Ta)continue;h.applyMatrix4(this.matrixWorld);const D=e.ray.origin.distanceTo(h);De.far||t.push({distance:D,point:d.clone().applyMatrix4(this.matrixWorld),index:T,face:null,faceIndex:null,object:this})}}}updateMorphTargets(){const t=this.geometry.morphAttributes,n=Object.keys(t);if(n.length>0){const s=t[n[0]];if(s!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let i=0,r=s.length;i0){const s=t[n[0]];if(s!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let i=0,r=s.length;is.far)return;i.push({distance:c,distanceToRay:Math.sqrt(o),point:a,index:e,face:null,object:r})}}class Ui extends St{constructor(e){super(),this.isMeshStandardMaterial=!0,this.defines={STANDARD:""},this.type="MeshStandardMaterial",this.color=new _e(16777215),this.roughness=1,this.metalness=0,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new _e(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=ff,this.normalScale=new le(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.roughnessMap=null,this.metalnessMap=null,this.alphaMap=null,this.envMap=null,this.envMapIntensity=1,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.flatShading=!1,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.defines={STANDARD:""},this.color.copy(e.color),this.roughness=e.roughness,this.metalness=e.metalness,this.map=e.map,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.emissive.copy(e.emissive),this.emissiveMap=e.emissiveMap,this.emissiveIntensity=e.emissiveIntensity,this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.roughnessMap=e.roughnessMap,this.metalnessMap=e.metalnessMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,this.envMapIntensity=e.envMapIntensity,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.flatShading=e.flatShading,this.fog=e.fog,this}}class Lt extends Ui{constructor(e){super(),this.isMeshPhysicalMaterial=!0,this.defines={STANDARD:"",PHYSICAL:""},this.type="MeshPhysicalMaterial",this.clearcoatMap=null,this.clearcoatRoughness=0,this.clearcoatRoughnessMap=null,this.clearcoatNormalScale=new le(1,1),this.clearcoatNormalMap=null,this.ior=1.5,Object.defineProperty(this,"reflectivity",{get:function(){return we(2.5*(this.ior-1)/(this.ior+1),0,1)},set:function(t){this.ior=(1+.4*t)/(1-.4*t)}}),this.iridescenceMap=null,this.iridescenceIOR=1.3,this.iridescenceThicknessRange=[100,400],this.iridescenceThicknessMap=null,this.sheenColor=new _e(0),this.sheenColorMap=null,this.sheenRoughness=1,this.sheenRoughnessMap=null,this.transmissionMap=null,this.thickness=0,this.thicknessMap=null,this.attenuationDistance=1/0,this.attenuationColor=new _e(1,1,1),this.specularIntensity=1,this.specularIntensityMap=null,this.specularColor=new _e(1,1,1),this.specularColorMap=null,this._sheen=0,this._clearcoat=0,this._iridescence=0,this._transmission=0,this.setValues(e)}get sheen(){return this._sheen}set sheen(e){this._sheen>0!=e>0&&this.version++,this._sheen=e}get clearcoat(){return this._clearcoat}set clearcoat(e){this._clearcoat>0!=e>0&&this.version++,this._clearcoat=e}get iridescence(){return this._iridescence}set iridescence(e){this._iridescence>0!=e>0&&this.version++,this._iridescence=e}get transmission(){return this._transmission}set transmission(e){this._transmission>0!=e>0&&this.version++,this._transmission=e}copy(e){return super.copy(e),this.defines={STANDARD:"",PHYSICAL:""},this.clearcoat=e.clearcoat,this.clearcoatMap=e.clearcoatMap,this.clearcoatRoughness=e.clearcoatRoughness,this.clearcoatRoughnessMap=e.clearcoatRoughnessMap,this.clearcoatNormalMap=e.clearcoatNormalMap,this.clearcoatNormalScale.copy(e.clearcoatNormalScale),this.ior=e.ior,this.iridescence=e.iridescence,this.iridescenceMap=e.iridescenceMap,this.iridescenceIOR=e.iridescenceIOR,this.iridescenceThicknessRange=[...e.iridescenceThicknessRange],this.iridescenceThicknessMap=e.iridescenceThicknessMap,this.sheen=e.sheen,this.sheenColor.copy(e.sheenColor),this.sheenColorMap=e.sheenColorMap,this.sheenRoughness=e.sheenRoughness,this.sheenRoughnessMap=e.sheenRoughnessMap,this.transmission=e.transmission,this.transmissionMap=e.transmissionMap,this.thickness=e.thickness,this.thicknessMap=e.thicknessMap,this.attenuationDistance=e.attenuationDistance,this.attenuationColor.copy(e.attenuationColor),this.specularIntensity=e.specularIntensity,this.specularIntensityMap=e.specularIntensityMap,this.specularColor.copy(e.specularColor),this.specularColorMap=e.specularColorMap,this}}function mt(l,e,t){return Uo(l)?new l.constructor(l.subarray(e,t!==void 0?t:l.length)):l.slice(e,t)}function Jn(l,e,t){return!l||!t&&l.constructor===e?l:typeof e.BYTES_PER_ELEMENT=="number"?new e(l):Array.prototype.slice.call(l)}function Uo(l){return ArrayBuffer.isView(l)&&!(l instanceof DataView)}function lm(l){function e(s,i){return l[s]-l[i]}const t=l.length,n=new Array(t);for(let s=0;s!==t;++s)n[s]=s;return n.sort(e),n}function Or(l,e,t){const n=l.length,s=new l.constructor(n);for(let i=0,r=0;r!==n;++i){const o=t[i]*e;for(let a=0;a!==e;++a)s[r++]=l[o+a]}return s}function Go(l,e,t,n){let s=1,i=l[0];for(;i!==void 0&&i[n]===void 0;)i=l[s++];if(i===void 0)return;let r=i[n];if(r!==void 0)if(Array.isArray(r))do r=i[n],r!==void 0&&(e.push(i.time),t.push.apply(t,r)),i=l[s++];while(i!==void 0);else if(r.toArray!==void 0)do r=i[n],r!==void 0&&(e.push(i.time),r.toArray(t,t.length)),i=l[s++];while(i!==void 0);else do r=i[n],r!==void 0&&(e.push(i.time),t.push(r)),i=l[s++];while(i!==void 0)}class An{constructor(e,t,n,s){this.parameterPositions=e,this._cachedIndex=0,this.resultBuffer=s!==void 0?s:new t.constructor(n),this.sampleValues=t,this.valueSize=n,this.settings=null,this.DefaultSettings_={}}evaluate(e){const t=this.parameterPositions;let n=this._cachedIndex,s=t[n],i=t[n-1];e:{t:{let r;n:{s:if(!(e=i)){const o=t[1];e=i)break t}r=n,n=0;break n}break e}for(;n>>1;et;)--r;if(++r,i!==0||r!==s){i>=r&&(r=Math.max(r,1),i=r-1);const o=this.getValueSize();this.times=mt(n,i,r),this.values=mt(this.values,i*o,r*o)}return this}validate(){let e=!0;const t=this.getValueSize();t-Math.floor(t)!==0&&(console.error("THREE.KeyframeTrack: Invalid value size in track.",this),e=!1);const n=this.times,s=this.values,i=n.length;i===0&&(console.error("THREE.KeyframeTrack: Track is empty.",this),e=!1);let r=null;for(let o=0;o!==i;o++){const a=n[o];if(typeof a=="number"&&isNaN(a)){console.error("THREE.KeyframeTrack: Time is not a valid number.",this,o,a),e=!1;break}if(r!==null&&r>a){console.error("THREE.KeyframeTrack: Out of order keys.",this,o,a,r),e=!1;break}r=a}if(s!==void 0&&Uo(s))for(let o=0,a=s.length;o!==a;++o){const c=s[o];if(isNaN(c)){console.error("THREE.KeyframeTrack: Value is not a valid number.",this,o,c),e=!1;break}}return e}optimize(){const e=mt(this.times),t=mt(this.values),n=this.getValueSize(),s=this.getInterpolation()===As,i=e.length-1;let r=1;for(let o=1;o0){e[r]=e[i];for(let o=i*n,a=r*n,c=0;c!==n;++c)t[a+c]=t[o+c];++r}return r!==e.length?(this.times=mt(e,0,r),this.values=mt(t,0,r*n)):(this.times=e,this.values=t),this}clone(){const e=mt(this.times,0),t=mt(this.values,0),n=this.constructor,s=new n(this.name,e,t);return s.createInterpolant=this.createInterpolant,s}}Ye.prototype.TimeBufferType=Float32Array;Ye.prototype.ValueBufferType=Float32Array;Ye.prototype.DefaultInterpolation=Zt;class Jt extends Ye{}Jt.prototype.ValueTypeName="bool";Jt.prototype.ValueBufferType=Array;Jt.prototype.DefaultInterpolation=mn;Jt.prototype.InterpolantFactoryMethodLinear=void 0;Jt.prototype.InterpolantFactoryMethodSmooth=void 0;class Ho extends Ye{}Ho.prototype.ValueTypeName="color";class _n extends Ye{}_n.prototype.ValueTypeName="number";class dm extends An{constructor(e,t,n,s){super(e,t,n,s)}interpolate_(e,t,n,s){const i=this.resultBuffer,r=this.sampleValues,o=this.valueSize,a=(n-t)/(s-t);let c=e*o;for(let u=c+o;c!==u;c+=4)Mt.slerpFlat(i,0,r,c-o,r,c,a);return i}}class Ct extends Ye{InterpolantFactoryMethodLinear(e){return new dm(this.times,this.values,this.getValueSize(),e)}}Ct.prototype.ValueTypeName="quaternion";Ct.prototype.DefaultInterpolation=Zt;Ct.prototype.InterpolantFactoryMethodSmooth=void 0;class en extends Ye{}en.prototype.ValueTypeName="string";en.prototype.ValueBufferType=Array;en.prototype.DefaultInterpolation=mn;en.prototype.InterpolantFactoryMethodLinear=void 0;en.prototype.InterpolantFactoryMethodSmooth=void 0;class bn extends Ye{}bn.prototype.ValueTypeName="vector";class pm{constructor(e,t=-1,n,s=hf){this.name=e,this.tracks=n,this.duration=t,this.blendMode=s,this.uuid=qe(),this.duration<0&&this.resetDuration()}static parse(e){const t=[],n=e.tracks,s=1/(e.fps||1);for(let r=0,o=n.length;r!==o;++r)t.push(mm(n[r]).scale(s));const i=new this(e.name,e.duration,t,e.blendMode);return i.uuid=e.uuid,i}static toJSON(e){const t=[],n=e.tracks,s={name:e.name,duration:e.duration,tracks:t,uuid:e.uuid,blendMode:e.blendMode};for(let i=0,r=n.length;i!==r;++i)t.push(Ye.toJSON(n[i]));return s}static CreateFromMorphTargetSequence(e,t,n,s){const i=t.length,r=[];for(let o=0;o1){const d=u[1];let h=s[d];h||(s[d]=h=[]),h.push(c)}}const r=[];for(const o in s)r.push(this.CreateFromMorphTargetSequence(o,s[o],t,n));return r}static parseAnimation(e,t){if(!e)return console.error("THREE.AnimationClip: No animation in JSONLoader data."),null;const n=function(d,h,p,f,m){if(p.length!==0){const _=[],M=[];Go(p,_,M,f),_.length!==0&&m.push(new d(h,_,M))}},s=[],i=e.name||"default",r=e.fps||30,o=e.blendMode;let a=e.length||-1;const c=e.hierarchy||[];for(let d=0;d{t&&t(i),this.manager.itemEnd(e)},0),i;if(nt[e]!==void 0){nt[e].push({onLoad:t,onProgress:n,onError:s});return}nt[e]=[],nt[e].push({onLoad:t,onProgress:n,onError:s});const r=new Request(e,{headers:new Headers(this.requestHeader),credentials:this.withCredentials?"include":"same-origin"}),o=this.mimeType,a=this.responseType;fetch(r).then(c=>{if(c.status===200||c.status===0){if(c.status===0&&console.warn("THREE.FileLoader: HTTP Status 0 received."),typeof ReadableStream>"u"||c.body===void 0||c.body.getReader===void 0)return c;const u=nt[e],d=c.body.getReader(),h=c.headers.get("Content-Length")||c.headers.get("X-File-Size"),p=h?parseInt(h):0,f=p!==0;let m=0;const _=new ReadableStream({start(M){A();function A(){d.read().then(({done:T,value:x})=>{if(T)M.close();else{m+=x.byteLength;const L=new ProgressEvent("progress",{lengthComputable:f,loaded:m,total:p});for(let D=0,E=u.length;D{switch(a){case"arraybuffer":return c.arrayBuffer();case"blob":return c.blob();case"document":return c.text().then(u=>new DOMParser().parseFromString(u,o));case"json":return c.json();default:if(o===void 0)return c.text();{const d=/charset="?([^;"\s]*)"?/i.exec(o),h=d&&d[1]?d[1].toLowerCase():void 0,p=new TextDecoder(h);return c.arrayBuffer().then(f=>p.decode(f))}}}).then(c=>{Yt.add(e,c);const u=nt[e];delete nt[e];for(let d=0,h=u.length;d{const u=nt[e];if(u===void 0)throw this.manager.itemError(e),c;delete nt[e];for(let d=0,h=u.length;d{this.manager.itemEnd(e)}),this.manager.itemStart(e)}setResponseType(e){return this.responseType=e,this}setMimeType(e){return this.mimeType=e,this}}class bm extends Cn{constructor(e){super(e)}load(e,t,n,s){this.path!==void 0&&(e=this.path+e),e=this.manager.resolveURL(e);const i=this,r=Yt.get(e);if(r!==void 0)return i.manager.itemStart(e),setTimeout(function(){t&&t(r),i.manager.itemEnd(e)},0),r;const o=yi("img");function a(){u(),Yt.add(e,this),t&&t(this),i.manager.itemEnd(e)}function c(d){u(),s&&s(d),i.manager.itemError(e),i.manager.itemEnd(e)}function u(){o.removeEventListener("load",a,!1),o.removeEventListener("error",c,!1)}return o.addEventListener("load",a,!1),o.addEventListener("error",c,!1),e.slice(0,5)!=="data:"&&this.crossOrigin!==void 0&&(o.crossOrigin=this.crossOrigin),i.manager.itemStart(e),o.src=e,o}}class Mm extends Cn{constructor(e){super(e)}load(e,t,n,s){const i=new Ue,r=new bm(this.manager);return r.setCrossOrigin(this.crossOrigin),r.setPath(this.path),r.load(e,function(o){i.image=o,i.needsUpdate=!0,t!==void 0&&t(i)},n,s),i}}class Gi extends ce{constructor(e,t=1){super(),this.isLight=!0,this.type="Light",this.color=new _e(e),this.intensity=t}dispose(){}copy(e,t){return super.copy(e,t),this.color.copy(e.color),this.intensity=e.intensity,this}toJSON(e){const t=super.toJSON(e);return t.object.color=this.color.getHex(),t.object.intensity=this.intensity,this.groundColor!==void 0&&(t.object.groundColor=this.groundColor.getHex()),this.distance!==void 0&&(t.object.distance=this.distance),this.angle!==void 0&&(t.object.angle=this.angle),this.decay!==void 0&&(t.object.decay=this.decay),this.penumbra!==void 0&&(t.object.penumbra=this.penumbra),this.shadow!==void 0&&(t.object.shadow=this.shadow.toJSON()),t}}const Js=new K,Nr=new k,Pr=new k;class Hi{constructor(e){this.camera=e,this.bias=0,this.normalBias=0,this.radius=1,this.blurSamples=8,this.mapSize=new le(512,512),this.map=null,this.mapPass=null,this.matrix=new K,this.autoUpdate=!0,this.needsUpdate=!1,this._frustum=new Xf,this._frameExtents=new le(1,1),this._viewportCount=1,this._viewports=[new Oe(0,0,1,1)]}getViewportCount(){return this._viewportCount}getFrustum(){return this._frustum}updateMatrices(e){const t=this.camera,n=this.matrix;Nr.setFromMatrixPosition(e.matrixWorld),t.position.copy(Nr),Pr.setFromMatrixPosition(e.target.matrixWorld),t.lookAt(Pr),t.updateMatrixWorld(),Js.multiplyMatrices(t.projectionMatrix,t.matrixWorldInverse),this._frustum.setFromProjectionMatrix(Js),n.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),n.multiply(Js)}getViewport(e){return this._viewports[e]}getFrameExtents(){return this._frameExtents}dispose(){this.map&&this.map.dispose(),this.mapPass&&this.mapPass.dispose()}copy(e){return this.camera=e.camera.clone(),this.bias=e.bias,this.radius=e.radius,this.mapSize.copy(e.mapSize),this}clone(){return new this.constructor().copy(this)}toJSON(){const e={};return this.bias!==0&&(e.bias=this.bias),this.normalBias!==0&&(e.normalBias=this.normalBias),this.radius!==1&&(e.radius=this.radius),(this.mapSize.x!==512||this.mapSize.y!==512)&&(e.mapSize=this.mapSize.toArray()),e.camera=this.camera.toJSON(!1).object,delete e.camera.matrix,e}}class vm extends Hi{constructor(){super(new ji(50,1,.5,500)),this.isSpotLightShadow=!0,this.focus=1}updateMatrices(e){const t=this.camera,n=yn*2*e.angle*this.focus,s=this.mapSize.width/this.mapSize.height,i=e.distance||t.far;(n!==t.fov||s!==t.aspect||i!==t.far)&&(t.fov=n,t.aspect=s,t.far=i,t.updateProjectionMatrix()),super.updateMatrices(e)}copy(e){return super.copy(e),this.focus=e.focus,this}}class xm extends Gi{constructor(e,t,n=0,s=Math.PI/3,i=0,r=2){super(e,t),this.isSpotLight=!0,this.type="SpotLight",this.position.copy(ce.DefaultUp),this.updateMatrix(),this.target=new ce,this.distance=n,this.angle=s,this.penumbra=i,this.decay=r,this.map=null,this.shadow=new vm}get power(){return this.intensity*Math.PI}set power(e){this.intensity=e/Math.PI}dispose(){this.shadow.dispose()}copy(e,t){return super.copy(e,t),this.distance=e.distance,this.angle=e.angle,this.penumbra=e.penumbra,this.decay=e.decay,this.target=e.target.clone(),this.shadow=e.shadow.clone(),this}}const Er=new K,ln=new k,ei=new k;class wm extends Hi{constructor(){super(new ji(90,1,.5,500)),this.isPointLightShadow=!0,this._frameExtents=new le(4,2),this._viewportCount=6,this._viewports=[new Oe(2,1,1,1),new Oe(0,1,1,1),new Oe(3,1,1,1),new Oe(1,1,1,1),new Oe(3,0,1,1),new Oe(1,0,1,1)],this._cubeDirections=[new k(1,0,0),new k(-1,0,0),new k(0,0,1),new k(0,0,-1),new k(0,1,0),new k(0,-1,0)],this._cubeUps=[new k(0,1,0),new k(0,1,0),new k(0,1,0),new k(0,1,0),new k(0,0,1),new k(0,0,-1)]}updateMatrices(e,t=0){const n=this.camera,s=this.matrix,i=e.distance||n.far;i!==n.far&&(n.far=i,n.updateProjectionMatrix()),ln.setFromMatrixPosition(e.matrixWorld),n.position.copy(ln),ei.copy(n.position),ei.add(this._cubeDirections[t]),n.up.copy(this._cubeUps[t]),n.lookAt(ei),n.updateMatrixWorld(),s.makeTranslation(-ln.x,-ln.y,-ln.z),Er.multiplyMatrices(n.projectionMatrix,n.matrixWorldInverse),this._frustum.setFromProjectionMatrix(Er)}}class km extends Gi{constructor(e,t,n=0,s=2){super(e,t),this.isPointLight=!0,this.type="PointLight",this.distance=n,this.decay=s,this.shadow=new wm}get power(){return this.intensity*4*Math.PI}set power(e){this.intensity=e/(4*Math.PI)}dispose(){this.shadow.dispose()}copy(e,t){return super.copy(e,t),this.distance=e.distance,this.decay=e.decay,this.shadow=e.shadow.clone(),this}}class Sm extends Hi{constructor(){super(new jo(-5,5,5,-5,.5,500)),this.isDirectionalLightShadow=!0}}class Tm extends Gi{constructor(e,t){super(e,t),this.isDirectionalLight=!0,this.type="DirectionalLight",this.position.copy(ce.DefaultUp),this.updateMatrix(),this.target=new ce,this.shadow=new Sm}dispose(){this.shadow.dispose()}copy(e){return super.copy(e),this.target=e.target.clone(),this.shadow=e.shadow.clone(),this}}class Tt{static decodeText(e){if(typeof TextDecoder<"u")return new TextDecoder().decode(e);let t="";for(let n=0,s=e.length;n"u"&&console.warn("THREE.ImageBitmapLoader: createImageBitmap() not supported."),typeof fetch>"u"&&console.warn("THREE.ImageBitmapLoader: fetch() not supported."),this.options={premultiplyAlpha:"none"}}setOptions(e){return this.options=e,this}load(e,t,n,s){e===void 0&&(e=""),this.path!==void 0&&(e=this.path+e),e=this.manager.resolveURL(e);const i=this,r=Yt.get(e);if(r!==void 0)return i.manager.itemStart(e),setTimeout(function(){t&&t(r),i.manager.itemEnd(e)},0),r;const o={};o.credentials=this.crossOrigin==="anonymous"?"same-origin":"include",o.headers=this.requestHeader,fetch(e,o).then(function(a){return a.blob()}).then(function(a){return createImageBitmap(a,Object.assign(i.options,{colorSpaceConversion:"none"}))}).then(function(a){Yt.add(e,a),t&&t(a),i.manager.itemEnd(e)}).catch(function(a){s&&s(a),i.manager.itemError(e),i.manager.itemEnd(e)}),i.manager.itemStart(e)}}const Wi="\\[\\]\\.:\\/",Cm=new RegExp("["+Wi+"]","g"),Zi="[^"+Wi+"]",Im="[^"+Wi.replace("\\.","")+"]",Lm=/((?:WC+[\/:])*)/.source.replace("WC",Zi),zm=/(WCOD+)?/.source.replace("WCOD",Im),Bm=/(?:\.(WC+)(?:\[(.+)\])?)?/.source.replace("WC",Zi),Om=/\.(WC+)(?:\[(.+)\])?/.source.replace("WC",Zi),Nm=new RegExp("^"+Lm+zm+Bm+Om+"$"),Pm=["material","materials","bones","map"];class Em{constructor(e,t,n){const s=n||te.parseTrackName(t);this._targetGroup=e,this._bindings=e.subscribe_(t,s)}getValue(e,t){this.bind();const n=this._targetGroup.nCachedObjects_,s=this._bindings[n];s!==void 0&&s.getValue(e,t)}setValue(e,t){const n=this._bindings;for(let s=this._targetGroup.nCachedObjects_,i=n.length;s!==i;++s)n[s].setValue(e,t)}bind(){const e=this._bindings;for(let t=this._targetGroup.nCachedObjects_,n=e.length;t!==n;++t)e[t].bind()}unbind(){const e=this._bindings;for(let t=this._targetGroup.nCachedObjects_,n=e.length;t!==n;++t)e[t].unbind()}}class te{constructor(e,t,n){this.path=t,this.parsedPath=n||te.parseTrackName(t),this.node=te.findNode(e,this.parsedPath.nodeName)||e,this.rootNode=e,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}static create(e,t,n){return e&&e.isAnimationObjectGroup?new te.Composite(e,t,n):new te(e,t,n)}static sanitizeNodeName(e){return e.replace(/\s/g,"_").replace(Cm,"")}static parseTrackName(e){const t=Nm.exec(e);if(t===null)throw new Error("PropertyBinding: Cannot parse trackName: "+e);const n={nodeName:t[2],objectName:t[3],objectIndex:t[4],propertyName:t[5],propertyIndex:t[6]},s=n.nodeName&&n.nodeName.lastIndexOf(".");if(s!==void 0&&s!==-1){const i=n.nodeName.substring(s+1);Pm.indexOf(i)!==-1&&(n.nodeName=n.nodeName.substring(0,s),n.objectName=i)}if(n.propertyName===null||n.propertyName.length===0)throw new Error("PropertyBinding: can not parse propertyName from trackName: "+e);return n}static findNode(e,t){if(t===void 0||t===""||t==="."||t===-1||t===e.name||t===e.uuid)return e;if(e.skeleton){const n=e.skeleton.getBoneByName(t);if(n!==void 0)return n}if(e.children){const n=function(i){for(let r=0;r=2.0 are supported."));return}const a=new hg(i,{path:t||this.resourcePath||"",crossOrigin:this.crossOrigin,requestHeader:this.requestHeader,manager:this.manager,ktx2Loader:this.ktx2Loader,meshoptDecoder:this.meshoptDecoder});a.fileLoader.setRequestHeader(this.requestHeader);for(let c=0;c=0&&o[u]===void 0&&console.warn('THREE.GLTFLoader: Unknown extension "'+u+'".')}}a.setExtensions(r),a.setPlugins(o),a.parse(n,s)}parseAsync(e,t){const n=this;return new Promise(function(s,i){n.parse(e,t,s,i)})}}function Rm(){let l={};return{get:function(e){return l[e]},add:function(e,t){l[e]=t},remove:function(e){delete l[e]},removeAll:function(){l={}}}}const X={KHR_BINARY_GLTF:"KHR_binary_glTF",KHR_DRACO_MESH_COMPRESSION:"KHR_draco_mesh_compression",KHR_LIGHTS_PUNCTUAL:"KHR_lights_punctual",KHR_MATERIALS_CLEARCOAT:"KHR_materials_clearcoat",KHR_MATERIALS_IOR:"KHR_materials_ior",KHR_MATERIALS_SHEEN:"KHR_materials_sheen",KHR_MATERIALS_SPECULAR:"KHR_materials_specular",KHR_MATERIALS_TRANSMISSION:"KHR_materials_transmission",KHR_MATERIALS_IRIDESCENCE:"KHR_materials_iridescence",KHR_MATERIALS_UNLIT:"KHR_materials_unlit",KHR_MATERIALS_VOLUME:"KHR_materials_volume",KHR_TEXTURE_BASISU:"KHR_texture_basisu",KHR_TEXTURE_TRANSFORM:"KHR_texture_transform",KHR_MESH_QUANTIZATION:"KHR_mesh_quantization",KHR_MATERIALS_EMISSIVE_STRENGTH:"KHR_materials_emissive_strength",EXT_TEXTURE_WEBP:"EXT_texture_webp",EXT_MESHOPT_COMPRESSION:"EXT_meshopt_compression",EXT_MESH_GPU_INSTANCING:"EXT_mesh_gpu_instancing"};class $m{constructor(e){this.parser=e,this.name=X.KHR_LIGHTS_PUNCTUAL,this.cache={refs:{},uses:{}}}_markDefs(){const e=this.parser,t=this.parser.json.nodes||[];for(let n=0,s=t.length;n=0)throw new Error("THREE.GLTFLoader: setKTX2Loader must be called before loading KTX2 textures");return null}return t.loadTextureImage(e,i.source,r)}}class Qm{constructor(e){this.parser=e,this.name=X.EXT_TEXTURE_WEBP,this.isSupported=null}loadTexture(e){const t=this.name,n=this.parser,s=n.json,i=s.textures[e];if(!i.extensions||!i.extensions[t])return null;const r=i.extensions[t],o=s.images[r.source];let a=n.textureLoader;if(o.uri){const c=n.options.manager.getHandler(o.uri);c!==null&&(a=c)}return this.detectSupport().then(function(c){if(c)return n.loadTextureImage(e,r.source,a);if(s.extensionsRequired&&s.extensionsRequired.indexOf(t)>=0)throw new Error("THREE.GLTFLoader: WebP required by asset but unsupported.");return n.loadTexture(e)})}detectSupport(){return this.isSupported||(this.isSupported=new Promise(function(e){const t=new Image;t.src="data:image/webp;base64,UklGRiIAAABXRUJQVlA4IBYAAAAwAQCdASoBAAEADsD+JaQAA3AAAAAA",t.onload=t.onerror=function(){e(t.height===1)}})),this.isSupported}}class Xm{constructor(e){this.name=X.EXT_MESHOPT_COMPRESSION,this.parser=e}loadBufferView(e){const t=this.parser.json,n=t.bufferViews[e];if(n.extensions&&n.extensions[this.name]){const s=n.extensions[this.name],i=this.parser.getDependency("buffer",s.buffer),r=this.parser.options.meshoptDecoder;if(!r||!r.supported){if(t.extensionsRequired&&t.extensionsRequired.indexOf(this.name)>=0)throw new Error("THREE.GLTFLoader: setMeshoptDecoder must be called before loading compressed files");return null}return i.then(function(o){const a=s.byteOffset||0,c=s.byteLength||0,u=s.count,d=s.byteStride,h=new Uint8Array(o,a,c);return r.decodeGltfBufferAsync?r.decodeGltfBufferAsync(u,d,h,s.mode,s.filter).then(function(p){return p.buffer}):r.ready.then(function(){const p=new ArrayBuffer(u*d);return r.decodeGltfBuffer(new Uint8Array(p),u,d,h,s.mode,s.filter),p})})}else return null}}class Km{constructor(e){this.name=X.EXT_MESH_GPU_INSTANCING,this.parser=e}createNodeMesh(e){const t=this.parser.json,n=t.nodes[e];if(!n.extensions||!n.extensions[this.name]||n.mesh===void 0)return null;const s=t.meshes[n.mesh];for(const c of s.primitives)if(c.mode!==Be.TRIANGLES&&c.mode!==Be.TRIANGLE_STRIP&&c.mode!==Be.TRIANGLE_FAN&&c.mode!==void 0)return null;const r=n.extensions[this.name].attributes,o=[],a={};for(const c in r)o.push(this.parser.getDependency("accessor",r[c]).then(u=>(a[c]=u,a[c])));return o.length<1?null:(o.push(this.parser.createNodeMesh(e)),Promise.all(o).then(c=>{const u=c.pop(),d=u.isGroup?u.children:[u],h=c[0].count,p=[];for(const f of d){const m=new K,_=new k,M=new Mt,A=new k(1,1,1),T=new im(f.geometry,f.material,h);for(let x=0;x0||l.search(/^data\:image\/jpeg/)===0?"image/jpeg":l.search(/\.webp($|\?)/i)>0||l.search(/^data\:image\/webp/)===0?"image/webp":"image/png"}class hg{constructor(e={},t={}){this.json=e,this.extensions={},this.plugins={},this.options=t,this.cache=new Rm,this.associations=new Map,this.primitiveCache={},this.meshCache={refs:{},uses:{}},this.cameraCache={refs:{},uses:{}},this.lightCache={refs:{},uses:{}},this.sourceCache={},this.textureCache={},this.nodeNamesUsed={};let n=!1,s=!1,i=-1;typeof navigator<"u"&&(n=/^((?!chrome|android).)*safari/i.test(navigator.userAgent)===!0,s=navigator.userAgent.indexOf("Firefox")>-1,i=s?navigator.userAgent.match(/Firefox\/([0-9]+)\./)[1]:-1),typeof createImageBitmap>"u"||n||s&&i<98?this.textureLoader=new Mm(this.options.manager):this.textureLoader=new Am(this.options.manager),this.textureLoader.setCrossOrigin(this.options.crossOrigin),this.textureLoader.setRequestHeader(this.options.requestHeader),this.fileLoader=new Wo(this.options.manager),this.fileLoader.setResponseType("arraybuffer"),this.options.crossOrigin==="use-credentials"&&this.fileLoader.setWithCredentials(!0)}setExtensions(e){this.extensions=e}setPlugins(e){this.plugins=e}parse(e,t){const n=this,s=this.json,i=this.extensions;this.cache.removeAll(),this._invokeAll(function(r){return r._markDefs&&r._markDefs()}),Promise.all(this._invokeAll(function(r){return r.beforeRoot&&r.beforeRoot()})).then(function(){return Promise.all([n.getDependencies("scene"),n.getDependencies("animation"),n.getDependencies("camera")])}).then(function(r){const o={scene:r[0][s.scene||0],scenes:r[0],animations:r[1],cameras:r[2],asset:s.asset,parser:n,userData:{}};un(i,o,s),yt(o,s),Promise.all(n._invokeAll(function(a){return a.afterRoot&&a.afterRoot(o)})).then(function(){e(o)})}).catch(t)}_markDefs(){const e=this.json.nodes||[],t=this.json.skins||[],n=this.json.meshes||[];for(let s=0,i=t.length;s{const a=this.associations.get(r);a!=null&&this.associations.set(o,a);for(const[c,u]of r.children.entries())i(u,o.children[c])};return i(n,s),s.name+="_instance_"+e.uses[t]++,s}_invokeOne(e){const t=Object.values(this.plugins);t.push(this);for(let n=0;n=2&&_.setY(H,D[E*a+1]),a>=3&&_.setZ(H,D[E*a+2]),a>=4&&_.setW(H,D[E*a+3]),a>=5)throw new Error("THREE.GLTFLoader: Unsupported itemSize in sparse BufferAttribute.")}}return _})}loadTexture(e){const t=this.json,n=this.options,i=t.textures[e].source,r=t.images[i];let o=this.textureLoader;if(r.uri){const a=n.manager.getHandler(r.uri);a!==null&&(o=a)}return this.loadTextureImage(e,i,o)}loadTextureImage(e,t,n){const s=this,i=this.json,r=i.textures[e],o=i.images[t],a=(o.uri||o.bufferView)+":"+r.sampler;if(this.textureCache[a])return this.textureCache[a];const c=this.loadImageSource(t,n).then(function(u){u.flipY=!1,u.name=r.name||o.name||"";const h=(i.samplers||{})[r.sampler]||{};return u.magFilter=Rr[h.magFilter]||Pi,u.minFilter=Rr[h.minFilter]||Ei,u.wrapS=$r[h.wrapS]||fn,u.wrapT=$r[h.wrapT]||fn,s.associations.set(u,{textures:e}),u}).catch(function(){return null});return this.textureCache[a]=c,c}loadImageSource(e,t){const n=this,s=this.json,i=this.options;if(this.sourceCache[e]!==void 0)return this.sourceCache[e].then(d=>d.clone());const r=s.images[e],o=self.URL||self.webkitURL;let a=r.uri||"",c=!1;if(r.bufferView!==void 0)a=n.getDependency("bufferView",r.bufferView).then(function(d){c=!0;const h=new Blob([d],{type:r.mimeType});return a=o.createObjectURL(h),a});else if(r.uri===void 0)throw new Error("THREE.GLTFLoader: Image "+e+" is missing URI and bufferView");const u=Promise.resolve(a).then(function(d){return new Promise(function(h,p){let f=h;t.isImageBitmapLoader===!0&&(f=function(m){const _=new Ue(m);_.needsUpdate=!0,h(_)}),t.load(Tt.resolveURL(d,i.path),f,void 0,p)})}).then(function(d){return c===!0&&o.revokeObjectURL(a),d.userData.mimeType=r.mimeType||ug(r.uri),d}).catch(function(d){throw console.error("THREE.GLTFLoader: Couldn't load texture",a),d});return this.sourceCache[e]=u,u}assignTexture(e,t,n,s){const i=this;return this.getDependency("texture",n.index).then(function(r){if(!r)return null;if(n.texCoord!==void 0&&n.texCoord!=0&&!(t==="aoMap"&&n.texCoord==1)&&console.warn("THREE.GLTFLoader: Custom UV set "+n.texCoord+" for texture "+t+" not yet supported."),i.extensions[X.KHR_TEXTURE_TRANSFORM]){const o=n.extensions!==void 0?n.extensions[X.KHR_TEXTURE_TRANSFORM]:void 0;if(o){const a=i.associations.get(r);r=i.extensions[X.KHR_TEXTURE_TRANSFORM].extendTexture(r,o),i.associations.set(r,a)}}return s!==void 0&&(r.encoding=s),e[t]=r,r})}assignFinalMaterial(e){const t=e.geometry;let n=e.material;const s=t.attributes.tangent===void 0,i=t.attributes.color!==void 0,r=t.attributes.normal===void 0;if(e.isPoints){const o="PointsMaterial:"+n.uuid;let a=this.cache.get(o);a||(a=new qo,St.prototype.copy.call(a,n),a.color.copy(n.color),a.map=n.map,a.sizeAttenuation=!1,this.cache.add(o,a)),n=a}else if(e.isLine){const o="LineBasicMaterial:"+n.uuid;let a=this.cache.get(o);a||(a=new Vo,St.prototype.copy.call(a,n),a.color.copy(n.color),this.cache.add(o,a)),n=a}if(s||i||r){let o="ClonedMaterial:"+n.uuid+":";s&&(o+="derivative-tangents:"),i&&(o+="vertex-colors:"),r&&(o+="flat-shading:");let a=this.cache.get(o);a||(a=n.clone(),i&&(a.vertexColors=!0),r&&(a.flatShading=!0),s&&(a.normalScale&&(a.normalScale.y*=-1),a.clearcoatNormalScale&&(a.clearcoatNormalScale.y*=-1)),this.cache.add(o,a),this.associations.set(a,this.associations.get(n))),n=a}n.aoMap&&t.attributes.uv2===void 0&&t.attributes.uv!==void 0&&t.setAttribute("uv2",t.attributes.uv),e.material=n}getMaterialType(){return Ui}loadMaterial(e){const t=this,n=this.json,s=this.extensions,i=n.materials[e];let r;const o={},a=i.extensions||{},c=[];if(a[X.KHR_MATERIALS_UNLIT]){const d=s[X.KHR_MATERIALS_UNLIT];r=d.getMaterialType(),c.push(d.extendParams(o,i,t))}else{const d=i.pbrMetallicRoughness||{};if(o.color=new _e(1,1,1),o.opacity=1,Array.isArray(d.baseColorFactor)){const h=d.baseColorFactor;o.color.fromArray(h),o.opacity=h[3]}d.baseColorTexture!==void 0&&c.push(t.assignTexture(o,"map",d.baseColorTexture,gn)),o.metalness=d.metallicFactor!==void 0?d.metallicFactor:1,o.roughness=d.roughnessFactor!==void 0?d.roughnessFactor:1,d.metallicRoughnessTexture!==void 0&&(c.push(t.assignTexture(o,"metalnessMap",d.metallicRoughnessTexture)),c.push(t.assignTexture(o,"roughnessMap",d.metallicRoughnessTexture))),r=this._invokeOne(function(h){return h.getMaterialType&&h.getMaterialType(e)}),c.push(Promise.all(this._invokeAll(function(h){return h.extendMaterialParams&&h.extendMaterialParams(e,o)})))}i.doubleSided===!0&&(o.side=Oo);const u=i.alphaMode||ni.OPAQUE;if(u===ni.BLEND?(o.transparent=!0,o.depthWrite=!1):(o.transparent=!1,u===ni.MASK&&(o.alphaTest=i.alphaCutoff!==void 0?i.alphaCutoff:.5)),i.normalTexture!==void 0&&r!==Gt&&(c.push(t.assignTexture(o,"normalMap",i.normalTexture)),o.normalScale=new le(1,1),i.normalTexture.scale!==void 0)){const d=i.normalTexture.scale;o.normalScale.set(d,d)}return i.occlusionTexture!==void 0&&r!==Gt&&(c.push(t.assignTexture(o,"aoMap",i.occlusionTexture)),i.occlusionTexture.strength!==void 0&&(o.aoMapIntensity=i.occlusionTexture.strength)),i.emissiveFactor!==void 0&&r!==Gt&&(o.emissive=new _e().fromArray(i.emissiveFactor)),i.emissiveTexture!==void 0&&r!==Gt&&c.push(t.assignTexture(o,"emissiveMap",i.emissiveTexture,gn)),Promise.all(c).then(function(){const d=new r(o);return i.name&&(d.name=i.name),yt(d,i),t.associations.set(d,{materials:e}),i.extensions&&un(s,d,i),d})}createUniqueName(e){const t=te.sanitizeNodeName(e||"");let n=t;for(let s=1;this.nodeNamesUsed[n];++s)n=t+"_"+s;return this.nodeNamesUsed[n]=!0,n}loadGeometries(e){const t=this,n=this.extensions,s=this.primitiveCache;function i(o){return n[X.KHR_DRACO_MESH_COMPRESSION].decodePrimitive(o,t).then(function(a){return Fr(a,o,t)})}const r=[];for(let o=0,a=e.length;o0&&lg(M,i),M.name=t.createUniqueName(i.name||"mesh_"+e),yt(M,i),_.extensions&&un(s,M,_),t.assignFinalMaterial(M),d.push(M)}for(let p=0,f=d.length;p1?a=new Xs:o.length===1?a=o[0]:a=new ce,a!==o[0])for(let c=0,u=o.length;c{const d=new Map;for(const[h,p]of i.associations)(h instanceof St||h instanceof Ue)&&d.set(h,p);return u.traverse(h=>{const p=i.associations.get(h);p!=null&&d.set(h,p)}),d};return i.associations=c(r),r})}}function Qo(l,e,t,n){const s=t.nodes[l];return n.getDependency("node",l).then(function(i){return s.skin===void 0?i:n.getDependency("skin",s.skin).then(function(r){return i.traverse(function(o){o.isSkinnedMesh&&o.bind(r,o.matrixWorld)}),i})}).then(function(i){e.add(i);const r=[];if(s.children){const o=s.children;for(let a=0,c=o.length;aimport("./mapvthree.umd.1cz8IRaC.js").then(s=>s.m),__vite__mapDeps([4,3])).then(s=>{const{Engine:i,EmptySky:r}=s,o=new i(n,{});o.rendering.useMrt=!0,o.rendering.shadow.enabled=!0,o.rendering.animationLoopFrameTime=40,o.rendering.colorAdjust.saturation=.25,o.rendering.colorAdjust.contrast=.15,o.rendering.colorAdjust.brightness=0;const a=o.add(new r);a.time=3600*16.5,o.map.projectPointArr(e);const c=[{position:[12941311,4845891,6],path:Ht("/models/building5.glb"),rotate:!0,info:"房子"},{position:[12941265,4845905,6],path:Ht("/models/palm_tree.glb"),rotate:!1,info:"树木"},{position:[12941369,4845869,2],path:Ht("/models/truck1.glb"),rotate:!0,info:"货车"}],u=new Dm;for(let d=0;d{const p=h.scene.children[0];p.userData.info=c[d].info;for(let f=0;f{alert("点击了 "+p.userData.info)})})})}return(n,s)=>{const i=O("BMap");return y(),N(i,U(n.$attrs,{tilt:65,heading:-50,zoom:21,center:e,displayOptions:{building:!1},restrictCenter:!1,enableInertialDragging:"",enableContinuousZoom:"",enableScrollWheelZoom:"",onInitd:t}),null,16)}}},fg=Object.freeze(Object.defineProperty({__proto__:null,default:pg},Symbol.toStringTag,{value:"Module"})),mg={__name:"heatGridLayer",setup(l){function e(t){let n=new mapvgl.View({map:t}),s=new mapvgl.HeatGridLayer({max:80,min:10,gridSize:500,gradient:{0:"rgb(50, 50, 256)",.3:"rgb(178, 202, 256)",1:"rgb(250, 250, 256)"},riseTime:1800,maxHeight:1e4,minHeight:200});n.addLayer(s),fetch("/vue3-baidu-map-gl/beijing.json").then(i=>i.json()).then(i=>{i=i.result.data[0].bound;let r=[];for(let o=0;o{const s=O("BMap");return y(),N(s,U(t.$attrs,{heading:30,tilt:30,zoom:12,center:{lat:39.925406,lng:116.387456},displayOptions:{indoor:!1,poi:!0,skyColors:["rgba(5, 5, 30, 0.01)","rgba(5, 5, 30, 1.0)"]},mapStyleId:"980161f3645989feac25a0da15da4178",enableScrollWheelZoom:"",plugins:["Mapvgl","Mapv"],onPluginReady:e}),null,16)}}},gg=Object.freeze(Object.defineProperty({__proto__:null,default:mg},Symbol.toStringTag,{value:"Module"})),yg={__name:"pointLayer",setup(l){function e(t){let n=[],s=["北京","天津","上海","重庆","石家庄","太原","呼和浩特","哈尔滨","长春","沈阳","济南","南京","合肥","杭州","南昌","福州","郑州","武汉","长沙","广州","南宁","西安","银川","兰州","西宁","乌鲁木齐","成都","贵阳","昆明","拉萨","海口"],i=300;for(;i--;){let a=mapv.utilCityCenter.getCenterByCityName(s[Math.floor(Math.random()*s.length)]);n.push({geometry:{type:"Point",coordinates:[a.lng-2+Math.random()*4,a.lat-2+Math.random()*4]},properties:{count:Math.random()*100}})}let r=new mapvgl.View({map:t}),o=new mapvgl.PointLayer({blend:"lighter",size:15,color:"rgba(102, 0, 204, 0.6)"});r.addLayer(o),o.setData(n)}return(t,n)=>{const s=O("BMap");return y(),N(s,U(t.$attrs,{zoom:5,center:{lat:39.915185,lng:116.403901},plugins:["Mapvgl","Mapv"],displayOptions:{indoor:!1,poi:!0,skyColors:["rgba(5, 5, 30, 0.01)","rgba(5, 5, 30, 1.0)"]},mapStyleId:"91c53039a0b7f75e3dd8ddcdd932243b",enableScrollWheelZoom:"",onPluginReady:e}),null,16)}}},_g=Object.freeze(Object.defineProperty({__proto__:null,default:yg},Symbol.toStringTag,{value:"Module"})),bg=z({__name:"batch",setup(l){const e=["包河区金寨路1号(金寨路与望江西路交叉口)","庐阳区凤台路209号(凤台路与蒙城北路交叉口)","蜀山区金寨路217号(近安医附院公交车站)","蜀山区梅山路10号(近安徽饭店) ","蜀山区 长丰南路159号铜锣湾广场312室","合肥市寿春路93号钱柜星乐町KTV(逍遥津公园对面)","庐阳区长江中路177号"],{get:t,point:n,isLoading:s,isEmpty:i}=Li();function r(){t(e,"合肥市")}return(o,a)=>{const c=O("BControl"),u=O("BMarker"),d=O("BLabel"),h=O("BMap");return y(),v("div",null,[S(h,U(o.$attrs,{zoom:13,center:"合肥市",onInitd:r}),{default:w(()=>[S(c,{class:"address-list",offset:{x:10,y:10}},{default:w(()=>[b("ul",null,[(y(),v(G,null,ie(e,p=>b("li",{key:p},j(p),1)),64))])]),_:1}),!g(s)&&!g(i)?(y(!0),v(G,{key:0},ie(g(n),(p,f)=>(y(),v(G,null,[S(u,{position:p},null,8,["position"]),S(d,{style:{color:"#333","font-size":"9px"},position:p,content:e[f]},null,8,["position","content"])],64))),256)):P("",!0)]),_:1},16)])}}}),Mg=Object.freeze(Object.defineProperty({__proto__:null,default:bg},Symbol.toStringTag,{value:"Module"})),vg=["value"],xg={key:0,class:"state"},wg=b("h5",null,"解析结果:",-1),kg={key:1,class:"state"},Sg={key:2,class:"state"},Tg=b("br",null,null,-1),Ag=z({__name:"index",setup(l){const e=B(),t=B([{address:"北京市海淀区上地10街",city:"北京市"},{address:"北京市海淀区海淀三山五园绿道",city:"北京市"},{address:"北京市东城区天安门东通道",city:"北京市"}]),n=B(t.value[0]);I(()=>n,c=>{s(c.value.address,c.value.city)},{deep:!0});const{get:s,point:i,isLoading:r,isEmpty:o}=Li(()=>{e.value.resetCenter()});function a(){s(n.value.address,n.value.city)}return(c,u)=>{var p,f;const d=O("BMarker"),h=O("BMap");return y(),v("div",null,[ne(" 选择地址解析: "),he(b("select",{class:"mySelect","onUpdate:modelValue":u[0]||(u[0]=m=>n.value=m)},[(y(!0),v(G,null,ie(t.value,m=>(y(),v("option",{value:m},j(m.address),9,vg))),256))],512),[[xn,n.value]]),!g(r)&&!g(o)?(y(),v("div",xg,[wg,b("span",null,"纬度 - "+j((p=g(i))==null?void 0:p.lat),1),b("span",null,"经度 - "+j((f=g(i))==null?void 0:f.lng),1)])):g(o)?(y(),v("div",kg,"没有解析到结果 !")):(y(),v("div",Sg,"解析中...")),Tg,S(h,U(c.$attrs,{ref_key:"map",ref:e,center:g(i),onInitd:a}),{default:w(()=>[!g(r)&&!g(o)?(y(),N(d,{key:0,position:g(i)},null,8,["position"])):P("",!0)]),_:1},16,["center"])])}}}),Cg=Object.freeze(Object.defineProperty({__proto__:null,default:Ag},Symbol.toStringTag,{value:"Module"})),Ig={key:0,class:"state"},Lg=b("h5",null,"定位:",-1),zg=b("br",null,null,-1),Bg={key:1,class:"state"},Og={key:2,class:"state"},Ng=z({__name:"useBrowserLocation",setup(l){const e=B(),{get:t,location:n,isLoading:s,isError:i,status:r}=ap(null,()=>{e.value.resetCenter()});return(o,a)=>{var h,p,f,m,_,M;const c=O("BMarker"),u=O("BCircle"),d=O("BMap");return y(),v("div",null,[!g(s)&&!g(i)?(y(),v("div",Ig,[Lg,b("span",null," 城市 - "+j((h=g(n).address)==null?void 0:h.province)+"-"+j((p=g(n).address)==null?void 0:p.city)+"-"+j((f=g(n).address)==null?void 0:f.district)+"-"+j((m=g(n).address)==null?void 0:m.street),1),b("span",null,"纬度 - "+j((_=g(n).point)==null?void 0:_.lat),1),b("span",null,"经度 - "+j((M=g(n).point)==null?void 0:M.lng),1),zg,b("span",null,"定位精度 - "+j(g(n).accuracy)+"m",1)])):g(i)?(y(),v("div",Bg,"出错了,"+j(g(r)),1)):(y(),v("div",Og,"定位中...")),g(s)?P("",!0):(y(),v("button",{key:3,class:"myButton",onClick:a[0]||(a[0]=(...A)=>g(t)&&g(t)(...A))},"重新获取")),S(d,U(o.$attrs,{enableScrollWheelZoom:"",ref_key:"map",ref:e,onInitd:g(t),center:g(n).point||void 0}),{default:w(()=>[g(s)?P("",!0):(y(),v(G,{key:0},[S(c,{position:g(n).point},null,8,["position"]),S(u,{strokeStyle:"solid",strokeColor:"#0099ff",strokeOpacity:.8,fillColor:"#0099ff",fillOpacity:.5,center:g(n).point,radius:g(n).accuracy},null,8,["center","radius"])],64))]),_:1},16,["onInitd","center"])])}}}),Pg=Object.freeze(Object.defineProperty({__proto__:null,default:Ng},Symbol.toStringTag,{value:"Module"})),Eg={key:0,class:"state"},Dg=b("h5",null,"定位结果:",-1),Rg={key:1,class:"state"},$g=z({__name:"useIpLocation",setup(l){const e=B(),{get:t,location:n,isLoading:s}=rp(()=>{e.value.resetCenter()});return(i,r)=>{var c,u;const o=O("BMarker"),a=O("BMap");return y(),v("div",null,[g(s)?(y(),v("div",Rg,"定位中...")):(y(),v("div",Eg,[Dg,b("span",null,"城市 - "+j(g(n).name),1),b("span",null,"纬度 - "+j((c=g(n).point)==null?void 0:c.lat),1),b("span",null,"经度 - "+j((u=g(n).point)==null?void 0:u.lng),1)])),g(s)?P("",!0):(y(),v("button",{key:2,class:"myButton",onClick:r[0]||(r[0]=(...d)=>g(t)&&g(t)(...d))},"重新获取")),S(a,U(i.$attrs,{enableScrollWheelZoom:"",ref_key:"map",ref:e,center:g(n).point||void 0,onInitd:g(t)}),{default:w(()=>[g(s)?P("",!0):(y(),N(o,{key:0,position:g(n).point},null,8,["position"]))]),_:1},16,["center","onInitd"])])}}}),jg=Object.freeze(Object.defineProperty({__proto__:null,default:$g},Symbol.toStringTag,{value:"Module"})),Fg=z({__name:"usePointConvertor",setup(l){const{convert:e,result:t,isLoading:n,isError:s}=lp(),i={lng:116.32715863448607,lat:39.990912172420714};function r(){e([i],ui.COORDINATES_GCJ02,hi.COORDINATES_BD09)}return(o,a)=>{const c=O("BMarker"),u=O("BLabel"),d=O("BMap");return y(),N(d,U(o.$attrs,{onInitd:r,center:i}),{default:w(()=>[!g(n)&&!g(s)?(y(!0),v(G,{key:0},ie(g(t),(h,p)=>(y(),v(G,null,[S(c,{position:h},null,8,["position"]),S(u,{position:h,style:{color:"#333","font-size":"9px"},content:"转换后的百度标注(正确)"},null,8,["position"])],64))),256)):P("",!0),S(c,{position:i}),S(u,{position:i,style:{color:"#333","font-size":"9px"},content:"未转换的谷歌标注(错误)"})]),_:1},16)}}}),Vg=Object.freeze(Object.defineProperty({__proto__:null,default:Fg},Symbol.toStringTag,{value:"Module"})),qg=z({__name:"batch",setup(l){const e=[{lng:116.307852,lat:40.057031},{lng:116.313082,lat:40.047674},{lng:116.328749,lat:40.026922},{lng:116.347571,lat:39.988698},{lng:116.316163,lat:39.997753},{lng:116.345867,lat:39.998333},{lng:116.403472,lat:39.999411},{lng:116.307901,lat:40.05901}],{get:t,result:n,isLoading:s}=co();function i(){t(e)}return(r,o)=>{const a=O("BControl"),c=O("BMarker"),u=O("BLabel"),d=O("BMap");return y(),v("div",null,[S(d,U(r.$attrs,{enableScrollWheelZoom:"",zoom:13,center:{lng:116.328749,lat:40.026922},onInitd:i}),{default:w(()=>[S(a,{class:"point-list",offset:{x:10,y:10}},{default:w(()=>[b("ul",null,[(y(),v(G,null,ie(e,(h,p)=>b("li",{key:p},[b("div",null,[b("span",null,j(p+1)+".",1),b("span",null,"纬度 - "+j(h.lat),1),b("span",null,"经度 - "+j(h.lng),1)])])),64))])]),_:1}),g(s)?P("",!0):(y(!0),v(G,{key:0},ie(g(n),(h,p)=>{var f;return y(),v(G,null,[S(c,{position:h.point},null,8,["position"]),S(u,{style:{color:"#333","font-size":"9px"},position:h.point,content:`${p}. 地址: ${h.address} 所属商圈:${h.business} 最匹配地点: ${((f=h==null?void 0:h.surroundingPois[0])==null?void 0:f.title)||"无"}`},null,8,["position","content"])],64)}),256))]),_:1},16)])}}}),Ug=Object.freeze(Object.defineProperty({__proto__:null,default:qg},Symbol.toStringTag,{value:"Module"})),Gg=z({__name:"index",setup(l){const e=B(),{get:t,result:n,isLoading:s,isEmpty:i}=co(),r=B({lng:116.30793520652882,lat:40.05861561613348}),o=r;function a(){t(r.value)}function c(u){o.value=u.latlng,t(u.latlng)}return(u,d)=>{const h=O("BMarker"),p=O("BLabel"),f=O("BMap");return y(),v("div",null,[S(f,U(u.$attrs,{enableScrollWheelZoom:"",ref_key:"map",ref:e,center:r.value,onInitd:a,onClick:c}),{default:w(()=>{var m,_,M,A;return[!g(s)&&!g(i)?(y(),v(G,{key:0},[S(h,{position:r.value},null,8,["position"]),S(p,{style:{color:"#333","font-size":"9px"},position:g(n).point,content:`地址: ${(m=g(n))==null?void 0:m.address} 所属商圈:${(_=g(n))==null?void 0:_.business} 最匹配地点: ${((A=(M=g(n))==null?void 0:M.surroundingPois[0])==null?void 0:A.title)||"无"}`},null,8,["position","content"])],64)):P("",!0)]}),_:1},16,["center"])])}}}),Hg=Object.freeze(Object.defineProperty({__proto__:null,default:Gg},Symbol.toStringTag,{value:"Module"})),Wg={class:"state"},Zg=z({__name:"useTrackAnimation",setup(l){const e=B(null),{setPath:t,start:n,cancel:s,stop:i,proceed:r,status:o}=sp(e,{duration:1e4,delay:0}),a=[{lng:116.297611,lat:40.047363},{lng:116.302839,lat:40.048219},{lng:116.308301,lat:40.050566},{lng:116.305732,lat:40.054957},{lng:116.304754,lat:40.057953},{lng:116.306487,lat:40.058312},{lng:116.307223,lat:40.056379}];function c(){t(a)}return(u,d)=>{const h=O("BMap");return y(),v("div",null,[S(h,U(u.$attrs,{center:{lng:116.308301,lat:40.050566},zoom:16,plugins:["TrackAnimation"],ref_key:"map",ref:e,onPluginReady:c}),null,16),b("div",Wg,[b("span",null,"动画状态: "+j(g(o)!=="INITIAL"?"已开始":"未开始"),1),b("span",null,"播放状态: "+j(g(o)==="INITIAL"||g(o)==="STOPPING"?"未播放":"播放中"),1)]),b("button",{class:"myButton no-m-b",type:"button",onClick:d[0]||(d[0]=(...p)=>g(n)&&g(n)(...p))},"开始"),b("button",{class:"myButton no-m-b",type:"button",onClick:d[1]||(d[1]=(...p)=>g(i)&&g(i)(...p))},"暂停"),b("button",{class:"myButton no-m-b",type:"button",onClick:d[2]||(d[2]=(...p)=>g(r)&&g(r)(...p))},"继续"),b("button",{class:"myButton no-m-b",type:"button",onClick:d[3]||(d[3]=(...p)=>g(s)&&g(s)(...p))},"取消")])}}}),Yg=Object.freeze(Object.defineProperty({__proto__:null,default:Zg},Symbol.toStringTag,{value:"Module"})),Qg={class:"state"},Xg=z({__name:"useViewAnimation",setup(l){const e=B(null),{setKeyFrames:t,start:n,stop:s,proceed:i,cancel:r,status:o}=ip(e,{duration:1e4,delay:0,loop:"INFINITE"});function a(){t([{center:{lng:116.307092,lat:40.054922},zoom:18,tilt:50,heading:0,percentage:0},{center:{lng:116.307631,lat:40.055391},zoom:19,tilt:70,heading:0,percentage:.1},{center:{lng:116.306858,lat:40.057887},zoom:19,tilt:70,heading:0,percentage:.25},{center:{lng:116.306858,lat:40.057887},zoom:19,tilt:70,heading:-90,percentage:.35},{center:{lng:116.307904,lat:40.058118},zoom:19,tilt:70,heading:-90,percentage:.45},{center:{lng:116.307904,lat:40.058118},zoom:19,tilt:70,heading:-180,percentage:.55},{center:{lng:116.308902,lat:40.055954},zoom:19,tilt:70,heading:-180,percentage:.75},{center:{lng:116.308902,lat:40.055954},zoom:19,tilt:70,heading:-270,percentage:.85},{center:{lng:116.307779,lat:40.055754},zoom:19,tilt:70,heading:-360,percentage:.95},{center:{lng:116.307092,lat:40.054922},zoom:18,tilt:50,heading:-360,percentage:1}])}return(c,u)=>{const d=O("BMap");return y(),v("div",null,[S(d,U(c.$attrs,{center:{lng:116.308301,lat:40.050566},zoom:16,plugins:["TrackAnimation"],ref_key:"map",ref:e,onInitd:a}),null,16),b("div",Qg,[b("span",null,"动画状态: "+j(g(o)!=="INITIAL"?"已开始":"未开始"),1),b("span",null,"播放状态: "+j(g(o)==="INITIAL"||g(o)==="STOPPING"?"未播放":"播放中"),1)]),b("button",{class:"myButton no-m-b",type:"button",onClick:u[0]||(u[0]=(...h)=>g(n)&&g(n)(...h))},"开始"),b("button",{class:"myButton no-m-b",type:"button",onClick:u[1]||(u[1]=(...h)=>g(s)&&g(s)(...h))},"暂停"),b("button",{class:"myButton no-m-b",type:"button",onClick:u[2]||(u[2]=(...h)=>g(i)&&g(i)(...h))},"继续"),b("button",{class:"myButton no-m-b",type:"button",onClick:u[3]||(u[3]=(...h)=>g(r)&&g(r)(...h))},"取消")])}}}),Kg=Object.freeze(Object.defineProperty({__proto__:null,default:Xg},Symbol.toStringTag,{value:"Module"})),Jg=z({__name:"districtLayer",setup(l){function e(n){n.currentTarget.setFillColor("#9169db")}function t(n){n.currentTarget.setFillColor(n.currentTarget.style.fillColor)}return(n,s)=>{const i=O("BDistrictLayer"),r=O("BMap");return y(),N(r,{"enable-scroll-wheel-zoom":"",zoom:9},{default:w(()=>[S(i,{onMouseover:e,onMouseout:t,viewport:"",kind:g(ci).AREA,name:"北京市"},null,8,["kind"])]),_:1})}}}),ey=Object.freeze(Object.defineProperty({__proto__:null,default:Jg},Symbol.toStringTag,{value:"Module"})),ty={};function ny(l,e){const t=O("BPanoramaControl"),n=O("BPanoramaCoverageLayer"),s=O("BMap");return y(),N(s,U(l.$attrs,{enableScrollWheelZoom:"",ak:"oW2UEhdth2tRbEE4FUpF9E5YVDCIPYih"}),{default:w(()=>[S(t),S(n)]),_:1},16)}const sy=R(ty,[["render",ny]]),iy=Object.freeze(Object.defineProperty({__proto__:null,default:sy},Symbol.toStringTag,{value:"Module"})),ry=b("br",null,null,-1),oy=b("br",null,null,-1),ay=b("br",null,null,-1),ly=b("br",null,null,-1),cy=b("br",null,null,-1),uy=b("br",null,null,-1),hy=b("br",null,null,-1),dy=b("br",null,null,-1),py=b("br",null,null,-1),fy=b("option",{value:"BMAP_NORMAL_MAP"},"常规地图 BMAP_NORMAL_MAP",-1),my=b("option",{value:"BMAP_EARTH_MAP"},"地球模式 BMAP_EARTH_MAP",-1),gy=b("option",{value:"BMAP_SATELLITE_MAP"},"卫星图 BMAP_EARTH_MAP",-1),yy=[fy,my,gy],_y=b("br",null,null,-1),by=b("br",null,null,-1),My=z({__name:"base",setup(l){const e=B("BMAP_NORMAL_MAP"),t=B({enableDragging:!0,enableInertialDragging:!0,enableScrollWheelZoom:!1,enableContinuousZoom:!0,enableResizeOnCenter:!0,enableDoubleClickZoom:!1,enableKeyboard:!0,enablePinchToZoom:!0,enableAutoResize:!0,enableTraffic:!1});return(n,s)=>{const i=O("BMap");return y(),v("div",null,[b("label",null,[he(b("input",{type:"checkbox","onUpdate:modelValue":s[0]||(s[0]=r=>t.value.enableScrollWheelZoom=r)},null,512),[[je,t.value.enableScrollWheelZoom]]),ne(" 鼠标缩放 ")]),ry,b("label",null,[he(b("input",{type:"checkbox","onUpdate:modelValue":s[1]||(s[1]=r=>t.value.enableDragging=r)},null,512),[[je,t.value.enableDragging]]),ne(" 拖拽 ")]),oy,b("label",null,[he(b("input",{type:"checkbox","onUpdate:modelValue":s[2]||(s[2]=r=>t.value.enableInertialDragging=r)},null,512),[[je,t.value.enableInertialDragging]]),ne(" 惯性拖拽 ")]),ay,b("label",null,[he(b("input",{type:"checkbox","onUpdate:modelValue":s[3]||(s[3]=r=>t.value.enablePinchToZoom=r)},null,512),[[je,t.value.enablePinchToZoom]]),ne(" 双指缩放地图 ")]),ly,b("label",null,[he(b("input",{type:"checkbox","onUpdate:modelValue":s[4]||(s[4]=r=>t.value.enableKeyboard=r)},null,512),[[je,t.value.enableKeyboard]]),ne(" 键盘操作 ")]),cy,b("label",null,[he(b("input",{type:"checkbox","onUpdate:modelValue":s[5]||(s[5]=r=>t.value.enableDoubleClickZoom=r)},null,512),[[je,t.value.enableDoubleClickZoom]]),ne(" 双击缩放,左键双击放大、右键双击缩小 ")]),uy,b("label",null,[he(b("input",{type:"checkbox","onUpdate:modelValue":s[6]||(s[6]=r=>t.value.enableContinuousZoom=r)},null,512),[[je,t.value.enableContinuousZoom]]),ne(" 双击平滑缩放效果 ")]),hy,b("label",null,[he(b("input",{type:"checkbox","onUpdate:modelValue":s[7]||(s[7]=r=>t.value.enableTraffic=r)},null,512),[[je,t.value.enableTraffic]]),ne(" 显示交通路况 ")]),dy,py,ne(" 地图类型: "),he(b("select",{class:"mySelect",name:"",id:"","onUpdate:modelValue":s[8]||(s[8]=r=>e.value=r)},yy,512),[[xn,e.value]]),_y,by,S(i,U(n.$attrs,{heading:64.5,tilt:73,center:{lng:116.28019,lat:40.049191},zoom:19,minZoom:3,mapType:e.value,enableDragging:t.value.enableDragging,enableInertialDragging:t.value.enableInertialDragging,enableScrollWheelZoom:t.value.enableScrollWheelZoom,enableContinuousZoom:t.value.enableContinuousZoom,enableDoubleClickZoom:t.value.enableDoubleClickZoom,enableKeyboard:t.value.enableKeyboard,enablePinchToZoom:t.value.enablePinchToZoom,enableTraffic:t.value.enableTraffic}),null,16,["mapType","enableDragging","enableInertialDragging","enableScrollWheelZoom","enableContinuousZoom","enableDoubleClickZoom","enableKeyboard","enablePinchToZoom","enableTraffic"])])}}}),vy=Object.freeze(Object.defineProperty({__proto__:null,default:My},Symbol.toStringTag,{value:"Module"})),xy={},wy={class:"map-wrapper"},ky={class:"map-item"},Sy={class:"map-item"};function Ty(l,e){const t=O("BMap");return y(),v("div",wy,[b("div",ky,[S(t,He(We(l.$attrs)),null,16)]),b("div",Sy,[S(t,He(We(l.$attrs)),null,16)])])}const Ay=R(xy,[["render",Ty],["__scopeId","data-v-947755fa"]]),Cy=Object.freeze(Object.defineProperty({__proto__:null,default:Ay},Symbol.toStringTag,{value:"Module"})),Iy={};function Ly(l,e){const t=O("BMap");return y(),N(t,U(l.$attrs,{zoom:10,enableScrollWheelZoom:"",mapStyleId:"ee66c61531e8df3c2fd0374e96e58e81"}),null,16)}const zy=R(Iy,[["render",Ly]]),By=Object.freeze(Object.defineProperty({__proto__:null,default:zy},Symbol.toStringTag,{value:"Module"})),Oy={};function Ny(l,e){const t=O("BMap");return y(),N(t,U(l.$attrs,{zoom:10,enableScrollWheelZoom:"",mapStyleId:"0f3219e982947931ae2893345940df80"}),null,16)}const Py=R(Oy,[["render",Ny]]),Ey=Object.freeze(Object.defineProperty({__proto__:null,default:Py},Symbol.toStringTag,{value:"Module"})),Dy={};function Ry(l,e){const t=O("BBezierCurve"),n=O("BMap");return y(),N(n,U(l.$attrs,{center:{lng:113.399,lat:39.91},zoom:8}),{default:w(()=>[S(t,{path:[{lng:116.399,lat:39.911},{lng:113.399,lat:39.91},{lng:110.399,lat:39.91}],controlPoints:[[{lng:115.399,lat:40.91},{lng:114.399,lat:38.91}],[{lng:112.399,lat:38.911},{lng:112.399,lat:38.41}]],"stroke-color":"#000","stroke-opacity":1,"stroke-weight":2})]),_:1},16)}const $y=R(Dy,[["render",Ry]]),jy=Object.freeze(Object.defineProperty({__proto__:null,default:$y},Symbol.toStringTag,{value:"Module"})),Fy={};function Vy(l,e){const t=O("BCircle"),n=O("BMap");return y(),N(n,U(l.$attrs,{zoom:16}),{default:w(()=>[S(t,{"stroke-style":"dashed",center:{lat:39.915185,lng:116.403901},radius:300})]),_:1},16)}const qy=R(Fy,[["render",Vy]]),Uy=Object.freeze(Object.defineProperty({__proto__:null,default:qy},Symbol.toStringTag,{value:"Module"})),Gy=z({__name:"dynmicInfoWindow",setup(l){let e=B([{position:{lat:39.915185,lng:116.400101},title:"地址一"},{position:{lat:39.915185,lng:116.400901},title:"地址二"}]);const t=B(e.value[0].title),n=B(e.value[0].position),s=B(!0);function i(r){n.value=r.position,t.value=r.title,s.value=!0}return(r,o)=>(y(),N(g(kn),U({enableScrollWheelZoom:""},r.$attrs,{center:{lat:39.915185,lng:116.400901},zoom:16}),{default:w(()=>[(y(!0),v(G,null,ie(g(e),(a,c)=>(y(),N(g(Sn),{position:a.position,icon:`blue${c+1}`,onClick:()=>i(a),enableClicking:""},null,8,["position","icon","onClick"]))),256)),S(g(zi),{show:s.value,"onUpdate:show":o[0]||(o[0]=a=>s.value=a),position:n.value,title:t.value,enableAutoPan:"",enableCloseOnClick:"",offset:{x:0,y:-10}},null,8,["show","position","title"])]),_:1},16))}}),Hy=Object.freeze(Object.defineProperty({__proto__:null,default:Gy},Symbol.toStringTag,{value:"Module"})),Wy=b("option",{value:"image"},"image 图片叠加层",-1),Zy=b("option",{value:"video"},"video 视频叠加层",-1),Yy=b("option",{value:"canvas"},"canvas 画布叠加层",-1),Qy=[Wy,Zy,Yy],Xy=z({__name:"groundOverlay",setup(l){const e=B("canvas"),t=B({canvas:{tilt:0,zoom:17,opacity:1,startPoint:{lng:116.447717,lat:39.919173},endPoint:{lng:116.453125,lat:39.923475},url:()=>{var s=document.createElement("canvas");s.width=s.height=200;var i=s.getContext("2d");return i.fillStyle="#79a913",i.strokeStyle="white",i.lineWidth=6,i.lineCap="square",i.fillRect(0,0,200,200),i.moveTo(50,50),i.lineTo(150,50),i.lineTo(150,150),i.lineTo(50,150),i.lineTo(50,50),i.stroke(),s}},image:{tilt:45,zoom:18,opacity:1,startPoint:{lng:117.19635,lat:36.24093},endPoint:{lng:117.2035,lat:36.24764},url:"/vue3-baidu-map-gl/shouhuimap.png"},video:{tilt:0,zoom:4,opacity:.5,startPoint:{lng:94.582033,lat:-7.989754},endPoint:{lng:145.358572,lat:30.813867},url:"/vue3-baidu-map-gl/cloud.mov"}}),n=F(()=>t.value[e.value]);return(s,i)=>{const r=O("BMarker"),o=O("BGroundOverlay"),a=O("BLabel"),c=O("BMap");return y(),v("div",null,[ne(" 地面叠加层类型: "),he(b("select",{class:"mySelect",name:"",id:"","onUpdate:modelValue":i[0]||(i[0]=u=>e.value=u)},Qy,512),[[xn,e.value]]),S(c,U(s.$attrs,{enableScrollWheelZoom:"",noAnimation:"",displayOptions:{poiText:!1,poiIcon:!1,building:!1},tilt:n.value.tilt,zoom:n.value.zoom}),{default:w(()=>[S(r,{position:n.value.startPoint,icon:"start",offset:{x:0,y:-16}},null,8,["position"]),S(r,{position:n.value.endPoint,icon:"end",offset:{x:0,y:-16}},null,8,["position"]),S(o,{autoCenter:"",type:e.value,startPoint:n.value.startPoint,endPoint:n.value.endPoint,url:n.value.url,opacity:n.value.opacity},null,8,["type","startPoint","endPoint","url","opacity"]),e.value==="canvas"?(y(),N(a,{key:0,content:"日坛公园",position:{lng:116.449921,lat:39.921324},style:{color:"#fff",borderWidth:"1px",borderRadius:"5px",borderColor:"#fff",backgroundColor:"#79a913",fontSize:"16px",height:"30px",lineHeight:"30px"}})):P("",!0)]),_:1},16,["tilt","zoom"])])}}}),Ky=Object.freeze(Object.defineProperty({__proto__:null,default:Xy},Symbol.toStringTag,{value:"Module"})),zt=l=>(de("data-v-543bd99d"),l=l(),pe(),l),Jy=zt(()=>b("br",null,null,-1)),e_=zt(()=>b("br",null,null,-1)),t_=zt(()=>b("br",null,null,-1)),n_=zt(()=>b("br",null,null,-1)),s_=zt(()=>b("h1",null,"最大化内容",-1)),i_=zt(()=>b("h2",null,"天安门",-1)),r_=zt(()=>b("div",{class:"infoWindow-content"},[b("p",null,"天安门坐落在中国北京市中心,故宫的南侧,与天安门广场隔长安街相望,是清朝皇城的大门。.."),b("img",{width:"139",height:"104",src:"https://lbs.baidu.com/jsdemo/img/tianAnMen.jpg",alt:""})],-1)),o_=z({__name:"infowindow",setup(l){const e=B(!1),t=B(!0),n=B(!1),s=B(1);return(i,r)=>{const o=O("BInfoWindow"),a=O("BMap");return y(),v("div",null,[b("label",null,[he(b("input",{type:"checkbox","onUpdate:modelValue":r[0]||(r[0]=c=>e.value=c)},null,512),[[je,e.value]]),ne(" 文字内容infoWindow ")]),Jy,b("label",null,[he(b("input",{type:"checkbox","onUpdate:modelValue":r[1]||(r[1]=c=>t.value=c)},null,512),[[je,t.value]]),ne(" 动态内容infoWindow ")]),e_,b("label",null,[he(b("input",{type:"checkbox","onUpdate:modelValue":r[2]||(r[2]=c=>n.value=c)},null,512),[[je,n.value]]),ne(" 图文组合排版infoWindow ")]),t_,n_,S(a,U(i.$attrs,{enableScrollWheelZoom:""}),{default:w(()=>[S(o,{show:e.value,"onUpdate:show":r[3]||(r[3]=c=>e.value=c),enableMaximize:"",position:{lng:116.404,lat:39.925},title:"文字内容"},{maxContent:w(()=>[s_]),default:w(()=>[ne(" 地址:北京市东城区王府井大街88号乐天银泰百货八层 ")]),_:1},8,["show"]),S(o,{show:t.value,"onUpdate:show":r[5]||(r[5]=c=>t.value=c),position:{lng:116.404,lat:39.925},title:"动态内容"},{default:w(()=>[b("h2",null,"count: "+j(s.value),1),b("button",{onClick:r[4]||(r[4]=c=>s.value+=1)},"count++")]),_:1},8,["show"]),S(o,{show:n.value,"onUpdate:show":r[6]||(r[6]=c=>n.value=c),position:{lng:116.404,lat:39.925},title:"图文组合排版"},{default:w(()=>[i_,r_]),_:1},8,["show"])]),_:1},16)])}}}),a_=R(o_,[["__scopeId","data-v-543bd99d"]]),l_=Object.freeze(Object.defineProperty({__proto__:null,default:a_},Symbol.toStringTag,{value:"Module"})),c_=z({__name:"label",setup(l){const e=B("欢迎使用百度地图GL版Vue3组件库");return(t,n)=>{const s=O("BLabel"),i=O("BMap");return y(),v(G,null,[ne(" 文字内容: "),he(b("input",{class:"my-input",type:"text","onUpdate:modelValue":n[0]||(n[0]=r=>e.value=r)},null,512),[[ua,e.value]]),S(i,He(We(t.$attrs)),{default:w(()=>[S(s,{content:e.value,position:{lng:116.404,lat:39.915},style:{color:"#fff",backgroundColor:"#f90",border:"none",borderRadius:"3px",padding:"5px 10px",fontSize:"16px"}},null,8,["content"])]),_:1},16)],64)}}}),u_=Object.freeze(Object.defineProperty({__proto__:null,default:c_},Symbol.toStringTag,{value:"Module"})),h_=b("option",{value:"outside"},"局部影藏",-1),d_=b("option",{value:"inside"},"局部显示",-1),p_=[h_,d_],f_=z({__name:"mapMask",setup(l){const e=xi([]),t=B(),n=B("outside");function s(){t.value=new BMapGL.Point(116.31951444701689,40.03514188328609),e.value=[new BMapGL.Point(116.31951444701689,40.03514188328609),new BMapGL.Point(116.31914525270483,40.03627653457813),new BMapGL.Point(116.31887119442595,40.03712933826661),new BMapGL.Point(116.31862381043088,40.037753816069426),new BMapGL.Point(116.31846085080458,40.03827800880047),new BMapGL.Point(116.31800011574751,40.03960034324275),new BMapGL.Point(116.3176890313816,40.0403207681881),new BMapGL.Point(116.31747304954207,40.04023658043798),new BMapGL.Point(116.31689403073578,40.040120567399384),new BMapGL.Point(116.31419172285828,40.03965310472413),new BMapGL.Point(116.31437612880998,40.03919415930771),new BMapGL.Point(116.31462581129936,40.03876546296739),new BMapGL.Point(116.31525321239126,40.037930670509574),new BMapGL.Point(116.315488510584,40.0377117230615),new BMapGL.Point(116.31601289759325,40.037228304952336),new BMapGL.Point(116.31692309046987,40.03662665953143),new BMapGL.Point(116.31817328272946,40.03584288930924),new BMapGL.Point(116.31924096994166,40.03521921152976)],ha(e)}return(i,r)=>(y(),v(G,null,[ne(" 显示区域: "),he(b("select",{class:"mySelect",name:"",id:"","onUpdate:modelValue":r[0]||(r[0]=o=>n.value=o)},p_,512),[[xn,n.value]]),S(g(kn),U(i.$attrs,{center:t.value,zoom:16,onInitd:s,"enable-scroll-wheel-zoom":"",backgroundColor:[192,214,213,100]}),{default:w(()=>[S(g(Sn),{position:t.value},null,8,["position"]),S(g(Bi),{path:e.value,"show-region":n.value,isPoiMask:"",isBuildingMask:"",isMapMask:""},null,8,["path","show-region"])]),_:1},16,["center"])],64))}}),m_=Object.freeze(Object.defineProperty({__proto__:null,default:f_},Symbol.toStringTag,{value:"Module"})),g_={};function y_(l,e){const t=O("BMarker"),n=O("BMap");return y(),N(n,{zoom:16},{default:w(()=>[S(t,{zIndex:99,position:{lat:39.915185,lng:116.403901},icon:"start"}),S(t,{position:{lat:39.915185,lng:116.404901},icon:"end"}),S(t,{position:{lat:39.915185,lng:116.405901},icon:"red1"}),S(t,{position:{lat:39.915185,lng:116.403901},icon:"simple_red"}),S(t,{position:{lat:39.915185,lng:116.400901},icon:{imageUrl:"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSI0OCIgaGVpZ2h0PSI0OCIgdmlld0JveD0iMCAwIDQ4IDQ4IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMjQgNEMxMi45NTQzIDQgNCAxMi45NTQzIDQgMjRDNCAzNS4wNDU3IDEyLjk1NDMgNDQgMjQgNDRDMzUuMDQ1NyA0NCA0NCAzNS4wNDU3IDQ0IDI0QzQ0IDEyLjk1NDMgMzUuMDQ1NyA0IDI0IDRaTTAgMjRDMCAxMC43NDUyIDEwLjc0NTIgMCAyNCAwQzM3LjI1NDggMCA0OCAxMC43NDUyIDQ4IDI0QzQ4IDM3LjI1NDggMzcuMjU0OCA0OCAyNCA0OEMxMC43NDUyIDQ4IDAgMzcuMjU0OCAwIDI0WiIgZmlsbD0iIzAwMDAwMCIvPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTkuMTgzMyA0NS40NzE2QzE4Ljk4OTggNDUuMjIxOSAxOC45ODk4IDQyLjk5NzMgMTkuMTgzMyAzOC43OThDMTcuMTExNCAzOC44Njk2IDE1LjgwMjQgMzguNzI1OCAxNS4yNTYzIDM4LjM2NjdDMTQuNDM3IDM3LjgyOCAxMy42MTY5IDM2LjE2NjcgMTIuODg5MSAzNC45OTU5QzEyLjE2MTQgMzMuODI1MSAxMC41NDYzIDMzLjY0IDkuODk0MDUgMzMuMzc4M0M5LjI0MTgyIDMzLjExNjUgOS4wNzgwOSAzMi4wNDk2IDExLjY5MTMgMzIuODU2NUMxNC4zMDQ0IDMzLjY2MzQgMTQuNDMxOSAzNS44NjA3IDE1LjI1NjMgMzYuMzc0NUMxNi4wODA2IDM2Ljg4ODMgMTguMDUxNSAzNi42NjM1IDE4Ljk0NDggMzYuMjUxOUMxOS44MzgyIDM1Ljg0MDMgMTkuNzcyNCAzNC4zMDc4IDE5LjkzMTcgMzMuNzAwN0MyMC4xMzMxIDMzLjEzNCAxOS40MjMzIDMzLjAwODMgMTkuNDA3NyAzMy4wMDM3QzE4LjUzNTUgMzMuMDAzNyAxMy45NTM5IDMyLjAwNzMgMTIuNjk1NSAyNy41NzA2QzExLjQzNyAyMy4xMzQgMTMuMDU4MSAyMC4yMzQxIDEzLjkyMjkgMTguOTg3NUMxNC40OTk1IDE4LjE1NjQgMTQuNDQ4NSAxNi4zODUyIDEzLjc2OTkgMTMuNjczN0MxNi4yMzM1IDEzLjM1ODkgMTguMTM0NyAxNC4xMzQzIDE5LjQ3MzQgMTYuMDAwMUMxOS40NzQ3IDE2LjAxMDggMjEuMjI4NSAxNC45NTcyIDI0LjAwMDMgMTQuOTU3MkMyNi43NzIgMTQuOTU3MiAyNy43NTUzIDE1LjgxNTQgMjguNTE0MiAxNi4wMDAxQzI5LjI3MzEgMTYuMTg0OCAyOS44OCAxMi43MzQxIDM0LjU2NjggMTMuNjczN0MzMy41ODgzIDE1LjU5NjkgMzIuNzY4OSAxOC4wMDAxIDMzLjM5NDMgMTguOTg3NUMzNC4wMTk4IDE5Ljk3NDkgMzYuNDc0NSAyMy4xMTQ3IDM0Ljk2NjYgMjcuNTcwNkMzMy45NjE0IDMwLjU0MTMgMzEuOTg1MyAzMi4zNTIzIDI5LjAzODQgMzMuMDAzN0MyOC43MDA1IDMzLjExMTUgMjguNTMxNSAzMy4yODU1IDI4LjUzMTUgMzMuNTI1NUMyOC41MzE1IDMzLjg4NTYgMjguOTg4NCAzMy45MjQ5IDI5LjY0NjUgMzUuNjExN0MzMC4wODUzIDM2LjczNjIgMzAuMTE3IDM5Ljk0OCAyOS43NDE2IDQ1LjI0N0MyOC43OTA2IDQ1LjQ4OTEgMjguMDUwOCA0NS42NTE2IDI3LjUyMjEgNDUuNzM0N0MyNi41ODQ3IDQ1Ljg4MiAyNS41NjY5IDQ1Ljk2NDYgMjQuNTY2OSA0NS45OTY1QzIzLjU2NjkgNDYuMDI4NCAyMy4yMTk2IDQ2LjAyNDggMjEuODM3IDQ1Ljg5NjFDMjAuOTE1NCA0NS44MTAzIDIwLjAzMDggNDUuNjY4OCAxOS4xODMzIDQ1LjQ3MTZaIiBmaWxsPSIjMDAwMDAwIi8+PC9zdmc+",size:{width:100,height:100}},enableDragging:""})]),_:1})}const __=R(g_,[["render",y_]]),b_=Object.freeze(Object.defineProperty({__proto__:null,default:__},Symbol.toStringTag,{value:"Module"})),M_=z({__name:"index",setup(l){const e={lat:39.915185,lng:116.400901};return(t,n)=>{const s=O("BMarker3d"),i=O("BMap");return y(),N(i,U(t.$attrs,{zoom:16,heading:64.5,tilt:73,enableScrollWheelZoom:""}),{default:w(()=>[S(s,{position:e,height:1200,size:200,fillColor:"#454399",fillOpacity:.5,shape:"BMAP_SHAPE_CIRCLE"})]),_:1},16)}}}),v_=Object.freeze(Object.defineProperty({__proto__:null,default:M_},Symbol.toStringTag,{value:"Module"})),qr="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSI0OCIgaGVpZ2h0PSI0OCIgdmlld0JveD0iMCAwIDQ4IDQ4IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMjQgNEMxMi45NTQzIDQgNCAxMi45NTQzIDQgMjRDNCAzNS4wNDU3IDEyLjk1NDMgNDQgMjQgNDRDMzUuMDQ1NyA0NCA0NCAzNS4wNDU3IDQ0IDI0QzQ0IDEyLjk1NDMgMzUuMDQ1NyA0IDI0IDRaTTAgMjRDMCAxMC43NDUyIDEwLjc0NTIgMCAyNCAwQzM3LjI1NDggMCA0OCAxMC43NDUyIDQ4IDI0QzQ4IDM3LjI1NDggMzcuMjU0OCA0OCAyNCA0OEMxMC43NDUyIDQ4IDAgMzcuMjU0OCAwIDI0WiIgZmlsbD0iIzAwMDAwMCIvPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTkuMTgzMyA0NS40NzE2QzE4Ljk4OTggNDUuMjIxOSAxOC45ODk4IDQyLjk5NzMgMTkuMTgzMyAzOC43OThDMTcuMTExNCAzOC44Njk2IDE1LjgwMjQgMzguNzI1OCAxNS4yNTYzIDM4LjM2NjdDMTQuNDM3IDM3LjgyOCAxMy42MTY5IDM2LjE2NjcgMTIuODg5MSAzNC45OTU5QzEyLjE2MTQgMzMuODI1MSAxMC41NDYzIDMzLjY0IDkuODk0MDUgMzMuMzc4M0M5LjI0MTgyIDMzLjExNjUgOS4wNzgwOSAzMi4wNDk2IDExLjY5MTMgMzIuODU2NUMxNC4zMDQ0IDMzLjY2MzQgMTQuNDMxOSAzNS44NjA3IDE1LjI1NjMgMzYuMzc0NUMxNi4wODA2IDM2Ljg4ODMgMTguMDUxNSAzNi42NjM1IDE4Ljk0NDggMzYuMjUxOUMxOS44MzgyIDM1Ljg0MDMgMTkuNzcyNCAzNC4zMDc4IDE5LjkzMTcgMzMuNzAwN0MyMC4xMzMxIDMzLjEzNCAxOS40MjMzIDMzLjAwODMgMTkuNDA3NyAzMy4wMDM3QzE4LjUzNTUgMzMuMDAzNyAxMy45NTM5IDMyLjAwNzMgMTIuNjk1NSAyNy41NzA2QzExLjQzNyAyMy4xMzQgMTMuMDU4MSAyMC4yMzQxIDEzLjkyMjkgMTguOTg3NUMxNC40OTk1IDE4LjE1NjQgMTQuNDQ4NSAxNi4zODUyIDEzLjc2OTkgMTMuNjczN0MxNi4yMzM1IDEzLjM1ODkgMTguMTM0NyAxNC4xMzQzIDE5LjQ3MzQgMTYuMDAwMUMxOS40NzQ3IDE2LjAxMDggMjEuMjI4NSAxNC45NTcyIDI0LjAwMDMgMTQuOTU3MkMyNi43NzIgMTQuOTU3MiAyNy43NTUzIDE1LjgxNTQgMjguNTE0MiAxNi4wMDAxQzI5LjI3MzEgMTYuMTg0OCAyOS44OCAxMi43MzQxIDM0LjU2NjggMTMuNjczN0MzMy41ODgzIDE1LjU5NjkgMzIuNzY4OSAxOC4wMDAxIDMzLjM5NDMgMTguOTg3NUMzNC4wMTk4IDE5Ljk3NDkgMzYuNDc0NSAyMy4xMTQ3IDM0Ljk2NjYgMjcuNTcwNkMzMy45NjE0IDMwLjU0MTMgMzEuOTg1MyAzMi4zNTIzIDI5LjAzODQgMzMuMDAzN0MyOC43MDA1IDMzLjExMTUgMjguNTMxNSAzMy4yODU1IDI4LjUzMTUgMzMuNTI1NUMyOC41MzE1IDMzLjg4NTYgMjguOTg4NCAzMy45MjQ5IDI5LjY0NjUgMzUuNjExN0MzMC4wODUzIDM2LjczNjIgMzAuMTE3IDM5Ljk0OCAyOS43NDE2IDQ1LjI0N0MyOC43OTA2IDQ1LjQ4OTEgMjguMDUwOCA0NS42NTE2IDI3LjUyMjEgNDUuNzM0N0MyNi41ODQ3IDQ1Ljg4MiAyNS41NjY5IDQ1Ljk2NDYgMjQuNTY2OSA0NS45OTY1QzIzLjU2NjkgNDYuMDI4NCAyMy4yMTk2IDQ2LjAyNDggMjEuODM3IDQ1Ljg5NjFDMjAuOTE1NCA0NS44MTAzIDIwLjAzMDggNDUuNjY4OCAxOS4xODMzIDQ1LjQ3MTZaIiBmaWxsPSIjMDAwMDAwIi8+PC9zdmc+",x_=z({__name:"withImg",setup(l){const e={lat:39.925185,lng:116.400901},t={lat:39.915185,lng:116.400901};return(n,s)=>{const i=O("BMarker3d"),r=O("BMap");return y(),N(r,U(n.$attrs,{zoom:16,heading:64.5,tilt:73,enableScrollWheelZoom:""}),{default:w(()=>[S(i,{position:e,height:1200,size:200,shape:"BMAP_SHAPE_CIRCLE",icon:{imageUrl:qr,imageSize:{width:200,height:200}}},null,8,["icon"]),S(i,{position:t,height:800,size:200,shape:"BMAP_SHAPE_CIRCLE",icon:{imageUrl:qr,imageSize:{width:200,height:200}}},null,8,["icon"])]),_:1},16)}}}),w_=Object.freeze(Object.defineProperty({__proto__:null,default:x_},Symbol.toStringTag,{value:"Module"})),k_=b("span",null,"地区:",-1),S_=b("option",{value:"北京市"},"北京市",-1),T_=b("option",{value:"顺义区"},"北京市顺义区",-1),A_=b("option",{value:"四川"},"四川",-1),C_=b("option",{value:"成都"},"成都",-1),I_=[S_,T_,A_,C_],L_=z({__name:"boundaries",setup(l){const e=B(11),t=B("顺义区"),n={北京市:9,顺义区:11,四川:7,成都:9},{boundaries:s,get:i}=lo(()=>{e.value=n[t.value]});function r(){i(t.value)}return I(()=>t.value,i),(o,a)=>{const c=O("BControl"),u=O("BPolygon"),d=O("BMap");return y(),N(d,U(o.$attrs,{minZoom:3,zoom:e.value,enableScrollWheelZoom:"",onInitd:r}),{default:w(()=>[S(c,{style:{"border-radius":"4px","box-shadow":"0 2px 6px 0 rgba(27, 142, 236, 0.5)",color:"#666",background:"#fff",padding:"10px"},offset:{x:15,y:15}},{default:w(()=>[k_,he(b("select",{class:"mySelect light no-m-b no-m-t","onUpdate:modelValue":a[0]||(a[0]=h=>t.value=h)},I_,512),[[xn,t.value]])]),_:1}),(y(),N(u,{key:t.value,isBoundary:"",path:g(s),"stroke-color":"#000",fillColor:"blue","stroke-weight":1},null,8,["path"]))]),_:1},16,["zoom"])}}}),z_=Object.freeze(Object.defineProperty({__proto__:null,default:L_},Symbol.toStringTag,{value:"Module"})),B_={};function O_(l,e){const t=O("BPolygon"),n=O("BMap");return y(),N(n,He(We(l.$attrs)),{default:w(()=>[S(t,{enableEditing:"",path:[{lng:116.387112,lat:39.920977},{lng:116.385243,lat:39.913063},{lng:116.394226,lat:39.917988},{lng:116.401772,lat:39.921364},{lng:116.41248,lat:39.92789}],"stroke-color":"#000",fillColor:"#f90","stroke-opacity":.4,"stroke-weight":1})]),_:1},16)}const N_=R(B_,[["render",O_]]),P_=Object.freeze(Object.defineProperty({__proto__:null,default:N_},Symbol.toStringTag,{value:"Module"})),E_={};function D_(l,e){const t=O("BPolyline"),n=O("BMap");return y(),N(n,U(l.$attrs,{zoom:16}),{default:w(()=>[S(t,{path:[{lng:116.404,lat:39.915},{lng:116.404,lat:39.92},{lng:116.41,lat:39.92},{lng:116.41,lat:39.915}],"stroke-color":"#000","stroke-opacity":1,"stroke-weight":3,enableEditing:""})]),_:1},16)}const R_=R(E_,[["render",D_]]),$_=Object.freeze(Object.defineProperty({__proto__:null,default:R_},Symbol.toStringTag,{value:"Module"})),j_=z({__name:"prism",setup(l){const e=B(.5),t=B("北京市"),{boundaries:n,get:s}=lo();function i(){s(t.value)}function r(){e.value=1}function o(){e.value=.5}return(a,c)=>{const u=O("BPrism"),d=O("BMap");return y(),N(d,U(a.$attrs,{zoom:10,tilt:50,enableScrollWheelZoom:"",mapStyleId:"980161f3645989feac25a0da15da4178",onInitd:i}),{default:w(()=>[S(u,{isBoundary:"",path:g(n),autoCenter:!1,topFillOpacity:e.value,sideFillOpacity:.9,altitude:5e3,sideFillColor:"#5679ea",topFillColor:"#5679ea",onMouseover:r,onMouseout:o},null,8,["path","topFillOpacity"])]),_:1},16)}}}),F_=Object.freeze(Object.defineProperty({__proto__:null,default:j_},Symbol.toStringTag,{value:"Module"})),V_=/(\.\.\/)*examples\//g,q_=((l,e)=>{const t=Object.create(null);return Object.keys(l).forEach(n=>{t[n.replace(e,"").replace(".vue","")]=l[n].default}),t})(Object.assign({"../examples/autoComplete/index.vue":gp,"../examples/context-menu/index.vue":_p,"../examples/control/cityList.vue":xp,"../examples/control/copyRight.vue":Sp,"../examples/control/custom.vue":Cp,"../examples/control/location.vue":Bp,"../examples/control/navigation3d.vue":Ep,"../examples/control/panoramaControl.vue":jp,"../examples/control/scale.vue":Up,"../examples/control/zoom.vue":Zp,"../examples/expand/bmap-draw/draw.vue":Qp,"../examples/expand/bmap-draw/meterage.vue":Kp,"../examples/expand/mapv/3dModel.vue":fg,"../examples/expand/mapv/heatGridLayer.vue":gg,"../examples/expand/mapv/pointLayer.vue":_g,"../examples/hooks/useAddressGeocoder/batch.vue":Mg,"../examples/hooks/useAddressGeocoder/index.vue":Cg,"../examples/hooks/useBrowserLocation.vue":Pg,"../examples/hooks/useIpLocation.vue":jg,"../examples/hooks/usePointConvertor.vue":Vg,"../examples/hooks/usePointGeocoder/batch.vue":Ug,"../examples/hooks/usePointGeocoder/index.vue":Hg,"../examples/hooks/useTrackAnimation.vue":Yg,"../examples/hooks/useViewAnimation.vue":Kg,"../examples/layer/districtLayer.vue":ey,"../examples/layer/panoramaCoverage.vue":iy,"../examples/map/base.vue":vy,"../examples/map/multiInstance.vue":Cy,"../examples/map/theme1.vue":By,"../examples/map/theme2.vue":Ey,"../examples/overlay/bezierCurve.vue":jy,"../examples/overlay/circle.vue":Uy,"../examples/overlay/dynmicInfoWindow.vue":Hy,"../examples/overlay/groundOverlay.vue":Ky,"../examples/overlay/infowindow.vue":l_,"../examples/overlay/label.vue":u_,"../examples/overlay/mapMask.vue":m_,"../examples/overlay/marker.vue":b_,"../examples/overlay/marker3d/index.vue":v_,"../examples/overlay/marker3d/withImg.vue":w_,"../examples/overlay/polygon/boundaries.vue":z_,"../examples/overlay/polygon/index.vue":P_,"../examples/overlay/polyline.vue":$_,"../examples/overlay/prism.vue":F_}),V_),U_={class:"example-showcase"},G_=z({__name:"vp-example",props:{file:{type:String,required:!0},demo:{type:Object,required:!0}},setup(l){return(e,t)=>{const n=O("ClientOnly");return y(),N(n,null,{default:w(()=>[b("div",U_,[l.demo?(y(),N(Ve(l.demo),He(U({key:0},e.$attrs)),null,16)):P("",!0)])]),_:1})}}}),H_=R(G_,[["__scopeId","data-v-d08fa7a1"]]),W_={class:"example-source-wrapper"},Z_=["innerHTML"],Y_=z({__name:"vp-source-code",props:{source:{type:String,required:!0}},setup(l){const e=l,t=F(()=>decodeURIComponent(e.source));return(n,s)=>(y(),v("div",W_,[b("div",{class:"example-source language-vue",innerHTML:t.value},null,8,Z_)]))}}),Q_=R(Y_,[["__scopeId","data-v-0e5ed510"]]),Ae=l=>(de("data-v-46e56a5d"),l=l(),pe(),l),X_={class:"demo-wrapper"},K_=["innerHTML"],J_={class:"buttons"},e0={key:0,width:"16",height:"16",viewBox:"0 0 48 48",fill:"none"},t0=Ae(()=>b("path",{d:"M33 6V15H42",stroke:"currentColor","stroke-width":"4","stroke-linecap":"butt","stroke-linejoin":"round"},null,-1)),n0=Ae(()=>b("path",{d:"M15 6V15H6",stroke:"currentColor","stroke-width":"4","stroke-linecap":"butt","stroke-linejoin":"round"},null,-1)),s0=Ae(()=>b("path",{d:"M15 42V33H6",stroke:"currentColor","stroke-width":"4","stroke-linecap":"butt","stroke-linejoin":"round"},null,-1)),i0=Ae(()=>b("path",{d:"M33 42V33H41.8995",stroke:"currentColor","stroke-width":"4","stroke-linecap":"butt","stroke-linejoin":"round"},null,-1)),r0=[t0,n0,s0,i0],o0={key:1,width:"16",height:"16",viewBox:"0 0 48 48",fill:"none"},a0=Ae(()=>b("path",{d:"M33 6H42V15",stroke:"currentColor","stroke-width":"4","stroke-linecap":"butt","stroke-linejoin":"round"},null,-1)),l0=Ae(()=>b("path",{d:"M42 33V42H33",stroke:"currentColor","stroke-width":"4","stroke-linecap":"butt","stroke-linejoin":"round"},null,-1)),c0=Ae(()=>b("path",{d:"M15 42H6V33",stroke:"currentColor","stroke-width":"4","stroke-linecap":"butt","stroke-linejoin":"round"},null,-1)),u0=Ae(()=>b("path",{d:"M6 15V6H15",stroke:"currentColor","stroke-width":"4","stroke-linecap":"butt","stroke-linejoin":"round"},null,-1)),h0=[a0,l0,c0,u0],d0={key:0,xmlns:"http://www.w3.org/2000/svg",width:"18",height:"18",fill:"currentColor",class:"bi bi-check2",viewBox:"0 0 16 16"},p0=Ae(()=>b("path",{d:"M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0z"},null,-1)),f0=[p0],m0={key:1,width:"16",height:"16",viewBox:"0 0 48 48",fill:"none"},g0=Ae(()=>b("path",{d:"M13 12.4316V7.8125C13 6.2592 14.2592 5 15.8125 5H40.1875C41.7408 5 43 6.2592 43 7.8125V32.1875C43 33.7408 41.7408 35 40.1875 35H35.5163",stroke:"currentColor","stroke-width":"4","stroke-linecap":"butt","stroke-linejoin":"round"},null,-1)),y0=Ae(()=>b("path",{d:"M32.1875 13H7.8125C6.2592 13 5 14.2592 5 15.8125V40.1875C5 41.7408 6.2592 43 7.8125 43H32.1875C33.7408 43 35 41.7408 35 40.1875V15.8125C35 14.2592 33.7408 13 32.1875 13Z",fill:"none",stroke:"currentColor","stroke-width":"4","stroke-linejoin":"round"},null,-1)),_0=[g0,y0],b0=Ae(()=>b("svg",{preserveAspectRatio:"xMidYMid meet",viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"},[b("path",{fill:"currentColor",d:"m23 12l-7.071 7.071l-1.414-1.414L20.172 12l-5.657-5.657l1.414-1.414L23 12zM3.828 12l5.657 5.657l-1.414 1.414L1 12l7.071-7.071l1.414 1.414L3.828 12z"})],-1)),M0=[b0],v0={key:0,class:"source_code-container"},x0=Ae(()=>b("span",null,"隐藏代码",-1)),w0=[x0],k0=47,S0=z({__name:"vp-demo",props:{source:{},path:{},rawSource:{},description:{}},setup(l){const e=l,t=B(),n=F(()=>decodeURIComponent(e.rawSource)),[s,i]=Qi(),[r,o]=Qi(),{copy:a,copied:c,isSupported:u}=da({source:n.value}),d=F(()=>decodeURIComponent(e.description));let h=B(),p=B();const f=pa(()=>{r.value&&_()},500);fa("resize",f);function m(){o(),r.value?_():M()}function _(){var x;const T=(x=t.value)==null?void 0:x.querySelector(".baidu-map-container");document.body.style.overflow="hidden",_t(()=>{var E;const L=(E=t.value)==null?void 0:E.querySelector(".example-showcase"),D=window.innerHeight-L.offsetHeight;h.value=T.offsetHeight,p.value=T.offsetHeight+D-k0})}function M(){document.body.style.overflow="auto",p.value=h.value}function A(T){r.value&&T.key==="Escape"&&(o(!1),M())}return Ze(()=>{document.addEventListener("keydown",A)}),bt(()=>{document.removeEventListener("keydown",A)}),(T,x)=>{const L=O("ClientOnly"),D=ma("tooltip");return y(),v("div",X_,[S(L,null,{default:w(()=>[b("p",{text:"sm",innerHTML:d.value},null,8,K_),b("div",{class:ee(["demo-container",{"full-screen":g(r)}]),ref_key:"demoContainer",ref:t},[S(H_,{height:g(p),file:T.path,demo:g(q_)[T.path]},null,8,["height","file","demo"]),b("div",J_,[he((y(),v("button",{onClick:m},[g(r)?(y(),v("svg",e0,r0)):(y(),v("svg",o0,h0))])),[[D,g(r)?"退出全屏(Esc)":"全屏"]]),g(u)?he((y(),v("button",{key:0,onClick:x[0]||(x[0]=()=>g(a)())},[g(c)?(y(),v("svg",d0,f0)):(y(),v("svg",m0,_0))])),[[D,g(c)?"复制成功":"复制代码"]]):P("",!0),he((y(),v("button",{onClick:x[1]||(x[1]=()=>g(i)())},M0)),[[D,g(s)?"隐藏代码":"显示代码"],[ga,!g(r)]])]),S(os,{name:"collapse"},{default:w(()=>[g(s)?(y(),v("div",v0,[S(Q_,{source:e.source},null,8,["source"])])):P("",!0)]),_:1}),g(s)?(y(),v("div",{key:0,class:"hide_code-btn",onClick:x[2]||(x[2]=()=>g(i)())},w0)):P("",!0)],2)]),_:1})])}}}),T0=R(S0,[["__scopeId","data-v-46e56a5d"]]),A0=l=>{l.directive("tooltip",{mounted(e,t){Ur(e,t)},updated(e,t){Ur(e,t)}})};function Ur(l,e){let t=e.arg||"top",n=e.value||"Tooltip text";l.setAttribute("position",t),l.setAttribute("tooltip",n)}const C0=["tooltip","position"],I0={name:"Tooltip"},L0=z({...I0,props:{tooltipText:{type:String,default:"Tooltip text"},position:{default:"top",type:String}},setup(l){return(e,t)=>(y(),v("span",{tooltip:l.tooltipText,position:l.position},[C(e.$slots,"default")],8,C0))}}),z0={key:0,class:"pwa-toast",role:"alertdialog","aria-labelledby":"pwa-message"},B0={class:"icon"},O0={key:0,src:"https://raw.githubusercontent.com/Tarikul-Islam-Anik/Animated-Fluent-Emojis/master/Emojis/Activities/Party%20Popper.png",alt:"Party Popper",width:"40",height:"40"},N0={key:1,src:"https://raw.githubusercontent.com/Tarikul-Islam-Anik/Animated-Fluent-Emojis/master/Emojis/Travel%20and%20places/Rocket.png",alt:"Rocket",width:"40",height:"40"},P0={class:"content"},E0={class:"title"},D0={id:"pwa-message",class:"mb-3"},R0={class:"buttons"},$0=z({__name:"ReloadPrompt",setup(l){const e=B(!1),t=B(!1);let n;function s(){e.value=!0}function i(){t.value=!0}async function r(){e.value=!1,t.value=!1}return ya(async()=>{const{registerSW:o}=await vn(async()=>{const{registerSW:a}=await import("./virtual_pwa-register.F33dMvvE.js");return{registerSW:a}},__vite__mapDeps([5,1]));n=o({immediate:!0,onOfflineReady:s,onNeedRefresh:i,onRegistered(){console.info("Service Worker registered")},onRegisterError(a){console.error("Service Worker registration error!",a)}})}),(o,a)=>e.value||t.value?(y(),v("div",z0,[b("div",B0,[t.value?(y(),v("img",O0)):(y(),v("img",N0))]),b("div",P0,[b("h2",E0,j(e.value?"Offline ":"Update"),1),b("div",D0,j(e.value?"App ready to work offline":"New content available, click the reload button to update."),1),b("div",R0,[t.value&&g(n)?(y(),v("button",{key:0,type:"button",class:"pwa-refresh myButton",onClick:a[0]||(a[0]=c=>g(n)(!0))}," Reload ")):P("",!0),b("button",{type:"button",class:"pwa-cancel myButton",onClick:r},"Close")])])])):P("",!0)}}),V0={...Ss,Layout(){return Xi(Ss.Layout,null,{"layout-bottom":()=>Xi($0)})},enhanceApp(l){Ss.enhanceApp(l);const{app:e,router:t}=l;typeof window<"u"&&I(()=>t.route.data.relativePath,n=>{n&&typeof window._hmt<"u"&&window._hmt.push(["_trackPageview",n])},{immediate:!0}),A0(e),e.component("Demo",T0),e.component("Tooltip",L0),e.use(Ni,{ak:"cwHsf5i2fAQAlijOyELx5COtkFhItaSm"})}};export{V0 as R,F0 as V,nh as c,W as u}; diff --git a/assets/chunks/vanilla-tilt.es2015.DBgKETYq.js b/assets/chunks/vanilla-tilt.es2015.DBgKETYq.js new file mode 100644 index 00000000..09b76292 --- /dev/null +++ b/assets/chunks/vanilla-tilt.es2015.DBgKETYq.js @@ -0,0 +1 @@ +class n{constructor(t,e={}){if(!(t instanceof Node))throw"Can't initialize VanillaTilt because "+t+" is not a Node.";this.width=null,this.height=null,this.clientWidth=null,this.clientHeight=null,this.left=null,this.top=null,this.gammazero=null,this.betazero=null,this.lastgammazero=null,this.lastbetazero=null,this.transitionTimeout=null,this.updateCall=null,this.event=null,this.updateBind=this.update.bind(this),this.resetBind=this.reset.bind(this),this.element=t,this.settings=this.extendSettings(e),this.reverse=this.settings.reverse?-1:1,this.resetToStart=n.isSettingTrue(this.settings["reset-to-start"]),this.glare=n.isSettingTrue(this.settings.glare),this.glarePrerender=n.isSettingTrue(this.settings["glare-prerender"]),this.fullPageListening=n.isSettingTrue(this.settings["full-page-listening"]),this.gyroscope=n.isSettingTrue(this.settings.gyroscope),this.gyroscopeSamples=this.settings.gyroscopeSamples,this.elementListener=this.getElementListener(),this.glare&&this.prepareGlare(),this.fullPageListening&&this.updateClientSize(),this.addEventListeners(),this.reset(),this.resetToStart===!1&&(this.settings.startX=0,this.settings.startY=0)}static isSettingTrue(t){return t===""||t===!0||t===1}getElementListener(){if(this.fullPageListening)return window.document;if(typeof this.settings["mouse-event-element"]=="string"){const t=document.querySelector(this.settings["mouse-event-element"]);if(t)return t}return this.settings["mouse-event-element"]instanceof Node?this.settings["mouse-event-element"]:this.element}addEventListeners(){this.onMouseEnterBind=this.onMouseEnter.bind(this),this.onMouseMoveBind=this.onMouseMove.bind(this),this.onMouseLeaveBind=this.onMouseLeave.bind(this),this.onWindowResizeBind=this.onWindowResize.bind(this),this.onDeviceOrientationBind=this.onDeviceOrientation.bind(this),this.elementListener.addEventListener("mouseenter",this.onMouseEnterBind),this.elementListener.addEventListener("mouseleave",this.onMouseLeaveBind),this.elementListener.addEventListener("mousemove",this.onMouseMoveBind),(this.glare||this.fullPageListening)&&window.addEventListener("resize",this.onWindowResizeBind),this.gyroscope&&window.addEventListener("deviceorientation",this.onDeviceOrientationBind)}removeEventListeners(){this.elementListener.removeEventListener("mouseenter",this.onMouseEnterBind),this.elementListener.removeEventListener("mouseleave",this.onMouseLeaveBind),this.elementListener.removeEventListener("mousemove",this.onMouseMoveBind),this.gyroscope&&window.removeEventListener("deviceorientation",this.onDeviceOrientationBind),(this.glare||this.fullPageListening)&&window.removeEventListener("resize",this.onWindowResizeBind)}destroy(){clearTimeout(this.transitionTimeout),this.updateCall!==null&&cancelAnimationFrame(this.updateCall),this.reset(),this.removeEventListeners(),this.element.vanillaTilt=null,delete this.element.vanillaTilt,this.element=null}onDeviceOrientation(t){if(t.gamma===null||t.beta===null)return;this.updateElementPosition(),this.gyroscopeSamples>0&&(this.lastgammazero=this.gammazero,this.lastbetazero=this.betazero,this.gammazero===null?(this.gammazero=t.gamma,this.betazero=t.beta):(this.gammazero=(t.gamma+this.lastgammazero)/2,this.betazero=(t.beta+this.lastbetazero)/2),this.gyroscopeSamples-=1);const e=this.settings.gyroscopeMaxAngleX-this.settings.gyroscopeMinAngleX,i=this.settings.gyroscopeMaxAngleY-this.settings.gyroscopeMinAngleY,s=e/this.width,l=i/this.height,a=t.gamma-(this.settings.gyroscopeMinAngleX+this.gammazero),h=t.beta-(this.settings.gyroscopeMinAngleY+this.betazero),r=a/s,o=h/l;this.updateCall!==null&&cancelAnimationFrame(this.updateCall),this.event={clientX:r+this.left,clientY:o+this.top},this.updateCall=requestAnimationFrame(this.updateBind)}onMouseEnter(){this.updateElementPosition(),this.element.style.willChange="transform",this.setTransition()}onMouseMove(t){this.updateCall!==null&&cancelAnimationFrame(this.updateCall),this.event=t,this.updateCall=requestAnimationFrame(this.updateBind)}onMouseLeave(){this.setTransition(),this.settings.reset&&requestAnimationFrame(this.resetBind)}reset(){this.onMouseEnter(),this.fullPageListening?this.event={clientX:(this.settings.startX+this.settings.max)/(2*this.settings.max)*this.clientWidth,clientY:(this.settings.startY+this.settings.max)/(2*this.settings.max)*this.clientHeight}:this.event={clientX:this.left+(this.settings.startX+this.settings.max)/(2*this.settings.max)*this.width,clientY:this.top+(this.settings.startY+this.settings.max)/(2*this.settings.max)*this.height};let t=this.settings.scale;this.settings.scale=1,this.update(),this.settings.scale=t,this.resetGlare()}resetGlare(){this.glare&&(this.glareElement.style.transform="rotate(180deg) translate(-50%, -50%)",this.glareElement.style.opacity="0")}getValues(){let t,e;this.fullPageListening?(t=this.event.clientX/this.clientWidth,e=this.event.clientY/this.clientHeight):(t=(this.event.clientX-this.left)/this.width,e=(this.event.clientY-this.top)/this.height),t=Math.min(Math.max(t,0),1),e=Math.min(Math.max(e,0),1);let i=(this.reverse*(this.settings.max-t*this.settings.max*2)).toFixed(2),s=(this.reverse*(e*this.settings.max*2-this.settings.max)).toFixed(2),l=Math.atan2(this.event.clientX-(this.left+this.width/2),-(this.event.clientY-(this.top+this.height/2)))*(180/Math.PI);return{tiltX:i,tiltY:s,percentageX:t*100,percentageY:e*100,angle:l}}updateElementPosition(){let t=this.element.getBoundingClientRect();this.width=this.element.offsetWidth,this.height=this.element.offsetHeight,this.left=t.left,this.top=t.top}update(){let t=this.getValues();this.element.style.transform="perspective("+this.settings.perspective+"px) rotateX("+(this.settings.axis==="x"?0:t.tiltY)+"deg) rotateY("+(this.settings.axis==="y"?0:t.tiltX)+"deg) scale3d("+this.settings.scale+", "+this.settings.scale+", "+this.settings.scale+")",this.glare&&(this.glareElement.style.transform=`rotate(${t.angle}deg) translate(-50%, -50%)`,this.glareElement.style.opacity=`${t.percentageY*this.settings["max-glare"]/100}`),this.element.dispatchEvent(new CustomEvent("tiltChange",{detail:t})),this.updateCall=null}prepareGlare(){if(!this.glarePrerender){const t=document.createElement("div");t.classList.add("js-tilt-glare");const e=document.createElement("div");e.classList.add("js-tilt-glare-inner"),t.appendChild(e),this.element.appendChild(t)}this.glareElementWrapper=this.element.querySelector(".js-tilt-glare"),this.glareElement=this.element.querySelector(".js-tilt-glare-inner"),!this.glarePrerender&&(Object.assign(this.glareElementWrapper.style,{position:"absolute",top:"0",left:"0",width:"100%",height:"100%",overflow:"hidden","pointer-events":"none","border-radius":"inherit"}),Object.assign(this.glareElement.style,{position:"absolute",top:"50%",left:"50%","pointer-events":"none","background-image":"linear-gradient(0deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%)",transform:"rotate(180deg) translate(-50%, -50%)","transform-origin":"0% 0%",opacity:"0"}),this.updateGlareSize())}updateGlareSize(){if(this.glare){const t=(this.element.offsetWidth>this.element.offsetHeight?this.element.offsetWidth:this.element.offsetHeight)*2;Object.assign(this.glareElement.style,{width:`${t}px`,height:`${t}px`})}}updateClientSize(){this.clientWidth=window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth,this.clientHeight=window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight}onWindowResize(){this.updateGlareSize(),this.updateClientSize()}setTransition(){clearTimeout(this.transitionTimeout),this.element.style.transition=this.settings.speed+"ms "+this.settings.easing,this.glare&&(this.glareElement.style.transition=`opacity ${this.settings.speed}ms ${this.settings.easing}`),this.transitionTimeout=setTimeout(()=>{this.element.style.transition="",this.glare&&(this.glareElement.style.transition="")},this.settings.speed)}extendSettings(t){let e={reverse:!1,max:15,startX:0,startY:0,perspective:1e3,easing:"cubic-bezier(.03,.98,.52,.99)",scale:1,speed:300,transition:!0,axis:null,glare:!1,"max-glare":1,"glare-prerender":!1,"full-page-listening":!1,"mouse-event-element":null,reset:!0,"reset-to-start":!0,gyroscope:!0,gyroscopeMinAngleX:-45,gyroscopeMaxAngleX:45,gyroscopeMinAngleY:-45,gyroscopeMaxAngleY:45,gyroscopeSamples:10},i={};for(var s in e)if(s in t)i[s]=t[s];else if(this.element.hasAttribute("data-tilt-"+s)){let l=this.element.getAttribute("data-tilt-"+s);try{i[s]=JSON.parse(l)}catch{i[s]=l}}else i[s]=e[s];return i}static init(t,e){t instanceof Node&&(t=[t]),t instanceof NodeList&&(t=[].slice.call(t)),t instanceof Array&&t.forEach(i=>{"vanillaTilt"in i||(i.vanillaTilt=new n(i,e))})}}typeof document<"u"&&(window.VanillaTilt=n,n.init(document.querySelectorAll("[data-tilt]")));export{n as V}; diff --git a/assets/chunks/virtual_pwa-register.F33dMvvE.js b/assets/chunks/virtual_pwa-register.F33dMvvE.js new file mode 100644 index 00000000..fac1d3cb --- /dev/null +++ b/assets/chunks/virtual_pwa-register.F33dMvvE.js @@ -0,0 +1 @@ +import{X as v}from"./framework.n6hqIsqL.js";function _(u={}){const{immediate:g=!1,onNeedRefresh:r,onOfflineReady:i,onRegistered:o,onRegisteredSW:d,onRegisterError:n}=u;let e,c,s;const w=async(p=!0)=>{await c,await(s==null?void 0:s())};async function m(){if("serviceWorker"in navigator){const{Workbox:p}=await v(async()=>{const{Workbox:t}=await import("./workbox-window.prod.es5.B_6ZJHoI.js");return{Workbox:t}},[]);e=new p("/vue3-baidu-map-gl/sw.js",{scope:"/vue3-baidu-map-gl/",type:"classic"}),s=async()=>{await(e==null?void 0:e.messageSkipWaiting())};{let t=!1;const l=()=>{t=!0,e==null||e.addEventListener("controlling",a=>{a.isUpdate&&window.location.reload()}),r==null||r()};e.addEventListener("installed",a=>{typeof a.isUpdate>"u"?typeof a.isExternal<"u"?a.isExternal?l():!t&&(i==null||i()):a.isExternal?window.location.reload():!t&&(i==null||i()):a.isUpdate||i==null||i()}),e.addEventListener("waiting",l),e.addEventListener("externalwaiting",l)}e.register({immediate:g}).then(t=>{d?d("/vue3-baidu-map-gl/sw.js",t):o==null||o(t)}).catch(t=>{n==null||n(t)})}}return c=m(),w}export{_ as registerSW}; diff --git a/assets/chunks/workbox-window.prod.es5.B_6ZJHoI.js b/assets/chunks/workbox-window.prod.es5.B_6ZJHoI.js new file mode 100644 index 00000000..0c48675b --- /dev/null +++ b/assets/chunks/workbox-window.prod.es5.B_6ZJHoI.js @@ -0,0 +1,2 @@ +try{self["workbox:window:7.0.0"]&&_()}catch{}function S(t,o){return new Promise(function(e){var i=new MessageChannel;i.port1.onmessage=function(f){e(f.data)},t.postMessage(o,[i.port2])})}function W(t,o){for(var e=0;et.length)&&(o=t.length);for(var e=0,i=new Array(o);e"u"||t[Symbol.iterator]==null){if(Array.isArray(t)||(e=function(f,d){if(f){if(typeof f=="string")return E(f,d);var h=Object.prototype.toString.call(f).slice(8,-1);return h==="Object"&&f.constructor&&(h=f.constructor.name),h==="Map"||h==="Set"?Array.from(f):h==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(h)?E(f,d):void 0}}(t))||o){e&&(t=e);var i=0;return function(){return i>=t.length?{done:!0}:{done:!1,value:t[i++]}}}throw new TypeError(`Invalid attempt to iterate non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}return(e=t[Symbol.iterator]()).next.bind(e)}try{self["workbox:core:7.0.0"]&&_()}catch{}var y=function(){var t=this;this.promise=new Promise(function(o,e){t.resolve=o,t.reject=e})};function b(t,o){var e=location.href;return new URL(t,e).href===new URL(o,e).href}var g=function(t,o){this.type=t,Object.assign(this,o)};function p(t,o,e){return e?o?o(t):t:(t&&t.then||(t=Promise.resolve(t)),o?t.then(o):t)}function L(){}var j={type:"SKIP_WAITING"};function P(t,o){return t&&t.then?t.then(L):Promise.resolve()}var x=function(t){var o,e;function i(v,c){var n,r;return c===void 0&&(c={}),(n=t.call(this)||this).nn={},n.tn=0,n.rn=new y,n.en=new y,n.on=new y,n.un=0,n.an=new Set,n.cn=function(){var s=n.fn,a=s.installing;n.tn>0||!b(a.scriptURL,n.sn.toString())||performance.now()>n.un+6e4?(n.vn=a,s.removeEventListener("updatefound",n.cn)):(n.hn=a,n.an.add(a),n.rn.resolve(a)),++n.tn,a.addEventListener("statechange",n.ln)},n.ln=function(s){var a=n.fn,u=s.target,l=u.state,m=u===n.vn,w={sw:u,isExternal:m,originalEvent:s};!m&&n.mn&&(w.isUpdate=!0),n.dispatchEvent(new g(l,w)),l==="installed"?n.wn=self.setTimeout(function(){l==="installed"&&a.waiting===u&&n.dispatchEvent(new g("waiting",w))},200):l==="activating"&&(clearTimeout(n.wn),m||n.en.resolve(u))},n.dn=function(s){var a=n.hn,u=a!==navigator.serviceWorker.controller;n.dispatchEvent(new g("controlling",{isExternal:u,originalEvent:s,sw:a,isUpdate:n.mn})),u||n.on.resolve(a)},n.gn=(r=function(s){var a=s.data,u=s.ports,l=s.source;return p(n.getSW(),function(){n.an.has(l)&&n.dispatchEvent(new g("message",{data:a,originalEvent:s,ports:u,sw:l}))})},function(){for(var s=[],a=0;a","title":"化繁 => 为简","details":"将百度地图繁琐的 API 封装进组件,你只需关注组件本身"},{"icon":"\\"Package\\"","title":"完整","details":"20+ 高质量的开箱即用 Vue 3 组件以及 5+ hooks 封装"},{"icon":"\\"Triangular","title":"易用","details":"遵循直觉的、简约的 Api 设计"},{"icon":"\\"High","title":"高性能","details":"Composition Api,更好的性能"},{"icon":"\\"Hammer\\"","title":"不是 AnyScript","details":"完整的 TypeScript 支持,更好的体验"},{"icon":"\\"Globe","title":"WebGL","details":"基于百度地图Gl版SDK,WebGL对地图、覆盖物等进行渲染,支持3D视角展示地图"}]},"headers":[],"relativePath":"index.md","filePath":"index.md","lastUpdated":1724785300000}'),l={name:"index.md"},h=i({...l,setup(o){return a(()=>{const t=document.querySelector(".image");e.init(t,{reverse:!0,transition:!0})}),(t,r)=>(s(),n("div"))}});export{c as __pageData,h as default}; diff --git a/assets/index.md.CiNBW8e4.lean.js b/assets/index.md.CiNBW8e4.lean.js new file mode 100644 index 00000000..f694078f --- /dev/null +++ b/assets/index.md.CiNBW8e4.lean.js @@ -0,0 +1 @@ +import{V as e}from"./chunks/vanilla-tilt.es2015.DBgKETYq.js";import{d as i,y as a,c as n,o as s}from"./chunks/framework.n6hqIsqL.js";const c=JSON.parse('{"title":"Vue3 Baidu Map Gl","description":"","frontmatter":{"layout":"home","title":"Vue3 Baidu Map Gl","hero":{"name":"Vue3 Baidu Map Gl","text":"Vue3 & BMapGL 组件库 + hooks 库","tagline":"易用 & 完整 & 性能不错","image":{"src":"/logo.svg","alt":"Vue3 BaiduMap GL"},"actions":[{"theme":"brand","text":"开始使用","link":"/zh-CN/guide/introduction"},{"theme":"alt","text":"View on GitHub","link":"https://github.com/yue1123/vue3-baidu-map-gl"}]},"features":[{"icon":"\\"Rocket\\"","title":"化繁 => 为简","details":"将百度地图繁琐的 API 封装进组件,你只需关注组件本身"},{"icon":"\\"Package\\"","title":"完整","details":"20+ 高质量的开箱即用 Vue 3 组件以及 5+ hooks 封装"},{"icon":"\\"Triangular","title":"易用","details":"遵循直觉的、简约的 Api 设计"},{"icon":"\\"High","title":"高性能","details":"Composition Api,更好的性能"},{"icon":"\\"Hammer\\"","title":"不是 AnyScript","details":"完整的 TypeScript 支持,更好的体验"},{"icon":"\\"Globe","title":"WebGL","details":"基于百度地图Gl版SDK,WebGL对地图、覆盖物等进行渲染,支持3D视角展示地图"}]},"headers":[],"relativePath":"index.md","filePath":"index.md","lastUpdated":1724785300000}'),l={name:"index.md"},h=i({...l,setup(o){return a(()=>{const t=document.querySelector(".image");e.init(t,{reverse:!0,transition:!0})}),(t,r)=>(s(),n("div"))}});export{c as __pageData,h as default}; diff --git a/assets/inter-italic-cyrillic-ext.r48I6akx.woff2 b/assets/inter-italic-cyrillic-ext.r48I6akx.woff2 new file mode 100644 index 00000000..b6b603d5 Binary files /dev/null and b/assets/inter-italic-cyrillic-ext.r48I6akx.woff2 differ diff --git a/assets/inter-italic-cyrillic.By2_1cv3.woff2 b/assets/inter-italic-cyrillic.By2_1cv3.woff2 new file mode 100644 index 00000000..def40a4f Binary files /dev/null and b/assets/inter-italic-cyrillic.By2_1cv3.woff2 differ diff --git a/assets/inter-italic-greek-ext.1u6EdAuj.woff2 b/assets/inter-italic-greek-ext.1u6EdAuj.woff2 new file mode 100644 index 00000000..e070c3d3 Binary files /dev/null and b/assets/inter-italic-greek-ext.1u6EdAuj.woff2 differ diff --git a/assets/inter-italic-greek.DJ8dCoTZ.woff2 b/assets/inter-italic-greek.DJ8dCoTZ.woff2 new file mode 100644 index 00000000..a3c16ca4 Binary files /dev/null and b/assets/inter-italic-greek.DJ8dCoTZ.woff2 differ diff --git a/assets/inter-italic-latin-ext.CN1xVJS-.woff2 b/assets/inter-italic-latin-ext.CN1xVJS-.woff2 new file mode 100644 index 00000000..2210a899 Binary files /dev/null and b/assets/inter-italic-latin-ext.CN1xVJS-.woff2 differ diff --git a/assets/inter-italic-latin.C2AdPX0b.woff2 b/assets/inter-italic-latin.C2AdPX0b.woff2 new file mode 100644 index 00000000..790d62dc Binary files /dev/null and b/assets/inter-italic-latin.C2AdPX0b.woff2 differ diff --git a/assets/inter-italic-vietnamese.BSbpV94h.woff2 b/assets/inter-italic-vietnamese.BSbpV94h.woff2 new file mode 100644 index 00000000..1eec0775 Binary files /dev/null and b/assets/inter-italic-vietnamese.BSbpV94h.woff2 differ diff --git a/assets/inter-roman-cyrillic-ext.BBPuwvHQ.woff2 b/assets/inter-roman-cyrillic-ext.BBPuwvHQ.woff2 new file mode 100644 index 00000000..2cfe6153 Binary files /dev/null and b/assets/inter-roman-cyrillic-ext.BBPuwvHQ.woff2 differ diff --git a/assets/inter-roman-cyrillic.C5lxZ8CY.woff2 b/assets/inter-roman-cyrillic.C5lxZ8CY.woff2 new file mode 100644 index 00000000..e3886dd1 Binary files /dev/null and b/assets/inter-roman-cyrillic.C5lxZ8CY.woff2 differ diff --git a/assets/inter-roman-greek-ext.CqjqNYQ-.woff2 b/assets/inter-roman-greek-ext.CqjqNYQ-.woff2 new file mode 100644 index 00000000..36d67487 Binary files /dev/null and b/assets/inter-roman-greek-ext.CqjqNYQ-.woff2 differ diff --git a/assets/inter-roman-greek.BBVDIX6e.woff2 b/assets/inter-roman-greek.BBVDIX6e.woff2 new file mode 100644 index 00000000..2bed1e85 Binary files /dev/null and b/assets/inter-roman-greek.BBVDIX6e.woff2 differ diff --git a/assets/inter-roman-latin-ext.4ZJIpNVo.woff2 b/assets/inter-roman-latin-ext.4ZJIpNVo.woff2 new file mode 100644 index 00000000..9a8d1e2b Binary files /dev/null and b/assets/inter-roman-latin-ext.4ZJIpNVo.woff2 differ diff --git a/assets/inter-roman-latin.Di8DUHzh.woff2 b/assets/inter-roman-latin.Di8DUHzh.woff2 new file mode 100644 index 00000000..07d3c53a Binary files /dev/null and b/assets/inter-roman-latin.Di8DUHzh.woff2 differ diff --git a/assets/inter-roman-vietnamese.BjW4sHH5.woff2 b/assets/inter-roman-vietnamese.BjW4sHH5.woff2 new file mode 100644 index 00000000..57bdc22a Binary files /dev/null and b/assets/inter-roman-vietnamese.BjW4sHH5.woff2 differ diff --git a/assets/sponsor.md.rapiUBvt.js b/assets/sponsor.md.rapiUBvt.js new file mode 100644 index 00000000..0f51f5f1 --- /dev/null +++ b/assets/sponsor.md.rapiUBvt.js @@ -0,0 +1 @@ +import{d,s as r,c as h,j as t,a7 as l,ak as n,a as s,ah as o,al as p,o as u}from"./chunks/framework.n6hqIsqL.js";const c="/vue3-baidu-map-gl/aliPay.jpg",_="/vue3-baidu-map-gl/weiCharPay.jpg",m=t("h1",{id:"赞助作者-☕️",tabindex:"-1"},[s("赞助作者 ☕️ "),t("a",{class:"header-anchor",href:"#赞助作者-☕️","aria-label":'Permalink to "赞助作者 ☕️"'},"​")],-1),y=t("br",null,null,-1),b=t("br",null,null,-1),g=t("p",null,"维护和开发一个开源项目需要花费大量时间和精力。如果您觉得这个项目对您有所帮助,考虑用一杯咖啡的价格来鼓励和支持我们的工作。您的赞助将激励我们更加积极地更新和改进项目!",-1),v=t("p",null,"或者,给我们的项目点个 star ⭐️,这对于我们来说意义重大。这将有助于让更多的人知道我们的项目,增加项目的曝光度和受欢迎程度。",-1),f=t("h2",{id:"如何赞助",tabindex:"-1"},[s("如何赞助 "),t("a",{class:"header-anchor",href:"#如何赞助","aria-label":'Permalink to "如何赞助"'},"​")],-1),x=t("p",null,"您可以通过微信或者支付宝扫描下面二维码进行赞助,我们会在下面展示您的昵称信息(如果您介意展示,也可在留言中说明)。",-1),P=t("p",null,"非常感谢您的支持。",-1),k=t("br",null,null,-1),w=t("br",null,null,-1),j={class:"CardAnimation appear",style:{display:"inline-block"}},A=t("img",{width:"300",src:c,alt:"",style:{"border-radius":"12px"}},null,-1),C=[A],V={class:"CardAnimation appear",style:{display:"inline-block"}},E=t("img",{width:"300",style:{"border-radius":"12px"},src:_,alt:""},null,-1),S=[E],F=p('

当前赞助者

昵称 Partying Face
充电 High Voltage
友**_A10¥
Song 丶**成眷88.88¥
**满200¥
热心**小马15¥
',2),q=JSON.parse('{"title":"赞助作者 ☕️","description":"","frontmatter":{},"headers":[],"relativePath":"sponsor.md","filePath":"sponsor.md","lastUpdated":1724785300000}'),N={name:"sponsor.md"},D=d({...N,setup(T){const a=r("weiChatPay");return(B,e)=>(u(),h("div",null,[m,y,b,g,v,f,x,P,t("label",null,[l(t("input",{type:"radio","onUpdate:modelValue":e[0]||(e[0]=i=>a.value=i),value:"weiChatPay",name:"pay-type"},null,512),[[n,a.value]]),s(" 微信 ")]),t("label",null,[l(t("input",{type:"radio","onUpdate:modelValue":e[1]||(e[1]=i=>a.value=i),value:"aliPay",name:"pay-type"},null,512),[[n,a.value]]),s(" 支付宝 ")]),k,w,l(t("div",j,C,512),[[o,a.value==="aliPay"]]),l(t("div",V,S,512),[[o,a.value==="weiChatPay"]]),F]))}});export{q as __pageData,D as default}; diff --git a/assets/sponsor.md.rapiUBvt.lean.js b/assets/sponsor.md.rapiUBvt.lean.js new file mode 100644 index 00000000..0f51f5f1 --- /dev/null +++ b/assets/sponsor.md.rapiUBvt.lean.js @@ -0,0 +1 @@ +import{d,s as r,c as h,j as t,a7 as l,ak as n,a as s,ah as o,al as p,o as u}from"./chunks/framework.n6hqIsqL.js";const c="/vue3-baidu-map-gl/aliPay.jpg",_="/vue3-baidu-map-gl/weiCharPay.jpg",m=t("h1",{id:"赞助作者-☕️",tabindex:"-1"},[s("赞助作者 ☕️ "),t("a",{class:"header-anchor",href:"#赞助作者-☕️","aria-label":'Permalink to "赞助作者 ☕️"'},"​")],-1),y=t("br",null,null,-1),b=t("br",null,null,-1),g=t("p",null,"维护和开发一个开源项目需要花费大量时间和精力。如果您觉得这个项目对您有所帮助,考虑用一杯咖啡的价格来鼓励和支持我们的工作。您的赞助将激励我们更加积极地更新和改进项目!",-1),v=t("p",null,"或者,给我们的项目点个 star ⭐️,这对于我们来说意义重大。这将有助于让更多的人知道我们的项目,增加项目的曝光度和受欢迎程度。",-1),f=t("h2",{id:"如何赞助",tabindex:"-1"},[s("如何赞助 "),t("a",{class:"header-anchor",href:"#如何赞助","aria-label":'Permalink to "如何赞助"'},"​")],-1),x=t("p",null,"您可以通过微信或者支付宝扫描下面二维码进行赞助,我们会在下面展示您的昵称信息(如果您介意展示,也可在留言中说明)。",-1),P=t("p",null,"非常感谢您的支持。",-1),k=t("br",null,null,-1),w=t("br",null,null,-1),j={class:"CardAnimation appear",style:{display:"inline-block"}},A=t("img",{width:"300",src:c,alt:"",style:{"border-radius":"12px"}},null,-1),C=[A],V={class:"CardAnimation appear",style:{display:"inline-block"}},E=t("img",{width:"300",style:{"border-radius":"12px"},src:_,alt:""},null,-1),S=[E],F=p('

当前赞助者

昵称 Partying Face
充电 High Voltage
友**_A10¥
Song 丶**成眷88.88¥
**满200¥
热心**小马15¥
',2),q=JSON.parse('{"title":"赞助作者 ☕️","description":"","frontmatter":{},"headers":[],"relativePath":"sponsor.md","filePath":"sponsor.md","lastUpdated":1724785300000}'),N={name:"sponsor.md"},D=d({...N,setup(T){const a=r("weiChatPay");return(B,e)=>(u(),h("div",null,[m,y,b,g,v,f,x,P,t("label",null,[l(t("input",{type:"radio","onUpdate:modelValue":e[0]||(e[0]=i=>a.value=i),value:"weiChatPay",name:"pay-type"},null,512),[[n,a.value]]),s(" 微信 ")]),t("label",null,[l(t("input",{type:"radio","onUpdate:modelValue":e[1]||(e[1]=i=>a.value=i),value:"aliPay",name:"pay-type"},null,512),[[n,a.value]]),s(" 支付宝 ")]),k,w,l(t("div",j,C,512),[[o,a.value==="aliPay"]]),l(t("div",V,S,512),[[o,a.value==="weiChatPay"]]),F]))}});export{q as __pageData,D as default}; diff --git a/assets/style.DQDgy0V6.css b/assets/style.DQDgy0V6.css new file mode 100644 index 00000000..5b3c917f --- /dev/null +++ b/assets/style.DQDgy0V6.css @@ -0,0 +1 @@ +.dark .BMapLabel{color:#333}[data-v-48ae9e32] img{max-width:none}[data-v-48ae9e32] h2{margin:0;border-top:none;padding-top:0;letter-spacing:initial;line-height:initial}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/vue3-baidu-map-gl/assets/inter-roman-cyrillic-ext.BBPuwvHQ.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/vue3-baidu-map-gl/assets/inter-roman-cyrillic.C5lxZ8CY.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/vue3-baidu-map-gl/assets/inter-roman-greek-ext.CqjqNYQ-.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/vue3-baidu-map-gl/assets/inter-roman-greek.BBVDIX6e.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/vue3-baidu-map-gl/assets/inter-roman-vietnamese.BjW4sHH5.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/vue3-baidu-map-gl/assets/inter-roman-latin-ext.4ZJIpNVo.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/vue3-baidu-map-gl/assets/inter-roman-latin.Di8DUHzh.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/vue3-baidu-map-gl/assets/inter-italic-cyrillic-ext.r48I6akx.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/vue3-baidu-map-gl/assets/inter-italic-cyrillic.By2_1cv3.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/vue3-baidu-map-gl/assets/inter-italic-greek-ext.1u6EdAuj.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/vue3-baidu-map-gl/assets/inter-italic-greek.DJ8dCoTZ.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/vue3-baidu-map-gl/assets/inter-italic-vietnamese.BSbpV94h.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/vue3-baidu-map-gl/assets/inter-italic-latin-ext.CN1xVJS-.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(/vue3-baidu-map-gl/assets/inter-italic-latin.C2AdPX0b.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Punctuation SC;font-weight:400;src:local("PingFang SC Regular"),local("Noto Sans CJK SC"),local("Microsoft YaHei");unicode-range:U+201C,U+201D,U+2018,U+2019,U+2E3A,U+2014,U+2013,U+2026,U+00B7,U+007E,U+002F}@font-face{font-family:Punctuation SC;font-weight:500;src:local("PingFang SC Medium"),local("Noto Sans CJK SC"),local("Microsoft YaHei");unicode-range:U+201C,U+201D,U+2018,U+2019,U+2E3A,U+2014,U+2013,U+2026,U+00B7,U+007E,U+002F}@font-face{font-family:Punctuation SC;font-weight:600;src:local("PingFang SC Semibold"),local("Noto Sans CJK SC Bold"),local("Microsoft YaHei Bold");unicode-range:U+201C,U+201D,U+2018,U+2019,U+2E3A,U+2014,U+2013,U+2026,U+00B7,U+007E,U+002F}@font-face{font-family:Punctuation SC;font-weight:700;src:local("PingFang SC Semibold"),local("Noto Sans CJK SC Bold"),local("Microsoft YaHei Bold");unicode-range:U+201C,U+201D,U+2018,U+2019,U+2E3A,U+2014,U+2013,U+2026,U+00B7,U+007E,U+002F}:root{--vp-c-white: #ffffff;--vp-c-black: #000000;--vp-c-neutral: var(--vp-c-black);--vp-c-neutral-inverse: var(--vp-c-white)}.dark{--vp-c-neutral: var(--vp-c-white);--vp-c-neutral-inverse: var(--vp-c-black)}:root{--vp-c-gray-1: #dddde3;--vp-c-gray-2: #e4e4e9;--vp-c-gray-3: #ebebef;--vp-c-gray-soft: rgba(142, 150, 170, .14);--vp-c-indigo-1: #3451b2;--vp-c-indigo-2: #3a5ccc;--vp-c-indigo-3: #5672cd;--vp-c-indigo-soft: rgba(100, 108, 255, .14);--vp-c-purple-1: #6f42c1;--vp-c-purple-2: #7e4cc9;--vp-c-purple-3: #8e5cd9;--vp-c-purple-soft: rgba(159, 122, 234, .14);--vp-c-green-1: #18794e;--vp-c-green-2: #299764;--vp-c-green-3: #30a46c;--vp-c-green-soft: rgba(16, 185, 129, .14);--vp-c-yellow-1: #915930;--vp-c-yellow-2: #946300;--vp-c-yellow-3: #9f6a00;--vp-c-yellow-soft: rgba(234, 179, 8, .14);--vp-c-red-1: #b8272c;--vp-c-red-2: #d5393e;--vp-c-red-3: #e0575b;--vp-c-red-soft: rgba(244, 63, 94, .14);--vp-c-sponsor: #db2777}.dark{--vp-c-gray-1: #515c67;--vp-c-gray-2: #414853;--vp-c-gray-3: #32363f;--vp-c-gray-soft: rgba(101, 117, 133, .16);--vp-c-indigo-1: #a8b1ff;--vp-c-indigo-2: #5c73e7;--vp-c-indigo-3: #3e63dd;--vp-c-indigo-soft: rgba(100, 108, 255, .16);--vp-c-purple-1: #c8abfa;--vp-c-purple-2: #a879e6;--vp-c-purple-3: #8e5cd9;--vp-c-purple-soft: rgba(159, 122, 234, .16);--vp-c-green-1: #3dd68c;--vp-c-green-2: #30a46c;--vp-c-green-3: #298459;--vp-c-green-soft: rgba(16, 185, 129, .16);--vp-c-yellow-1: #f9b44e;--vp-c-yellow-2: #da8b17;--vp-c-yellow-3: #a46a0a;--vp-c-yellow-soft: rgba(234, 179, 8, .16);--vp-c-red-1: #f66f81;--vp-c-red-2: #f14158;--vp-c-red-3: #b62a3c;--vp-c-red-soft: rgba(244, 63, 94, .16)}:root{--vp-c-bg: #ffffff;--vp-c-bg-alt: #f6f6f7;--vp-c-bg-elv: #ffffff;--vp-c-bg-soft: #f6f6f7}.dark{--vp-c-bg: #1b1b1f;--vp-c-bg-alt: #161618;--vp-c-bg-elv: #202127;--vp-c-bg-soft: #202127}:root{--vp-c-border: #c2c2c4;--vp-c-divider: #e2e2e3;--vp-c-gutter: #e2e2e3}.dark{--vp-c-border: #3c3f44;--vp-c-divider: #2e2e32;--vp-c-gutter: #000000}:root{--vp-c-text-1: rgba(60, 60, 67);--vp-c-text-2: rgba(60, 60, 67, .78);--vp-c-text-3: rgba(60, 60, 67, .56)}.dark{--vp-c-text-1: rgba(255, 255, 245, .86);--vp-c-text-2: rgba(235, 235, 245, .6);--vp-c-text-3: rgba(235, 235, 245, .38)}:root{--vp-c-default-1: var(--vp-c-gray-1);--vp-c-default-2: var(--vp-c-gray-2);--vp-c-default-3: var(--vp-c-gray-3);--vp-c-default-soft: var(--vp-c-gray-soft);--vp-c-brand-1: var(--vp-c-indigo-1);--vp-c-brand-2: var(--vp-c-indigo-2);--vp-c-brand-3: var(--vp-c-indigo-3);--vp-c-brand-soft: var(--vp-c-indigo-soft);--vp-c-brand: var(--vp-c-brand-1);--vp-c-tip-1: var(--vp-c-brand-1);--vp-c-tip-2: var(--vp-c-brand-2);--vp-c-tip-3: var(--vp-c-brand-3);--vp-c-tip-soft: var(--vp-c-brand-soft);--vp-c-note-1: var(--vp-c-brand-1);--vp-c-note-2: var(--vp-c-brand-2);--vp-c-note-3: var(--vp-c-brand-3);--vp-c-note-soft: var(--vp-c-brand-soft);--vp-c-success-1: var(--vp-c-green-1);--vp-c-success-2: var(--vp-c-green-2);--vp-c-success-3: var(--vp-c-green-3);--vp-c-success-soft: var(--vp-c-green-soft);--vp-c-important-1: var(--vp-c-purple-1);--vp-c-important-2: var(--vp-c-purple-2);--vp-c-important-3: var(--vp-c-purple-3);--vp-c-important-soft: var(--vp-c-purple-soft);--vp-c-warning-1: var(--vp-c-yellow-1);--vp-c-warning-2: var(--vp-c-yellow-2);--vp-c-warning-3: var(--vp-c-yellow-3);--vp-c-warning-soft: var(--vp-c-yellow-soft);--vp-c-danger-1: var(--vp-c-red-1);--vp-c-danger-2: var(--vp-c-red-2);--vp-c-danger-3: var(--vp-c-red-3);--vp-c-danger-soft: var(--vp-c-red-soft);--vp-c-caution-1: var(--vp-c-red-1);--vp-c-caution-2: var(--vp-c-red-2);--vp-c-caution-3: var(--vp-c-red-3);--vp-c-caution-soft: var(--vp-c-red-soft)}:root{--vp-font-family-base: "Inter", ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--vp-font-family-mono: ui-monospace, "Menlo", "Monaco", "Consolas", "Liberation Mono", "Courier New", monospace;font-optical-sizing:auto}:root:where(:lang(zh)){--vp-font-family-base: "Punctuation SC", "Inter", ui-sans-serif, system-ui, "PingFang SC", "Noto Sans CJK SC", "Noto Sans SC", "Heiti SC", "Microsoft YaHei", "DengXian", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"}:root{--vp-shadow-1: 0 1px 2px rgba(0, 0, 0, .04), 0 1px 2px rgba(0, 0, 0, .06);--vp-shadow-2: 0 3px 12px rgba(0, 0, 0, .07), 0 1px 4px rgba(0, 0, 0, .07);--vp-shadow-3: 0 12px 32px rgba(0, 0, 0, .1), 0 2px 6px rgba(0, 0, 0, .08);--vp-shadow-4: 0 14px 44px rgba(0, 0, 0, .12), 0 3px 9px rgba(0, 0, 0, .12);--vp-shadow-5: 0 18px 56px rgba(0, 0, 0, .16), 0 4px 12px rgba(0, 0, 0, .16)}:root{--vp-z-index-footer: 10;--vp-z-index-local-nav: 20;--vp-z-index-nav: 30;--vp-z-index-layout-top: 40;--vp-z-index-backdrop: 50;--vp-z-index-sidebar: 60}@media (min-width: 960px){:root{--vp-z-index-sidebar: 25}}:root{--vp-layout-max-width: 1440px}:root{--vp-header-anchor-symbol: "#"}:root{--vp-code-line-height: 1.7;--vp-code-font-size: .875em;--vp-code-color: var(--vp-c-brand-1);--vp-code-link-color: var(--vp-c-brand-1);--vp-code-link-hover-color: var(--vp-c-brand-2);--vp-code-bg: var(--vp-c-default-soft);--vp-code-block-color: var(--vp-c-text-2);--vp-code-block-bg: var(--vp-c-bg-alt);--vp-code-block-divider-color: var(--vp-c-gutter);--vp-code-lang-color: var(--vp-c-text-3);--vp-code-line-highlight-color: var(--vp-c-default-soft);--vp-code-line-number-color: var(--vp-c-text-3);--vp-code-line-diff-add-color: var(--vp-c-success-soft);--vp-code-line-diff-add-symbol-color: var(--vp-c-success-1);--vp-code-line-diff-remove-color: var(--vp-c-danger-soft);--vp-code-line-diff-remove-symbol-color: var(--vp-c-danger-1);--vp-code-line-warning-color: var(--vp-c-warning-soft);--vp-code-line-error-color: var(--vp-c-danger-soft);--vp-code-copy-code-border-color: var(--vp-c-divider);--vp-code-copy-code-bg: var(--vp-c-bg-soft);--vp-code-copy-code-hover-border-color: var(--vp-c-divider);--vp-code-copy-code-hover-bg: var(--vp-c-bg);--vp-code-copy-code-active-text: var(--vp-c-text-2);--vp-code-copy-copied-text-content: "Copied";--vp-code-tab-divider: var(--vp-code-block-divider-color);--vp-code-tab-text-color: var(--vp-c-text-2);--vp-code-tab-bg: var(--vp-code-block-bg);--vp-code-tab-hover-text-color: var(--vp-c-text-1);--vp-code-tab-active-text-color: var(--vp-c-text-1);--vp-code-tab-active-bar-color: var(--vp-c-brand-1)}:root{--vp-button-brand-border: transparent;--vp-button-brand-text: var(--vp-c-white);--vp-button-brand-bg: var(--vp-c-brand-3);--vp-button-brand-hover-border: transparent;--vp-button-brand-hover-text: var(--vp-c-white);--vp-button-brand-hover-bg: var(--vp-c-brand-2);--vp-button-brand-active-border: transparent;--vp-button-brand-active-text: var(--vp-c-white);--vp-button-brand-active-bg: var(--vp-c-brand-1);--vp-button-alt-border: transparent;--vp-button-alt-text: var(--vp-c-text-1);--vp-button-alt-bg: var(--vp-c-default-3);--vp-button-alt-hover-border: transparent;--vp-button-alt-hover-text: var(--vp-c-text-1);--vp-button-alt-hover-bg: var(--vp-c-default-2);--vp-button-alt-active-border: transparent;--vp-button-alt-active-text: var(--vp-c-text-1);--vp-button-alt-active-bg: var(--vp-c-default-1);--vp-button-sponsor-border: var(--vp-c-text-2);--vp-button-sponsor-text: var(--vp-c-text-2);--vp-button-sponsor-bg: transparent;--vp-button-sponsor-hover-border: var(--vp-c-sponsor);--vp-button-sponsor-hover-text: var(--vp-c-sponsor);--vp-button-sponsor-hover-bg: transparent;--vp-button-sponsor-active-border: var(--vp-c-sponsor);--vp-button-sponsor-active-text: var(--vp-c-sponsor);--vp-button-sponsor-active-bg: transparent}:root{--vp-custom-block-font-size: 14px;--vp-custom-block-code-font-size: 13px;--vp-custom-block-info-border: transparent;--vp-custom-block-info-text: var(--vp-c-text-1);--vp-custom-block-info-bg: var(--vp-c-default-soft);--vp-custom-block-info-code-bg: var(--vp-c-default-soft);--vp-custom-block-note-border: transparent;--vp-custom-block-note-text: var(--vp-c-text-1);--vp-custom-block-note-bg: var(--vp-c-default-soft);--vp-custom-block-note-code-bg: var(--vp-c-default-soft);--vp-custom-block-tip-border: transparent;--vp-custom-block-tip-text: var(--vp-c-text-1);--vp-custom-block-tip-bg: var(--vp-c-tip-soft);--vp-custom-block-tip-code-bg: var(--vp-c-tip-soft);--vp-custom-block-important-border: transparent;--vp-custom-block-important-text: var(--vp-c-text-1);--vp-custom-block-important-bg: var(--vp-c-important-soft);--vp-custom-block-important-code-bg: var(--vp-c-important-soft);--vp-custom-block-warning-border: transparent;--vp-custom-block-warning-text: var(--vp-c-text-1);--vp-custom-block-warning-bg: var(--vp-c-warning-soft);--vp-custom-block-warning-code-bg: var(--vp-c-warning-soft);--vp-custom-block-danger-border: transparent;--vp-custom-block-danger-text: var(--vp-c-text-1);--vp-custom-block-danger-bg: var(--vp-c-danger-soft);--vp-custom-block-danger-code-bg: var(--vp-c-danger-soft);--vp-custom-block-caution-border: transparent;--vp-custom-block-caution-text: var(--vp-c-text-1);--vp-custom-block-caution-bg: var(--vp-c-caution-soft);--vp-custom-block-caution-code-bg: var(--vp-c-caution-soft);--vp-custom-block-details-border: var(--vp-custom-block-info-border);--vp-custom-block-details-text: var(--vp-custom-block-info-text);--vp-custom-block-details-bg: var(--vp-custom-block-info-bg);--vp-custom-block-details-code-bg: var(--vp-custom-block-info-code-bg)}:root{--vp-input-border-color: var(--vp-c-border);--vp-input-bg-color: var(--vp-c-bg-alt);--vp-input-switch-bg-color: var(--vp-c-default-soft)}:root{--vp-nav-height: 64px;--vp-nav-bg-color: var(--vp-c-bg);--vp-nav-screen-bg-color: var(--vp-c-bg);--vp-nav-logo-height: 24px}.hide-nav{--vp-nav-height: 0px}.hide-nav .VPSidebar{--vp-nav-height: 22px}:root{--vp-local-nav-bg-color: var(--vp-c-bg)}:root{--vp-sidebar-width: 272px;--vp-sidebar-bg-color: var(--vp-c-bg-alt)}:root{--vp-backdrop-bg-color: rgba(0, 0, 0, .6)}:root{--vp-home-hero-name-color: var(--vp-c-brand-1);--vp-home-hero-name-background: transparent;--vp-home-hero-image-background-image: none;--vp-home-hero-image-filter: none}:root{--vp-badge-info-border: transparent;--vp-badge-info-text: var(--vp-c-text-2);--vp-badge-info-bg: var(--vp-c-default-soft);--vp-badge-tip-border: transparent;--vp-badge-tip-text: var(--vp-c-tip-1);--vp-badge-tip-bg: var(--vp-c-tip-soft);--vp-badge-warning-border: transparent;--vp-badge-warning-text: var(--vp-c-warning-1);--vp-badge-warning-bg: var(--vp-c-warning-soft);--vp-badge-danger-border: transparent;--vp-badge-danger-text: var(--vp-c-danger-1);--vp-badge-danger-bg: var(--vp-c-danger-soft)}:root{--vp-carbon-ads-text-color: var(--vp-c-text-1);--vp-carbon-ads-poweredby-color: var(--vp-c-text-2);--vp-carbon-ads-bg-color: var(--vp-c-bg-soft);--vp-carbon-ads-hover-text-color: var(--vp-c-brand-1);--vp-carbon-ads-hover-poweredby-color: var(--vp-c-text-1)}:root{--vp-local-search-bg: var(--vp-c-bg);--vp-local-search-result-bg: var(--vp-c-bg);--vp-local-search-result-border: var(--vp-c-divider);--vp-local-search-result-selected-bg: var(--vp-c-bg);--vp-local-search-result-selected-border: var(--vp-c-brand-1);--vp-local-search-highlight-bg: var(--vp-c-brand-1);--vp-local-search-highlight-text: var(--vp-c-neutral-inverse)}@media (prefers-reduced-motion: reduce){*,:before,:after{animation-delay:-1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important;background-attachment:initial!important;scroll-behavior:auto!important;transition-duration:0s!important;transition-delay:0s!important}}*,:before,:after{box-sizing:border-box}html{line-height:1.4;font-size:16px;-webkit-text-size-adjust:100%}html.dark{color-scheme:dark}body{margin:0;width:100%;min-width:320px;min-height:100vh;line-height:24px;font-family:var(--vp-font-family-base);font-size:16px;font-weight:400;color:var(--vp-c-text-1);background-color:var(--vp-c-bg);font-synthesis:style;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}main{display:block}h1,h2,h3,h4,h5,h6{margin:0;line-height:24px;font-size:16px;font-weight:400}p{margin:0}strong,b{font-weight:600}a,area,button,[role=button],input,label,select,summary,textarea{touch-action:manipulation}a{color:inherit;text-decoration:inherit}ol,ul{list-style:none;margin:0;padding:0}blockquote{margin:0}pre,code,kbd,samp{font-family:var(--vp-font-family-mono)}img,svg,video,canvas,audio,iframe,embed,object{display:block}figure{margin:0}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{border:0;padding:0;line-height:inherit;color:inherit}button{padding:0;font-family:inherit;background-color:transparent;background-image:none}button:enabled,[role=button]:enabled{cursor:pointer}button:focus,button:focus-visible{outline:1px dotted;outline:4px auto -webkit-focus-ring-color}button:focus:not(:focus-visible){outline:none!important}input:focus,textarea:focus,select:focus{outline:none}table{border-collapse:collapse}input{background-color:transparent}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:var(--vp-c-text-3)}input::-ms-input-placeholder,textarea::-ms-input-placeholder{color:var(--vp-c-text-3)}input::placeholder,textarea::placeholder{color:var(--vp-c-text-3)}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}textarea{resize:vertical}select{-webkit-appearance:none}fieldset{margin:0;padding:0}h1,h2,h3,h4,h5,h6,li,p{overflow-wrap:break-word}vite-error-overlay{z-index:9999}mjx-container{overflow-x:auto}mjx-container>svg{display:inline-block;margin:auto}[class^=vpi-],[class*=" vpi-"],.vp-icon{width:1em;height:1em}[class^=vpi-].bg,[class*=" vpi-"].bg,.vp-icon.bg{background-size:100% 100%;background-color:transparent}[class^=vpi-]:not(.bg),[class*=" vpi-"]:not(.bg),.vp-icon:not(.bg){-webkit-mask:var(--icon) no-repeat;mask:var(--icon) no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%;background-color:currentColor;color:inherit}.vpi-align-left{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M21 6H3M15 12H3M17 18H3'/%3E%3C/svg%3E")}.vpi-arrow-right,.vpi-arrow-down,.vpi-arrow-left,.vpi-arrow-up{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14M12 5l7 7-7 7'/%3E%3C/svg%3E")}.vpi-chevron-right,.vpi-chevron-down,.vpi-chevron-left,.vpi-chevron-up{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E")}.vpi-chevron-down,.vpi-arrow-down{transform:rotate(90deg)}.vpi-chevron-left,.vpi-arrow-left{transform:rotate(180deg)}.vpi-chevron-up,.vpi-arrow-up{transform:rotate(-90deg)}.vpi-square-pen{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7'/%3E%3Cpath d='M18.375 2.625a2.121 2.121 0 1 1 3 3L12 15l-4 1 1-4Z'/%3E%3C/svg%3E")}.vpi-plus{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14M12 5v14'/%3E%3C/svg%3E")}.vpi-sun{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41'/%3E%3C/svg%3E")}.vpi-moon{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z'/%3E%3C/svg%3E")}.vpi-more-horizontal{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='1'/%3E%3Ccircle cx='19' cy='12' r='1'/%3E%3Ccircle cx='5' cy='12' r='1'/%3E%3C/svg%3E")}.vpi-languages{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m5 8 6 6M4 14l6-6 2-3M2 5h12M7 2h1M22 22l-5-10-5 10M14 18h6'/%3E%3C/svg%3E")}.vpi-heart{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z'/%3E%3C/svg%3E")}.vpi-search{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E")}.vpi-layout-list{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Crect width='7' height='7' x='3' y='3' rx='1'/%3E%3Crect width='7' height='7' x='3' y='14' rx='1'/%3E%3Cpath d='M14 4h7M14 9h7M14 15h7M14 20h7'/%3E%3C/svg%3E")}.vpi-delete{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M20 5H9l-7 7 7 7h11a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2ZM18 9l-6 6M12 9l6 6'/%3E%3C/svg%3E")}.vpi-corner-down-left{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m9 10-5 5 5 5'/%3E%3Cpath d='M20 4v7a4 4 0 0 1-4 4H4'/%3E%3C/svg%3E")}:root{--vp-icon-copy: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='rgba(128,128,128,1)' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Crect width='8' height='4' x='8' y='2' rx='1' ry='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3C/svg%3E");--vp-icon-copied: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='rgba(128,128,128,1)' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24'%3E%3Crect width='8' height='4' x='8' y='2' rx='1' ry='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3Cpath d='m9 14 2 2 4-4'/%3E%3C/svg%3E")}.vpi-social-discord{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.317 4.37a19.791 19.791 0 0 0-4.885-1.515.074.074 0 0 0-.079.037c-.21.375-.444.864-.608 1.25a18.27 18.27 0 0 0-5.487 0 12.64 12.64 0 0 0-.617-1.25.077.077 0 0 0-.079-.037A19.736 19.736 0 0 0 3.677 4.37a.07.07 0 0 0-.032.027C.533 9.046-.32 13.58.099 18.057a.082.082 0 0 0 .031.057 19.9 19.9 0 0 0 5.993 3.03.078.078 0 0 0 .084-.028c.462-.63.874-1.295 1.226-1.994a.076.076 0 0 0-.041-.106 13.107 13.107 0 0 1-1.872-.892.077.077 0 0 1-.008-.128 10.2 10.2 0 0 0 .372-.292.074.074 0 0 1 .077-.01c3.928 1.793 8.18 1.793 12.062 0a.074.074 0 0 1 .078.01c.12.098.246.198.373.292a.077.077 0 0 1-.006.127 12.299 12.299 0 0 1-1.873.892.077.077 0 0 0-.041.107c.36.698.772 1.362 1.225 1.993a.076.076 0 0 0 .084.028 19.839 19.839 0 0 0 6.002-3.03.077.077 0 0 0 .032-.054c.5-5.177-.838-9.674-3.549-13.66a.061.061 0 0 0-.031-.03zM8.02 15.33c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.956-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.956 2.418-2.157 2.418zm7.975 0c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.955-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.946 2.418-2.157 2.418Z'/%3E%3C/svg%3E")}.vpi-social-facebook{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9.101 23.691v-7.98H6.627v-3.667h2.474v-1.58c0-4.085 1.848-5.978 5.858-5.978.401 0 .955.042 1.468.103a8.68 8.68 0 0 1 1.141.195v3.325a8.623 8.623 0 0 0-.653-.036 26.805 26.805 0 0 0-.733-.009c-.707 0-1.259.096-1.675.309a1.686 1.686 0 0 0-.679.622c-.258.42-.374.995-.374 1.752v1.297h3.919l-.386 2.103-.287 1.564h-3.246v8.245C19.396 23.238 24 18.179 24 12.044c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.628 3.874 10.35 9.101 11.647Z'/%3E%3C/svg%3E")}.vpi-social-github{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12'/%3E%3C/svg%3E")}.vpi-social-instagram{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7.03.084c-1.277.06-2.149.264-2.91.563a5.874 5.874 0 0 0-2.124 1.388 5.878 5.878 0 0 0-1.38 2.127C.321 4.926.12 5.8.064 7.076.008 8.354-.005 8.764.001 12.023c.007 3.259.021 3.667.083 4.947.061 1.277.264 2.149.563 2.911.308.789.72 1.457 1.388 2.123a5.872 5.872 0 0 0 2.129 1.38c.763.295 1.636.496 2.913.552 1.278.056 1.689.069 4.947.063 3.257-.007 3.668-.021 4.947-.082 1.28-.06 2.147-.265 2.91-.563a5.881 5.881 0 0 0 2.123-1.388 5.881 5.881 0 0 0 1.38-2.129c.295-.763.496-1.636.551-2.912.056-1.28.07-1.69.063-4.948-.006-3.258-.02-3.667-.081-4.947-.06-1.28-.264-2.148-.564-2.911a5.892 5.892 0 0 0-1.387-2.123 5.857 5.857 0 0 0-2.128-1.38C19.074.322 18.202.12 16.924.066 15.647.009 15.236-.006 11.977 0 8.718.008 8.31.021 7.03.084m.14 21.693c-1.17-.05-1.805-.245-2.228-.408a3.736 3.736 0 0 1-1.382-.895 3.695 3.695 0 0 1-.9-1.378c-.165-.423-.363-1.058-.417-2.228-.06-1.264-.072-1.644-.08-4.848-.006-3.204.006-3.583.061-4.848.05-1.169.246-1.805.408-2.228.216-.561.477-.96.895-1.382a3.705 3.705 0 0 1 1.379-.9c.423-.165 1.057-.361 2.227-.417 1.265-.06 1.644-.072 4.848-.08 3.203-.006 3.583.006 4.85.062 1.168.05 1.804.244 2.227.408.56.216.96.475 1.382.895.421.42.681.817.9 1.378.165.422.362 1.056.417 2.227.06 1.265.074 1.645.08 4.848.005 3.203-.006 3.583-.061 4.848-.051 1.17-.245 1.805-.408 2.23-.216.56-.477.96-.896 1.38a3.705 3.705 0 0 1-1.378.9c-.422.165-1.058.362-2.226.418-1.266.06-1.645.072-4.85.079-3.204.007-3.582-.006-4.848-.06m9.783-16.192a1.44 1.44 0 1 0 1.437-1.442 1.44 1.44 0 0 0-1.437 1.442M5.839 12.012a6.161 6.161 0 1 0 12.323-.024 6.162 6.162 0 0 0-12.323.024M8 12.008A4 4 0 1 1 12.008 16 4 4 0 0 1 8 12.008'/%3E%3C/svg%3E")}.vpi-social-linkedin{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433a2.062 2.062 0 0 1-2.063-2.065 2.064 2.064 0 1 1 2.063 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z'/%3E%3C/svg%3E")}.vpi-social-mastodon{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M23.268 5.313c-.35-2.578-2.617-4.61-5.304-5.004C17.51.242 15.792 0 11.813 0h-.03c-3.98 0-4.835.242-5.288.309C3.882.692 1.496 2.518.917 5.127.64 6.412.61 7.837.661 9.143c.074 1.874.088 3.745.26 5.611.118 1.24.325 2.47.62 3.68.55 2.237 2.777 4.098 4.96 4.857 2.336.792 4.849.923 7.256.38.265-.061.527-.132.786-.213.585-.184 1.27-.39 1.774-.753a.057.057 0 0 0 .023-.043v-1.809a.052.052 0 0 0-.02-.041.053.053 0 0 0-.046-.01 20.282 20.282 0 0 1-4.709.545c-2.73 0-3.463-1.284-3.674-1.818a5.593 5.593 0 0 1-.319-1.433.053.053 0 0 1 .066-.054c1.517.363 3.072.546 4.632.546.376 0 .75 0 1.125-.01 1.57-.044 3.224-.124 4.768-.422.038-.008.077-.015.11-.024 2.435-.464 4.753-1.92 4.989-5.604.008-.145.03-1.52.03-1.67.002-.512.167-3.63-.024-5.545zm-3.748 9.195h-2.561V8.29c0-1.309-.55-1.976-1.67-1.976-1.23 0-1.846.79-1.846 2.35v3.403h-2.546V8.663c0-1.56-.617-2.35-1.848-2.35-1.112 0-1.668.668-1.67 1.977v6.218H4.822V8.102c0-1.31.337-2.35 1.011-3.12.696-.77 1.608-1.164 2.74-1.164 1.311 0 2.302.5 2.962 1.498l.638 1.06.638-1.06c.66-.999 1.65-1.498 2.96-1.498 1.13 0 2.043.395 2.74 1.164.675.77 1.012 1.81 1.012 3.12z'/%3E%3C/svg%3E")}.vpi-social-npm{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M1.763 0C.786 0 0 .786 0 1.763v20.474C0 23.214.786 24 1.763 24h20.474c.977 0 1.763-.786 1.763-1.763V1.763C24 .786 23.214 0 22.237 0zM5.13 5.323l13.837.019-.009 13.836h-3.464l.01-10.382h-3.456L12.04 19.17H5.113z'/%3E%3C/svg%3E")}.vpi-social-slack{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5.042 15.165a2.528 2.528 0 0 1-2.52 2.523A2.528 2.528 0 0 1 0 15.165a2.527 2.527 0 0 1 2.522-2.52h2.52v2.52zm1.271 0a2.527 2.527 0 0 1 2.521-2.52 2.527 2.527 0 0 1 2.521 2.52v6.313A2.528 2.528 0 0 1 8.834 24a2.528 2.528 0 0 1-2.521-2.522v-6.313zM8.834 5.042a2.528 2.528 0 0 1-2.521-2.52A2.528 2.528 0 0 1 8.834 0a2.528 2.528 0 0 1 2.521 2.522v2.52H8.834zm0 1.271a2.528 2.528 0 0 1 2.521 2.521 2.528 2.528 0 0 1-2.521 2.521H2.522A2.528 2.528 0 0 1 0 8.834a2.528 2.528 0 0 1 2.522-2.521h6.312zm10.122 2.521a2.528 2.528 0 0 1 2.522-2.521A2.528 2.528 0 0 1 24 8.834a2.528 2.528 0 0 1-2.522 2.521h-2.522V8.834zm-1.268 0a2.528 2.528 0 0 1-2.523 2.521 2.527 2.527 0 0 1-2.52-2.521V2.522A2.527 2.527 0 0 1 15.165 0a2.528 2.528 0 0 1 2.523 2.522v6.312zm-2.523 10.122a2.528 2.528 0 0 1 2.523 2.522A2.528 2.528 0 0 1 15.165 24a2.527 2.527 0 0 1-2.52-2.522v-2.522h2.52zm0-1.268a2.527 2.527 0 0 1-2.52-2.523 2.526 2.526 0 0 1 2.52-2.52h6.313A2.527 2.527 0 0 1 24 15.165a2.528 2.528 0 0 1-2.522 2.523h-6.313z'/%3E%3C/svg%3E")}.vpi-social-twitter,.vpi-social-x{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18.901 1.153h3.68l-8.04 9.19L24 22.846h-7.406l-5.8-7.584-6.638 7.584H.474l8.6-9.83L0 1.154h7.594l5.243 6.932ZM17.61 20.644h2.039L6.486 3.24H4.298Z'/%3E%3C/svg%3E")}.vpi-social-youtube{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814zM9.545 15.568V8.432L15.818 12l-6.273 3.568z'/%3E%3C/svg%3E")}.visually-hidden{position:absolute;width:1px;height:1px;white-space:nowrap;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden}.custom-block{border:1px solid transparent;border-radius:8px;padding:16px 16px 8px;line-height:24px;font-size:var(--vp-custom-block-font-size);color:var(--vp-c-text-2)}.custom-block.info{border-color:var(--vp-custom-block-info-border);color:var(--vp-custom-block-info-text);background-color:var(--vp-custom-block-info-bg)}.custom-block.info a,.custom-block.info code{color:var(--vp-c-brand-1)}.custom-block.info a:hover,.custom-block.info a:hover>code{color:var(--vp-c-brand-2)}.custom-block.info code{background-color:var(--vp-custom-block-info-code-bg)}.custom-block.note{border-color:var(--vp-custom-block-note-border);color:var(--vp-custom-block-note-text);background-color:var(--vp-custom-block-note-bg)}.custom-block.note a,.custom-block.note code{color:var(--vp-c-brand-1)}.custom-block.note a:hover,.custom-block.note a:hover>code{color:var(--vp-c-brand-2)}.custom-block.note code{background-color:var(--vp-custom-block-note-code-bg)}.custom-block.tip{border-color:var(--vp-custom-block-tip-border);color:var(--vp-custom-block-tip-text);background-color:var(--vp-custom-block-tip-bg)}.custom-block.tip a,.custom-block.tip code{color:var(--vp-c-tip-1)}.custom-block.tip a:hover,.custom-block.tip a:hover>code{color:var(--vp-c-tip-2)}.custom-block.tip code{background-color:var(--vp-custom-block-tip-code-bg)}.custom-block.important{border-color:var(--vp-custom-block-important-border);color:var(--vp-custom-block-important-text);background-color:var(--vp-custom-block-important-bg)}.custom-block.important a,.custom-block.important code{color:var(--vp-c-important-1)}.custom-block.important a:hover,.custom-block.important a:hover>code{color:var(--vp-c-important-2)}.custom-block.important code{background-color:var(--vp-custom-block-important-code-bg)}.custom-block.warning{border-color:var(--vp-custom-block-warning-border);color:var(--vp-custom-block-warning-text);background-color:var(--vp-custom-block-warning-bg)}.custom-block.warning a,.custom-block.warning code{color:var(--vp-c-warning-1)}.custom-block.warning a:hover,.custom-block.warning a:hover>code{color:var(--vp-c-warning-2)}.custom-block.warning code{background-color:var(--vp-custom-block-warning-code-bg)}.custom-block.danger{border-color:var(--vp-custom-block-danger-border);color:var(--vp-custom-block-danger-text);background-color:var(--vp-custom-block-danger-bg)}.custom-block.danger a,.custom-block.danger code{color:var(--vp-c-danger-1)}.custom-block.danger a:hover,.custom-block.danger a:hover>code{color:var(--vp-c-danger-2)}.custom-block.danger code{background-color:var(--vp-custom-block-danger-code-bg)}.custom-block.caution{border-color:var(--vp-custom-block-caution-border);color:var(--vp-custom-block-caution-text);background-color:var(--vp-custom-block-caution-bg)}.custom-block.caution a,.custom-block.caution code{color:var(--vp-c-caution-1)}.custom-block.caution a:hover,.custom-block.caution a:hover>code{color:var(--vp-c-caution-2)}.custom-block.caution code{background-color:var(--vp-custom-block-caution-code-bg)}.custom-block.details{border-color:var(--vp-custom-block-details-border);color:var(--vp-custom-block-details-text);background-color:var(--vp-custom-block-details-bg)}.custom-block.details a{color:var(--vp-c-brand-1)}.custom-block.details a:hover,.custom-block.details a:hover>code{color:var(--vp-c-brand-2)}.custom-block.details code{background-color:var(--vp-custom-block-details-code-bg)}.custom-block-title{font-weight:600}.custom-block p+p{margin:8px 0}.custom-block.details summary{margin:0 0 8px;font-weight:700;cursor:pointer;-webkit-user-select:none;user-select:none}.custom-block.details summary+p{margin:8px 0}.custom-block a{color:inherit;font-weight:600;text-decoration:underline;text-underline-offset:2px;transition:opacity .25s}.custom-block a:hover{opacity:.75}.custom-block code{font-size:var(--vp-custom-block-code-font-size)}.custom-block.custom-block th,.custom-block.custom-block blockquote>p{font-size:var(--vp-custom-block-font-size);color:inherit}.dark .vp-code span{color:var(--shiki-dark, inherit)}html:not(.dark) .vp-code span{color:var(--shiki-light, inherit)}.vp-code-group{margin-top:16px}.vp-code-group .tabs{position:relative;display:flex;margin-right:-24px;margin-left:-24px;padding:0 12px;background-color:var(--vp-code-tab-bg);overflow-x:auto;overflow-y:hidden;box-shadow:inset 0 -1px var(--vp-code-tab-divider)}@media (min-width: 640px){.vp-code-group .tabs{margin-right:0;margin-left:0;border-radius:8px 8px 0 0}}.vp-code-group .tabs input{position:fixed;opacity:0;pointer-events:none}.vp-code-group .tabs label{position:relative;display:inline-block;border-bottom:1px solid transparent;padding:0 12px;line-height:48px;font-size:14px;font-weight:500;color:var(--vp-code-tab-text-color);white-space:nowrap;cursor:pointer;transition:color .25s}.vp-code-group .tabs label:after{position:absolute;right:8px;bottom:-1px;left:8px;z-index:1;height:2px;border-radius:2px;content:"";background-color:transparent;transition:background-color .25s}.vp-code-group label:hover{color:var(--vp-code-tab-hover-text-color)}.vp-code-group input:checked+label{color:var(--vp-code-tab-active-text-color)}.vp-code-group input:checked+label:after{background-color:var(--vp-code-tab-active-bar-color)}.vp-code-group div[class*=language-],.vp-block{display:none;margin-top:0!important;border-top-left-radius:0!important;border-top-right-radius:0!important}.vp-code-group div[class*=language-].active,.vp-block.active{display:block}.vp-block{padding:20px 24px}.vp-doc h1,.vp-doc h2,.vp-doc h3,.vp-doc h4,.vp-doc h5,.vp-doc h6{position:relative;font-weight:600;outline:none}.vp-doc h1{letter-spacing:-.02em;line-height:40px;font-size:28px}.vp-doc h2{margin:48px 0 16px;border-top:1px solid var(--vp-c-divider);padding-top:24px;letter-spacing:-.02em;line-height:32px;font-size:24px}.vp-doc h3{margin:32px 0 0;letter-spacing:-.01em;line-height:28px;font-size:20px}.vp-doc h4{margin:24px 0 0;letter-spacing:-.01em;line-height:24px;font-size:18px}.vp-doc .header-anchor{position:absolute;top:0;left:0;margin-left:-.87em;font-weight:500;-webkit-user-select:none;user-select:none;opacity:0;text-decoration:none;transition:color .25s,opacity .25s}.vp-doc .header-anchor:before{content:var(--vp-header-anchor-symbol)}.vp-doc h1:hover .header-anchor,.vp-doc h1 .header-anchor:focus,.vp-doc h2:hover .header-anchor,.vp-doc h2 .header-anchor:focus,.vp-doc h3:hover .header-anchor,.vp-doc h3 .header-anchor:focus,.vp-doc h4:hover .header-anchor,.vp-doc h4 .header-anchor:focus,.vp-doc h5:hover .header-anchor,.vp-doc h5 .header-anchor:focus,.vp-doc h6:hover .header-anchor,.vp-doc h6 .header-anchor:focus{opacity:1}@media (min-width: 768px){.vp-doc h1{letter-spacing:-.02em;line-height:40px;font-size:32px}}.vp-doc h2 .header-anchor{top:24px}.vp-doc p,.vp-doc summary{margin:16px 0}.vp-doc p{line-height:28px}.vp-doc blockquote{margin:16px 0;border-left:2px solid var(--vp-c-divider);padding-left:16px;transition:border-color .5s;color:var(--vp-c-text-2)}.vp-doc blockquote>p{margin:0;font-size:16px;transition:color .5s}.vp-doc a{font-weight:500;color:var(--vp-c-brand-1);text-decoration:underline;text-underline-offset:2px;transition:color .25s,opacity .25s}.vp-doc a:hover{color:var(--vp-c-brand-2)}.vp-doc strong{font-weight:600}.vp-doc ul,.vp-doc ol{padding-left:1.25rem;margin:16px 0}.vp-doc ul{list-style:disc}.vp-doc ol{list-style:decimal}.vp-doc li+li{margin-top:8px}.vp-doc li>ol,.vp-doc li>ul{margin:8px 0 0}.vp-doc table{display:block;border-collapse:collapse;margin:20px 0;overflow-x:auto}.vp-doc tr{background-color:var(--vp-c-bg);border-top:1px solid var(--vp-c-divider);transition:background-color .5s}.vp-doc tr:nth-child(2n){background-color:var(--vp-c-bg-soft)}.vp-doc th,.vp-doc td{border:1px solid var(--vp-c-divider);padding:8px 16px}.vp-doc th{text-align:left;font-size:14px;font-weight:600;color:var(--vp-c-text-2);background-color:var(--vp-c-bg-soft)}.vp-doc td{font-size:14px}.vp-doc hr{margin:16px 0;border:none;border-top:1px solid var(--vp-c-divider)}.vp-doc .custom-block{margin:16px 0}.vp-doc .custom-block p{margin:8px 0;line-height:24px}.vp-doc .custom-block p:first-child{margin:0}.vp-doc .custom-block div[class*=language-]{margin:8px 0;border-radius:8px}.vp-doc .custom-block div[class*=language-] code{font-weight:400;background-color:transparent}.vp-doc .custom-block .vp-code-group .tabs{margin:0;border-radius:8px 8px 0 0}.vp-doc :not(pre,h1,h2,h3,h4,h5,h6)>code{font-size:var(--vp-code-font-size);color:var(--vp-code-color)}.vp-doc :not(pre)>code{border-radius:4px;padding:3px 6px;background-color:var(--vp-code-bg);transition:color .25s,background-color .5s}.vp-doc a>code{color:var(--vp-code-link-color)}.vp-doc a:hover>code{color:var(--vp-code-link-hover-color)}.vp-doc h1>code,.vp-doc h2>code,.vp-doc h3>code,.vp-doc h4>code{font-size:.9em}.vp-doc div[class*=language-],.vp-block{position:relative;margin:16px -24px;background-color:var(--vp-code-block-bg);overflow-x:auto;transition:background-color .5s}@media (min-width: 640px){.vp-doc div[class*=language-],.vp-block{border-radius:8px;margin:16px 0}}@media (max-width: 639px){.vp-doc li div[class*=language-]{border-radius:8px 0 0 8px}}.vp-doc div[class*=language-]+div[class*=language-],.vp-doc div[class$=-api]+div[class*=language-],.vp-doc div[class*=language-]+div[class$=-api]>div[class*=language-]{margin-top:-8px}.vp-doc [class*=language-] pre,.vp-doc [class*=language-] code{direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}.vp-doc [class*=language-] pre{position:relative;z-index:1;margin:0;padding:20px 0;background:transparent;overflow-x:auto}.vp-doc [class*=language-] code{display:block;padding:0 24px;width:fit-content;min-width:100%;line-height:var(--vp-code-line-height);font-size:var(--vp-code-font-size);color:var(--vp-code-block-color);transition:color .5s}.vp-doc [class*=language-] code .highlighted{background-color:var(--vp-code-line-highlight-color);transition:background-color .5s;margin:0 -24px;padding:0 24px;width:calc(100% + 48px);display:inline-block}.vp-doc [class*=language-] code .highlighted.error{background-color:var(--vp-code-line-error-color)}.vp-doc [class*=language-] code .highlighted.warning{background-color:var(--vp-code-line-warning-color)}.vp-doc [class*=language-] code .diff{transition:background-color .5s;margin:0 -24px;padding:0 24px;width:calc(100% + 48px);display:inline-block}.vp-doc [class*=language-] code .diff:before{position:absolute;left:10px}.vp-doc [class*=language-] .has-focused-lines .line:not(.has-focus){filter:blur(.095rem);opacity:.4;transition:filter .35s,opacity .35s}.vp-doc [class*=language-] .has-focused-lines .line:not(.has-focus){opacity:.7;transition:filter .35s,opacity .35s}.vp-doc [class*=language-]:hover .has-focused-lines .line:not(.has-focus){filter:blur(0);opacity:1}.vp-doc [class*=language-] code .diff.remove{background-color:var(--vp-code-line-diff-remove-color);opacity:.7}.vp-doc [class*=language-] code .diff.remove:before{content:"-";color:var(--vp-code-line-diff-remove-symbol-color)}.vp-doc [class*=language-] code .diff.add{background-color:var(--vp-code-line-diff-add-color)}.vp-doc [class*=language-] code .diff.add:before{content:"+";color:var(--vp-code-line-diff-add-symbol-color)}.vp-doc div[class*=language-].line-numbers-mode{padding-left:32px}.vp-doc .line-numbers-wrapper{position:absolute;top:0;bottom:0;left:0;z-index:3;border-right:1px solid var(--vp-code-block-divider-color);padding-top:20px;width:32px;text-align:center;font-family:var(--vp-font-family-mono);line-height:var(--vp-code-line-height);font-size:var(--vp-code-font-size);color:var(--vp-code-line-number-color);transition:border-color .5s,color .5s}.vp-doc [class*=language-]>button.copy{direction:ltr;position:absolute;top:12px;right:12px;z-index:3;border:1px solid var(--vp-code-copy-code-border-color);border-radius:4px;width:40px;height:40px;background-color:var(--vp-code-copy-code-bg);opacity:0;cursor:pointer;background-image:var(--vp-icon-copy);background-position:50%;background-size:20px;background-repeat:no-repeat;transition:border-color .25s,background-color .25s,opacity .25s}.vp-doc [class*=language-]:hover>button.copy,.vp-doc [class*=language-]>button.copy:focus{opacity:1}.vp-doc [class*=language-]>button.copy:hover,.vp-doc [class*=language-]>button.copy.copied{border-color:var(--vp-code-copy-code-hover-border-color);background-color:var(--vp-code-copy-code-hover-bg)}.vp-doc [class*=language-]>button.copy.copied,.vp-doc [class*=language-]>button.copy:hover.copied{border-radius:0 4px 4px 0;background-color:var(--vp-code-copy-code-hover-bg);background-image:var(--vp-icon-copied)}.vp-doc [class*=language-]>button.copy.copied:before,.vp-doc [class*=language-]>button.copy:hover.copied:before{position:relative;top:-1px;transform:translate(calc(-100% - 1px));display:flex;justify-content:center;align-items:center;border:1px solid var(--vp-code-copy-code-hover-border-color);border-right:0;border-radius:4px 0 0 4px;padding:0 10px;width:fit-content;height:40px;text-align:center;font-size:12px;font-weight:500;color:var(--vp-code-copy-code-active-text);background-color:var(--vp-code-copy-code-hover-bg);white-space:nowrap;content:var(--vp-code-copy-copied-text-content)}.vp-doc [class*=language-]>span.lang{position:absolute;top:2px;right:8px;z-index:2;font-size:12px;font-weight:500;color:var(--vp-code-lang-color);transition:color .4s,opacity .4s}.vp-doc [class*=language-]:hover>button.copy+span.lang,.vp-doc [class*=language-]>button.copy:focus+span.lang{opacity:0}.vp-doc .VPTeamMembers{margin-top:24px}.vp-doc .VPTeamMembers.small.count-1 .container{margin:0!important;max-width:calc((100% - 24px)/2)!important}.vp-doc .VPTeamMembers.small.count-2 .container,.vp-doc .VPTeamMembers.small.count-3 .container{max-width:100%!important}.vp-doc .VPTeamMembers.medium.count-1 .container{margin:0!important;max-width:calc((100% - 24px)/2)!important}:is(.vp-external-link-icon,.vp-doc a[href*="://"],.vp-doc a[target=_blank]):not(.no-icon):after{display:inline-block;margin-top:-1px;margin-left:4px;width:11px;height:11px;background:currentColor;color:var(--vp-c-text-3);flex-shrink:0;--icon: url("data:image/svg+xml, %3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' %3E%3Cpath d='M0 0h24v24H0V0z' fill='none' /%3E%3Cpath d='M9 5v2h6.59L4 18.59 5.41 20 17 8.41V15h2V5H9z' /%3E%3C/svg%3E");-webkit-mask-image:var(--icon);mask-image:var(--icon)}.vp-external-link-icon:after{content:""}.external-link-icon-enabled :is(.vp-doc a[href*="://"],.vp-doc a[target=_blank]):after{content:"";color:currentColor}.vp-sponsor{border-radius:16px;overflow:hidden}.vp-sponsor.aside{border-radius:12px}.vp-sponsor-section+.vp-sponsor-section{margin-top:4px}.vp-sponsor-tier{margin:0 0 4px!important;text-align:center;letter-spacing:1px!important;line-height:24px;width:100%;font-weight:600;color:var(--vp-c-text-2);background-color:var(--vp-c-bg-soft)}.vp-sponsor.normal .vp-sponsor-tier{padding:13px 0 11px;font-size:14px}.vp-sponsor.aside .vp-sponsor-tier{padding:9px 0 7px;font-size:12px}.vp-sponsor-grid+.vp-sponsor-tier{margin-top:4px}.vp-sponsor-grid{display:flex;flex-wrap:wrap;gap:4px}.vp-sponsor-grid.xmini .vp-sponsor-grid-link{height:64px}.vp-sponsor-grid.xmini .vp-sponsor-grid-image{max-width:64px;max-height:22px}.vp-sponsor-grid.mini .vp-sponsor-grid-link{height:72px}.vp-sponsor-grid.mini .vp-sponsor-grid-image{max-width:96px;max-height:24px}.vp-sponsor-grid.small .vp-sponsor-grid-link{height:96px}.vp-sponsor-grid.small .vp-sponsor-grid-image{max-width:96px;max-height:24px}.vp-sponsor-grid.medium .vp-sponsor-grid-link{height:112px}.vp-sponsor-grid.medium .vp-sponsor-grid-image{max-width:120px;max-height:36px}.vp-sponsor-grid.big .vp-sponsor-grid-link{height:184px}.vp-sponsor-grid.big .vp-sponsor-grid-image{max-width:192px;max-height:56px}.vp-sponsor-grid[data-vp-grid="2"] .vp-sponsor-grid-item{width:calc((100% - 4px)/2)}.vp-sponsor-grid[data-vp-grid="3"] .vp-sponsor-grid-item{width:calc((100% - 4px * 2) / 3)}.vp-sponsor-grid[data-vp-grid="4"] .vp-sponsor-grid-item{width:calc((100% - 12px)/4)}.vp-sponsor-grid[data-vp-grid="5"] .vp-sponsor-grid-item{width:calc((100% - 16px)/5)}.vp-sponsor-grid[data-vp-grid="6"] .vp-sponsor-grid-item{width:calc((100% - 4px * 5) / 6)}.vp-sponsor-grid-item{flex-shrink:0;width:100%;background-color:var(--vp-c-bg-soft);transition:background-color .25s}.vp-sponsor-grid-item:hover{background-color:var(--vp-c-default-soft)}.vp-sponsor-grid-item:hover .vp-sponsor-grid-image{filter:grayscale(0) invert(0)}.vp-sponsor-grid-item.empty:hover{background-color:var(--vp-c-bg-soft)}.dark .vp-sponsor-grid-item:hover{background-color:var(--vp-c-white)}.dark .vp-sponsor-grid-item.empty:hover{background-color:var(--vp-c-bg-soft)}.vp-sponsor-grid-link{display:flex}.vp-sponsor-grid-box{display:flex;justify-content:center;align-items:center;width:100%}.vp-sponsor-grid-image{max-width:100%;filter:grayscale(1);transition:filter .25s}.dark .vp-sponsor-grid-image{filter:grayscale(1) invert(1)}.VPBadge{display:inline-block;margin-left:2px;border:1px solid transparent;border-radius:12px;padding:0 10px;line-height:22px;font-size:12px;font-weight:500;transform:translateY(-2px)}.VPBadge.small{padding:0 6px;line-height:18px;font-size:10px;transform:translateY(-8px)}.VPDocFooter .VPBadge{display:none}.vp-doc h1>.VPBadge{margin-top:4px;vertical-align:top}.vp-doc h2>.VPBadge{margin-top:3px;padding:0 8px;vertical-align:top}.vp-doc h3>.VPBadge{vertical-align:middle}.vp-doc h4>.VPBadge,.vp-doc h5>.VPBadge,.vp-doc h6>.VPBadge{vertical-align:middle;line-height:18px}.VPBadge.info{border-color:var(--vp-badge-info-border);color:var(--vp-badge-info-text);background-color:var(--vp-badge-info-bg)}.VPBadge.tip{border-color:var(--vp-badge-tip-border);color:var(--vp-badge-tip-text);background-color:var(--vp-badge-tip-bg)}.VPBadge.warning{border-color:var(--vp-badge-warning-border);color:var(--vp-badge-warning-text);background-color:var(--vp-badge-warning-bg)}.VPBadge.danger{border-color:var(--vp-badge-danger-border);color:var(--vp-badge-danger-text);background-color:var(--vp-badge-danger-bg)}.VPBackdrop[data-v-458bad70]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--vp-z-index-backdrop);background:var(--vp-backdrop-bg-color);transition:opacity .5s}.VPBackdrop.fade-enter-from[data-v-458bad70],.VPBackdrop.fade-leave-to[data-v-458bad70]{opacity:0}.VPBackdrop.fade-leave-active[data-v-458bad70]{transition-duration:.25s}@media (min-width: 1280px){.VPBackdrop[data-v-458bad70]{display:none}}.NotFound[data-v-c70eed8a]{padding:64px 24px 96px;text-align:center}@media (min-width: 768px){.NotFound[data-v-c70eed8a]{padding:96px 32px 168px}}.code[data-v-c70eed8a]{line-height:64px;font-size:64px;font-weight:600}.title[data-v-c70eed8a]{padding-top:12px;letter-spacing:2px;line-height:20px;font-size:20px;font-weight:700}.divider[data-v-c70eed8a]{margin:24px auto 18px;width:64px;height:1px;background-color:var(--vp-c-divider)}.quote[data-v-c70eed8a]{margin:0 auto;max-width:256px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}.action[data-v-c70eed8a]{padding-top:20px}.link[data-v-c70eed8a]{display:inline-block;border:1px solid var(--vp-c-brand-1);border-radius:16px;padding:3px 16px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1);transition:border-color .25s,color .25s}.link[data-v-c70eed8a]:hover{border-color:var(--vp-c-brand-2);color:var(--vp-c-brand-2)}.root[data-v-89fc9c0f]{position:relative;z-index:1}.nested[data-v-89fc9c0f]{padding-right:16px;padding-left:16px}.outline-link[data-v-89fc9c0f]{display:block;line-height:32px;font-size:14px;font-weight:400;color:var(--vp-c-text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .5s}.outline-link[data-v-89fc9c0f]:hover,.outline-link.active[data-v-89fc9c0f]{color:var(--vp-c-text-1);transition:color .25s}.outline-link.nested[data-v-89fc9c0f]{padding-left:13px}.VPDocAsideOutline[data-v-68dfa8f1]{display:none}.VPDocAsideOutline.has-outline[data-v-68dfa8f1]{display:block}.content[data-v-68dfa8f1]{position:relative;border-left:1px solid var(--vp-c-divider);padding-left:16px;font-size:13px;font-weight:500}.outline-marker[data-v-68dfa8f1]{position:absolute;top:32px;left:-1px;z-index:0;opacity:0;width:2px;border-radius:2px;height:18px;background-color:var(--vp-c-brand-1);transition:top .25s cubic-bezier(0,1,.5,1),background-color .5s,opacity .25s}.outline-title[data-v-68dfa8f1]{line-height:32px;font-size:14px;font-weight:600}.VPDocAside[data-v-d75a4a6d]{display:flex;flex-direction:column;flex-grow:1}.spacer[data-v-d75a4a6d]{flex-grow:1}.VPDocAside[data-v-d75a4a6d] .spacer+.VPDocAsideSponsors,.VPDocAside[data-v-d75a4a6d] .spacer+.VPDocAsideCarbonAds{margin-top:24px}.VPDocAside[data-v-d75a4a6d] .VPDocAsideSponsors+.VPDocAsideCarbonAds{margin-top:16px}.VPLastUpdated[data-v-d13ed2a1]{line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}@media (min-width: 640px){.VPLastUpdated[data-v-d13ed2a1]{line-height:32px;font-size:14px;font-weight:500}}.VPDocFooter[data-v-7be4e7ea]{margin-top:64px}.edit-info[data-v-7be4e7ea]{padding-bottom:18px}@media (min-width: 640px){.edit-info[data-v-7be4e7ea]{display:flex;justify-content:space-between;align-items:center;padding-bottom:14px}}.edit-link-button[data-v-7be4e7ea]{display:flex;align-items:center;border:0;line-height:32px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1);transition:color .25s}.edit-link-button[data-v-7be4e7ea]:hover{color:var(--vp-c-brand-2)}.edit-link-icon[data-v-7be4e7ea]{margin-right:8px}.prev-next[data-v-7be4e7ea]{border-top:1px solid var(--vp-c-divider);padding-top:24px;display:grid;grid-row-gap:8px}@media (min-width: 640px){.prev-next[data-v-7be4e7ea]{grid-template-columns:repeat(2,1fr);grid-column-gap:16px}}.pager-link[data-v-7be4e7ea]{display:block;border:1px solid var(--vp-c-divider);border-radius:8px;padding:11px 16px 13px;width:100%;height:100%;transition:border-color .25s}.pager-link[data-v-7be4e7ea]:hover{border-color:var(--vp-c-brand-1)}.pager-link.next[data-v-7be4e7ea]{margin-left:auto;text-align:right}.desc[data-v-7be4e7ea]{display:block;line-height:20px;font-size:12px;font-weight:500;color:var(--vp-c-text-2)}.title[data-v-7be4e7ea]{display:block;line-height:20px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1);transition:color .25s}.VPDoc[data-v-d38f0326]{padding:32px 24px 96px;width:100%}@media (min-width: 768px){.VPDoc[data-v-d38f0326]{padding:48px 32px 128px}}@media (min-width: 960px){.VPDoc[data-v-d38f0326]{padding:48px 32px 0}.VPDoc:not(.has-sidebar) .container[data-v-d38f0326]{display:flex;justify-content:center;max-width:992px}.VPDoc:not(.has-sidebar) .content[data-v-d38f0326]{max-width:752px}}@media (min-width: 1280px){.VPDoc .container[data-v-d38f0326]{display:flex;justify-content:center}.VPDoc .aside[data-v-d38f0326]{display:block}}@media (min-width: 1440px){.VPDoc:not(.has-sidebar) .content[data-v-d38f0326]{max-width:784px}.VPDoc:not(.has-sidebar) .container[data-v-d38f0326]{max-width:1104px}}.container[data-v-d38f0326]{margin:0 auto;width:100%}.aside[data-v-d38f0326]{position:relative;display:none;order:2;flex-grow:1;padding-left:32px;width:100%;max-width:256px}.left-aside[data-v-d38f0326]{order:1;padding-left:unset;padding-right:32px}.aside-container[data-v-d38f0326]{position:fixed;top:0;padding-top:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + var(--vp-doc-top-height, 0px) + 48px);width:224px;height:100vh;overflow-x:hidden;overflow-y:auto;scrollbar-width:none}.aside-container[data-v-d38f0326]::-webkit-scrollbar{display:none}.aside-curtain[data-v-d38f0326]{position:fixed;bottom:0;z-index:10;width:224px;height:32px;background:linear-gradient(transparent,var(--vp-c-bg) 70%)}.aside-content[data-v-d38f0326]{display:flex;flex-direction:column;min-height:calc(100vh - (var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 48px));padding-bottom:32px}.content[data-v-d38f0326]{position:relative;margin:0 auto;width:100%}@media (min-width: 960px){.content[data-v-d38f0326]{padding:0 32px 128px}}@media (min-width: 1280px){.content[data-v-d38f0326]{order:1;margin:0;min-width:640px}}.content-container[data-v-d38f0326]{margin:0 auto}.VPDoc.has-aside .content-container[data-v-d38f0326]{max-width:688px}.VPButton[data-v-613710ba]{display:inline-block;border:1px solid transparent;text-align:center;font-weight:600;white-space:nowrap;transition:color .25s,border-color .25s,background-color .25s}.VPButton[data-v-613710ba]:active{transition:color .1s,border-color .1s,background-color .1s}.VPButton.medium[data-v-613710ba]{border-radius:20px;padding:0 20px;line-height:38px;font-size:14px}.VPButton.big[data-v-613710ba]{border-radius:24px;padding:0 24px;line-height:46px;font-size:16px}.VPButton.brand[data-v-613710ba]{border-color:var(--vp-button-brand-border);color:var(--vp-button-brand-text);background-color:var(--vp-button-brand-bg)}.VPButton.brand[data-v-613710ba]:hover{border-color:var(--vp-button-brand-hover-border);color:var(--vp-button-brand-hover-text);background-color:var(--vp-button-brand-hover-bg)}.VPButton.brand[data-v-613710ba]:active{border-color:var(--vp-button-brand-active-border);color:var(--vp-button-brand-active-text);background-color:var(--vp-button-brand-active-bg)}.VPButton.alt[data-v-613710ba]{border-color:var(--vp-button-alt-border);color:var(--vp-button-alt-text);background-color:var(--vp-button-alt-bg)}.VPButton.alt[data-v-613710ba]:hover{border-color:var(--vp-button-alt-hover-border);color:var(--vp-button-alt-hover-text);background-color:var(--vp-button-alt-hover-bg)}.VPButton.alt[data-v-613710ba]:active{border-color:var(--vp-button-alt-active-border);color:var(--vp-button-alt-active-text);background-color:var(--vp-button-alt-active-bg)}.VPButton.sponsor[data-v-613710ba]{border-color:var(--vp-button-sponsor-border);color:var(--vp-button-sponsor-text);background-color:var(--vp-button-sponsor-bg)}.VPButton.sponsor[data-v-613710ba]:hover{border-color:var(--vp-button-sponsor-hover-border);color:var(--vp-button-sponsor-hover-text);background-color:var(--vp-button-sponsor-hover-bg)}.VPButton.sponsor[data-v-613710ba]:active{border-color:var(--vp-button-sponsor-active-border);color:var(--vp-button-sponsor-active-text);background-color:var(--vp-button-sponsor-active-bg)}html:not(.dark) .VPImage.dark[data-v-91ed8563]{display:none}.dark .VPImage.light[data-v-91ed8563]{display:none}.VPHero[data-v-177d11bd]{margin-top:calc((var(--vp-nav-height) + var(--vp-layout-top-height, 0px)) * -1);padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 48px) 24px 48px}@media (min-width: 640px){.VPHero[data-v-177d11bd]{padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 80px) 48px 64px}}@media (min-width: 960px){.VPHero[data-v-177d11bd]{padding:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px) + 80px) 64px 64px}}.container[data-v-177d11bd]{display:flex;flex-direction:column;margin:0 auto;max-width:1152px}@media (min-width: 960px){.container[data-v-177d11bd]{flex-direction:row}}.main[data-v-177d11bd]{position:relative;z-index:10;order:2;flex-grow:1;flex-shrink:0}.VPHero.has-image .container[data-v-177d11bd]{text-align:center}@media (min-width: 960px){.VPHero.has-image .container[data-v-177d11bd]{text-align:left}}@media (min-width: 960px){.main[data-v-177d11bd]{order:1;width:calc((100% / 3) * 2)}.VPHero.has-image .main[data-v-177d11bd]{max-width:592px}}.name[data-v-177d11bd],.text[data-v-177d11bd]{max-width:392px;letter-spacing:-.4px;line-height:40px;font-size:32px;font-weight:700;white-space:pre-wrap}.VPHero.has-image .name[data-v-177d11bd],.VPHero.has-image .text[data-v-177d11bd]{margin:0 auto}.name[data-v-177d11bd]{color:var(--vp-home-hero-name-color)}.clip[data-v-177d11bd]{background:var(--vp-home-hero-name-background);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:var(--vp-home-hero-name-color)}@media (min-width: 640px){.name[data-v-177d11bd],.text[data-v-177d11bd]{max-width:576px;line-height:56px;font-size:48px}}@media (min-width: 960px){.name[data-v-177d11bd],.text[data-v-177d11bd]{line-height:64px;font-size:56px}.VPHero.has-image .name[data-v-177d11bd],.VPHero.has-image .text[data-v-177d11bd]{margin:0}}.tagline[data-v-177d11bd]{padding-top:8px;max-width:392px;line-height:28px;font-size:18px;font-weight:500;white-space:pre-wrap;color:var(--vp-c-text-2)}.VPHero.has-image .tagline[data-v-177d11bd]{margin:0 auto}@media (min-width: 640px){.tagline[data-v-177d11bd]{padding-top:12px;max-width:576px;line-height:32px;font-size:20px}}@media (min-width: 960px){.tagline[data-v-177d11bd]{line-height:36px;font-size:24px}.VPHero.has-image .tagline[data-v-177d11bd]{margin:0}}.actions[data-v-177d11bd]{display:flex;flex-wrap:wrap;margin:-6px;padding-top:24px}.VPHero.has-image .actions[data-v-177d11bd]{justify-content:center}@media (min-width: 640px){.actions[data-v-177d11bd]{padding-top:32px}}@media (min-width: 960px){.VPHero.has-image .actions[data-v-177d11bd]{justify-content:flex-start}}.action[data-v-177d11bd]{flex-shrink:0;padding:6px}.image[data-v-177d11bd]{order:1;margin:-76px -24px -48px}@media (min-width: 640px){.image[data-v-177d11bd]{margin:-108px -24px -48px}}@media (min-width: 960px){.image[data-v-177d11bd]{flex-grow:1;order:2;margin:0;min-height:100%}}.image-container[data-v-177d11bd]{position:relative;margin:0 auto;width:320px;height:320px}@media (min-width: 640px){.image-container[data-v-177d11bd]{width:392px;height:392px}}@media (min-width: 960px){.image-container[data-v-177d11bd]{display:flex;justify-content:center;align-items:center;width:100%;height:100%;transform:translate(-32px,-32px)}}.image-bg[data-v-177d11bd]{position:absolute;top:50%;left:50%;border-radius:50%;width:192px;height:192px;background-image:var(--vp-home-hero-image-background-image);filter:var(--vp-home-hero-image-filter);transform:translate(-50%,-50%)}@media (min-width: 640px){.image-bg[data-v-177d11bd]{width:256px;height:256px}}@media (min-width: 960px){.image-bg[data-v-177d11bd]{width:320px;height:320px}}[data-v-177d11bd] .image-src{position:absolute;top:50%;left:50%;max-width:192px;max-height:192px;transform:translate(-50%,-50%)}@media (min-width: 640px){[data-v-177d11bd] .image-src{max-width:256px;max-height:256px}}@media (min-width: 960px){[data-v-177d11bd] .image-src{max-width:320px;max-height:320px}}.VPFeature[data-v-dc68b5a7]{display:block;border:1px solid var(--vp-c-bg-soft);border-radius:12px;height:100%;background-color:var(--vp-c-bg-soft);transition:border-color .25s,background-color .25s}.VPFeature.link[data-v-dc68b5a7]:hover{border-color:var(--vp-c-brand-1)}.box[data-v-dc68b5a7]{display:flex;flex-direction:column;padding:24px;height:100%}.box[data-v-dc68b5a7]>.VPImage{margin-bottom:20px}.icon[data-v-dc68b5a7]{display:flex;justify-content:center;align-items:center;margin-bottom:20px;border-radius:6px;background-color:var(--vp-c-default-soft);width:48px;height:48px;font-size:24px;transition:background-color .25s}.title[data-v-dc68b5a7]{line-height:24px;font-size:16px;font-weight:600}.details[data-v-dc68b5a7]{flex-grow:1;padding-top:8px;line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}.link-text[data-v-dc68b5a7]{padding-top:8px}.link-text-value[data-v-dc68b5a7]{display:flex;align-items:center;font-size:14px;font-weight:500;color:var(--vp-c-brand-1)}.link-text-icon[data-v-dc68b5a7]{margin-left:6px}.VPFeatures[data-v-a03d2aeb]{position:relative;padding:0 24px}@media (min-width: 640px){.VPFeatures[data-v-a03d2aeb]{padding:0 48px}}@media (min-width: 960px){.VPFeatures[data-v-a03d2aeb]{padding:0 64px}}.container[data-v-a03d2aeb]{margin:0 auto;max-width:1152px}.items[data-v-a03d2aeb]{display:flex;flex-wrap:wrap;margin:-8px}.item[data-v-a03d2aeb]{padding:8px;width:100%}@media (min-width: 640px){.item.grid-2[data-v-a03d2aeb],.item.grid-4[data-v-a03d2aeb],.item.grid-6[data-v-a03d2aeb]{width:50%}}@media (min-width: 768px){.item.grid-2[data-v-a03d2aeb],.item.grid-4[data-v-a03d2aeb]{width:50%}.item.grid-3[data-v-a03d2aeb],.item.grid-6[data-v-a03d2aeb]{width:calc(100% / 3)}}@media (min-width: 960px){.item.grid-4[data-v-a03d2aeb]{width:25%}}.container[data-v-0c16a4e2]{margin:auto;width:100%;max-width:1280px;padding:0 24px}@media (min-width: 640px){.container[data-v-0c16a4e2]{padding:0 48px}}@media (min-width: 960px){.container[data-v-0c16a4e2]{width:100%;padding:0 64px}}.vp-doc[data-v-0c16a4e2] .VPHomeSponsors,.vp-doc[data-v-0c16a4e2] .VPTeamPage{margin-left:var(--vp-offset, calc(50% - 50vw) );margin-right:var(--vp-offset, calc(50% - 50vw) )}.vp-doc[data-v-0c16a4e2] .VPHomeSponsors h2{border-top:none;letter-spacing:normal}.vp-doc[data-v-0c16a4e2] .VPHomeSponsors a,.vp-doc[data-v-0c16a4e2] .VPTeamPage a{text-decoration:none}.VPHome[data-v-1920c5ce]{margin-bottom:96px}@media (min-width: 768px){.VPHome[data-v-1920c5ce]{margin-bottom:128px}}.VPContent[data-v-45773a36]{flex-grow:1;flex-shrink:0;margin:var(--vp-layout-top-height, 0px) auto 0;width:100%}.VPContent.is-home[data-v-45773a36]{width:100%;max-width:100%}.VPContent.has-sidebar[data-v-45773a36]{margin:0}@media (min-width: 960px){.VPContent[data-v-45773a36]{padding-top:var(--vp-nav-height)}.VPContent.has-sidebar[data-v-45773a36]{margin:var(--vp-layout-top-height, 0px) 0 0;padding-left:var(--vp-sidebar-width)}}@media (min-width: 1440px){.VPContent.has-sidebar[data-v-45773a36]{padding-right:calc((100vw - var(--vp-layout-max-width)) / 2);padding-left:calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))}}.VPFooter[data-v-017ba2a0]{position:relative;z-index:var(--vp-z-index-footer);border-top:1px solid var(--vp-c-gutter);padding:32px 24px;background-color:var(--vp-c-bg)}.VPFooter.has-sidebar[data-v-017ba2a0]{display:none}.VPFooter[data-v-017ba2a0] a{text-decoration-line:underline;text-underline-offset:2px;transition:color .25s}.VPFooter[data-v-017ba2a0] a:hover{color:var(--vp-c-text-1)}@media (min-width: 768px){.VPFooter[data-v-017ba2a0]{padding:32px}}.container[data-v-017ba2a0]{margin:0 auto;max-width:var(--vp-layout-max-width);text-align:center}.message[data-v-017ba2a0],.copyright[data-v-017ba2a0]{line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-2)}.VPLocalNavOutlineDropdown[data-v-47ba0ca8]{padding:12px 20px 11px}@media (min-width: 960px){.VPLocalNavOutlineDropdown[data-v-47ba0ca8]{padding:12px 36px 11px}}.VPLocalNavOutlineDropdown button[data-v-47ba0ca8]{display:block;font-size:12px;font-weight:500;line-height:24px;color:var(--vp-c-text-2);transition:color .5s;position:relative}.VPLocalNavOutlineDropdown button[data-v-47ba0ca8]:hover{color:var(--vp-c-text-1);transition:color .25s}.VPLocalNavOutlineDropdown button.open[data-v-47ba0ca8]{color:var(--vp-c-text-1)}.icon[data-v-47ba0ca8]{display:inline-block;vertical-align:middle;margin-left:2px;font-size:14px;transform:rotate(0);transition:transform .25s}@media (min-width: 960px){.VPLocalNavOutlineDropdown button[data-v-47ba0ca8]{font-size:14px}.icon[data-v-47ba0ca8]{font-size:16px}}.open>.icon[data-v-47ba0ca8]{transform:rotate(90deg)}.items[data-v-47ba0ca8]{position:absolute;top:40px;right:16px;left:16px;display:grid;gap:1px;border:1px solid var(--vp-c-border);border-radius:8px;background-color:var(--vp-c-gutter);max-height:calc(var(--vp-vh, 100vh) - 86px);overflow:hidden auto;box-shadow:var(--vp-shadow-3)}@media (min-width: 960px){.items[data-v-47ba0ca8]{right:auto;left:calc(var(--vp-sidebar-width) + 32px);width:320px}}.header[data-v-47ba0ca8]{background-color:var(--vp-c-bg-soft)}.top-link[data-v-47ba0ca8]{display:block;padding:0 16px;line-height:48px;font-size:14px;font-weight:500;color:var(--vp-c-brand-1)}.outline[data-v-47ba0ca8]{padding:8px 0;background-color:var(--vp-c-bg-soft)}.flyout-enter-active[data-v-47ba0ca8]{transition:all .2s ease-out}.flyout-leave-active[data-v-47ba0ca8]{transition:all .15s ease-in}.flyout-enter-from[data-v-47ba0ca8],.flyout-leave-to[data-v-47ba0ca8]{opacity:0;transform:translateY(-16px)}.VPLocalNav[data-v-c018a891]{position:sticky;top:0;left:0;z-index:var(--vp-z-index-local-nav);border-bottom:1px solid var(--vp-c-gutter);padding-top:var(--vp-layout-top-height, 0px);width:100%;background-color:var(--vp-local-nav-bg-color)}.VPLocalNav.fixed[data-v-c018a891]{position:fixed}@media (min-width: 960px){.VPLocalNav[data-v-c018a891]{top:var(--vp-nav-height)}.VPLocalNav.has-sidebar[data-v-c018a891]{padding-left:var(--vp-sidebar-width)}.VPLocalNav.empty[data-v-c018a891]{display:none}}@media (min-width: 1280px){.VPLocalNav[data-v-c018a891]{display:none}}@media (min-width: 1440px){.VPLocalNav.has-sidebar[data-v-c018a891]{padding-left:calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))}}.container[data-v-c018a891]{display:flex;justify-content:space-between;align-items:center}.menu[data-v-c018a891]{display:flex;align-items:center;padding:12px 24px 11px;line-height:24px;font-size:12px;font-weight:500;color:var(--vp-c-text-2);transition:color .5s}.menu[data-v-c018a891]:hover{color:var(--vp-c-text-1);transition:color .25s}@media (min-width: 768px){.menu[data-v-c018a891]{padding:0 32px}}@media (min-width: 960px){.menu[data-v-c018a891]{display:none}}.menu-icon[data-v-c018a891]{margin-right:8px;font-size:14px}.VPOutlineDropdown[data-v-c018a891]{padding:12px 24px 11px}@media (min-width: 768px){.VPOutlineDropdown[data-v-c018a891]{padding:12px 32px 11px}}.VPSwitch[data-v-29792024]{position:relative;border-radius:11px;display:block;width:40px;height:22px;flex-shrink:0;border:1px solid var(--vp-input-border-color);background-color:var(--vp-input-switch-bg-color);transition:border-color .25s!important}.VPSwitch[data-v-29792024]:hover{border-color:var(--vp-c-brand-1)}.check[data-v-29792024]{position:absolute;top:1px;left:1px;width:18px;height:18px;border-radius:50%;background-color:var(--vp-c-neutral-inverse);box-shadow:var(--vp-shadow-1);transition:transform .25s!important}.icon[data-v-29792024]{position:relative;display:block;width:18px;height:18px;border-radius:50%;overflow:hidden}.icon[data-v-29792024] [class^=vpi-]{position:absolute;top:3px;left:3px;width:12px;height:12px;color:var(--vp-c-text-2)}.dark .icon[data-v-29792024] [class^=vpi-]{color:var(--vp-c-text-1);transition:opacity .25s!important}.sun[data-v-0e6d6f6a]{opacity:1}.moon[data-v-0e6d6f6a],.dark .sun[data-v-0e6d6f6a]{opacity:0}.dark .moon[data-v-0e6d6f6a]{opacity:1}.dark .VPSwitchAppearance[data-v-0e6d6f6a] .check{transform:translate(18px)}.VPNavBarAppearance[data-v-c222bf71]{display:none}@media (min-width: 1280px){.VPNavBarAppearance[data-v-c222bf71]{display:flex;align-items:center}}.VPMenuGroup+.VPMenuLink[data-v-b7305b0e]{margin:12px -12px 0;border-top:1px solid var(--vp-c-divider);padding:12px 12px 0}.link[data-v-b7305b0e]{display:block;border-radius:6px;padding:0 12px;line-height:32px;font-size:14px;font-weight:500;color:var(--vp-c-text-1);white-space:nowrap;transition:background-color .25s,color .25s}.link[data-v-b7305b0e]:hover{color:var(--vp-c-brand-1);background-color:var(--vp-c-default-soft)}.link.active[data-v-b7305b0e]{color:var(--vp-c-brand-1)}.VPMenuGroup[data-v-bd822ce4]{margin:12px -12px 0;border-top:1px solid var(--vp-c-divider);padding:12px 12px 0}.VPMenuGroup[data-v-bd822ce4]:first-child{margin-top:0;border-top:0;padding-top:0}.VPMenuGroup+.VPMenuGroup[data-v-bd822ce4]{margin-top:12px;border-top:1px solid var(--vp-c-divider)}.title[data-v-bd822ce4]{padding:0 12px;line-height:32px;font-size:14px;font-weight:600;color:var(--vp-c-text-2);white-space:nowrap;transition:color .25s}.VPMenu[data-v-280aa891]{border-radius:12px;padding:12px;min-width:128px;border:1px solid var(--vp-c-divider);background-color:var(--vp-c-bg-elv);box-shadow:var(--vp-shadow-3);transition:background-color .5s;max-height:calc(100vh - var(--vp-nav-height));overflow-y:auto}.VPMenu[data-v-280aa891] .group{margin:0 -12px;padding:0 12px 12px}.VPMenu[data-v-280aa891] .group+.group{border-top:1px solid var(--vp-c-divider);padding:11px 12px 12px}.VPMenu[data-v-280aa891] .group:last-child{padding-bottom:0}.VPMenu[data-v-280aa891] .group+.item{border-top:1px solid var(--vp-c-divider);padding:11px 16px 0}.VPMenu[data-v-280aa891] .item{padding:0 16px;white-space:nowrap}.VPMenu[data-v-280aa891] .label{flex-grow:1;line-height:28px;font-size:12px;font-weight:500;color:var(--vp-c-text-2);transition:color .5s}.VPMenu[data-v-280aa891] .action{padding-left:24px}.VPFlyout[data-v-880135bb]{position:relative}.VPFlyout[data-v-880135bb]:hover{color:var(--vp-c-brand-1);transition:color .25s}.VPFlyout:hover .text[data-v-880135bb]{color:var(--vp-c-text-2)}.VPFlyout:hover .icon[data-v-880135bb]{fill:var(--vp-c-text-2)}.VPFlyout.active .text[data-v-880135bb]{color:var(--vp-c-brand-1)}.VPFlyout.active:hover .text[data-v-880135bb]{color:var(--vp-c-brand-2)}.VPFlyout:hover .menu[data-v-880135bb],.button[aria-expanded=true]+.menu[data-v-880135bb]{opacity:1;visibility:visible;transform:translateY(0)}.button[aria-expanded=false]+.menu[data-v-880135bb]{opacity:0;visibility:hidden;transform:translateY(0)}.button[data-v-880135bb]{display:flex;align-items:center;padding:0 12px;height:var(--vp-nav-height);color:var(--vp-c-text-1);transition:color .5s}.text[data-v-880135bb]{display:flex;align-items:center;line-height:var(--vp-nav-height);font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:color .25s}.option-icon[data-v-880135bb]{margin-right:0;font-size:16px}.text-icon[data-v-880135bb]{margin-left:4px;font-size:14px}.icon[data-v-880135bb]{font-size:20px;transition:fill .25s}.menu[data-v-880135bb]{position:absolute;top:calc(var(--vp-nav-height) / 2 + 20px);right:0;opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s,transform .25s}.VPSocialLink[data-v-cb925418]{display:flex;justify-content:center;align-items:center;width:36px;height:36px;color:var(--vp-c-text-2);transition:color .5s}.VPSocialLink[data-v-cb925418]:hover{color:var(--vp-c-text-1);transition:color .25s}.VPSocialLink[data-v-cb925418]>svg,.VPSocialLink[data-v-cb925418]>[class^=vpi-social-]{width:20px;height:20px;fill:currentColor}.VPSocialLinks[data-v-3adab7c4]{display:flex;justify-content:center}.VPNavBarExtra[data-v-9d822b30]{display:none;margin-right:-12px}@media (min-width: 768px){.VPNavBarExtra[data-v-9d822b30]{display:block}}@media (min-width: 1280px){.VPNavBarExtra[data-v-9d822b30]{display:none}}.trans-title[data-v-9d822b30]{padding:0 24px 0 12px;line-height:32px;font-size:14px;font-weight:700;color:var(--vp-c-text-1)}.item.appearance[data-v-9d822b30],.item.social-links[data-v-9d822b30]{display:flex;align-items:center;padding:0 12px}.item.appearance[data-v-9d822b30]{min-width:176px}.appearance-action[data-v-9d822b30]{margin-right:-2px}.social-links-list[data-v-9d822b30]{margin:-4px -8px}.VPNavBarHamburger[data-v-aa3920fb]{display:flex;justify-content:center;align-items:center;width:48px;height:var(--vp-nav-height)}@media (min-width: 768px){.VPNavBarHamburger[data-v-aa3920fb]{display:none}}.container[data-v-aa3920fb]{position:relative;width:16px;height:14px;overflow:hidden}.VPNavBarHamburger:hover .top[data-v-aa3920fb]{top:0;left:0;transform:translate(4px)}.VPNavBarHamburger:hover .middle[data-v-aa3920fb]{top:6px;left:0;transform:translate(0)}.VPNavBarHamburger:hover .bottom[data-v-aa3920fb]{top:12px;left:0;transform:translate(8px)}.VPNavBarHamburger.active .top[data-v-aa3920fb]{top:6px;transform:translate(0) rotate(225deg)}.VPNavBarHamburger.active .middle[data-v-aa3920fb]{top:6px;transform:translate(16px)}.VPNavBarHamburger.active .bottom[data-v-aa3920fb]{top:6px;transform:translate(0) rotate(135deg)}.VPNavBarHamburger.active:hover .top[data-v-aa3920fb],.VPNavBarHamburger.active:hover .middle[data-v-aa3920fb],.VPNavBarHamburger.active:hover .bottom[data-v-aa3920fb]{background-color:var(--vp-c-text-2);transition:top .25s,background-color .25s,transform .25s}.top[data-v-aa3920fb],.middle[data-v-aa3920fb],.bottom[data-v-aa3920fb]{position:absolute;width:16px;height:2px;background-color:var(--vp-c-text-1);transition:top .25s,background-color .5s,transform .25s}.top[data-v-aa3920fb]{top:0;left:0;transform:translate(0)}.middle[data-v-aa3920fb]{top:6px;left:0;transform:translate(8px)}.bottom[data-v-aa3920fb]{top:12px;left:0;transform:translate(4px)}.VPNavBarMenuLink[data-v-db690c89]{display:flex;align-items:center;padding:0 12px;line-height:var(--vp-nav-height);font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:color .25s}.VPNavBarMenuLink.active[data-v-db690c89],.VPNavBarMenuLink[data-v-db690c89]:hover{color:var(--vp-c-brand-1)}.VPNavBarMenu[data-v-51416b45]{display:none}@media (min-width: 768px){.VPNavBarMenu[data-v-51416b45]{display:flex}}/*! @docsearch/css 3.6.1 | MIT License | © Algolia, Inc. and contributors | https://docsearch.algolia.com */:root{--docsearch-primary-color:#5468ff;--docsearch-text-color:#1c1e21;--docsearch-spacing:12px;--docsearch-icon-stroke-width:1.4;--docsearch-highlight-color:var(--docsearch-primary-color);--docsearch-muted-color:#969faf;--docsearch-container-background:rgba(101,108,133,.8);--docsearch-logo-color:#5468ff;--docsearch-modal-width:560px;--docsearch-modal-height:600px;--docsearch-modal-background:#f5f6f7;--docsearch-modal-shadow:inset 1px 1px 0 0 hsla(0,0%,100%,.5),0 3px 8px 0 #555a64;--docsearch-searchbox-height:56px;--docsearch-searchbox-background:#ebedf0;--docsearch-searchbox-focus-background:#fff;--docsearch-searchbox-shadow:inset 0 0 0 2px var(--docsearch-primary-color);--docsearch-hit-height:56px;--docsearch-hit-color:#444950;--docsearch-hit-active-color:#fff;--docsearch-hit-background:#fff;--docsearch-hit-shadow:0 1px 3px 0 #d4d9e1;--docsearch-key-gradient:linear-gradient(-225deg,#d5dbe4,#f8f8f8);--docsearch-key-shadow:inset 0 -2px 0 0 #cdcde6,inset 0 0 1px 1px #fff,0 1px 2px 1px rgba(30,35,90,.4);--docsearch-key-pressed-shadow:inset 0 -2px 0 0 #cdcde6,inset 0 0 1px 1px #fff,0 1px 1px 0 rgba(30,35,90,.4);--docsearch-footer-height:44px;--docsearch-footer-background:#fff;--docsearch-footer-shadow:0 -1px 0 0 #e0e3e8,0 -3px 6px 0 rgba(69,98,155,.12)}html[data-theme=dark]{--docsearch-text-color:#f5f6f7;--docsearch-container-background:rgba(9,10,17,.8);--docsearch-modal-background:#15172a;--docsearch-modal-shadow:inset 1px 1px 0 0 #2c2e40,0 3px 8px 0 #000309;--docsearch-searchbox-background:#090a11;--docsearch-searchbox-focus-background:#000;--docsearch-hit-color:#bec3c9;--docsearch-hit-shadow:none;--docsearch-hit-background:#090a11;--docsearch-key-gradient:linear-gradient(-26.5deg,#565872,#31355b);--docsearch-key-shadow:inset 0 -2px 0 0 #282d55,inset 0 0 1px 1px #51577d,0 2px 2px 0 rgba(3,4,9,.3);--docsearch-key-pressed-shadow:inset 0 -2px 0 0 #282d55,inset 0 0 1px 1px #51577d,0 1px 1px 0 rgba(3,4,9,.30196078431372547);--docsearch-footer-background:#1e2136;--docsearch-footer-shadow:inset 0 1px 0 0 rgba(73,76,106,.5),0 -4px 8px 0 rgba(0,0,0,.2);--docsearch-logo-color:#fff;--docsearch-muted-color:#7f8497}.DocSearch-Button{align-items:center;background:var(--docsearch-searchbox-background);border:0;border-radius:40px;color:var(--docsearch-muted-color);cursor:pointer;display:flex;font-weight:500;height:36px;justify-content:space-between;margin:0 0 0 16px;padding:0 8px;-webkit-user-select:none;user-select:none}.DocSearch-Button:active,.DocSearch-Button:focus,.DocSearch-Button:hover{background:var(--docsearch-searchbox-focus-background);box-shadow:var(--docsearch-searchbox-shadow);color:var(--docsearch-text-color);outline:none}.DocSearch-Button-Container{align-items:center;display:flex}.DocSearch-Search-Icon{stroke-width:1.6}.DocSearch-Button .DocSearch-Search-Icon{color:var(--docsearch-text-color)}.DocSearch-Button-Placeholder{font-size:1rem;padding:0 12px 0 6px}.DocSearch-Button-Keys{display:flex;min-width:calc(40px + .8em)}.DocSearch-Button-Key{align-items:center;background:var(--docsearch-key-gradient);border-radius:3px;box-shadow:var(--docsearch-key-shadow);color:var(--docsearch-muted-color);display:flex;height:18px;justify-content:center;margin-right:.4em;position:relative;padding:0 0 2px;border:0;top:-1px;width:20px}.DocSearch-Button-Key--pressed{transform:translate3d(0,1px,0);box-shadow:var(--docsearch-key-pressed-shadow)}@media (max-width:768px){.DocSearch-Button-Keys,.DocSearch-Button-Placeholder{display:none}}.DocSearch--active{overflow:hidden!important}.DocSearch-Container,.DocSearch-Container *{box-sizing:border-box}.DocSearch-Container{background-color:var(--docsearch-container-background);height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:200}.DocSearch-Container a{text-decoration:none}.DocSearch-Link{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;color:var(--docsearch-highlight-color);cursor:pointer;font:inherit;margin:0;padding:0}.DocSearch-Modal{background:var(--docsearch-modal-background);border-radius:6px;box-shadow:var(--docsearch-modal-shadow);flex-direction:column;margin:60px auto auto;max-width:var(--docsearch-modal-width);position:relative}.DocSearch-SearchBar{display:flex;padding:var(--docsearch-spacing) var(--docsearch-spacing) 0}.DocSearch-Form{align-items:center;background:var(--docsearch-searchbox-focus-background);border-radius:4px;box-shadow:var(--docsearch-searchbox-shadow);display:flex;height:var(--docsearch-searchbox-height);margin:0;padding:0 var(--docsearch-spacing);position:relative;width:100%}.DocSearch-Input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;color:var(--docsearch-text-color);flex:1;font:inherit;font-size:1.2em;height:100%;outline:none;padding:0 0 0 8px;width:80%}.DocSearch-Input::placeholder{color:var(--docsearch-muted-color);opacity:1}.DocSearch-Input::-webkit-search-cancel-button,.DocSearch-Input::-webkit-search-decoration,.DocSearch-Input::-webkit-search-results-button,.DocSearch-Input::-webkit-search-results-decoration{display:none}.DocSearch-LoadingIndicator,.DocSearch-MagnifierLabel,.DocSearch-Reset{margin:0;padding:0}.DocSearch-MagnifierLabel,.DocSearch-Reset{align-items:center;color:var(--docsearch-highlight-color);display:flex;justify-content:center}.DocSearch-Container--Stalled .DocSearch-MagnifierLabel,.DocSearch-LoadingIndicator{display:none}.DocSearch-Container--Stalled .DocSearch-LoadingIndicator{align-items:center;color:var(--docsearch-highlight-color);display:flex;justify-content:center}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Reset{animation:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:50%;color:var(--docsearch-icon-color);cursor:pointer;right:0;stroke-width:var(--docsearch-icon-stroke-width)}}.DocSearch-Reset{animation:fade-in .1s ease-in forwards;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:50%;color:var(--docsearch-icon-color);cursor:pointer;padding:2px;right:0;stroke-width:var(--docsearch-icon-stroke-width)}.DocSearch-Reset[hidden]{display:none}.DocSearch-Reset:hover{color:var(--docsearch-highlight-color)}.DocSearch-LoadingIndicator svg,.DocSearch-MagnifierLabel svg{height:24px;width:24px}.DocSearch-Cancel{display:none}.DocSearch-Dropdown{max-height:calc(var(--docsearch-modal-height) - var(--docsearch-searchbox-height) - var(--docsearch-spacing) - var(--docsearch-footer-height));min-height:var(--docsearch-spacing);overflow-y:auto;overflow-y:overlay;padding:0 var(--docsearch-spacing);scrollbar-color:var(--docsearch-muted-color) var(--docsearch-modal-background);scrollbar-width:thin}.DocSearch-Dropdown::-webkit-scrollbar{width:12px}.DocSearch-Dropdown::-webkit-scrollbar-track{background:transparent}.DocSearch-Dropdown::-webkit-scrollbar-thumb{background-color:var(--docsearch-muted-color);border:3px solid var(--docsearch-modal-background);border-radius:20px}.DocSearch-Dropdown ul{list-style:none;margin:0;padding:0}.DocSearch-Label{font-size:.75em;line-height:1.6em}.DocSearch-Help,.DocSearch-Label{color:var(--docsearch-muted-color)}.DocSearch-Help{font-size:.9em;margin:0;-webkit-user-select:none;user-select:none}.DocSearch-Title{font-size:1.2em}.DocSearch-Logo a{display:flex}.DocSearch-Logo svg{color:var(--docsearch-logo-color);margin-left:8px}.DocSearch-Hits:last-of-type{margin-bottom:24px}.DocSearch-Hits mark{background:none;color:var(--docsearch-highlight-color)}.DocSearch-HitsFooter{color:var(--docsearch-muted-color);display:flex;font-size:.85em;justify-content:center;margin-bottom:var(--docsearch-spacing);padding:var(--docsearch-spacing)}.DocSearch-HitsFooter a{border-bottom:1px solid;color:inherit}.DocSearch-Hit{border-radius:4px;display:flex;padding-bottom:4px;position:relative}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit--deleting{transition:none}}.DocSearch-Hit--deleting{opacity:0;transition:all .25s linear}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit--favoriting{transition:none}}.DocSearch-Hit--favoriting{transform:scale(0);transform-origin:top center;transition:all .25s linear;transition-delay:.25s}.DocSearch-Hit a{background:var(--docsearch-hit-background);border-radius:4px;box-shadow:var(--docsearch-hit-shadow);display:block;padding-left:var(--docsearch-spacing);width:100%}.DocSearch-Hit-source{background:var(--docsearch-modal-background);color:var(--docsearch-highlight-color);font-size:.85em;font-weight:600;line-height:32px;margin:0 -4px;padding:8px 4px 0;position:sticky;top:0;z-index:10}.DocSearch-Hit-Tree{color:var(--docsearch-muted-color);height:var(--docsearch-hit-height);opacity:.5;stroke-width:var(--docsearch-icon-stroke-width);width:24px}.DocSearch-Hit[aria-selected=true] a{background-color:var(--docsearch-highlight-color)}.DocSearch-Hit[aria-selected=true] mark{text-decoration:underline}.DocSearch-Hit-Container{align-items:center;color:var(--docsearch-hit-color);display:flex;flex-direction:row;height:var(--docsearch-hit-height);padding:0 var(--docsearch-spacing) 0 0}.DocSearch-Hit-icon{height:20px;width:20px}.DocSearch-Hit-action,.DocSearch-Hit-icon{color:var(--docsearch-muted-color);stroke-width:var(--docsearch-icon-stroke-width)}.DocSearch-Hit-action{align-items:center;display:flex;height:22px;width:22px}.DocSearch-Hit-action svg{display:block;height:18px;width:18px}.DocSearch-Hit-action+.DocSearch-Hit-action{margin-left:6px}.DocSearch-Hit-action-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:50%;color:inherit;cursor:pointer;padding:2px}svg.DocSearch-Hit-Select-Icon{display:none}.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-Select-Icon{display:block}.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{background:#0003;transition:background-color .1s ease-in}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{transition:none}}.DocSearch-Hit-action-button:focus path,.DocSearch-Hit-action-button:hover path{fill:#fff}.DocSearch-Hit-content-wrapper{display:flex;flex:1 1 auto;flex-direction:column;font-weight:500;justify-content:center;line-height:1.2em;margin:0 8px;overflow-x:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap;width:80%}.DocSearch-Hit-title{font-size:.9em}.DocSearch-Hit-path{color:var(--docsearch-muted-color);font-size:.75em}.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-action,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-icon,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-path,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-text,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-title,.DocSearch-Hit[aria-selected=true] .DocSearch-Hit-Tree,.DocSearch-Hit[aria-selected=true] mark{color:var(--docsearch-hit-active-color)!important}@media screen and (prefers-reduced-motion:reduce){.DocSearch-Hit-action-button:focus,.DocSearch-Hit-action-button:hover{background:#0003;transition:none}}.DocSearch-ErrorScreen,.DocSearch-NoResults,.DocSearch-StartScreen{font-size:.9em;margin:0 auto;padding:36px 0;text-align:center;width:80%}.DocSearch-Screen-Icon{color:var(--docsearch-muted-color);padding-bottom:12px}.DocSearch-NoResults-Prefill-List{display:inline-block;padding-bottom:24px;text-align:left}.DocSearch-NoResults-Prefill-List ul{display:inline-block;padding:8px 0 0}.DocSearch-NoResults-Prefill-List li{list-style-position:inside;list-style-type:"» "}.DocSearch-Prefill{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;border-radius:1em;color:var(--docsearch-highlight-color);cursor:pointer;display:inline-block;font-size:1em;font-weight:700;padding:0}.DocSearch-Prefill:focus,.DocSearch-Prefill:hover{outline:none;text-decoration:underline}.DocSearch-Footer{align-items:center;background:var(--docsearch-footer-background);border-radius:0 0 8px 8px;box-shadow:var(--docsearch-footer-shadow);display:flex;flex-direction:row-reverse;flex-shrink:0;height:var(--docsearch-footer-height);justify-content:space-between;padding:0 var(--docsearch-spacing);position:relative;-webkit-user-select:none;user-select:none;width:100%;z-index:300}.DocSearch-Commands{color:var(--docsearch-muted-color);display:flex;list-style:none;margin:0;padding:0}.DocSearch-Commands li{align-items:center;display:flex}.DocSearch-Commands li:not(:last-of-type){margin-right:.8em}.DocSearch-Commands-Key{align-items:center;background:var(--docsearch-key-gradient);border-radius:2px;box-shadow:var(--docsearch-key-shadow);display:flex;height:18px;justify-content:center;margin-right:.4em;padding:0 0 1px;color:var(--docsearch-muted-color);border:0;width:20px}.DocSearch-VisuallyHiddenForAccessibility{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}@media (max-width:768px){:root{--docsearch-spacing:10px;--docsearch-footer-height:40px}.DocSearch-Dropdown{height:100%}.DocSearch-Container{height:100vh;height:-webkit-fill-available;height:calc(var(--docsearch-vh, 1vh)*100);position:absolute}.DocSearch-Footer{border-radius:0;bottom:0;position:absolute}.DocSearch-Hit-content-wrapper{display:flex;position:relative;width:80%}.DocSearch-Modal{border-radius:0;box-shadow:none;height:100vh;height:-webkit-fill-available;height:calc(var(--docsearch-vh, 1vh)*100);margin:0;max-width:100%;width:100%}.DocSearch-Dropdown{max-height:calc(var(--docsearch-vh, 1vh)*100 - var(--docsearch-searchbox-height) - var(--docsearch-spacing) - var(--docsearch-footer-height))}.DocSearch-Cancel{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;color:var(--docsearch-highlight-color);cursor:pointer;display:inline-block;flex:none;font:inherit;font-size:1em;font-weight:500;margin-left:var(--docsearch-spacing);outline:none;overflow:hidden;padding:0;-webkit-user-select:none;user-select:none;white-space:nowrap}.DocSearch-Commands,.DocSearch-Hit-Tree{display:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}[class*=DocSearch]{--docsearch-primary-color: var(--vp-c-brand-1);--docsearch-highlight-color: var(--docsearch-primary-color);--docsearch-text-color: var(--vp-c-text-1);--docsearch-muted-color: var(--vp-c-text-2);--docsearch-searchbox-shadow: none;--docsearch-searchbox-background: transparent;--docsearch-searchbox-focus-background: transparent;--docsearch-key-gradient: transparent;--docsearch-key-shadow: none;--docsearch-modal-background: var(--vp-c-bg-soft);--docsearch-footer-background: var(--vp-c-bg)}.dark [class*=DocSearch]{--docsearch-modal-shadow: none;--docsearch-footer-shadow: none;--docsearch-logo-color: var(--vp-c-text-2);--docsearch-hit-background: var(--vp-c-default-soft);--docsearch-hit-color: var(--vp-c-text-2);--docsearch-hit-shadow: none}.DocSearch-Button{display:flex;justify-content:center;align-items:center;margin:0;padding:0;width:48px;height:55px;background:transparent;transition:border-color .25s}.DocSearch-Button:hover{background:transparent}.DocSearch-Button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}.DocSearch-Button-Key--pressed{transform:none;box-shadow:none}.DocSearch-Button:focus:not(:focus-visible){outline:none!important}@media (min-width: 768px){.DocSearch-Button{justify-content:flex-start;border:1px solid transparent;border-radius:8px;padding:0 10px 0 12px;width:100%;height:40px;background-color:var(--vp-c-bg-alt)}.DocSearch-Button:hover{border-color:var(--vp-c-brand-1);background:var(--vp-c-bg-alt)}}.DocSearch-Button .DocSearch-Button-Container{display:flex;align-items:center}.DocSearch-Button .DocSearch-Search-Icon{position:relative;width:16px;height:16px;color:var(--vp-c-text-1);fill:currentColor;transition:color .5s}.DocSearch-Button:hover .DocSearch-Search-Icon{color:var(--vp-c-text-1)}@media (min-width: 768px){.DocSearch-Button .DocSearch-Search-Icon{top:1px;margin-right:8px;width:14px;height:14px;color:var(--vp-c-text-2)}}.DocSearch-Button .DocSearch-Button-Placeholder{display:none;margin-top:2px;padding:0 16px 0 0;font-size:13px;font-weight:500;color:var(--vp-c-text-2);transition:color .5s}.DocSearch-Button:hover .DocSearch-Button-Placeholder{color:var(--vp-c-text-1)}@media (min-width: 768px){.DocSearch-Button .DocSearch-Button-Placeholder{display:inline-block}}.DocSearch-Button .DocSearch-Button-Keys{direction:ltr;display:none;min-width:auto}@media (min-width: 768px){.DocSearch-Button .DocSearch-Button-Keys{display:flex;align-items:center}}.DocSearch-Button .DocSearch-Button-Key{display:block;margin:2px 0 0;border:1px solid var(--vp-c-divider);border-right:none;border-radius:4px 0 0 4px;padding-left:6px;min-width:0;width:auto;height:22px;line-height:22px;font-family:var(--vp-font-family-base);font-size:12px;font-weight:500;transition:color .5s,border-color .5s}.DocSearch-Button .DocSearch-Button-Key+.DocSearch-Button-Key{border-right:1px solid var(--vp-c-divider);border-left:none;border-radius:0 4px 4px 0;padding-left:2px;padding-right:6px}.DocSearch-Button .DocSearch-Button-Key:first-child{font-size:0!important}.DocSearch-Button .DocSearch-Button-Key:first-child:after{content:"Ctrl";font-size:12px;letter-spacing:normal;color:var(--docsearch-muted-color)}.mac .DocSearch-Button .DocSearch-Button-Key:first-child:after{content:"⌘"}.DocSearch-Button .DocSearch-Button-Key:first-child>*{display:none}.DocSearch-Search-Icon{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' stroke-width='1.6' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' d='m14.386 14.386 4.088 4.088-4.088-4.088A7.533 7.533 0 1 1 3.733 3.733a7.533 7.533 0 0 1 10.653 10.653z'/%3E%3C/svg%3E")}.VPNavBarSearch{display:flex;align-items:center}@media (min-width: 768px){.VPNavBarSearch{flex-grow:1;padding-left:24px}}@media (min-width: 960px){.VPNavBarSearch{padding-left:32px}}.dark .DocSearch-Footer{border-top:1px solid var(--vp-c-divider)}.DocSearch-Form{border:1px solid var(--vp-c-brand-1);background-color:var(--vp-c-white)}.dark .DocSearch-Form{background-color:var(--vp-c-default-soft)}.DocSearch-Screen-Icon>svg{margin:auto}.VPNavBarSocialLinks[data-v-52114c91]{display:none}@media (min-width: 1280px){.VPNavBarSocialLinks[data-v-52114c91]{display:flex;align-items:center}}.title[data-v-88897abb]{display:flex;align-items:center;border-bottom:1px solid transparent;width:100%;height:var(--vp-nav-height);font-size:16px;font-weight:600;color:var(--vp-c-text-1);transition:opacity .25s}@media (min-width: 960px){.title[data-v-88897abb]{flex-shrink:0}.VPNavBarTitle.has-sidebar .title[data-v-88897abb]{border-bottom-color:var(--vp-c-divider)}}[data-v-88897abb] .logo{margin-right:8px;height:var(--vp-nav-logo-height)}.VPNavBarTranslations[data-v-e872f165]{display:none}@media (min-width: 1280px){.VPNavBarTranslations[data-v-e872f165]{display:flex;align-items:center}}.title[data-v-e872f165]{padding:0 24px 0 12px;line-height:32px;font-size:14px;font-weight:700;color:var(--vp-c-text-1)}.VPNavBar[data-v-d6015568]{position:relative;height:var(--vp-nav-height);pointer-events:none;white-space:nowrap;transition:background-color .25s}.VPNavBar.screen-open[data-v-d6015568]{transition:none;background-color:var(--vp-nav-bg-color);border-bottom:1px solid var(--vp-c-divider)}.VPNavBar[data-v-d6015568]:not(.home){background-color:var(--vp-nav-bg-color)}@media (min-width: 960px){.VPNavBar[data-v-d6015568]:not(.home){background-color:transparent}.VPNavBar[data-v-d6015568]:not(.has-sidebar):not(.home.top){background-color:var(--vp-nav-bg-color)}}.wrapper[data-v-d6015568]{padding:0 8px 0 24px}@media (min-width: 768px){.wrapper[data-v-d6015568]{padding:0 32px}}@media (min-width: 960px){.VPNavBar.has-sidebar .wrapper[data-v-d6015568]{padding:0}}.container[data-v-d6015568]{display:flex;justify-content:space-between;margin:0 auto;max-width:calc(var(--vp-layout-max-width) - 64px);height:var(--vp-nav-height);pointer-events:none}.container>.title[data-v-d6015568],.container>.content[data-v-d6015568]{pointer-events:none}.container[data-v-d6015568] *{pointer-events:auto}@media (min-width: 960px){.VPNavBar.has-sidebar .container[data-v-d6015568]{max-width:100%}}.title[data-v-d6015568]{flex-shrink:0;height:calc(var(--vp-nav-height) - 1px);transition:background-color .5s}@media (min-width: 960px){.VPNavBar.has-sidebar .title[data-v-d6015568]{position:absolute;top:0;left:0;z-index:2;padding:0 32px;width:var(--vp-sidebar-width);height:var(--vp-nav-height);background-color:transparent}}@media (min-width: 1440px){.VPNavBar.has-sidebar .title[data-v-d6015568]{padding-left:max(32px,calc((100% - (var(--vp-layout-max-width) - 64px)) / 2));width:calc((100% - (var(--vp-layout-max-width) - 64px)) / 2 + var(--vp-sidebar-width) - 32px)}}.content[data-v-d6015568]{flex-grow:1}@media (min-width: 960px){.VPNavBar.has-sidebar .content[data-v-d6015568]{position:relative;z-index:1;padding-right:32px;padding-left:var(--vp-sidebar-width)}}@media (min-width: 1440px){.VPNavBar.has-sidebar .content[data-v-d6015568]{padding-right:calc((100vw - var(--vp-layout-max-width)) / 2 + 32px);padding-left:calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))}}.content-body[data-v-d6015568]{display:flex;justify-content:flex-end;align-items:center;height:var(--vp-nav-height);transition:background-color .5s}@media (min-width: 960px){.VPNavBar:not(.home.top) .content-body[data-v-d6015568]{position:relative;background-color:var(--vp-nav-bg-color)}.VPNavBar:not(.has-sidebar):not(.home.top) .content-body[data-v-d6015568]{background-color:transparent}}@media (max-width: 767px){.content-body[data-v-d6015568]{column-gap:.5rem}}.menu+.translations[data-v-d6015568]:before,.menu+.appearance[data-v-d6015568]:before,.menu+.social-links[data-v-d6015568]:before,.translations+.appearance[data-v-d6015568]:before,.appearance+.social-links[data-v-d6015568]:before{margin-right:8px;margin-left:8px;width:1px;height:24px;background-color:var(--vp-c-divider);content:""}.menu+.appearance[data-v-d6015568]:before,.translations+.appearance[data-v-d6015568]:before{margin-right:16px}.appearance+.social-links[data-v-d6015568]:before{margin-left:16px}.social-links[data-v-d6015568]{margin-right:-8px}.divider[data-v-d6015568]{width:100%;height:1px}@media (min-width: 960px){.VPNavBar.has-sidebar .divider[data-v-d6015568]{padding-left:var(--vp-sidebar-width)}}@media (min-width: 1440px){.VPNavBar.has-sidebar .divider[data-v-d6015568]{padding-left:calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width))}}.divider-line[data-v-d6015568]{width:100%;height:1px;transition:background-color .5s}.VPNavBar:not(.home) .divider-line[data-v-d6015568]{background-color:var(--vp-c-gutter)}@media (min-width: 960px){.VPNavBar:not(.home.top) .divider-line[data-v-d6015568]{background-color:var(--vp-c-gutter)}.VPNavBar:not(.has-sidebar):not(.home.top) .divider[data-v-d6015568]{background-color:var(--vp-c-gutter)}}.VPNavScreenAppearance[data-v-0a5ebde1]{display:flex;justify-content:space-between;align-items:center;border-radius:8px;padding:12px 14px 12px 16px;background-color:var(--vp-c-bg-soft)}.text[data-v-0a5ebde1]{line-height:24px;font-size:12px;font-weight:500;color:var(--vp-c-text-2)}.VPNavScreenMenuLink[data-v-be396de1]{display:block;border-bottom:1px solid var(--vp-c-divider);padding:12px 0 11px;line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:border-color .25s,color .25s}.VPNavScreenMenuLink[data-v-be396de1]:hover{color:var(--vp-c-brand-1)}.VPNavScreenMenuGroupLink[data-v-b790879e]{display:block;margin-left:12px;line-height:32px;font-size:14px;font-weight:400;color:var(--vp-c-text-1);transition:color .25s}.VPNavScreenMenuGroupLink[data-v-b790879e]:hover{color:var(--vp-c-brand-1)}.VPNavScreenMenuGroupSection[data-v-23d42460]{display:block}.title[data-v-23d42460]{line-height:32px;font-size:13px;font-weight:700;color:var(--vp-c-text-2);transition:color .25s}.VPNavScreenMenuGroup[data-v-b53b7144]{border-bottom:1px solid var(--vp-c-divider);height:48px;overflow:hidden;transition:border-color .5s}.VPNavScreenMenuGroup .items[data-v-b53b7144]{visibility:hidden}.VPNavScreenMenuGroup.open .items[data-v-b53b7144]{visibility:visible}.VPNavScreenMenuGroup.open[data-v-b53b7144]{padding-bottom:10px;height:auto}.VPNavScreenMenuGroup.open .button[data-v-b53b7144]{padding-bottom:6px;color:var(--vp-c-brand-1)}.VPNavScreenMenuGroup.open .button-icon[data-v-b53b7144]{transform:rotate(45deg)}.button[data-v-b53b7144]{display:flex;justify-content:space-between;align-items:center;padding:12px 4px 11px 0;width:100%;line-height:24px;font-size:14px;font-weight:500;color:var(--vp-c-text-1);transition:color .25s}.button[data-v-b53b7144]:hover{color:var(--vp-c-brand-1)}.button-icon[data-v-b53b7144]{transition:transform .25s}.group[data-v-b53b7144]:first-child{padding-top:0}.group+.group[data-v-b53b7144],.group+.item[data-v-b53b7144]{padding-top:4px}.VPNavScreenTranslations[data-v-47ae1f67]{height:24px;overflow:hidden}.VPNavScreenTranslations.open[data-v-47ae1f67]{height:auto}.title[data-v-47ae1f67]{display:flex;align-items:center;font-size:14px;font-weight:500;color:var(--vp-c-text-1)}.icon[data-v-47ae1f67]{font-size:16px}.icon.lang[data-v-47ae1f67]{margin-right:8px}.icon.chevron[data-v-47ae1f67]{margin-left:4px}.list[data-v-47ae1f67]{padding:4px 0 0 24px}.link[data-v-47ae1f67]{line-height:32px;font-size:13px;color:var(--vp-c-text-1)}.VPNavScreen[data-v-b9c5a51e]{position:fixed;top:calc(var(--vp-nav-height) + var(--vp-layout-top-height, 0px));right:0;bottom:0;left:0;padding:0 32px;width:100%;background-color:var(--vp-nav-screen-bg-color);overflow-y:auto;transition:background-color .25s;pointer-events:auto}.VPNavScreen.fade-enter-active[data-v-b9c5a51e],.VPNavScreen.fade-leave-active[data-v-b9c5a51e]{transition:opacity .25s}.VPNavScreen.fade-enter-active .container[data-v-b9c5a51e],.VPNavScreen.fade-leave-active .container[data-v-b9c5a51e]{transition:transform .25s ease}.VPNavScreen.fade-enter-from[data-v-b9c5a51e],.VPNavScreen.fade-leave-to[data-v-b9c5a51e]{opacity:0}.VPNavScreen.fade-enter-from .container[data-v-b9c5a51e],.VPNavScreen.fade-leave-to .container[data-v-b9c5a51e]{transform:translateY(-8px)}@media (min-width: 768px){.VPNavScreen[data-v-b9c5a51e]{display:none}}.container[data-v-b9c5a51e]{margin:0 auto;padding:24px 0 96px;max-width:288px}.menu+.translations[data-v-b9c5a51e],.menu+.appearance[data-v-b9c5a51e],.translations+.appearance[data-v-b9c5a51e]{margin-top:24px}.menu+.social-links[data-v-b9c5a51e]{margin-top:16px}.appearance+.social-links[data-v-b9c5a51e]{margin-top:16px}.VPNav[data-v-4cefd8a6]{position:relative;top:var(--vp-layout-top-height, 0px);left:0;z-index:var(--vp-z-index-nav);width:100%;pointer-events:none;transition:background-color .5s}@media (min-width: 960px){.VPNav[data-v-4cefd8a6]{position:fixed}}.VPSidebarItem.level-0[data-v-7c2923f1]{padding-bottom:24px}.VPSidebarItem.collapsed.level-0[data-v-7c2923f1]{padding-bottom:10px}.item[data-v-7c2923f1]{position:relative;display:flex;width:100%}.VPSidebarItem.collapsible>.item[data-v-7c2923f1]{cursor:pointer}.indicator[data-v-7c2923f1]{position:absolute;top:6px;bottom:6px;left:-17px;width:2px;border-radius:2px;transition:background-color .25s}.VPSidebarItem.level-2.is-active>.item>.indicator[data-v-7c2923f1],.VPSidebarItem.level-3.is-active>.item>.indicator[data-v-7c2923f1],.VPSidebarItem.level-4.is-active>.item>.indicator[data-v-7c2923f1],.VPSidebarItem.level-5.is-active>.item>.indicator[data-v-7c2923f1]{background-color:var(--vp-c-brand-1)}.link[data-v-7c2923f1]{display:flex;align-items:center;flex-grow:1}.text[data-v-7c2923f1]{flex-grow:1;padding:4px 0;line-height:24px;font-size:14px;transition:color .25s}.VPSidebarItem.level-0 .text[data-v-7c2923f1]{font-weight:700;color:var(--vp-c-text-1)}.VPSidebarItem.level-1 .text[data-v-7c2923f1],.VPSidebarItem.level-2 .text[data-v-7c2923f1],.VPSidebarItem.level-3 .text[data-v-7c2923f1],.VPSidebarItem.level-4 .text[data-v-7c2923f1],.VPSidebarItem.level-5 .text[data-v-7c2923f1]{font-weight:500;color:var(--vp-c-text-2)}.VPSidebarItem.level-0.is-link>.item>.link:hover .text[data-v-7c2923f1],.VPSidebarItem.level-1.is-link>.item>.link:hover .text[data-v-7c2923f1],.VPSidebarItem.level-2.is-link>.item>.link:hover .text[data-v-7c2923f1],.VPSidebarItem.level-3.is-link>.item>.link:hover .text[data-v-7c2923f1],.VPSidebarItem.level-4.is-link>.item>.link:hover .text[data-v-7c2923f1],.VPSidebarItem.level-5.is-link>.item>.link:hover .text[data-v-7c2923f1]{color:var(--vp-c-brand-1)}.VPSidebarItem.level-0.has-active>.item>.text[data-v-7c2923f1],.VPSidebarItem.level-1.has-active>.item>.text[data-v-7c2923f1],.VPSidebarItem.level-2.has-active>.item>.text[data-v-7c2923f1],.VPSidebarItem.level-3.has-active>.item>.text[data-v-7c2923f1],.VPSidebarItem.level-4.has-active>.item>.text[data-v-7c2923f1],.VPSidebarItem.level-5.has-active>.item>.text[data-v-7c2923f1],.VPSidebarItem.level-0.has-active>.item>.link>.text[data-v-7c2923f1],.VPSidebarItem.level-1.has-active>.item>.link>.text[data-v-7c2923f1],.VPSidebarItem.level-2.has-active>.item>.link>.text[data-v-7c2923f1],.VPSidebarItem.level-3.has-active>.item>.link>.text[data-v-7c2923f1],.VPSidebarItem.level-4.has-active>.item>.link>.text[data-v-7c2923f1],.VPSidebarItem.level-5.has-active>.item>.link>.text[data-v-7c2923f1]{color:var(--vp-c-text-1)}.VPSidebarItem.level-0.is-active>.item .link>.text[data-v-7c2923f1],.VPSidebarItem.level-1.is-active>.item .link>.text[data-v-7c2923f1],.VPSidebarItem.level-2.is-active>.item .link>.text[data-v-7c2923f1],.VPSidebarItem.level-3.is-active>.item .link>.text[data-v-7c2923f1],.VPSidebarItem.level-4.is-active>.item .link>.text[data-v-7c2923f1],.VPSidebarItem.level-5.is-active>.item .link>.text[data-v-7c2923f1]{color:var(--vp-c-brand-1)}.caret[data-v-7c2923f1]{display:flex;justify-content:center;align-items:center;margin-right:-7px;width:32px;height:32px;color:var(--vp-c-text-3);cursor:pointer;transition:color .25s;flex-shrink:0}.item:hover .caret[data-v-7c2923f1]{color:var(--vp-c-text-2)}.item:hover .caret[data-v-7c2923f1]:hover{color:var(--vp-c-text-1)}.caret-icon[data-v-7c2923f1]{font-size:18px;transform:rotate(90deg);transition:transform .25s}.VPSidebarItem.collapsed .caret-icon[data-v-7c2923f1]{transform:rotate(0)}.VPSidebarItem.level-1 .items[data-v-7c2923f1],.VPSidebarItem.level-2 .items[data-v-7c2923f1],.VPSidebarItem.level-3 .items[data-v-7c2923f1],.VPSidebarItem.level-4 .items[data-v-7c2923f1],.VPSidebarItem.level-5 .items[data-v-7c2923f1]{border-left:1px solid var(--vp-c-divider);padding-left:16px}.VPSidebarItem.collapsed .items[data-v-7c2923f1]{display:none}.no-transition[data-v-5c4d175a] .caret-icon{transition:none}.group+.group[data-v-5c4d175a]{border-top:1px solid var(--vp-c-divider);padding-top:10px}@media (min-width: 960px){.group[data-v-5c4d175a]{padding-top:10px;width:calc(var(--vp-sidebar-width) - 64px)}}.VPSidebar[data-v-4f209ff7]{position:fixed;top:var(--vp-layout-top-height, 0px);bottom:0;left:0;z-index:var(--vp-z-index-sidebar);padding:32px 32px 96px;width:calc(100vw - 64px);max-width:320px;background-color:var(--vp-sidebar-bg-color);opacity:0;box-shadow:var(--vp-c-shadow-3);overflow-x:hidden;overflow-y:auto;transform:translate(-100%);transition:opacity .5s,transform .25s ease;overscroll-behavior:contain}.VPSidebar.open[data-v-4f209ff7]{opacity:1;visibility:visible;transform:translate(0);transition:opacity .25s,transform .5s cubic-bezier(.19,1,.22,1)}.dark .VPSidebar[data-v-4f209ff7]{box-shadow:var(--vp-shadow-1)}@media (min-width: 960px){.VPSidebar[data-v-4f209ff7]{padding-top:var(--vp-nav-height);width:var(--vp-sidebar-width);max-width:100%;background-color:var(--vp-sidebar-bg-color);opacity:1;visibility:visible;box-shadow:none;transform:translate(0)}}@media (min-width: 1440px){.VPSidebar[data-v-4f209ff7]{padding-left:max(32px,calc((100% - (var(--vp-layout-max-width) - 64px)) / 2));width:calc((100% - (var(--vp-layout-max-width) - 64px)) / 2 + var(--vp-sidebar-width) - 32px)}}@media (min-width: 960px){.curtain[data-v-4f209ff7]{position:sticky;top:-64px;left:0;z-index:1;margin-top:calc(var(--vp-nav-height) * -1);margin-right:-32px;margin-left:-32px;height:var(--vp-nav-height);background-color:var(--vp-sidebar-bg-color)}}.nav[data-v-4f209ff7]{outline:0}.VPSkipLink[data-v-f2865425]{top:8px;left:8px;padding:8px 16px;z-index:999;border-radius:8px;font-size:12px;font-weight:700;text-decoration:none;color:var(--vp-c-brand-1);box-shadow:var(--vp-shadow-3);background-color:var(--vp-c-bg)}.VPSkipLink[data-v-f2865425]:focus{height:auto;width:auto;clip:auto;clip-path:none}@media (min-width: 1280px){.VPSkipLink[data-v-f2865425]{top:14px;left:16px}}.Layout[data-v-cc65dcc6]{display:flex;flex-direction:column;min-height:100vh}.VPHomeSponsors[data-v-6e1a9acf]{border-top:1px solid var(--vp-c-gutter);padding-top:88px!important}.VPHomeSponsors[data-v-6e1a9acf]{margin:96px 0}@media (min-width: 768px){.VPHomeSponsors[data-v-6e1a9acf]{margin:128px 0}}.VPHomeSponsors[data-v-6e1a9acf]{padding:0 24px}@media (min-width: 768px){.VPHomeSponsors[data-v-6e1a9acf]{padding:0 48px}}@media (min-width: 960px){.VPHomeSponsors[data-v-6e1a9acf]{padding:0 64px}}.container[data-v-6e1a9acf]{margin:0 auto;max-width:1152px}.love[data-v-6e1a9acf]{margin:0 auto;width:fit-content;font-size:28px;color:var(--vp-c-text-3)}.icon[data-v-6e1a9acf]{display:inline-block}.message[data-v-6e1a9acf]{margin:0 auto;padding-top:10px;max-width:320px;text-align:center;line-height:24px;font-size:16px;font-weight:500;color:var(--vp-c-text-2)}.sponsors[data-v-6e1a9acf]{padding-top:32px}.action[data-v-6e1a9acf]{padding-top:40px;text-align:center}.VPTeamPage[data-v-25765d02]{margin:96px 0}@media (min-width: 768px){.VPTeamPage[data-v-25765d02]{margin:128px 0}}.VPHome .VPTeamPageTitle[data-v-25765d02-s]{border-top:1px solid var(--vp-c-gutter);padding-top:88px!important}.VPTeamPageSection+.VPTeamPageSection[data-v-25765d02-s],.VPTeamMembers+.VPTeamPageSection[data-v-25765d02-s]{margin-top:64px}.VPTeamMembers+.VPTeamMembers[data-v-25765d02-s]{margin-top:24px}@media (min-width: 768px){.VPTeamPageTitle+.VPTeamPageSection[data-v-25765d02-s]{margin-top:16px}.VPTeamPageSection+.VPTeamPageSection[data-v-25765d02-s],.VPTeamMembers+.VPTeamPageSection[data-v-25765d02-s]{margin-top:96px}}.VPTeamMembers[data-v-25765d02-s]{padding:0 24px}@media (min-width: 768px){.VPTeamMembers[data-v-25765d02-s]{padding:0 48px}}@media (min-width: 960px){.VPTeamMembers[data-v-25765d02-s]{padding:0 64px}}.VPTeamPageTitle[data-v-96c96a20]{padding:48px 32px;text-align:center}@media (min-width: 768px){.VPTeamPageTitle[data-v-96c96a20]{padding:64px 48px 48px}}@media (min-width: 960px){.VPTeamPageTitle[data-v-96c96a20]{padding:80px 64px 48px}}.title[data-v-96c96a20]{letter-spacing:0;line-height:44px;font-size:36px;font-weight:500}@media (min-width: 768px){.title[data-v-96c96a20]{letter-spacing:-.5px;line-height:56px;font-size:48px}}.lead[data-v-96c96a20]{margin:0 auto;max-width:512px;padding-top:12px;line-height:24px;font-size:16px;font-weight:500;color:var(--vp-c-text-2)}@media (min-width: 768px){.lead[data-v-96c96a20]{max-width:592px;letter-spacing:.15px;line-height:28px;font-size:20px}}.VPTeamPageSection[data-v-646a933d]{padding:0 32px}@media (min-width: 768px){.VPTeamPageSection[data-v-646a933d]{padding:0 48px}}@media (min-width: 960px){.VPTeamPageSection[data-v-646a933d]{padding:0 64px}}.title[data-v-646a933d]{position:relative;margin:0 auto;max-width:1152px;text-align:center;color:var(--vp-c-text-2)}.title-line[data-v-646a933d]{position:absolute;top:16px;left:0;width:100%;height:1px;background-color:var(--vp-c-divider)}.title-text[data-v-646a933d]{position:relative;display:inline-block;padding:0 24px;letter-spacing:0;line-height:32px;font-size:20px;font-weight:500;background-color:var(--vp-c-bg)}.lead[data-v-646a933d]{margin:0 auto;max-width:480px;padding-top:12px;text-align:center;line-height:24px;font-size:16px;font-weight:500;color:var(--vp-c-text-2)}.members[data-v-646a933d]{padding-top:40px}.VPTeamMembersItem[data-v-14b7c446]{display:flex;flex-direction:column;gap:2px;border-radius:12px;width:100%;height:100%;overflow:hidden}.VPTeamMembersItem.small .profile[data-v-14b7c446]{padding:32px}.VPTeamMembersItem.small .data[data-v-14b7c446]{padding-top:20px}.VPTeamMembersItem.small .avatar[data-v-14b7c446]{width:64px;height:64px}.VPTeamMembersItem.small .name[data-v-14b7c446]{line-height:24px;font-size:16px}.VPTeamMembersItem.small .affiliation[data-v-14b7c446]{padding-top:4px;line-height:20px;font-size:14px}.VPTeamMembersItem.small .desc[data-v-14b7c446]{padding-top:12px;line-height:20px;font-size:14px}.VPTeamMembersItem.small .links[data-v-14b7c446]{margin:0 -16px -20px;padding:10px 0 0}.VPTeamMembersItem.medium .profile[data-v-14b7c446]{padding:48px 32px}.VPTeamMembersItem.medium .data[data-v-14b7c446]{padding-top:24px;text-align:center}.VPTeamMembersItem.medium .avatar[data-v-14b7c446]{width:96px;height:96px}.VPTeamMembersItem.medium .name[data-v-14b7c446]{letter-spacing:.15px;line-height:28px;font-size:20px}.VPTeamMembersItem.medium .affiliation[data-v-14b7c446]{padding-top:4px;font-size:16px}.VPTeamMembersItem.medium .desc[data-v-14b7c446]{padding-top:16px;max-width:288px;font-size:16px}.VPTeamMembersItem.medium .links[data-v-14b7c446]{margin:0 -16px -12px;padding:16px 12px 0}.profile[data-v-14b7c446]{flex-grow:1;background-color:var(--vp-c-bg-soft)}.data[data-v-14b7c446]{text-align:center}.avatar[data-v-14b7c446]{position:relative;flex-shrink:0;margin:0 auto;border-radius:50%;box-shadow:var(--vp-shadow-3)}.avatar-img[data-v-14b7c446]{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;object-fit:cover}.name[data-v-14b7c446]{margin:0;font-weight:600}.affiliation[data-v-14b7c446]{margin:0;font-weight:500;color:var(--vp-c-text-2)}.org.link[data-v-14b7c446]{color:var(--vp-c-text-2);transition:color .25s}.org.link[data-v-14b7c446]:hover{color:var(--vp-c-brand-1)}.desc[data-v-14b7c446]{margin:0 auto}.desc[data-v-14b7c446] a{font-weight:500;color:var(--vp-c-brand-1);text-decoration-style:dotted;transition:color .25s}.links[data-v-14b7c446]{display:flex;justify-content:center;height:56px}.sp-link[data-v-14b7c446]{display:flex;justify-content:center;align-items:center;text-align:center;padding:16px;font-size:14px;font-weight:500;color:var(--vp-c-sponsor);background-color:var(--vp-c-bg-soft);transition:color .25s,background-color .25s}.sp .sp-link.link[data-v-14b7c446]:hover,.sp .sp-link.link[data-v-14b7c446]:focus{outline:none;color:var(--vp-c-white);background-color:var(--vp-c-sponsor)}.sp-icon[data-v-14b7c446]{margin-right:8px;font-size:16px}.VPTeamMembers.small .container[data-v-212c59e2]{grid-template-columns:repeat(auto-fit,minmax(224px,1fr))}.VPTeamMembers.small.count-1 .container[data-v-212c59e2]{max-width:276px}.VPTeamMembers.small.count-2 .container[data-v-212c59e2]{max-width:576px}.VPTeamMembers.small.count-3 .container[data-v-212c59e2]{max-width:876px}.VPTeamMembers.medium .container[data-v-212c59e2]{grid-template-columns:repeat(auto-fit,minmax(256px,1fr))}@media (min-width: 375px){.VPTeamMembers.medium .container[data-v-212c59e2]{grid-template-columns:repeat(auto-fit,minmax(288px,1fr))}}.VPTeamMembers.medium.count-1 .container[data-v-212c59e2]{max-width:368px}.VPTeamMembers.medium.count-2 .container[data-v-212c59e2]{max-width:760px}.container[data-v-212c59e2]{display:grid;gap:24px;margin:0 auto;max-width:1152px}:root{--prism-scheme: light;--prism-foreground: #6e6e6e;--prism-background: #f4f4f4;--prism-comment: #a8a8a8;--prism-string: #555555;--prism-literal: #333333;--prism-keyword: #000000;--prism-function: #4f4f4f;--prism-deleted: #333333;--prism-class: #333333;--prism-builtin: #757575;--prism-property: #333333;--prism-namespace: #4f4f4f;--prism-punctuation: #ababab;--prism-decorator: var(--prism-class);--prism-operator: var(--prism-punctuation);--prism-number: var(--prism-literal);--prism-boolean: var(--prism-literal);--prism-variable: var(--prism-literal);--prism-constant: var(--prism-literal);--prism-symbol: var(--prism-literal);--prism-interpolation: var(--prism-literal);--prism-selector: var(--prism-keyword);--prism-keyword-control: var(--prism-keyword);--prism-regex: var(--prism-string);--prism-json-property: var(--prism-property);--prism-inline-background: var(--prism-background);--prism-comment-style: italic;--prism-url-decoration: underline;--prism-line-number: #a5a5a5;--prism-line-number-gutter: #333333;--prism-line-highlight-background: #eeeeee;--prism-selection-background: #dddddd;--prism-marker-color: var(--prism-foreground);--prism-marker-opacity: .4;--prism-marker-font-size: .8em;--prism-font-size: 1em;--prism-line-height: 1.5em;--prism-font-family: monospace;--prism-inline-font-size: var(--prism-font-size);--prism-block-font-size: var(--prism-font-size);--prism-tab-size: 2;--prism-block-padding-x: 1em;--prism-block-padding-y: 1em;--prism-block-margin-x: 0;--prism-block-margin-y: .5em;--prism-block-radius: .3em;--prism-inline-padding-x: .3em;--prism-inline-padding-y: .1em;--prism-inline-radius: .3em}div[class*=language-],pre[class*=language-],code[class*=language-]{font-size:var(--prism-font-size);font-family:var(--prism-font-family);direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:var(--prism-line-height);-moz-tab-size:var(--prism-tab-size);-o-tab-size:var(--prism-tab-size);tab-size:var(--prism-tab-size);-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;color:var(--prism-foreground)!important}div[class*=language-],pre[class*=language-]{font-size:var(--prism-block-font-size);padding:var(--prism-block-padding-y) var(--prism-block-padding-x);margin:var(--prism-block-margin-y) var(--prism-block-margin-x);border-radius:var(--prism-block-radius);overflow:auto;background:var(--prism-background)}:not(pre)>code[class*=language-]{font-size:var(--prism-inline-font-size);padding:var(--prism-inline-padding-y) var(--prism-inline-padding-x);border-radius:var(--prism-inline-radius);background:var(--prism-inline-background)}pre[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,code[class*=language-] ::-moz-selection{background:var(--prism-selection-background)}pre[class*=language-]::selection,pre[class*=language-] ::selection,code[class*=language-]::selection,code[class*=language-] ::selection{background:var(--prism-selection-background)}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:var(--prism-comment);font-style:var(--prism-comment-style)}.token.namespace{color:var(--prism-namespace)}.token.interpolation{color:var(--prism-interpolation)}.token.string{color:var(--prism-string)}.token.punctuation{color:var(--prism-punctuation)}.token.operator{color:var(--prism-operator)}.token.keyword.module,.token.keyword.control-flow{color:var(--prism-keyword-control)}.token.url,.token.symbol,.token.inserted{color:var(--prism-symbol)}.token.constant{color:var(--prism-constant)}.token.string.url{text-decoration:var(--prism-url-decoration)}.token.boolean,.language-json .token.boolean{color:var(--prism-boolean)}.token.number,.language-json .token.number{color:var(--prism-number)}.token.variable{color:var(--prism-variable)}.token.keyword{color:var(--prism-keyword)}.token.atrule,.token.attr-value,.token.selector{color:var(--prism-selector)}.token.function{color:var(--prism-function)}.token.deleted{color:var(--prism-deleted)}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.class-name{color:var(--prism-class)}.token.tag,.token.builtin{color:var(--prism-builtin)}.token.attr-name,.token.property,.token.entity{color:var(--prism-property)}.language-json .token.property{color:var(--prism-json-property)}.token.regex{color:var(--prism-regex)}.token.decorator,.token.annotation{color:var(--prism-decorator)}.line-numbers .line-numbers-rows{border-right-color:var(--prism-line-number)}.line-numbers-rows>span:before{color:var(--prism-line-number-gutter)}.line-highlight{background:var(--prism-line-highlight-background)}[class*=language-]:before{position:absolute;top:.4em;right:.8em;z-index:2;opacity:var(--prism-marker-opacity);font-size:var(--prism-marker-font-size);color:var(--prism-marker-color)}[class~=language-html]:before,[class~=language-markup]:before{content:"html"}[class~=language-md]:before,[class~=language-markdown]:before{content:"md"}[class~=language-css]:before{content:"css"}[class~=language-sass]:before{content:"sass"}[class~=language-scss]:before{content:"scss"}[class~=language-less]:before{content:"less"}[class~=language-stylus]:before{content:"styl"}[class~=language-js]:before,[class~=language-typescript]:before{content:"js"}[class~=language-ts]:before,[class~=language-typescript]:before{content:"ts"}[class~=language-json]:before{content:"json"}[class~=language-rb]:before,[class~=language-ruby]:before{content:"rb"}[class~=language-py]:before,[class~=language-python]:before{content:"py"}[class~=language-sh]:before,[class~=language-bash]:before{content:"sh"}[class~=language-php]:before{content:"php"}[class~=language-go]:before{content:"go"}[class~=language-rust]:before{content:"rust"}[class~=language-java]:before{content:"java"}[class~=language-c]:before{content:"c"}[class~=language-yaml]:before{content:"yaml"}[class~=language-vue]:before{content:"vue"}[class~=language-dockerfile]:before{content:"dockerfile"}@property --gradient-angle{syntax: ""; initial-value: 360deg; inherits: false;}.VPFeature,.VPTeamMembersItem,.CardAnimation{border:1px solid transparent!important;position:relative!important;border-radius:12px!important;overflow:visible!important}.VPFeature>*,.VPTeamMembersItem>*,.CardAnimation>*{position:relative;z-index:10;background-color:unset!important}.VPFeature:after,.VPTeamMembersItem:after,.CardAnimation:after,.VPFeature:before,.VPTeamMembersItem:before,.CardAnimation:before{content:"";display:inline-block;position:absolute;width:100%;height:100%;top:0;left:0;border-radius:12px}.VPFeature:after,.VPTeamMembersItem:after,.CardAnimation:after{transform:translate(-1px,-1px);z-index:1;width:calc(100% + 2px);height:calc(100% + 2px);opacity:0;transition:all .3s linear}.VPFeature.appear:after,.VPTeamMembersItem.appear:after,.CardAnimation.appear:after,.VPFeature:hover:after,.VPTeamMembersItem:hover:after,.CardAnimation:hover:after{opacity:1;animation:gradient-rotate 5s linear infinite reverse}.VPFeature:before,.VPTeamMembersItem:before,.CardAnimation:before{z-index:2;background-color:var(--vp-c-bg-soft)}.dark .VPFeature:after,.dark .VPTeamMembersItem:after,.dark .CardAnimation:after{background:linear-gradient(1turn,#ffffff80,#ffffff1a,#fff,#ffffff4d)!important;background:linear-gradient(var(--gradient-angle),rgba(96,137,241,.45),hsla(0,0%,100%,.1),#fff,rgba(66,211,146,.3))!important}.VPFeature:after,.VPTeamMembersItem:after,.CardAnimation:after{background:linear-gradient(1turn,rgba(66,211,146,.3),var(--vp-button-alt-border),rgba(96,137,241,.45),rgba(29,224,177,.3));background:linear-gradient(var(--gradient-angle),rgba(66,211,146,.3),var(--vp-button-alt-border),rgba(96,137,241,.45),rgba(29,224,177,.3))}@media (prefers-reduced-motion: reduce){.VPFeature:after,.VPTeamMembersItem:after,.CardAnimation:after{animation:none!important}}@keyframes gradient-rotate{0%{--gradient-angle: 360deg}to{--gradient-angle: 0deg}}[class*=language-]:before{content:""!important}div[class*=language-]{padding:0!important}[class~=language-vue]{padding:var(--prism-block-padding-y) var(--prism-block-padding-x)!important}[class~=language-vue]:before{content:"vue"!important}span[class~=language-css]:before{content:""}span[class~=language-css] .token.property{color:#b2ccd6}:root{--prism-marker-opacity: .6;--prism-marker-color: var(--code-text-color);--prism-line-height: var(--code-line-height)}:root{--prism-scheme: dark;--prism-foreground: #a6accd;--prism-background: #181818;--prism-selector: #c3e88d;--prism-comment: #758575;--prism-string: #c3e88d;--prism-literal: #429988;--prism-keyword: #bf8ce0;--prism-boolean: #6394bf;--prism-number: #6394bf;--prism-variable: #c2b36e;--prism-function: #82aaff;--prism-deleted: #bc6066;--prism-class: #54b1bf;--prism-builtin: #f07178;--prism-property: #C792EA;--prism-namespace: #db889a;--prism-punctuation: #89ddff;--prism-decorator: #bd8f8f;--prism-regex: #ab5e3f;--prism-json-property: #6b8b9e;--prism-line-number: #888888;--prism-line-number-gutter: #eeeeee;--prism-line-highlight-background: #444444;--prism-selection-background: #444444;--prism-inline-background: #2d2d2d}.token.selector{color:#ffcb6b}code{margin:0;border-radius:4px;padding:.15rem .5rem}pre code{background-color:transparent}code .token.deleted{color:#ec5975}code .token.inserted{color:var(--c-brand)}div[class*=language-]{position:relative;margin:1rem -1.5rem;background-color:var(--vp-code-block-bg);overflow-x:auto}li>div[class*=language-]{border-radius:6px 0 0 6px;margin:1rem -1.5rem 1rem -1.25rem}@media (min-width: 420px){div[class*=language-]{margin:1rem 0;border-radius:6px}li>div[class*=language-]{margin:1rem 0;border-radius:6px}}[class*=language-] pre,[class*=language-] code{color:var(--prism-foreground)!important;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;-moz-tab-size:2;tab-size:2;-webkit-hyphens:none;hyphens:none}[class*=language-] pre{position:relative;z-index:1;margin:0;padding:.25rem;background:transparent;overflow-x:auto}[class*=language-] code{padding:0}.highlight-lines{position:absolute;top:0;bottom:0;left:0;padding:1.25rem 0;width:100%;-webkit-user-select:none;user-select:none;overflow:hidden}.highlight-lines .highlighted{background-color:#000000a8}div[class*=language-].line-numbers-mode{padding-left:3.5rem}.line-numbers-wrapper{position:absolute;top:0;bottom:0;left:0;z-index:3;padding:1.25rem 0;width:3.5rem;text-align:center;color:#888}.VPContent.is-home,.example-showcase{background-color:var(--vp-c-bg);background-image:radial-gradient(circle,var(--vp-c-divider) 1px,transparent 1px);background-size:1rem 1rem}:root{--vp-layout-max-width: 1520px;--vp-home-hero-image-background-image: -webkit-radial-gradient(rgba(96, 137, 241, .4) 40%, rgba(66, 211, 146, .25) 60%);--vp-home-hero-image-background-image: radial-gradient(rgba(96, 137, 241, .4) 40%, rgba(66, 211, 146, .25) 60%);--vp-home-hero-image-filter: blur(50px);--vp-sidebar-width: 282px;--vp-c-brand-1: #10b981;--vp-c-brand-2: #059669;--vp-c-indigo-3: #10b981;--vp-c-warning-1: #EAB306;--vp-c-danger-1: #fff;--vp-c-danger-soft: #660000;--pwa-border: #ffffff75;--vp-c-indigo-soft: rgba(16, 185, 129, .05);--vp-home-hero-name-background: linear-gradient(-347deg, #10b981 20%, #32475b);--vp-home-hero-name-color: transparent;--vp-badge-tip-border: #059669;--vp-custom-block-info-border: rgba(82, 82, 89, .68)}.image-bg{position:absolute;top:50%;left:50%;border-radius:50%;background-image:var(--vp-home-hero-image-background-image);filter:var(--vp-home-hero-image-filter);transform:translate(-50%,-50%) scale(1)!important;opacity:1}.dark .image-bg{opacity:.6!important}.image-bg+img{-webkit-user-drag:none;-moz-user-drag:none;-ms-user-drag:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.dark [img-light]{display:none}html:not(.dark) [img-dark]{display:none}.home-content h2{margin-top:2rem;font-size:1.35rem;border-bottom:none;margin-bottom:0}img.resizable-img{width:unset;height:unset}.vp-doc td{font-size:14px!important}.VPTeamMembersItem.small .profile .data .affiliation,.VPTeamMembersItem.small .profile .data .desc{min-height:3rem}@media (min-width: 1064px) and (max-width: 1143px){.VPTeamMembersItem.small .profile .data .affiliation,.VPTeamMembersItem.small .profile .data .desc{min-height:4rem}}@media (min-width: 815px) and (max-width: 875px){.VPTeamMembersItem.small .profile .data .affiliation,.VPTeamMembersItem.small .profile .data .desc{min-height:4rem}}@media (max-width: 612px){.VPTeamMembersItem.small .profile .data .affiliation,.VPTeamMembersItem.small .profile .data .desc{min-height:4rem}}@media (max-width: 568px){.VPTeamMembersItem.small .profile .data .affiliation,.VPTeamMembersItem.small .profile .data .desc{min-height:unset}}.VPDoc .content-container{width:100%;max-width:1200px!important}.myButton{border-radius:6px;border:1px solid var(--vp-custom-block-details-border);display:inline-block;cursor:pointer;color:var(--vp-c-text-1);background-color:var(--vp-custom-block-details-bg);padding:5px 15px;text-decoration:none;margin:16px 16px 16px 0;transition:opacity .2s ease-in-out}.myButton:active{opacity:.6}.myButton.no-m-t{margin-top:0}.myButton.no-m-b{margin-bottom:0}.mySelect{border-radius:6px;padding:5px 10px;border:1px solid var(--vp-custom-block-details-border);background-color:var(--vp-custom-block-details-bg);-webkit-appearance:menulist-button;-moz-appearance:menulist-button;appearance:menulist-button;margin:16px 0}.mySelect.light{border:1px solid #e2e2e2;background-color:#f9f9f9}.mySelect.no-m-t{margin-top:0}.mySelect.no-m-b{margin-bottom:0}input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;margin:0;-webkit-print-color-adjust:exact;color-adjust:exact;display:inline-block;vertical-align:middle;background-origin:border-box;flex-shrink:0;background-color:#9ca3af4d;height:1rem;width:1rem;-webkit-user-select:none;user-select:none;border-radius:.375rem;margin-right:.5rem}input[type=checkbox]:checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.6 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e")}input.my-input{color:var(--vp-c-text-1);outline-style:none;border:1px solid var(--vp-custom-block-details-border);border-radius:4px;padding:5px 14px;max-width:300px;width:100%;font-size:14px;margin-bottom:15px}.vp-doc table{display:table;width:100%;border:1px solid var(--vp-c-divider-light)}.vp-doc th{text-align:left}.vp-doc th,.vp-doc td{border:none}.vp-doc tr{border-top:none;border-bottom:1px solid var(--vp-c-divider-light)}.vp-doc tbody tr:last-child{border:none}.vp-doc tr:nth-child(2n){background:none}.vp-doc tbody tr:hover{background-color:var(--vp-c-bg-soft)}button[data-v-373892af]{outline:none;border:none;background:#41b883;margin:0 5px;padding:5px 15px;border-radius:4px!important}.address-list{color:#333;background-color:#fff;font-size:10px;padding:10px;border-radius:8px;box-shadow:#00000026 1px 2px 1px}.address-list ul{margin:0;padding:0}.address-list li{list-style:none;border-bottom:1px solid #f1f1f1}.point-list{color:#333;background-color:#fff;font-size:10px;padding:10px;border-radius:8px;box-shadow:#00000026 1px 2px 1px}.point-list ul{margin:0;padding:0}.point-list li{list-style:none;border-bottom:1px solid #f1f1f1}.point-list span{margin-right:15px}.state{margin-top:15px}.state span{margin-right:25px}.map-wrapper[data-v-947755fa]{display:flex;justify-content:space-between}.map-wrapper .map-item[data-v-947755fa]{flex-basis:calc(50% - 7.5px)}button[data-v-543bd99d]{border-radius:6px;background:#ddd;outline:none;padding:1px 5px;font-size:14px;margin-bottom:10px}.infoWindow-content[data-v-543bd99d]{display:flex;justify-content:space-between;padding:10px}.infoWindow-content p[data-v-543bd99d]{margin:0;line-height:initial}.example-showcase[data-v-d08fa7a1]{padding:0 1rem;margin:.5px}.language-vue[data-v-0e5ed510]{margin:0!important;border-radius:0!important;padding:0!important}.demo-container[data-v-46e56a5d]{border:1px solid var(--vp-c-divider);border-radius:6px;overflow:hidden}.demo-container.full-screen[data-v-46e56a5d]{background-color:var(--vp-c-divider);position:fixed;width:100%;height:100%;top:0;left:0;z-index:99999}.demo-container .buttons[data-v-46e56a5d]{border-top:1px dashed var(--vp-c-divider);padding:.5rem 1rem;display:flex;justify-content:flex-end;align-items:center;background:var(--vp-c-bg)}.demo-container .buttons button[data-v-46e56a5d]{width:30px;height:30px;color:var(--vp-c-text-2);display:flex;justify-content:center;align-items:center;transition:color .3s}.demo-container .buttons button[data-v-46e56a5d]:hover{color:var(--vp-c-text-1)}.demo-container .buttons+div[data-v-46e56a5d]{border-top:1px dashed var(--vp-c-divider)}.demo-container .source_code-container[data-v-46e56a5d]{overflow:hidden}.demo-container .hide_code-btn[data-v-46e56a5d]{position:sticky;bottom:0;top:0;text-align:center;padding:.5rem 0;border-top:1px dashed var(--vp-c-divider);background-color:var(--vp-custom-block-details-bg);z-index:99;cursor:pointer}.collapse-enter-active[data-v-46e56a5d]{transition:all .5s ease-in-out;max-height:0}.collapse-leave-active[data-v-46e56a5d]{transition:all .25s cubic-bezier(0,1,0,1);max-height:200vh}.collapse-enter-to[data-v-46e56a5d]{max-height:200vh}.collapse-leave-to[data-v-46e56a5d]{max-height:0}.demo-wrapper:not(.not-full) .demo-container[data-v-46e56a5d] .baidu-map-container{width:calc(100% + 2rem)!important;margin-left:-1rem}.p-top[data-v-46e56a5d] .example-showcase{padding-top:1rem}.p-bottom[data-v-46e56a5d] .example-showcase{padding-bottom:1rem}[tooltip]{position:relative}[tooltip]>*{display:inline-block}[tooltip]:before,[tooltip]:after{text-transform:none;font-size:.9em;line-height:1;-webkit-user-select:none;user-select:none;pointer-events:none;position:absolute;display:none;opacity:0;box-shadow:var(--vp-shadow-3)}[tooltip]:before{content:"";border:5px solid transparent;z-index:1001}[tooltip]:after{content:attr(tooltip);font-family:Helvetica,sans-serif;text-align:center;min-width:3em;max-width:21em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:.5rem;border-radius:.3rem;border:1px solid var(--vp-c-divider-light);background:var(--vp-button-alt-bg);color:var(--vp-c-text-1);z-index:1000}[tooltip]:hover:before,[tooltip]:hover:after{display:block}[tooltip]:not([position]):before,[tooltip][position^=top]:before{bottom:100%;border-bottom-width:0;border-top-color:var(--vp-button-alt-bg)}[tooltip]:not([position]):after,[tooltip][position^=top]:after{bottom:calc(100% + 5px)}[tooltip]:not([position]):before,[tooltip]:not([position]):after,[tooltip][position^=top]:before,[tooltip][position^=top]:after{left:50%;transform:translate(-50%)}[tooltip][position^=bottom]:before{top:100%;border-top-width:0;border-bottom-color:var(--vp-button-alt-bg)}[tooltip][position^=bottom]:after{top:calc(100% + 5px)}[tooltip][position^=bottom]:before,[tooltip][position^=bottom]:after{left:50%;transform:translate(-50%)}[tooltip][position^=left]:before{top:50%;border-right-width:0;border-left-color:var(--vp-button-alt-bg);left:calc(0em - 5px);transform:translate(-.5em,-50%)}[tooltip][position^=left]:after{top:50%;right:calc(100% + 5px);transform:translate(-.5em,-50%)}[tooltip][position^=right]:before{top:50%;border-left-width:0;border-right-color:var(--vp-button-alt-bg);right:calc(0em - 5px);transform:translate(.5em,-50%)}[tooltip][position^=right]:after{top:50%;left:calc(100% + 5px);transform:translate(.5em,-50%)}[tooltip]:not([position]):hover:before,[tooltip]:not([position]):hover:after,[tooltip][position^=top]:hover:before,[tooltip][position^=top]:hover:after,[tooltip][position^=bottom]:hover:before,[tooltip][position^=bottom]:hover:after{animation:tooltips-vert .3s ease-out forwards}[tooltip][position^=left]:hover:before,[tooltip][position^=left]:hover:after,[tooltip][position^=right]:hover:before,[tooltip][position^=right]:hover:after{animation:tooltips-horz .3s ease-out forwards}[tooltip=""]:before,[tooltip=""]:after{display:none!important}@keyframes tooltips-vert{to{opacity:.9}}@keyframes tooltips-horz{to{opacity:.9}}.pwa-toast{position:fixed;right:0;bottom:0;margin:16px;padding:12px;border:1px solid var(--vp-custom-block-details-border);border-radius:8px;z-index:100;text-align:left;box-shadow:0 0 25px 0 var(--vp-custom-block-details-border);background-color:var(--vp-c-bg-soft);display:flex;max-width:380px}.pwa-toast .icon{margin-right:15px}.pwa-toast .title{font-weight:700;color:var(--vp-c-text-1)}.pwa-toast #pwa-message{margin:8px 0}.pwa-toast .buttons{display:flex;justify-content:flex-end}.pwa-toast .buttons button{margin:0 8px}.dark .bounds-image{width:60%;background:var(--vp-c-text-1)}.VPLocalSearchBox[data-v-fa8ead94]{position:fixed;z-index:100;top:0;right:0;bottom:0;left:0;display:flex}.backdrop[data-v-fa8ead94]{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--vp-backdrop-bg-color);transition:opacity .5s}.shell[data-v-fa8ead94]{position:relative;padding:12px;margin:64px auto;display:flex;flex-direction:column;gap:16px;background:var(--vp-local-search-bg);width:min(100vw - 60px,900px);height:min-content;max-height:min(100vh - 128px,900px);border-radius:6px}@media (max-width: 767px){.shell[data-v-fa8ead94]{margin:0;width:100vw;height:100vh;max-height:none;border-radius:0}}.search-bar[data-v-fa8ead94]{border:1px solid var(--vp-c-divider);border-radius:4px;display:flex;align-items:center;padding:0 12px;cursor:text}@media (max-width: 767px){.search-bar[data-v-fa8ead94]{padding:0 8px}}.search-bar[data-v-fa8ead94]:focus-within{border-color:var(--vp-c-brand-1)}.local-search-icon[data-v-fa8ead94]{display:block;font-size:18px}.navigate-icon[data-v-fa8ead94]{display:block;font-size:14px}.search-icon[data-v-fa8ead94]{margin:8px}@media (max-width: 767px){.search-icon[data-v-fa8ead94]{display:none}}.search-input[data-v-fa8ead94]{padding:6px 12px;font-size:inherit;width:100%}@media (max-width: 767px){.search-input[data-v-fa8ead94]{padding:6px 4px}}.search-actions[data-v-fa8ead94]{display:flex;gap:4px}@media (any-pointer: coarse){.search-actions[data-v-fa8ead94]{gap:8px}}@media (min-width: 769px){.search-actions.before[data-v-fa8ead94]{display:none}}.search-actions button[data-v-fa8ead94]{padding:8px}.search-actions button[data-v-fa8ead94]:not([disabled]):hover,.toggle-layout-button.detailed-list[data-v-fa8ead94]{color:var(--vp-c-brand-1)}.search-actions button.clear-button[data-v-fa8ead94]:disabled{opacity:.37}.search-keyboard-shortcuts[data-v-fa8ead94]{font-size:.8rem;opacity:75%;display:flex;flex-wrap:wrap;gap:16px;line-height:14px}.search-keyboard-shortcuts span[data-v-fa8ead94]{display:flex;align-items:center;gap:4px}@media (max-width: 767px){.search-keyboard-shortcuts[data-v-fa8ead94]{display:none}}.search-keyboard-shortcuts kbd[data-v-fa8ead94]{background:#8080801a;border-radius:4px;padding:3px 6px;min-width:24px;display:inline-block;text-align:center;vertical-align:middle;border:1px solid rgba(128,128,128,.15);box-shadow:0 2px 2px #0000001a}.results[data-v-fa8ead94]{display:flex;flex-direction:column;gap:6px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.result[data-v-fa8ead94]{display:flex;align-items:center;gap:8px;border-radius:4px;transition:none;line-height:1rem;border:solid 2px var(--vp-local-search-result-border);outline:none}.result>div[data-v-fa8ead94]{margin:12px;width:100%;overflow:hidden}@media (max-width: 767px){.result>div[data-v-fa8ead94]{margin:8px}}.titles[data-v-fa8ead94]{display:flex;flex-wrap:wrap;gap:4px;position:relative;z-index:1001;padding:2px 0}.title[data-v-fa8ead94]{display:flex;align-items:center;gap:4px}.title.main[data-v-fa8ead94]{font-weight:500}.title-icon[data-v-fa8ead94]{opacity:.5;font-weight:500;color:var(--vp-c-brand-1)}.title svg[data-v-fa8ead94]{opacity:.5}.result.selected[data-v-fa8ead94]{--vp-local-search-result-bg: var(--vp-local-search-result-selected-bg);border-color:var(--vp-local-search-result-selected-border)}.excerpt-wrapper[data-v-fa8ead94]{position:relative}.excerpt[data-v-fa8ead94]{opacity:50%;pointer-events:none;max-height:140px;overflow:hidden;position:relative;margin-top:4px}.result.selected .excerpt[data-v-fa8ead94]{opacity:1}.excerpt[data-v-fa8ead94] *{font-size:.8rem!important;line-height:130%!important}.titles[data-v-fa8ead94] mark,.excerpt[data-v-fa8ead94] mark{background-color:var(--vp-local-search-highlight-bg);color:var(--vp-local-search-highlight-text);border-radius:2px;padding:0 2px}.excerpt[data-v-fa8ead94] .vp-code-group .tabs{display:none}.excerpt[data-v-fa8ead94] .vp-code-group div[class*=language-]{border-radius:8px!important}.excerpt-gradient-bottom[data-v-fa8ead94]{position:absolute;bottom:-1px;left:0;width:100%;height:8px;background:linear-gradient(transparent,var(--vp-local-search-result-bg));z-index:1000}.excerpt-gradient-top[data-v-fa8ead94]{position:absolute;top:-1px;left:0;width:100%;height:8px;background:linear-gradient(var(--vp-local-search-result-bg),transparent);z-index:1000}.result.selected .titles[data-v-fa8ead94],.result.selected .title-icon[data-v-fa8ead94]{color:var(--vp-c-brand-1)!important}.no-results[data-v-fa8ead94]{font-size:.9rem;text-align:center;padding:12px}svg[data-v-fa8ead94]{flex:none} diff --git a/assets/zh-CN_components_autoComplete_index.md.DQoPodUL.js b/assets/zh-CN_components_autoComplete_index.md.DQoPodUL.js new file mode 100644 index 00000000..e758d990 --- /dev/null +++ b/assets/zh-CN_components_autoComplete_index.md.DQoPodUL.js @@ -0,0 +1 @@ +import{_ as C,c,j as a,a as s,I as t,w as E,al as p,D as n,o as l}from"./chunks/framework.n6hqIsqL.js";const b=JSON.parse('{"title":"BAutoComplete 自动填充","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/autoComplete/index.md","filePath":"zh-CN/components/autoComplete/index.md","lastUpdated":1724785300000}'),i={name:"zh-CN/components/autoComplete/index.md"},u={id:"bautocomplete-自动填充",tabindex:"-1"},r=a("a",{class:"header-anchor",href:"#bautocomplete-自动填充","aria-label":'Permalink to "BAutoComplete 自动填充 "'},"​",-1),d=p('

地址检索关键词提示

ts
import { BAutoComplete } from 'vue3-baidu-map-gl'

TIP

目前这个组件所使用的百度地图 api 还不稳定 (在写这个组件时候深有体会)

组件示例

',4),k=a("p",null,"autoComplete/index",-1),D=p('

动态组件 Props

属性说明类型可选值默认值
location设定返回结果的所属范围。例如“北京市”string | Point | BMapGL.Map-BMapGL.Map
types返回数据类型string[]-

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
searchComplete在 input 框中输入字符后,发起列表检索,完成后的回调函数((e: Event) => void)
highlight键盘或者鼠标移动,某条记录高亮之后((e: Event) => void)
confirm鼠标点击或回车选中某条记录后触发((e: Event) => void)
',4);function F(h,m,A,g,B,_){const e=n("Badge"),o=n("Demo");return l(),c("div",null,[a("h1",u,[s("BAutoComplete 自动填充 "),t(e,{type:"tip",text:"^2.1.3"}),s(),r]),d,t(o,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E(point%20as%20Point)%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBAutoComplete%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20special-attr%22%3E%3Cspan%20class%3D%22token%20attr-name%22%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20value%20css%20language-css%22%3E%3Cspan%20class%3D%22token%20property%22%3Ewidth%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20100%25%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40confirm%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleConfirm%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E(point%20as%20Point)%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMarker%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20BMap%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20BAutoComplete%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20BMarker%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20type%20Point%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20useAddressGeocoder%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20get%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20point%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EuseAddressGeocoder%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleConfirm%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3Ee%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20value%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20e%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eitem%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Eget%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Ecity%20%3Cspan%20class%3D%22token%20operator%22%3E%7C%7C%3C%2Fspan%3E%20value%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Ebusiness%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20value%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eprovince%20%3Cspan%20class%3D%22token%20operator%22%3E%2B%3C%2Fspan%3E%20value%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Ecity%20%3Cspan%20class%3D%22token%20operator%22%3E%2B%3C%2Fspan%3E%20value%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Edistrict%20%3Cspan%20class%3D%22token%20operator%22%3E%2B%3C%2Fspan%3E%20value%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Estreet%20%3Cspan%20class%3D%22token%20operator%22%3E%2B%3C%2Fspan%3E%20value%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Ebusiness%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Estyle%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Escoped%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20style%22%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"autoComplete/index","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20%3Acenter%3D%22(point%20as%20Point)%22%3E%0A%20%20%20%20%3CBAutoComplete%20style%3D%22width%3A%20100%25%22%20%40confirm%3D%22handleConfirm%22%20%2F%3E%0A%20%20%20%20%3CBMarker%20%3Aposition%3D%22(point%20as%20Point)%22%3E%3C%2FBMarker%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%20lang%3D%22ts%22%3E%0A%20%20import%20%7B%20BMap%2C%20BAutoComplete%2C%20BMarker%2C%20type%20Point%2C%20useAddressGeocoder%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20%7B%20get%2C%20point%20%7D%20%3D%20useAddressGeocoder()%0A%20%20function%20handleConfirm(e)%20%7B%0A%20%20%20%20const%20value%20%3D%20e.item.value%0A%20%20%20%20get(value.city%20%7C%7C%20value.business%2C%20value.province%20%2B%20value.city%20%2B%20value.district%20%2B%20value.street%20%2B%20value.business)%0A%20%20%7D%0A%3C%2Fscript%3E%0A%0A%3Cstyle%20scoped%3E%3C%2Fstyle%3E%0A",description:""},{default:E(()=>[k]),_:1}),D])}const y=C(i,[["render",F]]);export{b as __pageData,y as default}; diff --git a/assets/zh-CN_components_autoComplete_index.md.DQoPodUL.lean.js b/assets/zh-CN_components_autoComplete_index.md.DQoPodUL.lean.js new file mode 100644 index 00000000..5861987a --- /dev/null +++ b/assets/zh-CN_components_autoComplete_index.md.DQoPodUL.lean.js @@ -0,0 +1 @@ +import{_ as C,c,j as a,a as s,I as t,w as E,al as p,D as n,o as l}from"./chunks/framework.n6hqIsqL.js";const b=JSON.parse('{"title":"BAutoComplete 自动填充","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/autoComplete/index.md","filePath":"zh-CN/components/autoComplete/index.md","lastUpdated":1724785300000}'),i={name:"zh-CN/components/autoComplete/index.md"},u={id:"bautocomplete-自动填充",tabindex:"-1"},r=a("a",{class:"header-anchor",href:"#bautocomplete-自动填充","aria-label":'Permalink to "BAutoComplete 自动填充 "'},"​",-1),d=p("",4),k=a("p",null,"autoComplete/index",-1),D=p("",4);function F(h,m,A,g,B,_){const e=n("Badge"),o=n("Demo");return l(),c("div",null,[a("h1",u,[s("BAutoComplete 自动填充 "),t(e,{type:"tip",text:"^2.1.3"}),s(),r]),d,t(o,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E(point%20as%20Point)%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBAutoComplete%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20special-attr%22%3E%3Cspan%20class%3D%22token%20attr-name%22%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20value%20css%20language-css%22%3E%3Cspan%20class%3D%22token%20property%22%3Ewidth%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20100%25%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40confirm%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleConfirm%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E(point%20as%20Point)%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMarker%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20BMap%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20BAutoComplete%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20BMarker%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20type%20Point%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20useAddressGeocoder%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20get%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20point%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EuseAddressGeocoder%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleConfirm%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3Ee%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20value%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20e%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eitem%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Eget%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Ecity%20%3Cspan%20class%3D%22token%20operator%22%3E%7C%7C%3C%2Fspan%3E%20value%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Ebusiness%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20value%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eprovince%20%3Cspan%20class%3D%22token%20operator%22%3E%2B%3C%2Fspan%3E%20value%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Ecity%20%3Cspan%20class%3D%22token%20operator%22%3E%2B%3C%2Fspan%3E%20value%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Edistrict%20%3Cspan%20class%3D%22token%20operator%22%3E%2B%3C%2Fspan%3E%20value%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Estreet%20%3Cspan%20class%3D%22token%20operator%22%3E%2B%3C%2Fspan%3E%20value%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Ebusiness%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Estyle%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Escoped%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20style%22%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"autoComplete/index","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20%3Acenter%3D%22(point%20as%20Point)%22%3E%0A%20%20%20%20%3CBAutoComplete%20style%3D%22width%3A%20100%25%22%20%40confirm%3D%22handleConfirm%22%20%2F%3E%0A%20%20%20%20%3CBMarker%20%3Aposition%3D%22(point%20as%20Point)%22%3E%3C%2FBMarker%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%20lang%3D%22ts%22%3E%0A%20%20import%20%7B%20BMap%2C%20BAutoComplete%2C%20BMarker%2C%20type%20Point%2C%20useAddressGeocoder%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20%7B%20get%2C%20point%20%7D%20%3D%20useAddressGeocoder()%0A%20%20function%20handleConfirm(e)%20%7B%0A%20%20%20%20const%20value%20%3D%20e.item.value%0A%20%20%20%20get(value.city%20%7C%7C%20value.business%2C%20value.province%20%2B%20value.city%20%2B%20value.district%20%2B%20value.street%20%2B%20value.business)%0A%20%20%7D%0A%3C%2Fscript%3E%0A%0A%3Cstyle%20scoped%3E%3C%2Fstyle%3E%0A",description:""},{default:E(()=>[k]),_:1}),D])}const y=C(i,[["render",F]]);export{b as __pageData,y as default}; diff --git a/assets/zh-CN_components_control_citylist.md.uLczJt12.js b/assets/zh-CN_components_control_citylist.md.uLczJt12.js new file mode 100644 index 00000000..859eb0e0 --- /dev/null +++ b/assets/zh-CN_components_control_citylist.md.uLczJt12.js @@ -0,0 +1 @@ +import{_ as d,c as l,I as s,w as i,j as t,al as a,D as e,o as c}from"./chunks/framework.n6hqIsqL.js";const v=JSON.parse('{"title":"BCityList 城市选择控件","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/control/citylist.md","filePath":"zh-CN/components/control/citylist.md","lastUpdated":1724785300000}'),p={name:"zh-CN/components/control/citylist.md"},r=a('

BCityList 城市选择控件

缩放控件,默认位于地图右下角

ts
import { BCityList } from 'vue3-baidu-map-gl'

组件示例

',4),h=t("p",null,"control/cityList",-1),_=a('

提示

组件示例样式被 vitepress 样式影响,实际使用不受影响,请参考官方示例为准 https://lbs.baidu.com/jsdemo.htm#cCityList

静态组件 Props

属性说明类型可选值默认值
anchor控件的停靠位置stringanchorBMAP_ANCHOR_BOTTOM_LEFT
offset控件的偏移值{x: number, y: number }-{ x: 18, y: 18 }
expand默认列表是否展开boolean-false

动态组件 Props

',4),C={tabindex:"0"},u=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"可选值"),t("th",null,"默认值"),t("th",null,"版本")])],-1),E=t("td",null,"visible",-1),b=t("td",null,"是否显示",-1),k=t("td",null,[t("code",null,"boolean")],-1),m=t("td",null,"-",-1),F=t("td",null,[t("code",null,"true")],-1),y=a('

anchor

说明
BMAP_ANCHOR_TOP_LEFT左上
BMAP_ANCHOR_TOP_RIGHT右上
BMAP_ANCHOR_BOTTOM_LEFT左下
BMAP_ANCHOR_BOTTOM_RIGHT右下

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
',4);function A(T,B,D,g,P,f){const n=e("Demo"),o=e("Badge");return c(),l("div",null,[r,s(n,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBCityList%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"control/cityList","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%3E%0A%20%20%20%20%3CBCityList%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A",description:""},{default:i(()=>[h]),_:1}),_,t("table",C,[u,t("tbody",null,[t("tr",null,[E,b,k,m,F,t("td",null,[s(o,{type:"tip",text:"^2.2.0"})])])])]),y])}const N=d(p,[["render",A]]);export{v as __pageData,N as default}; diff --git a/assets/zh-CN_components_control_citylist.md.uLczJt12.lean.js b/assets/zh-CN_components_control_citylist.md.uLczJt12.lean.js new file mode 100644 index 00000000..706bb822 --- /dev/null +++ b/assets/zh-CN_components_control_citylist.md.uLczJt12.lean.js @@ -0,0 +1 @@ +import{_ as d,c as l,I as s,w as i,j as t,al as a,D as e,o as c}from"./chunks/framework.n6hqIsqL.js";const v=JSON.parse('{"title":"BCityList 城市选择控件","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/control/citylist.md","filePath":"zh-CN/components/control/citylist.md","lastUpdated":1724785300000}'),p={name:"zh-CN/components/control/citylist.md"},r=a("",4),h=t("p",null,"control/cityList",-1),_=a("",4),C={tabindex:"0"},u=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"可选值"),t("th",null,"默认值"),t("th",null,"版本")])],-1),E=t("td",null,"visible",-1),b=t("td",null,"是否显示",-1),k=t("td",null,[t("code",null,"boolean")],-1),m=t("td",null,"-",-1),F=t("td",null,[t("code",null,"true")],-1),y=a("",4);function A(T,B,D,g,P,f){const n=e("Demo"),o=e("Badge");return c(),l("div",null,[r,s(n,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBCityList%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"control/cityList","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%3E%0A%20%20%20%20%3CBCityList%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A",description:""},{default:i(()=>[h]),_:1}),_,t("table",C,[u,t("tbody",null,[t("tr",null,[E,b,k,m,F,t("td",null,[s(o,{type:"tip",text:"^2.2.0"})])])])]),y])}const N=d(p,[["render",A]]);export{v as __pageData,N as default}; diff --git a/assets/zh-CN_components_control_context-menu.md.ymt5YPFp.js b/assets/zh-CN_components_control_context-menu.md.ymt5YPFp.js new file mode 100644 index 00000000..f3bc1ce0 --- /dev/null +++ b/assets/zh-CN_components_control_context-menu.md.ymt5YPFp.js @@ -0,0 +1 @@ +import{_ as E,c as C,j as n,a,I as s,w as c,al as t,D as e,o as l}from"./chunks/framework.n6hqIsqL.js";const P=JSON.parse('{"title":"BContextMenu 上下文菜单","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/control/context-menu.md","filePath":"zh-CN/components/control/context-menu.md","lastUpdated":1724785300000}'),u={name:"zh-CN/components/control/context-menu.md"},D={id:"bcontextmenu-上下文菜单",tabindex:"-1"},i=n("a",{class:"header-anchor",href:"#bcontextmenu-上下文菜单","aria-label":'Permalink to "BContextMenu 上下文菜单 "'},"​",-1),r=t('

在地图上添加自定义内容的右键菜单

ts
import { BContextMenu } from 'vue3-baidu-map-gl'

组件示例

',3),k=n("p",null,"context-menu/index",-1),F=t('

静态组件 Props

属性说明类型默认值
width菜单宽度(单位 px)number100

动态组件 Props

',3),d={tabindex:"0"},A=n("thead",null,[n("tr",null,[n("th",null,"属性"),n("th",null,"说明"),n("th",null,"类型"),n("th",null,"可选值"),n("th",null,"默认值"),n("th",null,"版本")])],-1),B=n("tr",null,[n("td",null,"menuItems"),n("td",null,[a("菜单项,"),n("code",null,"-"),a("添加分割线")]),n("td",null,[a("("),n("a",{href:"#contextmenuitem"},[n("code",null,"ContextMenuItem")]),a(" | "),n("code",null,"-"),a(") "),n("code",null,"[]")]),n("td",null,"-"),n("td",null,"-"),n("td",null,"-")],-1),m=n("td",null,"visible",-1),h=n("td",null,"是否显示",-1),_=n("td",null,[n("code",null,"boolean")],-1),x=n("td",null,"-",-1),g=n("td",null,[n("code",null,"true")],-1),b=t('

ContextMenuItem

属性说明类型可选值默认值
text菜单项文字string-required
callback菜单项点击触发的回调函数({point, pixel, map, BMapGL, target}) => void-required
disabled是否禁用该菜单项booleanfalse-

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
open右键菜单打开时触发,事件参数 point 和 pixel 分别表示菜单开启时的地理和像素坐标点((e: Event) => void)
close右键菜单关闭时触发,事件参数 point 和 pixel 分别表示菜单开启时的地理和像素坐标点((e: Event) => void)
',4);function f(M,y,v,I,T,q){const p=e("Badge"),o=e("Demo");return l(),C("div",null,[n("h1",D,[a("BContextMenu 上下文菜单 "),s(p,{type:"tip",text:"^0.0.29"}),a(),i]),r,s(o,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ecenter%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBContextMenu%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AmenuItems%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Elist%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eicon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Esimple_red%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.403901%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBContextMenu%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AmenuItems%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EoverlayList%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Awidth%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E200%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMarker%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ContextMenuItem%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20ContextMenuSeparator%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20center%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'%E5%8C%97%E4%BA%AC%E5%B8%82'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20list%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3EContextMenuItem%20%3Cspan%20class%3D%22token%20operator%22%3E%7C%3C%2Fspan%3E%20ContextMenuSeparator%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etext%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E6%94%BE%E5%A4%A7%E4%B8%80%E7%BA%A7'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20function-variable%20function%22%3Ecallback%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20map%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Emap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20BMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EMap%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20map%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EzoomIn%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etext%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E7%BC%A9%E5%B0%8F%E4%B8%80%E7%BA%A7'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20function-variable%20function%22%3Ecallback%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20map%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Emap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20BMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EMap%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20map%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EzoomOut%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'-'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etext%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%8E%BB%E4%B8%8A%E6%B5%B7'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20function-variable%20function%22%3Ecallback%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20center%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20center%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3D%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E4%B8%8A%E6%B5%B7%E5%B8%82'%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3F%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%8C%97%E4%BA%AC%E5%B8%82'%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E4%B8%8A%E6%B5%B7%E5%B8%82'%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3EsetTimeout%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Elist%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E3%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Eas%3C%2Fspan%3E%20ContextMenuItem%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Etext%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%9B%9E%E5%8C%97%E4%BA%AC'%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20overlayList%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3EContextMenuItem%20%3Cspan%20class%3D%22token%20operator%22%3E%7C%3C%2Fspan%3E%20ContextMenuSeparator%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etext%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E8%A6%86%E7%9B%96%E7%89%A9%E4%B8%8A%E4%B8%8B%E6%96%87%E8%8F%9C%E5%8D%95'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20function-variable%20function%22%3Ecallback%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20map%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Emap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20BMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EMap%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Ealert%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'%E7%82%B9%E5%87%BB%E4%BA%86%E8%A6%86%E7%9B%96%E7%89%A9%E4%B8%8A%E4%B8%8B%E6%96%87%E8%8F%9C%E5%8D%95'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"context-menu/index","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%3Acenter%3D%22center%22%3E%0A%20%20%20%20%3CBContextMenu%20%3AmenuItems%3D%22list%22%20%2F%3E%0A%20%20%20%20%3CBMarker%20icon%3D%22simple_red%22%20%3Aposition%3D%22%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.403901%20%7D%22%3E%0A%20%20%20%20%20%20%3CBContextMenu%20%3AmenuItems%3D%22overlayList%22%20%3Awidth%3D%22200%22%20%2F%3E%0A%20%20%20%20%3C%2FBMarker%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20import%20%7B%20ContextMenuItem%2C%20ContextMenuSeparator%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20center%20%3D%20ref('%E5%8C%97%E4%BA%AC%E5%B8%82')%0A%20%20const%20list%20%3D%20ref%3C(ContextMenuItem%20%7C%20ContextMenuSeparator)%5B%5D%3E(%5B%0A%20%20%20%20%7B%0A%20%20%20%20%20%20text%3A%20'%E6%94%BE%E5%A4%A7%E4%B8%80%E7%BA%A7'%2C%0A%20%20%20%20%20%20callback%3A%20function%20(%7B%20map%20%7D%3A%20%7B%20map%3A%20BMapGL.Map%20%7D)%20%7B%0A%20%20%20%20%20%20%20%20map.zoomIn()%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%2C%0A%20%20%20%20%7B%0A%20%20%20%20%20%20text%3A%20'%E7%BC%A9%E5%B0%8F%E4%B8%80%E7%BA%A7'%2C%0A%20%20%20%20%20%20callback%3A%20function%20(%7B%20map%20%7D%3A%20%7B%20map%3A%20BMapGL.Map%20%7D)%20%7B%0A%20%20%20%20%20%20%20%20map.zoomOut()%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%2C%0A%20%20%20%20'-'%2C%0A%20%20%20%20%7B%0A%20%20%20%20%20%20text%3A%20'%E5%8E%BB%E4%B8%8A%E6%B5%B7'%2C%0A%20%20%20%20%20%20callback%3A%20function%20()%20%7B%0A%20%20%20%20%20%20%20%20center.value%20%3D%20center.value%20%3D%3D%3D%20'%E4%B8%8A%E6%B5%B7%E5%B8%82'%20%3F%20'%E5%8C%97%E4%BA%AC%E5%B8%82'%20%3A%20'%E4%B8%8A%E6%B5%B7%E5%B8%82'%0A%20%20%20%20%20%20%20%20setTimeout(()%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20%20%20%3B(list.value%5B3%5D%20as%20ContextMenuItem).text%20%3D%20'%E5%9B%9E%E5%8C%97%E4%BA%AC'%0A%20%20%20%20%20%20%20%20%7D)%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%20%20%5D)%0A%20%20const%20overlayList%20%3D%20ref%3C(ContextMenuItem%20%7C%20ContextMenuSeparator)%5B%5D%3E(%5B%0A%20%20%20%20%7B%0A%20%20%20%20%20%20text%3A%20'%E8%A6%86%E7%9B%96%E7%89%A9%E4%B8%8A%E4%B8%8B%E6%96%87%E8%8F%9C%E5%8D%95'%2C%0A%20%20%20%20%20%20callback%3A%20function%20(%7B%20map%20%7D%3A%20%7B%20map%3A%20BMapGL.Map%20%7D)%20%7B%0A%20%20%20%20%20%20%20%20alert('%E7%82%B9%E5%87%BB%E4%BA%86%E8%A6%86%E7%9B%96%E7%89%A9%E4%B8%8A%E4%B8%8B%E6%96%87%E8%8F%9C%E5%8D%95')%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%20%20%5D)%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E6%B7%BB%E5%8A%A0%E5%9C%B0%E5%9B%BE%E5%92%8C%20%3Ccode%3EMarker%3C%2Fcode%3E%20%E4%B8%8A%E4%B8%8B%E6%96%87%E8%8F%9C%E5%8D%95%EF%BC%8C%E9%BC%A0%E6%A0%87%E5%8F%B3%E5%87%BB%E5%9C%B0%E5%9B%BE%E6%88%96%20%3Ccode%3EMarker%3C%2Fcode%3E%20%E8%AF%95%E8%AF%95%3C%2Fp%3E%0A"},{default:c(()=>[k]),_:1}),F,n("table",d,[A,n("tbody",null,[B,n("tr",null,[m,h,_,x,g,n("td",null,[s(p,{type:"tip",text:"^2.2.0"})])])])]),b])}const S=E(u,[["render",f]]);export{P as __pageData,S as default}; diff --git a/assets/zh-CN_components_control_context-menu.md.ymt5YPFp.lean.js b/assets/zh-CN_components_control_context-menu.md.ymt5YPFp.lean.js new file mode 100644 index 00000000..fdf2face --- /dev/null +++ b/assets/zh-CN_components_control_context-menu.md.ymt5YPFp.lean.js @@ -0,0 +1 @@ +import{_ as E,c as C,j as n,a,I as s,w as c,al as t,D as e,o as l}from"./chunks/framework.n6hqIsqL.js";const P=JSON.parse('{"title":"BContextMenu 上下文菜单","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/control/context-menu.md","filePath":"zh-CN/components/control/context-menu.md","lastUpdated":1724785300000}'),u={name:"zh-CN/components/control/context-menu.md"},D={id:"bcontextmenu-上下文菜单",tabindex:"-1"},i=n("a",{class:"header-anchor",href:"#bcontextmenu-上下文菜单","aria-label":'Permalink to "BContextMenu 上下文菜单 "'},"​",-1),r=t("",3),k=n("p",null,"context-menu/index",-1),F=t("",3),d={tabindex:"0"},A=n("thead",null,[n("tr",null,[n("th",null,"属性"),n("th",null,"说明"),n("th",null,"类型"),n("th",null,"可选值"),n("th",null,"默认值"),n("th",null,"版本")])],-1),B=n("tr",null,[n("td",null,"menuItems"),n("td",null,[a("菜单项,"),n("code",null,"-"),a("添加分割线")]),n("td",null,[a("("),n("a",{href:"#contextmenuitem"},[n("code",null,"ContextMenuItem")]),a(" | "),n("code",null,"-"),a(") "),n("code",null,"[]")]),n("td",null,"-"),n("td",null,"-"),n("td",null,"-")],-1),m=n("td",null,"visible",-1),h=n("td",null,"是否显示",-1),_=n("td",null,[n("code",null,"boolean")],-1),x=n("td",null,"-",-1),g=n("td",null,[n("code",null,"true")],-1),b=t("",4);function f(M,y,v,I,T,q){const p=e("Badge"),o=e("Demo");return l(),C("div",null,[n("h1",D,[a("BContextMenu 上下文菜单 "),s(p,{type:"tip",text:"^0.0.29"}),a(),i]),r,s(o,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ecenter%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBContextMenu%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AmenuItems%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Elist%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eicon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Esimple_red%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.403901%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBContextMenu%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AmenuItems%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EoverlayList%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Awidth%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E200%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMarker%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ContextMenuItem%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20ContextMenuSeparator%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20center%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'%E5%8C%97%E4%BA%AC%E5%B8%82'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20list%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3EContextMenuItem%20%3Cspan%20class%3D%22token%20operator%22%3E%7C%3C%2Fspan%3E%20ContextMenuSeparator%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etext%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E6%94%BE%E5%A4%A7%E4%B8%80%E7%BA%A7'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20function-variable%20function%22%3Ecallback%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20map%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Emap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20BMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EMap%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20map%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EzoomIn%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etext%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E7%BC%A9%E5%B0%8F%E4%B8%80%E7%BA%A7'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20function-variable%20function%22%3Ecallback%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20map%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Emap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20BMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EMap%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20map%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EzoomOut%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'-'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etext%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%8E%BB%E4%B8%8A%E6%B5%B7'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20function-variable%20function%22%3Ecallback%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20center%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20center%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3D%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E4%B8%8A%E6%B5%B7%E5%B8%82'%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3F%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%8C%97%E4%BA%AC%E5%B8%82'%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E4%B8%8A%E6%B5%B7%E5%B8%82'%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3EsetTimeout%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Elist%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E3%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Eas%3C%2Fspan%3E%20ContextMenuItem%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Etext%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%9B%9E%E5%8C%97%E4%BA%AC'%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20overlayList%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3EContextMenuItem%20%3Cspan%20class%3D%22token%20operator%22%3E%7C%3C%2Fspan%3E%20ContextMenuSeparator%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etext%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E8%A6%86%E7%9B%96%E7%89%A9%E4%B8%8A%E4%B8%8B%E6%96%87%E8%8F%9C%E5%8D%95'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20function-variable%20function%22%3Ecallback%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20map%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Emap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20BMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EMap%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Ealert%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'%E7%82%B9%E5%87%BB%E4%BA%86%E8%A6%86%E7%9B%96%E7%89%A9%E4%B8%8A%E4%B8%8B%E6%96%87%E8%8F%9C%E5%8D%95'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"context-menu/index","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%3Acenter%3D%22center%22%3E%0A%20%20%20%20%3CBContextMenu%20%3AmenuItems%3D%22list%22%20%2F%3E%0A%20%20%20%20%3CBMarker%20icon%3D%22simple_red%22%20%3Aposition%3D%22%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.403901%20%7D%22%3E%0A%20%20%20%20%20%20%3CBContextMenu%20%3AmenuItems%3D%22overlayList%22%20%3Awidth%3D%22200%22%20%2F%3E%0A%20%20%20%20%3C%2FBMarker%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20import%20%7B%20ContextMenuItem%2C%20ContextMenuSeparator%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20center%20%3D%20ref('%E5%8C%97%E4%BA%AC%E5%B8%82')%0A%20%20const%20list%20%3D%20ref%3C(ContextMenuItem%20%7C%20ContextMenuSeparator)%5B%5D%3E(%5B%0A%20%20%20%20%7B%0A%20%20%20%20%20%20text%3A%20'%E6%94%BE%E5%A4%A7%E4%B8%80%E7%BA%A7'%2C%0A%20%20%20%20%20%20callback%3A%20function%20(%7B%20map%20%7D%3A%20%7B%20map%3A%20BMapGL.Map%20%7D)%20%7B%0A%20%20%20%20%20%20%20%20map.zoomIn()%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%2C%0A%20%20%20%20%7B%0A%20%20%20%20%20%20text%3A%20'%E7%BC%A9%E5%B0%8F%E4%B8%80%E7%BA%A7'%2C%0A%20%20%20%20%20%20callback%3A%20function%20(%7B%20map%20%7D%3A%20%7B%20map%3A%20BMapGL.Map%20%7D)%20%7B%0A%20%20%20%20%20%20%20%20map.zoomOut()%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%2C%0A%20%20%20%20'-'%2C%0A%20%20%20%20%7B%0A%20%20%20%20%20%20text%3A%20'%E5%8E%BB%E4%B8%8A%E6%B5%B7'%2C%0A%20%20%20%20%20%20callback%3A%20function%20()%20%7B%0A%20%20%20%20%20%20%20%20center.value%20%3D%20center.value%20%3D%3D%3D%20'%E4%B8%8A%E6%B5%B7%E5%B8%82'%20%3F%20'%E5%8C%97%E4%BA%AC%E5%B8%82'%20%3A%20'%E4%B8%8A%E6%B5%B7%E5%B8%82'%0A%20%20%20%20%20%20%20%20setTimeout(()%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20%20%20%3B(list.value%5B3%5D%20as%20ContextMenuItem).text%20%3D%20'%E5%9B%9E%E5%8C%97%E4%BA%AC'%0A%20%20%20%20%20%20%20%20%7D)%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%20%20%5D)%0A%20%20const%20overlayList%20%3D%20ref%3C(ContextMenuItem%20%7C%20ContextMenuSeparator)%5B%5D%3E(%5B%0A%20%20%20%20%7B%0A%20%20%20%20%20%20text%3A%20'%E8%A6%86%E7%9B%96%E7%89%A9%E4%B8%8A%E4%B8%8B%E6%96%87%E8%8F%9C%E5%8D%95'%2C%0A%20%20%20%20%20%20callback%3A%20function%20(%7B%20map%20%7D%3A%20%7B%20map%3A%20BMapGL.Map%20%7D)%20%7B%0A%20%20%20%20%20%20%20%20alert('%E7%82%B9%E5%87%BB%E4%BA%86%E8%A6%86%E7%9B%96%E7%89%A9%E4%B8%8A%E4%B8%8B%E6%96%87%E8%8F%9C%E5%8D%95')%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%20%20%5D)%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E6%B7%BB%E5%8A%A0%E5%9C%B0%E5%9B%BE%E5%92%8C%20%3Ccode%3EMarker%3C%2Fcode%3E%20%E4%B8%8A%E4%B8%8B%E6%96%87%E8%8F%9C%E5%8D%95%EF%BC%8C%E9%BC%A0%E6%A0%87%E5%8F%B3%E5%87%BB%E5%9C%B0%E5%9B%BE%E6%88%96%20%3Ccode%3EMarker%3C%2Fcode%3E%20%E8%AF%95%E8%AF%95%3C%2Fp%3E%0A"},{default:c(()=>[k]),_:1}),F,n("table",d,[A,n("tbody",null,[B,n("tr",null,[m,h,_,x,g,n("td",null,[s(p,{type:"tip",text:"^2.2.0"})])])])]),b])}const S=E(u,[["render",f]]);export{P as __pageData,S as default}; diff --git a/assets/zh-CN_components_control_copyright.md.BXr3tWie.js b/assets/zh-CN_components_control_copyright.md.BXr3tWie.js new file mode 100644 index 00000000..c1bd3b2a --- /dev/null +++ b/assets/zh-CN_components_control_copyright.md.BXr3tWie.js @@ -0,0 +1 @@ +import{_ as E,c as e,I as s,w as C,j as a,al as n,D as t,o as c}from"./chunks/framework.n6hqIsqL.js";const O=JSON.parse('{"title":"BCopyright 版权控件","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/control/copyright.md","filePath":"zh-CN/components/control/copyright.md","lastUpdated":1724785300000}'),l={name:"zh-CN/components/control/copyright.md"},u=n('

BCopyright 版权控件

地图 3D 控件,可以控制地图的旋转、倾斜,默认位于地图右下角

ts
import { BCopyright } from 'vue3-baidu-map-gl'

组件示例

多个相同位置版权控件会自动排列,避免重叠

',5),i=a("p",null,"control/copyRight",-1),D=n('

提示

如果动态内容中有图片会导致闪烁,建议将图片和文字拆分成两个自定义版权

静态组件 Props

属性说明类型可选值默认值
anchor控件的停靠位置stringanchorBMAP_ANCHOR_BOTTOM_LEFT
offset控件的偏移值{x: number, y: number }-{ x: 83, y: 18 }

动态组件 Props

',4),F={tabindex:"0"},r=a("thead",null,[a("tr",null,[a("th",null,"属性"),a("th",null,"说明"),a("th",null,"类型"),a("th",null,"可选值"),a("th",null,"默认值"),a("th",null,"版本")])],-1),k=a("td",null,"visible",-1),d=a("td",null,"是否显示",-1),h=a("td",null,[a("code",null,"boolean")],-1),A=a("td",null,"-",-1),B=a("td",null,[a("code",null,"true")],-1),_=n('

anchor

说明
BMAP_ANCHOR_TOP_LEFT左上
BMAP_ANCHOR_TOP_RIGHT右上
BMAP_ANCHOR_BOTTOM_LEFT左下
BMAP_ANCHOR_BOTTOM_RIGHT右下

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
',4);function g(m,b,y,T,v,f){const p=t("Demo"),o=t("Badge");return c(),e("div",null,[u,s(p,{class:"p-bottom",source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBCopyright%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eanchor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EBMAP_ANCHOR_TOP_RIGHT%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Avisible%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eshow%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20special-attr%22%3E%3Cspan%20class%3D%22token%20attr-name%22%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20value%20css%20language-css%22%3E%3Cspan%20class%3D%22token%20property%22%3Edisplay%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20flex%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20property%22%3Ealign-items%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20flex-end%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eimg%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ewidth%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E40%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esrc%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ehttps%3A%2F%2Fs1.ax1x.com%2F2022%2F09%2F29%2FxmTpcT.png%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ealt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%40%E6%88%91%E6%98%AF%E8%87%AA%E5%AE%9A%E4%B9%89%E7%89%88%E6%9D%83%E6%8E%A7%E4%BB%B6%E5%91%80%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBCopyright%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBCopyright%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eanchor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EBMAP_ANCHOR_BOTTOM_RIGHT%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eh3%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%8A%A8%E6%80%81%E5%86%85%E5%AE%B91%3A%20%7B%7B%20count%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eh3%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBCopyright%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBCopyright%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eanchor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EBMAP_ANCHOR_BOTTOM_RIGHT%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eh3%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%8A%A8%E6%80%81%E5%86%85%E5%AE%B92%3A%20%7B%7B%20count%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eh3%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBCopyright%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Etoggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%7B%7B%20show%20%3F%20'%E9%9A%90%E8%97%8F'%20%3A%20'%E6%98%BE%E7%A4%BA'%20%7D%7D%E5%8F%B3%E4%B8%8A%E8%A7%92%E7%89%88%E6%9D%83%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20count%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Enumber%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20show%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Eboolean%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Etoggle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20show%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E!%3C%2Fspan%3Eshow%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20function%22%3EsetInterval%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20count%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20operator%22%3E%2B%2B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E1000%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"control/copyRight","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%3CBMap%20v-bind%3D%22%24attrs%22%3E%0A%20%20%20%20%20%20%3CBCopyright%20anchor%3D%22BMAP_ANCHOR_TOP_RIGHT%22%20%3Avisible%3D%22show%22%3E%0A%20%20%20%20%20%20%20%20%3Cdiv%20style%3D%22display%3A%20flex%3B%20align-items%3A%20flex-end%22%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cimg%20width%3D%2240%22%20src%3D%22https%3A%2F%2Fs1.ax1x.com%2F2022%2F09%2F29%2FxmTpcT.png%22%20alt%3D%22%22%20%2F%3E%0A%20%20%20%20%20%20%20%20%20%20%40%E6%88%91%E6%98%AF%E8%87%AA%E5%AE%9A%E4%B9%89%E7%89%88%E6%9D%83%E6%8E%A7%E4%BB%B6%E5%91%80%0A%20%20%20%20%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%20%20%3C%2FBCopyright%3E%0A%20%20%20%20%20%20%3CBCopyright%20anchor%3D%22BMAP_ANCHOR_BOTTOM_RIGHT%22%3E%0A%20%20%20%20%20%20%20%20%3Ch3%3E%E5%8A%A8%E6%80%81%E5%86%85%E5%AE%B91%3A%20%7B%7B%20count%20%7D%7D%3C%2Fh3%3E%0A%20%20%20%20%20%20%3C%2FBCopyright%3E%0A%20%20%20%20%20%20%3CBCopyright%20anchor%3D%22BMAP_ANCHOR_BOTTOM_RIGHT%22%3E%0A%20%20%20%20%20%20%20%20%3Ch3%3E%E5%8A%A8%E6%80%81%E5%86%85%E5%AE%B92%3A%20%7B%7B%20count%20%7D%7D%3C%2Fh3%3E%0A%20%20%20%20%20%20%3C%2FBCopyright%3E%0A%20%20%20%20%3C%2FBMap%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%20no-m-b%22%20%40click%3D%22toggle%22%3E%7B%7B%20show%20%3F%20'%E9%9A%90%E8%97%8F'%20%3A%20'%E6%98%BE%E7%A4%BA'%20%7D%7D%E5%8F%B3%E4%B8%8A%E8%A7%92%E7%89%88%E6%9D%83%3C%2Fbutton%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%20lang%3D%22ts%22%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20const%20count%20%3D%20ref%3Cnumber%3E(1)%0A%20%20const%20show%20%3D%20ref%3Cboolean%3E(true)%0A%20%20function%20toggle()%20%7B%0A%20%20%20%20show.value%20%3D%20!show.value%0A%20%20%7D%0A%20%20setInterval(()%20%3D%3E%20%7B%0A%20%20%20%20count.value%2B%2B%0A%20%20%7D%2C%201000)%0A%3C%2Fscript%3E%0A",description:""},{default:C(()=>[i]),_:1}),D,a("table",F,[r,a("tbody",null,[a("tr",null,[k,d,h,A,B,a("td",null,[s(o,{type:"tip",text:"^2.2.0"})])])])]),_])}const x=E(l,[["render",g]]);export{O as __pageData,x as default}; diff --git a/assets/zh-CN_components_control_copyright.md.BXr3tWie.lean.js b/assets/zh-CN_components_control_copyright.md.BXr3tWie.lean.js new file mode 100644 index 00000000..72f21c5e --- /dev/null +++ b/assets/zh-CN_components_control_copyright.md.BXr3tWie.lean.js @@ -0,0 +1 @@ +import{_ as E,c as e,I as s,w as C,j as a,al as n,D as t,o as c}from"./chunks/framework.n6hqIsqL.js";const O=JSON.parse('{"title":"BCopyright 版权控件","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/control/copyright.md","filePath":"zh-CN/components/control/copyright.md","lastUpdated":1724785300000}'),l={name:"zh-CN/components/control/copyright.md"},u=n("",5),i=a("p",null,"control/copyRight",-1),D=n("",4),F={tabindex:"0"},r=a("thead",null,[a("tr",null,[a("th",null,"属性"),a("th",null,"说明"),a("th",null,"类型"),a("th",null,"可选值"),a("th",null,"默认值"),a("th",null,"版本")])],-1),k=a("td",null,"visible",-1),d=a("td",null,"是否显示",-1),h=a("td",null,[a("code",null,"boolean")],-1),A=a("td",null,"-",-1),B=a("td",null,[a("code",null,"true")],-1),_=n("",4);function g(m,b,y,T,v,f){const p=t("Demo"),o=t("Badge");return c(),e("div",null,[u,s(p,{class:"p-bottom",source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBCopyright%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eanchor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EBMAP_ANCHOR_TOP_RIGHT%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Avisible%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eshow%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20special-attr%22%3E%3Cspan%20class%3D%22token%20attr-name%22%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20value%20css%20language-css%22%3E%3Cspan%20class%3D%22token%20property%22%3Edisplay%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20flex%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20property%22%3Ealign-items%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20flex-end%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eimg%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ewidth%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E40%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esrc%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ehttps%3A%2F%2Fs1.ax1x.com%2F2022%2F09%2F29%2FxmTpcT.png%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ealt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%40%E6%88%91%E6%98%AF%E8%87%AA%E5%AE%9A%E4%B9%89%E7%89%88%E6%9D%83%E6%8E%A7%E4%BB%B6%E5%91%80%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBCopyright%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBCopyright%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eanchor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EBMAP_ANCHOR_BOTTOM_RIGHT%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eh3%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%8A%A8%E6%80%81%E5%86%85%E5%AE%B91%3A%20%7B%7B%20count%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eh3%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBCopyright%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBCopyright%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eanchor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EBMAP_ANCHOR_BOTTOM_RIGHT%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eh3%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%8A%A8%E6%80%81%E5%86%85%E5%AE%B92%3A%20%7B%7B%20count%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eh3%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBCopyright%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Etoggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%7B%7B%20show%20%3F%20'%E9%9A%90%E8%97%8F'%20%3A%20'%E6%98%BE%E7%A4%BA'%20%7D%7D%E5%8F%B3%E4%B8%8A%E8%A7%92%E7%89%88%E6%9D%83%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20count%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Enumber%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20show%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Eboolean%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Etoggle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20show%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E!%3C%2Fspan%3Eshow%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20function%22%3EsetInterval%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20count%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20operator%22%3E%2B%2B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E1000%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"control/copyRight","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%3CBMap%20v-bind%3D%22%24attrs%22%3E%0A%20%20%20%20%20%20%3CBCopyright%20anchor%3D%22BMAP_ANCHOR_TOP_RIGHT%22%20%3Avisible%3D%22show%22%3E%0A%20%20%20%20%20%20%20%20%3Cdiv%20style%3D%22display%3A%20flex%3B%20align-items%3A%20flex-end%22%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cimg%20width%3D%2240%22%20src%3D%22https%3A%2F%2Fs1.ax1x.com%2F2022%2F09%2F29%2FxmTpcT.png%22%20alt%3D%22%22%20%2F%3E%0A%20%20%20%20%20%20%20%20%20%20%40%E6%88%91%E6%98%AF%E8%87%AA%E5%AE%9A%E4%B9%89%E7%89%88%E6%9D%83%E6%8E%A7%E4%BB%B6%E5%91%80%0A%20%20%20%20%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%20%20%3C%2FBCopyright%3E%0A%20%20%20%20%20%20%3CBCopyright%20anchor%3D%22BMAP_ANCHOR_BOTTOM_RIGHT%22%3E%0A%20%20%20%20%20%20%20%20%3Ch3%3E%E5%8A%A8%E6%80%81%E5%86%85%E5%AE%B91%3A%20%7B%7B%20count%20%7D%7D%3C%2Fh3%3E%0A%20%20%20%20%20%20%3C%2FBCopyright%3E%0A%20%20%20%20%20%20%3CBCopyright%20anchor%3D%22BMAP_ANCHOR_BOTTOM_RIGHT%22%3E%0A%20%20%20%20%20%20%20%20%3Ch3%3E%E5%8A%A8%E6%80%81%E5%86%85%E5%AE%B92%3A%20%7B%7B%20count%20%7D%7D%3C%2Fh3%3E%0A%20%20%20%20%20%20%3C%2FBCopyright%3E%0A%20%20%20%20%3C%2FBMap%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%20no-m-b%22%20%40click%3D%22toggle%22%3E%7B%7B%20show%20%3F%20'%E9%9A%90%E8%97%8F'%20%3A%20'%E6%98%BE%E7%A4%BA'%20%7D%7D%E5%8F%B3%E4%B8%8A%E8%A7%92%E7%89%88%E6%9D%83%3C%2Fbutton%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%20lang%3D%22ts%22%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20const%20count%20%3D%20ref%3Cnumber%3E(1)%0A%20%20const%20show%20%3D%20ref%3Cboolean%3E(true)%0A%20%20function%20toggle()%20%7B%0A%20%20%20%20show.value%20%3D%20!show.value%0A%20%20%7D%0A%20%20setInterval(()%20%3D%3E%20%7B%0A%20%20%20%20count.value%2B%2B%0A%20%20%7D%2C%201000)%0A%3C%2Fscript%3E%0A",description:""},{default:C(()=>[i]),_:1}),D,a("table",F,[r,a("tbody",null,[a("tr",null,[k,d,h,A,B,a("td",null,[s(o,{type:"tip",text:"^2.2.0"})])])])]),_])}const x=E(l,[["render",g]]);export{O as __pageData,x as default}; diff --git a/assets/zh-CN_components_control_custom.md.mA4ICBXG.js b/assets/zh-CN_components_control_custom.md.mA4ICBXG.js new file mode 100644 index 00000000..f79d5756 --- /dev/null +++ b/assets/zh-CN_components_control_custom.md.mA4ICBXG.js @@ -0,0 +1 @@ +import{_ as e,c,I as s,w as E,j as n,al as a,D as t,o as C}from"./chunks/framework.n6hqIsqL.js";const P=JSON.parse('{"title":"BControl 自定义控件","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/control/custom.md","filePath":"zh-CN/components/control/custom.md","lastUpdated":1724785300000}'),l={name:"zh-CN/components/control/custom.md"},u=a('

BControl 自定义控件

根据地图 BMap 组件提供的 Props,或者地图实例,自定义控件

ts
import { BControl } from 'vue3-baidu-map-gl'

组件示例

',4),i=n("p",null,"control/custom",-1),r=a('

静态组件 Props

属性说明类型可选值默认值
anchor控件的停靠位置stringanchorBMAP_ANCHOR_BOTTOM_LEFT
offset控件的偏移值{x: number, y: number }-{ x: 83, y: 18 }

动态组件 Props

',3),D={tabindex:"0"},k=n("thead",null,[n("tr",null,[n("th",null,"属性"),n("th",null,"说明"),n("th",null,"类型"),n("th",null,"可选值"),n("th",null,"默认值"),n("th",null,"版本")])],-1),F=n("td",null,"visible",-1),d=n("td",null,"是否显示",-1),h=n("td",null,[n("code",null,"boolean")],-1),A=n("td",null,"-",-1),m=n("td",null,[n("code",null,"true")],-1),_=a('

anchor

说明
BMAP_ANCHOR_TOP_LEFT左上
BMAP_ANCHOR_TOP_RIGHT右上
BMAP_ANCHOR_BOTTOM_LEFT左下
BMAP_ANCHOR_BOTTOM_RIGHT右下

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
',4);function B(b,g,f,y,x,T){const p=t("Demo"),o=t("Badge");return C(),c("div",null,[u,s(p,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ezoom%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBControl%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20special-attr%22%3E%3Cspan%20class%3D%22token%20attr-name%22%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20value%20css%20language-css%22%3E%3Cspan%20class%3D%22token%20property%22%3Edisplay%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20flex%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20property%22%3Ebackground-color%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%23fff%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20property%22%3Epadding%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2010px%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aoffset%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20x%3A%200%2C%20y%3A%200%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleZoomOut%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BC%A9%E5%B0%8F%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleZoomIn%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E6%94%BE%E5%A4%A7%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBControl%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20zoom%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E10%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20_map%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20map%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20_map%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20map%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleZoomOut%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20zoom%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20_map%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EgetZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E-%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleZoomIn%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20zoom%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20_map%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EgetZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%2B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Estyle%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Escoped%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20style%22%3E%3Cspan%20class%3D%22token%20language-css%22%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Eoutline%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20none%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Eborder%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20none%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Ebackground%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%2341b883%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%200%205px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Epadding%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%205px%2015px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Eborder-radius%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%204px%20%3Cspan%20class%3D%22token%20important%22%3E!important%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"control/custom","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%40initd%3D%22handleInitd%22%20%3Azoom%3D%22zoom%22%3E%0A%20%20%20%20%3CBControl%20style%3D%22display%3A%20flex%3B%20background-color%3A%20%23fff%3B%20padding%3A%2010px%22%20%3Aoffset%3D%22%7B%20x%3A%200%2C%20y%3A%200%20%7D%22%3E%0A%20%20%20%20%20%20%3Cbutton%20%40click%3D%22handleZoomOut%22%3E%E7%BC%A9%E5%B0%8F%3C%2Fbutton%3E%0A%20%20%20%20%20%20%3Cbutton%20%40click%3D%22handleZoomIn%22%3E%E6%94%BE%E5%A4%A7%3C%2Fbutton%3E%0A%20%20%20%20%3C%2FBControl%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%20lang%3D%22ts%22%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20const%20zoom%20%3D%20ref(10)%0A%20%20let%20_map%0A%20%20function%20handleInitd(%7B%20map%20%7D)%20%7B%0A%20%20%20%20_map%20%3D%20map%0A%20%20%7D%0A%20%20function%20handleZoomOut()%20%7B%0A%20%20%20%20zoom.value%20%3D%20_map.getZoom()%20-%201%0A%20%20%7D%0A%20%20function%20handleZoomIn()%20%7B%0A%20%20%20%20zoom.value%20%3D%20_map.getZoom()%20%2B%201%0A%20%20%7D%0A%3C%2Fscript%3E%0A%0A%3Cstyle%20scoped%3E%0A%20%20button%20%7B%0A%20%20%20%20outline%3A%20none%3B%0A%20%20%20%20border%3A%20none%3B%0A%20%20%20%20background%3A%20%2341b883%3B%0A%20%20%20%20margin%3A%200%205px%3B%0A%20%20%20%20padding%3A%205px%2015px%3B%0A%20%20%20%20border-radius%3A%204px%20!important%3B%0A%20%20%7D%0A%3C%2Fstyle%3E%0A",description:""},{default:E(()=>[i]),_:1}),r,n("table",D,[k,n("tbody",null,[n("tr",null,[F,d,h,A,m,n("td",null,[s(o,{type:"tip",text:"^2.2.0"})])])])]),_])}const q=e(l,[["render",B]]);export{P as __pageData,q as default}; diff --git a/assets/zh-CN_components_control_custom.md.mA4ICBXG.lean.js b/assets/zh-CN_components_control_custom.md.mA4ICBXG.lean.js new file mode 100644 index 00000000..639aa61e --- /dev/null +++ b/assets/zh-CN_components_control_custom.md.mA4ICBXG.lean.js @@ -0,0 +1 @@ +import{_ as e,c,I as s,w as E,j as n,al as a,D as t,o as C}from"./chunks/framework.n6hqIsqL.js";const P=JSON.parse('{"title":"BControl 自定义控件","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/control/custom.md","filePath":"zh-CN/components/control/custom.md","lastUpdated":1724785300000}'),l={name:"zh-CN/components/control/custom.md"},u=a("",4),i=n("p",null,"control/custom",-1),r=a("",3),D={tabindex:"0"},k=n("thead",null,[n("tr",null,[n("th",null,"属性"),n("th",null,"说明"),n("th",null,"类型"),n("th",null,"可选值"),n("th",null,"默认值"),n("th",null,"版本")])],-1),F=n("td",null,"visible",-1),d=n("td",null,"是否显示",-1),h=n("td",null,[n("code",null,"boolean")],-1),A=n("td",null,"-",-1),m=n("td",null,[n("code",null,"true")],-1),_=a("",4);function B(b,g,f,y,x,T){const p=t("Demo"),o=t("Badge");return C(),c("div",null,[u,s(p,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ezoom%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBControl%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20special-attr%22%3E%3Cspan%20class%3D%22token%20attr-name%22%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20value%20css%20language-css%22%3E%3Cspan%20class%3D%22token%20property%22%3Edisplay%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20flex%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20property%22%3Ebackground-color%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%23fff%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20property%22%3Epadding%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2010px%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aoffset%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20x%3A%200%2C%20y%3A%200%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleZoomOut%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BC%A9%E5%B0%8F%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleZoomIn%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E6%94%BE%E5%A4%A7%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBControl%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20zoom%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E10%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20_map%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20map%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20_map%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20map%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleZoomOut%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20zoom%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20_map%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EgetZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E-%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleZoomIn%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20zoom%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20_map%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EgetZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%2B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Estyle%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Escoped%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20style%22%3E%3Cspan%20class%3D%22token%20language-css%22%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Eoutline%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20none%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Eborder%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20none%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Ebackground%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%2341b883%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%200%205px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Epadding%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%205px%2015px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Eborder-radius%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%204px%20%3Cspan%20class%3D%22token%20important%22%3E!important%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"control/custom","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%40initd%3D%22handleInitd%22%20%3Azoom%3D%22zoom%22%3E%0A%20%20%20%20%3CBControl%20style%3D%22display%3A%20flex%3B%20background-color%3A%20%23fff%3B%20padding%3A%2010px%22%20%3Aoffset%3D%22%7B%20x%3A%200%2C%20y%3A%200%20%7D%22%3E%0A%20%20%20%20%20%20%3Cbutton%20%40click%3D%22handleZoomOut%22%3E%E7%BC%A9%E5%B0%8F%3C%2Fbutton%3E%0A%20%20%20%20%20%20%3Cbutton%20%40click%3D%22handleZoomIn%22%3E%E6%94%BE%E5%A4%A7%3C%2Fbutton%3E%0A%20%20%20%20%3C%2FBControl%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%20lang%3D%22ts%22%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20const%20zoom%20%3D%20ref(10)%0A%20%20let%20_map%0A%20%20function%20handleInitd(%7B%20map%20%7D)%20%7B%0A%20%20%20%20_map%20%3D%20map%0A%20%20%7D%0A%20%20function%20handleZoomOut()%20%7B%0A%20%20%20%20zoom.value%20%3D%20_map.getZoom()%20-%201%0A%20%20%7D%0A%20%20function%20handleZoomIn()%20%7B%0A%20%20%20%20zoom.value%20%3D%20_map.getZoom()%20%2B%201%0A%20%20%7D%0A%3C%2Fscript%3E%0A%0A%3Cstyle%20scoped%3E%0A%20%20button%20%7B%0A%20%20%20%20outline%3A%20none%3B%0A%20%20%20%20border%3A%20none%3B%0A%20%20%20%20background%3A%20%2341b883%3B%0A%20%20%20%20margin%3A%200%205px%3B%0A%20%20%20%20padding%3A%205px%2015px%3B%0A%20%20%20%20border-radius%3A%204px%20!important%3B%0A%20%20%7D%0A%3C%2Fstyle%3E%0A",description:""},{default:E(()=>[i]),_:1}),r,n("table",D,[k,n("tbody",null,[n("tr",null,[F,d,h,A,m,n("td",null,[s(o,{type:"tip",text:"^2.2.0"})])])])]),_])}const q=e(l,[["render",B]]);export{P as __pageData,q as default}; diff --git a/assets/zh-CN_components_control_location.md.BISwXaNg.js b/assets/zh-CN_components_control_location.md.BISwXaNg.js new file mode 100644 index 00000000..104366fb --- /dev/null +++ b/assets/zh-CN_components_control_location.md.BISwXaNg.js @@ -0,0 +1 @@ +import{_ as l,c as d,I as a,w as c,j as t,al as o,D as s,o as i}from"./chunks/framework.n6hqIsqL.js";const H=JSON.parse('{"title":"BLocation 定位控件","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/control/location.md","filePath":"zh-CN/components/control/location.md","lastUpdated":1724785300000}'),p={name:"zh-CN/components/control/location.md"},r=o('

BLocation 定位控件

定位控件,默认位于地图右下角

ts
import { BLocation } from 'vue3-baidu-map-gl'

组件示例

',4),h=t("p",null,"control/location",-1),_=o('

静态组件 Props

属性说明类型可选值默认值
anchor控件的停靠位置stringanchorBMAP_ANCHOR_BOTTOM_RIGHT
offset控件的偏移值{x: number, y: number }-{ x: 18, y: 18 }

动态组件 Props

',3),u={tabindex:"0"},C=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"可选值"),t("th",null,"默认值"),t("th",null,"版本")])],-1),E=t("td",null,"visible",-1),k=t("td",null,"是否显示",-1),b=t("td",null,[t("code",null,"boolean")],-1),m=t("td",null,"-",-1),F=t("td",null,[t("code",null,"true")],-1),A=o('

anchor

说明
BMAP_ANCHOR_TOP_LEFT左上
BMAP_ANCHOR_TOP_RIGHT右上
BMAP_ANCHOR_BOTTOM_LEFT左下
BMAP_ANCHOR_BOTTOM_RIGHT右下

组件事件

',3),T={tabindex:"0"},B=t("thead",null,[t("tr",null,[t("th",null,"事件名"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"版本")])],-1),D=t("tr",null,[t("td",null,"initd"),t("td",null,"组件初始化后,调用的方法,返回一个地图实例"),t("td",null,[t("code",null,"{ map, BmapGL, instance }")]),t("td",null,"-")],-1),g=t("tr",null,[t("td",null,"unload"),t("td",null,"组件卸载时会调用此方法"),t("td",null,"-"),t("td",null,"-")],-1),P=t("td",null,"locationSuccess",-1),x=t("td",null,"定位成功时会调用此方法",-1),f=t("td",null,[t("code",null,"{Event}")],-1),y=t("td",null,"locationError",-1),N=t("td",null,"定位失败时会调用此方法",-1),v=t("td",null,[t("code",null,"{Event}")],-1);function O(q,M,S,R,I,L){const e=s("Demo"),n=s("Badge");return i(),d("div",null,[r,a(e,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBLocation%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"control/location","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%3E%0A%20%20%20%20%3CBLocation%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A",description:""},{default:c(()=>[h]),_:1}),_,t("table",u,[C,t("tbody",null,[t("tr",null,[E,k,b,m,F,t("td",null,[a(n,{type:"tip",text:"^2.2.0"})])])])]),A,t("table",T,[B,t("tbody",null,[D,g,t("tr",null,[P,x,f,t("td",null,[a(n,{type:"tip",text:"^0.0.39"})])]),t("tr",null,[y,N,v,t("td",null,[a(n,{type:"tip",text:"^0.0.39"})])])])])])}const G=l(p,[["render",O]]);export{H as __pageData,G as default}; diff --git a/assets/zh-CN_components_control_location.md.BISwXaNg.lean.js b/assets/zh-CN_components_control_location.md.BISwXaNg.lean.js new file mode 100644 index 00000000..ff90647a --- /dev/null +++ b/assets/zh-CN_components_control_location.md.BISwXaNg.lean.js @@ -0,0 +1 @@ +import{_ as l,c as d,I as a,w as c,j as t,al as o,D as s,o as i}from"./chunks/framework.n6hqIsqL.js";const H=JSON.parse('{"title":"BLocation 定位控件","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/control/location.md","filePath":"zh-CN/components/control/location.md","lastUpdated":1724785300000}'),p={name:"zh-CN/components/control/location.md"},r=o("",4),h=t("p",null,"control/location",-1),_=o("",3),u={tabindex:"0"},C=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"可选值"),t("th",null,"默认值"),t("th",null,"版本")])],-1),E=t("td",null,"visible",-1),k=t("td",null,"是否显示",-1),b=t("td",null,[t("code",null,"boolean")],-1),m=t("td",null,"-",-1),F=t("td",null,[t("code",null,"true")],-1),A=o("",3),T={tabindex:"0"},B=t("thead",null,[t("tr",null,[t("th",null,"事件名"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"版本")])],-1),D=t("tr",null,[t("td",null,"initd"),t("td",null,"组件初始化后,调用的方法,返回一个地图实例"),t("td",null,[t("code",null,"{ map, BmapGL, instance }")]),t("td",null,"-")],-1),g=t("tr",null,[t("td",null,"unload"),t("td",null,"组件卸载时会调用此方法"),t("td",null,"-"),t("td",null,"-")],-1),P=t("td",null,"locationSuccess",-1),x=t("td",null,"定位成功时会调用此方法",-1),f=t("td",null,[t("code",null,"{Event}")],-1),y=t("td",null,"locationError",-1),N=t("td",null,"定位失败时会调用此方法",-1),v=t("td",null,[t("code",null,"{Event}")],-1);function O(q,M,S,R,I,L){const e=s("Demo"),n=s("Badge");return i(),d("div",null,[r,a(e,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBLocation%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"control/location","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%3E%0A%20%20%20%20%3CBLocation%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A",description:""},{default:c(()=>[h]),_:1}),_,t("table",u,[C,t("tbody",null,[t("tr",null,[E,k,b,m,F,t("td",null,[a(n,{type:"tip",text:"^2.2.0"})])])])]),A,t("table",T,[B,t("tbody",null,[D,g,t("tr",null,[P,x,f,t("td",null,[a(n,{type:"tip",text:"^0.0.39"})])]),t("tr",null,[y,N,v,t("td",null,[a(n,{type:"tip",text:"^0.0.39"})])])])])])}const G=l(p,[["render",O]]);export{H as __pageData,G as default}; diff --git a/assets/zh-CN_components_control_navigation3d.md.Ft2w-rsN.js b/assets/zh-CN_components_control_navigation3d.md.Ft2w-rsN.js new file mode 100644 index 00000000..51e297fc --- /dev/null +++ b/assets/zh-CN_components_control_navigation3d.md.Ft2w-rsN.js @@ -0,0 +1 @@ +import{_ as d,c as l,I as n,w as i,j as t,al as a,D as s,o as p}from"./chunks/framework.n6hqIsqL.js";const x=JSON.parse('{"title":"BNavigation3d 3D 视角导航控件","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/control/navigation3d.md","filePath":"zh-CN/components/control/navigation3d.md","lastUpdated":1724785300000}'),c={name:"zh-CN/components/control/navigation3d.md"},r=a('

BNavigation3d 3D 视角导航控件

地图 3D 控件,可以控制地图的旋转、倾斜,默认位于地图右下角

ts
import { BNavigation3d } from 'vue3-baidu-map-gl'

组件示例

',4),h=t("p",null,"control/navigation3d",-1),_=a('

静态组件 Props

属性说明类型可选值默认值
anchor控件的停靠位置stringanchorBMAP_ANCHOR_BOTTOM_LEFT
offset控件的偏移值{x: number, y: number }-{ x: 83, y: 18 }

动态组件 Props

',3),u={tabindex:"0"},C=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"可选值"),t("th",null,"默认值"),t("th",null,"版本")])],-1),E=t("td",null,"visible",-1),b=t("td",null,"是否显示",-1),k=t("td",null,[t("code",null,"boolean")],-1),g=t("td",null,"-",-1),m=t("td",null,[t("code",null,"true")],-1),F=a('

anchor

说明
BMAP_ANCHOR_TOP_LEFT左上
BMAP_ANCHOR_TOP_RIGHT右上
BMAP_ANCHOR_BOTTOM_LEFT左下
BMAP_ANCHOR_BOTTOM_RIGHT右下

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
',4);function D(A,T,B,v,P,N){const e=s("Demo"),o=s("Badge");return p(),l("div",null,[r,n(e,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBNavigation3d%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"control/navigation3d","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%3E%0A%20%20%20%20%3CBNavigation3d%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A",description:""},{default:i(()=>[h]),_:1}),_,t("table",u,[C,t("tbody",null,[t("tr",null,[E,b,k,g,m,t("td",null,[n(o,{type:"tip",text:"^2.2.0"})])])])]),F])}const y=d(c,[["render",D]]);export{x as __pageData,y as default}; diff --git a/assets/zh-CN_components_control_navigation3d.md.Ft2w-rsN.lean.js b/assets/zh-CN_components_control_navigation3d.md.Ft2w-rsN.lean.js new file mode 100644 index 00000000..a89c317d --- /dev/null +++ b/assets/zh-CN_components_control_navigation3d.md.Ft2w-rsN.lean.js @@ -0,0 +1 @@ +import{_ as d,c as l,I as n,w as i,j as t,al as a,D as s,o as p}from"./chunks/framework.n6hqIsqL.js";const x=JSON.parse('{"title":"BNavigation3d 3D 视角导航控件","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/control/navigation3d.md","filePath":"zh-CN/components/control/navigation3d.md","lastUpdated":1724785300000}'),c={name:"zh-CN/components/control/navigation3d.md"},r=a("",4),h=t("p",null,"control/navigation3d",-1),_=a("",3),u={tabindex:"0"},C=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"可选值"),t("th",null,"默认值"),t("th",null,"版本")])],-1),E=t("td",null,"visible",-1),b=t("td",null,"是否显示",-1),k=t("td",null,[t("code",null,"boolean")],-1),g=t("td",null,"-",-1),m=t("td",null,[t("code",null,"true")],-1),F=a("",4);function D(A,T,B,v,P,N){const e=s("Demo"),o=s("Badge");return p(),l("div",null,[r,n(e,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBNavigation3d%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"control/navigation3d","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%3E%0A%20%20%20%20%3CBNavigation3d%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A",description:""},{default:i(()=>[h]),_:1}),_,t("table",u,[C,t("tbody",null,[t("tr",null,[E,b,k,g,m,t("td",null,[n(o,{type:"tip",text:"^2.2.0"})])])])]),F])}const y=d(c,[["render",D]]);export{x as __pageData,y as default}; diff --git a/assets/zh-CN_components_control_panorama-control.md.CfR8VVZi.js b/assets/zh-CN_components_control_panorama-control.md.CfR8VVZi.js new file mode 100644 index 00000000..5a08751a --- /dev/null +++ b/assets/zh-CN_components_control_panorama-control.md.CfR8VVZi.js @@ -0,0 +1 @@ +import{_ as r,c as d,j as t,a as e,I as a,w as p,al as n,D as s,o as c}from"./chunks/framework.n6hqIsqL.js";const S=JSON.parse('{"title":"BPanoramaControl 全景控件","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/control/panorama-control.md","filePath":"zh-CN/components/control/panorama-control.md","lastUpdated":1724785300000}'),i={name:"zh-CN/components/control/panorama-control.md"},h={id:"bpanoramacontrol-全景控件",tabindex:"-1"},_=t("a",{class:"header-anchor",href:"#bpanoramacontrol-全景控件","aria-label":'Permalink to "BPanoramaControl 全景控件 "'},"​",-1),C=n('

全景地图服务,360° 全景地图刻画真实世界,将街道场景带入到地图产品中,用户可以拖拽地图从不同的角度浏览真实的街景效果

ts
import { BPanoramaControl } from 'vue3-baidu-map-gl'

TIP

全景地图服务属于百度地图高级服务,需要向 百度地图申请 才可以使用

组件示例

单独使用该组件不会显示全景地图覆盖情况,还需要搭配BPanoramaCoverageLayer组件使用。

',5),E=t("p",null,"control/panoramaControl",-1),u=n('

静态组件 Props

属性说明类型可选值默认值
anchor控件的停靠位置stringanchorBMAP_ANCHOR_BOTTOM_RIGHT
offset控件的偏移值{x: number, y: number }-{ x: 18, y: 18 }

动态组件 Props

',3),m={tabindex:"0"},k=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"可选值"),t("th",null,"默认值"),t("th",null,"版本")])],-1),b=t("td",null,"visible",-1),A=t("td",null,"是否显示",-1),F=t("td",null,[t("code",null,"boolean")],-1),B=t("td",null,"-",-1),D=t("td",null,[t("code",null,"true")],-1),P=n('

anchor

说明
BMAP_ANCHOR_TOP_LEFT左上
BMAP_ANCHOR_TOP_RIGHT右上
BMAP_ANCHOR_BOTTOM_LEFT左下
BMAP_ANCHOR_BOTTOM_RIGHT右下

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
',4);function T(g,y,f,x,v,N){const o=s("Badge"),l=s("Demo");return c(),d("div",null,[t("h1",h,[e("BPanoramaControl 全景控件 "),a(o,{type:"tip",text:"^0.0.31"}),e(),_]),C,a(l,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBPanoramaControl%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBPanoramaCoverageLayer%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"control/panoramaControl","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20enableScrollWheelZoom%3E%0A%20%20%20%20%3CBPanoramaControl%20%2F%3E%0A%20%20%20%20%3CBPanoramaCoverageLayer%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A",description:""},{default:p(()=>[E]),_:1}),u,t("table",m,[k,t("tbody",null,[t("tr",null,[b,A,F,B,D,t("td",null,[a(o,{type:"tip",text:"^2.2.0"})])])])]),P])}const I=r(i,[["render",T]]);export{S as __pageData,I as default}; diff --git a/assets/zh-CN_components_control_panorama-control.md.CfR8VVZi.lean.js b/assets/zh-CN_components_control_panorama-control.md.CfR8VVZi.lean.js new file mode 100644 index 00000000..c595f827 --- /dev/null +++ b/assets/zh-CN_components_control_panorama-control.md.CfR8VVZi.lean.js @@ -0,0 +1 @@ +import{_ as r,c as d,j as t,a as e,I as a,w as p,al as n,D as s,o as c}from"./chunks/framework.n6hqIsqL.js";const S=JSON.parse('{"title":"BPanoramaControl 全景控件","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/control/panorama-control.md","filePath":"zh-CN/components/control/panorama-control.md","lastUpdated":1724785300000}'),i={name:"zh-CN/components/control/panorama-control.md"},h={id:"bpanoramacontrol-全景控件",tabindex:"-1"},_=t("a",{class:"header-anchor",href:"#bpanoramacontrol-全景控件","aria-label":'Permalink to "BPanoramaControl 全景控件 "'},"​",-1),C=n("",5),E=t("p",null,"control/panoramaControl",-1),u=n("",3),m={tabindex:"0"},k=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"可选值"),t("th",null,"默认值"),t("th",null,"版本")])],-1),b=t("td",null,"visible",-1),A=t("td",null,"是否显示",-1),F=t("td",null,[t("code",null,"boolean")],-1),B=t("td",null,"-",-1),D=t("td",null,[t("code",null,"true")],-1),P=n("",4);function T(g,y,f,x,v,N){const o=s("Badge"),l=s("Demo");return c(),d("div",null,[t("h1",h,[e("BPanoramaControl 全景控件 "),a(o,{type:"tip",text:"^0.0.31"}),e(),_]),C,a(l,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBPanoramaControl%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBPanoramaCoverageLayer%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"control/panoramaControl","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20enableScrollWheelZoom%3E%0A%20%20%20%20%3CBPanoramaControl%20%2F%3E%0A%20%20%20%20%3CBPanoramaCoverageLayer%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A",description:""},{default:p(()=>[E]),_:1}),u,t("table",m,[k,t("tbody",null,[t("tr",null,[b,A,F,B,D,t("td",null,[a(o,{type:"tip",text:"^2.2.0"})])])])]),P])}const I=r(i,[["render",T]]);export{S as __pageData,I as default}; diff --git a/assets/zh-CN_components_control_scale.md.DuVkT0Hk.js b/assets/zh-CN_components_control_scale.md.DuVkT0Hk.js new file mode 100644 index 00000000..5ed6fa45 --- /dev/null +++ b/assets/zh-CN_components_control_scale.md.DuVkT0Hk.js @@ -0,0 +1 @@ +import{_ as d,c as l,I as n,w as c,j as t,al as a,D as e,o as r}from"./chunks/framework.n6hqIsqL.js";const N=JSON.parse('{"title":"BScale 比例尺控件","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/control/scale.md","filePath":"zh-CN/components/control/scale.md","lastUpdated":1724785300000}'),h={name:"zh-CN/components/control/scale.md"},p=a('

BScale 比例尺控件

比例尺控件,默认显示在地图左下角

ts
import { BScale } from 'vue3-baidu-map-gl'

组件示例

',4),i=t("p",null,"control/scale",-1),_=a('

静态组件 Props

属性说明类型可选值默认值
anchor控件的停靠位置stringanchorBMAP_ANCHOR_BOTTOM_LEFT
offset控件的偏移值{x: number, y: number }-{ x: 83, y: 18 }

动态组件 Props

',3),u={tabindex:"0"},C=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"可选值"),t("th",null,"默认值"),t("th",null,"版本")])],-1),E=t("tr",null,[t("td",null,"unit"),t("td",null,"比例尺单位制"),t("td",null,[t("code",null,"string")]),t("td",null,[t("a",{href:"#unit"},"unit")]),t("td",null,[t("code",null,"BMAP_UNIT_METRIC")]),t("td")],-1),b=t("td",null,"visible",-1),k=t("td",null,"是否显示",-1),m=t("td",null,[t("code",null,"boolean")],-1),F=t("td",null,"-",-1),T=t("td",null,[t("code",null,"true")],-1),A=a('

anchor

说明
BMAP_ANCHOR_TOP_LEFT左上
BMAP_ANCHOR_TOP_RIGHT右上
BMAP_ANCHOR_BOTTOM_LEFT左下
BMAP_ANCHOR_BOTTOM_RIGHT右下

unit

说明
BMAP_UNIT_METRIC公尺
BMAP_UNIT_IMPERIAL英尺

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
',6);function B(D,P,g,f,x,y){const s=e("Demo"),o=e("Badge");return r(),l("div",null,[p,n(s,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBScale%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"control/scale","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%3E%0A%20%20%20%20%3CBScale%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A",description:""},{default:c(()=>[i]),_:1}),_,t("table",u,[C,t("tbody",null,[E,t("tr",null,[b,k,m,F,T,t("td",null,[n(o,{type:"tip",text:"^2.2.0"})])])])]),A])}const S=d(h,[["render",B]]);export{N as __pageData,S as default}; diff --git a/assets/zh-CN_components_control_scale.md.DuVkT0Hk.lean.js b/assets/zh-CN_components_control_scale.md.DuVkT0Hk.lean.js new file mode 100644 index 00000000..ca005000 --- /dev/null +++ b/assets/zh-CN_components_control_scale.md.DuVkT0Hk.lean.js @@ -0,0 +1 @@ +import{_ as d,c as l,I as n,w as c,j as t,al as a,D as e,o as r}from"./chunks/framework.n6hqIsqL.js";const N=JSON.parse('{"title":"BScale 比例尺控件","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/control/scale.md","filePath":"zh-CN/components/control/scale.md","lastUpdated":1724785300000}'),h={name:"zh-CN/components/control/scale.md"},p=a("",4),i=t("p",null,"control/scale",-1),_=a("",3),u={tabindex:"0"},C=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"可选值"),t("th",null,"默认值"),t("th",null,"版本")])],-1),E=t("tr",null,[t("td",null,"unit"),t("td",null,"比例尺单位制"),t("td",null,[t("code",null,"string")]),t("td",null,[t("a",{href:"#unit"},"unit")]),t("td",null,[t("code",null,"BMAP_UNIT_METRIC")]),t("td")],-1),b=t("td",null,"visible",-1),k=t("td",null,"是否显示",-1),m=t("td",null,[t("code",null,"boolean")],-1),F=t("td",null,"-",-1),T=t("td",null,[t("code",null,"true")],-1),A=a("",6);function B(D,P,g,f,x,y){const s=e("Demo"),o=e("Badge");return r(),l("div",null,[p,n(s,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBScale%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"control/scale","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%3E%0A%20%20%20%20%3CBScale%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A",description:""},{default:c(()=>[i]),_:1}),_,t("table",u,[C,t("tbody",null,[E,t("tr",null,[b,k,m,F,T,t("td",null,[n(o,{type:"tip",text:"^2.2.0"})])])])]),A])}const S=d(h,[["render",B]]);export{N as __pageData,S as default}; diff --git a/assets/zh-CN_components_control_zoom.md.vmZan6vN.js b/assets/zh-CN_components_control_zoom.md.vmZan6vN.js new file mode 100644 index 00000000..c1716ed1 --- /dev/null +++ b/assets/zh-CN_components_control_zoom.md.vmZan6vN.js @@ -0,0 +1 @@ +import{_ as d,c as l,I as o,w as p,j as t,al as a,D as n,o as c}from"./chunks/framework.n6hqIsqL.js";const N=JSON.parse('{"title":"BZoom 缩放控件","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/control/zoom.md","filePath":"zh-CN/components/control/zoom.md","lastUpdated":1724785300000}'),r={name:"zh-CN/components/control/zoom.md"},h=a('

BZoom 缩放控件

缩放控件,默认位于地图右下角

ts
import { BZoom } from 'vue3-baidu-map-gl'

组件示例

',4),i=t("p",null,"control/zoom",-1),_=a('

静态组件 Props

属性说明类型可选值默认值
anchor控件的停靠位置stringanchorBMAP_ANCHOR_BOTTOM_LEFT
offset控件的偏移值{x: number, y: number }- { x: 83, y: 18 }

动态组件 Props

',3),u={tabindex:"0"},C=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"可选值"),t("th",null,"默认值"),t("th",null,"版本")])],-1),E=t("td",null,"visible",-1),m=t("td",null,"是否显示",-1),b=t("td",null,[t("code",null,"boolean")],-1),k=t("td",null,"-",-1),F=t("td",null,[t("code",null,"true")],-1),A=a('

anchor

说明
BMAP_ANCHOR_TOP_LEFT左上
BMAP_ANCHOR_TOP_RIGHT右上
BMAP_ANCHOR_BOTTOM_LEFT左下
BMAP_ANCHOR_BOTTOM_RIGHT右下

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
',4);function T(B,D,g,P,f,x){const s=n("Demo"),e=n("Badge");return c(),l("div",null,[h,o(s,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBZoom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"control/zoom","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%3E%0A%20%20%20%20%3CBZoom%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A",description:""},{default:p(()=>[i]),_:1}),_,t("table",u,[C,t("tbody",null,[t("tr",null,[E,m,b,k,F,t("td",null,[o(e,{type:"tip",text:"^2.2.0"})])])])]),A])}const O=d(r,[["render",T]]);export{N as __pageData,O as default}; diff --git a/assets/zh-CN_components_control_zoom.md.vmZan6vN.lean.js b/assets/zh-CN_components_control_zoom.md.vmZan6vN.lean.js new file mode 100644 index 00000000..f68ac9d1 --- /dev/null +++ b/assets/zh-CN_components_control_zoom.md.vmZan6vN.lean.js @@ -0,0 +1 @@ +import{_ as d,c as l,I as o,w as p,j as t,al as a,D as n,o as c}from"./chunks/framework.n6hqIsqL.js";const N=JSON.parse('{"title":"BZoom 缩放控件","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/control/zoom.md","filePath":"zh-CN/components/control/zoom.md","lastUpdated":1724785300000}'),r={name:"zh-CN/components/control/zoom.md"},h=a("",4),i=t("p",null,"control/zoom",-1),_=a("",3),u={tabindex:"0"},C=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"可选值"),t("th",null,"默认值"),t("th",null,"版本")])],-1),E=t("td",null,"visible",-1),m=t("td",null,"是否显示",-1),b=t("td",null,[t("code",null,"boolean")],-1),k=t("td",null,"-",-1),F=t("td",null,[t("code",null,"true")],-1),A=a("",4);function T(B,D,g,P,f,x){const s=n("Demo"),e=n("Badge");return c(),l("div",null,[h,o(s,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBZoom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"control/zoom","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%3E%0A%20%20%20%20%3CBZoom%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A",description:""},{default:p(()=>[i]),_:1}),_,t("table",u,[C,t("tbody",null,[t("tr",null,[E,m,b,k,F,t("td",null,[o(e,{type:"tip",text:"^2.2.0"})])])])]),A])}const O=d(r,[["render",T]]);export{N as __pageData,O as default}; diff --git a/assets/zh-CN_components_layer_district-layer.md.gp0MGNvv.js b/assets/zh-CN_components_layer_district-layer.md.gp0MGNvv.js new file mode 100644 index 00000000..45e736da --- /dev/null +++ b/assets/zh-CN_components_layer_district-layer.md.gp0MGNvv.js @@ -0,0 +1 @@ +import{_ as p,c,j as t,a as s,I as n,w as u,al as l,D as e,o as i}from"./chunks/framework.n6hqIsqL.js";const X=JSON.parse('{"title":"BDistrictLayer 行政区图层","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/layer/district-layer.md","filePath":"zh-CN/components/layer/district-layer.md","lastUpdated":1724785300000}'),r={name:"zh-CN/components/layer/district-layer.md"},E={id:"bdistrictlayer-行政区图层",tabindex:"-1"},d=t("a",{class:"header-anchor",href:"#bdistrictlayer-行政区图层","aria-label":'Permalink to "BDistrictLayer 行政区图层 "'},"​",-1),C=l('

在地图上显示行政区划分

ts
import { BDistrictLayer } from 'vue3-baidu-map-gl'

组件示例

',3),D=t("p",null,"layer/districtLayer",-1),k=t("h2",{id:"静态组件-props",tabindex:"-1"},[s("静态组件 Props "),t("a",{class:"header-anchor",href:"#静态组件-props","aria-label":'Permalink to "静态组件 Props"'},"​")],-1),h={tabindex:"0"},F=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"可选值"),t("th",null,"默认值"),t("th",null,"版本")])],-1),_=t("tr",null,[t("td",null,"name"),t("td",null,"行政区名字"),t("td",null,[t("code",null,"string")]),t("td",null,"-"),t("td",null,[t("code",null,"required")]),t("td")],-1),A=t("tr",null,[t("td",null,"kind"),t("td",null,"行政区类型"),t("td",null,[t("a",{href:"#districttype"},[t("code",null,"DistrictType")])]),t("td",null,"-"),t("td",null,[t("code",null,"DistrictType['AREA']")]),t("td")],-1),m=t("tr",null,[t("td",null,"fillColor"),t("td",null,"填充颜色"),t("td",null,[t("code",null,"string")]),t("td",null,"-"),t("td",null,[t("code",null,"#fdfd27")]),t("td")],-1),y=t("tr",null,[t("td",null,"fillOpacity"),t("td",null,"填充透明度"),t("td",null,[t("code",null,"number")]),t("td",null,"-"),t("td",null,[t("code",null,"1")]),t("td")],-1),B=t("tr",null,[t("td",null,"strokeColor"),t("td",null,"描边线条颜色"),t("td",null,[t("code",null,"string")]),t("td",null,"-"),t("td",null,[t("code",null,"#231cf8")]),t("td")],-1),g=t("td",null,"strokeWeight",-1),b=t("td",null,"描边线条粗细",-1),f=t("td",null,[t("code",null,"number")],-1),v=t("td",null,"-",-1),T=t("td",null,[t("code",null,"1")],-1),x=t("td",null,"strokeOpacity",-1),P=t("td",null,"描边线透明度",-1),q=t("td",null,[t("code",null,"number")],-1),w=t("td",null,"-",-1),M=t("td",null,[t("code",null,"1")],-1),N=t("tr",null,[t("td",null,"viewport"),t("td",null,"自动聚焦地图中心"),t("td",null,[t("code",null,"boolean")]),t("td",null,"-"),t("td",null,[t("code",null,"false")]),t("td")],-1),L=t("h2",{id:"动态组件-props",tabindex:"-1"},[s("动态组件 Props "),t("a",{class:"header-anchor",href:"#动态组件-props","aria-label":'Permalink to "动态组件 Props"'},"​")],-1),V={tabindex:"0"},S=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"可选值"),t("th",null,"默认值"),t("th",null,"版本")])],-1),z=t("td",null,"visible",-1),I=t("td",null,"是否显示",-1),R=t("td",null,[t("code",null,"boolean")],-1),O=t("td",null,"-",-1),$=t("td",null,[t("code",null,"true")],-1),j=l('

DistrictType

说明
PROVINCE省级
CITY市级
AREA县/区级

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
mouseover鼠标移入行政区域时触发此事件{type, target}
mouseout鼠标移出行政区域时触发此事件{type, target}
',4);function G(J,U,W,Y,H,K){const a=e("Badge"),o=e("Demo");return i(),c("div",null,[t("h1",E,[s("BDistrictLayer 行政区图层 "),n(a,{type:"tip",text:"^1.1.2"}),s(),d]),C,n(o,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eenable-scroll-wheel-zoom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E9%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBDistrictLayer%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40mouseover%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleMouseover%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40mouseout%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleMouseout%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Eviewport%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Akind%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EDistrictType%5B'AREA'%5D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Ename%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E5%8C%97%E4%BA%AC%E5%B8%82%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20DistrictType%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleMouseover%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3E%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ee%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20any%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20e%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EcurrentTarget%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EsetFillColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'%239169db'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleMouseout%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3E%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ee%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20any%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20e%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EcurrentTarget%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EsetFillColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Ee%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EcurrentTarget%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Estyle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EfillColor%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"layer/districtLayer","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20enable-scroll-wheel-zoom%20%3Azoom%3D%229%22%3E%0A%20%20%20%20%3CBDistrictLayer%0A%20%20%20%20%20%20%40mouseover%3D%22handleMouseover%22%0A%20%20%20%20%20%20%40mouseout%3D%22handleMouseout%22%0A%20%20%20%20%20%20viewport%0A%20%20%20%20%20%20%3Akind%3D%22DistrictType%5B'AREA'%5D%22%0A%20%20%20%20%20%20name%3D%22%E5%8C%97%E4%BA%AC%E5%B8%82%22%0A%20%20%20%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20DistrictType%20%7D%20from%20'vue3-baidu-map-gl'%0A%0A%20%20function%20handleMouseover(e%3A%20any)%20%7B%0A%20%20%20%20e.currentTarget.setFillColor('%239169db')%0A%20%20%7D%0A%0A%20%20function%20handleMouseout(e%3A%20any)%20%7B%0A%20%20%20%20e.currentTarget.setFillColor(e.currentTarget.style.fillColor)%0A%20%20%7D%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E6%B8%B2%E6%9F%93%E5%8C%97%E4%BA%AC%E5%B8%82%E8%A1%8C%E6%94%BF%E5%8C%BA%E5%88%92%E5%88%86%EF%BC%8C%E7%BB%91%E5%AE%9A%E9%BC%A0%E6%A0%87%E4%BA%8B%E4%BB%B6%3C%2Fp%3E%0A"},{default:u(()=>[D]),_:1}),k,t("table",h,[F,t("tbody",null,[_,A,m,y,B,t("tr",null,[g,b,f,v,T,t("td",null,[n(a,{type:"tip",text:"^2.4.0"})])]),t("tr",null,[x,P,q,w,M,t("td",null,[n(a,{type:"tip",text:"^2.4.0"})])]),N])]),L,t("table",V,[S,t("tbody",null,[t("tr",null,[z,I,R,O,$,t("td",null,[n(a,{type:"tip",text:"^2.2.0"})])])])]),j])}const Z=p(r,[["render",G]]);export{X as __pageData,Z as default}; diff --git a/assets/zh-CN_components_layer_district-layer.md.gp0MGNvv.lean.js b/assets/zh-CN_components_layer_district-layer.md.gp0MGNvv.lean.js new file mode 100644 index 00000000..b83ca819 --- /dev/null +++ b/assets/zh-CN_components_layer_district-layer.md.gp0MGNvv.lean.js @@ -0,0 +1 @@ +import{_ as p,c,j as t,a as s,I as n,w as u,al as l,D as e,o as i}from"./chunks/framework.n6hqIsqL.js";const X=JSON.parse('{"title":"BDistrictLayer 行政区图层","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/layer/district-layer.md","filePath":"zh-CN/components/layer/district-layer.md","lastUpdated":1724785300000}'),r={name:"zh-CN/components/layer/district-layer.md"},E={id:"bdistrictlayer-行政区图层",tabindex:"-1"},d=t("a",{class:"header-anchor",href:"#bdistrictlayer-行政区图层","aria-label":'Permalink to "BDistrictLayer 行政区图层 "'},"​",-1),C=l("",3),D=t("p",null,"layer/districtLayer",-1),k=t("h2",{id:"静态组件-props",tabindex:"-1"},[s("静态组件 Props "),t("a",{class:"header-anchor",href:"#静态组件-props","aria-label":'Permalink to "静态组件 Props"'},"​")],-1),h={tabindex:"0"},F=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"可选值"),t("th",null,"默认值"),t("th",null,"版本")])],-1),_=t("tr",null,[t("td",null,"name"),t("td",null,"行政区名字"),t("td",null,[t("code",null,"string")]),t("td",null,"-"),t("td",null,[t("code",null,"required")]),t("td")],-1),A=t("tr",null,[t("td",null,"kind"),t("td",null,"行政区类型"),t("td",null,[t("a",{href:"#districttype"},[t("code",null,"DistrictType")])]),t("td",null,"-"),t("td",null,[t("code",null,"DistrictType['AREA']")]),t("td")],-1),m=t("tr",null,[t("td",null,"fillColor"),t("td",null,"填充颜色"),t("td",null,[t("code",null,"string")]),t("td",null,"-"),t("td",null,[t("code",null,"#fdfd27")]),t("td")],-1),y=t("tr",null,[t("td",null,"fillOpacity"),t("td",null,"填充透明度"),t("td",null,[t("code",null,"number")]),t("td",null,"-"),t("td",null,[t("code",null,"1")]),t("td")],-1),B=t("tr",null,[t("td",null,"strokeColor"),t("td",null,"描边线条颜色"),t("td",null,[t("code",null,"string")]),t("td",null,"-"),t("td",null,[t("code",null,"#231cf8")]),t("td")],-1),g=t("td",null,"strokeWeight",-1),b=t("td",null,"描边线条粗细",-1),f=t("td",null,[t("code",null,"number")],-1),v=t("td",null,"-",-1),T=t("td",null,[t("code",null,"1")],-1),x=t("td",null,"strokeOpacity",-1),P=t("td",null,"描边线透明度",-1),q=t("td",null,[t("code",null,"number")],-1),w=t("td",null,"-",-1),M=t("td",null,[t("code",null,"1")],-1),N=t("tr",null,[t("td",null,"viewport"),t("td",null,"自动聚焦地图中心"),t("td",null,[t("code",null,"boolean")]),t("td",null,"-"),t("td",null,[t("code",null,"false")]),t("td")],-1),L=t("h2",{id:"动态组件-props",tabindex:"-1"},[s("动态组件 Props "),t("a",{class:"header-anchor",href:"#动态组件-props","aria-label":'Permalink to "动态组件 Props"'},"​")],-1),V={tabindex:"0"},S=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"可选值"),t("th",null,"默认值"),t("th",null,"版本")])],-1),z=t("td",null,"visible",-1),I=t("td",null,"是否显示",-1),R=t("td",null,[t("code",null,"boolean")],-1),O=t("td",null,"-",-1),$=t("td",null,[t("code",null,"true")],-1),j=l("",4);function G(J,U,W,Y,H,K){const a=e("Badge"),o=e("Demo");return i(),c("div",null,[t("h1",E,[s("BDistrictLayer 行政区图层 "),n(a,{type:"tip",text:"^1.1.2"}),s(),d]),C,n(o,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eenable-scroll-wheel-zoom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E9%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBDistrictLayer%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40mouseover%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleMouseover%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40mouseout%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleMouseout%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Eviewport%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Akind%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EDistrictType%5B'AREA'%5D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Ename%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E5%8C%97%E4%BA%AC%E5%B8%82%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20DistrictType%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleMouseover%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3E%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ee%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20any%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20e%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EcurrentTarget%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EsetFillColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'%239169db'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleMouseout%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3E%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ee%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20any%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20e%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EcurrentTarget%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EsetFillColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Ee%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EcurrentTarget%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Estyle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EfillColor%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"layer/districtLayer","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20enable-scroll-wheel-zoom%20%3Azoom%3D%229%22%3E%0A%20%20%20%20%3CBDistrictLayer%0A%20%20%20%20%20%20%40mouseover%3D%22handleMouseover%22%0A%20%20%20%20%20%20%40mouseout%3D%22handleMouseout%22%0A%20%20%20%20%20%20viewport%0A%20%20%20%20%20%20%3Akind%3D%22DistrictType%5B'AREA'%5D%22%0A%20%20%20%20%20%20name%3D%22%E5%8C%97%E4%BA%AC%E5%B8%82%22%0A%20%20%20%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20DistrictType%20%7D%20from%20'vue3-baidu-map-gl'%0A%0A%20%20function%20handleMouseover(e%3A%20any)%20%7B%0A%20%20%20%20e.currentTarget.setFillColor('%239169db')%0A%20%20%7D%0A%0A%20%20function%20handleMouseout(e%3A%20any)%20%7B%0A%20%20%20%20e.currentTarget.setFillColor(e.currentTarget.style.fillColor)%0A%20%20%7D%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E6%B8%B2%E6%9F%93%E5%8C%97%E4%BA%AC%E5%B8%82%E8%A1%8C%E6%94%BF%E5%8C%BA%E5%88%92%E5%88%86%EF%BC%8C%E7%BB%91%E5%AE%9A%E9%BC%A0%E6%A0%87%E4%BA%8B%E4%BB%B6%3C%2Fp%3E%0A"},{default:u(()=>[D]),_:1}),k,t("table",h,[F,t("tbody",null,[_,A,m,y,B,t("tr",null,[g,b,f,v,T,t("td",null,[n(a,{type:"tip",text:"^2.4.0"})])]),t("tr",null,[x,P,q,w,M,t("td",null,[n(a,{type:"tip",text:"^2.4.0"})])]),N])]),L,t("table",V,[S,t("tbody",null,[t("tr",null,[z,I,R,O,$,t("td",null,[n(a,{type:"tip",text:"^2.2.0"})])])])]),j])}const Z=p(r,[["render",G]]);export{X as __pageData,Z as default}; diff --git a/assets/zh-CN_components_layer_panorama-coverage.md.DGi9wvoW.js b/assets/zh-CN_components_layer_panorama-coverage.md.DGi9wvoW.js new file mode 100644 index 00000000..e2683d82 --- /dev/null +++ b/assets/zh-CN_components_layer_panorama-coverage.md.DGi9wvoW.js @@ -0,0 +1 @@ +import{_ as p,c as d,j as a,a as t,I as e,w as c,al as s,D as n,o as l}from"./chunks/framework.n6hqIsqL.js";const y=JSON.parse('{"title":"BPanoramaCoverageLayer 全景图层","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/layer/panorama-coverage.md","filePath":"zh-CN/components/layer/panorama-coverage.md","lastUpdated":1724785300000}'),i={name:"zh-CN/components/layer/panorama-coverage.md"},E={id:"bpanoramacoveragelayer-全景图层",tabindex:"-1"},h=a("a",{class:"header-anchor",href:"#bpanoramacoveragelayer-全景图层","aria-label":'Permalink to "BPanoramaCoverageLayer 全景图层 "'},"​",-1),C=s('

全景地图服务,360° 全景地图刻画真实世界,将街道场景带入到地图产品中,用户可以拖拽地图从不同的角度浏览真实的街景效果

ts
import { BPanoramaCoverageLayer } from 'vue3-baidu-map-gl'

提示

全景地图服务属于百度地图高级服务,需要向 百度地图申请 才可以使用

组件示例

单独使用该组件无法查看全景地图,还需要搭配BPanoramaControl组件使用。

',5),_=a("p",null,"layer/panoramaCoverage",-1),m=s('

静态组件 Props

属性说明类型可选值默认值
anchor控件的停靠位置stringanchorBMAP_ANCHOR_TOP_RIGHT
offset控件的偏移值{x: number, y: number }-{ x: 10, y: 10 }

anchor

说明
BMAP_ANCHOR_TOP_LEFT左上
BMAP_ANCHOR_TOP_RIGHT右上
BMAP_ANCHOR_BOTTOM_LEFT左下
BMAP_ANCHOR_BOTTOM_RIGHT右下

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
',6);function u(k,F,A,B,b,g){const o=n("Badge"),r=n("Demo");return l(),d("div",null,[a("h1",E,[t("BPanoramaCoverageLayer 全景图层 "),e(o,{type:"tip",text:"^0.0.31"}),t(),h]),C,e(r,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBPanoramaControl%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBPanoramaCoverageLayer%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"layer/panoramaCoverage","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20enableScrollWheelZoom%20ak%3D%22oW2UEhdth2tRbEE4FUpF9E5YVDCIPYih%22%3E%0A%20%20%20%20%3CBPanoramaControl%20%2F%3E%0A%20%20%20%20%3CBPanoramaCoverageLayer%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A",description:"%3Cp%3E%E6%98%BE%E7%A4%BA%E5%85%A8%E6%99%AF%E5%9B%BE%E5%B1%82%3C%2Fp%3E%0A"},{default:c(()=>[_]),_:1}),m])}const P=p(i,[["render",u]]);export{y as __pageData,P as default}; diff --git a/assets/zh-CN_components_layer_panorama-coverage.md.DGi9wvoW.lean.js b/assets/zh-CN_components_layer_panorama-coverage.md.DGi9wvoW.lean.js new file mode 100644 index 00000000..5d175eee --- /dev/null +++ b/assets/zh-CN_components_layer_panorama-coverage.md.DGi9wvoW.lean.js @@ -0,0 +1 @@ +import{_ as p,c as d,j as a,a as t,I as e,w as c,al as s,D as n,o as l}from"./chunks/framework.n6hqIsqL.js";const y=JSON.parse('{"title":"BPanoramaCoverageLayer 全景图层","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/layer/panorama-coverage.md","filePath":"zh-CN/components/layer/panorama-coverage.md","lastUpdated":1724785300000}'),i={name:"zh-CN/components/layer/panorama-coverage.md"},E={id:"bpanoramacoveragelayer-全景图层",tabindex:"-1"},h=a("a",{class:"header-anchor",href:"#bpanoramacoveragelayer-全景图层","aria-label":'Permalink to "BPanoramaCoverageLayer 全景图层 "'},"​",-1),C=s("",5),_=a("p",null,"layer/panoramaCoverage",-1),m=s("",6);function u(k,F,A,B,b,g){const o=n("Badge"),r=n("Demo");return l(),d("div",null,[a("h1",E,[t("BPanoramaCoverageLayer 全景图层 "),e(o,{type:"tip",text:"^0.0.31"}),t(),h]),C,e(r,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBPanoramaControl%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBPanoramaCoverageLayer%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"layer/panoramaCoverage","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20enableScrollWheelZoom%20ak%3D%22oW2UEhdth2tRbEE4FUpF9E5YVDCIPYih%22%3E%0A%20%20%20%20%3CBPanoramaControl%20%2F%3E%0A%20%20%20%20%3CBPanoramaCoverageLayer%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A",description:"%3Cp%3E%E6%98%BE%E7%A4%BA%E5%85%A8%E6%99%AF%E5%9B%BE%E5%B1%82%3C%2Fp%3E%0A"},{default:c(()=>[_]),_:1}),m])}const P=p(i,[["render",u]]);export{y as __pageData,P as default}; diff --git a/assets/zh-CN_components_map.md.QTK8yFhV.js b/assets/zh-CN_components_map.md.QTK8yFhV.js new file mode 100644 index 00000000..2fb0315f --- /dev/null +++ b/assets/zh-CN_components_map.md.QTK8yFhV.js @@ -0,0 +1,62 @@ +import{_ as E,c as o,I as a,w as l,j as s,al as e,a as n,D as i,o as c}from"./chunks/framework.n6hqIsqL.js";const z2=JSON.parse('{"title":"Map 地图","description":"","frontmatter":{"title":"Map 地图"},"headers":[],"relativePath":"zh-CN/components/map.md","filePath":"zh-CN/components/map.md","lastUpdated":1724785300000}'),C={name:"zh-CN/components/map.md"},k=e('

Map 地图

地图核心对象,地图控件、覆盖物、图层等需作为其子组件,以获得 map 的实例化对象

ts
import { BMap } from 'vue3-baidu-map-gl'

渲染地图

',4),d=s("p",null,"map/base",-1),u=s("h2",{id:"多实例",tabindex:"-1"},[n("多实例 "),s("a",{class:"header-anchor",href:"#多实例","aria-label":'Permalink to "多实例"'},"​")],-1),r=s("p",null,"map/multiInstance",-1),h=e('

个性化地图

通过指定 Map 组件的 mapStyleId或者mapStyleJson来展示个性化地图,如果同时指定,mapStyleId会优先生效。

提示

  1. 如果个性化地图没有生效,请先检查mapStyleIdmapStyleJson是否正确。如果是通过mapStyleId实现,还需要检查是否与 ak申请的账号一致
  2. 以下示例使用的 mapStyleId 均与 ak 和 域名绑定,无法直接复制使用。可根据示例主题名字到百度地图个性化编辑器创建后使用

获取资源

mapStyleId 和 mapStyleJson 获取以及相关注意事项,请访问 百度地图个性化地图相关文档 知悉

出行主题示例

',6),F=s("p",null,"map/theme1",-1),D=s("h3",{id:"赛博朋克主题示例",tabindex:"-1"},[n("赛博朋克主题示例 "),s("a",{class:"header-anchor",href:"#赛博朋克主题示例","aria-label":'Permalink to "赛博朋克主题示例"'},"​")],-1),g=s("p",null,"map/theme2",-1),A=e(`

自定义地图加载中

默认情况下,地图加载中效果是map loading...文字居中。如果不能满足你的需求,你可以通过提供loading具名插槽来自定义地图加载中显示效果。

显示代码
html
<template>
+  <BMap>
+    <template #loading>
+      <div class="spinner">
+        <div class="double-bounce1"></div>
+        <div class="double-bounce2"></div>
+      </div>
+    </template>
+  </BMap>
+</template>
+
+<style lang="css">
+  .spinner {
+    width: 60px;
+    height: 60px;
+
+    position: relative;
+    margin: 100px auto;
+  }
+
+  .double-bounce1,
+  .double-bounce2 {
+    width: 100%;
+    height: 100%;
+    border-radius: 50%;
+    background-color: #42b883;
+    opacity: 0.6;
+    position: absolute;
+    top: 0;
+    left: 0;
+
+    -webkit-animation: bounce 2s infinite ease-in-out;
+    animation: bounce 2s infinite ease-in-out;
+  }
+
+  .double-bounce2 {
+    -webkit-animation-delay: -1s;
+    animation-delay: -1s;
+  }
+
+  @-webkit-keyframes bounce {
+    0%,
+    100% {
+      -webkit-transform: scale(0);
+    }
+    50% {
+      -webkit-transform: scale(1);
+    }
+  }
+
+  @keyframes bounce {
+    0%,
+    100% {
+      transform: scale(0);
+      -webkit-transform: scale(0);
+    }
+    50% {
+      transform: scale(1);
+      -webkit-transform: scale(1);
+    }
+  }
+</style>

静态组件 props

`,4),y={tabindex:"0"},B=s("thead",null,[s("tr",null,[s("th",null,"属性"),s("th",null,"说明"),s("th",null,"类型"),s("th",null,"可选值"),s("th",null,"默认值"),s("th",null,"版本")])],-1),m=s("tr",null,[s("td",null,"ak"),s("td",null,[n("百度地图 "),s("a",{href:"./../guide/quick-start#申请-ak-密钥"},"ak")]),s("td",null,[s("code",null,"string")]),s("td",null,"-"),s("td",null,"-"),s("td",null,"-")],-1),b=s("td",null,"apiUrl",-1),_=s("td",null,"自建地图 api 资源地址(一般用于离线地图)",-1),v=s("td",null,[s("code",null,"string")],-1),f=s("td",null,"-",-1),M=s("td",null,"-",-1),P=s("tr",null,[s("td",null,"minZoom"),s("td",null,"地图允许展示的最小级别"),s("td",null,[s("code",null,"number")]),s("td",null,[s("code",null,"0-21")]),s("td",null,[s("code",null,"0")]),s("td",null,"-")],-1),S=s("tr",null,[s("td",null,"maxZoom"),s("td",null,"地图允许展示的最大级别"),s("td",null,[s("code",null,"number")]),s("td",null,[s("code",null,"0-21")]),s("td",null,[s("code",null,"21")]),s("td",null,"-")],-1),q=s("td",null,"backgroundColor",-1),x=s("td",null,"地图背景颜色, rgba 数组",-1),T=s("td",null,[s("code",null," number[]")],-1),Z=s("td",null,"-",-1),I=s("td",null,[s("code",null,"[245, 245, 245, 100]")],-1),w=s("tr",null,[s("td",null,"showControls"),s("td",null,"是否显示室内图"),s("td",null,[s("code",null,"boolean")]),s("td",null,"-"),s("td",null,[s("code",null,"false")]),s("td",null,"-")],-1),R=s("td",null,"restrictCenter",-1),L=s("td",null,"是否限制中心",-1),N=s("td",null,[s("code",null,"boolean")],-1),z=s("td",null,"-",-1),O=s("td",null,[s("code",null,"true")],-1),W=s("tr",null,[s("td",null,"plugins"),s("td",null,"需要注册的插件"),s("td",null,[s("code",null,"['TrackAnimation', 'Mapvgl', 'Mapv', 'MapvThree']")]),s("td",null,"-"),s("td",null,"-"),s("td",null,"-")],-1),V=s("tr",null,[s("td",null,"pluginsSourceLink"),s("td",null,"自定义插件资源地址"),s("td",null,[s("code",null,"Record<'TrackAnimation' | 'Mapvgl' | 'Mapv' | 'MapvThree', string>")]),s("td",null,"-"),s("td",null,"-"),s("td",null,"-")],-1),H=s("h2",{id:"动态组件-props",tabindex:"-1"},[n("动态组件 Props "),s("a",{class:"header-anchor",href:"#动态组件-props","aria-label":'Permalink to "动态组件 Props"'},"​")],-1),K={tabindex:"0"},J=s("thead",null,[s("tr",null,[s("th",null,"属性"),s("th",null,"说明"),s("th",null,"类型"),s("th",null,"默认值"),s("th",null,"版本")])],-1),j=s("td",null,"width",-1),$=s("td",null,"地图显示宽度",-1),G=s("td",null,[s("code",null,"string / number")],-1),U=s("td",null,[s("code",null,"100%")],-1),Q=s("td",null,"height",-1),X=s("td",null,"地图显示高度",-1),Y=s("td",null,[s("code",null,"string / number")],-1),s2=s("td",null,[s("code",null,"550px")],-1),a2=s("tr",null,[s("td",null,"center"),s("td",null,[n("地图默认中心点,可使用城市名,如:北京市,也可以使用对象如 "),s("code",null,"{lng: 121.424333, lat: 31.228604}"),n(" 表示经纬度。")]),s("td",null,[s("code",null,"string / {lng: number, lat: number}")]),s("td",null,[s("code",null,"北京市")]),s("td",null,"-")],-1),n2=s("tr",null,[s("td",null,"heading"),s("td",null,"地图旋转角度"),s("td",null,[s("code",null,"number")]),s("td",null,[s("code",null,"0")]),s("td",null,"-")],-1),t2=s("tr",null,[s("td",null,"tilt"),s("td",null,"地图倾斜角度"),s("td",null,[s("code",null,"number")]),s("td",null,[s("code",null,"0 ")]),s("td",null,"-")],-1),p2=s("tr",null,[s("td",null,"mapType"),s("td",null,[n("地图类型 "),s("a",{href:"#地图类型"},"mapType")]),s("td",null,[s("code",null,"string")]),s("td",null,[s("code",null,"BMAP_NORMAL_MAP")]),s("td",null,"-")],-1),l2=s("tr",null,[s("td",null,"zoom"),s("td",null,"地图缩放级别"),s("td",null,[s("code",null,"number")]),s("td",null,[s("code",null,"14")]),s("td",null,"-")],-1),e2=s("tr",null,[s("td",null,"displayOptions"),s("td",null,[n("自定义地图属性 "),s("a",{href:"#displayoptions"},"详见")]),s("td",null,"-"),s("td",null,"-"),s("td",null,"-")],-1),i2=s("tr",null,[s("td",null,"mapStyleId"),s("td",null,[n("个性化地图样式 ID "),s("a",{href:"#个性化地图"},"详见")]),s("td",null,[s("code",null,"string")]),s("td",null,"-"),s("td",null,"-")],-1),E2=s("tr",null,[s("td",null,"mapStyleJson"),s("td",null,[n("个性化地图样式 Json "),s("a",{href:"#个性化地图"},"详见")]),s("td",null,[s("code",null,"{featureType: string...}[]")]),s("td",null,"-"),s("td",null,"-")],-1),o2=s("tr",null,[s("td",null,"enableTraffic"),s("td",null,"是否启用交通路况图层"),s("td",null,[s("code",null,"boolean")]),s("td",null,[s("code",null,"false")]),s("td",null,"-")],-1),c2=s("tr",null,[s("td",null,"enableDragging"),s("td",null,"启用地图拖拽"),s("td",null,[s("code",null,"boolean")]),s("td",null,[s("code",null,"true")]),s("td",null,"-")],-1),C2=s("tr",null,[s("td",null,"enableInertialDragging"),s("td",null,"启用地图惯性拖拽"),s("td",null,[s("code",null,"boolean")]),s("td",null,[s("code",null,"true")]),s("td",null,"-")],-1),k2=s("tr",null,[s("td",null,"enableScrollWheelZoom"),s("td",null,"允许地图可被鼠标滚轮缩放"),s("td",null,[s("code",null,"boolean")]),s("td",null,[s("code",null,"false")]),s("td",null,"-")],-1),d2=s("tr",null,[s("td",null,"enableContinuousZoom"),s("td",null,"开启双击平滑缩放效果"),s("td",null,[s("code",null,"boolean")]),s("td",null,[s("code",null,"true")]),s("td",null,"-")],-1),u2=s("tr",null,[s("td",null,"enableResizeOnCenter"),s("td",null,"开启图区 resize 中心点不变"),s("td",null,[s("code",null,"boolean")]),s("td",null,[s("code",null,"true")]),s("td",null,"-")],-1),r2=s("tr",null,[s("td",null,"enableDoubleClickZoom"),s("td",null,"启用地图双击缩放,左键双击放大、右键双击缩小"),s("td",null,[s("code",null,"boolean")]),s("td",null,[s("code",null,"false")]),s("td",null,"-")],-1),h2=s("tr",null,[s("td",null,"enableKeyboard"),s("td",null,"启用键盘操作,键盘的上、下、左、右键可连续移动地图。同时按下其中两个键可使地图进行对角移动。PgUp、PgDn、Home 和 End 键会使地图平移其 1/2 的大小。 +、-键会使地图放大或缩小一级"),s("td",null,[s("code",null,"boolean")]),s("td",null,[s("code",null,"true")]),s("td",null,"-")],-1),F2=s("tr",null,[s("td",null,"enablePinchToZoom"),s("td",null,"启用双指缩放地图"),s("td",null,[s("code",null,"boolean")]),s("td",null,[s("code",null,"true")]),s("td",null,"-")],-1),D2=s("tr",null,[s("td",null,"enableAutoResize"),s("td",null,"启用自动适应容器尺寸变化"),s("td",null,[s("code",null,"boolean")]),s("td",null,[s("code",null,"true")]),s("td",null,"-")],-1),g2=s("td",null,"enableIconClick",-1),A2=s("td",null,"是否启用底图可点击",-1),y2=s("td",null,[s("code",null,"boolean")],-1),B2=s("td",null,[s("code",null,"true")],-1),m2=s("td",null,"loadingBgColor",-1),b2=s("td",null,"加载背景图颜色",-1),_2=s("td",null,[s("code",null,"string")],-1),v2=s("td",null,[s("code",null,"#f1f1f1")],-1),f2=s("td",null,"loadingTextColor",-1),M2=s("td",null,"加载文字图颜色",-1),P2=s("td",null,[s("code",null,"string")],-1),S2=s("td",null,[s("code",null,"#999")],-1),q2=e('

地图类型

描述
BMAP_NORMAL_MAP标准地图
BMAP_EARTH_MAP地球模式
BMAP_SATELLITE_MAP普通卫星地图

注意

地球模式(BMAP_EARTH_MAP)下能支持的地图交互操作有限,如您需要卫星地图支持和标准地图(BMAP_NORMAL_MAP)一致的交互体验,请使用普通卫星图模式(BMAP_SATELLITE_MAP)

displayOptions

属性说明类型默认值
poi是否显示地图上的地点标识booleantrue
indoor是否显示室内图booleantrue
poiText是否显示地图上的地点标识文字booleantrue
poiIcon是否显示地图上的地点标识图标booleantrue
overlay是否显示覆盖物booleantrue
layer是否显示叠加图层,地球模式暂不支持booleantrue
building是否显示 3D 建筑物(仅支持 WebGL 方式渲染的地图)booleantrue
street是否显示路网(只对卫星图和地球模式有效)booleantrue
skyColors配置天空的颜色,数组中首个元素表示地面颜色,第二个元素表示天空颜色。从而形成渐变,支持只传入一个元素[string, string]-

组件方法

方法说明类型
getMapInstance父组件获取 map 实例方法() => void
getBaseMapOptions父组件/外部获取 map 组件 options() => void
resetCenter重置地图中心() => void
setDragging设置地图是否可拖动(nableDragging: boolean) => void

组件事件

事件名说明类型
initd组件初始化后会触发此事件,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会触发此事件-
pluginReady插件加载完毕会触发此事件{map, pluginRecord}
click左键单击地图时触发此事件。 当双击时,产生的事件序列为: click click dblclick{type, target, latlng, pixel, overlay}
dblclick鼠标双击地图时会触发此事件{type, target, pixel, point}
rightclick右键单击地图时触发此事件。 当双击时,产生的事件序列为: rightclick rightclick rightdblclick{type, target, latlng, pixel, overlay}
rightdblclick右键双击地图时触发此事件{type, target, latlng, pixel, overlay}
maptypechange地图类型发生变化时触发此事件{type, target}
mousemove鼠标在地图区域移动过程中触发此事件{type, target, latlng, pixel, overlay}
mouseover鼠标移入地图区域时触发此事件{type, target}
mouseout鼠标移出地图区域时触发此事件{type, target}
movestart地图移动开始时触发此事件{type, target}
moving地图移动过程中触发此事件{type, target}
moveend地图移动结束时触发此事件{type, target}
zoomstart地图更改缩放级别开始时触发触发此事件{type, target}
zoomend地图更改缩放级别结束时触发触发此事件{type, target}
addoverlay当组件被挂载到地图中时会触发此事件{type, target}
removeoverlay当组件被移除时会触发此事件{type, target}
addcontrol当组件被挂载到地图中时会触发此事件{type, target}
removecontrol当组件被移除时会触发此事件{type, target}
clearoverlays当使用方法一次性移除全部覆盖物时会触发此事件{type, target}
dragstart开始拖拽地图时触发{type, target, pixel, point}
dragging拖拽地图过程中触发{type, target, pixel, point}
dragend停止拖拽地图时触发{type, target, pixel, point}
addtilelayer添加一个自定义地图图层时触发此事件{type, target}
removetilelayer移除一个自定义地图图层时触发此事件{type, target}
load调用方法时会触发此事件。这表示位置、缩放层级已经确定,但可能还在载入地图图块{type, target}
resize地图可视区域大小发生变化时会触发此事件{type, target, pixel, point}
hotspotclick点击热区时触发此事件{type, target}
hotspotover鼠标移至热区时触发此事件{type, target}
hotspotout鼠标移出热区时触发此事件{type, target}
tilesloaded当地图所有图块完成加载时触发此事件{type, target}
touchstart触摸开始时触发此事件,仅适用移动设备{type, target}
touchmove触摸移动时触发此事件,仅适用移动设备{type, target}
touchend触摸结束时触发此事件,仅适用移动设备{type, target}
longpress长按事件,仅适用移动设备{type, target}
',9);function x2(T2,Z2,I2,w2,R2,L2){const p=i("Demo"),t=i("Badge");return c(),o("div",null,[k,a(p,{class:"p-top",source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Einput%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Echeckbox%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableScrollWheelZoom%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%E9%BC%A0%E6%A0%87%E7%BC%A9%E6%94%BE%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Einput%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Echeckbox%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableDragging%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%E6%8B%96%E6%8B%BD%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Einput%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Echeckbox%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableInertialDragging%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%E6%83%AF%E6%80%A7%E6%8B%96%E6%8B%BD%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Einput%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Echeckbox%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enablePinchToZoom%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%E5%8F%8C%E6%8C%87%E7%BC%A9%E6%94%BE%E5%9C%B0%E5%9B%BE%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Einput%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Echeckbox%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableKeyboard%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%E9%94%AE%E7%9B%98%E6%93%8D%E4%BD%9C%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Einput%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Echeckbox%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableDoubleClickZoom%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%E5%8F%8C%E5%87%BB%E7%BC%A9%E6%94%BE%EF%BC%8C%E5%B7%A6%E9%94%AE%E5%8F%8C%E5%87%BB%E6%94%BE%E5%A4%A7%E3%80%81%E5%8F%B3%E9%94%AE%E5%8F%8C%E5%87%BB%E7%BC%A9%E5%B0%8F%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Einput%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Echeckbox%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableContinuousZoom%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%E5%8F%8C%E5%87%BB%E5%B9%B3%E6%BB%91%E7%BC%A9%E6%94%BE%E6%95%88%E6%9E%9C%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Einput%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Echeckbox%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableTraffic%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%E6%98%BE%E7%A4%BA%E4%BA%A4%E9%80%9A%E8%B7%AF%E5%86%B5%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%E5%9C%B0%E5%9B%BE%E7%B1%BB%E5%9E%8B%EF%BC%9A%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eselect%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ename%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eid%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Etype%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EBMAP_NORMAL_MAP%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%B8%B8%E8%A7%84%E5%9C%B0%E5%9B%BE%20BMAP_NORMAL_MAP%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EBMAP_EARTH_MAP%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%9C%B0%E7%90%83%E6%A8%A1%E5%BC%8F%20BMAP_EARTH_MAP%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EBMAP_SATELLITE_MAP%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%8D%AB%E6%98%9F%E5%9B%BE%20BMAP_EARTH_MAP%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eselect%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E64.5%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Atilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E73%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%0A%20%20%20%20%20%20%20%20lng%3A%20116.28019%2C%0A%20%20%20%20%20%20%20%20lat%3A%2040.049191%0A%20%20%20%20%20%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E19%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AminZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E3%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AmapType%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Etype%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AenableDragging%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableDragging%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AenableInertialDragging%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableInertialDragging%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AenableScrollWheelZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableScrollWheelZoom%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AenableContinuousZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableContinuousZoom%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AenableDoubleClickZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableDoubleClickZoom%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AenableKeyboard%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableKeyboard%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AenablePinchToZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enablePinchToZoom%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AenableTraffic%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableTraffic%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20MapType%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20MapProps%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20type%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3EMapType%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'BMAP_NORMAL_MAP'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20mapSetting%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3EMapProps%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EenableDragging%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EenableInertialDragging%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EenableScrollWheelZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EenableContinuousZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EenableResizeOnCenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EenableDoubleClickZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EenableKeyboard%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EenablePinchToZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EenableAutoResize%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EenableTraffic%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"map/base","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%3Clabel%3E%0A%20%20%20%20%20%20%3Cinput%20type%3D%22checkbox%22%20v-model%3D%22mapSetting.enableScrollWheelZoom%22%20%2F%3E%0A%20%20%20%20%20%20%E9%BC%A0%E6%A0%87%E7%BC%A9%E6%94%BE%0A%20%20%20%20%3C%2Flabel%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3Clabel%3E%0A%20%20%20%20%20%20%3Cinput%20type%3D%22checkbox%22%20v-model%3D%22mapSetting.enableDragging%22%20%2F%3E%0A%20%20%20%20%20%20%E6%8B%96%E6%8B%BD%0A%20%20%20%20%3C%2Flabel%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3Clabel%3E%0A%20%20%20%20%20%20%3Cinput%20type%3D%22checkbox%22%20v-model%3D%22mapSetting.enableInertialDragging%22%20%2F%3E%0A%20%20%20%20%20%20%E6%83%AF%E6%80%A7%E6%8B%96%E6%8B%BD%0A%20%20%20%20%3C%2Flabel%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3Clabel%3E%0A%20%20%20%20%20%20%3Cinput%20type%3D%22checkbox%22%20v-model%3D%22mapSetting.enablePinchToZoom%22%20%2F%3E%0A%20%20%20%20%20%20%E5%8F%8C%E6%8C%87%E7%BC%A9%E6%94%BE%E5%9C%B0%E5%9B%BE%0A%20%20%20%20%3C%2Flabel%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3Clabel%3E%0A%20%20%20%20%20%20%3Cinput%20type%3D%22checkbox%22%20v-model%3D%22mapSetting.enableKeyboard%22%20%2F%3E%0A%20%20%20%20%20%20%E9%94%AE%E7%9B%98%E6%93%8D%E4%BD%9C%0A%20%20%20%20%3C%2Flabel%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3Clabel%3E%0A%20%20%20%20%20%20%3Cinput%20type%3D%22checkbox%22%20v-model%3D%22mapSetting.enableDoubleClickZoom%22%20%2F%3E%0A%20%20%20%20%20%20%E5%8F%8C%E5%87%BB%E7%BC%A9%E6%94%BE%EF%BC%8C%E5%B7%A6%E9%94%AE%E5%8F%8C%E5%87%BB%E6%94%BE%E5%A4%A7%E3%80%81%E5%8F%B3%E9%94%AE%E5%8F%8C%E5%87%BB%E7%BC%A9%E5%B0%8F%0A%20%20%20%20%3C%2Flabel%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3Clabel%3E%0A%20%20%20%20%20%20%3Cinput%20type%3D%22checkbox%22%20v-model%3D%22mapSetting.enableContinuousZoom%22%20%2F%3E%0A%20%20%20%20%20%20%E5%8F%8C%E5%87%BB%E5%B9%B3%E6%BB%91%E7%BC%A9%E6%94%BE%E6%95%88%E6%9E%9C%0A%20%20%20%20%3C%2Flabel%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3Clabel%3E%0A%20%20%20%20%20%20%3Cinput%20type%3D%22checkbox%22%20v-model%3D%22mapSetting.enableTraffic%22%20%2F%3E%0A%20%20%20%20%20%20%E6%98%BE%E7%A4%BA%E4%BA%A4%E9%80%9A%E8%B7%AF%E5%86%B5%0A%20%20%20%20%3C%2Flabel%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%E5%9C%B0%E5%9B%BE%E7%B1%BB%E5%9E%8B%EF%BC%9A%0A%20%20%20%20%3Cselect%20class%3D%22mySelect%22%20name%3D%22%22%20id%3D%22%22%20v-model%3D%22type%22%3E%0A%20%20%20%20%20%20%3Coption%20value%3D%22BMAP_NORMAL_MAP%22%3E%E5%B8%B8%E8%A7%84%E5%9C%B0%E5%9B%BE%20BMAP_NORMAL_MAP%3C%2Foption%3E%0A%20%20%20%20%20%20%3Coption%20value%3D%22BMAP_EARTH_MAP%22%3E%E5%9C%B0%E7%90%83%E6%A8%A1%E5%BC%8F%20BMAP_EARTH_MAP%3C%2Foption%3E%0A%20%20%20%20%20%20%3Coption%20value%3D%22BMAP_SATELLITE_MAP%22%3E%E5%8D%AB%E6%98%9F%E5%9B%BE%20BMAP_EARTH_MAP%3C%2Foption%3E%0A%20%20%20%20%3C%2Fselect%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3CBMap%0A%20%20%20%20%20%20v-bind%3D%22%24attrs%22%0A%20%20%20%20%20%20%3Aheading%3D%2264.5%22%0A%20%20%20%20%20%20%3Atilt%3D%2273%22%0A%20%20%20%20%20%20%3Acenter%3D%22%7B%0A%20%20%20%20%20%20%20%20lng%3A%20116.28019%2C%0A%20%20%20%20%20%20%20%20lat%3A%2040.049191%0A%20%20%20%20%20%20%7D%22%0A%20%20%20%20%20%20%3Azoom%3D%2219%22%0A%20%20%20%20%20%20%3AminZoom%3D%223%22%0A%20%20%20%20%20%20%3AmapType%3D%22type%22%0A%20%20%20%20%20%20%3AenableDragging%3D%22mapSetting.enableDragging%22%0A%20%20%20%20%20%20%3AenableInertialDragging%3D%22mapSetting.enableInertialDragging%22%0A%20%20%20%20%20%20%3AenableScrollWheelZoom%3D%22mapSetting.enableScrollWheelZoom%22%0A%20%20%20%20%20%20%3AenableContinuousZoom%3D%22mapSetting.enableContinuousZoom%22%0A%20%20%20%20%20%20%3AenableDoubleClickZoom%3D%22mapSetting.enableDoubleClickZoom%22%0A%20%20%20%20%20%20%3AenableKeyboard%3D%22mapSetting.enableKeyboard%22%0A%20%20%20%20%20%20%3AenablePinchToZoom%3D%22mapSetting.enablePinchToZoom%22%0A%20%20%20%20%20%20%3AenableTraffic%3D%22mapSetting.enableTraffic%22%0A%20%20%20%20%2F%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%20lang%3D%22ts%22%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20import%20%7B%20MapType%2C%20MapProps%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20type%20%3D%20ref%3CMapType%3E('BMAP_NORMAL_MAP')%0A%20%20const%20mapSetting%20%3D%20ref%3CMapProps%3E(%7B%0A%20%20%20%20enableDragging%3A%20true%2C%0A%20%20%20%20enableInertialDragging%3A%20true%2C%0A%20%20%20%20enableScrollWheelZoom%3A%20false%2C%0A%20%20%20%20enableContinuousZoom%3A%20true%2C%0A%20%20%20%20enableResizeOnCenter%3A%20true%2C%0A%20%20%20%20enableDoubleClickZoom%3A%20false%2C%0A%20%20%20%20enableKeyboard%3A%20true%2C%0A%20%20%20%20enablePinchToZoom%3A%20true%2C%0A%20%20%20%20enableAutoResize%3A%20true%2C%0A%20%20%20%20enableTraffic%3A%20false%0A%20%20%7D)%0A%3C%2Fscript%3E%0A",description:""},{default:l(()=>[d]),_:1}),u,a(p,{class:"p-top not-full p-bottom",source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Emap-wrapper%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Emap-item%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Emap-item%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Estyle%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Escoped%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20style%22%3E%3Cspan%20class%3D%22token%20language-css%22%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.map-wrapper%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Edisplay%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20flex%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Ejustify-content%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20space-between%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.map-wrapper%20.map-item%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Eflex-basis%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Ecalc%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E50%25%20-%207.5px%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"map/multiInstance","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%20class%3D%22map-wrapper%22%3E%0A%20%20%20%20%3Cdiv%20class%3D%22map-item%22%3E%0A%20%20%20%20%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%2F%3E%0A%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%3Cdiv%20class%3D%22map-item%22%3E%0A%20%20%20%20%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%2F%3E%0A%20%20%20%20%3C%2Fdiv%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cstyle%20scoped%3E%0A%20%20.map-wrapper%20%7B%0A%20%20%20%20display%3A%20flex%3B%0A%20%20%20%20justify-content%3A%20space-between%3B%0A%20%20%7D%0A%20%20.map-wrapper%20.map-item%20%7B%0A%20%20%20%20flex-basis%3A%20calc(50%25%20-%207.5px)%3B%0A%20%20%7D%0A%3C%2Fstyle%3E%0A",description:""},{default:l(()=>[r]),_:1}),h,a(p,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E10%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EmapStyleId%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eee66c61531e8df3c2fd0374e96e58e81%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"map/theme1","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%3Azoom%3D%2210%22%20enableScrollWheelZoom%20mapStyleId%3D%22ee66c61531e8df3c2fd0374e96e58e81%22%20%2F%3E%0A%3C%2Ftemplate%3E%0A",description:"%3Cp%3E%E7%B1%BB%E4%BC%BC%E8%8B%B9%E6%9E%9C%E5%9C%B0%E5%9B%BE%E9%A3%8E%E6%A0%BC%3C%2Fp%3E%0A"},{default:l(()=>[F]),_:1}),D,a(p,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E10%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EmapStyleId%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E0f3219e982947931ae2893345940df80%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"map/theme2","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%3Azoom%3D%2210%22%20enableScrollWheelZoom%20mapStyleId%3D%220f3219e982947931ae2893345940df80%22%20%2F%3E%0A%3C%2Ftemplate%3E%0A",description:"%3Cp%3E%E6%BB%A1%E6%BB%A1%E7%9A%84%E7%A7%91%E6%8A%80%E6%84%9F%3C%2Fp%3E%0A"},{default:l(()=>[g]),_:1}),A,s("table",y,[B,s("tbody",null,[m,s("tr",null,[b,_,v,f,M,s("td",null,[a(t,{type:"tip",text:"^2.3.0"})])]),P,S,s("tr",null,[q,x,T,Z,I,s("td",null,[a(t,{type:"tip",text:"^2.1.0"})])]),w,s("tr",null,[R,L,N,z,O,s("td",null,[a(t,{type:"tip",text:"^1.1.3"})])]),W,V])]),H,s("table",K,[J,s("tbody",null,[s("tr",null,[j,$,G,U,s("td",null,[a(t,{type:"tip",text:"^1.0.1"})])]),s("tr",null,[Q,X,Y,s2,s("td",null,[a(t,{type:"tip",text:"^1.0.1"})])]),a2,n2,t2,p2,l2,e2,i2,E2,o2,c2,C2,k2,d2,u2,r2,h2,F2,D2,s("tr",null,[g2,A2,y2,B2,s("td",null,[a(t,{type:"tip",text:"^2.1.0"})])]),s("tr",null,[m2,b2,_2,v2,s("td",null,[a(t,{type:"tip",text:"^2.1.0"})])]),s("tr",null,[f2,M2,P2,S2,s("td",null,[a(t,{type:"tip",text:"^2.1.0"})])])])]),q2])}const O2=E(C,[["render",x2]]);export{z2 as __pageData,O2 as default}; diff --git a/assets/zh-CN_components_map.md.QTK8yFhV.lean.js b/assets/zh-CN_components_map.md.QTK8yFhV.lean.js new file mode 100644 index 00000000..675a8103 --- /dev/null +++ b/assets/zh-CN_components_map.md.QTK8yFhV.lean.js @@ -0,0 +1 @@ +import{_ as E,c as o,I as a,w as l,j as s,al as e,a as n,D as i,o as c}from"./chunks/framework.n6hqIsqL.js";const z2=JSON.parse('{"title":"Map 地图","description":"","frontmatter":{"title":"Map 地图"},"headers":[],"relativePath":"zh-CN/components/map.md","filePath":"zh-CN/components/map.md","lastUpdated":1724785300000}'),C={name:"zh-CN/components/map.md"},k=e("",4),d=s("p",null,"map/base",-1),u=s("h2",{id:"多实例",tabindex:"-1"},[n("多实例 "),s("a",{class:"header-anchor",href:"#多实例","aria-label":'Permalink to "多实例"'},"​")],-1),r=s("p",null,"map/multiInstance",-1),h=e("",6),F=s("p",null,"map/theme1",-1),D=s("h3",{id:"赛博朋克主题示例",tabindex:"-1"},[n("赛博朋克主题示例 "),s("a",{class:"header-anchor",href:"#赛博朋克主题示例","aria-label":'Permalink to "赛博朋克主题示例"'},"​")],-1),g=s("p",null,"map/theme2",-1),A=e("",4),y={tabindex:"0"},B=s("thead",null,[s("tr",null,[s("th",null,"属性"),s("th",null,"说明"),s("th",null,"类型"),s("th",null,"可选值"),s("th",null,"默认值"),s("th",null,"版本")])],-1),m=s("tr",null,[s("td",null,"ak"),s("td",null,[n("百度地图 "),s("a",{href:"./../guide/quick-start#申请-ak-密钥"},"ak")]),s("td",null,[s("code",null,"string")]),s("td",null,"-"),s("td",null,"-"),s("td",null,"-")],-1),b=s("td",null,"apiUrl",-1),_=s("td",null,"自建地图 api 资源地址(一般用于离线地图)",-1),v=s("td",null,[s("code",null,"string")],-1),f=s("td",null,"-",-1),M=s("td",null,"-",-1),P=s("tr",null,[s("td",null,"minZoom"),s("td",null,"地图允许展示的最小级别"),s("td",null,[s("code",null,"number")]),s("td",null,[s("code",null,"0-21")]),s("td",null,[s("code",null,"0")]),s("td",null,"-")],-1),S=s("tr",null,[s("td",null,"maxZoom"),s("td",null,"地图允许展示的最大级别"),s("td",null,[s("code",null,"number")]),s("td",null,[s("code",null,"0-21")]),s("td",null,[s("code",null,"21")]),s("td",null,"-")],-1),q=s("td",null,"backgroundColor",-1),x=s("td",null,"地图背景颜色, rgba 数组",-1),T=s("td",null,[s("code",null," number[]")],-1),Z=s("td",null,"-",-1),I=s("td",null,[s("code",null,"[245, 245, 245, 100]")],-1),w=s("tr",null,[s("td",null,"showControls"),s("td",null,"是否显示室内图"),s("td",null,[s("code",null,"boolean")]),s("td",null,"-"),s("td",null,[s("code",null,"false")]),s("td",null,"-")],-1),R=s("td",null,"restrictCenter",-1),L=s("td",null,"是否限制中心",-1),N=s("td",null,[s("code",null,"boolean")],-1),z=s("td",null,"-",-1),O=s("td",null,[s("code",null,"true")],-1),W=s("tr",null,[s("td",null,"plugins"),s("td",null,"需要注册的插件"),s("td",null,[s("code",null,"['TrackAnimation', 'Mapvgl', 'Mapv', 'MapvThree']")]),s("td",null,"-"),s("td",null,"-"),s("td",null,"-")],-1),V=s("tr",null,[s("td",null,"pluginsSourceLink"),s("td",null,"自定义插件资源地址"),s("td",null,[s("code",null,"Record<'TrackAnimation' | 'Mapvgl' | 'Mapv' | 'MapvThree', string>")]),s("td",null,"-"),s("td",null,"-"),s("td",null,"-")],-1),H=s("h2",{id:"动态组件-props",tabindex:"-1"},[n("动态组件 Props "),s("a",{class:"header-anchor",href:"#动态组件-props","aria-label":'Permalink to "动态组件 Props"'},"​")],-1),K={tabindex:"0"},J=s("thead",null,[s("tr",null,[s("th",null,"属性"),s("th",null,"说明"),s("th",null,"类型"),s("th",null,"默认值"),s("th",null,"版本")])],-1),j=s("td",null,"width",-1),$=s("td",null,"地图显示宽度",-1),G=s("td",null,[s("code",null,"string / number")],-1),U=s("td",null,[s("code",null,"100%")],-1),Q=s("td",null,"height",-1),X=s("td",null,"地图显示高度",-1),Y=s("td",null,[s("code",null,"string / number")],-1),s2=s("td",null,[s("code",null,"550px")],-1),a2=s("tr",null,[s("td",null,"center"),s("td",null,[n("地图默认中心点,可使用城市名,如:北京市,也可以使用对象如 "),s("code",null,"{lng: 121.424333, lat: 31.228604}"),n(" 表示经纬度。")]),s("td",null,[s("code",null,"string / {lng: number, lat: number}")]),s("td",null,[s("code",null,"北京市")]),s("td",null,"-")],-1),n2=s("tr",null,[s("td",null,"heading"),s("td",null,"地图旋转角度"),s("td",null,[s("code",null,"number")]),s("td",null,[s("code",null,"0")]),s("td",null,"-")],-1),t2=s("tr",null,[s("td",null,"tilt"),s("td",null,"地图倾斜角度"),s("td",null,[s("code",null,"number")]),s("td",null,[s("code",null,"0 ")]),s("td",null,"-")],-1),p2=s("tr",null,[s("td",null,"mapType"),s("td",null,[n("地图类型 "),s("a",{href:"#地图类型"},"mapType")]),s("td",null,[s("code",null,"string")]),s("td",null,[s("code",null,"BMAP_NORMAL_MAP")]),s("td",null,"-")],-1),l2=s("tr",null,[s("td",null,"zoom"),s("td",null,"地图缩放级别"),s("td",null,[s("code",null,"number")]),s("td",null,[s("code",null,"14")]),s("td",null,"-")],-1),e2=s("tr",null,[s("td",null,"displayOptions"),s("td",null,[n("自定义地图属性 "),s("a",{href:"#displayoptions"},"详见")]),s("td",null,"-"),s("td",null,"-"),s("td",null,"-")],-1),i2=s("tr",null,[s("td",null,"mapStyleId"),s("td",null,[n("个性化地图样式 ID "),s("a",{href:"#个性化地图"},"详见")]),s("td",null,[s("code",null,"string")]),s("td",null,"-"),s("td",null,"-")],-1),E2=s("tr",null,[s("td",null,"mapStyleJson"),s("td",null,[n("个性化地图样式 Json "),s("a",{href:"#个性化地图"},"详见")]),s("td",null,[s("code",null,"{featureType: string...}[]")]),s("td",null,"-"),s("td",null,"-")],-1),o2=s("tr",null,[s("td",null,"enableTraffic"),s("td",null,"是否启用交通路况图层"),s("td",null,[s("code",null,"boolean")]),s("td",null,[s("code",null,"false")]),s("td",null,"-")],-1),c2=s("tr",null,[s("td",null,"enableDragging"),s("td",null,"启用地图拖拽"),s("td",null,[s("code",null,"boolean")]),s("td",null,[s("code",null,"true")]),s("td",null,"-")],-1),C2=s("tr",null,[s("td",null,"enableInertialDragging"),s("td",null,"启用地图惯性拖拽"),s("td",null,[s("code",null,"boolean")]),s("td",null,[s("code",null,"true")]),s("td",null,"-")],-1),k2=s("tr",null,[s("td",null,"enableScrollWheelZoom"),s("td",null,"允许地图可被鼠标滚轮缩放"),s("td",null,[s("code",null,"boolean")]),s("td",null,[s("code",null,"false")]),s("td",null,"-")],-1),d2=s("tr",null,[s("td",null,"enableContinuousZoom"),s("td",null,"开启双击平滑缩放效果"),s("td",null,[s("code",null,"boolean")]),s("td",null,[s("code",null,"true")]),s("td",null,"-")],-1),u2=s("tr",null,[s("td",null,"enableResizeOnCenter"),s("td",null,"开启图区 resize 中心点不变"),s("td",null,[s("code",null,"boolean")]),s("td",null,[s("code",null,"true")]),s("td",null,"-")],-1),r2=s("tr",null,[s("td",null,"enableDoubleClickZoom"),s("td",null,"启用地图双击缩放,左键双击放大、右键双击缩小"),s("td",null,[s("code",null,"boolean")]),s("td",null,[s("code",null,"false")]),s("td",null,"-")],-1),h2=s("tr",null,[s("td",null,"enableKeyboard"),s("td",null,"启用键盘操作,键盘的上、下、左、右键可连续移动地图。同时按下其中两个键可使地图进行对角移动。PgUp、PgDn、Home 和 End 键会使地图平移其 1/2 的大小。 +、-键会使地图放大或缩小一级"),s("td",null,[s("code",null,"boolean")]),s("td",null,[s("code",null,"true")]),s("td",null,"-")],-1),F2=s("tr",null,[s("td",null,"enablePinchToZoom"),s("td",null,"启用双指缩放地图"),s("td",null,[s("code",null,"boolean")]),s("td",null,[s("code",null,"true")]),s("td",null,"-")],-1),D2=s("tr",null,[s("td",null,"enableAutoResize"),s("td",null,"启用自动适应容器尺寸变化"),s("td",null,[s("code",null,"boolean")]),s("td",null,[s("code",null,"true")]),s("td",null,"-")],-1),g2=s("td",null,"enableIconClick",-1),A2=s("td",null,"是否启用底图可点击",-1),y2=s("td",null,[s("code",null,"boolean")],-1),B2=s("td",null,[s("code",null,"true")],-1),m2=s("td",null,"loadingBgColor",-1),b2=s("td",null,"加载背景图颜色",-1),_2=s("td",null,[s("code",null,"string")],-1),v2=s("td",null,[s("code",null,"#f1f1f1")],-1),f2=s("td",null,"loadingTextColor",-1),M2=s("td",null,"加载文字图颜色",-1),P2=s("td",null,[s("code",null,"string")],-1),S2=s("td",null,[s("code",null,"#999")],-1),q2=e("",9);function x2(T2,Z2,I2,w2,R2,L2){const p=i("Demo"),t=i("Badge");return c(),o("div",null,[k,a(p,{class:"p-top",source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Einput%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Echeckbox%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableScrollWheelZoom%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%E9%BC%A0%E6%A0%87%E7%BC%A9%E6%94%BE%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Einput%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Echeckbox%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableDragging%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%E6%8B%96%E6%8B%BD%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Einput%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Echeckbox%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableInertialDragging%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%E6%83%AF%E6%80%A7%E6%8B%96%E6%8B%BD%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Einput%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Echeckbox%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enablePinchToZoom%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%E5%8F%8C%E6%8C%87%E7%BC%A9%E6%94%BE%E5%9C%B0%E5%9B%BE%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Einput%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Echeckbox%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableKeyboard%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%E9%94%AE%E7%9B%98%E6%93%8D%E4%BD%9C%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Einput%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Echeckbox%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableDoubleClickZoom%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%E5%8F%8C%E5%87%BB%E7%BC%A9%E6%94%BE%EF%BC%8C%E5%B7%A6%E9%94%AE%E5%8F%8C%E5%87%BB%E6%94%BE%E5%A4%A7%E3%80%81%E5%8F%B3%E9%94%AE%E5%8F%8C%E5%87%BB%E7%BC%A9%E5%B0%8F%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Einput%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Echeckbox%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableContinuousZoom%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%E5%8F%8C%E5%87%BB%E5%B9%B3%E6%BB%91%E7%BC%A9%E6%94%BE%E6%95%88%E6%9E%9C%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Einput%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Echeckbox%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableTraffic%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%E6%98%BE%E7%A4%BA%E4%BA%A4%E9%80%9A%E8%B7%AF%E5%86%B5%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%E5%9C%B0%E5%9B%BE%E7%B1%BB%E5%9E%8B%EF%BC%9A%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eselect%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ename%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eid%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Etype%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EBMAP_NORMAL_MAP%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%B8%B8%E8%A7%84%E5%9C%B0%E5%9B%BE%20BMAP_NORMAL_MAP%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EBMAP_EARTH_MAP%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%9C%B0%E7%90%83%E6%A8%A1%E5%BC%8F%20BMAP_EARTH_MAP%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EBMAP_SATELLITE_MAP%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%8D%AB%E6%98%9F%E5%9B%BE%20BMAP_EARTH_MAP%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eselect%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E64.5%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Atilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E73%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%0A%20%20%20%20%20%20%20%20lng%3A%20116.28019%2C%0A%20%20%20%20%20%20%20%20lat%3A%2040.049191%0A%20%20%20%20%20%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E19%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AminZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E3%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AmapType%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Etype%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AenableDragging%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableDragging%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AenableInertialDragging%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableInertialDragging%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AenableScrollWheelZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableScrollWheelZoom%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AenableContinuousZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableContinuousZoom%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AenableDoubleClickZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableDoubleClickZoom%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AenableKeyboard%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableKeyboard%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AenablePinchToZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enablePinchToZoom%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AenableTraffic%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EmapSetting.enableTraffic%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20MapType%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20MapProps%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20type%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3EMapType%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'BMAP_NORMAL_MAP'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20mapSetting%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3EMapProps%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EenableDragging%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EenableInertialDragging%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EenableScrollWheelZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EenableContinuousZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EenableResizeOnCenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EenableDoubleClickZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EenableKeyboard%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EenablePinchToZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EenableAutoResize%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EenableTraffic%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"map/base","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%3Clabel%3E%0A%20%20%20%20%20%20%3Cinput%20type%3D%22checkbox%22%20v-model%3D%22mapSetting.enableScrollWheelZoom%22%20%2F%3E%0A%20%20%20%20%20%20%E9%BC%A0%E6%A0%87%E7%BC%A9%E6%94%BE%0A%20%20%20%20%3C%2Flabel%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3Clabel%3E%0A%20%20%20%20%20%20%3Cinput%20type%3D%22checkbox%22%20v-model%3D%22mapSetting.enableDragging%22%20%2F%3E%0A%20%20%20%20%20%20%E6%8B%96%E6%8B%BD%0A%20%20%20%20%3C%2Flabel%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3Clabel%3E%0A%20%20%20%20%20%20%3Cinput%20type%3D%22checkbox%22%20v-model%3D%22mapSetting.enableInertialDragging%22%20%2F%3E%0A%20%20%20%20%20%20%E6%83%AF%E6%80%A7%E6%8B%96%E6%8B%BD%0A%20%20%20%20%3C%2Flabel%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3Clabel%3E%0A%20%20%20%20%20%20%3Cinput%20type%3D%22checkbox%22%20v-model%3D%22mapSetting.enablePinchToZoom%22%20%2F%3E%0A%20%20%20%20%20%20%E5%8F%8C%E6%8C%87%E7%BC%A9%E6%94%BE%E5%9C%B0%E5%9B%BE%0A%20%20%20%20%3C%2Flabel%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3Clabel%3E%0A%20%20%20%20%20%20%3Cinput%20type%3D%22checkbox%22%20v-model%3D%22mapSetting.enableKeyboard%22%20%2F%3E%0A%20%20%20%20%20%20%E9%94%AE%E7%9B%98%E6%93%8D%E4%BD%9C%0A%20%20%20%20%3C%2Flabel%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3Clabel%3E%0A%20%20%20%20%20%20%3Cinput%20type%3D%22checkbox%22%20v-model%3D%22mapSetting.enableDoubleClickZoom%22%20%2F%3E%0A%20%20%20%20%20%20%E5%8F%8C%E5%87%BB%E7%BC%A9%E6%94%BE%EF%BC%8C%E5%B7%A6%E9%94%AE%E5%8F%8C%E5%87%BB%E6%94%BE%E5%A4%A7%E3%80%81%E5%8F%B3%E9%94%AE%E5%8F%8C%E5%87%BB%E7%BC%A9%E5%B0%8F%0A%20%20%20%20%3C%2Flabel%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3Clabel%3E%0A%20%20%20%20%20%20%3Cinput%20type%3D%22checkbox%22%20v-model%3D%22mapSetting.enableContinuousZoom%22%20%2F%3E%0A%20%20%20%20%20%20%E5%8F%8C%E5%87%BB%E5%B9%B3%E6%BB%91%E7%BC%A9%E6%94%BE%E6%95%88%E6%9E%9C%0A%20%20%20%20%3C%2Flabel%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3Clabel%3E%0A%20%20%20%20%20%20%3Cinput%20type%3D%22checkbox%22%20v-model%3D%22mapSetting.enableTraffic%22%20%2F%3E%0A%20%20%20%20%20%20%E6%98%BE%E7%A4%BA%E4%BA%A4%E9%80%9A%E8%B7%AF%E5%86%B5%0A%20%20%20%20%3C%2Flabel%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%E5%9C%B0%E5%9B%BE%E7%B1%BB%E5%9E%8B%EF%BC%9A%0A%20%20%20%20%3Cselect%20class%3D%22mySelect%22%20name%3D%22%22%20id%3D%22%22%20v-model%3D%22type%22%3E%0A%20%20%20%20%20%20%3Coption%20value%3D%22BMAP_NORMAL_MAP%22%3E%E5%B8%B8%E8%A7%84%E5%9C%B0%E5%9B%BE%20BMAP_NORMAL_MAP%3C%2Foption%3E%0A%20%20%20%20%20%20%3Coption%20value%3D%22BMAP_EARTH_MAP%22%3E%E5%9C%B0%E7%90%83%E6%A8%A1%E5%BC%8F%20BMAP_EARTH_MAP%3C%2Foption%3E%0A%20%20%20%20%20%20%3Coption%20value%3D%22BMAP_SATELLITE_MAP%22%3E%E5%8D%AB%E6%98%9F%E5%9B%BE%20BMAP_EARTH_MAP%3C%2Foption%3E%0A%20%20%20%20%3C%2Fselect%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3CBMap%0A%20%20%20%20%20%20v-bind%3D%22%24attrs%22%0A%20%20%20%20%20%20%3Aheading%3D%2264.5%22%0A%20%20%20%20%20%20%3Atilt%3D%2273%22%0A%20%20%20%20%20%20%3Acenter%3D%22%7B%0A%20%20%20%20%20%20%20%20lng%3A%20116.28019%2C%0A%20%20%20%20%20%20%20%20lat%3A%2040.049191%0A%20%20%20%20%20%20%7D%22%0A%20%20%20%20%20%20%3Azoom%3D%2219%22%0A%20%20%20%20%20%20%3AminZoom%3D%223%22%0A%20%20%20%20%20%20%3AmapType%3D%22type%22%0A%20%20%20%20%20%20%3AenableDragging%3D%22mapSetting.enableDragging%22%0A%20%20%20%20%20%20%3AenableInertialDragging%3D%22mapSetting.enableInertialDragging%22%0A%20%20%20%20%20%20%3AenableScrollWheelZoom%3D%22mapSetting.enableScrollWheelZoom%22%0A%20%20%20%20%20%20%3AenableContinuousZoom%3D%22mapSetting.enableContinuousZoom%22%0A%20%20%20%20%20%20%3AenableDoubleClickZoom%3D%22mapSetting.enableDoubleClickZoom%22%0A%20%20%20%20%20%20%3AenableKeyboard%3D%22mapSetting.enableKeyboard%22%0A%20%20%20%20%20%20%3AenablePinchToZoom%3D%22mapSetting.enablePinchToZoom%22%0A%20%20%20%20%20%20%3AenableTraffic%3D%22mapSetting.enableTraffic%22%0A%20%20%20%20%2F%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%20lang%3D%22ts%22%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20import%20%7B%20MapType%2C%20MapProps%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20type%20%3D%20ref%3CMapType%3E('BMAP_NORMAL_MAP')%0A%20%20const%20mapSetting%20%3D%20ref%3CMapProps%3E(%7B%0A%20%20%20%20enableDragging%3A%20true%2C%0A%20%20%20%20enableInertialDragging%3A%20true%2C%0A%20%20%20%20enableScrollWheelZoom%3A%20false%2C%0A%20%20%20%20enableContinuousZoom%3A%20true%2C%0A%20%20%20%20enableResizeOnCenter%3A%20true%2C%0A%20%20%20%20enableDoubleClickZoom%3A%20false%2C%0A%20%20%20%20enableKeyboard%3A%20true%2C%0A%20%20%20%20enablePinchToZoom%3A%20true%2C%0A%20%20%20%20enableAutoResize%3A%20true%2C%0A%20%20%20%20enableTraffic%3A%20false%0A%20%20%7D)%0A%3C%2Fscript%3E%0A",description:""},{default:l(()=>[d]),_:1}),u,a(p,{class:"p-top not-full p-bottom",source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Emap-wrapper%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Emap-item%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Emap-item%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Estyle%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Escoped%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20style%22%3E%3Cspan%20class%3D%22token%20language-css%22%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.map-wrapper%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Edisplay%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20flex%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Ejustify-content%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20space-between%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.map-wrapper%20.map-item%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Eflex-basis%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Ecalc%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E50%25%20-%207.5px%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"map/multiInstance","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%20class%3D%22map-wrapper%22%3E%0A%20%20%20%20%3Cdiv%20class%3D%22map-item%22%3E%0A%20%20%20%20%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%2F%3E%0A%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%3Cdiv%20class%3D%22map-item%22%3E%0A%20%20%20%20%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%2F%3E%0A%20%20%20%20%3C%2Fdiv%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cstyle%20scoped%3E%0A%20%20.map-wrapper%20%7B%0A%20%20%20%20display%3A%20flex%3B%0A%20%20%20%20justify-content%3A%20space-between%3B%0A%20%20%7D%0A%20%20.map-wrapper%20.map-item%20%7B%0A%20%20%20%20flex-basis%3A%20calc(50%25%20-%207.5px)%3B%0A%20%20%7D%0A%3C%2Fstyle%3E%0A",description:""},{default:l(()=>[r]),_:1}),h,a(p,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E10%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EmapStyleId%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eee66c61531e8df3c2fd0374e96e58e81%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"map/theme1","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%3Azoom%3D%2210%22%20enableScrollWheelZoom%20mapStyleId%3D%22ee66c61531e8df3c2fd0374e96e58e81%22%20%2F%3E%0A%3C%2Ftemplate%3E%0A",description:"%3Cp%3E%E7%B1%BB%E4%BC%BC%E8%8B%B9%E6%9E%9C%E5%9C%B0%E5%9B%BE%E9%A3%8E%E6%A0%BC%3C%2Fp%3E%0A"},{default:l(()=>[F]),_:1}),D,a(p,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E10%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EmapStyleId%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E0f3219e982947931ae2893345940df80%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"map/theme2","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%3Azoom%3D%2210%22%20enableScrollWheelZoom%20mapStyleId%3D%220f3219e982947931ae2893345940df80%22%20%2F%3E%0A%3C%2Ftemplate%3E%0A",description:"%3Cp%3E%E6%BB%A1%E6%BB%A1%E7%9A%84%E7%A7%91%E6%8A%80%E6%84%9F%3C%2Fp%3E%0A"},{default:l(()=>[g]),_:1}),A,s("table",y,[B,s("tbody",null,[m,s("tr",null,[b,_,v,f,M,s("td",null,[a(t,{type:"tip",text:"^2.3.0"})])]),P,S,s("tr",null,[q,x,T,Z,I,s("td",null,[a(t,{type:"tip",text:"^2.1.0"})])]),w,s("tr",null,[R,L,N,z,O,s("td",null,[a(t,{type:"tip",text:"^1.1.3"})])]),W,V])]),H,s("table",K,[J,s("tbody",null,[s("tr",null,[j,$,G,U,s("td",null,[a(t,{type:"tip",text:"^1.0.1"})])]),s("tr",null,[Q,X,Y,s2,s("td",null,[a(t,{type:"tip",text:"^1.0.1"})])]),a2,n2,t2,p2,l2,e2,i2,E2,o2,c2,C2,k2,d2,u2,r2,h2,F2,D2,s("tr",null,[g2,A2,y2,B2,s("td",null,[a(t,{type:"tip",text:"^2.1.0"})])]),s("tr",null,[m2,b2,_2,v2,s("td",null,[a(t,{type:"tip",text:"^2.1.0"})])]),s("tr",null,[f2,M2,P2,S2,s("td",null,[a(t,{type:"tip",text:"^2.1.0"})])])])]),q2])}const O2=E(C,[["render",x2]]);export{z2 as __pageData,O2 as default}; diff --git a/assets/zh-CN_components_overlay_bezierCurve.md.B_ppttYG.js b/assets/zh-CN_components_overlay_bezierCurve.md.B_ppttYG.js new file mode 100644 index 00000000..9bcfef2c --- /dev/null +++ b/assets/zh-CN_components_overlay_bezierCurve.md.B_ppttYG.js @@ -0,0 +1 @@ +import{_ as d,c as p,I as a,w as c,j as t,al as e,a as n,D as s,o as u}from"./chunks/framework.n6hqIsqL.js";const M=JSON.parse('{"title":"BBezierCurve 折线","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/overlay/bezierCurve.md","filePath":"zh-CN/components/overlay/bezierCurve.md","lastUpdated":1724785300000}'),r={name:"zh-CN/components/overlay/bezierCurve.md"},C=e('

BBezierCurve 折线

在地图上绘制二阶贝塞尔曲线

ts
import { BBezierCurve } from 'vue3-baidu-map-gl'

提示

不了解贝塞尔曲线的小伙伴可以先学习一下: https://zh-CN.javascript.info/bezier-curve

组件示例

',5),i=t("p",null,"overlay/bezierCurve",-1),E=t("h2",{id:"动态组件-props",tabindex:"-1"},[n("动态组件 Props "),t("a",{class:"header-anchor",href:"#动态组件-props","aria-label":'Permalink to "动态组件 Props"'},"​")],-1),A={tabindex:"0"},D=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"可选值"),t("th",null,"默认值"),t("th",null,"版本")])],-1),k=t("tr",null,[t("td",null,"path"),t("td",null,"贝塞尔曲线的坐标数组"),t("td",null,[t("code",null,"{ lng: number, lat: number}[]")]),t("td",null,"-"),t("td",null,[t("code",null,"required")]),t("td",null,"-")],-1),h=t("tr",null,[t("td",null,"controlPoints"),t("td",null,"贝塞尔曲线控制点的坐标数组"),t("td",null,[t("code",null,"{ lng: number, lat: number}[][]")]),t("td",null,"-"),t("td",null,[t("code",null,"required")]),t("td",null,"-")],-1),_=t("tr",null,[t("td",null,"strokeColor"),t("td",null,"描边的颜色,同 CSS 颜色"),t("td",null,[t("code",null,"string")]),t("td",null,"-"),t("td",null,[t("code",null,"#000000")]),t("td",null,"-")],-1),F=t("tr",null,[t("td",null,"strokeWeight"),t("td",null,"描边的宽度,单位为像素"),t("td",null,[t("code",null,"string")]),t("td",null,"-"),t("td",null,[t("code",null,"2")]),t("td",null,"-")],-1),B=t("tr",null,[t("td",null,"strokeOpacity"),t("td",null,[n("描边的透明度,范围 "),t("code",null,"0-1")]),t("td",null,[t("code",null," number")]),t("td",null,"-"),t("td",null,[t("code",null," 1")]),t("td",null,"-")],-1),v=t("tr",null,[t("td",null,"strokeStyle"),t("td",null,"描边的样式,为实线、虚线、或者点状线"),t("td",null,[t("code",null,"string")]),t("td",null,[t("code",null,"solid / dashed / dotted")]),t("td",null,"-"),t("td",null,"-")],-1),g=t("tr",null,[t("td",null,"enableMassClear"),t("td",null,[n("是否在调用 "),t("code",null,"map.clearOverlays"),n(" 清除此覆盖物")]),t("td",null,[t("code",null,"boolean")]),t("td",null,"-"),t("td",null,[t("code",null,"true ")]),t("td",null,"-")],-1),m=t("td",null,"visible",-1),b=t("td",null,"是否显示",-1),z=t("td",null,[t("code",null,"boolean")],-1),y=t("td",null,"-",-1),f=t("td",null,[t("code",null,"true")],-1),q=e('

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。 当双击时,产生的事件序列为: click click dblclick((e: Event) => void)
dblclick鼠标左键双击事件的回调函数((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数((e: Event) => void)
remove该覆盖物被移除的回调函数((e: Event) => void)
lineupdate覆盖物被编辑后的回调函数((e: Event) => void)
',2);function P(x,T,N,S,V,w){const l=s("Demo"),o=s("Badge");return u(),p("div",null,[C,a(l,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lng%3A%20113.399%2C%20lat%3A%2039.91%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E8%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBBezierCurve%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Apath%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%5B%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.399%2C%20lat%3A%2039.911%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20113.399%2C%20lat%3A%2039.91%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20110.399%2C%20lat%3A%2039.91%20%7D%0A%20%20%20%20%20%20%5D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AcontrolPoints%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%5B%0A%20%20%20%20%20%20%20%20%5B%0A%20%20%20%20%20%20%20%20%20%20%7B%20lng%3A%20115.399%2C%20lat%3A%2040.91%20%7D%2C%0A%20%20%20%20%20%20%20%20%20%20%7B%20lng%3A%20114.399%2C%20lat%3A%2038.91%20%7D%0A%20%20%20%20%20%20%20%20%5D%2C%0A%20%20%20%20%20%20%20%20%5B%0A%20%20%20%20%20%20%20%20%20%20%7B%20lng%3A%20112.399%2C%20lat%3A%2038.911%20%7D%2C%0A%20%20%20%20%20%20%20%20%20%20%7B%20lng%3A%20112.399%2C%20lat%3A%2038.41%20%7D%0A%20%20%20%20%20%20%20%20%5D%0A%20%20%20%20%20%20%5D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Estroke-color%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%23000%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Astroke-opacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E1%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Astroke-weight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E2%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/bezierCurve","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%3Acenter%3D%22%7B%20lng%3A%20113.399%2C%20lat%3A%2039.91%20%7D%22%20%3Azoom%3D%228%22%3E%0A%20%20%20%20%3CBBezierCurve%0A%20%20%20%20%20%20%3Apath%3D%22%5B%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.399%2C%20lat%3A%2039.911%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20113.399%2C%20lat%3A%2039.91%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20110.399%2C%20lat%3A%2039.91%20%7D%0A%20%20%20%20%20%20%5D%22%0A%20%20%20%20%20%20%3AcontrolPoints%3D%22%5B%0A%20%20%20%20%20%20%20%20%5B%0A%20%20%20%20%20%20%20%20%20%20%7B%20lng%3A%20115.399%2C%20lat%3A%2040.91%20%7D%2C%0A%20%20%20%20%20%20%20%20%20%20%7B%20lng%3A%20114.399%2C%20lat%3A%2038.91%20%7D%0A%20%20%20%20%20%20%20%20%5D%2C%0A%20%20%20%20%20%20%20%20%5B%0A%20%20%20%20%20%20%20%20%20%20%7B%20lng%3A%20112.399%2C%20lat%3A%2038.911%20%7D%2C%0A%20%20%20%20%20%20%20%20%20%20%7B%20lng%3A%20112.399%2C%20lat%3A%2038.41%20%7D%0A%20%20%20%20%20%20%20%20%5D%0A%20%20%20%20%20%20%5D%22%0A%20%20%20%20%20%20stroke-color%3D%22%23000%22%0A%20%20%20%20%20%20%3Astroke-opacity%3D%221%22%0A%20%20%20%20%20%20%3Astroke-weight%3D%222%22%0A%20%20%20%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A",description:"%3Cp%3E%E5%9C%A8%E5%9C%B0%E5%9B%BE%E4%B8%AD%E6%B7%BB%E5%8A%A0%E8%B4%9D%E5%A1%9E%E5%B0%94%E6%9B%B2%E7%BA%BF%3C%2Fp%3E%0A"},{default:c(()=>[i]),_:1}),E,t("table",A,[D,t("tbody",null,[k,h,_,F,B,v,g,t("tr",null,[m,b,z,y,f,t("td",null,[a(o,{type:"tip",text:"^2.2.0"})])])])]),q])}const $=d(r,[["render",P]]);export{M as __pageData,$ as default}; diff --git a/assets/zh-CN_components_overlay_bezierCurve.md.B_ppttYG.lean.js b/assets/zh-CN_components_overlay_bezierCurve.md.B_ppttYG.lean.js new file mode 100644 index 00000000..1b11b349 --- /dev/null +++ b/assets/zh-CN_components_overlay_bezierCurve.md.B_ppttYG.lean.js @@ -0,0 +1 @@ +import{_ as d,c as p,I as a,w as c,j as t,al as e,a as n,D as s,o as u}from"./chunks/framework.n6hqIsqL.js";const M=JSON.parse('{"title":"BBezierCurve 折线","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/overlay/bezierCurve.md","filePath":"zh-CN/components/overlay/bezierCurve.md","lastUpdated":1724785300000}'),r={name:"zh-CN/components/overlay/bezierCurve.md"},C=e("",5),i=t("p",null,"overlay/bezierCurve",-1),E=t("h2",{id:"动态组件-props",tabindex:"-1"},[n("动态组件 Props "),t("a",{class:"header-anchor",href:"#动态组件-props","aria-label":'Permalink to "动态组件 Props"'},"​")],-1),A={tabindex:"0"},D=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"可选值"),t("th",null,"默认值"),t("th",null,"版本")])],-1),k=t("tr",null,[t("td",null,"path"),t("td",null,"贝塞尔曲线的坐标数组"),t("td",null,[t("code",null,"{ lng: number, lat: number}[]")]),t("td",null,"-"),t("td",null,[t("code",null,"required")]),t("td",null,"-")],-1),h=t("tr",null,[t("td",null,"controlPoints"),t("td",null,"贝塞尔曲线控制点的坐标数组"),t("td",null,[t("code",null,"{ lng: number, lat: number}[][]")]),t("td",null,"-"),t("td",null,[t("code",null,"required")]),t("td",null,"-")],-1),_=t("tr",null,[t("td",null,"strokeColor"),t("td",null,"描边的颜色,同 CSS 颜色"),t("td",null,[t("code",null,"string")]),t("td",null,"-"),t("td",null,[t("code",null,"#000000")]),t("td",null,"-")],-1),F=t("tr",null,[t("td",null,"strokeWeight"),t("td",null,"描边的宽度,单位为像素"),t("td",null,[t("code",null,"string")]),t("td",null,"-"),t("td",null,[t("code",null,"2")]),t("td",null,"-")],-1),B=t("tr",null,[t("td",null,"strokeOpacity"),t("td",null,[n("描边的透明度,范围 "),t("code",null,"0-1")]),t("td",null,[t("code",null," number")]),t("td",null,"-"),t("td",null,[t("code",null," 1")]),t("td",null,"-")],-1),v=t("tr",null,[t("td",null,"strokeStyle"),t("td",null,"描边的样式,为实线、虚线、或者点状线"),t("td",null,[t("code",null,"string")]),t("td",null,[t("code",null,"solid / dashed / dotted")]),t("td",null,"-"),t("td",null,"-")],-1),g=t("tr",null,[t("td",null,"enableMassClear"),t("td",null,[n("是否在调用 "),t("code",null,"map.clearOverlays"),n(" 清除此覆盖物")]),t("td",null,[t("code",null,"boolean")]),t("td",null,"-"),t("td",null,[t("code",null,"true ")]),t("td",null,"-")],-1),m=t("td",null,"visible",-1),b=t("td",null,"是否显示",-1),z=t("td",null,[t("code",null,"boolean")],-1),y=t("td",null,"-",-1),f=t("td",null,[t("code",null,"true")],-1),q=e("",2);function P(x,T,N,S,V,w){const l=s("Demo"),o=s("Badge");return u(),p("div",null,[C,a(l,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lng%3A%20113.399%2C%20lat%3A%2039.91%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E8%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBBezierCurve%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Apath%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%5B%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.399%2C%20lat%3A%2039.911%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20113.399%2C%20lat%3A%2039.91%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20110.399%2C%20lat%3A%2039.91%20%7D%0A%20%20%20%20%20%20%5D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AcontrolPoints%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%5B%0A%20%20%20%20%20%20%20%20%5B%0A%20%20%20%20%20%20%20%20%20%20%7B%20lng%3A%20115.399%2C%20lat%3A%2040.91%20%7D%2C%0A%20%20%20%20%20%20%20%20%20%20%7B%20lng%3A%20114.399%2C%20lat%3A%2038.91%20%7D%0A%20%20%20%20%20%20%20%20%5D%2C%0A%20%20%20%20%20%20%20%20%5B%0A%20%20%20%20%20%20%20%20%20%20%7B%20lng%3A%20112.399%2C%20lat%3A%2038.911%20%7D%2C%0A%20%20%20%20%20%20%20%20%20%20%7B%20lng%3A%20112.399%2C%20lat%3A%2038.41%20%7D%0A%20%20%20%20%20%20%20%20%5D%0A%20%20%20%20%20%20%5D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Estroke-color%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%23000%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Astroke-opacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E1%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Astroke-weight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E2%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/bezierCurve","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%3Acenter%3D%22%7B%20lng%3A%20113.399%2C%20lat%3A%2039.91%20%7D%22%20%3Azoom%3D%228%22%3E%0A%20%20%20%20%3CBBezierCurve%0A%20%20%20%20%20%20%3Apath%3D%22%5B%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.399%2C%20lat%3A%2039.911%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20113.399%2C%20lat%3A%2039.91%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20110.399%2C%20lat%3A%2039.91%20%7D%0A%20%20%20%20%20%20%5D%22%0A%20%20%20%20%20%20%3AcontrolPoints%3D%22%5B%0A%20%20%20%20%20%20%20%20%5B%0A%20%20%20%20%20%20%20%20%20%20%7B%20lng%3A%20115.399%2C%20lat%3A%2040.91%20%7D%2C%0A%20%20%20%20%20%20%20%20%20%20%7B%20lng%3A%20114.399%2C%20lat%3A%2038.91%20%7D%0A%20%20%20%20%20%20%20%20%5D%2C%0A%20%20%20%20%20%20%20%20%5B%0A%20%20%20%20%20%20%20%20%20%20%7B%20lng%3A%20112.399%2C%20lat%3A%2038.911%20%7D%2C%0A%20%20%20%20%20%20%20%20%20%20%7B%20lng%3A%20112.399%2C%20lat%3A%2038.41%20%7D%0A%20%20%20%20%20%20%20%20%5D%0A%20%20%20%20%20%20%5D%22%0A%20%20%20%20%20%20stroke-color%3D%22%23000%22%0A%20%20%20%20%20%20%3Astroke-opacity%3D%221%22%0A%20%20%20%20%20%20%3Astroke-weight%3D%222%22%0A%20%20%20%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A",description:"%3Cp%3E%E5%9C%A8%E5%9C%B0%E5%9B%BE%E4%B8%AD%E6%B7%BB%E5%8A%A0%E8%B4%9D%E5%A1%9E%E5%B0%94%E6%9B%B2%E7%BA%BF%3C%2Fp%3E%0A"},{default:c(()=>[i]),_:1}),E,t("table",A,[D,t("tbody",null,[k,h,_,F,B,v,g,t("tr",null,[m,b,z,y,f,t("td",null,[a(o,{type:"tip",text:"^2.2.0"})])])])]),q])}const $=d(r,[["render",P]]);export{M as __pageData,$ as default}; diff --git a/assets/zh-CN_components_overlay_circle.md.pa5wWVpk.js b/assets/zh-CN_components_overlay_circle.md.pa5wWVpk.js new file mode 100644 index 00000000..78e88670 --- /dev/null +++ b/assets/zh-CN_components_overlay_circle.md.pa5wWVpk.js @@ -0,0 +1 @@ +import{_ as o,c,I as l,w as u,j as t,al as n,a as e,D as a,o as r}from"./chunks/framework.n6hqIsqL.js";const R=JSON.parse('{"title":"BCircle 圆形","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/overlay/circle.md","filePath":"zh-CN/components/overlay/circle.md","lastUpdated":1724785300000}'),p={name:"zh-CN/components/overlay/circle.md"},i=n('

BCircle 圆形

在地图上绘制简单的圆形

ts
import { BCircle } from 'vue3-baidu-map-gl'

组件示例

',4),E=t("p",null,"overlay/circle",-1),C=n('

静态组件 Props

属性说明类型默认值
enableClicking是否响应点击事件booleantrue
geodesic是否开启大地线模式,true 时,两点连线将以大地线的形式booleanfalse
clip是否进行跨经度 180 度裁剪,绘制跨精度 180 时为了优化效果booleantrue

动态组件 Props

',3),h={tabindex:"0"},_=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"可选值"),t("th",null,"默认值"),t("th",null,"版本")])],-1),k=t("tr",null,[t("td",null,"center"),t("td",null,"圆形中心点经纬度"),t("td",null,[t("code",null,"{ lng: number, lat: number}")]),t("td",null,"-"),t("td",null,[t("code",null,"required")]),t("td",null,"-")],-1),D=t("tr",null,[t("td",null,"radius"),t("td",null,"圆形的半径,单位为米"),t("td",null,[t("code",null,"number")]),t("td",null,"-"),t("td",null,[t("code",null,"required")]),t("td",null,"-")],-1),F=t("tr",null,[t("td",null,"strokeColor"),t("td",null,"描边的颜色,同 CSS 颜色"),t("td",null,[t("code",null,"string")]),t("td",null,"-"),t("td",null,[t("code",null,"#000")]),t("td",null,"-")],-1),m=t("tr",null,[t("td",null,"strokeOpacity"),t("td",null,"描边的透明度,范围 0-1"),t("td",null,[t("code",null,"number")]),t("td",null,[t("code",null,"0-1 ")]),t("td",null,"1"),t("td",null,"-")],-1),b=t("tr",null,[t("td",null,"fillColor"),t("td",null,"面填充颜色,同 CSS 颜色"),t("td",null,[t("code",null,"string")]),t("td",null,"-"),t("td",null,[t("code",null,"#fff")]),t("td",null,"-")],-1),g=t("tr",null,[t("td",null,"fillOpacity"),t("td",null,"面填充的透明度,范围 0-1"),t("td",null,[t("code",null,"number")]),t("td",null,[t("code",null,"0-1 ")]),t("td",null,[t("code",null,"0.3 ")]),t("td",null,"-")],-1),v=t("tr",null,[t("td",null,"strokeWeight"),t("td",null,"描边的宽度,单位为像素"),t("td",null,[t("code",null,"number")]),t("td",null,"-"),t("td",null,[t("code",null,"2 ")]),t("td",null,"-")],-1),A=t("tr",null,[t("td",null,"strokeStyle"),t("td",null,"描边的样式,为实线、虚线、或者点状线"),t("td",null,[t("code",null,"string")]),t("td",null,[t("code",null,"solid / dashed / dotted")]),t("td",null,[t("code",null,"solid ")]),t("td",null,"-")],-1),B=t("tr",null,[t("td",null,"enableMassClear"),t("td",null,[e("是否在调用 "),t("code",null,"map.clearOverlays"),e(" 清除此覆盖物")]),t("td",null,[t("code",null,"boolean")]),t("td",null,"-"),t("td",null,[t("code",null,"true ")]),t("td",null,"-")],-1),y=t("tr",null,[t("td",null,"enableEditing"),t("td",null,"是否启用线编辑"),t("td",null,[t("code",null,"boolean")]),t("td",null,"-"),t("td",null,[t("code",null,"false ")]),t("td",null,"-")],-1),f=t("td",null,"visible",-1),T=t("td",null,"是否显示",-1),P=t("td",null,[t("code",null,"boolean")],-1),q=t("td",null,"-",-1),S=t("td",null,[t("code",null,"true")],-1),x=n('

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。 当双击时,产生的事件序列为:click -> click -> dblclick((e: Event) => void)
dblclick鼠标左键双击事件的回调函数((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数((e: Event) => void)
remove该覆盖物被移除的回调函数((e: Event) => void)
lineupdate覆盖物被编辑后的回调函数((e: Event) => void)
',2);function N(V,I,z,M,w,O){const s=a("Demo"),d=a("Badge");return r(),c("div",null,[i,l(s,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E16%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBCircle%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Estroke-style%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Edashed%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.403901%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aradius%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E300%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/circle","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%3Azoom%3D%2216%22%3E%0A%20%20%20%20%3CBCircle%20stroke-style%3D%22dashed%22%20%3Acenter%3D%22%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.403901%20%7D%22%20%3Aradius%3D%22300%22%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A",description:"%3Cp%3E%E5%9C%A8%E5%9C%B0%E5%9B%BE%E4%B8%8A%E6%B7%BB%E5%8A%A0%E5%9C%86%E5%BD%A2%3C%2Fp%3E%0A"},{default:u(()=>[E]),_:1}),C,t("table",h,[_,t("tbody",null,[k,D,F,m,b,g,v,A,B,y,t("tr",null,[f,T,P,q,S,t("td",null,[l(d,{type:"tip",text:"^2.2.0"})])])])]),x])}const j=o(p,[["render",N]]);export{R as __pageData,j as default}; diff --git a/assets/zh-CN_components_overlay_circle.md.pa5wWVpk.lean.js b/assets/zh-CN_components_overlay_circle.md.pa5wWVpk.lean.js new file mode 100644 index 00000000..a74529bd --- /dev/null +++ b/assets/zh-CN_components_overlay_circle.md.pa5wWVpk.lean.js @@ -0,0 +1 @@ +import{_ as o,c,I as l,w as u,j as t,al as n,a as e,D as a,o as r}from"./chunks/framework.n6hqIsqL.js";const R=JSON.parse('{"title":"BCircle 圆形","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/overlay/circle.md","filePath":"zh-CN/components/overlay/circle.md","lastUpdated":1724785300000}'),p={name:"zh-CN/components/overlay/circle.md"},i=n("",4),E=t("p",null,"overlay/circle",-1),C=n("",3),h={tabindex:"0"},_=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"可选值"),t("th",null,"默认值"),t("th",null,"版本")])],-1),k=t("tr",null,[t("td",null,"center"),t("td",null,"圆形中心点经纬度"),t("td",null,[t("code",null,"{ lng: number, lat: number}")]),t("td",null,"-"),t("td",null,[t("code",null,"required")]),t("td",null,"-")],-1),D=t("tr",null,[t("td",null,"radius"),t("td",null,"圆形的半径,单位为米"),t("td",null,[t("code",null,"number")]),t("td",null,"-"),t("td",null,[t("code",null,"required")]),t("td",null,"-")],-1),F=t("tr",null,[t("td",null,"strokeColor"),t("td",null,"描边的颜色,同 CSS 颜色"),t("td",null,[t("code",null,"string")]),t("td",null,"-"),t("td",null,[t("code",null,"#000")]),t("td",null,"-")],-1),m=t("tr",null,[t("td",null,"strokeOpacity"),t("td",null,"描边的透明度,范围 0-1"),t("td",null,[t("code",null,"number")]),t("td",null,[t("code",null,"0-1 ")]),t("td",null,"1"),t("td",null,"-")],-1),b=t("tr",null,[t("td",null,"fillColor"),t("td",null,"面填充颜色,同 CSS 颜色"),t("td",null,[t("code",null,"string")]),t("td",null,"-"),t("td",null,[t("code",null,"#fff")]),t("td",null,"-")],-1),g=t("tr",null,[t("td",null,"fillOpacity"),t("td",null,"面填充的透明度,范围 0-1"),t("td",null,[t("code",null,"number")]),t("td",null,[t("code",null,"0-1 ")]),t("td",null,[t("code",null,"0.3 ")]),t("td",null,"-")],-1),v=t("tr",null,[t("td",null,"strokeWeight"),t("td",null,"描边的宽度,单位为像素"),t("td",null,[t("code",null,"number")]),t("td",null,"-"),t("td",null,[t("code",null,"2 ")]),t("td",null,"-")],-1),A=t("tr",null,[t("td",null,"strokeStyle"),t("td",null,"描边的样式,为实线、虚线、或者点状线"),t("td",null,[t("code",null,"string")]),t("td",null,[t("code",null,"solid / dashed / dotted")]),t("td",null,[t("code",null,"solid ")]),t("td",null,"-")],-1),B=t("tr",null,[t("td",null,"enableMassClear"),t("td",null,[e("是否在调用 "),t("code",null,"map.clearOverlays"),e(" 清除此覆盖物")]),t("td",null,[t("code",null,"boolean")]),t("td",null,"-"),t("td",null,[t("code",null,"true ")]),t("td",null,"-")],-1),y=t("tr",null,[t("td",null,"enableEditing"),t("td",null,"是否启用线编辑"),t("td",null,[t("code",null,"boolean")]),t("td",null,"-"),t("td",null,[t("code",null,"false ")]),t("td",null,"-")],-1),f=t("td",null,"visible",-1),T=t("td",null,"是否显示",-1),P=t("td",null,[t("code",null,"boolean")],-1),q=t("td",null,"-",-1),S=t("td",null,[t("code",null,"true")],-1),x=n("",2);function N(V,I,z,M,w,O){const s=a("Demo"),d=a("Badge");return r(),c("div",null,[i,l(s,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E16%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBCircle%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Estroke-style%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Edashed%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.403901%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aradius%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E300%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/circle","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%3Azoom%3D%2216%22%3E%0A%20%20%20%20%3CBCircle%20stroke-style%3D%22dashed%22%20%3Acenter%3D%22%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.403901%20%7D%22%20%3Aradius%3D%22300%22%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A",description:"%3Cp%3E%E5%9C%A8%E5%9C%B0%E5%9B%BE%E4%B8%8A%E6%B7%BB%E5%8A%A0%E5%9C%86%E5%BD%A2%3C%2Fp%3E%0A"},{default:u(()=>[E]),_:1}),C,t("table",h,[_,t("tbody",null,[k,D,F,m,b,g,v,A,B,y,t("tr",null,[f,T,P,q,S,t("td",null,[l(d,{type:"tip",text:"^2.2.0"})])])])]),x])}const j=o(p,[["render",N]]);export{R as __pageData,j as default}; diff --git a/assets/zh-CN_components_overlay_ground-overlay.md.DUChyj6g.js b/assets/zh-CN_components_overlay_ground-overlay.md.DUChyj6g.js new file mode 100644 index 00000000..00b53722 --- /dev/null +++ b/assets/zh-CN_components_overlay_ground-overlay.md.DUChyj6g.js @@ -0,0 +1,5 @@ +import{_ as E,c as C,j as n,a,I as s,w as l,al as o,D as p,o as c}from"./chunks/framework.n6hqIsqL.js";const u="/vue3-baidu-map-gl/bounds.svg",N=JSON.parse('{"title":"BGroundOverlay 地面叠加层","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/overlay/ground-overlay.md","filePath":"zh-CN/components/overlay/ground-overlay.md","lastUpdated":1724785300000}'),r={name:"zh-CN/components/overlay/ground-overlay.md"},i={id:"bgroundoverlay-地面叠加层",tabindex:"-1"},D=n("a",{class:"header-anchor",href:"#bgroundoverlay-地面叠加层","aria-label":'Permalink to "BGroundOverlay 地面叠加层 "'},"​",-1),k=o('

在地图底面上叠加覆盖物,覆盖物可以是图片、自定义 Canvas、视频。

ts
import { BGroundOverlay } from 'vue3-baidu-map-gl'

组件示例

',3),F=n("p",null,"overlay/groundOverlay",-1),A=n("h2",{id:"动态组件-props",tabindex:"-1"},[a("动态组件 Props "),n("a",{class:"header-anchor",href:"#动态组件-props","aria-label":'Permalink to "动态组件 Props"'},"​")],-1),d={tabindex:"0"},h=n("thead",null,[n("tr",null,[n("th",null,"属性"),n("th",null,"说明"),n("th",null,"类型"),n("th",null,"默认值"),n("th",null,"版本")])],-1),y=n("tr",null,[n("td",null,"type"),n("td",null,"地面叠加物类型"),n("td",null,[n("code",null,"video | canvas | image")]),n("td",null,[n("code",null,"required")]),n("td",null,"-")],-1),g=n("tr",null,[n("td",null,"url"),n("td",null,"叠加物 image url、video url 或者自定义的 canvas 对象"),n("td",null,[n("a",{href:"#GroundOverlayUrl"},[n("code",null,"GroundOverlayUrl")])]),n("td",null,[n("code",null,"required")]),n("td",null,"-")],-1),v=n("tr",null,[n("td",null,"startPoint"),n("td",null,[a("显示区域开始点,见"),n("a",{href:"#bounds-图示"},"图示")]),n("td",null,[n("code",null,"{ lng: number, lat: number}")]),n("td",null,[n("code",null,"required")]),n("td",null,"-")],-1),m=n("tr",null,[n("td",null,"endPoint"),n("td",null,[a("显示区域结束点,见"),n("a",{href:"#bounds-图示"},"图示")]),n("td",null,[n("code",null,"{ lng: number, lat: number}")]),n("td",null,[n("code",null,"required")]),n("td",null,"-")],-1),B=n("tr",null,[n("td",null,"autoCenter"),n("td",null,"是否自动根据地面叠加物显示区域居中地图"),n("td",null,[n("code",null,"boolean ")]),n("td",null,[n("code",null,"true")]),n("td",null,"-")],-1),b=n("tr",null,[n("td",null,"opacity"),n("td",null,"透明度,范围 0-1"),n("td",null,[n("code",null,"number")]),n("td"),n("td",null,"-")],-1),_=n("td",null,"visible",-1),f=n("td",null,"是否显示",-1),x=n("td",null,[n("code",null,"boolean")],-1),P=n("td",null,[n("code",null,"true")],-1),q=o('

bounds 图示


GroundOverlayUrl

ts
export type GroundOverlayUrl =
+  | string
+  | HTMLCanvasElement
+  | Ref<HTMLCanvasElement | string>
+  | (() => HTMLCanvasElement | Ref<HTMLCanvasElement | string>)

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。 当双击时,产生的事件序列为: click -> click -> dblclick ((e: Event) => void)
dblclick鼠标左键双击事件的回调函数 ((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数 ((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数 ((e: Event) => void)
mousemove鼠标指针在该覆盖物移动的事件的回调函数 ((e: Event) => void)
`,7);function O(T,S,w,z,G,M){const t=p("Badge"),e=p("Demo");return c(),C("div",null,[n("h1",i,[a("BGroundOverlay 地面叠加层 "),s(t,{type:"tip",text:"^0.0.32"}),a(),D]),k,s(e,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%E5%9C%B0%E9%9D%A2%E5%8F%A0%E5%8A%A0%E5%B1%82%E7%B1%BB%E5%9E%8B%EF%BC%9A%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eselect%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ename%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eid%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EactiveKey%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eimage%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3Eimage%20%E5%9B%BE%E7%89%87%E5%8F%A0%E5%8A%A0%E5%B1%82%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Evideo%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3Evideo%20%E8%A7%86%E9%A2%91%E5%8F%A0%E5%8A%A0%E5%B1%82%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ecanvas%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3Ecanvas%20%E7%94%BB%E5%B8%83%E5%8F%A0%E5%8A%A0%E5%B1%82%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eselect%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EnoAnimation%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AdisplayOptions%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%0A%20%20%20%20%20%20%20%20poiText%3A%20false%2C%20%2F%2F%20%E9%9A%90%E8%97%8Fpoi%E6%A0%87%E6%B3%A8%0A%20%20%20%20%20%20%20%20poiIcon%3A%20false%2C%20%2F%2F%20%E9%9A%90%E8%97%8Fpoi%E5%9B%BE%E6%A0%87%0A%20%20%20%20%20%20%20%20building%3A%20false%20%2F%2F%20%E9%9A%90%E8%97%8F%E6%A5%BC%E5%9D%97%0A%20%20%20%20%20%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Atilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EgroundOverlay.tilt%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EgroundOverlay.zoom%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EgroundOverlay.startPoint%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eicon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estart%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aoffset%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20x%3A%200%2C%20y%3A%20-16%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EgroundOverlay.endPoint%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eicon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eend%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aoffset%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20x%3A%200%2C%20y%3A%20-16%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBGroundOverlay%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EautoCenter%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Atype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EactiveKey%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AstartPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EgroundOverlay.startPoint%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AendPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EgroundOverlay.endPoint%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aurl%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EgroundOverlay.url%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aopacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EgroundOverlay.opacity%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBLabel%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EactiveKey%20%3D%3D%3D%20'canvas'%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Econtent%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E6%97%A5%E5%9D%9B%E5%85%AC%E5%9B%AD%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lng%3A%20116.449921%2C%20lat%3A%2039.921324%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Astyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%0A%20%20%20%20%20%20%20%20%20%20color%3A%20'%23fff'%2C%0A%20%20%20%20%20%20%20%20%20%20borderWidth%3A%20'1px'%2C%0A%20%20%20%20%20%20%20%20%20%20borderRadius%3A%20'5px'%2C%0A%20%20%20%20%20%20%20%20%20%20borderColor%3A%20'%23fff'%2C%0A%20%20%20%20%20%20%20%20%20%20backgroundColor%3A%20'%2379a913'%2C%0A%20%20%20%20%20%20%20%20%20%20fontSize%3A%20'16px'%2C%0A%20%20%20%20%20%20%20%20%20%20height%3A%20'30px'%2C%0A%20%20%20%20%20%20%20%20%20%20lineHeight%3A%20'30px'%0A%20%20%20%20%20%20%20%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20computed%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20activeKey%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'image'%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%7C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'canvas'%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%7C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'video'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'canvas'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20groundOverlays%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecanvas%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ezoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E17%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eopacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EstartPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.447717%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E39.919173%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EendPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.453125%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E39.923475%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20function-variable%20function%22%3Eurl%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Evar%3C%2Fspan%3E%20textureCanvas%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20document%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EcreateElement%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'canvas'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20textureCanvas%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Ewidth%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20textureCanvas%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eheight%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E200%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Evar%3C%2Fspan%3E%20ctx%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20textureCanvas%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EgetContext%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'2d'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E!%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20ctx%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EfillStyle%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%2379a913'%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20ctx%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EstrokeStyle%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'white'%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20ctx%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3ElineWidth%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E6%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20ctx%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3ElineCap%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'square'%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20ctx%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EfillRect%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E200%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E200%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20ctx%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EmoveTo%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E50%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E50%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20ctx%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3ElineTo%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E150%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E50%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20ctx%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3ElineTo%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E150%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E150%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20ctx%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3ElineTo%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E50%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E150%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20ctx%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3ElineTo%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E50%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E50%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20ctx%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Estroke%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Ereturn%3C%2Fspan%3E%20textureCanvas%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eimage%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E45%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ezoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E18%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eopacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EstartPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E117.19635%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E36.24093%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EendPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E117.2035%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E36.24764%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eurl%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%2Fvue3-baidu-map-gl%2Fshouhuimap.png'%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Evideo%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ezoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E4%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eopacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.5%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EstartPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E94.582033%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E-%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E7.989754%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EendPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E145.358572%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E30.813867%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eurl%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%2Fvue3-baidu-map-gl%2Fcloud.mov'%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20groundOverlay%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Ecomputed%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Ereturn%3C%2Fspan%3E%20groundOverlays%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3EactiveKey%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/groundOverlay","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%E5%9C%B0%E9%9D%A2%E5%8F%A0%E5%8A%A0%E5%B1%82%E7%B1%BB%E5%9E%8B%EF%BC%9A%0A%20%20%20%20%3Cselect%20class%3D%22mySelect%22%20name%3D%22%22%20id%3D%22%22%20v-model%3D%22activeKey%22%3E%0A%20%20%20%20%20%20%3Coption%20value%3D%22image%22%3Eimage%20%E5%9B%BE%E7%89%87%E5%8F%A0%E5%8A%A0%E5%B1%82%3C%2Foption%3E%0A%20%20%20%20%20%20%3Coption%20value%3D%22video%22%3Evideo%20%E8%A7%86%E9%A2%91%E5%8F%A0%E5%8A%A0%E5%B1%82%3C%2Foption%3E%0A%20%20%20%20%20%20%3Coption%20value%3D%22canvas%22%3Ecanvas%20%E7%94%BB%E5%B8%83%E5%8F%A0%E5%8A%A0%E5%B1%82%3C%2Foption%3E%0A%20%20%20%20%3C%2Fselect%3E%0A%20%20%20%20%3CBMap%0A%20%20%20%20%20%20v-bind%3D%22%24attrs%22%0A%20%20%20%20%20%20enableScrollWheelZoom%0A%20%20%20%20%20%20noAnimation%0A%20%20%20%20%20%20%3AdisplayOptions%3D%22%7B%0A%20%20%20%20%20%20%20%20poiText%3A%20false%2C%20%2F%2F%20%E9%9A%90%E8%97%8Fpoi%E6%A0%87%E6%B3%A8%0A%20%20%20%20%20%20%20%20poiIcon%3A%20false%2C%20%2F%2F%20%E9%9A%90%E8%97%8Fpoi%E5%9B%BE%E6%A0%87%0A%20%20%20%20%20%20%20%20building%3A%20false%20%2F%2F%20%E9%9A%90%E8%97%8F%E6%A5%BC%E5%9D%97%0A%20%20%20%20%20%20%7D%22%0A%20%20%20%20%20%20%3Atilt%3D%22groundOverlay.tilt%22%0A%20%20%20%20%20%20%3Azoom%3D%22groundOverlay.zoom%22%0A%20%20%20%20%3E%0A%20%20%20%20%20%20%3CBMarker%20%3Aposition%3D%22groundOverlay.startPoint%22%20icon%3D%22start%22%20%3Aoffset%3D%22%7B%20x%3A%200%2C%20y%3A%20-16%20%7D%22%20%2F%3E%0A%20%20%20%20%20%20%3CBMarker%20%3Aposition%3D%22groundOverlay.endPoint%22%20icon%3D%22end%22%20%3Aoffset%3D%22%7B%20x%3A%200%2C%20y%3A%20-16%20%7D%22%20%2F%3E%0A%20%20%20%20%20%20%3CBGroundOverlay%0A%20%20%20%20%20%20%20%20autoCenter%0A%20%20%20%20%20%20%20%20%3Atype%3D%22activeKey%22%0A%20%20%20%20%20%20%20%20%3AstartPoint%3D%22groundOverlay.startPoint%22%0A%20%20%20%20%20%20%20%20%3AendPoint%3D%22groundOverlay.endPoint%22%0A%20%20%20%20%20%20%20%20%3Aurl%3D%22groundOverlay.url%22%0A%20%20%20%20%20%20%20%20%3Aopacity%3D%22groundOverlay.opacity%22%0A%20%20%20%20%20%20%2F%3E%0A%20%20%20%20%20%20%3CBLabel%0A%20%20%20%20%20%20%20%20v-if%3D%22activeKey%20%3D%3D%3D%20'canvas'%22%0A%20%20%20%20%20%20%20%20content%3D%22%E6%97%A5%E5%9D%9B%E5%85%AC%E5%9B%AD%22%0A%20%20%20%20%20%20%20%20%3Aposition%3D%22%7B%20lng%3A%20116.449921%2C%20lat%3A%2039.921324%20%7D%22%0A%20%20%20%20%20%20%20%20%3Astyle%3D%22%7B%0A%20%20%20%20%20%20%20%20%20%20color%3A%20'%23fff'%2C%0A%20%20%20%20%20%20%20%20%20%20borderWidth%3A%20'1px'%2C%0A%20%20%20%20%20%20%20%20%20%20borderRadius%3A%20'5px'%2C%0A%20%20%20%20%20%20%20%20%20%20borderColor%3A%20'%23fff'%2C%0A%20%20%20%20%20%20%20%20%20%20backgroundColor%3A%20'%2379a913'%2C%0A%20%20%20%20%20%20%20%20%20%20fontSize%3A%20'16px'%2C%0A%20%20%20%20%20%20%20%20%20%20height%3A%20'30px'%2C%0A%20%20%20%20%20%20%20%20%20%20lineHeight%3A%20'30px'%0A%20%20%20%20%20%20%20%20%7D%22%0A%20%20%20%20%20%20%2F%3E%0A%20%20%20%20%3C%2FBMap%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20ref%2C%20computed%20%7D%20from%20'vue'%0A%0A%20%20const%20activeKey%20%3D%20ref%3C'image'%20%7C%20'canvas'%20%7C%20'video'%3E('canvas')%0A%0A%20%20const%20groundOverlays%20%3D%20ref(%7B%0A%20%20%20%20canvas%3A%20%7B%0A%20%20%20%20%20%20tilt%3A%200%2C%0A%20%20%20%20%20%20zoom%3A%2017%2C%0A%20%20%20%20%20%20opacity%3A%201%2C%0A%20%20%20%20%20%20startPoint%3A%20%7B%20lng%3A%20116.447717%2C%20lat%3A%2039.919173%20%7D%2C%0A%20%20%20%20%20%20endPoint%3A%20%7B%20lng%3A%20116.453125%2C%20lat%3A%2039.923475%20%7D%2C%0A%20%20%20%20%20%20url%3A%20()%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20var%20textureCanvas%20%3D%20document.createElement('canvas')%0A%20%20%20%20%20%20%20%20textureCanvas.width%20%3D%20textureCanvas.height%20%3D%20200%0A%20%20%20%20%20%20%20%20var%20ctx%20%3D%20textureCanvas.getContext('2d')!%0A%20%20%20%20%20%20%20%20ctx.fillStyle%20%3D%20'%2379a913'%0A%20%20%20%20%20%20%20%20ctx.strokeStyle%20%3D%20'white'%0A%20%20%20%20%20%20%20%20ctx.lineWidth%20%3D%206%0A%20%20%20%20%20%20%20%20ctx.lineCap%20%3D%20'square'%0A%20%20%20%20%20%20%20%20ctx.fillRect(0%2C%200%2C%20200%2C%20200)%0A%20%20%20%20%20%20%20%20ctx.moveTo(50%2C%2050)%0A%20%20%20%20%20%20%20%20ctx.lineTo(150%2C%2050)%0A%20%20%20%20%20%20%20%20ctx.lineTo(150%2C%20150)%0A%20%20%20%20%20%20%20%20ctx.lineTo(50%2C%20150)%0A%20%20%20%20%20%20%20%20ctx.lineTo(50%2C%2050)%0A%20%20%20%20%20%20%20%20ctx.stroke()%0A%20%20%20%20%20%20%20%20return%20textureCanvas%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%2C%0A%20%20%20%20image%3A%20%7B%0A%20%20%20%20%20%20tilt%3A%2045%2C%0A%20%20%20%20%20%20zoom%3A%2018%2C%0A%20%20%20%20%20%20opacity%3A%201%2C%0A%20%20%20%20%20%20startPoint%3A%20%7B%20lng%3A%20117.19635%2C%20lat%3A%2036.24093%20%7D%2C%0A%20%20%20%20%20%20endPoint%3A%20%7B%20lng%3A%20117.2035%2C%20lat%3A%2036.24764%20%7D%2C%0A%20%20%20%20%20%20url%3A%20'%2Fvue3-baidu-map-gl%2Fshouhuimap.png'%0A%20%20%20%20%7D%2C%0A%20%20%20%20video%3A%20%7B%0A%20%20%20%20%20%20tilt%3A%200%2C%0A%20%20%20%20%20%20zoom%3A%204%2C%0A%20%20%20%20%20%20opacity%3A%200.5%2C%0A%20%20%20%20%20%20startPoint%3A%20%7B%20lng%3A%2094.582033%2C%20lat%3A%20-7.989754%20%7D%2C%0A%20%20%20%20%20%20endPoint%3A%20%7B%20lng%3A%20145.358572%2C%20lat%3A%2030.813867%20%7D%2C%0A%20%20%20%20%20%20url%3A%20'%2Fvue3-baidu-map-gl%2Fcloud.mov'%0A%20%20%20%20%7D%0A%20%20%7D)%0A%0A%20%20const%20groundOverlay%20%3D%20computed(()%20%3D%3E%20%7B%0A%20%20%20%20return%20groundOverlays.value%5BactiveKey.value%5D%0A%20%20%7D)%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E5%9C%A8%E5%9C%B0%E5%9B%BE%E4%B8%8A%E6%B7%BB%E5%8A%A0%E4%B8%89%E7%A7%8D%E4%B8%8D%E5%90%8C%E7%B1%BB%E5%9E%8B%E7%9A%84%E5%9C%B0%E9%9D%A2%E5%8F%A0%E5%8A%A0%E7%89%A9%EF%BC%8C%E5%8F%AF%E9%80%9A%E8%BF%87%E4%B8%8B%E6%8B%89%E6%A1%86%E5%88%87%E6%8D%A2%E6%98%BE%E7%A4%BA%E4%B8%8D%E5%90%8C%E7%B1%BB%E5%9E%8B%3C%2Fp%3E%0A"},{default:l(()=>[F]),_:1}),A,n("table",d,[h,n("tbody",null,[y,g,v,m,B,b,n("tr",null,[_,f,x,P,n("td",null,[s(t,{type:"tip",text:"^2.2.0"})])])])]),q])}const R=E(r,[["render",O]]);export{N as __pageData,R as default}; diff --git a/assets/zh-CN_components_overlay_ground-overlay.md.DUChyj6g.lean.js b/assets/zh-CN_components_overlay_ground-overlay.md.DUChyj6g.lean.js new file mode 100644 index 00000000..f6a5c3c1 --- /dev/null +++ b/assets/zh-CN_components_overlay_ground-overlay.md.DUChyj6g.lean.js @@ -0,0 +1 @@ +import{_ as E,c as C,j as n,a,I as s,w as l,al as o,D as p,o as c}from"./chunks/framework.n6hqIsqL.js";const u="/vue3-baidu-map-gl/bounds.svg",N=JSON.parse('{"title":"BGroundOverlay 地面叠加层","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/overlay/ground-overlay.md","filePath":"zh-CN/components/overlay/ground-overlay.md","lastUpdated":1724785300000}'),r={name:"zh-CN/components/overlay/ground-overlay.md"},i={id:"bgroundoverlay-地面叠加层",tabindex:"-1"},D=n("a",{class:"header-anchor",href:"#bgroundoverlay-地面叠加层","aria-label":'Permalink to "BGroundOverlay 地面叠加层 "'},"​",-1),k=o("",3),F=n("p",null,"overlay/groundOverlay",-1),A=n("h2",{id:"动态组件-props",tabindex:"-1"},[a("动态组件 Props "),n("a",{class:"header-anchor",href:"#动态组件-props","aria-label":'Permalink to "动态组件 Props"'},"​")],-1),d={tabindex:"0"},h=n("thead",null,[n("tr",null,[n("th",null,"属性"),n("th",null,"说明"),n("th",null,"类型"),n("th",null,"默认值"),n("th",null,"版本")])],-1),y=n("tr",null,[n("td",null,"type"),n("td",null,"地面叠加物类型"),n("td",null,[n("code",null,"video | canvas | image")]),n("td",null,[n("code",null,"required")]),n("td",null,"-")],-1),g=n("tr",null,[n("td",null,"url"),n("td",null,"叠加物 image url、video url 或者自定义的 canvas 对象"),n("td",null,[n("a",{href:"#GroundOverlayUrl"},[n("code",null,"GroundOverlayUrl")])]),n("td",null,[n("code",null,"required")]),n("td",null,"-")],-1),v=n("tr",null,[n("td",null,"startPoint"),n("td",null,[a("显示区域开始点,见"),n("a",{href:"#bounds-图示"},"图示")]),n("td",null,[n("code",null,"{ lng: number, lat: number}")]),n("td",null,[n("code",null,"required")]),n("td",null,"-")],-1),m=n("tr",null,[n("td",null,"endPoint"),n("td",null,[a("显示区域结束点,见"),n("a",{href:"#bounds-图示"},"图示")]),n("td",null,[n("code",null,"{ lng: number, lat: number}")]),n("td",null,[n("code",null,"required")]),n("td",null,"-")],-1),B=n("tr",null,[n("td",null,"autoCenter"),n("td",null,"是否自动根据地面叠加物显示区域居中地图"),n("td",null,[n("code",null,"boolean ")]),n("td",null,[n("code",null,"true")]),n("td",null,"-")],-1),b=n("tr",null,[n("td",null,"opacity"),n("td",null,"透明度,范围 0-1"),n("td",null,[n("code",null,"number")]),n("td"),n("td",null,"-")],-1),_=n("td",null,"visible",-1),f=n("td",null,"是否显示",-1),x=n("td",null,[n("code",null,"boolean")],-1),P=n("td",null,[n("code",null,"true")],-1),q=o("",7);function O(T,S,w,z,G,M){const t=p("Badge"),e=p("Demo");return c(),C("div",null,[n("h1",i,[a("BGroundOverlay 地面叠加层 "),s(t,{type:"tip",text:"^0.0.32"}),a(),D]),k,s(e,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%E5%9C%B0%E9%9D%A2%E5%8F%A0%E5%8A%A0%E5%B1%82%E7%B1%BB%E5%9E%8B%EF%BC%9A%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eselect%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ename%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eid%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EactiveKey%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eimage%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3Eimage%20%E5%9B%BE%E7%89%87%E5%8F%A0%E5%8A%A0%E5%B1%82%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Evideo%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3Evideo%20%E8%A7%86%E9%A2%91%E5%8F%A0%E5%8A%A0%E5%B1%82%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ecanvas%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3Ecanvas%20%E7%94%BB%E5%B8%83%E5%8F%A0%E5%8A%A0%E5%B1%82%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eselect%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EnoAnimation%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AdisplayOptions%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%0A%20%20%20%20%20%20%20%20poiText%3A%20false%2C%20%2F%2F%20%E9%9A%90%E8%97%8Fpoi%E6%A0%87%E6%B3%A8%0A%20%20%20%20%20%20%20%20poiIcon%3A%20false%2C%20%2F%2F%20%E9%9A%90%E8%97%8Fpoi%E5%9B%BE%E6%A0%87%0A%20%20%20%20%20%20%20%20building%3A%20false%20%2F%2F%20%E9%9A%90%E8%97%8F%E6%A5%BC%E5%9D%97%0A%20%20%20%20%20%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Atilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EgroundOverlay.tilt%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EgroundOverlay.zoom%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EgroundOverlay.startPoint%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eicon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estart%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aoffset%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20x%3A%200%2C%20y%3A%20-16%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EgroundOverlay.endPoint%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eicon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eend%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aoffset%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20x%3A%200%2C%20y%3A%20-16%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBGroundOverlay%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EautoCenter%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Atype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EactiveKey%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AstartPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EgroundOverlay.startPoint%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AendPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EgroundOverlay.endPoint%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aurl%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EgroundOverlay.url%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aopacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EgroundOverlay.opacity%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBLabel%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EactiveKey%20%3D%3D%3D%20'canvas'%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Econtent%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E6%97%A5%E5%9D%9B%E5%85%AC%E5%9B%AD%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lng%3A%20116.449921%2C%20lat%3A%2039.921324%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Astyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%0A%20%20%20%20%20%20%20%20%20%20color%3A%20'%23fff'%2C%0A%20%20%20%20%20%20%20%20%20%20borderWidth%3A%20'1px'%2C%0A%20%20%20%20%20%20%20%20%20%20borderRadius%3A%20'5px'%2C%0A%20%20%20%20%20%20%20%20%20%20borderColor%3A%20'%23fff'%2C%0A%20%20%20%20%20%20%20%20%20%20backgroundColor%3A%20'%2379a913'%2C%0A%20%20%20%20%20%20%20%20%20%20fontSize%3A%20'16px'%2C%0A%20%20%20%20%20%20%20%20%20%20height%3A%20'30px'%2C%0A%20%20%20%20%20%20%20%20%20%20lineHeight%3A%20'30px'%0A%20%20%20%20%20%20%20%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20computed%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20activeKey%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'image'%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%7C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'canvas'%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%7C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'video'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'canvas'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20groundOverlays%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecanvas%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ezoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E17%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eopacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EstartPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.447717%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E39.919173%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EendPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.453125%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E39.923475%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20function-variable%20function%22%3Eurl%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Evar%3C%2Fspan%3E%20textureCanvas%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20document%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EcreateElement%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'canvas'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20textureCanvas%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Ewidth%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20textureCanvas%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eheight%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E200%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Evar%3C%2Fspan%3E%20ctx%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20textureCanvas%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EgetContext%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'2d'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E!%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20ctx%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EfillStyle%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%2379a913'%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20ctx%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EstrokeStyle%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'white'%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20ctx%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3ElineWidth%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E6%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20ctx%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3ElineCap%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'square'%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20ctx%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EfillRect%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E200%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E200%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20ctx%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EmoveTo%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E50%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E50%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20ctx%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3ElineTo%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E150%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E50%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20ctx%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3ElineTo%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E150%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E150%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20ctx%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3ElineTo%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E50%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E150%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20ctx%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3ElineTo%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E50%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E50%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20ctx%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Estroke%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Ereturn%3C%2Fspan%3E%20textureCanvas%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eimage%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E45%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ezoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E18%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eopacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EstartPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E117.19635%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E36.24093%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EendPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E117.2035%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E36.24764%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eurl%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%2Fvue3-baidu-map-gl%2Fshouhuimap.png'%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Evideo%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ezoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E4%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eopacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.5%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EstartPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E94.582033%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E-%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E7.989754%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EendPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E145.358572%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E30.813867%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eurl%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%2Fvue3-baidu-map-gl%2Fcloud.mov'%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20groundOverlay%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Ecomputed%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Ereturn%3C%2Fspan%3E%20groundOverlays%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3EactiveKey%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/groundOverlay","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%E5%9C%B0%E9%9D%A2%E5%8F%A0%E5%8A%A0%E5%B1%82%E7%B1%BB%E5%9E%8B%EF%BC%9A%0A%20%20%20%20%3Cselect%20class%3D%22mySelect%22%20name%3D%22%22%20id%3D%22%22%20v-model%3D%22activeKey%22%3E%0A%20%20%20%20%20%20%3Coption%20value%3D%22image%22%3Eimage%20%E5%9B%BE%E7%89%87%E5%8F%A0%E5%8A%A0%E5%B1%82%3C%2Foption%3E%0A%20%20%20%20%20%20%3Coption%20value%3D%22video%22%3Evideo%20%E8%A7%86%E9%A2%91%E5%8F%A0%E5%8A%A0%E5%B1%82%3C%2Foption%3E%0A%20%20%20%20%20%20%3Coption%20value%3D%22canvas%22%3Ecanvas%20%E7%94%BB%E5%B8%83%E5%8F%A0%E5%8A%A0%E5%B1%82%3C%2Foption%3E%0A%20%20%20%20%3C%2Fselect%3E%0A%20%20%20%20%3CBMap%0A%20%20%20%20%20%20v-bind%3D%22%24attrs%22%0A%20%20%20%20%20%20enableScrollWheelZoom%0A%20%20%20%20%20%20noAnimation%0A%20%20%20%20%20%20%3AdisplayOptions%3D%22%7B%0A%20%20%20%20%20%20%20%20poiText%3A%20false%2C%20%2F%2F%20%E9%9A%90%E8%97%8Fpoi%E6%A0%87%E6%B3%A8%0A%20%20%20%20%20%20%20%20poiIcon%3A%20false%2C%20%2F%2F%20%E9%9A%90%E8%97%8Fpoi%E5%9B%BE%E6%A0%87%0A%20%20%20%20%20%20%20%20building%3A%20false%20%2F%2F%20%E9%9A%90%E8%97%8F%E6%A5%BC%E5%9D%97%0A%20%20%20%20%20%20%7D%22%0A%20%20%20%20%20%20%3Atilt%3D%22groundOverlay.tilt%22%0A%20%20%20%20%20%20%3Azoom%3D%22groundOverlay.zoom%22%0A%20%20%20%20%3E%0A%20%20%20%20%20%20%3CBMarker%20%3Aposition%3D%22groundOverlay.startPoint%22%20icon%3D%22start%22%20%3Aoffset%3D%22%7B%20x%3A%200%2C%20y%3A%20-16%20%7D%22%20%2F%3E%0A%20%20%20%20%20%20%3CBMarker%20%3Aposition%3D%22groundOverlay.endPoint%22%20icon%3D%22end%22%20%3Aoffset%3D%22%7B%20x%3A%200%2C%20y%3A%20-16%20%7D%22%20%2F%3E%0A%20%20%20%20%20%20%3CBGroundOverlay%0A%20%20%20%20%20%20%20%20autoCenter%0A%20%20%20%20%20%20%20%20%3Atype%3D%22activeKey%22%0A%20%20%20%20%20%20%20%20%3AstartPoint%3D%22groundOverlay.startPoint%22%0A%20%20%20%20%20%20%20%20%3AendPoint%3D%22groundOverlay.endPoint%22%0A%20%20%20%20%20%20%20%20%3Aurl%3D%22groundOverlay.url%22%0A%20%20%20%20%20%20%20%20%3Aopacity%3D%22groundOverlay.opacity%22%0A%20%20%20%20%20%20%2F%3E%0A%20%20%20%20%20%20%3CBLabel%0A%20%20%20%20%20%20%20%20v-if%3D%22activeKey%20%3D%3D%3D%20'canvas'%22%0A%20%20%20%20%20%20%20%20content%3D%22%E6%97%A5%E5%9D%9B%E5%85%AC%E5%9B%AD%22%0A%20%20%20%20%20%20%20%20%3Aposition%3D%22%7B%20lng%3A%20116.449921%2C%20lat%3A%2039.921324%20%7D%22%0A%20%20%20%20%20%20%20%20%3Astyle%3D%22%7B%0A%20%20%20%20%20%20%20%20%20%20color%3A%20'%23fff'%2C%0A%20%20%20%20%20%20%20%20%20%20borderWidth%3A%20'1px'%2C%0A%20%20%20%20%20%20%20%20%20%20borderRadius%3A%20'5px'%2C%0A%20%20%20%20%20%20%20%20%20%20borderColor%3A%20'%23fff'%2C%0A%20%20%20%20%20%20%20%20%20%20backgroundColor%3A%20'%2379a913'%2C%0A%20%20%20%20%20%20%20%20%20%20fontSize%3A%20'16px'%2C%0A%20%20%20%20%20%20%20%20%20%20height%3A%20'30px'%2C%0A%20%20%20%20%20%20%20%20%20%20lineHeight%3A%20'30px'%0A%20%20%20%20%20%20%20%20%7D%22%0A%20%20%20%20%20%20%2F%3E%0A%20%20%20%20%3C%2FBMap%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20ref%2C%20computed%20%7D%20from%20'vue'%0A%0A%20%20const%20activeKey%20%3D%20ref%3C'image'%20%7C%20'canvas'%20%7C%20'video'%3E('canvas')%0A%0A%20%20const%20groundOverlays%20%3D%20ref(%7B%0A%20%20%20%20canvas%3A%20%7B%0A%20%20%20%20%20%20tilt%3A%200%2C%0A%20%20%20%20%20%20zoom%3A%2017%2C%0A%20%20%20%20%20%20opacity%3A%201%2C%0A%20%20%20%20%20%20startPoint%3A%20%7B%20lng%3A%20116.447717%2C%20lat%3A%2039.919173%20%7D%2C%0A%20%20%20%20%20%20endPoint%3A%20%7B%20lng%3A%20116.453125%2C%20lat%3A%2039.923475%20%7D%2C%0A%20%20%20%20%20%20url%3A%20()%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20var%20textureCanvas%20%3D%20document.createElement('canvas')%0A%20%20%20%20%20%20%20%20textureCanvas.width%20%3D%20textureCanvas.height%20%3D%20200%0A%20%20%20%20%20%20%20%20var%20ctx%20%3D%20textureCanvas.getContext('2d')!%0A%20%20%20%20%20%20%20%20ctx.fillStyle%20%3D%20'%2379a913'%0A%20%20%20%20%20%20%20%20ctx.strokeStyle%20%3D%20'white'%0A%20%20%20%20%20%20%20%20ctx.lineWidth%20%3D%206%0A%20%20%20%20%20%20%20%20ctx.lineCap%20%3D%20'square'%0A%20%20%20%20%20%20%20%20ctx.fillRect(0%2C%200%2C%20200%2C%20200)%0A%20%20%20%20%20%20%20%20ctx.moveTo(50%2C%2050)%0A%20%20%20%20%20%20%20%20ctx.lineTo(150%2C%2050)%0A%20%20%20%20%20%20%20%20ctx.lineTo(150%2C%20150)%0A%20%20%20%20%20%20%20%20ctx.lineTo(50%2C%20150)%0A%20%20%20%20%20%20%20%20ctx.lineTo(50%2C%2050)%0A%20%20%20%20%20%20%20%20ctx.stroke()%0A%20%20%20%20%20%20%20%20return%20textureCanvas%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%2C%0A%20%20%20%20image%3A%20%7B%0A%20%20%20%20%20%20tilt%3A%2045%2C%0A%20%20%20%20%20%20zoom%3A%2018%2C%0A%20%20%20%20%20%20opacity%3A%201%2C%0A%20%20%20%20%20%20startPoint%3A%20%7B%20lng%3A%20117.19635%2C%20lat%3A%2036.24093%20%7D%2C%0A%20%20%20%20%20%20endPoint%3A%20%7B%20lng%3A%20117.2035%2C%20lat%3A%2036.24764%20%7D%2C%0A%20%20%20%20%20%20url%3A%20'%2Fvue3-baidu-map-gl%2Fshouhuimap.png'%0A%20%20%20%20%7D%2C%0A%20%20%20%20video%3A%20%7B%0A%20%20%20%20%20%20tilt%3A%200%2C%0A%20%20%20%20%20%20zoom%3A%204%2C%0A%20%20%20%20%20%20opacity%3A%200.5%2C%0A%20%20%20%20%20%20startPoint%3A%20%7B%20lng%3A%2094.582033%2C%20lat%3A%20-7.989754%20%7D%2C%0A%20%20%20%20%20%20endPoint%3A%20%7B%20lng%3A%20145.358572%2C%20lat%3A%2030.813867%20%7D%2C%0A%20%20%20%20%20%20url%3A%20'%2Fvue3-baidu-map-gl%2Fcloud.mov'%0A%20%20%20%20%7D%0A%20%20%7D)%0A%0A%20%20const%20groundOverlay%20%3D%20computed(()%20%3D%3E%20%7B%0A%20%20%20%20return%20groundOverlays.value%5BactiveKey.value%5D%0A%20%20%7D)%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E5%9C%A8%E5%9C%B0%E5%9B%BE%E4%B8%8A%E6%B7%BB%E5%8A%A0%E4%B8%89%E7%A7%8D%E4%B8%8D%E5%90%8C%E7%B1%BB%E5%9E%8B%E7%9A%84%E5%9C%B0%E9%9D%A2%E5%8F%A0%E5%8A%A0%E7%89%A9%EF%BC%8C%E5%8F%AF%E9%80%9A%E8%BF%87%E4%B8%8B%E6%8B%89%E6%A1%86%E5%88%87%E6%8D%A2%E6%98%BE%E7%A4%BA%E4%B8%8D%E5%90%8C%E7%B1%BB%E5%9E%8B%3C%2Fp%3E%0A"},{default:l(()=>[F]),_:1}),A,n("table",d,[h,n("tbody",null,[y,g,v,m,B,b,n("tr",null,[_,f,x,P,n("td",null,[s(t,{type:"tip",text:"^2.2.0"})])])])]),q])}const R=E(r,[["render",O]]);export{N as __pageData,R as default}; diff --git a/assets/zh-CN_components_overlay_infowindow.md.Ct8o2KOQ.js b/assets/zh-CN_components_overlay_infowindow.md.Ct8o2KOQ.js new file mode 100644 index 00000000..aa98e3fc --- /dev/null +++ b/assets/zh-CN_components_overlay_infowindow.md.Ct8o2KOQ.js @@ -0,0 +1 @@ +import{_ as l,c,I as t,w as o,j as a,al as p,D as e,o as u,p as D,l as i,a as F}from"./chunks/framework.n6hqIsqL.js";const R=JSON.parse('{"title":"BInfoWindow 信息窗口","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/overlay/infowindow.md","filePath":"zh-CN/components/overlay/infowindow.md","lastUpdated":1724785300000}'),k={name:"zh-CN/components/overlay/infowindow.md"},n=s=>(D("data-v-48ae9e32"),s=s(),i(),s),r=p('

BInfoWindow 信息窗口

使用 slot 模式渲染子节点向地图添加信息窗口,以及与地图相关的一些交互。

ts
import { BInfoWindow } from 'vue3-baidu-map-gl'

提示

地图上只能同时显示一个infoWindow,所以当地图上有多个infoWindow组件同时绑定v-model="true",只有最后一个 infoWindow组件会在地图上显示。

组件示例

',5),A=n(()=>a("p",null,"overlay/infowindow",-1)),d=n(()=>a("p",null,"overlay/dynmicInfoWindow",-1)),B=p('

静态组件 Props

属性说明类型默认值
offset信息窗位置偏移值。默认情况下在地图上打开的信息窗底端的尖角将指向其地理坐标,在标注上打开的信息窗底端尖角的位置取决于标注所用图标的 infoWindowOffset 属性值,您可以为信息窗添加偏移量来改变默认位置{x: number, y: number }{x: 0, y: 0 }

动态组件 Props

',4),m={tabindex:"0"},v=n(()=>a("thead",null,[a("tr",null,[a("th",null,"属性"),a("th",null,"说明"),a("th",null,"类型"),a("th",null,"可选值"),a("th",null,"默认值"),a("th",null,"版本")])],-1)),g=n(()=>a("td",null,"show",-1)),h=n(()=>a("td",null,[F("是否开启信息窗体, 支持 "),a("code",null,"v-model:show")],-1)),b=n(()=>a("td",null,[a("code",null,"boolean ")],-1)),f=n(()=>a("td",null,"-",-1)),w=n(()=>a("td",null,[a("code",null,"false")],-1)),y=n(()=>a("tr",null,[a("td",null,"position"),a("td",null,"信息窗体所在坐标"),a("td",null,[a("code",null,"{ lng: number, lat: number}[]")]),a("td",null,"-"),a("td",null,[a("code",null,"required")]),a("td",null,"-")],-1)),_=n(()=>a("tr",null,[a("td",null,"title"),a("td",null,"信息窗标题文字"),a("td",null,[a("code",null,"string")]),a("td",null,"-"),a("td",null,"-"),a("td",null,"-")],-1)),x=n(()=>a("tr",null,[a("td",null,"width"),a("td",null,"信息窗宽度,单位像素。取值范围:0, 220 - 730。如果您指定宽度为 0,则信息窗口的宽度将按照其内容自动调整"),a("td",null,[a("code",null,"number")]),a("td",null,[a("code",null,"220-730")]),a("td",null,[a("code",null,"0")]),a("td",null,"-")],-1)),q=n(()=>a("tr",null,[a("td",null,"height"),a("td",null,"信息窗高度,单位像素。取值范围:0, 60 - 650。如果您指定高度为 0,则信息窗口的高度将按照其内容自动调整"),a("td",null,[a("code",null,"number")]),a("td",null,[a("code",null,"60-650")]),a("td",null,[a("code",null,"0")]),a("td",null,"-")],-1)),W=n(()=>a("tr",null,[a("td",null,"enableAutoPan"),a("td",null,"是否开启信息窗口打开时地图自动移动"),a("td",null,[a("code",null,"boolean")]),a("td",null,"-"),a("td",null,[a("code",null," true")]),a("td",null,"-")],-1)),I=n(()=>a("tr",null,[a("td",null,"enableCloseOnClick"),a("td",null,"是否开启点击地图关闭信息窗口"),a("td",null,[a("code",null,"boolean")]),a("td",null,"-"),a("td",null,[a("code",null," true")]),a("td",null,"-")],-1)),P=p('

组件事件

事件名说明属性
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
close信息窗口被关闭时触发此事件event{type, target, point}
open信息窗口被打开时触发此事件event{type, target, point}
clickclose点击信息窗口的关闭按钮时触发此事件event{type, target}
',2);function T(s,M,S,N,V,j){const E=e("Demo"),C=e("Badge");return u(),c("div",null,[r,t(E,{class:"p-top",source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Einput%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Echeckbox%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eshow%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%E6%96%87%E5%AD%97%E5%86%85%E5%AE%B9infoWindow%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Einput%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Echeckbox%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eshow1%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%E5%8A%A8%E6%80%81%E5%86%85%E5%AE%B9infoWindow%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Einput%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Echeckbox%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eshow2%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%E5%9B%BE%E6%96%87%E7%BB%84%E5%90%88%E6%8E%92%E7%89%88infoWindow%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBInfoWindow%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Cspan%20class%3D%22token%20namespace%22%3Ev-model%3A%3C%2Fspan%3Eshow%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eshow%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableMaximize%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lng%3A%20116.404%2C%20lat%3A%2039.925%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etitle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E6%96%87%E5%AD%97%E5%86%85%E5%AE%B9%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%E5%9C%B0%E5%9D%80%EF%BC%9A%E5%8C%97%E4%BA%AC%E5%B8%82%E4%B8%9C%E5%9F%8E%E5%8C%BA%E7%8E%8B%E5%BA%9C%E4%BA%95%E5%A4%A7%E8%A1%9788%E5%8F%B7%E4%B9%90%E5%A4%A9%E9%93%B6%E6%B3%B0%E7%99%BE%E8%B4%A7%E5%85%AB%E5%B1%82%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%23maxContent%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eh1%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E6%9C%80%E5%A4%A7%E5%8C%96%E5%86%85%E5%AE%B9%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eh1%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBInfoWindow%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBInfoWindow%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Cspan%20class%3D%22token%20namespace%22%3Ev-model%3A%3C%2Fspan%3Eshow%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eshow1%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lng%3A%20116.404%2C%20lat%3A%2039.925%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etitle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E5%8A%A8%E6%80%81%E5%86%85%E5%AE%B9%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eh2%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3Ecount%3A%20%7B%7B%20count%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eh2%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ecount%20%2B%3D%201%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3Ecount%2B%2B%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBInfoWindow%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBInfoWindow%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Cspan%20class%3D%22token%20namespace%22%3Ev-model%3A%3C%2Fspan%3Eshow%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eshow2%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lng%3A%20116.404%2C%20lat%3A%2039.925%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etitle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E5%9B%BE%E6%96%87%E7%BB%84%E5%90%88%E6%8E%92%E7%89%88%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eh2%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%A4%A9%E5%AE%89%E9%97%A8%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eh2%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EinfoWindow-content%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ep%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%A4%A9%E5%AE%89%E9%97%A8%E5%9D%90%E8%90%BD%E5%9C%A8%E4%B8%AD%E5%9B%BD%E5%8C%97%E4%BA%AC%E5%B8%82%E4%B8%AD%E5%BF%83%EF%BC%8C%E6%95%85%E5%AE%AB%E7%9A%84%E5%8D%97%E4%BE%A7%EF%BC%8C%E4%B8%8E%E5%A4%A9%E5%AE%89%E9%97%A8%E5%B9%BF%E5%9C%BA%E9%9A%94%E9%95%BF%E5%AE%89%E8%A1%97%E7%9B%B8%E6%9C%9B%EF%BC%8C%E6%98%AF%E6%B8%85%E6%9C%9D%E7%9A%87%E5%9F%8E%E7%9A%84%E5%A4%A7%E9%97%A8%E3%80%82..%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ep%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eimg%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ewidth%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E139%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eheight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E104%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esrc%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ehttps%3A%2F%2Flbs.baidu.com%2Fjsdemo%2Fimg%2FtianAnMen.jpg%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ealt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBInfoWindow%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20show%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Eboolean%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20show1%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Eboolean%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20show2%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Eboolean%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20count%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Enumber%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Estyle%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Escoped%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20style%22%3E%3Cspan%20class%3D%22token%20language-css%22%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Eborder-radius%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%206px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Ebackground%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%23ddd%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Eoutline%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20none%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Epadding%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%201px%205px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Efont-size%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2014px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-bottom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2010px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.infoWindow-content%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Edisplay%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20flex%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Ejustify-content%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20space-between%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Epadding%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2010px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.infoWindow-content%20p%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%200%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Eline-height%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20initial%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/infowindow","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%3Clabel%3E%0A%20%20%20%20%20%20%3Cinput%20type%3D%22checkbox%22%20v-model%3D%22show%22%20%2F%3E%0A%20%20%20%20%20%20%E6%96%87%E5%AD%97%E5%86%85%E5%AE%B9infoWindow%0A%20%20%20%20%3C%2Flabel%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3Clabel%3E%0A%20%20%20%20%20%20%3Cinput%20type%3D%22checkbox%22%20v-model%3D%22show1%22%20%2F%3E%0A%20%20%20%20%20%20%E5%8A%A8%E6%80%81%E5%86%85%E5%AE%B9infoWindow%0A%20%20%20%20%3C%2Flabel%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3Clabel%3E%0A%20%20%20%20%20%20%3Cinput%20type%3D%22checkbox%22%20v-model%3D%22show2%22%20%2F%3E%0A%20%20%20%20%20%20%E5%9B%BE%E6%96%87%E7%BB%84%E5%90%88%E6%8E%92%E7%89%88infoWindow%0A%20%20%20%20%3C%2Flabel%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20enableScrollWheelZoom%3E%0A%20%20%20%20%20%20%3CBInfoWindow%20v-model%3Ashow%3D%22show%22%20enableMaximize%20%3Aposition%3D%22%7B%20lng%3A%20116.404%2C%20lat%3A%2039.925%20%7D%22%20title%3D%22%E6%96%87%E5%AD%97%E5%86%85%E5%AE%B9%22%3E%0A%20%20%20%20%20%20%20%20%E5%9C%B0%E5%9D%80%EF%BC%9A%E5%8C%97%E4%BA%AC%E5%B8%82%E4%B8%9C%E5%9F%8E%E5%8C%BA%E7%8E%8B%E5%BA%9C%E4%BA%95%E5%A4%A7%E8%A1%9788%E5%8F%B7%E4%B9%90%E5%A4%A9%E9%93%B6%E6%B3%B0%E7%99%BE%E8%B4%A7%E5%85%AB%E5%B1%82%0A%20%20%20%20%20%20%20%20%3Ctemplate%20%23maxContent%3E%0A%20%20%20%20%20%20%20%20%20%20%3Ch1%3E%E6%9C%80%E5%A4%A7%E5%8C%96%E5%86%85%E5%AE%B9%3C%2Fh1%3E%0A%20%20%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%20%20%3C%2FBInfoWindow%3E%0A%20%20%20%20%20%20%3CBInfoWindow%20v-model%3Ashow%3D%22show1%22%20%3Aposition%3D%22%7B%20lng%3A%20116.404%2C%20lat%3A%2039.925%20%7D%22%20title%3D%22%E5%8A%A8%E6%80%81%E5%86%85%E5%AE%B9%22%3E%0A%20%20%20%20%20%20%20%20%3Ch2%3Ecount%3A%20%7B%7B%20count%20%7D%7D%3C%2Fh2%3E%0A%20%20%20%20%20%20%20%20%3Cbutton%20%40click%3D%22count%20%2B%3D%201%22%3Ecount%2B%2B%3C%2Fbutton%3E%0A%20%20%20%20%20%20%3C%2FBInfoWindow%3E%0A%20%20%20%20%20%20%3CBInfoWindow%20v-model%3Ashow%3D%22show2%22%20%3Aposition%3D%22%7B%20lng%3A%20116.404%2C%20lat%3A%2039.925%20%7D%22%20title%3D%22%E5%9B%BE%E6%96%87%E7%BB%84%E5%90%88%E6%8E%92%E7%89%88%22%3E%0A%20%20%20%20%20%20%20%20%3Ch2%3E%E5%A4%A9%E5%AE%89%E9%97%A8%3C%2Fh2%3E%0A%20%20%20%20%20%20%20%20%3Cdiv%20class%3D%22infoWindow-content%22%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cp%3E%E5%A4%A9%E5%AE%89%E9%97%A8%E5%9D%90%E8%90%BD%E5%9C%A8%E4%B8%AD%E5%9B%BD%E5%8C%97%E4%BA%AC%E5%B8%82%E4%B8%AD%E5%BF%83%EF%BC%8C%E6%95%85%E5%AE%AB%E7%9A%84%E5%8D%97%E4%BE%A7%EF%BC%8C%E4%B8%8E%E5%A4%A9%E5%AE%89%E9%97%A8%E5%B9%BF%E5%9C%BA%E9%9A%94%E9%95%BF%E5%AE%89%E8%A1%97%E7%9B%B8%E6%9C%9B%EF%BC%8C%E6%98%AF%E6%B8%85%E6%9C%9D%E7%9A%87%E5%9F%8E%E7%9A%84%E5%A4%A7%E9%97%A8%E3%80%82..%3C%2Fp%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cimg%20width%3D%22139%22%20height%3D%22104%22%20src%3D%22https%3A%2F%2Flbs.baidu.com%2Fjsdemo%2Fimg%2FtianAnMen.jpg%22%20alt%3D%22%22%20%2F%3E%0A%20%20%20%20%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%20%20%3C%2FBInfoWindow%3E%0A%20%20%20%20%3C%2FBMap%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20const%20show%20%3D%20ref%3Cboolean%3E(false)%0A%20%20const%20show1%20%3D%20ref%3Cboolean%3E(true)%0A%20%20const%20show2%20%3D%20ref%3Cboolean%3E(false)%0A%20%20const%20count%20%3D%20ref%3Cnumber%3E(1)%0A%3C%2Fscript%3E%0A%0A%3Cstyle%20scoped%3E%0A%20%20button%20%7B%0A%20%20%20%20border-radius%3A%206px%3B%0A%20%20%20%20background%3A%20%23ddd%3B%0A%20%20%20%20outline%3A%20none%3B%0A%20%20%20%20padding%3A%201px%205px%3B%0A%20%20%20%20font-size%3A%2014px%3B%0A%20%20%20%20margin-bottom%3A%2010px%3B%0A%20%20%7D%0A%20%20.infoWindow-content%20%7B%0A%20%20%20%20display%3A%20flex%3B%0A%20%20%20%20justify-content%3A%20space-between%3B%0A%20%20%20%20padding%3A%2010px%3B%0A%20%20%7D%0A%20%20.infoWindow-content%20p%20%7B%0A%20%20%20%20margin%3A%200%3B%0A%20%20%20%20line-height%3A%20initial%3B%0A%20%20%7D%0A%3C%2Fstyle%3E%0A",description:"%3Cp%3E%E9%80%9A%E8%BF%87%20slot%20%E6%8F%92%E6%A7%BD%E6%B8%B2%E6%9F%93%E4%B8%8D%E5%90%8C%E5%86%85%E5%AE%B9%20infoWindow%3C%2Fp%3E%0A"},{default:o(()=>[A]),_:1}),t(E,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.400901%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E16%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-for%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E(item%2C%20index)%20in%20markers%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eitem.position%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aicon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%60blue%24%7Bindex%20%2B%201%20as%201%20%7C%202%7D%60%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E()%20%3D%3E%20handleClick(item)%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableClicking%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBInfoWindow%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Cspan%20class%3D%22token%20namespace%22%3Ev-model%3A%3C%2Fspan%3Eshow%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eshow%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eposition%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Atitle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Etitle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableAutoPan%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableCloseOnClick%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aoffset%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%0A%20%20%20%20%20%20%20%20x%3A%200%2C%0A%20%20%20%20%20%20%20%20y%3A%20-10%0A%20%20%20%20%20%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20type%20UnwrapRef%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20BMap%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20BMarker%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20BInfoWindow%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20markers%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E39.915185%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.400101%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etitle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%9C%B0%E5%9D%80%E4%B8%80'%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E39.915185%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.400901%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etitle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%9C%B0%E5%9D%80%E4%BA%8C'%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20title%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Emarkers%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Etitle%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20position%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Emarkers%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eposition%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20show%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Eboolean%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleClick%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3E%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eitem%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20UnwrapRef%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20keyword%22%3Etypeof%3C%2Fspan%3E%20markers%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20position%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20item%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eposition%0A%20%20%20%20title%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20item%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Etitle%0A%20%20%20%20show%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/dynmicInfoWindow","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20enableScrollWheelZoom%20v-bind%3D%22%24attrs%22%20%3Acenter%3D%22%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.400901%20%7D%22%20%3Azoom%3D%2216%22%3E%0A%20%20%20%20%3CBMarker%0A%20%20%20%20%20%20v-for%3D%22(item%2C%20index)%20in%20markers%22%0A%20%20%20%20%20%20%3Aposition%3D%22item.position%22%0A%20%20%20%20%20%20%3Aicon%3D%22%60blue%24%7Bindex%20%2B%201%20as%201%20%7C%202%7D%60%22%0A%20%20%20%20%20%20%40click%3D%22()%20%3D%3E%20handleClick(item)%22%0A%20%20%20%20%20%20enableClicking%0A%20%20%20%20%2F%3E%0A%20%20%20%20%3CBInfoWindow%0A%20%20%20%20%20%20v-model%3Ashow%3D%22show%22%0A%20%20%20%20%20%20%3Aposition%3D%22position%22%0A%20%20%20%20%20%20%3Atitle%3D%22title%22%0A%20%20%20%20%20%20enableAutoPan%0A%20%20%20%20%20%20enableCloseOnClick%0A%20%20%20%20%20%20%3Aoffset%3D%22%7B%0A%20%20%20%20%20%20%20%20x%3A%200%2C%0A%20%20%20%20%20%20%20%20y%3A%20-10%0A%20%20%20%20%20%20%7D%22%0A%20%20%20%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20ref%2C%20type%20UnwrapRef%20%7D%20from%20'vue'%0A%20%20import%20%7B%20BMap%2C%20BMarker%2C%20BInfoWindow%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20let%20markers%20%3D%20ref(%5B%0A%20%20%20%20%7B%0A%20%20%20%20%20%20position%3A%20%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.400101%20%7D%2C%0A%20%20%20%20%20%20title%3A%20'%E5%9C%B0%E5%9D%80%E4%B8%80'%0A%20%20%20%20%7D%2C%0A%20%20%20%20%7B%0A%20%20%20%20%20%20position%3A%20%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.400901%20%7D%2C%0A%20%20%20%20%20%20title%3A%20'%E5%9C%B0%E5%9D%80%E4%BA%8C'%0A%20%20%20%20%7D%0A%20%20%5D)%0A%20%20const%20title%20%3D%20ref(markers.value%5B0%5D.title)%0A%20%20const%20position%20%3D%20ref(markers.value%5B0%5D.position)%0A%20%20const%20show%20%3D%20ref%3Cboolean%3E(true)%0A%20%20function%20handleClick(item%3A%20UnwrapRef%3Ctypeof%20markers%3E%5B0%5D)%20%7B%0A%20%20%20%20position.value%20%3D%20item.position%0A%20%20%20%20title.value%20%3D%20item.title%0A%20%20%20%20show.value%20%3D%20true%0A%20%20%7D%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E5%8A%A8%E6%80%81%E4%BD%8D%E7%BD%AE%3C%2Fp%3E%0A"},{default:o(()=>[d]),_:1}),B,a("table",m,[v,a("tbody",null,[a("tr",null,[g,h,b,f,w,a("td",null,[t(C,{type:"tip",text:"^2.2.2"})])]),y,_,x,q,W,I])]),P])}const O=l(k,[["render",T],["__scopeId","data-v-48ae9e32"]]);export{R as __pageData,O as default}; diff --git a/assets/zh-CN_components_overlay_infowindow.md.Ct8o2KOQ.lean.js b/assets/zh-CN_components_overlay_infowindow.md.Ct8o2KOQ.lean.js new file mode 100644 index 00000000..86b03ba9 --- /dev/null +++ b/assets/zh-CN_components_overlay_infowindow.md.Ct8o2KOQ.lean.js @@ -0,0 +1 @@ +import{_ as l,c,I as t,w as o,j as a,al as p,D as e,o as u,p as D,l as i,a as F}from"./chunks/framework.n6hqIsqL.js";const R=JSON.parse('{"title":"BInfoWindow 信息窗口","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/overlay/infowindow.md","filePath":"zh-CN/components/overlay/infowindow.md","lastUpdated":1724785300000}'),k={name:"zh-CN/components/overlay/infowindow.md"},n=s=>(D("data-v-48ae9e32"),s=s(),i(),s),r=p("",5),A=n(()=>a("p",null,"overlay/infowindow",-1)),d=n(()=>a("p",null,"overlay/dynmicInfoWindow",-1)),B=p("",4),m={tabindex:"0"},v=n(()=>a("thead",null,[a("tr",null,[a("th",null,"属性"),a("th",null,"说明"),a("th",null,"类型"),a("th",null,"可选值"),a("th",null,"默认值"),a("th",null,"版本")])],-1)),g=n(()=>a("td",null,"show",-1)),h=n(()=>a("td",null,[F("是否开启信息窗体, 支持 "),a("code",null,"v-model:show")],-1)),b=n(()=>a("td",null,[a("code",null,"boolean ")],-1)),f=n(()=>a("td",null,"-",-1)),w=n(()=>a("td",null,[a("code",null,"false")],-1)),y=n(()=>a("tr",null,[a("td",null,"position"),a("td",null,"信息窗体所在坐标"),a("td",null,[a("code",null,"{ lng: number, lat: number}[]")]),a("td",null,"-"),a("td",null,[a("code",null,"required")]),a("td",null,"-")],-1)),_=n(()=>a("tr",null,[a("td",null,"title"),a("td",null,"信息窗标题文字"),a("td",null,[a("code",null,"string")]),a("td",null,"-"),a("td",null,"-"),a("td",null,"-")],-1)),x=n(()=>a("tr",null,[a("td",null,"width"),a("td",null,"信息窗宽度,单位像素。取值范围:0, 220 - 730。如果您指定宽度为 0,则信息窗口的宽度将按照其内容自动调整"),a("td",null,[a("code",null,"number")]),a("td",null,[a("code",null,"220-730")]),a("td",null,[a("code",null,"0")]),a("td",null,"-")],-1)),q=n(()=>a("tr",null,[a("td",null,"height"),a("td",null,"信息窗高度,单位像素。取值范围:0, 60 - 650。如果您指定高度为 0,则信息窗口的高度将按照其内容自动调整"),a("td",null,[a("code",null,"number")]),a("td",null,[a("code",null,"60-650")]),a("td",null,[a("code",null,"0")]),a("td",null,"-")],-1)),W=n(()=>a("tr",null,[a("td",null,"enableAutoPan"),a("td",null,"是否开启信息窗口打开时地图自动移动"),a("td",null,[a("code",null,"boolean")]),a("td",null,"-"),a("td",null,[a("code",null," true")]),a("td",null,"-")],-1)),I=n(()=>a("tr",null,[a("td",null,"enableCloseOnClick"),a("td",null,"是否开启点击地图关闭信息窗口"),a("td",null,[a("code",null,"boolean")]),a("td",null,"-"),a("td",null,[a("code",null," true")]),a("td",null,"-")],-1)),P=p("",2);function T(s,M,S,N,V,j){const E=e("Demo"),C=e("Badge");return u(),c("div",null,[r,t(E,{class:"p-top",source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Einput%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Echeckbox%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eshow%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%E6%96%87%E5%AD%97%E5%86%85%E5%AE%B9infoWindow%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Einput%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Echeckbox%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eshow1%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%E5%8A%A8%E6%80%81%E5%86%85%E5%AE%B9infoWindow%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Einput%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Echeckbox%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eshow2%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%E5%9B%BE%E6%96%87%E7%BB%84%E5%90%88%E6%8E%92%E7%89%88infoWindow%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Elabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBInfoWindow%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Cspan%20class%3D%22token%20namespace%22%3Ev-model%3A%3C%2Fspan%3Eshow%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eshow%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableMaximize%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lng%3A%20116.404%2C%20lat%3A%2039.925%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etitle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E6%96%87%E5%AD%97%E5%86%85%E5%AE%B9%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%E5%9C%B0%E5%9D%80%EF%BC%9A%E5%8C%97%E4%BA%AC%E5%B8%82%E4%B8%9C%E5%9F%8E%E5%8C%BA%E7%8E%8B%E5%BA%9C%E4%BA%95%E5%A4%A7%E8%A1%9788%E5%8F%B7%E4%B9%90%E5%A4%A9%E9%93%B6%E6%B3%B0%E7%99%BE%E8%B4%A7%E5%85%AB%E5%B1%82%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%23maxContent%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eh1%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E6%9C%80%E5%A4%A7%E5%8C%96%E5%86%85%E5%AE%B9%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eh1%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBInfoWindow%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBInfoWindow%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Cspan%20class%3D%22token%20namespace%22%3Ev-model%3A%3C%2Fspan%3Eshow%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eshow1%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lng%3A%20116.404%2C%20lat%3A%2039.925%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etitle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E5%8A%A8%E6%80%81%E5%86%85%E5%AE%B9%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eh2%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3Ecount%3A%20%7B%7B%20count%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eh2%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ecount%20%2B%3D%201%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3Ecount%2B%2B%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBInfoWindow%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBInfoWindow%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Cspan%20class%3D%22token%20namespace%22%3Ev-model%3A%3C%2Fspan%3Eshow%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eshow2%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lng%3A%20116.404%2C%20lat%3A%2039.925%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etitle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E5%9B%BE%E6%96%87%E7%BB%84%E5%90%88%E6%8E%92%E7%89%88%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eh2%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%A4%A9%E5%AE%89%E9%97%A8%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eh2%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EinfoWindow-content%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ep%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%A4%A9%E5%AE%89%E9%97%A8%E5%9D%90%E8%90%BD%E5%9C%A8%E4%B8%AD%E5%9B%BD%E5%8C%97%E4%BA%AC%E5%B8%82%E4%B8%AD%E5%BF%83%EF%BC%8C%E6%95%85%E5%AE%AB%E7%9A%84%E5%8D%97%E4%BE%A7%EF%BC%8C%E4%B8%8E%E5%A4%A9%E5%AE%89%E9%97%A8%E5%B9%BF%E5%9C%BA%E9%9A%94%E9%95%BF%E5%AE%89%E8%A1%97%E7%9B%B8%E6%9C%9B%EF%BC%8C%E6%98%AF%E6%B8%85%E6%9C%9D%E7%9A%87%E5%9F%8E%E7%9A%84%E5%A4%A7%E9%97%A8%E3%80%82..%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ep%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eimg%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ewidth%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E139%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eheight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E104%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esrc%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ehttps%3A%2F%2Flbs.baidu.com%2Fjsdemo%2Fimg%2FtianAnMen.jpg%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ealt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBInfoWindow%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20show%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Eboolean%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20show1%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Eboolean%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20show2%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Eboolean%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20count%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Enumber%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Estyle%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Escoped%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20style%22%3E%3Cspan%20class%3D%22token%20language-css%22%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Eborder-radius%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%206px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Ebackground%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%23ddd%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Eoutline%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20none%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Epadding%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%201px%205px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Efont-size%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2014px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-bottom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2010px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.infoWindow-content%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Edisplay%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20flex%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Ejustify-content%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20space-between%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Epadding%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2010px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.infoWindow-content%20p%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%200%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Eline-height%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20initial%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/infowindow","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%3Clabel%3E%0A%20%20%20%20%20%20%3Cinput%20type%3D%22checkbox%22%20v-model%3D%22show%22%20%2F%3E%0A%20%20%20%20%20%20%E6%96%87%E5%AD%97%E5%86%85%E5%AE%B9infoWindow%0A%20%20%20%20%3C%2Flabel%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3Clabel%3E%0A%20%20%20%20%20%20%3Cinput%20type%3D%22checkbox%22%20v-model%3D%22show1%22%20%2F%3E%0A%20%20%20%20%20%20%E5%8A%A8%E6%80%81%E5%86%85%E5%AE%B9infoWindow%0A%20%20%20%20%3C%2Flabel%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3Clabel%3E%0A%20%20%20%20%20%20%3Cinput%20type%3D%22checkbox%22%20v-model%3D%22show2%22%20%2F%3E%0A%20%20%20%20%20%20%E5%9B%BE%E6%96%87%E7%BB%84%E5%90%88%E6%8E%92%E7%89%88infoWindow%0A%20%20%20%20%3C%2Flabel%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20enableScrollWheelZoom%3E%0A%20%20%20%20%20%20%3CBInfoWindow%20v-model%3Ashow%3D%22show%22%20enableMaximize%20%3Aposition%3D%22%7B%20lng%3A%20116.404%2C%20lat%3A%2039.925%20%7D%22%20title%3D%22%E6%96%87%E5%AD%97%E5%86%85%E5%AE%B9%22%3E%0A%20%20%20%20%20%20%20%20%E5%9C%B0%E5%9D%80%EF%BC%9A%E5%8C%97%E4%BA%AC%E5%B8%82%E4%B8%9C%E5%9F%8E%E5%8C%BA%E7%8E%8B%E5%BA%9C%E4%BA%95%E5%A4%A7%E8%A1%9788%E5%8F%B7%E4%B9%90%E5%A4%A9%E9%93%B6%E6%B3%B0%E7%99%BE%E8%B4%A7%E5%85%AB%E5%B1%82%0A%20%20%20%20%20%20%20%20%3Ctemplate%20%23maxContent%3E%0A%20%20%20%20%20%20%20%20%20%20%3Ch1%3E%E6%9C%80%E5%A4%A7%E5%8C%96%E5%86%85%E5%AE%B9%3C%2Fh1%3E%0A%20%20%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%20%20%3C%2FBInfoWindow%3E%0A%20%20%20%20%20%20%3CBInfoWindow%20v-model%3Ashow%3D%22show1%22%20%3Aposition%3D%22%7B%20lng%3A%20116.404%2C%20lat%3A%2039.925%20%7D%22%20title%3D%22%E5%8A%A8%E6%80%81%E5%86%85%E5%AE%B9%22%3E%0A%20%20%20%20%20%20%20%20%3Ch2%3Ecount%3A%20%7B%7B%20count%20%7D%7D%3C%2Fh2%3E%0A%20%20%20%20%20%20%20%20%3Cbutton%20%40click%3D%22count%20%2B%3D%201%22%3Ecount%2B%2B%3C%2Fbutton%3E%0A%20%20%20%20%20%20%3C%2FBInfoWindow%3E%0A%20%20%20%20%20%20%3CBInfoWindow%20v-model%3Ashow%3D%22show2%22%20%3Aposition%3D%22%7B%20lng%3A%20116.404%2C%20lat%3A%2039.925%20%7D%22%20title%3D%22%E5%9B%BE%E6%96%87%E7%BB%84%E5%90%88%E6%8E%92%E7%89%88%22%3E%0A%20%20%20%20%20%20%20%20%3Ch2%3E%E5%A4%A9%E5%AE%89%E9%97%A8%3C%2Fh2%3E%0A%20%20%20%20%20%20%20%20%3Cdiv%20class%3D%22infoWindow-content%22%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cp%3E%E5%A4%A9%E5%AE%89%E9%97%A8%E5%9D%90%E8%90%BD%E5%9C%A8%E4%B8%AD%E5%9B%BD%E5%8C%97%E4%BA%AC%E5%B8%82%E4%B8%AD%E5%BF%83%EF%BC%8C%E6%95%85%E5%AE%AB%E7%9A%84%E5%8D%97%E4%BE%A7%EF%BC%8C%E4%B8%8E%E5%A4%A9%E5%AE%89%E9%97%A8%E5%B9%BF%E5%9C%BA%E9%9A%94%E9%95%BF%E5%AE%89%E8%A1%97%E7%9B%B8%E6%9C%9B%EF%BC%8C%E6%98%AF%E6%B8%85%E6%9C%9D%E7%9A%87%E5%9F%8E%E7%9A%84%E5%A4%A7%E9%97%A8%E3%80%82..%3C%2Fp%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cimg%20width%3D%22139%22%20height%3D%22104%22%20src%3D%22https%3A%2F%2Flbs.baidu.com%2Fjsdemo%2Fimg%2FtianAnMen.jpg%22%20alt%3D%22%22%20%2F%3E%0A%20%20%20%20%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%20%20%3C%2FBInfoWindow%3E%0A%20%20%20%20%3C%2FBMap%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20const%20show%20%3D%20ref%3Cboolean%3E(false)%0A%20%20const%20show1%20%3D%20ref%3Cboolean%3E(true)%0A%20%20const%20show2%20%3D%20ref%3Cboolean%3E(false)%0A%20%20const%20count%20%3D%20ref%3Cnumber%3E(1)%0A%3C%2Fscript%3E%0A%0A%3Cstyle%20scoped%3E%0A%20%20button%20%7B%0A%20%20%20%20border-radius%3A%206px%3B%0A%20%20%20%20background%3A%20%23ddd%3B%0A%20%20%20%20outline%3A%20none%3B%0A%20%20%20%20padding%3A%201px%205px%3B%0A%20%20%20%20font-size%3A%2014px%3B%0A%20%20%20%20margin-bottom%3A%2010px%3B%0A%20%20%7D%0A%20%20.infoWindow-content%20%7B%0A%20%20%20%20display%3A%20flex%3B%0A%20%20%20%20justify-content%3A%20space-between%3B%0A%20%20%20%20padding%3A%2010px%3B%0A%20%20%7D%0A%20%20.infoWindow-content%20p%20%7B%0A%20%20%20%20margin%3A%200%3B%0A%20%20%20%20line-height%3A%20initial%3B%0A%20%20%7D%0A%3C%2Fstyle%3E%0A",description:"%3Cp%3E%E9%80%9A%E8%BF%87%20slot%20%E6%8F%92%E6%A7%BD%E6%B8%B2%E6%9F%93%E4%B8%8D%E5%90%8C%E5%86%85%E5%AE%B9%20infoWindow%3C%2Fp%3E%0A"},{default:o(()=>[A]),_:1}),t(E,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.400901%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E16%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-for%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E(item%2C%20index)%20in%20markers%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eitem.position%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aicon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%60blue%24%7Bindex%20%2B%201%20as%201%20%7C%202%7D%60%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E()%20%3D%3E%20handleClick(item)%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableClicking%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBInfoWindow%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Cspan%20class%3D%22token%20namespace%22%3Ev-model%3A%3C%2Fspan%3Eshow%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eshow%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eposition%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Atitle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Etitle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableAutoPan%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableCloseOnClick%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aoffset%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%0A%20%20%20%20%20%20%20%20x%3A%200%2C%0A%20%20%20%20%20%20%20%20y%3A%20-10%0A%20%20%20%20%20%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20type%20UnwrapRef%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20BMap%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20BMarker%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20BInfoWindow%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20markers%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E39.915185%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.400101%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etitle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%9C%B0%E5%9D%80%E4%B8%80'%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E39.915185%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.400901%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etitle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%9C%B0%E5%9D%80%E4%BA%8C'%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20title%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Emarkers%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Etitle%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20position%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Emarkers%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eposition%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20show%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Eboolean%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleClick%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3E%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eitem%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20UnwrapRef%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20keyword%22%3Etypeof%3C%2Fspan%3E%20markers%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20position%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20item%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eposition%0A%20%20%20%20title%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20item%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Etitle%0A%20%20%20%20show%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/dynmicInfoWindow","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20enableScrollWheelZoom%20v-bind%3D%22%24attrs%22%20%3Acenter%3D%22%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.400901%20%7D%22%20%3Azoom%3D%2216%22%3E%0A%20%20%20%20%3CBMarker%0A%20%20%20%20%20%20v-for%3D%22(item%2C%20index)%20in%20markers%22%0A%20%20%20%20%20%20%3Aposition%3D%22item.position%22%0A%20%20%20%20%20%20%3Aicon%3D%22%60blue%24%7Bindex%20%2B%201%20as%201%20%7C%202%7D%60%22%0A%20%20%20%20%20%20%40click%3D%22()%20%3D%3E%20handleClick(item)%22%0A%20%20%20%20%20%20enableClicking%0A%20%20%20%20%2F%3E%0A%20%20%20%20%3CBInfoWindow%0A%20%20%20%20%20%20v-model%3Ashow%3D%22show%22%0A%20%20%20%20%20%20%3Aposition%3D%22position%22%0A%20%20%20%20%20%20%3Atitle%3D%22title%22%0A%20%20%20%20%20%20enableAutoPan%0A%20%20%20%20%20%20enableCloseOnClick%0A%20%20%20%20%20%20%3Aoffset%3D%22%7B%0A%20%20%20%20%20%20%20%20x%3A%200%2C%0A%20%20%20%20%20%20%20%20y%3A%20-10%0A%20%20%20%20%20%20%7D%22%0A%20%20%20%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20ref%2C%20type%20UnwrapRef%20%7D%20from%20'vue'%0A%20%20import%20%7B%20BMap%2C%20BMarker%2C%20BInfoWindow%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20let%20markers%20%3D%20ref(%5B%0A%20%20%20%20%7B%0A%20%20%20%20%20%20position%3A%20%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.400101%20%7D%2C%0A%20%20%20%20%20%20title%3A%20'%E5%9C%B0%E5%9D%80%E4%B8%80'%0A%20%20%20%20%7D%2C%0A%20%20%20%20%7B%0A%20%20%20%20%20%20position%3A%20%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.400901%20%7D%2C%0A%20%20%20%20%20%20title%3A%20'%E5%9C%B0%E5%9D%80%E4%BA%8C'%0A%20%20%20%20%7D%0A%20%20%5D)%0A%20%20const%20title%20%3D%20ref(markers.value%5B0%5D.title)%0A%20%20const%20position%20%3D%20ref(markers.value%5B0%5D.position)%0A%20%20const%20show%20%3D%20ref%3Cboolean%3E(true)%0A%20%20function%20handleClick(item%3A%20UnwrapRef%3Ctypeof%20markers%3E%5B0%5D)%20%7B%0A%20%20%20%20position.value%20%3D%20item.position%0A%20%20%20%20title.value%20%3D%20item.title%0A%20%20%20%20show.value%20%3D%20true%0A%20%20%7D%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E5%8A%A8%E6%80%81%E4%BD%8D%E7%BD%AE%3C%2Fp%3E%0A"},{default:o(()=>[d]),_:1}),B,a("table",m,[v,a("tbody",null,[a("tr",null,[g,h,b,f,w,a("td",null,[t(C,{type:"tip",text:"^2.2.2"})])]),y,_,x,q,W,I])]),P])}const O=l(k,[["render",T],["__scopeId","data-v-48ae9e32"]]);export{R as __pageData,O as default}; diff --git a/assets/zh-CN_components_overlay_label.md.BrGf0ABD.js b/assets/zh-CN_components_overlay_label.md.BrGf0ABD.js new file mode 100644 index 00000000..e5e6d107 --- /dev/null +++ b/assets/zh-CN_components_overlay_label.md.BrGf0ABD.js @@ -0,0 +1 @@ +import{_ as o,c as p,I as n,w as E,j as t,al as e,a as c,D as s,o as d}from"./chunks/framework.n6hqIsqL.js";const M=JSON.parse('{"title":"BLabel 文本标注","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/overlay/label.md","filePath":"zh-CN/components/overlay/label.md","lastUpdated":1724785300000}'),C={name:"zh-CN/components/overlay/label.md"},u=e('

BLabel 文本标注

在地图上显示文本标注

ts
import { BLabel } from 'vue3-baidu-map-gl'

组件示例

',4),r=t("p",null,"overlay/label",-1),i=t("h2",{id:"动态组件-props",tabindex:"-1"},[c("动态组件 Props "),t("a",{class:"header-anchor",href:"#动态组件-props","aria-label":'Permalink to "动态组件 Props"'},"​")],-1),D={tabindex:"0"},k=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"默认值"),t("th",null,"版本")])],-1),A=t("tr",null,[t("td",null,"content"),t("td",null,"设置文本标注的内容"),t("td",null,[t("code",null,"string ")]),t("td",null,[t("code",null,"required")]),t("td",null,"-")],-1),F=t("tr",null,[t("td",null,"offset"),t("td",null,"文本标注的像素偏移"),t("td",null,[t("code",null,"{x: number, y: number } ")]),t("td",null,"-"),t("td",null,"-")],-1),h=t("tr",null,[t("td",null,"enableMassClear"),t("td",null,"是否在调用 map.clearOverlays 清除此覆盖物"),t("td",null,[t("code",null,"boolean ")]),t("td",null,[t("code",null,"true ")]),t("td",null,"-")],-1),_=t("tr",null,[t("td",null,"style"),t("td",null,"设置文本标注的样式"),t("td",null,[t("a",{href:"https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleDeclaration",target:"_blank",rel:"noreferrer"},[t("code",null,"CSSStyleDeclaration")])]),t("td",null,"-"),t("td",null,"-")],-1),B=t("tr",null,[t("td",null,"position"),t("td",null,"文本标注的坐标"),t("td",null,[t("code",null,"{ lng: number, lat: number} ")]),t("td",null,[t("code",null,"required")]),t("td",null,"-")],-1),b=t("td",null,"zIndex",-1),m=t("td",null,"显示层级",-1),g=t("td",null,[t("code",null,"number")],-1),v=t("td",null,"-",-1),f=t("td",null,"visible",-1),y=t("td",null,"是否显示",-1),x=t("td",null,[t("code",null,"boolean")],-1),S=t("td",null,[t("code",null,"true")],-1),q=e('

提示

style 可以是任何符合规范的 css 样式,样式属性需使用驼峰命名法

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。 当双击时,产生的事件序列为: click -> click -> dblclick ((e: Event) => void)
dblclick鼠标左键双击事件的回调函数 ((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数 ((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数 ((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数 ((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数 ((e: Event) => void)
remove该覆盖物被移除的回调函数 ((e: Event) => void)
lineupdate覆盖物被编辑后的回调函数 ((e: Event) => void)
',3);function P(T,N,V,L,w,z){const l=s("Demo"),a=s("Badge");return d(),p("div",null,[u,n(l,{class:"p-top",source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%E6%96%87%E5%AD%97%E5%86%85%E5%AE%B9%3A%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Einput%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Etext%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Econtent%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBLabel%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acontent%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Econtent%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lng%3A%20116.404%2C%20lat%3A%2039.915%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Astyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%0A%20%20%20%20%20%20%20%20color%3A%20'%23fff'%2C%0A%20%20%20%20%20%20%20%20backgroundColor%3A%20'%23f90'%2C%0A%20%20%20%20%20%20%20%20border%3A%20'none'%2C%0A%20%20%20%20%20%20%20%20borderRadius%3A%20'3px'%2C%0A%20%20%20%20%20%20%20%20padding%3A%20'5px%2010px'%2C%0A%20%20%20%20%20%20%20%20fontSize%3A%20'16px'%0A%20%20%20%20%20%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20content%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Estring%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'%E6%AC%A2%E8%BF%8E%E4%BD%BF%E7%94%A8%E7%99%BE%E5%BA%A6%E5%9C%B0%E5%9B%BEGL%E7%89%88Vue3%E7%BB%84%E4%BB%B6%E5%BA%93'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/label","raw-source":"%3Ctemplate%3E%0A%20%20%E6%96%87%E5%AD%97%E5%86%85%E5%AE%B9%3A%0A%20%20%3Cinput%20class%3D%22my-input%22%20type%3D%22text%22%20v-model%3D%22content%22%20%2F%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%3E%0A%20%20%20%20%3CBLabel%0A%20%20%20%20%20%20%3Acontent%3D%22content%22%0A%20%20%20%20%20%20%3Aposition%3D%22%7B%20lng%3A%20116.404%2C%20lat%3A%2039.915%20%7D%22%0A%20%20%20%20%20%20%3Astyle%3D%22%7B%0A%20%20%20%20%20%20%20%20color%3A%20'%23fff'%2C%0A%20%20%20%20%20%20%20%20backgroundColor%3A%20'%23f90'%2C%0A%20%20%20%20%20%20%20%20border%3A%20'none'%2C%0A%20%20%20%20%20%20%20%20borderRadius%3A%20'3px'%2C%0A%20%20%20%20%20%20%20%20padding%3A%20'5px%2010px'%2C%0A%20%20%20%20%20%20%20%20fontSize%3A%20'16px'%0A%20%20%20%20%20%20%7D%22%0A%20%20%20%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%20lang%3D%22ts%22%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20const%20content%20%3D%20ref%3Cstring%3E('%E6%AC%A2%E8%BF%8E%E4%BD%BF%E7%94%A8%E7%99%BE%E5%BA%A6%E5%9C%B0%E5%9B%BEGL%E7%89%88Vue3%E7%BB%84%E4%BB%B6%E5%BA%93')%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E5%9C%A8%E5%9C%B0%E5%9B%BE%E4%B8%8A%E6%B7%BB%E5%8A%A0%E5%8A%A8%E6%80%81%E6%9B%B4%E6%96%B0%E7%9A%84%EF%BC%8C%E8%AF%95%E8%AF%95%E6%94%B9%E5%8F%98%E6%96%87%E6%9C%AC%E8%BE%93%E5%85%A5%E6%A1%86%E5%86%85%E5%AE%B9%3C%2Fp%3E%0A"},{default:E(()=>[r]),_:1}),i,t("table",D,[k,t("tbody",null,[A,F,h,_,B,t("tr",null,[b,m,g,v,t("td",null,[n(a,{type:"tip",text:"^2.2.0"})])]),t("tr",null,[f,y,x,S,t("td",null,[n(a,{type:"tip",text:"^2.2.0"})])])])]),q])}const R=o(C,[["render",P]]);export{M as __pageData,R as default}; diff --git a/assets/zh-CN_components_overlay_label.md.BrGf0ABD.lean.js b/assets/zh-CN_components_overlay_label.md.BrGf0ABD.lean.js new file mode 100644 index 00000000..777fb697 --- /dev/null +++ b/assets/zh-CN_components_overlay_label.md.BrGf0ABD.lean.js @@ -0,0 +1 @@ +import{_ as o,c as p,I as n,w as E,j as t,al as e,a as c,D as s,o as d}from"./chunks/framework.n6hqIsqL.js";const M=JSON.parse('{"title":"BLabel 文本标注","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/overlay/label.md","filePath":"zh-CN/components/overlay/label.md","lastUpdated":1724785300000}'),C={name:"zh-CN/components/overlay/label.md"},u=e("",4),r=t("p",null,"overlay/label",-1),i=t("h2",{id:"动态组件-props",tabindex:"-1"},[c("动态组件 Props "),t("a",{class:"header-anchor",href:"#动态组件-props","aria-label":'Permalink to "动态组件 Props"'},"​")],-1),D={tabindex:"0"},k=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"默认值"),t("th",null,"版本")])],-1),A=t("tr",null,[t("td",null,"content"),t("td",null,"设置文本标注的内容"),t("td",null,[t("code",null,"string ")]),t("td",null,[t("code",null,"required")]),t("td",null,"-")],-1),F=t("tr",null,[t("td",null,"offset"),t("td",null,"文本标注的像素偏移"),t("td",null,[t("code",null,"{x: number, y: number } ")]),t("td",null,"-"),t("td",null,"-")],-1),h=t("tr",null,[t("td",null,"enableMassClear"),t("td",null,"是否在调用 map.clearOverlays 清除此覆盖物"),t("td",null,[t("code",null,"boolean ")]),t("td",null,[t("code",null,"true ")]),t("td",null,"-")],-1),_=t("tr",null,[t("td",null,"style"),t("td",null,"设置文本标注的样式"),t("td",null,[t("a",{href:"https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleDeclaration",target:"_blank",rel:"noreferrer"},[t("code",null,"CSSStyleDeclaration")])]),t("td",null,"-"),t("td",null,"-")],-1),B=t("tr",null,[t("td",null,"position"),t("td",null,"文本标注的坐标"),t("td",null,[t("code",null,"{ lng: number, lat: number} ")]),t("td",null,[t("code",null,"required")]),t("td",null,"-")],-1),b=t("td",null,"zIndex",-1),m=t("td",null,"显示层级",-1),g=t("td",null,[t("code",null,"number")],-1),v=t("td",null,"-",-1),f=t("td",null,"visible",-1),y=t("td",null,"是否显示",-1),x=t("td",null,[t("code",null,"boolean")],-1),S=t("td",null,[t("code",null,"true")],-1),q=e("",3);function P(T,N,V,L,w,z){const l=s("Demo"),a=s("Badge");return d(),p("div",null,[u,n(l,{class:"p-top",source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%E6%96%87%E5%AD%97%E5%86%85%E5%AE%B9%3A%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Einput%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Etext%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Econtent%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBLabel%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acontent%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Econtent%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lng%3A%20116.404%2C%20lat%3A%2039.915%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Astyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%0A%20%20%20%20%20%20%20%20color%3A%20'%23fff'%2C%0A%20%20%20%20%20%20%20%20backgroundColor%3A%20'%23f90'%2C%0A%20%20%20%20%20%20%20%20border%3A%20'none'%2C%0A%20%20%20%20%20%20%20%20borderRadius%3A%20'3px'%2C%0A%20%20%20%20%20%20%20%20padding%3A%20'5px%2010px'%2C%0A%20%20%20%20%20%20%20%20fontSize%3A%20'16px'%0A%20%20%20%20%20%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20content%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Estring%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'%E6%AC%A2%E8%BF%8E%E4%BD%BF%E7%94%A8%E7%99%BE%E5%BA%A6%E5%9C%B0%E5%9B%BEGL%E7%89%88Vue3%E7%BB%84%E4%BB%B6%E5%BA%93'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/label","raw-source":"%3Ctemplate%3E%0A%20%20%E6%96%87%E5%AD%97%E5%86%85%E5%AE%B9%3A%0A%20%20%3Cinput%20class%3D%22my-input%22%20type%3D%22text%22%20v-model%3D%22content%22%20%2F%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%3E%0A%20%20%20%20%3CBLabel%0A%20%20%20%20%20%20%3Acontent%3D%22content%22%0A%20%20%20%20%20%20%3Aposition%3D%22%7B%20lng%3A%20116.404%2C%20lat%3A%2039.915%20%7D%22%0A%20%20%20%20%20%20%3Astyle%3D%22%7B%0A%20%20%20%20%20%20%20%20color%3A%20'%23fff'%2C%0A%20%20%20%20%20%20%20%20backgroundColor%3A%20'%23f90'%2C%0A%20%20%20%20%20%20%20%20border%3A%20'none'%2C%0A%20%20%20%20%20%20%20%20borderRadius%3A%20'3px'%2C%0A%20%20%20%20%20%20%20%20padding%3A%20'5px%2010px'%2C%0A%20%20%20%20%20%20%20%20fontSize%3A%20'16px'%0A%20%20%20%20%20%20%7D%22%0A%20%20%20%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%20lang%3D%22ts%22%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20const%20content%20%3D%20ref%3Cstring%3E('%E6%AC%A2%E8%BF%8E%E4%BD%BF%E7%94%A8%E7%99%BE%E5%BA%A6%E5%9C%B0%E5%9B%BEGL%E7%89%88Vue3%E7%BB%84%E4%BB%B6%E5%BA%93')%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E5%9C%A8%E5%9C%B0%E5%9B%BE%E4%B8%8A%E6%B7%BB%E5%8A%A0%E5%8A%A8%E6%80%81%E6%9B%B4%E6%96%B0%E7%9A%84%EF%BC%8C%E8%AF%95%E8%AF%95%E6%94%B9%E5%8F%98%E6%96%87%E6%9C%AC%E8%BE%93%E5%85%A5%E6%A1%86%E5%86%85%E5%AE%B9%3C%2Fp%3E%0A"},{default:E(()=>[r]),_:1}),i,t("table",D,[k,t("tbody",null,[A,F,h,_,B,t("tr",null,[b,m,g,v,t("td",null,[n(a,{type:"tip",text:"^2.2.0"})])]),t("tr",null,[f,y,x,S,t("td",null,[n(a,{type:"tip",text:"^2.2.0"})])])])]),q])}const R=o(C,[["render",P]]);export{M as __pageData,R as default}; diff --git a/assets/zh-CN_components_overlay_mapMask.md.C8jk-9AH.js b/assets/zh-CN_components_overlay_mapMask.md.C8jk-9AH.js new file mode 100644 index 00000000..5e4d0227 --- /dev/null +++ b/assets/zh-CN_components_overlay_mapMask.md.C8jk-9AH.js @@ -0,0 +1 @@ +import{_ as C,c as E,j as n,a as s,I as a,w as c,al as o,D as p,o as l}from"./chunks/framework.n6hqIsqL.js";const N=JSON.parse('{"title":"BMapMask 掩膜","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/overlay/mapMask.md","filePath":"zh-CN/components/overlay/mapMask.md","lastUpdated":1724785300000}'),u={name:"zh-CN/components/overlay/mapMask.md"},i={id:"bmapmask-掩膜",tabindex:"-1"},k=n("a",{class:"header-anchor",href:"#bmapmask-掩膜","aria-label":'Permalink to "BMapMask 掩膜 "'},"​",-1),D=o('

控制地图元素的局部显示与隐藏

  • 局部显示:只展示指定区域的地图及地图元素(poi 标注、底图、楼块等),隐藏掉区域外的地图元素以突出重点。
  • 局部隐藏:隐藏掉局部区域地图元素,比如隐藏掉指定园区范围的地图元素,然后自定义叠加园区模型。
ts
import { BMapMask } from 'vue3-baidu-map-gl'

注意

  1. 局部隐藏适用于地图大级别情况,建议在 zoom>=18 级时使用
  2. 初始地图的中心点需要设置到掩膜区域内

组件示例

',5),F=n("p",null,"overlay/mapMask",-1),r=n("h2",{id:"动态组件-props",tabindex:"-1"},[s("动态组件 Props "),n("a",{class:"header-anchor",href:"#动态组件-props","aria-label":'Permalink to "动态组件 Props"'},"​")],-1),d={tabindex:"0"},m=n("thead",null,[n("tr",null,[n("th",null,"属性"),n("th",null,"说明"),n("th",null,"类型"),n("th",null,"可选值"),n("th",null,"默认值"),n("th",null,"版本")])],-1),A=n("tr",null,[n("td",null,"path"),n("td",null,"圆形中心点经纬度"),n("td",null,[n("code",null,"{ lng: number, lat: number}")]),n("td",null,"-"),n("td",null,[n("code",null,"required")]),n("td",null,"-")],-1),h=n("tr",null,[n("td",null,"showRegion"),n("td",null,"展示区域内部还是外部"),n("td",null,[n("a",{href:"#mapmaskshowregion"},[n("code",null,"MapMaskShowRegion")])]),n("td",null,"-"),n("td",null,[n("code",null,"inside")]),n("td",null,"-")],-1),B=n("tr",null,[n("td",null,"isBuildingMask"),n("td",null,"楼块是否参与掩膜"),n("td",null,[n("code",null,"boolean")]),n("td",null,"-"),n("td",null,[n("code",null,"false")]),n("td",null,"-")],-1),M=n("tr",null,[n("td",null,"isMapMask"),n("td",null,"底图是否参与掩膜"),n("td",null,[n("code",null,"boolean")]),n("td",null,"-"),n("td",null,[n("code",null,"false")]),n("td",null,"-")],-1),g=n("tr",null,[n("td",null,"isPoiMask"),n("td",null,"底图上的 Poi 是否参与掩膜"),n("td",null,[n("code",null,"boolean")]),n("td",null,"-"),n("td",null,[n("code",null,"false")]),n("td",null,"-")],-1),w=n("td",null,"visible",-1),b=n("td",null,"是否显示",-1),_=n("td",null,[n("code",null,"boolean")],-1),v=n("td",null,"-",-1),P=n("td",null,[n("code",null,"true")],-1),y=o('

MapMaskShowRegion

描述
outside局部隐藏:隐藏掉局部区域地图元素,比如隐藏掉指定园区范围的地图元素,然后自定义叠加园区模型。
inside局部显示:只展示指定区域的地图及地图元素(poi 标注、底图、楼块等),隐藏掉区域外的地图元素以突出重点。

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。 当双击时,产生的事件序列为:click -> click -> dblclick((e: Event) => void)
dblclick鼠标左键双击事件的回调函数((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数((e: Event) => void)
rightclick鼠标右键单击事件的回调函数((e: Event) => void)
',4);function f(G,L,R,q,x,S){const t=p("Badge"),e=p("Demo");return l(),E("div",null,[n("h1",i,[s("BMapMask 掩膜 "),a(t,{type:"tip",text:"^2.1.0"}),s(),k]),D,a(e,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%E6%98%BE%E7%A4%BA%E5%8C%BA%E5%9F%9F%3A%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eselect%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ename%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eid%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EshowRegion%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eoutside%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%B1%80%E9%83%A8%E5%BD%B1%E8%97%8F%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Einside%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%B1%80%E9%83%A8%E6%98%BE%E7%A4%BA%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eselect%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ecenter%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E16%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Eenable-scroll-wheel-zoom%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AbackgroundColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%5B192%2C%20214%2C%20213%2C%20100%5D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ecenter%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMarker%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMapMask%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Apath%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epath%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Ashow-region%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EshowRegion%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EisPoiMask%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EisBuildingMask%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EisMapMask%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMapMask%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20shallowRef%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20triggerRef%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20BMap%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20BMarker%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20BMapMask%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20Point%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20type%20MapMaskShowRegion%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20path%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20shallowRef%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3EPoint%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20center%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20showRegion%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3EMapMaskShowRegion%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'outside'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20center%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31951444701689%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.03514188328609%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20path%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31951444701689%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.03514188328609%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31914525270483%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.03627653457813%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31887119442595%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.03712933826661%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31862381043088%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.037753816069426%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31846085080458%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.03827800880047%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31800011574751%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.03960034324275%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.3176890313816%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.0403207681881%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31747304954207%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.04023658043798%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31689403073578%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.040120567399384%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31419172285828%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.03965310472413%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31437612880998%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.03919415930771%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31462581129936%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.03876546296739%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31525321239126%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.037930670509574%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.315488510584%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.0377117230615%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31601289759325%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.037228304952336%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31692309046987%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.03662665953143%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31817328272946%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.03584288930924%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31924096994166%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.03521921152976%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3EtriggerRef%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Epath%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/mapMask","raw-source":"%3Ctemplate%3E%0A%20%20%E6%98%BE%E7%A4%BA%E5%8C%BA%E5%9F%9F%3A%0A%20%20%3Cselect%20class%3D%22mySelect%22%20name%3D%22%22%20id%3D%22%22%20v-model%3D%22showRegion%22%3E%0A%20%20%20%20%3Coption%20value%3D%22outside%22%3E%E5%B1%80%E9%83%A8%E5%BD%B1%E8%97%8F%3C%2Foption%3E%0A%20%20%20%20%3Coption%20value%3D%22inside%22%3E%E5%B1%80%E9%83%A8%E6%98%BE%E7%A4%BA%3C%2Foption%3E%0A%20%20%3C%2Fselect%3E%0A%20%20%3CBMap%0A%20%20%20%20v-bind%3D%22%24attrs%22%0A%20%20%20%20%3Acenter%3D%22center%22%0A%20%20%20%20%3Azoom%3D%2216%22%0A%20%20%20%20%40initd%3D%22handleInitd%22%0A%20%20%20%20enable-scroll-wheel-zoom%0A%20%20%20%20%3AbackgroundColor%3D%22%5B192%2C%20214%2C%20213%2C%20100%5D%22%0A%20%20%3E%0A%20%20%20%20%3CBMarker%20%3Aposition%3D%22center%22%3E%3C%2FBMarker%3E%0A%20%20%20%20%3CBMapMask%20%3Apath%3D%22path%22%20%3Ashow-region%3D%22showRegion%22%20isPoiMask%20isBuildingMask%20isMapMask%3E%3C%2FBMapMask%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%20lang%3D%22ts%22%3E%0A%20%20import%20%7B%20ref%2C%20shallowRef%2C%20triggerRef%20%7D%20from%20'vue'%0A%20%20import%20%7B%20BMap%2C%20BMarker%2C%20BMapMask%2C%20Point%2C%20type%20MapMaskShowRegion%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20path%20%3D%20shallowRef%3CPoint%5B%5D%3E(%5B%5D)%0A%20%20const%20center%20%3D%20ref%3CBMapGL.Point%3E()%0A%20%20const%20showRegion%20%3D%20ref%3CMapMaskShowRegion%3E('outside')%0A%20%20function%20handleInitd()%20%7B%0A%20%20%20%20center.value%20%3D%20new%20BMapGL.Point(116.31951444701689%2C%2040.03514188328609)%0A%20%20%20%20path.value%20%3D%20%5B%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31951444701689%2C%2040.03514188328609)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31914525270483%2C%2040.03627653457813)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31887119442595%2C%2040.03712933826661)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31862381043088%2C%2040.037753816069426)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31846085080458%2C%2040.03827800880047)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31800011574751%2C%2040.03960034324275)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.3176890313816%2C%2040.0403207681881)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31747304954207%2C%2040.04023658043798)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31689403073578%2C%2040.040120567399384)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31419172285828%2C%2040.03965310472413)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31437612880998%2C%2040.03919415930771)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31462581129936%2C%2040.03876546296739)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31525321239126%2C%2040.037930670509574)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.315488510584%2C%2040.0377117230615)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31601289759325%2C%2040.037228304952336)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31692309046987%2C%2040.03662665953143)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31817328272946%2C%2040.03584288930924)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31924096994166%2C%2040.03521921152976)%0A%20%20%20%20%5D%0A%20%20%20%20triggerRef(path)%0A%20%20%7D%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E5%B1%80%E9%83%A8%E9%9A%90%E8%97%8F%3C%2Fp%3E%0A"},{default:c(()=>[F]),_:1}),r,n("table",d,[m,n("tbody",null,[A,h,B,M,g,n("tr",null,[w,b,_,v,P,n("td",null,[a(t,{type:"tip",text:"^2.2.0"})])])])]),y])}const I=C(u,[["render",f]]);export{N as __pageData,I as default}; diff --git a/assets/zh-CN_components_overlay_mapMask.md.C8jk-9AH.lean.js b/assets/zh-CN_components_overlay_mapMask.md.C8jk-9AH.lean.js new file mode 100644 index 00000000..3a51a8e1 --- /dev/null +++ b/assets/zh-CN_components_overlay_mapMask.md.C8jk-9AH.lean.js @@ -0,0 +1 @@ +import{_ as C,c as E,j as n,a as s,I as a,w as c,al as o,D as p,o as l}from"./chunks/framework.n6hqIsqL.js";const N=JSON.parse('{"title":"BMapMask 掩膜","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/overlay/mapMask.md","filePath":"zh-CN/components/overlay/mapMask.md","lastUpdated":1724785300000}'),u={name:"zh-CN/components/overlay/mapMask.md"},i={id:"bmapmask-掩膜",tabindex:"-1"},k=n("a",{class:"header-anchor",href:"#bmapmask-掩膜","aria-label":'Permalink to "BMapMask 掩膜 "'},"​",-1),D=o("",5),F=n("p",null,"overlay/mapMask",-1),r=n("h2",{id:"动态组件-props",tabindex:"-1"},[s("动态组件 Props "),n("a",{class:"header-anchor",href:"#动态组件-props","aria-label":'Permalink to "动态组件 Props"'},"​")],-1),d={tabindex:"0"},m=n("thead",null,[n("tr",null,[n("th",null,"属性"),n("th",null,"说明"),n("th",null,"类型"),n("th",null,"可选值"),n("th",null,"默认值"),n("th",null,"版本")])],-1),A=n("tr",null,[n("td",null,"path"),n("td",null,"圆形中心点经纬度"),n("td",null,[n("code",null,"{ lng: number, lat: number}")]),n("td",null,"-"),n("td",null,[n("code",null,"required")]),n("td",null,"-")],-1),h=n("tr",null,[n("td",null,"showRegion"),n("td",null,"展示区域内部还是外部"),n("td",null,[n("a",{href:"#mapmaskshowregion"},[n("code",null,"MapMaskShowRegion")])]),n("td",null,"-"),n("td",null,[n("code",null,"inside")]),n("td",null,"-")],-1),B=n("tr",null,[n("td",null,"isBuildingMask"),n("td",null,"楼块是否参与掩膜"),n("td",null,[n("code",null,"boolean")]),n("td",null,"-"),n("td",null,[n("code",null,"false")]),n("td",null,"-")],-1),M=n("tr",null,[n("td",null,"isMapMask"),n("td",null,"底图是否参与掩膜"),n("td",null,[n("code",null,"boolean")]),n("td",null,"-"),n("td",null,[n("code",null,"false")]),n("td",null,"-")],-1),g=n("tr",null,[n("td",null,"isPoiMask"),n("td",null,"底图上的 Poi 是否参与掩膜"),n("td",null,[n("code",null,"boolean")]),n("td",null,"-"),n("td",null,[n("code",null,"false")]),n("td",null,"-")],-1),w=n("td",null,"visible",-1),b=n("td",null,"是否显示",-1),_=n("td",null,[n("code",null,"boolean")],-1),v=n("td",null,"-",-1),P=n("td",null,[n("code",null,"true")],-1),y=o("",4);function f(G,L,R,q,x,S){const t=p("Badge"),e=p("Demo");return l(),E("div",null,[n("h1",i,[s("BMapMask 掩膜 "),a(t,{type:"tip",text:"^2.1.0"}),s(),k]),D,a(e,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%E6%98%BE%E7%A4%BA%E5%8C%BA%E5%9F%9F%3A%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eselect%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ename%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eid%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EshowRegion%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eoutside%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%B1%80%E9%83%A8%E5%BD%B1%E8%97%8F%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Einside%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%B1%80%E9%83%A8%E6%98%BE%E7%A4%BA%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eselect%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ecenter%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E16%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Eenable-scroll-wheel-zoom%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AbackgroundColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%5B192%2C%20214%2C%20213%2C%20100%5D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ecenter%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMarker%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMapMask%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Apath%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epath%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Ashow-region%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EshowRegion%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EisPoiMask%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EisBuildingMask%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EisMapMask%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMapMask%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20shallowRef%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20triggerRef%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20BMap%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20BMarker%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20BMapMask%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20Point%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20type%20MapMaskShowRegion%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20path%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20shallowRef%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3EPoint%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20center%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20showRegion%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3EMapMaskShowRegion%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'outside'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20center%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31951444701689%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.03514188328609%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20path%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31951444701689%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.03514188328609%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31914525270483%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.03627653457813%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31887119442595%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.03712933826661%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31862381043088%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.037753816069426%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31846085080458%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.03827800880047%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31800011574751%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.03960034324275%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.3176890313816%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.0403207681881%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31747304954207%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.04023658043798%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31689403073578%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.040120567399384%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31419172285828%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.03965310472413%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31437612880998%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.03919415930771%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31462581129936%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.03876546296739%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31525321239126%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.037930670509574%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.315488510584%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.0377117230615%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31601289759325%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.037228304952336%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31692309046987%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.03662665953143%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31817328272946%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.03584288930924%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E116.31924096994166%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.03521921152976%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3EtriggerRef%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Epath%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/mapMask","raw-source":"%3Ctemplate%3E%0A%20%20%E6%98%BE%E7%A4%BA%E5%8C%BA%E5%9F%9F%3A%0A%20%20%3Cselect%20class%3D%22mySelect%22%20name%3D%22%22%20id%3D%22%22%20v-model%3D%22showRegion%22%3E%0A%20%20%20%20%3Coption%20value%3D%22outside%22%3E%E5%B1%80%E9%83%A8%E5%BD%B1%E8%97%8F%3C%2Foption%3E%0A%20%20%20%20%3Coption%20value%3D%22inside%22%3E%E5%B1%80%E9%83%A8%E6%98%BE%E7%A4%BA%3C%2Foption%3E%0A%20%20%3C%2Fselect%3E%0A%20%20%3CBMap%0A%20%20%20%20v-bind%3D%22%24attrs%22%0A%20%20%20%20%3Acenter%3D%22center%22%0A%20%20%20%20%3Azoom%3D%2216%22%0A%20%20%20%20%40initd%3D%22handleInitd%22%0A%20%20%20%20enable-scroll-wheel-zoom%0A%20%20%20%20%3AbackgroundColor%3D%22%5B192%2C%20214%2C%20213%2C%20100%5D%22%0A%20%20%3E%0A%20%20%20%20%3CBMarker%20%3Aposition%3D%22center%22%3E%3C%2FBMarker%3E%0A%20%20%20%20%3CBMapMask%20%3Apath%3D%22path%22%20%3Ashow-region%3D%22showRegion%22%20isPoiMask%20isBuildingMask%20isMapMask%3E%3C%2FBMapMask%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%20lang%3D%22ts%22%3E%0A%20%20import%20%7B%20ref%2C%20shallowRef%2C%20triggerRef%20%7D%20from%20'vue'%0A%20%20import%20%7B%20BMap%2C%20BMarker%2C%20BMapMask%2C%20Point%2C%20type%20MapMaskShowRegion%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20path%20%3D%20shallowRef%3CPoint%5B%5D%3E(%5B%5D)%0A%20%20const%20center%20%3D%20ref%3CBMapGL.Point%3E()%0A%20%20const%20showRegion%20%3D%20ref%3CMapMaskShowRegion%3E('outside')%0A%20%20function%20handleInitd()%20%7B%0A%20%20%20%20center.value%20%3D%20new%20BMapGL.Point(116.31951444701689%2C%2040.03514188328609)%0A%20%20%20%20path.value%20%3D%20%5B%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31951444701689%2C%2040.03514188328609)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31914525270483%2C%2040.03627653457813)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31887119442595%2C%2040.03712933826661)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31862381043088%2C%2040.037753816069426)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31846085080458%2C%2040.03827800880047)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31800011574751%2C%2040.03960034324275)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.3176890313816%2C%2040.0403207681881)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31747304954207%2C%2040.04023658043798)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31689403073578%2C%2040.040120567399384)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31419172285828%2C%2040.03965310472413)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31437612880998%2C%2040.03919415930771)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31462581129936%2C%2040.03876546296739)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31525321239126%2C%2040.037930670509574)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.315488510584%2C%2040.0377117230615)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31601289759325%2C%2040.037228304952336)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31692309046987%2C%2040.03662665953143)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31817328272946%2C%2040.03584288930924)%2C%0A%20%20%20%20%20%20new%20BMapGL.Point(116.31924096994166%2C%2040.03521921152976)%0A%20%20%20%20%5D%0A%20%20%20%20triggerRef(path)%0A%20%20%7D%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E5%B1%80%E9%83%A8%E9%9A%90%E8%97%8F%3C%2Fp%3E%0A"},{default:c(()=>[F]),_:1}),r,n("table",d,[m,n("tbody",null,[A,h,B,M,g,n("tr",null,[w,b,_,v,P,n("td",null,[a(t,{type:"tip",text:"^2.2.0"})])])])]),y])}const I=C(u,[["render",f]]);export{N as __pageData,I as default}; diff --git a/assets/zh-CN_components_overlay_marker.md.D_cVCEpz.js b/assets/zh-CN_components_overlay_marker.md.D_cVCEpz.js new file mode 100644 index 00000000..f64d15d7 --- /dev/null +++ b/assets/zh-CN_components_overlay_marker.md.D_cVCEpz.js @@ -0,0 +1 @@ +import{_ as M,c as d,I as n,w as u,j as t,al as a,a as e,D as l,o as D}from"./chunks/framework.n6hqIsqL.js";const t2=JSON.parse('{"title":"BMarker 标注点","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/overlay/marker.md","filePath":"zh-CN/components/overlay/marker.md","lastUpdated":1724785300000}'),c={name:"zh-CN/components/overlay/marker.md"},E=a('

BMarker 标注点

在地图上绘制点

ts
import { BMarker } from 'vue3-baidu-map-gl'

组件示例

在地图上添加标记点,通过 icon 指定显示图标

',5),p=t("p",null,"overlay/marker",-1),C=a('

静态组件 Props

属性说明类型默认值
title鼠标移到 marker 上的显示内容string-
draggingCursor拖拽标注时的鼠标指针样式。此属性值需遵循 CSS 的cursor属性规范string-
raiseOnDrag拖拽标注时,标注是否开启离开地图表面效果 booleanfalse
enableClicking是否响应点击事件 booleantrue

动态组件 Props

',3),i={tabindex:"0"},r=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"可选值"),t("th",null,"默认值"),t("th",null,"版本")])],-1),g=t("td",null,"zIndex",-1),N=t("td",null,"显示层级",-1),A=t("td",null,[t("code",null,"number")],-1),z=t("td",null,"-",-1),I=t("td",null,"-",-1),k=t("tr",null,[t("td",null,"position"),t("td",null,"标注点的坐标"),t("td",null,[t("code",null,"{ lng: number, lat: number}")]),t("td",null,"-"),t("td",null,[t("code",null,"required")]),t("td",null,"-")],-1),j=t("tr",null,[t("td",null,"offset"),t("td",null,"标注点的像素偏移"),t("td",null,[t("code",null," {x: number, y: number }")]),t("td",null,"-"),t("td"),t("td",null,"-")],-1),T=t("tr",null,[t("td",null,"icon"),t("td",null,[e("标注点的图标。可使用默认图标,也可"),t("a",{href:"#自定义图标"},"自定义图标")]),t("td",null,[t("code",null,"string ")]),t("td",null,[t("code",null,"simple_red / simple_blue...")]),t("td",null,"-"),t("td",null,"-")],-1),y=t("tr",null,[t("td",null,"rotation"),t("td",null,"旋转角度"),t("td",null,[t("code",null,"number ")]),t("td",null,"-"),t("td"),t("td",null,"-")],-1),h=t("tr",null,[t("td",null,"enableDragging"),t("td",null,"是否启用拖拽"),t("td",null,[t("code",null,"boolean ")]),t("td",null,"-"),t("td",null,[t("code",null," true")]),t("td",null,"-")],-1),_=t("tr",null,[t("td",null,"enableMassClear"),t("td",null,[e("是否在调用 "),t("code",null,"map.clearOverlays"),e(" 清除此覆盖物")]),t("td",null,[t("code",null,"boolean ")]),t("td",null,"-"),t("td",null,[t("code",null,"true ")]),t("td",null,"-")],-1),m=t("td",null,"visible",-1),x=t("td",null,"是否显示",-1),O=t("td",null,[t("code",null,"boolean")],-1),F=t("td",null,"-",-1),L=t("td",null,[t("code",null,"true")],-1),b=a('

默认图标可选值

simple_red , simple_blue , loc_red , loc_blue , start , end , location

红色图标: red1 , red2 , red3 , red4 , red5 , red6 , red7 , red8 , red9 , red10

蓝色图标: blue1 , blue2 , blue3 , blue4 , blue5 , blue6 , blue7 , blue8 , blue9 , blue10

其余图标可根据下图自行定位裁切:

https://mapopen.bj.bcebos.com/cms/react-bmap/markers_new2x_fbb9e99.png

自定义图标

',7),Q={tabindex:"0"},B=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"默认值"),t("th",null,"版本")])],-1),S=t("tr",null,[t("td",null,"anchor"),t("td",null,"图标的定位点相对于图标左上角的偏移值"),t("td",null,[t("code",null,"{ x: number, y: number }")]),t("td",null,"-"),t("td",null,"-")],-1),U=t("tr",null,[t("td",null,"imageOffset"),t("td",null,"图标所用的图片相对于可视区域的偏移值,此功能的作用等同于 CSS 中的 background-position 属性"),t("td",null,[t("code",null,"{ x: number, y: number }")]),t("td",null,"-"),t("td",null,"-")],-1),w=t("td",null,"size",-1),v=t("td",null,"图标可视区域的大小",-1),Y=t("td",null,[t("code",null,"{ width: number, height: number }")],-1),P=t("td",null,[t("code",null,"required")],-1),Z=t("tr",null,[t("td",null,"imageSize"),t("td",null,"图标所用的图片的大小,此功能的作用等同于 CSS 中的 background-size 属性。可用于实现高清屏的高清效果"),t("td",null,[t("code",null,"{ width: number, height: number }")]),t("td",null,"-"),t("td",null,"-")],-1),f=t("tr",null,[t("td",null,"imageUrl"),t("td",null,"图标所用图像资源的位置"),t("td",null,[t("code",null,"string")]),t("td",null,[t("code",null,"required")]),t("td",null,"-")],-1),q=t("tr",null,[t("td",null,"printImageUrl"),t("td",null,"设置 icon 打印图片的 url,该打印图片只针对 IE6 有效,解决 IE6 使用 PNG 滤镜导致的错位问题。如果您的 icon 没有使用 PNG 格式图片或者没有使用 CSS Sprites 技术,则可忽略此配置"),t("td",null,[t("code",null,"string ")]),t("td",null,"-"),t("td",null,"-")],-1),V=a('

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。当双击时,产生的事件序列为:click -> click -> dblclick((e: Event) => void)
dblclick鼠标左键双击事件的回调函数((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数((e: Event) => void)
remove该覆盖物被移除的回调函数((e: Event) => void)
infowindowcloseinfowindow 关闭事件的回调函数((e: Event) => void)
infowindowopeninfowindow 打开事件的回调函数((e: Event) => void)
dragstart拖拽覆盖物开始事件的回调函数((e: Event) => void)
dragging覆盖物拖拽中事件的回调函数((e: Event) => void)
dragend拖拽覆盖物结束事件的回调函数((e: Event) => void)
rightclick鼠标右键单击事件的回调函数((e: Event) => void)
',2);function R(G,W,J,X,H,$){const o=l("Demo"),s=l("Badge");return D(),d("div",null,[E,n(o,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E16%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%26lt%3B!--%20%E8%B5%B7%E7%82%B9%E5%9B%BE%E6%A0%87%20--%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AzIndex%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E99%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.403901%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eicon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estart%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%26lt%3B!--%20%E7%BB%88%E7%82%B9%E5%9B%BE%E6%A0%87%20--%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.404901%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eicon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eend%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%26lt%3B!--%20%E7%BA%A2%E8%89%B2%E5%9B%BE%E6%A0%871%20--%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.405901%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eicon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ered1%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%26lt%3B!--%20%E7%BA%A2%E8%89%B2%E5%9B%BE%E6%A0%872%20--%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.403901%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eicon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Esimple_red%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%26lt%3B!--%20%E8%87%AA%E5%AE%9A%E4%B9%89%E5%9B%BE%E6%A0%87%20--%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.400901%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aicon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%0A%20%20%20%20%20%20%20%20imageUrl%3A%20'data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSI0OCIgaGVpZ2h0PSI0OCIgdmlld0JveD0iMCAwIDQ4IDQ4IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMjQgNEMxMi45NTQzIDQgNCAxMi45NTQzIDQgMjRDNCAzNS4wNDU3IDEyLjk1NDMgNDQgMjQgNDRDMzUuMDQ1NyA0NCA0NCAzNS4wNDU3IDQ0IDI0QzQ0IDEyLjk1NDMgMzUuMDQ1NyA0IDI0IDRaTTAgMjRDMCAxMC43NDUyIDEwLjc0NTIgMCAyNCAwQzM3LjI1NDggMCA0OCAxMC43NDUyIDQ4IDI0QzQ4IDM3LjI1NDggMzcuMjU0OCA0OCAyNCA0OEMxMC43NDUyIDQ4IDAgMzcuMjU0OCAwIDI0WiIgZmlsbD0iIzAwMDAwMCIvPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTkuMTgzMyA0NS40NzE2QzE4Ljk4OTggNDUuMjIxOSAxOC45ODk4IDQyLjk5NzMgMTkuMTgzMyAzOC43OThDMTcuMTExNCAzOC44Njk2IDE1LjgwMjQgMzguNzI1OCAxNS4yNTYzIDM4LjM2NjdDMTQuNDM3IDM3LjgyOCAxMy42MTY5IDM2LjE2NjcgMTIuODg5MSAzNC45OTU5QzEyLjE2MTQgMzMuODI1MSAxMC41NDYzIDMzLjY0IDkuODk0MDUgMzMuMzc4M0M5LjI0MTgyIDMzLjExNjUgOS4wNzgwOSAzMi4wNDk2IDExLjY5MTMgMzIuODU2NUMxNC4zMDQ0IDMzLjY2MzQgMTQuNDMxOSAzNS44NjA3IDE1LjI1NjMgMzYuMzc0NUMxNi4wODA2IDM2Ljg4ODMgMTguMDUxNSAzNi42NjM1IDE4Ljk0NDggMzYuMjUxOUMxOS44MzgyIDM1Ljg0MDMgMTkuNzcyNCAzNC4zMDc4IDE5LjkzMTcgMzMuNzAwN0MyMC4xMzMxIDMzLjEzNCAxOS40MjMzIDMzLjAwODMgMTkuNDA3NyAzMy4wMDM3QzE4LjUzNTUgMzMuMDAzNyAxMy45NTM5IDMyLjAwNzMgMTIuNjk1NSAyNy41NzA2QzExLjQzNyAyMy4xMzQgMTMuMDU4MSAyMC4yMzQxIDEzLjkyMjkgMTguOTg3NUMxNC40OTk1IDE4LjE1NjQgMTQuNDQ4NSAxNi4zODUyIDEzLjc2OTkgMTMuNjczN0MxNi4yMzM1IDEzLjM1ODkgMTguMTM0NyAxNC4xMzQzIDE5LjQ3MzQgMTYuMDAwMUMxOS40NzQ3IDE2LjAxMDggMjEuMjI4NSAxNC45NTcyIDI0LjAwMDMgMTQuOTU3MkMyNi43NzIgMTQuOTU3MiAyNy43NTUzIDE1LjgxNTQgMjguNTE0MiAxNi4wMDAxQzI5LjI3MzEgMTYuMTg0OCAyOS44OCAxMi43MzQxIDM0LjU2NjggMTMuNjczN0MzMy41ODgzIDE1LjU5NjkgMzIuNzY4OSAxOC4wMDAxIDMzLjM5NDMgMTguOTg3NUMzNC4wMTk4IDE5Ljk3NDkgMzYuNDc0NSAyMy4xMTQ3IDM0Ljk2NjYgMjcuNTcwNkMzMy45NjE0IDMwLjU0MTMgMzEuOTg1MyAzMi4zNTIzIDI5LjAzODQgMzMuMDAzN0MyOC43MDA1IDMzLjExMTUgMjguNTMxNSAzMy4yODU1IDI4LjUzMTUgMzMuNTI1NUMyOC41MzE1IDMzLjg4NTYgMjguOTg4NCAzMy45MjQ5IDI5LjY0NjUgMzUuNjExN0MzMC4wODUzIDM2LjczNjIgMzAuMTE3IDM5Ljk0OCAyOS43NDE2IDQ1LjI0N0MyOC43OTA2IDQ1LjQ4OTEgMjguMDUwOCA0NS42NTE2IDI3LjUyMjEgNDUuNzM0N0MyNi41ODQ3IDQ1Ljg4MiAyNS41NjY5IDQ1Ljk2NDYgMjQuNTY2OSA0NS45OTY1QzIzLjU2NjkgNDYuMDI4NCAyMy4yMTk2IDQ2LjAyNDggMjEuODM3IDQ1Ljg5NjFDMjAuOTE1NCA0NS44MTAzIDIwLjAzMDggNDUuNjY4OCAxOS4xODMzIDQ1LjQ3MTZaIiBmaWxsPSIjMDAwMDAwIi8%2BPC9zdmc%2B'%2C%0A%20%20%20%20%20%20%20%20size%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20width%3A%20100%2C%0A%20%20%20%20%20%20%20%20%20%20height%3A%20100%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableDragging%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/marker","raw-source":"%3Ctemplate%3E%0A%20%20%20%20%3CBMap%20%3Azoom%3D%2216%22%3E%0A%20%20%20%20%20%20%3C!--%20%E8%B5%B7%E7%82%B9%E5%9B%BE%E6%A0%87%20--%3E%0A%20%20%20%20%20%20%3CBMarker%20%3AzIndex%3D%2299%22%20%3Aposition%3D%22%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.403901%20%7D%22%20icon%3D%22start%22%20%2F%3E%0A%20%20%20%20%20%20%3C!--%20%E7%BB%88%E7%82%B9%E5%9B%BE%E6%A0%87%20--%3E%0A%20%20%20%20%20%20%3CBMarker%20%3Aposition%3D%22%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.404901%20%7D%22%20icon%3D%22end%22%20%2F%3E%0A%20%20%20%20%20%20%3C!--%20%E7%BA%A2%E8%89%B2%E5%9B%BE%E6%A0%871%20--%3E%0A%20%20%20%20%20%20%3CBMarker%20%3Aposition%3D%22%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.405901%20%7D%22%20icon%3D%22red1%22%20%2F%3E%0A%20%20%20%20%20%20%3C!--%20%E7%BA%A2%E8%89%B2%E5%9B%BE%E6%A0%872%20--%3E%0A%20%20%20%20%20%20%3CBMarker%20%3Aposition%3D%22%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.403901%20%7D%22%20icon%3D%22simple_red%22%20%2F%3E%0A%20%20%20%20%20%20%3C!--%20%E8%87%AA%E5%AE%9A%E4%B9%89%E5%9B%BE%E6%A0%87%20--%3E%0A%20%20%20%20%20%20%3CBMarker%0A%20%20%20%20%20%20%3Aposition%3D%22%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.400901%20%7D%22%0A%20%20%20%20%20%20%3Aicon%3D%22%7B%0A%20%20%20%20%20%20%20%20imageUrl%3A%20'data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSI0OCIgaGVpZ2h0PSI0OCIgdmlld0JveD0iMCAwIDQ4IDQ4IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMjQgNEMxMi45NTQzIDQgNCAxMi45NTQzIDQgMjRDNCAzNS4wNDU3IDEyLjk1NDMgNDQgMjQgNDRDMzUuMDQ1NyA0NCA0NCAzNS4wNDU3IDQ0IDI0QzQ0IDEyLjk1NDMgMzUuMDQ1NyA0IDI0IDRaTTAgMjRDMCAxMC43NDUyIDEwLjc0NTIgMCAyNCAwQzM3LjI1NDggMCA0OCAxMC43NDUyIDQ4IDI0QzQ4IDM3LjI1NDggMzcuMjU0OCA0OCAyNCA0OEMxMC43NDUyIDQ4IDAgMzcuMjU0OCAwIDI0WiIgZmlsbD0iIzAwMDAwMCIvPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTkuMTgzMyA0NS40NzE2QzE4Ljk4OTggNDUuMjIxOSAxOC45ODk4IDQyLjk5NzMgMTkuMTgzMyAzOC43OThDMTcuMTExNCAzOC44Njk2IDE1LjgwMjQgMzguNzI1OCAxNS4yNTYzIDM4LjM2NjdDMTQuNDM3IDM3LjgyOCAxMy42MTY5IDM2LjE2NjcgMTIuODg5MSAzNC45OTU5QzEyLjE2MTQgMzMuODI1MSAxMC41NDYzIDMzLjY0IDkuODk0MDUgMzMuMzc4M0M5LjI0MTgyIDMzLjExNjUgOS4wNzgwOSAzMi4wNDk2IDExLjY5MTMgMzIuODU2NUMxNC4zMDQ0IDMzLjY2MzQgMTQuNDMxOSAzNS44NjA3IDE1LjI1NjMgMzYuMzc0NUMxNi4wODA2IDM2Ljg4ODMgMTguMDUxNSAzNi42NjM1IDE4Ljk0NDggMzYuMjUxOUMxOS44MzgyIDM1Ljg0MDMgMTkuNzcyNCAzNC4zMDc4IDE5LjkzMTcgMzMuNzAwN0MyMC4xMzMxIDMzLjEzNCAxOS40MjMzIDMzLjAwODMgMTkuNDA3NyAzMy4wMDM3QzE4LjUzNTUgMzMuMDAzNyAxMy45NTM5IDMyLjAwNzMgMTIuNjk1NSAyNy41NzA2QzExLjQzNyAyMy4xMzQgMTMuMDU4MSAyMC4yMzQxIDEzLjkyMjkgMTguOTg3NUMxNC40OTk1IDE4LjE1NjQgMTQuNDQ4NSAxNi4zODUyIDEzLjc2OTkgMTMuNjczN0MxNi4yMzM1IDEzLjM1ODkgMTguMTM0NyAxNC4xMzQzIDE5LjQ3MzQgMTYuMDAwMUMxOS40NzQ3IDE2LjAxMDggMjEuMjI4NSAxNC45NTcyIDI0LjAwMDMgMTQuOTU3MkMyNi43NzIgMTQuOTU3MiAyNy43NTUzIDE1LjgxNTQgMjguNTE0MiAxNi4wMDAxQzI5LjI3MzEgMTYuMTg0OCAyOS44OCAxMi43MzQxIDM0LjU2NjggMTMuNjczN0MzMy41ODgzIDE1LjU5NjkgMzIuNzY4OSAxOC4wMDAxIDMzLjM5NDMgMTguOTg3NUMzNC4wMTk4IDE5Ljk3NDkgMzYuNDc0NSAyMy4xMTQ3IDM0Ljk2NjYgMjcuNTcwNkMzMy45NjE0IDMwLjU0MTMgMzEuOTg1MyAzMi4zNTIzIDI5LjAzODQgMzMuMDAzN0MyOC43MDA1IDMzLjExMTUgMjguNTMxNSAzMy4yODU1IDI4LjUzMTUgMzMuNTI1NUMyOC41MzE1IDMzLjg4NTYgMjguOTg4NCAzMy45MjQ5IDI5LjY0NjUgMzUuNjExN0MzMC4wODUzIDM2LjczNjIgMzAuMTE3IDM5Ljk0OCAyOS43NDE2IDQ1LjI0N0MyOC43OTA2IDQ1LjQ4OTEgMjguMDUwOCA0NS42NTE2IDI3LjUyMjEgNDUuNzM0N0MyNi41ODQ3IDQ1Ljg4MiAyNS41NjY5IDQ1Ljk2NDYgMjQuNTY2OSA0NS45OTY1QzIzLjU2NjkgNDYuMDI4NCAyMy4yMTk2IDQ2LjAyNDggMjEuODM3IDQ1Ljg5NjFDMjAuOTE1NCA0NS44MTAzIDIwLjAzMDggNDUuNjY4OCAxOS4xODMzIDQ1LjQ3MTZaIiBmaWxsPSIjMDAwMDAwIi8%2BPC9zdmc%2B'%2C%0A%20%20%20%20%20%20%20%20size%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20width%3A%20100%2C%0A%20%20%20%20%20%20%20%20%20%20height%3A%20100%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%22%0A%20%20%20%20%20%20enableDragging%0A%20%20%20%20%20%20%2F%3E%0A%20%20%20%20%3C%2FBMap%3E%0A%20%20%3C%2Ftemplate%3E%0A",description:"%3Cp%3E%E6%8B%96%E5%8A%A8%E5%9B%BE%E7%89%87%E8%AF%95%E8%AF%95%3C%2Fp%3E%0A"},{default:u(()=>[p]),_:1}),C,t("table",i,[r,t("tbody",null,[t("tr",null,[g,N,A,z,I,t("td",null,[n(s,{type:"tip",text:"^0.0.35"})])]),k,j,T,y,h,_,t("tr",null,[m,x,O,F,L,t("td",null,[n(s,{type:"tip",text:"^2.2.0"})])])])]),b,t("table",Q,[B,t("tbody",null,[S,U,t("tr",null,[w,v,Y,P,t("td",null,[n(s,{type:"tip",text:"^2.3.3"})])]),Z,f,q])]),V])}const n2=M(c,[["render",R]]);export{t2 as __pageData,n2 as default}; diff --git a/assets/zh-CN_components_overlay_marker.md.D_cVCEpz.lean.js b/assets/zh-CN_components_overlay_marker.md.D_cVCEpz.lean.js new file mode 100644 index 00000000..fc66c0b8 --- /dev/null +++ b/assets/zh-CN_components_overlay_marker.md.D_cVCEpz.lean.js @@ -0,0 +1 @@ +import{_ as M,c as d,I as n,w as u,j as t,al as a,a as e,D as l,o as D}from"./chunks/framework.n6hqIsqL.js";const t2=JSON.parse('{"title":"BMarker 标注点","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/overlay/marker.md","filePath":"zh-CN/components/overlay/marker.md","lastUpdated":1724785300000}'),c={name:"zh-CN/components/overlay/marker.md"},E=a("",5),p=t("p",null,"overlay/marker",-1),C=a("",3),i={tabindex:"0"},r=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"可选值"),t("th",null,"默认值"),t("th",null,"版本")])],-1),g=t("td",null,"zIndex",-1),N=t("td",null,"显示层级",-1),A=t("td",null,[t("code",null,"number")],-1),z=t("td",null,"-",-1),I=t("td",null,"-",-1),k=t("tr",null,[t("td",null,"position"),t("td",null,"标注点的坐标"),t("td",null,[t("code",null,"{ lng: number, lat: number}")]),t("td",null,"-"),t("td",null,[t("code",null,"required")]),t("td",null,"-")],-1),j=t("tr",null,[t("td",null,"offset"),t("td",null,"标注点的像素偏移"),t("td",null,[t("code",null," {x: number, y: number }")]),t("td",null,"-"),t("td"),t("td",null,"-")],-1),T=t("tr",null,[t("td",null,"icon"),t("td",null,[e("标注点的图标。可使用默认图标,也可"),t("a",{href:"#自定义图标"},"自定义图标")]),t("td",null,[t("code",null,"string ")]),t("td",null,[t("code",null,"simple_red / simple_blue...")]),t("td",null,"-"),t("td",null,"-")],-1),y=t("tr",null,[t("td",null,"rotation"),t("td",null,"旋转角度"),t("td",null,[t("code",null,"number ")]),t("td",null,"-"),t("td"),t("td",null,"-")],-1),h=t("tr",null,[t("td",null,"enableDragging"),t("td",null,"是否启用拖拽"),t("td",null,[t("code",null,"boolean ")]),t("td",null,"-"),t("td",null,[t("code",null," true")]),t("td",null,"-")],-1),_=t("tr",null,[t("td",null,"enableMassClear"),t("td",null,[e("是否在调用 "),t("code",null,"map.clearOverlays"),e(" 清除此覆盖物")]),t("td",null,[t("code",null,"boolean ")]),t("td",null,"-"),t("td",null,[t("code",null,"true ")]),t("td",null,"-")],-1),m=t("td",null,"visible",-1),x=t("td",null,"是否显示",-1),O=t("td",null,[t("code",null,"boolean")],-1),F=t("td",null,"-",-1),L=t("td",null,[t("code",null,"true")],-1),b=a("",7),Q={tabindex:"0"},B=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"默认值"),t("th",null,"版本")])],-1),S=t("tr",null,[t("td",null,"anchor"),t("td",null,"图标的定位点相对于图标左上角的偏移值"),t("td",null,[t("code",null,"{ x: number, y: number }")]),t("td",null,"-"),t("td",null,"-")],-1),U=t("tr",null,[t("td",null,"imageOffset"),t("td",null,"图标所用的图片相对于可视区域的偏移值,此功能的作用等同于 CSS 中的 background-position 属性"),t("td",null,[t("code",null,"{ x: number, y: number }")]),t("td",null,"-"),t("td",null,"-")],-1),w=t("td",null,"size",-1),v=t("td",null,"图标可视区域的大小",-1),Y=t("td",null,[t("code",null,"{ width: number, height: number }")],-1),P=t("td",null,[t("code",null,"required")],-1),Z=t("tr",null,[t("td",null,"imageSize"),t("td",null,"图标所用的图片的大小,此功能的作用等同于 CSS 中的 background-size 属性。可用于实现高清屏的高清效果"),t("td",null,[t("code",null,"{ width: number, height: number }")]),t("td",null,"-"),t("td",null,"-")],-1),f=t("tr",null,[t("td",null,"imageUrl"),t("td",null,"图标所用图像资源的位置"),t("td",null,[t("code",null,"string")]),t("td",null,[t("code",null,"required")]),t("td",null,"-")],-1),q=t("tr",null,[t("td",null,"printImageUrl"),t("td",null,"设置 icon 打印图片的 url,该打印图片只针对 IE6 有效,解决 IE6 使用 PNG 滤镜导致的错位问题。如果您的 icon 没有使用 PNG 格式图片或者没有使用 CSS Sprites 技术,则可忽略此配置"),t("td",null,[t("code",null,"string ")]),t("td",null,"-"),t("td",null,"-")],-1),V=a("",2);function R(G,W,J,X,H,$){const o=l("Demo"),s=l("Badge");return D(),d("div",null,[E,n(o,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E16%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%26lt%3B!--%20%E8%B5%B7%E7%82%B9%E5%9B%BE%E6%A0%87%20--%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AzIndex%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E99%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.403901%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eicon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estart%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%26lt%3B!--%20%E7%BB%88%E7%82%B9%E5%9B%BE%E6%A0%87%20--%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.404901%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eicon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eend%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%26lt%3B!--%20%E7%BA%A2%E8%89%B2%E5%9B%BE%E6%A0%871%20--%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.405901%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eicon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ered1%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%26lt%3B!--%20%E7%BA%A2%E8%89%B2%E5%9B%BE%E6%A0%872%20--%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.403901%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eicon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Esimple_red%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%26lt%3B!--%20%E8%87%AA%E5%AE%9A%E4%B9%89%E5%9B%BE%E6%A0%87%20--%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.400901%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aicon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%0A%20%20%20%20%20%20%20%20imageUrl%3A%20'data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSI0OCIgaGVpZ2h0PSI0OCIgdmlld0JveD0iMCAwIDQ4IDQ4IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMjQgNEMxMi45NTQzIDQgNCAxMi45NTQzIDQgMjRDNCAzNS4wNDU3IDEyLjk1NDMgNDQgMjQgNDRDMzUuMDQ1NyA0NCA0NCAzNS4wNDU3IDQ0IDI0QzQ0IDEyLjk1NDMgMzUuMDQ1NyA0IDI0IDRaTTAgMjRDMCAxMC43NDUyIDEwLjc0NTIgMCAyNCAwQzM3LjI1NDggMCA0OCAxMC43NDUyIDQ4IDI0QzQ4IDM3LjI1NDggMzcuMjU0OCA0OCAyNCA0OEMxMC43NDUyIDQ4IDAgMzcuMjU0OCAwIDI0WiIgZmlsbD0iIzAwMDAwMCIvPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTkuMTgzMyA0NS40NzE2QzE4Ljk4OTggNDUuMjIxOSAxOC45ODk4IDQyLjk5NzMgMTkuMTgzMyAzOC43OThDMTcuMTExNCAzOC44Njk2IDE1LjgwMjQgMzguNzI1OCAxNS4yNTYzIDM4LjM2NjdDMTQuNDM3IDM3LjgyOCAxMy42MTY5IDM2LjE2NjcgMTIuODg5MSAzNC45OTU5QzEyLjE2MTQgMzMuODI1MSAxMC41NDYzIDMzLjY0IDkuODk0MDUgMzMuMzc4M0M5LjI0MTgyIDMzLjExNjUgOS4wNzgwOSAzMi4wNDk2IDExLjY5MTMgMzIuODU2NUMxNC4zMDQ0IDMzLjY2MzQgMTQuNDMxOSAzNS44NjA3IDE1LjI1NjMgMzYuMzc0NUMxNi4wODA2IDM2Ljg4ODMgMTguMDUxNSAzNi42NjM1IDE4Ljk0NDggMzYuMjUxOUMxOS44MzgyIDM1Ljg0MDMgMTkuNzcyNCAzNC4zMDc4IDE5LjkzMTcgMzMuNzAwN0MyMC4xMzMxIDMzLjEzNCAxOS40MjMzIDMzLjAwODMgMTkuNDA3NyAzMy4wMDM3QzE4LjUzNTUgMzMuMDAzNyAxMy45NTM5IDMyLjAwNzMgMTIuNjk1NSAyNy41NzA2QzExLjQzNyAyMy4xMzQgMTMuMDU4MSAyMC4yMzQxIDEzLjkyMjkgMTguOTg3NUMxNC40OTk1IDE4LjE1NjQgMTQuNDQ4NSAxNi4zODUyIDEzLjc2OTkgMTMuNjczN0MxNi4yMzM1IDEzLjM1ODkgMTguMTM0NyAxNC4xMzQzIDE5LjQ3MzQgMTYuMDAwMUMxOS40NzQ3IDE2LjAxMDggMjEuMjI4NSAxNC45NTcyIDI0LjAwMDMgMTQuOTU3MkMyNi43NzIgMTQuOTU3MiAyNy43NTUzIDE1LjgxNTQgMjguNTE0MiAxNi4wMDAxQzI5LjI3MzEgMTYuMTg0OCAyOS44OCAxMi43MzQxIDM0LjU2NjggMTMuNjczN0MzMy41ODgzIDE1LjU5NjkgMzIuNzY4OSAxOC4wMDAxIDMzLjM5NDMgMTguOTg3NUMzNC4wMTk4IDE5Ljk3NDkgMzYuNDc0NSAyMy4xMTQ3IDM0Ljk2NjYgMjcuNTcwNkMzMy45NjE0IDMwLjU0MTMgMzEuOTg1MyAzMi4zNTIzIDI5LjAzODQgMzMuMDAzN0MyOC43MDA1IDMzLjExMTUgMjguNTMxNSAzMy4yODU1IDI4LjUzMTUgMzMuNTI1NUMyOC41MzE1IDMzLjg4NTYgMjguOTg4NCAzMy45MjQ5IDI5LjY0NjUgMzUuNjExN0MzMC4wODUzIDM2LjczNjIgMzAuMTE3IDM5Ljk0OCAyOS43NDE2IDQ1LjI0N0MyOC43OTA2IDQ1LjQ4OTEgMjguMDUwOCA0NS42NTE2IDI3LjUyMjEgNDUuNzM0N0MyNi41ODQ3IDQ1Ljg4MiAyNS41NjY5IDQ1Ljk2NDYgMjQuNTY2OSA0NS45OTY1QzIzLjU2NjkgNDYuMDI4NCAyMy4yMTk2IDQ2LjAyNDggMjEuODM3IDQ1Ljg5NjFDMjAuOTE1NCA0NS44MTAzIDIwLjAzMDggNDUuNjY4OCAxOS4xODMzIDQ1LjQ3MTZaIiBmaWxsPSIjMDAwMDAwIi8%2BPC9zdmc%2B'%2C%0A%20%20%20%20%20%20%20%20size%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20width%3A%20100%2C%0A%20%20%20%20%20%20%20%20%20%20height%3A%20100%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableDragging%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/marker","raw-source":"%3Ctemplate%3E%0A%20%20%20%20%3CBMap%20%3Azoom%3D%2216%22%3E%0A%20%20%20%20%20%20%3C!--%20%E8%B5%B7%E7%82%B9%E5%9B%BE%E6%A0%87%20--%3E%0A%20%20%20%20%20%20%3CBMarker%20%3AzIndex%3D%2299%22%20%3Aposition%3D%22%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.403901%20%7D%22%20icon%3D%22start%22%20%2F%3E%0A%20%20%20%20%20%20%3C!--%20%E7%BB%88%E7%82%B9%E5%9B%BE%E6%A0%87%20--%3E%0A%20%20%20%20%20%20%3CBMarker%20%3Aposition%3D%22%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.404901%20%7D%22%20icon%3D%22end%22%20%2F%3E%0A%20%20%20%20%20%20%3C!--%20%E7%BA%A2%E8%89%B2%E5%9B%BE%E6%A0%871%20--%3E%0A%20%20%20%20%20%20%3CBMarker%20%3Aposition%3D%22%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.405901%20%7D%22%20icon%3D%22red1%22%20%2F%3E%0A%20%20%20%20%20%20%3C!--%20%E7%BA%A2%E8%89%B2%E5%9B%BE%E6%A0%872%20--%3E%0A%20%20%20%20%20%20%3CBMarker%20%3Aposition%3D%22%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.403901%20%7D%22%20icon%3D%22simple_red%22%20%2F%3E%0A%20%20%20%20%20%20%3C!--%20%E8%87%AA%E5%AE%9A%E4%B9%89%E5%9B%BE%E6%A0%87%20--%3E%0A%20%20%20%20%20%20%3CBMarker%0A%20%20%20%20%20%20%3Aposition%3D%22%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.400901%20%7D%22%0A%20%20%20%20%20%20%3Aicon%3D%22%7B%0A%20%20%20%20%20%20%20%20imageUrl%3A%20'data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSI0OCIgaGVpZ2h0PSI0OCIgdmlld0JveD0iMCAwIDQ4IDQ4IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMjQgNEMxMi45NTQzIDQgNCAxMi45NTQzIDQgMjRDNCAzNS4wNDU3IDEyLjk1NDMgNDQgMjQgNDRDMzUuMDQ1NyA0NCA0NCAzNS4wNDU3IDQ0IDI0QzQ0IDEyLjk1NDMgMzUuMDQ1NyA0IDI0IDRaTTAgMjRDMCAxMC43NDUyIDEwLjc0NTIgMCAyNCAwQzM3LjI1NDggMCA0OCAxMC43NDUyIDQ4IDI0QzQ4IDM3LjI1NDggMzcuMjU0OCA0OCAyNCA0OEMxMC43NDUyIDQ4IDAgMzcuMjU0OCAwIDI0WiIgZmlsbD0iIzAwMDAwMCIvPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTkuMTgzMyA0NS40NzE2QzE4Ljk4OTggNDUuMjIxOSAxOC45ODk4IDQyLjk5NzMgMTkuMTgzMyAzOC43OThDMTcuMTExNCAzOC44Njk2IDE1LjgwMjQgMzguNzI1OCAxNS4yNTYzIDM4LjM2NjdDMTQuNDM3IDM3LjgyOCAxMy42MTY5IDM2LjE2NjcgMTIuODg5MSAzNC45OTU5QzEyLjE2MTQgMzMuODI1MSAxMC41NDYzIDMzLjY0IDkuODk0MDUgMzMuMzc4M0M5LjI0MTgyIDMzLjExNjUgOS4wNzgwOSAzMi4wNDk2IDExLjY5MTMgMzIuODU2NUMxNC4zMDQ0IDMzLjY2MzQgMTQuNDMxOSAzNS44NjA3IDE1LjI1NjMgMzYuMzc0NUMxNi4wODA2IDM2Ljg4ODMgMTguMDUxNSAzNi42NjM1IDE4Ljk0NDggMzYuMjUxOUMxOS44MzgyIDM1Ljg0MDMgMTkuNzcyNCAzNC4zMDc4IDE5LjkzMTcgMzMuNzAwN0MyMC4xMzMxIDMzLjEzNCAxOS40MjMzIDMzLjAwODMgMTkuNDA3NyAzMy4wMDM3QzE4LjUzNTUgMzMuMDAzNyAxMy45NTM5IDMyLjAwNzMgMTIuNjk1NSAyNy41NzA2QzExLjQzNyAyMy4xMzQgMTMuMDU4MSAyMC4yMzQxIDEzLjkyMjkgMTguOTg3NUMxNC40OTk1IDE4LjE1NjQgMTQuNDQ4NSAxNi4zODUyIDEzLjc2OTkgMTMuNjczN0MxNi4yMzM1IDEzLjM1ODkgMTguMTM0NyAxNC4xMzQzIDE5LjQ3MzQgMTYuMDAwMUMxOS40NzQ3IDE2LjAxMDggMjEuMjI4NSAxNC45NTcyIDI0LjAwMDMgMTQuOTU3MkMyNi43NzIgMTQuOTU3MiAyNy43NTUzIDE1LjgxNTQgMjguNTE0MiAxNi4wMDAxQzI5LjI3MzEgMTYuMTg0OCAyOS44OCAxMi43MzQxIDM0LjU2NjggMTMuNjczN0MzMy41ODgzIDE1LjU5NjkgMzIuNzY4OSAxOC4wMDAxIDMzLjM5NDMgMTguOTg3NUMzNC4wMTk4IDE5Ljk3NDkgMzYuNDc0NSAyMy4xMTQ3IDM0Ljk2NjYgMjcuNTcwNkMzMy45NjE0IDMwLjU0MTMgMzEuOTg1MyAzMi4zNTIzIDI5LjAzODQgMzMuMDAzN0MyOC43MDA1IDMzLjExMTUgMjguNTMxNSAzMy4yODU1IDI4LjUzMTUgMzMuNTI1NUMyOC41MzE1IDMzLjg4NTYgMjguOTg4NCAzMy45MjQ5IDI5LjY0NjUgMzUuNjExN0MzMC4wODUzIDM2LjczNjIgMzAuMTE3IDM5Ljk0OCAyOS43NDE2IDQ1LjI0N0MyOC43OTA2IDQ1LjQ4OTEgMjguMDUwOCA0NS42NTE2IDI3LjUyMjEgNDUuNzM0N0MyNi41ODQ3IDQ1Ljg4MiAyNS41NjY5IDQ1Ljk2NDYgMjQuNTY2OSA0NS45OTY1QzIzLjU2NjkgNDYuMDI4NCAyMy4yMTk2IDQ2LjAyNDggMjEuODM3IDQ1Ljg5NjFDMjAuOTE1NCA0NS44MTAzIDIwLjAzMDggNDUuNjY4OCAxOS4xODMzIDQ1LjQ3MTZaIiBmaWxsPSIjMDAwMDAwIi8%2BPC9zdmc%2B'%2C%0A%20%20%20%20%20%20%20%20size%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20width%3A%20100%2C%0A%20%20%20%20%20%20%20%20%20%20height%3A%20100%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%22%0A%20%20%20%20%20%20enableDragging%0A%20%20%20%20%20%20%2F%3E%0A%20%20%20%20%3C%2FBMap%3E%0A%20%20%3C%2Ftemplate%3E%0A",description:"%3Cp%3E%E6%8B%96%E5%8A%A8%E5%9B%BE%E7%89%87%E8%AF%95%E8%AF%95%3C%2Fp%3E%0A"},{default:u(()=>[p]),_:1}),C,t("table",i,[r,t("tbody",null,[t("tr",null,[g,N,A,z,I,t("td",null,[n(s,{type:"tip",text:"^0.0.35"})])]),k,j,T,y,h,_,t("tr",null,[m,x,O,F,L,t("td",null,[n(s,{type:"tip",text:"^2.2.0"})])])])]),b,t("table",Q,[B,t("tbody",null,[S,U,t("tr",null,[w,v,Y,P,t("td",null,[n(s,{type:"tip",text:"^2.3.3"})])]),Z,f,q])]),V])}const n2=M(c,[["render",R]]);export{t2 as __pageData,n2 as default}; diff --git a/assets/zh-CN_components_overlay_marker3d.md.DBnGeUZO.js b/assets/zh-CN_components_overlay_marker3d.md.DBnGeUZO.js new file mode 100644 index 00000000..12a386b3 --- /dev/null +++ b/assets/zh-CN_components_overlay_marker3d.md.DBnGeUZO.js @@ -0,0 +1 @@ +import{_ as E,c as l,I as n,w as p,j as a,al as s,a as t,D as o,o as c}from"./chunks/framework.n6hqIsqL.js";const w=JSON.parse('{"title":"BMarker3d 带高度的点","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/overlay/marker3d.md","filePath":"zh-CN/components/overlay/marker3d.md","lastUpdated":1724785300000}'),D={name:"zh-CN/components/overlay/marker3d.md"},u=s('

BMarker3d 带高度的点

在地图上绘制带高度的点覆盖物

ts
import { BMarker3d } from 'vue3-baidu-map-gl'

组件示例

',4),M=a("p",null,"overlay/marker3d/index",-1),i=a("h2",{id:"纹理贴图",tabindex:"-1"},[t("纹理贴图 "),a("a",{class:"header-anchor",href:"#纹理贴图","aria-label":'Permalink to "纹理贴图"'},"​")],-1),d=a("p",null,"overlay/marker3d/withImg",-1),r=s('

静态组件 Props

属性说明类型默认值
height点高度numberrequired
size点大小(宽/高)number50
shape点的形状BMAP_SHAPE_CIRCLE | BMAP_SHAPE_RECTBMAP_SHAPE_CIRCLE

点形状

属性说明
BMAP_SHAPE_CIRCLE圆形
BMAP_SHAPE_RECT正方形

动态组件 Props

',5),A={tabindex:"0"},k=a("thead",null,[a("tr",null,[a("th",null,"属性"),a("th",null,"说明"),a("th",null,"类型"),a("th",null,"可选值"),a("th",null,"默认值"),a("th",null,"版本")])],-1),g=a("tr",null,[a("td",null,"position"),a("td",null,"点的坐标"),a("td",null,[a("code",null,"{ lng: number, lat: number}")]),a("td",null,"-"),a("td",null,[a("code",null,"required")]),a("td",null,"-")],-1),N=a("tr",null,[a("td",null,"icon"),a("td",null,[t("点的图或"),a("a",{href:"#自定义纹理贴图"},"自定义纹理贴图")]),a("td",null,[a("code",null,"string ")]),a("td",null,"-"),a("td"),a("td",null,"-")],-1),I=a("tr",null,[a("td",null,"fillColor"),a("td",null,"点填充颜色,同 CSS 颜色"),a("td",null,[a("code",null,"string ")]),a("td",null,"-"),a("td",null,[a("code",null,"#f00")]),a("td",null,"-")],-1),F=a("tr",null,[a("td",null,"fillOpacity"),a("td",null,"点填充的透明度,范围 0-1"),a("td",null,[a("code",null,"number ")]),a("td",null,[a("code",null,"0-1")]),a("td",null,[a("code",null,"0.8 ")]),a("td",null,"-")],-1),z=a("tr",null,[a("td",null,"enableMassClear"),a("td",null,[t("是否在调用 "),a("code",null,"map.clearOverlays"),t(" 清除此覆盖物")]),a("td",null,[a("code",null,"boolean")]),a("td",null,"-"),a("td",null,[a("code",null," true")]),a("td",null,"-")],-1),j=a("td",null,"visible",-1),h=a("td",null,"是否显示",-1),y=a("td",null,[a("code",null,"boolean")],-1),T=a("td",null,"-",-1),m=a("td",null,[a("code",null,"true")],-1),x=s('

自定义纹理贴图

属性说明类型默认值
anchor贴图的定位点相对于贴图左上角的偏移值{ x: number, y: number }-
imageOffset贴图所用的图片相对于可视区域的偏移值,此功能的作用等同于 CSS 中的 background-position 属性{ x: number, y: number }-
imageSize贴图所用的图片的大小,此功能的作用等同于 CSS 中的background-size属性。可用于实现高清屏的高清效果{ width: number, height: number }required
imageUrl贴图所用图像资源的位置stringrequired
printImageUrl设置 icon 打印图片的 url,该打印图片只针对 IE6 有效,解决 IE6 使用 PNG 滤镜导致的错位问题。如果您的 icon 没有使用 PNG 格式图片或者没有使用 CSS Sprites 技术,则可忽略此配置string -

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。当双击时,产生的事件序列为:click -> click -> dblclick((e: Event) => void)
dblclick鼠标左键双击事件的回调函数((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数((e: Event) => void)
remove该覆盖物被移除的回调函数((e: Event) => void)
rightclick鼠标右键单击事件的回调函数((e: Event) => void)
',4);function O(L,Q,S,_,b,B){const e=o("Demo"),C=o("Badge");return c(),l("div",null,[u,n(e,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E16%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E64.5%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Atilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E73%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker3d%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epoint1%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aheight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E1200%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Asize%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E200%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EfillColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%23454399%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AfillOpacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E0.5%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Eshape%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EBMAP_SHAPE_CIRCLE%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20point1%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E39.915185%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.400901%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/marker3d/index","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%3Azoom%3D%2216%22%20%3Aheading%3D%2264.5%22%20%3Atilt%3D%2273%22%20enableScrollWheelZoom%3E%0A%20%20%20%20%3CBMarker3d%0A%20%20%20%20%20%20%3Aposition%3D%22point1%22%0A%20%20%20%20%20%20%3Aheight%3D%221200%22%0A%20%20%20%20%20%20%3Asize%3D%22200%22%0A%20%20%20%20%20%20fillColor%3D%22%23454399%22%0A%20%20%20%20%20%20%3AfillOpacity%3D%220.5%22%0A%20%20%20%20%20%20shape%3D%22BMAP_SHAPE_CIRCLE%22%0A%20%20%20%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%20lang%3D%22ts%22%3E%0A%20%20const%20point1%20%3D%20%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.400901%20%7D%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E5%9C%A8%E5%9C%B0%E5%9B%BE%E4%B8%8A%E7%BB%98%E5%88%B6%E5%B8%A6%E9%AB%98%E5%BA%A6%E7%9A%84%E7%82%B9%E8%A6%86%E7%9B%96%E7%89%A9%3C%2Fp%3E%0A"},{default:p(()=>[M]),_:1}),i,n(e,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E16%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E64.5%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Atilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E73%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker3d%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epoint1%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aheight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E1200%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Asize%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E200%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Eshape%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EBMAP_SHAPE_CIRCLE%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aicon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%0A%20%20%20%20%20%20%20%20imageUrl%3A%20base64Icon%2C%0A%20%20%20%20%20%20%20%20imageSize%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20width%3A%20200%2C%0A%20%20%20%20%20%20%20%20%20%20height%3A%20200%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker3d%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epoint2%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aheight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E800%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Asize%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E200%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Eshape%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EBMAP_SHAPE_CIRCLE%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aicon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%0A%20%20%20%20%20%20%20%20imageUrl%3A%20base64Icon%2C%0A%20%20%20%20%20%20%20%20imageSize%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20width%3A%20200%2C%0A%20%20%20%20%20%20%20%20%20%20height%3A%20200%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20point1%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E39.925185%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.400901%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20point2%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E39.915185%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.400901%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20base64Icon%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSI0OCIgaGVpZ2h0PSI0OCIgdmlld0JveD0iMCAwIDQ4IDQ4IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMjQgNEMxMi45NTQzIDQgNCAxMi45NTQzIDQgMjRDNCAzNS4wNDU3IDEyLjk1NDMgNDQgMjQgNDRDMzUuMDQ1NyA0NCA0NCAzNS4wNDU3IDQ0IDI0QzQ0IDEyLjk1NDMgMzUuMDQ1NyA0IDI0IDRaTTAgMjRDMCAxMC43NDUyIDEwLjc0NTIgMCAyNCAwQzM3LjI1NDggMCA0OCAxMC43NDUyIDQ4IDI0QzQ4IDM3LjI1NDggMzcuMjU0OCA0OCAyNCA0OEMxMC43NDUyIDQ4IDAgMzcuMjU0OCAwIDI0WiIgZmlsbD0iIzAwMDAwMCIvPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTkuMTgzMyA0NS40NzE2QzE4Ljk4OTggNDUuMjIxOSAxOC45ODk4IDQyLjk5NzMgMTkuMTgzMyAzOC43OThDMTcuMTExNCAzOC44Njk2IDE1LjgwMjQgMzguNzI1OCAxNS4yNTYzIDM4LjM2NjdDMTQuNDM3IDM3LjgyOCAxMy42MTY5IDM2LjE2NjcgMTIuODg5MSAzNC45OTU5QzEyLjE2MTQgMzMuODI1MSAxMC41NDYzIDMzLjY0IDkuODk0MDUgMzMuMzc4M0M5LjI0MTgyIDMzLjExNjUgOS4wNzgwOSAzMi4wNDk2IDExLjY5MTMgMzIuODU2NUMxNC4zMDQ0IDMzLjY2MzQgMTQuNDMxOSAzNS44NjA3IDE1LjI1NjMgMzYuMzc0NUMxNi4wODA2IDM2Ljg4ODMgMTguMDUxNSAzNi42NjM1IDE4Ljk0NDggMzYuMjUxOUMxOS44MzgyIDM1Ljg0MDMgMTkuNzcyNCAzNC4zMDc4IDE5LjkzMTcgMzMuNzAwN0MyMC4xMzMxIDMzLjEzNCAxOS40MjMzIDMzLjAwODMgMTkuNDA3NyAzMy4wMDM3QzE4LjUzNTUgMzMuMDAzNyAxMy45NTM5IDMyLjAwNzMgMTIuNjk1NSAyNy41NzA2QzExLjQzNyAyMy4xMzQgMTMuMDU4MSAyMC4yMzQxIDEzLjkyMjkgMTguOTg3NUMxNC40OTk1IDE4LjE1NjQgMTQuNDQ4NSAxNi4zODUyIDEzLjc2OTkgMTMuNjczN0MxNi4yMzM1IDEzLjM1ODkgMTguMTM0NyAxNC4xMzQzIDE5LjQ3MzQgMTYuMDAwMUMxOS40NzQ3IDE2LjAxMDggMjEuMjI4NSAxNC45NTcyIDI0LjAwMDMgMTQuOTU3MkMyNi43NzIgMTQuOTU3MiAyNy43NTUzIDE1LjgxNTQgMjguNTE0MiAxNi4wMDAxQzI5LjI3MzEgMTYuMTg0OCAyOS44OCAxMi43MzQxIDM0LjU2NjggMTMuNjczN0MzMy41ODgzIDE1LjU5NjkgMzIuNzY4OSAxOC4wMDAxIDMzLjM5NDMgMTguOTg3NUMzNC4wMTk4IDE5Ljk3NDkgMzYuNDc0NSAyMy4xMTQ3IDM0Ljk2NjYgMjcuNTcwNkMzMy45NjE0IDMwLjU0MTMgMzEuOTg1MyAzMi4zNTIzIDI5LjAzODQgMzMuMDAzN0MyOC43MDA1IDMzLjExMTUgMjguNTMxNSAzMy4yODU1IDI4LjUzMTUgMzMuNTI1NUMyOC41MzE1IDMzLjg4NTYgMjguOTg4NCAzMy45MjQ5IDI5LjY0NjUgMzUuNjExN0MzMC4wODUzIDM2LjczNjIgMzAuMTE3IDM5Ljk0OCAyOS43NDE2IDQ1LjI0N0MyOC43OTA2IDQ1LjQ4OTEgMjguMDUwOCA0NS42NTE2IDI3LjUyMjEgNDUuNzM0N0MyNi41ODQ3IDQ1Ljg4MiAyNS41NjY5IDQ1Ljk2NDYgMjQuNTY2OSA0NS45OTY1QzIzLjU2NjkgNDYuMDI4NCAyMy4yMTk2IDQ2LjAyNDggMjEuODM3IDQ1Ljg5NjFDMjAuOTE1NCA0NS44MTAzIDIwLjAzMDggNDUuNjY4OCAxOS4xODMzIDQ1LjQ3MTZaIiBmaWxsPSIjMDAwMDAwIi8%2BPC9zdmc%2B'%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/marker3d/withImg","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%3Azoom%3D%2216%22%20%3Aheading%3D%2264.5%22%20%3Atilt%3D%2273%22%20enableScrollWheelZoom%3E%0A%20%20%20%20%3CBMarker3d%0A%20%20%20%20%20%20%3Aposition%3D%22point1%22%0A%20%20%20%20%20%20%3Aheight%3D%221200%22%0A%20%20%20%20%20%20%3Asize%3D%22200%22%0A%20%20%20%20%20%20shape%3D%22BMAP_SHAPE_CIRCLE%22%0A%20%20%20%20%20%20%3Aicon%3D%22%7B%0A%20%20%20%20%20%20%20%20imageUrl%3A%20base64Icon%2C%0A%20%20%20%20%20%20%20%20imageSize%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20width%3A%20200%2C%0A%20%20%20%20%20%20%20%20%20%20height%3A%20200%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%22%0A%20%20%20%20%2F%3E%0A%20%20%20%20%3CBMarker3d%0A%20%20%20%20%20%20%3Aposition%3D%22point2%22%0A%20%20%20%20%20%20%3Aheight%3D%22800%22%0A%20%20%20%20%20%20%3Asize%3D%22200%22%0A%20%20%20%20%20%20shape%3D%22BMAP_SHAPE_CIRCLE%22%0A%20%20%20%20%20%20%3Aicon%3D%22%7B%0A%20%20%20%20%20%20%20%20imageUrl%3A%20base64Icon%2C%0A%20%20%20%20%20%20%20%20imageSize%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20width%3A%20200%2C%0A%20%20%20%20%20%20%20%20%20%20height%3A%20200%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%22%0A%20%20%20%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%20lang%3D%22ts%22%3E%0A%20%20const%20point1%20%3D%20%7B%20lat%3A%2039.925185%2C%20lng%3A%20116.400901%20%7D%0A%20%20const%20point2%20%3D%20%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.400901%20%7D%0A%20%20const%20base64Icon%20%3D%20'data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSI0OCIgaGVpZ2h0PSI0OCIgdmlld0JveD0iMCAwIDQ4IDQ4IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMjQgNEMxMi45NTQzIDQgNCAxMi45NTQzIDQgMjRDNCAzNS4wNDU3IDEyLjk1NDMgNDQgMjQgNDRDMzUuMDQ1NyA0NCA0NCAzNS4wNDU3IDQ0IDI0QzQ0IDEyLjk1NDMgMzUuMDQ1NyA0IDI0IDRaTTAgMjRDMCAxMC43NDUyIDEwLjc0NTIgMCAyNCAwQzM3LjI1NDggMCA0OCAxMC43NDUyIDQ4IDI0QzQ4IDM3LjI1NDggMzcuMjU0OCA0OCAyNCA0OEMxMC43NDUyIDQ4IDAgMzcuMjU0OCAwIDI0WiIgZmlsbD0iIzAwMDAwMCIvPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTkuMTgzMyA0NS40NzE2QzE4Ljk4OTggNDUuMjIxOSAxOC45ODk4IDQyLjk5NzMgMTkuMTgzMyAzOC43OThDMTcuMTExNCAzOC44Njk2IDE1LjgwMjQgMzguNzI1OCAxNS4yNTYzIDM4LjM2NjdDMTQuNDM3IDM3LjgyOCAxMy42MTY5IDM2LjE2NjcgMTIuODg5MSAzNC45OTU5QzEyLjE2MTQgMzMuODI1MSAxMC41NDYzIDMzLjY0IDkuODk0MDUgMzMuMzc4M0M5LjI0MTgyIDMzLjExNjUgOS4wNzgwOSAzMi4wNDk2IDExLjY5MTMgMzIuODU2NUMxNC4zMDQ0IDMzLjY2MzQgMTQuNDMxOSAzNS44NjA3IDE1LjI1NjMgMzYuMzc0NUMxNi4wODA2IDM2Ljg4ODMgMTguMDUxNSAzNi42NjM1IDE4Ljk0NDggMzYuMjUxOUMxOS44MzgyIDM1Ljg0MDMgMTkuNzcyNCAzNC4zMDc4IDE5LjkzMTcgMzMuNzAwN0MyMC4xMzMxIDMzLjEzNCAxOS40MjMzIDMzLjAwODMgMTkuNDA3NyAzMy4wMDM3QzE4LjUzNTUgMzMuMDAzNyAxMy45NTM5IDMyLjAwNzMgMTIuNjk1NSAyNy41NzA2QzExLjQzNyAyMy4xMzQgMTMuMDU4MSAyMC4yMzQxIDEzLjkyMjkgMTguOTg3NUMxNC40OTk1IDE4LjE1NjQgMTQuNDQ4NSAxNi4zODUyIDEzLjc2OTkgMTMuNjczN0MxNi4yMzM1IDEzLjM1ODkgMTguMTM0NyAxNC4xMzQzIDE5LjQ3MzQgMTYuMDAwMUMxOS40NzQ3IDE2LjAxMDggMjEuMjI4NSAxNC45NTcyIDI0LjAwMDMgMTQuOTU3MkMyNi43NzIgMTQuOTU3MiAyNy43NTUzIDE1LjgxNTQgMjguNTE0MiAxNi4wMDAxQzI5LjI3MzEgMTYuMTg0OCAyOS44OCAxMi43MzQxIDM0LjU2NjggMTMuNjczN0MzMy41ODgzIDE1LjU5NjkgMzIuNzY4OSAxOC4wMDAxIDMzLjM5NDMgMTguOTg3NUMzNC4wMTk4IDE5Ljk3NDkgMzYuNDc0NSAyMy4xMTQ3IDM0Ljk2NjYgMjcuNTcwNkMzMy45NjE0IDMwLjU0MTMgMzEuOTg1MyAzMi4zNTIzIDI5LjAzODQgMzMuMDAzN0MyOC43MDA1IDMzLjExMTUgMjguNTMxNSAzMy4yODU1IDI4LjUzMTUgMzMuNTI1NUMyOC41MzE1IDMzLjg4NTYgMjguOTg4NCAzMy45MjQ5IDI5LjY0NjUgMzUuNjExN0MzMC4wODUzIDM2LjczNjIgMzAuMTE3IDM5Ljk0OCAyOS43NDE2IDQ1LjI0N0MyOC43OTA2IDQ1LjQ4OTEgMjguMDUwOCA0NS42NTE2IDI3LjUyMjEgNDUuNzM0N0MyNi41ODQ3IDQ1Ljg4MiAyNS41NjY5IDQ1Ljk2NDYgMjQuNTY2OSA0NS45OTY1QzIzLjU2NjkgNDYuMDI4NCAyMy4yMTk2IDQ2LjAyNDggMjEuODM3IDQ1Ljg5NjFDMjAuOTE1NCA0NS44MTAzIDIwLjAzMDggNDUuNjY4OCAxOS4xODMzIDQ1LjQ3MTZaIiBmaWxsPSIjMDAwMDAwIi8%2BPC9zdmc%2B'%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E7%BB%99%E7%82%B9%E8%B4%B4%E4%B8%8A%E7%BA%B9%E7%90%86%3C%2Fp%3E%0A"},{default:p(()=>[d]),_:1}),r,a("table",A,[k,a("tbody",null,[g,N,I,F,z,a("tr",null,[j,h,y,T,m,a("td",null,[n(C,{type:"tip",text:"^2.2.0"})])])])]),x])}const v=E(D,[["render",O]]);export{w as __pageData,v as default}; diff --git a/assets/zh-CN_components_overlay_marker3d.md.DBnGeUZO.lean.js b/assets/zh-CN_components_overlay_marker3d.md.DBnGeUZO.lean.js new file mode 100644 index 00000000..06bb76c9 --- /dev/null +++ b/assets/zh-CN_components_overlay_marker3d.md.DBnGeUZO.lean.js @@ -0,0 +1 @@ +import{_ as E,c as l,I as n,w as p,j as a,al as s,a as t,D as o,o as c}from"./chunks/framework.n6hqIsqL.js";const w=JSON.parse('{"title":"BMarker3d 带高度的点","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/overlay/marker3d.md","filePath":"zh-CN/components/overlay/marker3d.md","lastUpdated":1724785300000}'),D={name:"zh-CN/components/overlay/marker3d.md"},u=s("",4),M=a("p",null,"overlay/marker3d/index",-1),i=a("h2",{id:"纹理贴图",tabindex:"-1"},[t("纹理贴图 "),a("a",{class:"header-anchor",href:"#纹理贴图","aria-label":'Permalink to "纹理贴图"'},"​")],-1),d=a("p",null,"overlay/marker3d/withImg",-1),r=s("",5),A={tabindex:"0"},k=a("thead",null,[a("tr",null,[a("th",null,"属性"),a("th",null,"说明"),a("th",null,"类型"),a("th",null,"可选值"),a("th",null,"默认值"),a("th",null,"版本")])],-1),g=a("tr",null,[a("td",null,"position"),a("td",null,"点的坐标"),a("td",null,[a("code",null,"{ lng: number, lat: number}")]),a("td",null,"-"),a("td",null,[a("code",null,"required")]),a("td",null,"-")],-1),N=a("tr",null,[a("td",null,"icon"),a("td",null,[t("点的图或"),a("a",{href:"#自定义纹理贴图"},"自定义纹理贴图")]),a("td",null,[a("code",null,"string ")]),a("td",null,"-"),a("td"),a("td",null,"-")],-1),I=a("tr",null,[a("td",null,"fillColor"),a("td",null,"点填充颜色,同 CSS 颜色"),a("td",null,[a("code",null,"string ")]),a("td",null,"-"),a("td",null,[a("code",null,"#f00")]),a("td",null,"-")],-1),F=a("tr",null,[a("td",null,"fillOpacity"),a("td",null,"点填充的透明度,范围 0-1"),a("td",null,[a("code",null,"number ")]),a("td",null,[a("code",null,"0-1")]),a("td",null,[a("code",null,"0.8 ")]),a("td",null,"-")],-1),z=a("tr",null,[a("td",null,"enableMassClear"),a("td",null,[t("是否在调用 "),a("code",null,"map.clearOverlays"),t(" 清除此覆盖物")]),a("td",null,[a("code",null,"boolean")]),a("td",null,"-"),a("td",null,[a("code",null," true")]),a("td",null,"-")],-1),j=a("td",null,"visible",-1),h=a("td",null,"是否显示",-1),y=a("td",null,[a("code",null,"boolean")],-1),T=a("td",null,"-",-1),m=a("td",null,[a("code",null,"true")],-1),x=s("",4);function O(L,Q,S,_,b,B){const e=o("Demo"),C=o("Badge");return c(),l("div",null,[u,n(e,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E16%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E64.5%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Atilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E73%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker3d%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epoint1%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aheight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E1200%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Asize%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E200%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EfillColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%23454399%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AfillOpacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E0.5%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Eshape%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EBMAP_SHAPE_CIRCLE%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20point1%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E39.915185%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.400901%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/marker3d/index","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%3Azoom%3D%2216%22%20%3Aheading%3D%2264.5%22%20%3Atilt%3D%2273%22%20enableScrollWheelZoom%3E%0A%20%20%20%20%3CBMarker3d%0A%20%20%20%20%20%20%3Aposition%3D%22point1%22%0A%20%20%20%20%20%20%3Aheight%3D%221200%22%0A%20%20%20%20%20%20%3Asize%3D%22200%22%0A%20%20%20%20%20%20fillColor%3D%22%23454399%22%0A%20%20%20%20%20%20%3AfillOpacity%3D%220.5%22%0A%20%20%20%20%20%20shape%3D%22BMAP_SHAPE_CIRCLE%22%0A%20%20%20%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%20lang%3D%22ts%22%3E%0A%20%20const%20point1%20%3D%20%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.400901%20%7D%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E5%9C%A8%E5%9C%B0%E5%9B%BE%E4%B8%8A%E7%BB%98%E5%88%B6%E5%B8%A6%E9%AB%98%E5%BA%A6%E7%9A%84%E7%82%B9%E8%A6%86%E7%9B%96%E7%89%A9%3C%2Fp%3E%0A"},{default:p(()=>[M]),_:1}),i,n(e,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E16%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E64.5%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Atilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E73%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker3d%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epoint1%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aheight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E1200%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Asize%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E200%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Eshape%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EBMAP_SHAPE_CIRCLE%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aicon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%0A%20%20%20%20%20%20%20%20imageUrl%3A%20base64Icon%2C%0A%20%20%20%20%20%20%20%20imageSize%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20width%3A%20200%2C%0A%20%20%20%20%20%20%20%20%20%20height%3A%20200%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker3d%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epoint2%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aheight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E800%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Asize%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E200%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Eshape%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EBMAP_SHAPE_CIRCLE%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aicon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%0A%20%20%20%20%20%20%20%20imageUrl%3A%20base64Icon%2C%0A%20%20%20%20%20%20%20%20imageSize%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20width%3A%20200%2C%0A%20%20%20%20%20%20%20%20%20%20height%3A%20200%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20point1%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E39.925185%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.400901%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20point2%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E39.915185%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.400901%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20base64Icon%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSI0OCIgaGVpZ2h0PSI0OCIgdmlld0JveD0iMCAwIDQ4IDQ4IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMjQgNEMxMi45NTQzIDQgNCAxMi45NTQzIDQgMjRDNCAzNS4wNDU3IDEyLjk1NDMgNDQgMjQgNDRDMzUuMDQ1NyA0NCA0NCAzNS4wNDU3IDQ0IDI0QzQ0IDEyLjk1NDMgMzUuMDQ1NyA0IDI0IDRaTTAgMjRDMCAxMC43NDUyIDEwLjc0NTIgMCAyNCAwQzM3LjI1NDggMCA0OCAxMC43NDUyIDQ4IDI0QzQ4IDM3LjI1NDggMzcuMjU0OCA0OCAyNCA0OEMxMC43NDUyIDQ4IDAgMzcuMjU0OCAwIDI0WiIgZmlsbD0iIzAwMDAwMCIvPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTkuMTgzMyA0NS40NzE2QzE4Ljk4OTggNDUuMjIxOSAxOC45ODk4IDQyLjk5NzMgMTkuMTgzMyAzOC43OThDMTcuMTExNCAzOC44Njk2IDE1LjgwMjQgMzguNzI1OCAxNS4yNTYzIDM4LjM2NjdDMTQuNDM3IDM3LjgyOCAxMy42MTY5IDM2LjE2NjcgMTIuODg5MSAzNC45OTU5QzEyLjE2MTQgMzMuODI1MSAxMC41NDYzIDMzLjY0IDkuODk0MDUgMzMuMzc4M0M5LjI0MTgyIDMzLjExNjUgOS4wNzgwOSAzMi4wNDk2IDExLjY5MTMgMzIuODU2NUMxNC4zMDQ0IDMzLjY2MzQgMTQuNDMxOSAzNS44NjA3IDE1LjI1NjMgMzYuMzc0NUMxNi4wODA2IDM2Ljg4ODMgMTguMDUxNSAzNi42NjM1IDE4Ljk0NDggMzYuMjUxOUMxOS44MzgyIDM1Ljg0MDMgMTkuNzcyNCAzNC4zMDc4IDE5LjkzMTcgMzMuNzAwN0MyMC4xMzMxIDMzLjEzNCAxOS40MjMzIDMzLjAwODMgMTkuNDA3NyAzMy4wMDM3QzE4LjUzNTUgMzMuMDAzNyAxMy45NTM5IDMyLjAwNzMgMTIuNjk1NSAyNy41NzA2QzExLjQzNyAyMy4xMzQgMTMuMDU4MSAyMC4yMzQxIDEzLjkyMjkgMTguOTg3NUMxNC40OTk1IDE4LjE1NjQgMTQuNDQ4NSAxNi4zODUyIDEzLjc2OTkgMTMuNjczN0MxNi4yMzM1IDEzLjM1ODkgMTguMTM0NyAxNC4xMzQzIDE5LjQ3MzQgMTYuMDAwMUMxOS40NzQ3IDE2LjAxMDggMjEuMjI4NSAxNC45NTcyIDI0LjAwMDMgMTQuOTU3MkMyNi43NzIgMTQuOTU3MiAyNy43NTUzIDE1LjgxNTQgMjguNTE0MiAxNi4wMDAxQzI5LjI3MzEgMTYuMTg0OCAyOS44OCAxMi43MzQxIDM0LjU2NjggMTMuNjczN0MzMy41ODgzIDE1LjU5NjkgMzIuNzY4OSAxOC4wMDAxIDMzLjM5NDMgMTguOTg3NUMzNC4wMTk4IDE5Ljk3NDkgMzYuNDc0NSAyMy4xMTQ3IDM0Ljk2NjYgMjcuNTcwNkMzMy45NjE0IDMwLjU0MTMgMzEuOTg1MyAzMi4zNTIzIDI5LjAzODQgMzMuMDAzN0MyOC43MDA1IDMzLjExMTUgMjguNTMxNSAzMy4yODU1IDI4LjUzMTUgMzMuNTI1NUMyOC41MzE1IDMzLjg4NTYgMjguOTg4NCAzMy45MjQ5IDI5LjY0NjUgMzUuNjExN0MzMC4wODUzIDM2LjczNjIgMzAuMTE3IDM5Ljk0OCAyOS43NDE2IDQ1LjI0N0MyOC43OTA2IDQ1LjQ4OTEgMjguMDUwOCA0NS42NTE2IDI3LjUyMjEgNDUuNzM0N0MyNi41ODQ3IDQ1Ljg4MiAyNS41NjY5IDQ1Ljk2NDYgMjQuNTY2OSA0NS45OTY1QzIzLjU2NjkgNDYuMDI4NCAyMy4yMTk2IDQ2LjAyNDggMjEuODM3IDQ1Ljg5NjFDMjAuOTE1NCA0NS44MTAzIDIwLjAzMDggNDUuNjY4OCAxOS4xODMzIDQ1LjQ3MTZaIiBmaWxsPSIjMDAwMDAwIi8%2BPC9zdmc%2B'%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/marker3d/withImg","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%3Azoom%3D%2216%22%20%3Aheading%3D%2264.5%22%20%3Atilt%3D%2273%22%20enableScrollWheelZoom%3E%0A%20%20%20%20%3CBMarker3d%0A%20%20%20%20%20%20%3Aposition%3D%22point1%22%0A%20%20%20%20%20%20%3Aheight%3D%221200%22%0A%20%20%20%20%20%20%3Asize%3D%22200%22%0A%20%20%20%20%20%20shape%3D%22BMAP_SHAPE_CIRCLE%22%0A%20%20%20%20%20%20%3Aicon%3D%22%7B%0A%20%20%20%20%20%20%20%20imageUrl%3A%20base64Icon%2C%0A%20%20%20%20%20%20%20%20imageSize%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20width%3A%20200%2C%0A%20%20%20%20%20%20%20%20%20%20height%3A%20200%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%22%0A%20%20%20%20%2F%3E%0A%20%20%20%20%3CBMarker3d%0A%20%20%20%20%20%20%3Aposition%3D%22point2%22%0A%20%20%20%20%20%20%3Aheight%3D%22800%22%0A%20%20%20%20%20%20%3Asize%3D%22200%22%0A%20%20%20%20%20%20shape%3D%22BMAP_SHAPE_CIRCLE%22%0A%20%20%20%20%20%20%3Aicon%3D%22%7B%0A%20%20%20%20%20%20%20%20imageUrl%3A%20base64Icon%2C%0A%20%20%20%20%20%20%20%20imageSize%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20width%3A%20200%2C%0A%20%20%20%20%20%20%20%20%20%20height%3A%20200%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%22%0A%20%20%20%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%20lang%3D%22ts%22%3E%0A%20%20const%20point1%20%3D%20%7B%20lat%3A%2039.925185%2C%20lng%3A%20116.400901%20%7D%0A%20%20const%20point2%20%3D%20%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.400901%20%7D%0A%20%20const%20base64Icon%20%3D%20'data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSI0OCIgaGVpZ2h0PSI0OCIgdmlld0JveD0iMCAwIDQ4IDQ4IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMjQgNEMxMi45NTQzIDQgNCAxMi45NTQzIDQgMjRDNCAzNS4wNDU3IDEyLjk1NDMgNDQgMjQgNDRDMzUuMDQ1NyA0NCA0NCAzNS4wNDU3IDQ0IDI0QzQ0IDEyLjk1NDMgMzUuMDQ1NyA0IDI0IDRaTTAgMjRDMCAxMC43NDUyIDEwLjc0NTIgMCAyNCAwQzM3LjI1NDggMCA0OCAxMC43NDUyIDQ4IDI0QzQ4IDM3LjI1NDggMzcuMjU0OCA0OCAyNCA0OEMxMC43NDUyIDQ4IDAgMzcuMjU0OCAwIDI0WiIgZmlsbD0iIzAwMDAwMCIvPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMTkuMTgzMyA0NS40NzE2QzE4Ljk4OTggNDUuMjIxOSAxOC45ODk4IDQyLjk5NzMgMTkuMTgzMyAzOC43OThDMTcuMTExNCAzOC44Njk2IDE1LjgwMjQgMzguNzI1OCAxNS4yNTYzIDM4LjM2NjdDMTQuNDM3IDM3LjgyOCAxMy42MTY5IDM2LjE2NjcgMTIuODg5MSAzNC45OTU5QzEyLjE2MTQgMzMuODI1MSAxMC41NDYzIDMzLjY0IDkuODk0MDUgMzMuMzc4M0M5LjI0MTgyIDMzLjExNjUgOS4wNzgwOSAzMi4wNDk2IDExLjY5MTMgMzIuODU2NUMxNC4zMDQ0IDMzLjY2MzQgMTQuNDMxOSAzNS44NjA3IDE1LjI1NjMgMzYuMzc0NUMxNi4wODA2IDM2Ljg4ODMgMTguMDUxNSAzNi42NjM1IDE4Ljk0NDggMzYuMjUxOUMxOS44MzgyIDM1Ljg0MDMgMTkuNzcyNCAzNC4zMDc4IDE5LjkzMTcgMzMuNzAwN0MyMC4xMzMxIDMzLjEzNCAxOS40MjMzIDMzLjAwODMgMTkuNDA3NyAzMy4wMDM3QzE4LjUzNTUgMzMuMDAzNyAxMy45NTM5IDMyLjAwNzMgMTIuNjk1NSAyNy41NzA2QzExLjQzNyAyMy4xMzQgMTMuMDU4MSAyMC4yMzQxIDEzLjkyMjkgMTguOTg3NUMxNC40OTk1IDE4LjE1NjQgMTQuNDQ4NSAxNi4zODUyIDEzLjc2OTkgMTMuNjczN0MxNi4yMzM1IDEzLjM1ODkgMTguMTM0NyAxNC4xMzQzIDE5LjQ3MzQgMTYuMDAwMUMxOS40NzQ3IDE2LjAxMDggMjEuMjI4NSAxNC45NTcyIDI0LjAwMDMgMTQuOTU3MkMyNi43NzIgMTQuOTU3MiAyNy43NTUzIDE1LjgxNTQgMjguNTE0MiAxNi4wMDAxQzI5LjI3MzEgMTYuMTg0OCAyOS44OCAxMi43MzQxIDM0LjU2NjggMTMuNjczN0MzMy41ODgzIDE1LjU5NjkgMzIuNzY4OSAxOC4wMDAxIDMzLjM5NDMgMTguOTg3NUMzNC4wMTk4IDE5Ljk3NDkgMzYuNDc0NSAyMy4xMTQ3IDM0Ljk2NjYgMjcuNTcwNkMzMy45NjE0IDMwLjU0MTMgMzEuOTg1MyAzMi4zNTIzIDI5LjAzODQgMzMuMDAzN0MyOC43MDA1IDMzLjExMTUgMjguNTMxNSAzMy4yODU1IDI4LjUzMTUgMzMuNTI1NUMyOC41MzE1IDMzLjg4NTYgMjguOTg4NCAzMy45MjQ5IDI5LjY0NjUgMzUuNjExN0MzMC4wODUzIDM2LjczNjIgMzAuMTE3IDM5Ljk0OCAyOS43NDE2IDQ1LjI0N0MyOC43OTA2IDQ1LjQ4OTEgMjguMDUwOCA0NS42NTE2IDI3LjUyMjEgNDUuNzM0N0MyNi41ODQ3IDQ1Ljg4MiAyNS41NjY5IDQ1Ljk2NDYgMjQuNTY2OSA0NS45OTY1QzIzLjU2NjkgNDYuMDI4NCAyMy4yMTk2IDQ2LjAyNDggMjEuODM3IDQ1Ljg5NjFDMjAuOTE1NCA0NS44MTAzIDIwLjAzMDggNDUuNjY4OCAxOS4xODMzIDQ1LjQ3MTZaIiBmaWxsPSIjMDAwMDAwIi8%2BPC9zdmc%2B'%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E7%BB%99%E7%82%B9%E8%B4%B4%E4%B8%8A%E7%BA%B9%E7%90%86%3C%2Fp%3E%0A"},{default:p(()=>[d]),_:1}),r,a("table",A,[k,a("tbody",null,[g,N,I,F,z,a("tr",null,[j,h,y,T,m,a("td",null,[n(C,{type:"tip",text:"^2.2.0"})])])])]),x])}const v=E(D,[["render",O]]);export{w as __pageData,v as default}; diff --git a/assets/zh-CN_components_overlay_polygon.md.BWeZXyb8.js b/assets/zh-CN_components_overlay_polygon.md.BWeZXyb8.js new file mode 100644 index 00000000..4473c4e0 --- /dev/null +++ b/assets/zh-CN_components_overlay_polygon.md.BWeZXyb8.js @@ -0,0 +1 @@ +import{_ as l,c as C,I as a,w as p,j as n,al as t,a as s,D as e,o as c}from"./chunks/framework.n6hqIsqL.js";const R=JSON.parse('{"title":"BPolygon 多边形","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/overlay/polygon.md","filePath":"zh-CN/components/overlay/polygon.md","lastUpdated":1724785300000}'),u={name:"zh-CN/components/overlay/polygon.md"},D=t('

BPolygon 多边形

在地图上绘制简单的多边形

ts
import { BPolygon } from 'vue3-baidu-map-gl'

组件示例

',4),r=n("p",null,"overlay/polygon/index",-1),d=n("h2",{id:"镂空面绘制-行政区域边界",tabindex:"-1"},[s("镂空面绘制 / 行政区域边界 "),n("a",{class:"header-anchor",href:"#镂空面绘制-行政区域边界","aria-label":'Permalink to "镂空面绘制 / 行政区域边界"'},"​")],-1),i=n("p",null,"overlay/polygon/boundaries",-1),k=t('

静态组件 Props

属性说明类型默认值
clip是否进行跨经度 180 度裁剪,绘制跨精度 180 时为了优化效果,boolean true
geodesic是否开启大地线模式,true 时,两点连线将以大地线的形式。boolean false
isBoundary是否是行政区域的边界多边形boolean false
autoCenter是否自动根据多边形居中地图boolean true
enableClicking是否响应点击事件boolean true

动态组件 Props

',3),F={tabindex:"0"},A=n("thead",null,[n("tr",null,[n("th",null,"属性"),n("th",null,"说明"),n("th",null,"类型"),n("th",null,"可选值"),n("th",null,"默认值"),n("th",null,"版本")])],-1),B=n("tr",null,[n("td",null,"path"),n("td",null,"多边形的坐标数组"),n("td",null,[n("code",null," { lng: number, lat: number}[]")]),n("td",null,"-"),n("td",null,[n("code",null,"required")]),n("td",null,"-")],-1),g=n("tr",null,[n("td",null,"strokeColor"),n("td",null,"描边的颜色,同 CSS 颜色"),n("td",null,[n("code",null,"string")]),n("td",null,"-"),n("td",null,[n("code",null,"#000000")]),n("td",null,"-")],-1),h=n("tr",null,[n("td",null,"strokeWeight"),n("td",null,"描边的宽度,单位为像素"),n("td",null,[n("code",null,"string ")]),n("td",null,"-"),n("td",null,[n("code",null,"2 ")]),n("td",null,"-")],-1),m=n("tr",null,[n("td",null,"strokeOpacity"),n("td",null,"描边的透明度,范围 0-1"),n("td",null,[n("code",null,"number ")]),n("td",null,"-"),n("td",null,[n("code",null,"1 ")]),n("td",null,"-")],-1),_=n("tr",null,[n("td",null,"strokeStyle"),n("td",null,"描边的样式,为实线、虚线、或者点状线"),n("td",null,[n("code",null,"string ")]),n("td",null,[n("code",null,"solid / dashed / dotted")]),n("td",null,"-"),n("td",null,"-")],-1),v=n("tr",null,[n("td",null,"fillColor"),n("td",null,"面填充颜色,同 CSS 颜色"),n("td",null,[n("code",null,"string ")]),n("td",null,"-"),n("td",null,[n("code",null,"#fff")]),n("td",null,"-")],-1),b=n("tr",null,[n("td",null,"fillOpacity"),n("td",null,"面填充的透明度,范围 0-1"),n("td",null,[n("code",null,"number ")]),n("td",null,[n("code",null,"0-1")]),n("td",null,[n("code",null,"0.3 ")]),n("td",null,"-")],-1),y=n("tr",null,[n("td",null,"enableMassClear"),n("td",null,[s("是否在调用 "),n("code",null,"map.clearOverlays"),s(" 清除此覆盖物")]),n("td",null,[n("code",null,"boolean")]),n("td",null,"-"),n("td",null,[n("code",null," true")]),n("td",null,"-")],-1),f=n("tr",null,[n("td",null,"enableEditing"),n("td",null,"开启可编辑模式"),n("td",null,[n("code",null,"boolean ")]),n("td",null,"-"),n("td",null,[n("code",null,"false ")]),n("td",null,"-")],-1),q=n("td",null,"visible",-1),x=n("td",null,"是否显示",-1),P=n("td",null,[n("code",null,"boolean")],-1),w=n("td",null,"-",-1),S=n("td",null,[n("code",null,"true")],-1),T=t('

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。 当双击时,产生的事件序列为: click -> click -> dblclick ((e: Event) => void)
dblclick鼠标左键双击事件的回调函数((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数((e: Event) => void)
remove该覆盖物被移除的回调函数((e: Event) => void)
lineupdate覆盖物被编辑后的回调函数((e: Event) => void)
',2);function M(z,I,N,V,Z,O){const o=e("Demo"),E=e("Badge");return c(),C("div",null,[D,a(o,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBPolygon%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableEditing%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Apath%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%5B%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.387112%2C%20lat%3A%2039.920977%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.385243%2C%20lat%3A%2039.913063%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.394226%2C%20lat%3A%2039.917988%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.401772%2C%20lat%3A%2039.921364%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.41248%2C%20lat%3A%2039.92789%20%7D%0A%20%20%20%20%20%20%5D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Estroke-color%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%23000%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EfillColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%23f90%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Astroke-opacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E0.4%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Astroke-weight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E1%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/polygon/index","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%3E%0A%20%20%20%20%3CBPolygon%0A%20%20%20%20%20%20enableEditing%0A%20%20%20%20%20%20%3Apath%3D%22%5B%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.387112%2C%20lat%3A%2039.920977%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.385243%2C%20lat%3A%2039.913063%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.394226%2C%20lat%3A%2039.917988%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.401772%2C%20lat%3A%2039.921364%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.41248%2C%20lat%3A%2039.92789%20%7D%0A%20%20%20%20%20%20%5D%22%0A%20%20%20%20%20%20stroke-color%3D%22%23000%22%0A%20%20%20%20%20%20fillColor%3D%22%23f90%22%0A%20%20%20%20%20%20%3Astroke-opacity%3D%220.4%22%0A%20%20%20%20%20%20%3Astroke-weight%3D%221%22%0A%20%20%20%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A",description:"%3Cp%3E%E5%9C%A8%E5%9C%B0%E5%9B%BE%E4%B8%8A%E7%BB%98%E5%88%B6%E5%8F%AF%E7%BC%96%E8%BE%91%E7%9A%84%E5%A4%9A%E8%BE%B9%E5%BD%A2%3C%2Fp%3E%0A"},{default:p(()=>[r]),_:1}),d,a(o,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AminZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E3%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ezoom%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBControl%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20special-attr%22%3E%3Cspan%20class%3D%22token%20attr-name%22%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20border-radius%3A%204px%3B%0A%20%20%20%20%20%20%20%20box-shadow%3A%200%202px%206px%200%20rgba(27%2C%20142%2C%20236%2C%200.5)%3B%0A%20%20%20%20%20%20%20%20color%3A%20%23666%3B%0A%20%20%20%20%20%20%20%20background%3A%20%23fff%3B%0A%20%20%20%20%20%20%20%20padding%3A%2010px%3B%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aoffset%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20x%3A%2015%2C%20y%3A%2015%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%9C%B0%E5%8C%BA%EF%BC%9A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eselect%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Earea%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E5%8C%97%E4%BA%AC%E5%B8%82%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%8C%97%E4%BA%AC%E5%B8%82%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E9%A1%BA%E4%B9%89%E5%8C%BA%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%8C%97%E4%BA%AC%E5%B8%82%E9%A1%BA%E4%B9%89%E5%8C%BA%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E5%9B%9B%E5%B7%9D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%9B%9B%E5%B7%9D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E6%88%90%E9%83%BD%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E6%88%90%E9%83%BD%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eselect%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBControl%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBPolygon%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Akey%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Earea%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EisBoundary%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Apath%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EpathPoints%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Estroke-color%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%23000%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EfillColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eblue%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Astroke-weight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E1%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20watch%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20useAreaBoundary%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20zoom%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Enumber%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E11%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20area%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Estring%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'%E9%A1%BA%E4%B9%89%E5%8C%BA'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20areaZoomMap%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3E%E5%8C%97%E4%BA%AC%E5%B8%82%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E9%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3E%E9%A1%BA%E4%B9%89%E5%8C%BA%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E11%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3E%E5%9B%9B%E5%B7%9D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E7%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3E%E6%88%90%E9%83%BD%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E9%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eboundaries%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20pathPoints%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20get%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EuseAreaBoundary%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20zoom%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20areaZoomMap%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3Earea%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Eget%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Earea%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20function%22%3Ewatch%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20area%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20get%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/polygon/boundaries","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%3AminZoom%3D%223%22%20%3Azoom%3D%22zoom%22%20enableScrollWheelZoom%20%40initd%3D%22handleInitd%22%3E%0A%20%20%20%20%3CBControl%0A%20%20%20%20%20%20style%3D%22%0A%20%20%20%20%20%20%20%20border-radius%3A%204px%3B%0A%20%20%20%20%20%20%20%20box-shadow%3A%200%202px%206px%200%20rgba(27%2C%20142%2C%20236%2C%200.5)%3B%0A%20%20%20%20%20%20%20%20color%3A%20%23666%3B%0A%20%20%20%20%20%20%20%20background%3A%20%23fff%3B%0A%20%20%20%20%20%20%20%20padding%3A%2010px%3B%0A%20%20%20%20%20%20%22%0A%20%20%20%20%20%20%3Aoffset%3D%22%7B%20x%3A%2015%2C%20y%3A%2015%20%7D%22%0A%20%20%20%20%3E%0A%20%20%20%20%20%20%3Cspan%3E%E5%9C%B0%E5%8C%BA%EF%BC%9A%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cselect%20class%3D%22mySelect%20light%20no-m-b%20no-m-t%22%20v-model%3D%22area%22%3E%0A%20%20%20%20%20%20%20%20%3Coption%20value%3D%22%E5%8C%97%E4%BA%AC%E5%B8%82%22%3E%E5%8C%97%E4%BA%AC%E5%B8%82%3C%2Foption%3E%0A%20%20%20%20%20%20%20%20%3Coption%20value%3D%22%E9%A1%BA%E4%B9%89%E5%8C%BA%22%3E%E5%8C%97%E4%BA%AC%E5%B8%82%E9%A1%BA%E4%B9%89%E5%8C%BA%3C%2Foption%3E%0A%20%20%20%20%20%20%20%20%3Coption%20value%3D%22%E5%9B%9B%E5%B7%9D%22%3E%E5%9B%9B%E5%B7%9D%3C%2Foption%3E%0A%20%20%20%20%20%20%20%20%3Coption%20value%3D%22%E6%88%90%E9%83%BD%22%3E%E6%88%90%E9%83%BD%3C%2Foption%3E%0A%20%20%20%20%20%20%3C%2Fselect%3E%0A%20%20%20%20%3C%2FBControl%3E%0A%20%20%20%20%3CBPolygon%20%3Akey%3D%22area%22%20isBoundary%20%3Apath%3D%22pathPoints%22%20stroke-color%3D%22%23000%22%20fillColor%3D%22blue%22%20%3Astroke-weight%3D%221%22%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%20lang%3D%22ts%22%3E%0A%20%20import%20%7B%20ref%2C%20watch%20%7D%20from%20'vue'%0A%20%20import%20%7B%20useAreaBoundary%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20zoom%20%3D%20ref%3Cnumber%3E(11)%0A%20%20const%20area%20%3D%20ref%3Cstring%3E('%E9%A1%BA%E4%B9%89%E5%8C%BA')%0A%20%20const%20areaZoomMap%20%3D%20%7B%0A%20%20%20%20%E5%8C%97%E4%BA%AC%E5%B8%82%3A%209%2C%0A%20%20%20%20%E9%A1%BA%E4%B9%89%E5%8C%BA%3A%2011%2C%0A%20%20%20%20%E5%9B%9B%E5%B7%9D%3A%207%2C%0A%20%20%20%20%E6%88%90%E9%83%BD%3A%209%0A%20%20%7D%0A%0A%20%20const%20%7B%20boundaries%3A%20pathPoints%2C%20get%20%7D%20%3D%20useAreaBoundary(()%20%3D%3E%20%7B%0A%20%20%20%20zoom.value%20%3D%20areaZoomMap%5Barea.value%5D%0A%20%20%7D)%0A%0A%20%20function%20handleInitd()%20%7B%0A%20%20%20%20get(area.value)%0A%20%20%7D%0A%20%20watch(()%20%3D%3E%20area.value%2C%20get)%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E7%BB%93%E5%90%88%20%3Ca%20href%3D%22..%2Fhooks%2FuseAreaBoundary%22%3E%3Ccode%3EuseAreaBoundary%3C%2Fcode%3E%3C%2Fa%3E%20hooks%2C%20%E5%B9%B6%E9%80%9A%E8%BF%87%E6%8C%87%E5%AE%9A%20%3Ccode%3Eprops.isBoundary%3C%2Fcode%3E%20%E4%B8%BA%20%3Ccode%3Etrue%3C%2Fcode%3E%20%E5%AE%9E%E7%8E%B0%E8%A1%8C%E6%94%BF%E5%8C%BA%E5%9F%9F%E6%98%BE%E7%A4%BA%E6%95%88%E6%9E%9C%3C%2Fp%3E%0A"},{default:p(()=>[i]),_:1}),k,n("table",F,[A,n("tbody",null,[B,g,h,m,_,v,b,y,f,n("tr",null,[q,x,P,w,S,n("td",null,[a(E,{type:"tip",text:"^2.2.0"})])])])]),T])}const W=l(u,[["render",M]]);export{R as __pageData,W as default}; diff --git a/assets/zh-CN_components_overlay_polygon.md.BWeZXyb8.lean.js b/assets/zh-CN_components_overlay_polygon.md.BWeZXyb8.lean.js new file mode 100644 index 00000000..6864753c --- /dev/null +++ b/assets/zh-CN_components_overlay_polygon.md.BWeZXyb8.lean.js @@ -0,0 +1 @@ +import{_ as l,c as C,I as a,w as p,j as n,al as t,a as s,D as e,o as c}from"./chunks/framework.n6hqIsqL.js";const R=JSON.parse('{"title":"BPolygon 多边形","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/overlay/polygon.md","filePath":"zh-CN/components/overlay/polygon.md","lastUpdated":1724785300000}'),u={name:"zh-CN/components/overlay/polygon.md"},D=t("",4),r=n("p",null,"overlay/polygon/index",-1),d=n("h2",{id:"镂空面绘制-行政区域边界",tabindex:"-1"},[s("镂空面绘制 / 行政区域边界 "),n("a",{class:"header-anchor",href:"#镂空面绘制-行政区域边界","aria-label":'Permalink to "镂空面绘制 / 行政区域边界"'},"​")],-1),i=n("p",null,"overlay/polygon/boundaries",-1),k=t("",3),F={tabindex:"0"},A=n("thead",null,[n("tr",null,[n("th",null,"属性"),n("th",null,"说明"),n("th",null,"类型"),n("th",null,"可选值"),n("th",null,"默认值"),n("th",null,"版本")])],-1),B=n("tr",null,[n("td",null,"path"),n("td",null,"多边形的坐标数组"),n("td",null,[n("code",null," { lng: number, lat: number}[]")]),n("td",null,"-"),n("td",null,[n("code",null,"required")]),n("td",null,"-")],-1),g=n("tr",null,[n("td",null,"strokeColor"),n("td",null,"描边的颜色,同 CSS 颜色"),n("td",null,[n("code",null,"string")]),n("td",null,"-"),n("td",null,[n("code",null,"#000000")]),n("td",null,"-")],-1),h=n("tr",null,[n("td",null,"strokeWeight"),n("td",null,"描边的宽度,单位为像素"),n("td",null,[n("code",null,"string ")]),n("td",null,"-"),n("td",null,[n("code",null,"2 ")]),n("td",null,"-")],-1),m=n("tr",null,[n("td",null,"strokeOpacity"),n("td",null,"描边的透明度,范围 0-1"),n("td",null,[n("code",null,"number ")]),n("td",null,"-"),n("td",null,[n("code",null,"1 ")]),n("td",null,"-")],-1),_=n("tr",null,[n("td",null,"strokeStyle"),n("td",null,"描边的样式,为实线、虚线、或者点状线"),n("td",null,[n("code",null,"string ")]),n("td",null,[n("code",null,"solid / dashed / dotted")]),n("td",null,"-"),n("td",null,"-")],-1),v=n("tr",null,[n("td",null,"fillColor"),n("td",null,"面填充颜色,同 CSS 颜色"),n("td",null,[n("code",null,"string ")]),n("td",null,"-"),n("td",null,[n("code",null,"#fff")]),n("td",null,"-")],-1),b=n("tr",null,[n("td",null,"fillOpacity"),n("td",null,"面填充的透明度,范围 0-1"),n("td",null,[n("code",null,"number ")]),n("td",null,[n("code",null,"0-1")]),n("td",null,[n("code",null,"0.3 ")]),n("td",null,"-")],-1),y=n("tr",null,[n("td",null,"enableMassClear"),n("td",null,[s("是否在调用 "),n("code",null,"map.clearOverlays"),s(" 清除此覆盖物")]),n("td",null,[n("code",null,"boolean")]),n("td",null,"-"),n("td",null,[n("code",null," true")]),n("td",null,"-")],-1),f=n("tr",null,[n("td",null,"enableEditing"),n("td",null,"开启可编辑模式"),n("td",null,[n("code",null,"boolean ")]),n("td",null,"-"),n("td",null,[n("code",null,"false ")]),n("td",null,"-")],-1),q=n("td",null,"visible",-1),x=n("td",null,"是否显示",-1),P=n("td",null,[n("code",null,"boolean")],-1),w=n("td",null,"-",-1),S=n("td",null,[n("code",null,"true")],-1),T=t("",2);function M(z,I,N,V,Z,O){const o=e("Demo"),E=e("Badge");return c(),C("div",null,[D,a(o,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBPolygon%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableEditing%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Apath%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%5B%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.387112%2C%20lat%3A%2039.920977%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.385243%2C%20lat%3A%2039.913063%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.394226%2C%20lat%3A%2039.917988%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.401772%2C%20lat%3A%2039.921364%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.41248%2C%20lat%3A%2039.92789%20%7D%0A%20%20%20%20%20%20%5D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Estroke-color%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%23000%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EfillColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%23f90%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Astroke-opacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E0.4%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Astroke-weight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E1%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/polygon/index","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%3E%0A%20%20%20%20%3CBPolygon%0A%20%20%20%20%20%20enableEditing%0A%20%20%20%20%20%20%3Apath%3D%22%5B%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.387112%2C%20lat%3A%2039.920977%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.385243%2C%20lat%3A%2039.913063%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.394226%2C%20lat%3A%2039.917988%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.401772%2C%20lat%3A%2039.921364%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.41248%2C%20lat%3A%2039.92789%20%7D%0A%20%20%20%20%20%20%5D%22%0A%20%20%20%20%20%20stroke-color%3D%22%23000%22%0A%20%20%20%20%20%20fillColor%3D%22%23f90%22%0A%20%20%20%20%20%20%3Astroke-opacity%3D%220.4%22%0A%20%20%20%20%20%20%3Astroke-weight%3D%221%22%0A%20%20%20%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A",description:"%3Cp%3E%E5%9C%A8%E5%9C%B0%E5%9B%BE%E4%B8%8A%E7%BB%98%E5%88%B6%E5%8F%AF%E7%BC%96%E8%BE%91%E7%9A%84%E5%A4%9A%E8%BE%B9%E5%BD%A2%3C%2Fp%3E%0A"},{default:p(()=>[r]),_:1}),d,a(o,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AminZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E3%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ezoom%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBControl%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20special-attr%22%3E%3Cspan%20class%3D%22token%20attr-name%22%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20border-radius%3A%204px%3B%0A%20%20%20%20%20%20%20%20box-shadow%3A%200%202px%206px%200%20rgba(27%2C%20142%2C%20236%2C%200.5)%3B%0A%20%20%20%20%20%20%20%20color%3A%20%23666%3B%0A%20%20%20%20%20%20%20%20background%3A%20%23fff%3B%0A%20%20%20%20%20%20%20%20padding%3A%2010px%3B%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aoffset%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20x%3A%2015%2C%20y%3A%2015%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%9C%B0%E5%8C%BA%EF%BC%9A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eselect%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Earea%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E5%8C%97%E4%BA%AC%E5%B8%82%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%8C%97%E4%BA%AC%E5%B8%82%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E9%A1%BA%E4%B9%89%E5%8C%BA%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%8C%97%E4%BA%AC%E5%B8%82%E9%A1%BA%E4%B9%89%E5%8C%BA%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E5%9B%9B%E5%B7%9D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%9B%9B%E5%B7%9D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E6%88%90%E9%83%BD%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E6%88%90%E9%83%BD%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eselect%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBControl%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBPolygon%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Akey%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Earea%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EisBoundary%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Apath%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EpathPoints%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Estroke-color%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%23000%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EfillColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eblue%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Astroke-weight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E1%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20watch%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20useAreaBoundary%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20zoom%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Enumber%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E11%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20area%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Estring%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'%E9%A1%BA%E4%B9%89%E5%8C%BA'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20areaZoomMap%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3E%E5%8C%97%E4%BA%AC%E5%B8%82%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E9%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3E%E9%A1%BA%E4%B9%89%E5%8C%BA%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E11%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3E%E5%9B%9B%E5%B7%9D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E7%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3E%E6%88%90%E9%83%BD%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E9%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eboundaries%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20pathPoints%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20get%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EuseAreaBoundary%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20zoom%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20areaZoomMap%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3Earea%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Eget%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Earea%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20function%22%3Ewatch%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20area%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20get%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/polygon/boundaries","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%3AminZoom%3D%223%22%20%3Azoom%3D%22zoom%22%20enableScrollWheelZoom%20%40initd%3D%22handleInitd%22%3E%0A%20%20%20%20%3CBControl%0A%20%20%20%20%20%20style%3D%22%0A%20%20%20%20%20%20%20%20border-radius%3A%204px%3B%0A%20%20%20%20%20%20%20%20box-shadow%3A%200%202px%206px%200%20rgba(27%2C%20142%2C%20236%2C%200.5)%3B%0A%20%20%20%20%20%20%20%20color%3A%20%23666%3B%0A%20%20%20%20%20%20%20%20background%3A%20%23fff%3B%0A%20%20%20%20%20%20%20%20padding%3A%2010px%3B%0A%20%20%20%20%20%20%22%0A%20%20%20%20%20%20%3Aoffset%3D%22%7B%20x%3A%2015%2C%20y%3A%2015%20%7D%22%0A%20%20%20%20%3E%0A%20%20%20%20%20%20%3Cspan%3E%E5%9C%B0%E5%8C%BA%EF%BC%9A%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cselect%20class%3D%22mySelect%20light%20no-m-b%20no-m-t%22%20v-model%3D%22area%22%3E%0A%20%20%20%20%20%20%20%20%3Coption%20value%3D%22%E5%8C%97%E4%BA%AC%E5%B8%82%22%3E%E5%8C%97%E4%BA%AC%E5%B8%82%3C%2Foption%3E%0A%20%20%20%20%20%20%20%20%3Coption%20value%3D%22%E9%A1%BA%E4%B9%89%E5%8C%BA%22%3E%E5%8C%97%E4%BA%AC%E5%B8%82%E9%A1%BA%E4%B9%89%E5%8C%BA%3C%2Foption%3E%0A%20%20%20%20%20%20%20%20%3Coption%20value%3D%22%E5%9B%9B%E5%B7%9D%22%3E%E5%9B%9B%E5%B7%9D%3C%2Foption%3E%0A%20%20%20%20%20%20%20%20%3Coption%20value%3D%22%E6%88%90%E9%83%BD%22%3E%E6%88%90%E9%83%BD%3C%2Foption%3E%0A%20%20%20%20%20%20%3C%2Fselect%3E%0A%20%20%20%20%3C%2FBControl%3E%0A%20%20%20%20%3CBPolygon%20%3Akey%3D%22area%22%20isBoundary%20%3Apath%3D%22pathPoints%22%20stroke-color%3D%22%23000%22%20fillColor%3D%22blue%22%20%3Astroke-weight%3D%221%22%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%20lang%3D%22ts%22%3E%0A%20%20import%20%7B%20ref%2C%20watch%20%7D%20from%20'vue'%0A%20%20import%20%7B%20useAreaBoundary%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20zoom%20%3D%20ref%3Cnumber%3E(11)%0A%20%20const%20area%20%3D%20ref%3Cstring%3E('%E9%A1%BA%E4%B9%89%E5%8C%BA')%0A%20%20const%20areaZoomMap%20%3D%20%7B%0A%20%20%20%20%E5%8C%97%E4%BA%AC%E5%B8%82%3A%209%2C%0A%20%20%20%20%E9%A1%BA%E4%B9%89%E5%8C%BA%3A%2011%2C%0A%20%20%20%20%E5%9B%9B%E5%B7%9D%3A%207%2C%0A%20%20%20%20%E6%88%90%E9%83%BD%3A%209%0A%20%20%7D%0A%0A%20%20const%20%7B%20boundaries%3A%20pathPoints%2C%20get%20%7D%20%3D%20useAreaBoundary(()%20%3D%3E%20%7B%0A%20%20%20%20zoom.value%20%3D%20areaZoomMap%5Barea.value%5D%0A%20%20%7D)%0A%0A%20%20function%20handleInitd()%20%7B%0A%20%20%20%20get(area.value)%0A%20%20%7D%0A%20%20watch(()%20%3D%3E%20area.value%2C%20get)%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E7%BB%93%E5%90%88%20%3Ca%20href%3D%22..%2Fhooks%2FuseAreaBoundary%22%3E%3Ccode%3EuseAreaBoundary%3C%2Fcode%3E%3C%2Fa%3E%20hooks%2C%20%E5%B9%B6%E9%80%9A%E8%BF%87%E6%8C%87%E5%AE%9A%20%3Ccode%3Eprops.isBoundary%3C%2Fcode%3E%20%E4%B8%BA%20%3Ccode%3Etrue%3C%2Fcode%3E%20%E5%AE%9E%E7%8E%B0%E8%A1%8C%E6%94%BF%E5%8C%BA%E5%9F%9F%E6%98%BE%E7%A4%BA%E6%95%88%E6%9E%9C%3C%2Fp%3E%0A"},{default:p(()=>[i]),_:1}),k,n("table",F,[A,n("tbody",null,[B,g,h,m,_,v,b,y,f,n("tr",null,[q,x,P,w,S,n("td",null,[a(E,{type:"tip",text:"^2.2.0"})])])])]),T])}const W=l(u,[["render",M]]);export{R as __pageData,W as default}; diff --git a/assets/zh-CN_components_overlay_polyline.md.CDBAW4zY.js b/assets/zh-CN_components_overlay_polyline.md.CDBAW4zY.js new file mode 100644 index 00000000..b92334f9 --- /dev/null +++ b/assets/zh-CN_components_overlay_polyline.md.CDBAW4zY.js @@ -0,0 +1 @@ +import{_ as d,c as u,I as l,w as p,j as t,al as e,a as n,D as s,o as c}from"./chunks/framework.n6hqIsqL.js";const K=JSON.parse('{"title":"BPolyline 折线","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/overlay/polyline.md","filePath":"zh-CN/components/overlay/polyline.md","lastUpdated":1724785300000}'),i={name:"zh-CN/components/overlay/polyline.md"},r=e('

BPolyline 折线

在地图上绘制简单的折线

ts
import { BPolyline } from 'vue3-baidu-map-gl'

组件示例

',4),E=t("p",null,"overlay/polyline",-1),C=t("h2",{id:"静态组件-props",tabindex:"-1"},[n("静态组件 Props "),t("a",{class:"header-anchor",href:"#静态组件-props","aria-label":'Permalink to "静态组件 Props"'},"​")],-1),h={tabindex:"0"},_=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"可选值"),t("th",null,"默认值"),t("th",null,"版本")])],-1),k=t("tr",null,[t("td",null,"enableClicking"),t("td",null,"是否响应点击事件"),t("td",null,[t("code",null,"boolean")]),t("td",null,"-"),t("td",null,[t("code",null,"true")]),t("td")],-1),D=t("tr",null,[t("td",null,"geodesic"),t("td",null,"是否开启大地线模式,true 时,两点连线将以大地线的形式。"),t("td",null,[t("code",null,"boolean")]),t("td",null,"-"),t("td",null,[t("code",null,"false")]),t("td")],-1),A=t("tr",null,[t("td",null,"clip"),t("td",null,"是否进行跨经度 180 度裁剪,绘制跨精度 180 时为了优化效果"),t("td",null,[t("code",null,"boolean")]),t("td",null,"-"),t("td",null,[t("code",null,"true")]),t("td")],-1),F=t("td",null,"linkRight",-1),g=t("td",null,[n("连接右线,配合"),t("code",null,"clip"),n("解决跨 ±180 度经线绘制问题")],-1),m=t("td",null,[t("code",null,"boolean")],-1),b=t("td",null,"-",-1),B=t("td",null,[t("code",null,"true")],-1),v=t("h2",{id:"动态组件-props",tabindex:"-1"},[n("动态组件 Props "),t("a",{class:"header-anchor",href:"#动态组件-props","aria-label":'Permalink to "动态组件 Props"'},"​")],-1),y={tabindex:"0"},P=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"可选值"),t("th",null,"默认值"),t("th",null,"版本")])],-1),f=t("tr",null,[t("td",null,"path"),t("td",null,"多边形的坐标数组"),t("td",null,[t("code",null,"{ lng: number, lat: number}[]")]),t("td",null,"-"),t("td",null,[t("code",null,"required")]),t("td",null,"-")],-1),x=t("tr",null,[t("td",null,"strokeColor"),t("td",null,"描边的颜色,同 CSS 颜色"),t("td",null,[t("code",null,"string")]),t("td",null,"-"),t("td",null,[t("code",null,"#000000")]),t("td",null,"-")],-1),T=t("tr",null,[t("td",null,"strokeWeight"),t("td",null,"描边的宽度,单位为像素"),t("td",null,[t("code",null,"string")]),t("td",null,"-"),t("td",null,[t("code",null,"2")]),t("td",null,"-")],-1),q=t("tr",null,[t("td",null,"strokeOpacity"),t("td",null,[n("描边的透明度,范围 "),t("code",null,"0-1")]),t("td",null,[t("code",null," number")]),t("td",null,"-"),t("td",null,[t("code",null," 1")]),t("td",null,"-")],-1),S=t("tr",null,[t("td",null,"strokeStyle"),t("td",null,"描边的样式,为实线、虚线、或者点状线"),t("td",null,[t("code",null,"string")]),t("td",null,[t("code",null,"solid / dashed / dotted")]),t("td",null,"-"),t("td",null,"-")],-1),N=t("tr",null,[t("td",null,"enableMassClear"),t("td",null,[n("是否在调用 "),t("code",null,"map.clearOverlays"),n(" 清除此覆盖物")]),t("td",null,[t("code",null,"boolean")]),t("td",null,"-"),t("td",null,[t("code",null,"true ")]),t("td",null,"-")],-1),V=t("tr",null,[t("td",null,"enableEditing"),t("td",null,"开启可编辑模式"),t("td",null,[t("code",null,"boolean")]),t("td",null,"-"),t("td",null,[t("code",null,"false ")]),t("td",null,"-")],-1),w=t("td",null,"visible",-1),z=t("td",null,"是否显示",-1),I=t("td",null,[t("code",null,"boolean")],-1),M=t("td",null,null,-1),$=t("td",null,[t("code",null,"true")],-1),O=e('

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。 当双击时,产生的事件序列为: click click dblclick((e: Event) => void)
dblclick鼠标左键双击事件的回调函数((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数((e: Event) => void)
remove该覆盖物被移除的回调函数((e: Event) => void)
lineupdate覆盖物被编辑后的回调函数((e: Event) => void)
',2);function R(j,G,J,L,U,W){const o=s("Demo"),a=s("Badge");return c(),u("div",null,[r,l(o,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E16%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBPolyline%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Apath%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%5B%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.404%2C%20lat%3A%2039.915%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.404%2C%20lat%3A%2039.92%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.41%2C%20lat%3A%2039.92%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.41%2C%20lat%3A%2039.915%20%7D%0A%20%20%20%20%20%20%5D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Estroke-color%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%23000%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Astroke-opacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E1%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Astroke-weight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E3%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableEditing%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/polyline","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%3Azoom%3D%2216%22%3E%0A%20%20%20%20%3CBPolyline%0A%20%20%20%20%20%20%3Apath%3D%22%5B%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.404%2C%20lat%3A%2039.915%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.404%2C%20lat%3A%2039.92%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.41%2C%20lat%3A%2039.92%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.41%2C%20lat%3A%2039.915%20%7D%0A%20%20%20%20%20%20%5D%22%0A%20%20%20%20%20%20stroke-color%3D%22%23000%22%0A%20%20%20%20%20%20%3Astroke-opacity%3D%221%22%0A%20%20%20%20%20%20%3Astroke-weight%3D%223%22%0A%20%20%20%20%20%20enableEditing%0A%20%20%20%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A",description:"%3Cp%3E%E5%9C%A8%E5%9C%B0%E5%9B%BE%E4%B8%8A%E7%BB%98%E5%88%B6%E5%8F%AF%E7%BC%96%E8%BE%91%E7%9A%84%E6%8A%98%E7%BA%BF%3C%2Fp%3E%0A"},{default:p(()=>[E]),_:1}),C,t("table",h,[_,t("tbody",null,[k,D,A,t("tr",null,[F,g,m,b,B,t("td",null,[l(a,{type:"tip",text:"^2.1.0"})])])])]),v,t("table",y,[P,t("tbody",null,[f,x,T,q,S,N,V,t("tr",null,[w,z,I,M,$,t("td",null,[l(a,{type:"tip",text:"^2.2.0"})])])])]),O])}const Q=d(i,[["render",R]]);export{K as __pageData,Q as default}; diff --git a/assets/zh-CN_components_overlay_polyline.md.CDBAW4zY.lean.js b/assets/zh-CN_components_overlay_polyline.md.CDBAW4zY.lean.js new file mode 100644 index 00000000..b646cc07 --- /dev/null +++ b/assets/zh-CN_components_overlay_polyline.md.CDBAW4zY.lean.js @@ -0,0 +1 @@ +import{_ as d,c as u,I as l,w as p,j as t,al as e,a as n,D as s,o as c}from"./chunks/framework.n6hqIsqL.js";const K=JSON.parse('{"title":"BPolyline 折线","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/overlay/polyline.md","filePath":"zh-CN/components/overlay/polyline.md","lastUpdated":1724785300000}'),i={name:"zh-CN/components/overlay/polyline.md"},r=e("",4),E=t("p",null,"overlay/polyline",-1),C=t("h2",{id:"静态组件-props",tabindex:"-1"},[n("静态组件 Props "),t("a",{class:"header-anchor",href:"#静态组件-props","aria-label":'Permalink to "静态组件 Props"'},"​")],-1),h={tabindex:"0"},_=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"可选值"),t("th",null,"默认值"),t("th",null,"版本")])],-1),k=t("tr",null,[t("td",null,"enableClicking"),t("td",null,"是否响应点击事件"),t("td",null,[t("code",null,"boolean")]),t("td",null,"-"),t("td",null,[t("code",null,"true")]),t("td")],-1),D=t("tr",null,[t("td",null,"geodesic"),t("td",null,"是否开启大地线模式,true 时,两点连线将以大地线的形式。"),t("td",null,[t("code",null,"boolean")]),t("td",null,"-"),t("td",null,[t("code",null,"false")]),t("td")],-1),A=t("tr",null,[t("td",null,"clip"),t("td",null,"是否进行跨经度 180 度裁剪,绘制跨精度 180 时为了优化效果"),t("td",null,[t("code",null,"boolean")]),t("td",null,"-"),t("td",null,[t("code",null,"true")]),t("td")],-1),F=t("td",null,"linkRight",-1),g=t("td",null,[n("连接右线,配合"),t("code",null,"clip"),n("解决跨 ±180 度经线绘制问题")],-1),m=t("td",null,[t("code",null,"boolean")],-1),b=t("td",null,"-",-1),B=t("td",null,[t("code",null,"true")],-1),v=t("h2",{id:"动态组件-props",tabindex:"-1"},[n("动态组件 Props "),t("a",{class:"header-anchor",href:"#动态组件-props","aria-label":'Permalink to "动态组件 Props"'},"​")],-1),y={tabindex:"0"},P=t("thead",null,[t("tr",null,[t("th",null,"属性"),t("th",null,"说明"),t("th",null,"类型"),t("th",null,"可选值"),t("th",null,"默认值"),t("th",null,"版本")])],-1),f=t("tr",null,[t("td",null,"path"),t("td",null,"多边形的坐标数组"),t("td",null,[t("code",null,"{ lng: number, lat: number}[]")]),t("td",null,"-"),t("td",null,[t("code",null,"required")]),t("td",null,"-")],-1),x=t("tr",null,[t("td",null,"strokeColor"),t("td",null,"描边的颜色,同 CSS 颜色"),t("td",null,[t("code",null,"string")]),t("td",null,"-"),t("td",null,[t("code",null,"#000000")]),t("td",null,"-")],-1),T=t("tr",null,[t("td",null,"strokeWeight"),t("td",null,"描边的宽度,单位为像素"),t("td",null,[t("code",null,"string")]),t("td",null,"-"),t("td",null,[t("code",null,"2")]),t("td",null,"-")],-1),q=t("tr",null,[t("td",null,"strokeOpacity"),t("td",null,[n("描边的透明度,范围 "),t("code",null,"0-1")]),t("td",null,[t("code",null," number")]),t("td",null,"-"),t("td",null,[t("code",null," 1")]),t("td",null,"-")],-1),S=t("tr",null,[t("td",null,"strokeStyle"),t("td",null,"描边的样式,为实线、虚线、或者点状线"),t("td",null,[t("code",null,"string")]),t("td",null,[t("code",null,"solid / dashed / dotted")]),t("td",null,"-"),t("td",null,"-")],-1),N=t("tr",null,[t("td",null,"enableMassClear"),t("td",null,[n("是否在调用 "),t("code",null,"map.clearOverlays"),n(" 清除此覆盖物")]),t("td",null,[t("code",null,"boolean")]),t("td",null,"-"),t("td",null,[t("code",null,"true ")]),t("td",null,"-")],-1),V=t("tr",null,[t("td",null,"enableEditing"),t("td",null,"开启可编辑模式"),t("td",null,[t("code",null,"boolean")]),t("td",null,"-"),t("td",null,[t("code",null,"false ")]),t("td",null,"-")],-1),w=t("td",null,"visible",-1),z=t("td",null,"是否显示",-1),I=t("td",null,[t("code",null,"boolean")],-1),M=t("td",null,null,-1),$=t("td",null,[t("code",null,"true")],-1),O=e("",2);function R(j,G,J,L,U,W){const o=s("Demo"),a=s("Badge");return c(),u("div",null,[r,l(o,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E16%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBPolyline%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Apath%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%5B%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.404%2C%20lat%3A%2039.915%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.404%2C%20lat%3A%2039.92%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.41%2C%20lat%3A%2039.92%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.41%2C%20lat%3A%2039.915%20%7D%0A%20%20%20%20%20%20%5D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Estroke-color%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%23000%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Astroke-opacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E1%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Astroke-weight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E3%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableEditing%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/polyline","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%3Azoom%3D%2216%22%3E%0A%20%20%20%20%3CBPolyline%0A%20%20%20%20%20%20%3Apath%3D%22%5B%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.404%2C%20lat%3A%2039.915%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.404%2C%20lat%3A%2039.92%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.41%2C%20lat%3A%2039.92%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%20lng%3A%20116.41%2C%20lat%3A%2039.915%20%7D%0A%20%20%20%20%20%20%5D%22%0A%20%20%20%20%20%20stroke-color%3D%22%23000%22%0A%20%20%20%20%20%20%3Astroke-opacity%3D%221%22%0A%20%20%20%20%20%20%3Astroke-weight%3D%223%22%0A%20%20%20%20%20%20enableEditing%0A%20%20%20%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A",description:"%3Cp%3E%E5%9C%A8%E5%9C%B0%E5%9B%BE%E4%B8%8A%E7%BB%98%E5%88%B6%E5%8F%AF%E7%BC%96%E8%BE%91%E7%9A%84%E6%8A%98%E7%BA%BF%3C%2Fp%3E%0A"},{default:p(()=>[E]),_:1}),C,t("table",h,[_,t("tbody",null,[k,D,A,t("tr",null,[F,g,m,b,B,t("td",null,[l(a,{type:"tip",text:"^2.1.0"})])])])]),v,t("table",y,[P,t("tbody",null,[f,x,T,q,S,N,V,t("tr",null,[w,z,I,M,$,t("td",null,[l(a,{type:"tip",text:"^2.2.0"})])])])]),O])}const Q=d(i,[["render",R]]);export{K as __pageData,Q as default}; diff --git a/assets/zh-CN_components_overlay_prism.md.B2qewn0M.js b/assets/zh-CN_components_overlay_prism.md.B2qewn0M.js new file mode 100644 index 00000000..8a509a70 --- /dev/null +++ b/assets/zh-CN_components_overlay_prism.md.B2qewn0M.js @@ -0,0 +1 @@ +import{_ as l,c,I as t,w as E,j as a,al as n,a as s,D as e,o as u}from"./chunks/framework.n6hqIsqL.js";const V=JSON.parse('{"title":"BPrism 3d 棱柱","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/overlay/prism.md","filePath":"zh-CN/components/overlay/prism.md","lastUpdated":1724785300000}'),C={name:"zh-CN/components/overlay/prism.md"},d=n('

BPrism 3d 棱柱

通过该组件可在地图上绘制 3d 棱柱,可以基于位置经纬度,高度,顶面和侧面的颜色、透明度等属性来绘制不规则的棱柱体。

ts
import { BPrism } from 'vue3-baidu-map-gl'

示例

',4),i=a("p",null,"overlay/prism",-1),r=n('

静态组件 Props

属性说明类型默认值
isBoundary是否是行政区域的边界多边形boolean false
autoCenter是否自动根据多边形居中地图boolean true
enableClicking是否响应点击事件boolean true

动态组件 Props

',3),D={tabindex:"0"},F=a("thead",null,[a("tr",null,[a("th",null,"属性"),a("th",null,"说明"),a("th",null,"类型"),a("th",null,"可选值"),a("th",null,"默认值"),a("th",null,"版本")])],-1),k=a("tr",null,[a("td",null,"path"),a("td",null,"多边形的坐标数组"),a("td",null,[a("code",null,"{ lng: number, lat: number}[]")]),a("td",null,"-"),a("td",null,[a("code",null,"required")]),a("td",null,"-")],-1),A=a("tr",null,[a("td",null,"altitude"),a("td",null,"3d 棱柱高度"),a("td",null,[a("code",null,"number")]),a("td",null,"-"),a("td",null,[a("code",null,"required")]),a("td",null,"-")],-1),h=a("tr",null,[a("td",null,"topFillColor"),a("td",null,"顶面填充颜色"),a("td",null,[a("code",null,"string ")]),a("td",null,"-"),a("td",null,[a("code",null,"#fff")]),a("td",null,"-")],-1),m=a("tr",null,[a("td",null,"topFillOpacity"),a("td",null,"顶面填充颜色透明度"),a("td",null,[a("code",null,"number")]),a("td",null,[a("code",null,"0-1")]),a("td",null,"-"),a("td",null,"-")],-1),_=a("tr",null,[a("td",null,"sideFillColor"),a("td",null,"侧面填充颜色"),a("td",null,[a("code",null,"string")]),a("td",null,"-"),a("td"),a("td",null,"-")],-1),v=a("tr",null,[a("td",null,"sideFillOpacity"),a("td",null,"侧面填充颜色透明度"),a("td",null,[a("code",null,"number")]),a("td",null,[a("code",null,"0-1")]),a("td",null,[a("code",null,"#fff")]),a("td",null,"-")],-1),B=a("tr",null,[a("td",null,"enableMassClear"),a("td",null,[s("是否在调用 "),a("code",null,"map.clearOverlays"),s(" 清除此覆盖物")]),a("td",null,[a("code",null,"boolean")]),a("td",null,"-"),a("td",null,[a("code",null," true")]),a("td",null,"-")],-1),b=a("td",null,"visible",-1),g=a("td",null,"是否显示",-1),y=a("td",null,[a("code",null,"boolean")],-1),f=a("td",null,"-",-1),P=a("td",null,[a("code",null,"true")],-1),q=n('

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。 当双击时,产生的事件序列为: click -> click -> dblclick ((e: Event) => void)
dblclick鼠标左键双击事件的回调函数((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数((e: Event) => void)
remove该覆盖物被移除的回调函数((e: Event) => void)
lineupdate覆盖物被编辑后的回调函数((e: Event) => void)
',2);function T(O,x,S,w,I,M){const o=e("Demo"),p=e("Badge");return u(),c("div",null,[d,t(o,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E10%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Atilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E50%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EmapStyleId%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E980161f3645989feac25a0da15da4178%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBPrism%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EisBoundary%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Apath%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EpathPoints%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AautoCenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Efalse%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AtopFillOpacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EtopFillOpacity%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AsideFillOpacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E0.9%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aaltitude%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E5000%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EsideFillColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%235679ea%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EtopFillColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%235679ea%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40mouseover%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleMouseover%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40mouseout%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleMouseout%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20useAreaBoundary%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20topFillOpacity%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Enumber%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E0.5%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20area%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Estring%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'%E5%8C%97%E4%BA%AC%E5%B8%82'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eboundaries%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20pathPoints%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20get%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EuseAreaBoundary%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Eget%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Earea%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleMouseover%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20topFillOpacity%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleMouseout%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20topFillOpacity%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.5%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/prism","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%0A%20%20%20%20v-bind%3D%22%24attrs%22%0A%20%20%20%20%3Azoom%3D%2210%22%0A%20%20%20%20%3Atilt%3D%2250%22%0A%20%20%20%20enableScrollWheelZoom%0A%20%20%20%20mapStyleId%3D%22980161f3645989feac25a0da15da4178%22%0A%20%20%20%20%40initd%3D%22handleInitd%22%0A%20%20%3E%0A%20%20%20%20%3CBPrism%0A%20%20%20%20%20%20isBoundary%0A%20%20%20%20%20%20%3Apath%3D%22pathPoints%22%0A%20%20%20%20%20%20%3AautoCenter%3D%22false%22%0A%20%20%20%20%20%20%3AtopFillOpacity%3D%22topFillOpacity%22%0A%20%20%20%20%20%20%3AsideFillOpacity%3D%220.9%22%0A%20%20%20%20%20%20%3Aaltitude%3D%225000%22%0A%20%20%20%20%20%20sideFillColor%3D%22%235679ea%22%0A%20%20%20%20%20%20topFillColor%3D%22%235679ea%22%0A%20%20%20%20%20%20%40mouseover%3D%22handleMouseover%22%0A%20%20%20%20%20%20%40mouseout%3D%22handleMouseout%22%0A%20%20%20%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%20lang%3D%22ts%22%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20import%20%7B%20useAreaBoundary%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20topFillOpacity%20%3D%20ref%3Cnumber%3E(0.5)%0A%20%20const%20area%20%3D%20ref%3Cstring%3E('%E5%8C%97%E4%BA%AC%E5%B8%82')%0A%20%20const%20%7B%20boundaries%3A%20pathPoints%2C%20get%20%7D%20%3D%20useAreaBoundary()%0A%0A%20%20function%20handleInitd()%20%7B%0A%20%20%20%20get(area.value)%0A%20%20%7D%0A%0A%20%20function%20handleMouseover()%20%7B%0A%20%20%20%20topFillOpacity.value%20%3D%201%0A%20%20%7D%0A%0A%20%20function%20handleMouseout()%20%7B%0A%20%20%20%20topFillOpacity.value%20%3D%200.5%0A%20%20%7D%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E7%BB%93%E5%90%88%20%3Ca%20href%3D%22..%2Fhooks%2FuseAreaBoundary%22%3E%3Ccode%3EuseAreaBoundary%3C%2Fcode%3E%3C%2Fa%3E%20hooks%2C%20%E5%B9%B6%E9%80%9A%E8%BF%87%E6%8C%87%E5%AE%9A%20%3Ccode%3Eprops.isBoundary%3C%2Fcode%3E%20%E4%B8%BA%20%3Ccode%3Etrue%3C%2Fcode%3E%20%E5%AE%9E%E7%8E%B0%203d%20%E8%A1%8C%E6%94%BF%E5%8C%BA%E5%9F%9F%E6%98%BE%E7%A4%BA%E6%95%88%E6%9E%9C%3C%2Fp%3E%0A"},{default:E(()=>[i]),_:1}),r,a("table",D,[F,a("tbody",null,[k,A,h,m,_,v,B,a("tr",null,[b,g,y,f,P,a("td",null,[t(p,{type:"tip",text:"^2.2.0"})])])])]),q])}const z=l(C,[["render",T]]);export{V as __pageData,z as default}; diff --git a/assets/zh-CN_components_overlay_prism.md.B2qewn0M.lean.js b/assets/zh-CN_components_overlay_prism.md.B2qewn0M.lean.js new file mode 100644 index 00000000..17c8b551 --- /dev/null +++ b/assets/zh-CN_components_overlay_prism.md.B2qewn0M.lean.js @@ -0,0 +1 @@ +import{_ as l,c,I as t,w as E,j as a,al as n,a as s,D as e,o as u}from"./chunks/framework.n6hqIsqL.js";const V=JSON.parse('{"title":"BPrism 3d 棱柱","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/components/overlay/prism.md","filePath":"zh-CN/components/overlay/prism.md","lastUpdated":1724785300000}'),C={name:"zh-CN/components/overlay/prism.md"},d=n("",4),i=a("p",null,"overlay/prism",-1),r=n("",3),D={tabindex:"0"},F=a("thead",null,[a("tr",null,[a("th",null,"属性"),a("th",null,"说明"),a("th",null,"类型"),a("th",null,"可选值"),a("th",null,"默认值"),a("th",null,"版本")])],-1),k=a("tr",null,[a("td",null,"path"),a("td",null,"多边形的坐标数组"),a("td",null,[a("code",null,"{ lng: number, lat: number}[]")]),a("td",null,"-"),a("td",null,[a("code",null,"required")]),a("td",null,"-")],-1),A=a("tr",null,[a("td",null,"altitude"),a("td",null,"3d 棱柱高度"),a("td",null,[a("code",null,"number")]),a("td",null,"-"),a("td",null,[a("code",null,"required")]),a("td",null,"-")],-1),h=a("tr",null,[a("td",null,"topFillColor"),a("td",null,"顶面填充颜色"),a("td",null,[a("code",null,"string ")]),a("td",null,"-"),a("td",null,[a("code",null,"#fff")]),a("td",null,"-")],-1),m=a("tr",null,[a("td",null,"topFillOpacity"),a("td",null,"顶面填充颜色透明度"),a("td",null,[a("code",null,"number")]),a("td",null,[a("code",null,"0-1")]),a("td",null,"-"),a("td",null,"-")],-1),_=a("tr",null,[a("td",null,"sideFillColor"),a("td",null,"侧面填充颜色"),a("td",null,[a("code",null,"string")]),a("td",null,"-"),a("td"),a("td",null,"-")],-1),v=a("tr",null,[a("td",null,"sideFillOpacity"),a("td",null,"侧面填充颜色透明度"),a("td",null,[a("code",null,"number")]),a("td",null,[a("code",null,"0-1")]),a("td",null,[a("code",null,"#fff")]),a("td",null,"-")],-1),B=a("tr",null,[a("td",null,"enableMassClear"),a("td",null,[s("是否在调用 "),a("code",null,"map.clearOverlays"),s(" 清除此覆盖物")]),a("td",null,[a("code",null,"boolean")]),a("td",null,"-"),a("td",null,[a("code",null," true")]),a("td",null,"-")],-1),b=a("td",null,"visible",-1),g=a("td",null,"是否显示",-1),y=a("td",null,[a("code",null,"boolean")],-1),f=a("td",null,"-",-1),P=a("td",null,[a("code",null,"true")],-1),q=n("",2);function T(O,x,S,w,I,M){const o=e("Demo"),p=e("Badge");return u(),c("div",null,[d,t(o,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E10%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Atilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E50%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EmapStyleId%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E980161f3645989feac25a0da15da4178%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBPrism%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EisBoundary%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Apath%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EpathPoints%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AautoCenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Efalse%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AtopFillOpacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EtopFillOpacity%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AsideFillOpacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E0.9%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aaltitude%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E5000%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EsideFillColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%235679ea%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EtopFillColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%235679ea%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40mouseover%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleMouseover%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40mouseout%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleMouseout%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20useAreaBoundary%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20topFillOpacity%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Enumber%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E0.5%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20area%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Estring%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'%E5%8C%97%E4%BA%AC%E5%B8%82'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eboundaries%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20pathPoints%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20get%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EuseAreaBoundary%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Eget%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Earea%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleMouseover%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20topFillOpacity%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleMouseout%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20topFillOpacity%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.5%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/prism","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%0A%20%20%20%20v-bind%3D%22%24attrs%22%0A%20%20%20%20%3Azoom%3D%2210%22%0A%20%20%20%20%3Atilt%3D%2250%22%0A%20%20%20%20enableScrollWheelZoom%0A%20%20%20%20mapStyleId%3D%22980161f3645989feac25a0da15da4178%22%0A%20%20%20%20%40initd%3D%22handleInitd%22%0A%20%20%3E%0A%20%20%20%20%3CBPrism%0A%20%20%20%20%20%20isBoundary%0A%20%20%20%20%20%20%3Apath%3D%22pathPoints%22%0A%20%20%20%20%20%20%3AautoCenter%3D%22false%22%0A%20%20%20%20%20%20%3AtopFillOpacity%3D%22topFillOpacity%22%0A%20%20%20%20%20%20%3AsideFillOpacity%3D%220.9%22%0A%20%20%20%20%20%20%3Aaltitude%3D%225000%22%0A%20%20%20%20%20%20sideFillColor%3D%22%235679ea%22%0A%20%20%20%20%20%20topFillColor%3D%22%235679ea%22%0A%20%20%20%20%20%20%40mouseover%3D%22handleMouseover%22%0A%20%20%20%20%20%20%40mouseout%3D%22handleMouseout%22%0A%20%20%20%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%20lang%3D%22ts%22%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20import%20%7B%20useAreaBoundary%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20topFillOpacity%20%3D%20ref%3Cnumber%3E(0.5)%0A%20%20const%20area%20%3D%20ref%3Cstring%3E('%E5%8C%97%E4%BA%AC%E5%B8%82')%0A%20%20const%20%7B%20boundaries%3A%20pathPoints%2C%20get%20%7D%20%3D%20useAreaBoundary()%0A%0A%20%20function%20handleInitd()%20%7B%0A%20%20%20%20get(area.value)%0A%20%20%7D%0A%0A%20%20function%20handleMouseover()%20%7B%0A%20%20%20%20topFillOpacity.value%20%3D%201%0A%20%20%7D%0A%0A%20%20function%20handleMouseout()%20%7B%0A%20%20%20%20topFillOpacity.value%20%3D%200.5%0A%20%20%7D%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E7%BB%93%E5%90%88%20%3Ca%20href%3D%22..%2Fhooks%2FuseAreaBoundary%22%3E%3Ccode%3EuseAreaBoundary%3C%2Fcode%3E%3C%2Fa%3E%20hooks%2C%20%E5%B9%B6%E9%80%9A%E8%BF%87%E6%8C%87%E5%AE%9A%20%3Ccode%3Eprops.isBoundary%3C%2Fcode%3E%20%E4%B8%BA%20%3Ccode%3Etrue%3C%2Fcode%3E%20%E5%AE%9E%E7%8E%B0%203d%20%E8%A1%8C%E6%94%BF%E5%8C%BA%E5%9F%9F%E6%98%BE%E7%A4%BA%E6%95%88%E6%9E%9C%3C%2Fp%3E%0A"},{default:E(()=>[i]),_:1}),r,a("table",D,[F,a("tbody",null,[k,A,h,m,_,v,B,a("tr",null,[b,g,y,f,P,a("td",null,[t(p,{type:"tip",text:"^2.2.0"})])])])]),q])}const z=l(C,[["render",T]]);export{V as __pageData,z as default}; diff --git a/assets/zh-CN_expand_bmap-draw.md.i3gnZ90D.js b/assets/zh-CN_expand_bmap-draw.md.i3gnZ90D.js new file mode 100644 index 00000000..c0d96d5f --- /dev/null +++ b/assets/zh-CN_expand_bmap-draw.md.i3gnZ90D.js @@ -0,0 +1,3 @@ +import{_ as p,c as e,I as s,w as t,al as o,j as n,a as E,D as C,o as c}from"./chunks/framework.n6hqIsqL.js";const f=JSON.parse('{"title":"bmap-draw 鼠标测量与绘制","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/expand/bmap-draw.md","filePath":"zh-CN/expand/bmap-draw.md","lastUpdated":1724785300000}'),l={name:"zh-CN/expand/bmap-draw.md"},u=o(`

bmap-draw 鼠标测量与绘制

BMap Draw 是一个基于百度地图 JSAPI 的轻量级鼠标绘制库,提供了鼠标绘制、编辑、裁切、合并、复制黏贴、移动、测量等多种几何图形操作能力,助力开发者开箱即用式快速实现自己的几何图形编辑器。

使用方式请参考官方文档: https://lbsyun.baidu.com/bmap-draw/

注意

该组件库中 BMapGL 是异步加载,而 bmap-draw 中配置文件中包含同步调用 BMapGL 相关构造函数,所以只能使用异步加载。

ts
import('bmap-draw').then(({ DrawScene }) => {
+  // ...
+})

绘制

`,5),D=n("p",null,"expand/bmap-draw/draw",-1),r=n("h2",{id:"测量",tabindex:"-1"},[E("测量 "),n("a",{class:"header-anchor",href:"#测量","aria-label":'Permalink to "测量"'},"​")],-1),i=n("p",null,"测量距离,面积,折线长度等",-1),k=n("p",null,"expand/bmap-draw/meterage",-1);function F(A,g,B,y,d,m){const a=C("Demo");return c(),e("div",null,[u,s(a,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!marker.isDrawing%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Emarker.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BB%98%E5%88%B6%E7%82%B9%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-else%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Emarker.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%A6%81%E7%94%A8%E7%BB%98%E5%88%B6%E7%82%B9%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!polyline.isDrawing%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epolyline.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BB%98%E5%88%B6%E7%BA%BF%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-else%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epolyline.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%A6%81%E7%94%A8%E7%BB%98%E5%88%B6%E7%BA%BF%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!circle.isDrawing%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ecircle.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BB%98%E5%88%B6%E5%9C%86%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-else%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ecircle.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%A6%81%E7%94%A8%E7%BB%98%E5%88%B6%E5%9C%86%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!polygon.isDrawing%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epolygon.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BB%98%E5%88%B6%E5%A4%9A%E8%BE%B9%E5%BD%A2%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-else%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epolygon.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%A6%81%E7%94%A8%E7%BB%98%E5%88%B6%E5%A4%9A%E8%BE%B9%E5%BD%A2%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!rectangle.isDrawing%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Erectangle.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BB%98%E5%88%B6%E7%9F%A9%E5%BD%A2%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-else%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Erectangle.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%A6%81%E7%94%A8%E7%BB%98%E5%88%B6%E7%9F%A9%E5%BD%A2%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EclearFn%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E6%B8%85%E7%A9%BA%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lng%3A%20116.385243%2C%20lat%3A%2039.913063%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E16%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Eenable-scroll-wheel-zoom%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EmapStyleId%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E980161f3645989feac25a0da15da4178%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20useDefaultMarkerIcons%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20marker%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Einstance%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enull%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisDrawing%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Etoggle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20_marker%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20marker%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%0A%20%20%20%20%20%20_marker%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%20%3Cspan%20class%3D%22token%20operator%22%3E%3F%3C%2Fspan%3E%20_marker%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EcloseAll%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20_marker%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eopen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20_marker%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E!%3C%2Fspan%3E_marker%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20circle%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Einstance%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enull%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisDrawing%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Etoggle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20_circle%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20circle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%0A%20%20%20%20%20%20_circle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%20%3Cspan%20class%3D%22token%20operator%22%3E%3F%3C%2Fspan%3E%20_circle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EcloseAll%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20_circle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eopen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20_circle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E!%3C%2Fspan%3E_circle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20polyline%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Einstance%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enull%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisDrawing%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Etoggle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20_polyline%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20polyline%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%0A%20%20%20%20%20%20_polyline%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%20%3Cspan%20class%3D%22token%20operator%22%3E%3F%3C%2Fspan%3E%20_polyline%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EcloseAll%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20_polyline%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eopen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20_polyline%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E!%3C%2Fspan%3E_polyline%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20polygon%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Einstance%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enull%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisDrawing%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Etoggle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20_polygon%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20polygon%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%0A%20%20%20%20%20%20_polygon%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%20%3Cspan%20class%3D%22token%20operator%22%3E%3F%3C%2Fspan%3E%20_polygon%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EcloseAll%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20_polygon%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eopen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20_polygon%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E!%3C%2Fspan%3E_polygon%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20rectangle%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Einstance%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enull%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisDrawing%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Etoggle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20_rectangle%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20rectangle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%0A%20%20%20%20%20%20_rectangle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%20%3Cspan%20class%3D%22token%20operator%22%3E%3F%3C%2Fspan%3E%20_rectangle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EcloseAll%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20_rectangle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eopen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20_rectangle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E!%3C%2Fspan%3E_rectangle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20clearFn%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20map%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20BMapGL%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'bmap-draw'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Ethen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20DrawScene%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20MarkerDraw%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20PolylineDraw%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20CircleDraw%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20PolygonDraw%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20RectDraw%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20scene%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EDrawScene%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Emap%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20clearFn%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function-variable%20function%22%3Evalue%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20scene%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EclearData%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E7%82%B9%E7%BB%98%E5%88%B6%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20defaultIcons%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EuseDefaultMarkerIcons%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20marker%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EMarkerDraw%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Escene%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisOpen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisSeries%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EenableDragging%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EbaseOpts%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eicon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20defaultIcons%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'red1'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E6%8A%98%E7%BA%BF%E7%BB%98%E5%88%B6%3C%2Fspan%3E%0A%20%20%20%20%20%20polyline%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EPolylineDraw%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Escene%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisOpen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EenableSnap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E5%BC%80%E5%90%AF%E5%90%B8%E9%99%84%E7%BB%98%E5%88%B6%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EmatchOverlay%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E8%87%AA%E5%AE%9A%E4%B9%89%E5%90%B8%E9%99%84%E7%82%B9%E6%A0%B7%E5%BC%8F%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'Marker'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eicon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EIcon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'http%3A%2F%2Fmaponline0.bdimg.com%2Fsty%2Fmap_icons2x%2FMapRes%2Fshenghui_1.png'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3ESize%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E10%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E10%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eoffset%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3ESize%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E5%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E5%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E5%A4%9A%E8%BE%B9%E5%BD%A2%E7%BB%98%E5%88%B6%3C%2Fspan%3E%0A%20%20%20%20%20%20polygon%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EPolygonDraw%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Escene%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisOpen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3ElabelOptions%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EborderRadius%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'2px'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ebackground%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%23b5d3fb'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eborder%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'1px%20solid%20%23b5d3fb'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecolor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%23333'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EfontSize%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'12px'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EletterSpacing%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'0'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epadding%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'5px'%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EbaseOpts%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EfillColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%23fff'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EstrokeWeight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E5%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EstrokeOpacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EfillOpacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.2%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E5%9C%86%E5%BD%A2%E7%BB%98%E5%88%B6%3C%2Fspan%3E%0A%20%20%20%20%20%20circle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3ECircleDraw%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Escene%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisOpen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3ElabelOptions%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EborderRadius%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'2px'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ebackground%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%23b5d3fb'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eborder%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'1px%20solid%20%23b5d3fb'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecolor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%23333'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EfontSize%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'12px'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EletterSpacing%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'0'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epadding%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'5px'%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EbaseOpts%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EstrokeColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%236d77f9'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EfillColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%23fff'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EstrokeWeight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E5%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EstrokeOpacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EfillOpacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.2%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E7%9F%A9%E5%BD%A2%E7%BB%98%E5%88%B6%3C%2Fspan%3E%0A%20%20%20%20%20%20rectangle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3ERectDraw%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Escene%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisOpen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisSeries%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3ElabelOptions%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EborderRadius%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'2px'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ebackground%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%23b5d3fb'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eborder%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'1px%20solid%20%23b5d3fb'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecolor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%23333'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EfontSize%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'12px'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EletterSpacing%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'0'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epadding%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'5px'%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EbaseOpts%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EfillColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%23fff'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EstrokeWeight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E5%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EstrokeOpacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EfillOpacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.2%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"expand/bmap-draw/draw","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-if%3D%22!marker.isDrawing%22%20%40click%3D%22marker.toggle%22%3E%E7%BB%98%E5%88%B6%E7%82%B9%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-else%20%40click%3D%22marker.toggle%22%3E%E7%A6%81%E7%94%A8%E7%BB%98%E5%88%B6%E7%82%B9%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-if%3D%22!polyline.isDrawing%22%20%40click%3D%22polyline.toggle%22%3E%E7%BB%98%E5%88%B6%E7%BA%BF%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-else%20%40click%3D%22polyline.toggle%22%3E%E7%A6%81%E7%94%A8%E7%BB%98%E5%88%B6%E7%BA%BF%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-if%3D%22!circle.isDrawing%22%20%40click%3D%22circle.toggle%22%3E%E7%BB%98%E5%88%B6%E5%9C%86%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-else%20%40click%3D%22circle.toggle%22%3E%E7%A6%81%E7%94%A8%E7%BB%98%E5%88%B6%E5%9C%86%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-if%3D%22!polygon.isDrawing%22%20%40click%3D%22polygon.toggle%22%3E%E7%BB%98%E5%88%B6%E5%A4%9A%E8%BE%B9%E5%BD%A2%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-else%20%40click%3D%22polygon.toggle%22%3E%E7%A6%81%E7%94%A8%E7%BB%98%E5%88%B6%E5%A4%9A%E8%BE%B9%E5%BD%A2%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-if%3D%22!rectangle.isDrawing%22%20%40click%3D%22rectangle.toggle%22%3E%E7%BB%98%E5%88%B6%E7%9F%A9%E5%BD%A2%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-else%20%40click%3D%22rectangle.toggle%22%3E%E7%A6%81%E7%94%A8%E7%BB%98%E5%88%B6%E7%9F%A9%E5%BD%A2%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20%40click%3D%22clearFn%22%3E%E6%B8%85%E7%A9%BA%3C%2Fbutton%3E%0A%20%20%20%20%3CBMap%0A%20%20%20%20%20%20v-bind%3D%22%24attrs%22%0A%20%20%20%20%20%20%3Acenter%3D%22%7B%20lng%3A%20116.385243%2C%20lat%3A%2039.913063%20%7D%22%0A%20%20%20%20%20%20%3Azoom%3D%2216%22%0A%20%20%20%20%20%20enable-scroll-wheel-zoom%0A%20%20%20%20%20%20%40initd%3D%22handleInitd%22%0A%20%20%20%20%20%20mapStyleId%3D%22980161f3645989feac25a0da15da4178%22%0A%20%20%20%20%2F%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20import%20%7B%20useDefaultMarkerIcons%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20let%20marker%20%3D%20ref(%7B%0A%20%20%20%20instance%3A%20null%2C%0A%20%20%20%20isDrawing%3A%20false%2C%0A%20%20%20%20toggle()%20%7B%0A%20%20%20%20%20%20let%20_marker%20%3D%20marker.value%0A%20%20%20%20%20%20_marker.isDrawing%20%3F%20_marker.instance.closeAll()%20%3A%20_marker.instance.open()%0A%20%20%20%20%20%20_marker.isDrawing%20%3D%20!_marker.isDrawing%0A%20%20%20%20%7D%0A%20%20%7D)%0A%20%20let%20circle%20%3D%20ref(%7B%0A%20%20%20%20instance%3A%20null%2C%0A%20%20%20%20isDrawing%3A%20false%2C%0A%20%20%20%20toggle()%20%7B%0A%20%20%20%20%20%20let%20_circle%20%3D%20circle.value%0A%20%20%20%20%20%20_circle.isDrawing%20%3F%20_circle.instance.closeAll()%20%3A%20_circle.instance.open()%0A%20%20%20%20%20%20_circle.isDrawing%20%3D%20!_circle.isDrawing%0A%20%20%20%20%7D%0A%20%20%7D)%0A%20%20let%20polyline%20%3D%20ref(%7B%0A%20%20%20%20instance%3A%20null%2C%0A%20%20%20%20isDrawing%3A%20false%2C%0A%20%20%20%20toggle()%20%7B%0A%20%20%20%20%20%20let%20_polyline%20%3D%20polyline.value%0A%20%20%20%20%20%20_polyline.isDrawing%20%3F%20_polyline.instance.closeAll()%20%3A%20_polyline.instance.open()%0A%20%20%20%20%20%20_polyline.isDrawing%20%3D%20!_polyline.isDrawing%0A%20%20%20%20%7D%0A%20%20%7D)%0A%20%20let%20polygon%20%3D%20ref(%7B%0A%20%20%20%20instance%3A%20null%2C%0A%20%20%20%20isDrawing%3A%20false%2C%0A%20%20%20%20toggle()%20%7B%0A%20%20%20%20%20%20let%20_polygon%20%3D%20polygon.value%0A%20%20%20%20%20%20_polygon.isDrawing%20%3F%20_polygon.instance.closeAll()%20%3A%20_polygon.instance.open()%0A%20%20%20%20%20%20_polygon.isDrawing%20%3D%20!_polygon.isDrawing%0A%20%20%20%20%7D%0A%20%20%7D)%0A%20%20let%20rectangle%20%3D%20ref(%7B%0A%20%20%20%20instance%3A%20null%2C%0A%20%20%20%20isDrawing%3A%20false%2C%0A%20%20%20%20toggle()%20%7B%0A%20%20%20%20%20%20let%20_rectangle%20%3D%20rectangle.value%0A%20%20%20%20%20%20_rectangle.isDrawing%20%3F%20_rectangle.instance.closeAll()%20%3A%20_rectangle.instance.open()%0A%20%20%20%20%20%20_rectangle.isDrawing%20%3D%20!_rectangle.isDrawing%0A%20%20%20%20%7D%0A%20%20%7D)%0A%20%20let%20clearFn%20%3D%20ref()%0A%20%20function%20handleInitd(%7B%20map%2C%20BMapGL%20%7D)%20%7B%0A%20%20%20%20import('bmap-draw').then((%7B%20DrawScene%2C%20MarkerDraw%2C%20PolylineDraw%2C%20CircleDraw%2C%20PolygonDraw%2C%20RectDraw%20%7D)%20%3D%3E%20%7B%0A%20%20%20%20%20%20const%20scene%20%3D%20new%20DrawScene(map)%0A%20%20%20%20%20%20clearFn.value%20%3D%20()%20%3D%3E%20scene.clearData()%0A%20%20%20%20%20%20%2F%2F%20%E7%82%B9%E7%BB%98%E5%88%B6%0A%20%20%20%20%20%20const%20defaultIcons%20%3D%20useDefaultMarkerIcons()%0A%20%20%20%20%20%20marker.value.instance%20%3D%20new%20MarkerDraw(scene%2C%20%7B%0A%20%20%20%20%20%20%20%20isOpen%3A%20false%2C%0A%20%20%20%20%20%20%20%20isSeries%3A%20true%2C%0A%20%20%20%20%20%20%20%20enableDragging%3A%20true%2C%0A%20%20%20%20%20%20%20%20baseOpts%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20icon%3A%20defaultIcons%5B'red1'%5D%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D)%0A%20%20%20%20%20%20%2F%2F%20%E6%8A%98%E7%BA%BF%E7%BB%98%E5%88%B6%0A%20%20%20%20%20%20polyline.value.instance%20%3D%20new%20PolylineDraw(scene%2C%20%7B%0A%20%20%20%20%20%20%20%20isOpen%3A%20false%2C%0A%20%20%20%20%20%20%20%20enableSnap%3A%20true%2C%20%2F%2F%20%E5%BC%80%E5%90%AF%E5%90%B8%E9%99%84%E7%BB%98%E5%88%B6%0A%20%20%20%20%20%20%20%20matchOverlay%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20%2F%2F%20%E8%87%AA%E5%AE%9A%E4%B9%89%E5%90%B8%E9%99%84%E7%82%B9%E6%A0%B7%E5%BC%8F%0A%20%20%20%20%20%20%20%20%20%20type%3A%20'Marker'%2C%0A%20%20%20%20%20%20%20%20%20%20icon%3A%20new%20BMapGL.Icon(%0A%20%20%20%20%20%20%20%20%20%20%20%20'http%3A%2F%2Fmaponline0.bdimg.com%2Fsty%2Fmap_icons2x%2FMapRes%2Fshenghui_1.png'%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20new%20BMapGL.Size(10%2C%2010)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%7B%20offset%3A%20new%20BMapGL.Size(5%2C%205)%20%7D%0A%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D)%0A%20%20%20%20%20%20%2F%2F%20%E5%A4%9A%E8%BE%B9%E5%BD%A2%E7%BB%98%E5%88%B6%0A%20%20%20%20%20%20polygon.value.instance%20%3D%20new%20PolygonDraw(scene%2C%20%7B%0A%20%20%20%20%20%20%20%20isOpen%3A%20false%2C%0A%20%20%20%20%20%20%20%20labelOptions%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20borderRadius%3A%20'2px'%2C%0A%20%20%20%20%20%20%20%20%20%20background%3A%20'%23b5d3fb'%2C%0A%20%20%20%20%20%20%20%20%20%20border%3A%20'1px%20solid%20%23b5d3fb'%2C%0A%20%20%20%20%20%20%20%20%20%20color%3A%20'%23333'%2C%0A%20%20%20%20%20%20%20%20%20%20fontSize%3A%20'12px'%2C%0A%20%20%20%20%20%20%20%20%20%20letterSpacing%3A%20'0'%2C%0A%20%20%20%20%20%20%20%20%20%20padding%3A%20'5px'%0A%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20baseOpts%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20fillColor%3A%20'%23fff'%2C%0A%20%20%20%20%20%20%20%20%20%20strokeWeight%3A%205%2C%0A%20%20%20%20%20%20%20%20%20%20strokeOpacity%3A%201%2C%0A%20%20%20%20%20%20%20%20%20%20fillOpacity%3A%200.2%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D)%0A%20%20%20%20%20%20%2F%2F%20%E5%9C%86%E5%BD%A2%E7%BB%98%E5%88%B6%0A%20%20%20%20%20%20circle.value.instance%20%3D%20new%20CircleDraw(scene%2C%20%7B%0A%20%20%20%20%20%20%20%20isOpen%3A%20false%2C%0A%20%20%20%20%20%20%20%20labelOptions%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20borderRadius%3A%20'2px'%2C%0A%20%20%20%20%20%20%20%20%20%20background%3A%20'%23b5d3fb'%2C%0A%20%20%20%20%20%20%20%20%20%20border%3A%20'1px%20solid%20%23b5d3fb'%2C%0A%20%20%20%20%20%20%20%20%20%20color%3A%20'%23333'%2C%0A%20%20%20%20%20%20%20%20%20%20fontSize%3A%20'12px'%2C%0A%20%20%20%20%20%20%20%20%20%20letterSpacing%3A%20'0'%2C%0A%20%20%20%20%20%20%20%20%20%20padding%3A%20'5px'%0A%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20baseOpts%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20strokeColor%3A%20'%236d77f9'%2C%0A%20%20%20%20%20%20%20%20%20%20fillColor%3A%20'%23fff'%2C%0A%20%20%20%20%20%20%20%20%20%20strokeWeight%3A%205%2C%0A%20%20%20%20%20%20%20%20%20%20strokeOpacity%3A%201%2C%0A%20%20%20%20%20%20%20%20%20%20fillOpacity%3A%200.2%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D)%0A%20%20%20%20%20%20%2F%2F%20%E7%9F%A9%E5%BD%A2%E7%BB%98%E5%88%B6%0A%20%20%20%20%20%20rectangle.value.instance%20%3D%20new%20RectDraw(scene%2C%20%7B%0A%20%20%20%20%20%20%20%20isOpen%3A%20false%2C%0A%20%20%20%20%20%20%20%20isSeries%3A%20true%2C%0A%20%20%20%20%20%20%20%20labelOptions%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20borderRadius%3A%20'2px'%2C%0A%20%20%20%20%20%20%20%20%20%20background%3A%20'%23b5d3fb'%2C%0A%20%20%20%20%20%20%20%20%20%20border%3A%20'1px%20solid%20%23b5d3fb'%2C%0A%20%20%20%20%20%20%20%20%20%20color%3A%20'%23333'%2C%0A%20%20%20%20%20%20%20%20%20%20fontSize%3A%20'12px'%2C%0A%20%20%20%20%20%20%20%20%20%20letterSpacing%3A%20'0'%2C%0A%20%20%20%20%20%20%20%20%20%20padding%3A%20'5px'%0A%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20baseOpts%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20fillColor%3A%20'%23fff'%2C%0A%20%20%20%20%20%20%20%20%20%20strokeWeight%3A%205%2C%0A%20%20%20%20%20%20%20%20%20%20strokeOpacity%3A%201%2C%0A%20%20%20%20%20%20%20%20%20%20fillOpacity%3A%200.2%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D)%0A%20%20%20%20%7D)%0A%20%20%7D%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E7%BB%98%E5%88%B6%E7%82%B9%E3%80%81%E7%BA%BF%E3%80%81%E9%9D%A2%E3%80%81%E5%A4%9A%E8%BE%B9%E5%BD%A2%E3%80%81%E5%9C%86%E5%BD%A2%E7%AD%89%3C%2Fp%3E%0A"},{default:t(()=>[D]),_:1}),r,i,s(a,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!distance.isMeasuring%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Edistance.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E6%B5%8B%E9%87%8F%E8%B7%9D%E7%A6%BB%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-else%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Edistance.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%8F%96%E6%B6%88%E6%B5%8B%E9%87%8F%E8%B7%9D%E7%A6%BB%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!measure.isMeasuring%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Emeasure.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E6%B5%8B%E9%87%8F%E9%9D%A2%E7%A7%AF%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-else%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Emeasure.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%8F%96%E6%B6%88%E6%B5%8B%E9%87%8F%E9%9D%A2%E7%A7%AF%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lng%3A%20116.385243%2C%20lat%3A%2039.913063%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E13.5%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Eenable-scroll-wheel-zoom%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20distance%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Einstance%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enull%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisMeasuring%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Etoggle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20_distance%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20distance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%0A%20%20%20%20%20%20_distance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisMeasuring%20%3Cspan%20class%3D%22token%20operator%22%3E%3F%3C%2Fspan%3E%20_distance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eclose%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20_distance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eopen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20_distance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisMeasuring%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E!%3C%2Fspan%3E_distance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisMeasuring%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20measure%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Einstance%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enull%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisMeasuring%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Etoggle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20_measure%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20measure%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%0A%20%20%20%20%20%20_measure%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisMeasuring%20%3Cspan%20class%3D%22token%20operator%22%3E%3F%3C%2Fspan%3E%20_measure%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eclose%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20_measure%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eopen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20_measure%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisMeasuring%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E!%3C%2Fspan%3E_measure%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisMeasuring%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20map%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'bmap-draw'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Ethen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20DrawScene%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20DistanceMeasure%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20AreaMeasure%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20scene%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EDrawScene%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Emap%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E6%B5%8B%E9%87%8F%E8%B7%9D%E7%A6%BB%3C%2Fspan%3E%0A%20%20%20%20%20%20distance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EDistanceMeasure%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Escene%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20distance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Etoggle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20distance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EaddEventListener%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'measure-length-end'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3Ee%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20console%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Elog%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'measure-end'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20e%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E6%B5%8B%E9%87%8F%E9%9D%A2%E7%A7%AF%3C%2Fspan%3E%0A%20%20%20%20%20%20measure%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EAreaMeasure%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Escene%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20measure%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Etoggle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20measure%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EaddEventListener%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'measure-area-end'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3Ee%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20console%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Elog%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'measure-end'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20e%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"expand/bmap-draw/meterage","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-if%3D%22!distance.isMeasuring%22%20%40click%3D%22distance.toggle%22%3E%E6%B5%8B%E9%87%8F%E8%B7%9D%E7%A6%BB%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-else%20%40click%3D%22distance.toggle%22%3E%E5%8F%96%E6%B6%88%E6%B5%8B%E9%87%8F%E8%B7%9D%E7%A6%BB%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-if%3D%22!measure.isMeasuring%22%20%40click%3D%22measure.toggle%22%3E%E6%B5%8B%E9%87%8F%E9%9D%A2%E7%A7%AF%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-else%20%40click%3D%22measure.toggle%22%3E%E5%8F%96%E6%B6%88%E6%B5%8B%E9%87%8F%E9%9D%A2%E7%A7%AF%3C%2Fbutton%3E%0A%20%20%20%20%3CBMap%0A%20%20%20%20%20%20v-bind%3D%22%24attrs%22%0A%20%20%20%20%20%20%3Acenter%3D%22%7B%20lng%3A%20116.385243%2C%20lat%3A%2039.913063%20%7D%22%0A%20%20%20%20%20%20%3Azoom%3D%2213.5%22%0A%20%20%20%20%20%20enable-scroll-wheel-zoom%0A%20%20%20%20%20%20%40initd%3D%22handleInitd%22%0A%20%20%20%20%2F%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20let%20distance%20%3D%20ref(%7B%0A%20%20%20%20instance%3A%20null%2C%0A%20%20%20%20isMeasuring%3A%20true%2C%0A%20%20%20%20toggle()%20%7B%0A%20%20%20%20%20%20let%20_distance%20%3D%20distance.value%0A%20%20%20%20%20%20_distance.isMeasuring%20%3F%20_distance.instance.close()%20%3A%20_distance.instance.open()%0A%20%20%20%20%20%20_distance.isMeasuring%20%3D%20!_distance.isMeasuring%0A%20%20%20%20%7D%0A%20%20%7D)%0A%20%20let%20measure%20%3D%20ref(%7B%0A%20%20%20%20instance%3A%20null%2C%0A%20%20%20%20isMeasuring%3A%20true%2C%0A%20%20%20%20toggle()%20%7B%0A%20%20%20%20%20%20let%20_measure%20%3D%20measure.value%0A%20%20%20%20%20%20_measure.isMeasuring%20%3F%20_measure.instance.close()%20%3A%20_measure.instance.open()%0A%20%20%20%20%20%20_measure.isMeasuring%20%3D%20!_measure.isMeasuring%0A%20%20%20%20%7D%0A%20%20%7D)%0A%20%20function%20handleInitd(%7B%20map%20%7D)%20%7B%0A%20%20%20%20import('bmap-draw').then((%7B%20DrawScene%2C%20DistanceMeasure%2C%20AreaMeasure%20%7D)%20%3D%3E%20%7B%0A%20%20%20%20%20%20const%20scene%20%3D%20new%20DrawScene(map)%0A%20%20%20%20%20%20%2F%2F%20%E6%B5%8B%E9%87%8F%E8%B7%9D%E7%A6%BB%0A%20%20%20%20%20%20distance.value.instance%20%3D%20new%20DistanceMeasure(scene)%0A%20%20%20%20%20%20distance.value.toggle()%0A%20%20%20%20%20%20distance.value.instance.addEventListener('measure-length-end'%2C%20(e)%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20console.log('measure-end'%2C%20e)%0A%20%20%20%20%20%20%7D)%0A%20%20%20%20%20%20%2F%2F%20%E6%B5%8B%E9%87%8F%E9%9D%A2%E7%A7%AF%0A%20%20%20%20%20%20measure.value.instance%20%3D%20new%20AreaMeasure(scene)%0A%20%20%20%20%20%20measure.value.toggle()%0A%20%20%20%20%20%20measure.value.instance.addEventListener('measure-area-end'%2C%20(e)%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20console.log('measure-end'%2C%20e)%0A%20%20%20%20%20%20%7D)%0A%20%20%20%20%7D)%0A%20%20%7D%0A%3C%2Fscript%3E%0A",description:""},{default:t(()=>[k]),_:1})])}const w=p(l,[["render",F]]);export{f as __pageData,w as default}; diff --git a/assets/zh-CN_expand_bmap-draw.md.i3gnZ90D.lean.js b/assets/zh-CN_expand_bmap-draw.md.i3gnZ90D.lean.js new file mode 100644 index 00000000..00b425c1 --- /dev/null +++ b/assets/zh-CN_expand_bmap-draw.md.i3gnZ90D.lean.js @@ -0,0 +1 @@ +import{_ as p,c as e,I as s,w as t,al as o,j as n,a as E,D as C,o as c}from"./chunks/framework.n6hqIsqL.js";const f=JSON.parse('{"title":"bmap-draw 鼠标测量与绘制","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/expand/bmap-draw.md","filePath":"zh-CN/expand/bmap-draw.md","lastUpdated":1724785300000}'),l={name:"zh-CN/expand/bmap-draw.md"},u=o("",5),D=n("p",null,"expand/bmap-draw/draw",-1),r=n("h2",{id:"测量",tabindex:"-1"},[E("测量 "),n("a",{class:"header-anchor",href:"#测量","aria-label":'Permalink to "测量"'},"​")],-1),i=n("p",null,"测量距离,面积,折线长度等",-1),k=n("p",null,"expand/bmap-draw/meterage",-1);function F(A,g,B,y,d,m){const a=C("Demo");return c(),e("div",null,[u,s(a,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!marker.isDrawing%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Emarker.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BB%98%E5%88%B6%E7%82%B9%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-else%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Emarker.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%A6%81%E7%94%A8%E7%BB%98%E5%88%B6%E7%82%B9%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!polyline.isDrawing%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epolyline.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BB%98%E5%88%B6%E7%BA%BF%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-else%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epolyline.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%A6%81%E7%94%A8%E7%BB%98%E5%88%B6%E7%BA%BF%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!circle.isDrawing%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ecircle.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BB%98%E5%88%B6%E5%9C%86%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-else%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ecircle.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%A6%81%E7%94%A8%E7%BB%98%E5%88%B6%E5%9C%86%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!polygon.isDrawing%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epolygon.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BB%98%E5%88%B6%E5%A4%9A%E8%BE%B9%E5%BD%A2%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-else%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epolygon.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%A6%81%E7%94%A8%E7%BB%98%E5%88%B6%E5%A4%9A%E8%BE%B9%E5%BD%A2%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!rectangle.isDrawing%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Erectangle.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BB%98%E5%88%B6%E7%9F%A9%E5%BD%A2%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-else%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Erectangle.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%A6%81%E7%94%A8%E7%BB%98%E5%88%B6%E7%9F%A9%E5%BD%A2%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EclearFn%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E6%B8%85%E7%A9%BA%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lng%3A%20116.385243%2C%20lat%3A%2039.913063%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E16%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Eenable-scroll-wheel-zoom%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EmapStyleId%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E980161f3645989feac25a0da15da4178%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20useDefaultMarkerIcons%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20marker%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Einstance%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enull%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisDrawing%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Etoggle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20_marker%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20marker%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%0A%20%20%20%20%20%20_marker%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%20%3Cspan%20class%3D%22token%20operator%22%3E%3F%3C%2Fspan%3E%20_marker%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EcloseAll%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20_marker%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eopen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20_marker%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E!%3C%2Fspan%3E_marker%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20circle%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Einstance%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enull%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisDrawing%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Etoggle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20_circle%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20circle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%0A%20%20%20%20%20%20_circle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%20%3Cspan%20class%3D%22token%20operator%22%3E%3F%3C%2Fspan%3E%20_circle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EcloseAll%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20_circle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eopen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20_circle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E!%3C%2Fspan%3E_circle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20polyline%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Einstance%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enull%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisDrawing%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Etoggle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20_polyline%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20polyline%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%0A%20%20%20%20%20%20_polyline%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%20%3Cspan%20class%3D%22token%20operator%22%3E%3F%3C%2Fspan%3E%20_polyline%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EcloseAll%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20_polyline%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eopen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20_polyline%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E!%3C%2Fspan%3E_polyline%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20polygon%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Einstance%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enull%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisDrawing%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Etoggle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20_polygon%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20polygon%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%0A%20%20%20%20%20%20_polygon%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%20%3Cspan%20class%3D%22token%20operator%22%3E%3F%3C%2Fspan%3E%20_polygon%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EcloseAll%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20_polygon%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eopen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20_polygon%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E!%3C%2Fspan%3E_polygon%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20rectangle%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Einstance%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enull%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisDrawing%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Etoggle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20_rectangle%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20rectangle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%0A%20%20%20%20%20%20_rectangle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%20%3Cspan%20class%3D%22token%20operator%22%3E%3F%3C%2Fspan%3E%20_rectangle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EcloseAll%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20_rectangle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eopen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20_rectangle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E!%3C%2Fspan%3E_rectangle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisDrawing%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20clearFn%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20map%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20BMapGL%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'bmap-draw'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Ethen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20DrawScene%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20MarkerDraw%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20PolylineDraw%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20CircleDraw%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20PolygonDraw%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20RectDraw%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20scene%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EDrawScene%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Emap%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20clearFn%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function-variable%20function%22%3Evalue%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20scene%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EclearData%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E7%82%B9%E7%BB%98%E5%88%B6%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20defaultIcons%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EuseDefaultMarkerIcons%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20marker%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EMarkerDraw%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Escene%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisOpen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisSeries%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EenableDragging%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EbaseOpts%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eicon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20defaultIcons%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'red1'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E6%8A%98%E7%BA%BF%E7%BB%98%E5%88%B6%3C%2Fspan%3E%0A%20%20%20%20%20%20polyline%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EPolylineDraw%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Escene%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisOpen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EenableSnap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E5%BC%80%E5%90%AF%E5%90%B8%E9%99%84%E7%BB%98%E5%88%B6%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EmatchOverlay%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E8%87%AA%E5%AE%9A%E4%B9%89%E5%90%B8%E9%99%84%E7%82%B9%E6%A0%B7%E5%BC%8F%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'Marker'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eicon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EIcon%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'http%3A%2F%2Fmaponline0.bdimg.com%2Fsty%2Fmap_icons2x%2FMapRes%2Fshenghui_1.png'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3ESize%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E10%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E10%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eoffset%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EBMapGL%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3ESize%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E5%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E5%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E5%A4%9A%E8%BE%B9%E5%BD%A2%E7%BB%98%E5%88%B6%3C%2Fspan%3E%0A%20%20%20%20%20%20polygon%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EPolygonDraw%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Escene%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisOpen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3ElabelOptions%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EborderRadius%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'2px'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ebackground%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%23b5d3fb'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eborder%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'1px%20solid%20%23b5d3fb'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecolor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%23333'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EfontSize%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'12px'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EletterSpacing%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'0'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epadding%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'5px'%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EbaseOpts%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EfillColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%23fff'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EstrokeWeight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E5%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EstrokeOpacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EfillOpacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.2%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E5%9C%86%E5%BD%A2%E7%BB%98%E5%88%B6%3C%2Fspan%3E%0A%20%20%20%20%20%20circle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3ECircleDraw%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Escene%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisOpen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3ElabelOptions%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EborderRadius%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'2px'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ebackground%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%23b5d3fb'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eborder%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'1px%20solid%20%23b5d3fb'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecolor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%23333'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EfontSize%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'12px'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EletterSpacing%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'0'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epadding%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'5px'%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EbaseOpts%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EstrokeColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%236d77f9'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EfillColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%23fff'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EstrokeWeight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E5%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EstrokeOpacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EfillOpacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.2%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E7%9F%A9%E5%BD%A2%E7%BB%98%E5%88%B6%3C%2Fspan%3E%0A%20%20%20%20%20%20rectangle%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3ERectDraw%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Escene%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisOpen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisSeries%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3ElabelOptions%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EborderRadius%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'2px'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ebackground%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%23b5d3fb'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eborder%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'1px%20solid%20%23b5d3fb'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecolor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%23333'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EfontSize%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'12px'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EletterSpacing%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'0'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epadding%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'5px'%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EbaseOpts%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EfillColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%23fff'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EstrokeWeight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E5%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EstrokeOpacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EfillOpacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.2%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"expand/bmap-draw/draw","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-if%3D%22!marker.isDrawing%22%20%40click%3D%22marker.toggle%22%3E%E7%BB%98%E5%88%B6%E7%82%B9%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-else%20%40click%3D%22marker.toggle%22%3E%E7%A6%81%E7%94%A8%E7%BB%98%E5%88%B6%E7%82%B9%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-if%3D%22!polyline.isDrawing%22%20%40click%3D%22polyline.toggle%22%3E%E7%BB%98%E5%88%B6%E7%BA%BF%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-else%20%40click%3D%22polyline.toggle%22%3E%E7%A6%81%E7%94%A8%E7%BB%98%E5%88%B6%E7%BA%BF%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-if%3D%22!circle.isDrawing%22%20%40click%3D%22circle.toggle%22%3E%E7%BB%98%E5%88%B6%E5%9C%86%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-else%20%40click%3D%22circle.toggle%22%3E%E7%A6%81%E7%94%A8%E7%BB%98%E5%88%B6%E5%9C%86%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-if%3D%22!polygon.isDrawing%22%20%40click%3D%22polygon.toggle%22%3E%E7%BB%98%E5%88%B6%E5%A4%9A%E8%BE%B9%E5%BD%A2%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-else%20%40click%3D%22polygon.toggle%22%3E%E7%A6%81%E7%94%A8%E7%BB%98%E5%88%B6%E5%A4%9A%E8%BE%B9%E5%BD%A2%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-if%3D%22!rectangle.isDrawing%22%20%40click%3D%22rectangle.toggle%22%3E%E7%BB%98%E5%88%B6%E7%9F%A9%E5%BD%A2%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-else%20%40click%3D%22rectangle.toggle%22%3E%E7%A6%81%E7%94%A8%E7%BB%98%E5%88%B6%E7%9F%A9%E5%BD%A2%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20%40click%3D%22clearFn%22%3E%E6%B8%85%E7%A9%BA%3C%2Fbutton%3E%0A%20%20%20%20%3CBMap%0A%20%20%20%20%20%20v-bind%3D%22%24attrs%22%0A%20%20%20%20%20%20%3Acenter%3D%22%7B%20lng%3A%20116.385243%2C%20lat%3A%2039.913063%20%7D%22%0A%20%20%20%20%20%20%3Azoom%3D%2216%22%0A%20%20%20%20%20%20enable-scroll-wheel-zoom%0A%20%20%20%20%20%20%40initd%3D%22handleInitd%22%0A%20%20%20%20%20%20mapStyleId%3D%22980161f3645989feac25a0da15da4178%22%0A%20%20%20%20%2F%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20import%20%7B%20useDefaultMarkerIcons%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20let%20marker%20%3D%20ref(%7B%0A%20%20%20%20instance%3A%20null%2C%0A%20%20%20%20isDrawing%3A%20false%2C%0A%20%20%20%20toggle()%20%7B%0A%20%20%20%20%20%20let%20_marker%20%3D%20marker.value%0A%20%20%20%20%20%20_marker.isDrawing%20%3F%20_marker.instance.closeAll()%20%3A%20_marker.instance.open()%0A%20%20%20%20%20%20_marker.isDrawing%20%3D%20!_marker.isDrawing%0A%20%20%20%20%7D%0A%20%20%7D)%0A%20%20let%20circle%20%3D%20ref(%7B%0A%20%20%20%20instance%3A%20null%2C%0A%20%20%20%20isDrawing%3A%20false%2C%0A%20%20%20%20toggle()%20%7B%0A%20%20%20%20%20%20let%20_circle%20%3D%20circle.value%0A%20%20%20%20%20%20_circle.isDrawing%20%3F%20_circle.instance.closeAll()%20%3A%20_circle.instance.open()%0A%20%20%20%20%20%20_circle.isDrawing%20%3D%20!_circle.isDrawing%0A%20%20%20%20%7D%0A%20%20%7D)%0A%20%20let%20polyline%20%3D%20ref(%7B%0A%20%20%20%20instance%3A%20null%2C%0A%20%20%20%20isDrawing%3A%20false%2C%0A%20%20%20%20toggle()%20%7B%0A%20%20%20%20%20%20let%20_polyline%20%3D%20polyline.value%0A%20%20%20%20%20%20_polyline.isDrawing%20%3F%20_polyline.instance.closeAll()%20%3A%20_polyline.instance.open()%0A%20%20%20%20%20%20_polyline.isDrawing%20%3D%20!_polyline.isDrawing%0A%20%20%20%20%7D%0A%20%20%7D)%0A%20%20let%20polygon%20%3D%20ref(%7B%0A%20%20%20%20instance%3A%20null%2C%0A%20%20%20%20isDrawing%3A%20false%2C%0A%20%20%20%20toggle()%20%7B%0A%20%20%20%20%20%20let%20_polygon%20%3D%20polygon.value%0A%20%20%20%20%20%20_polygon.isDrawing%20%3F%20_polygon.instance.closeAll()%20%3A%20_polygon.instance.open()%0A%20%20%20%20%20%20_polygon.isDrawing%20%3D%20!_polygon.isDrawing%0A%20%20%20%20%7D%0A%20%20%7D)%0A%20%20let%20rectangle%20%3D%20ref(%7B%0A%20%20%20%20instance%3A%20null%2C%0A%20%20%20%20isDrawing%3A%20false%2C%0A%20%20%20%20toggle()%20%7B%0A%20%20%20%20%20%20let%20_rectangle%20%3D%20rectangle.value%0A%20%20%20%20%20%20_rectangle.isDrawing%20%3F%20_rectangle.instance.closeAll()%20%3A%20_rectangle.instance.open()%0A%20%20%20%20%20%20_rectangle.isDrawing%20%3D%20!_rectangle.isDrawing%0A%20%20%20%20%7D%0A%20%20%7D)%0A%20%20let%20clearFn%20%3D%20ref()%0A%20%20function%20handleInitd(%7B%20map%2C%20BMapGL%20%7D)%20%7B%0A%20%20%20%20import('bmap-draw').then((%7B%20DrawScene%2C%20MarkerDraw%2C%20PolylineDraw%2C%20CircleDraw%2C%20PolygonDraw%2C%20RectDraw%20%7D)%20%3D%3E%20%7B%0A%20%20%20%20%20%20const%20scene%20%3D%20new%20DrawScene(map)%0A%20%20%20%20%20%20clearFn.value%20%3D%20()%20%3D%3E%20scene.clearData()%0A%20%20%20%20%20%20%2F%2F%20%E7%82%B9%E7%BB%98%E5%88%B6%0A%20%20%20%20%20%20const%20defaultIcons%20%3D%20useDefaultMarkerIcons()%0A%20%20%20%20%20%20marker.value.instance%20%3D%20new%20MarkerDraw(scene%2C%20%7B%0A%20%20%20%20%20%20%20%20isOpen%3A%20false%2C%0A%20%20%20%20%20%20%20%20isSeries%3A%20true%2C%0A%20%20%20%20%20%20%20%20enableDragging%3A%20true%2C%0A%20%20%20%20%20%20%20%20baseOpts%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20icon%3A%20defaultIcons%5B'red1'%5D%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D)%0A%20%20%20%20%20%20%2F%2F%20%E6%8A%98%E7%BA%BF%E7%BB%98%E5%88%B6%0A%20%20%20%20%20%20polyline.value.instance%20%3D%20new%20PolylineDraw(scene%2C%20%7B%0A%20%20%20%20%20%20%20%20isOpen%3A%20false%2C%0A%20%20%20%20%20%20%20%20enableSnap%3A%20true%2C%20%2F%2F%20%E5%BC%80%E5%90%AF%E5%90%B8%E9%99%84%E7%BB%98%E5%88%B6%0A%20%20%20%20%20%20%20%20matchOverlay%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20%2F%2F%20%E8%87%AA%E5%AE%9A%E4%B9%89%E5%90%B8%E9%99%84%E7%82%B9%E6%A0%B7%E5%BC%8F%0A%20%20%20%20%20%20%20%20%20%20type%3A%20'Marker'%2C%0A%20%20%20%20%20%20%20%20%20%20icon%3A%20new%20BMapGL.Icon(%0A%20%20%20%20%20%20%20%20%20%20%20%20'http%3A%2F%2Fmaponline0.bdimg.com%2Fsty%2Fmap_icons2x%2FMapRes%2Fshenghui_1.png'%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20new%20BMapGL.Size(10%2C%2010)%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%7B%20offset%3A%20new%20BMapGL.Size(5%2C%205)%20%7D%0A%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D)%0A%20%20%20%20%20%20%2F%2F%20%E5%A4%9A%E8%BE%B9%E5%BD%A2%E7%BB%98%E5%88%B6%0A%20%20%20%20%20%20polygon.value.instance%20%3D%20new%20PolygonDraw(scene%2C%20%7B%0A%20%20%20%20%20%20%20%20isOpen%3A%20false%2C%0A%20%20%20%20%20%20%20%20labelOptions%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20borderRadius%3A%20'2px'%2C%0A%20%20%20%20%20%20%20%20%20%20background%3A%20'%23b5d3fb'%2C%0A%20%20%20%20%20%20%20%20%20%20border%3A%20'1px%20solid%20%23b5d3fb'%2C%0A%20%20%20%20%20%20%20%20%20%20color%3A%20'%23333'%2C%0A%20%20%20%20%20%20%20%20%20%20fontSize%3A%20'12px'%2C%0A%20%20%20%20%20%20%20%20%20%20letterSpacing%3A%20'0'%2C%0A%20%20%20%20%20%20%20%20%20%20padding%3A%20'5px'%0A%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20baseOpts%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20fillColor%3A%20'%23fff'%2C%0A%20%20%20%20%20%20%20%20%20%20strokeWeight%3A%205%2C%0A%20%20%20%20%20%20%20%20%20%20strokeOpacity%3A%201%2C%0A%20%20%20%20%20%20%20%20%20%20fillOpacity%3A%200.2%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D)%0A%20%20%20%20%20%20%2F%2F%20%E5%9C%86%E5%BD%A2%E7%BB%98%E5%88%B6%0A%20%20%20%20%20%20circle.value.instance%20%3D%20new%20CircleDraw(scene%2C%20%7B%0A%20%20%20%20%20%20%20%20isOpen%3A%20false%2C%0A%20%20%20%20%20%20%20%20labelOptions%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20borderRadius%3A%20'2px'%2C%0A%20%20%20%20%20%20%20%20%20%20background%3A%20'%23b5d3fb'%2C%0A%20%20%20%20%20%20%20%20%20%20border%3A%20'1px%20solid%20%23b5d3fb'%2C%0A%20%20%20%20%20%20%20%20%20%20color%3A%20'%23333'%2C%0A%20%20%20%20%20%20%20%20%20%20fontSize%3A%20'12px'%2C%0A%20%20%20%20%20%20%20%20%20%20letterSpacing%3A%20'0'%2C%0A%20%20%20%20%20%20%20%20%20%20padding%3A%20'5px'%0A%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20baseOpts%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20strokeColor%3A%20'%236d77f9'%2C%0A%20%20%20%20%20%20%20%20%20%20fillColor%3A%20'%23fff'%2C%0A%20%20%20%20%20%20%20%20%20%20strokeWeight%3A%205%2C%0A%20%20%20%20%20%20%20%20%20%20strokeOpacity%3A%201%2C%0A%20%20%20%20%20%20%20%20%20%20fillOpacity%3A%200.2%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D)%0A%20%20%20%20%20%20%2F%2F%20%E7%9F%A9%E5%BD%A2%E7%BB%98%E5%88%B6%0A%20%20%20%20%20%20rectangle.value.instance%20%3D%20new%20RectDraw(scene%2C%20%7B%0A%20%20%20%20%20%20%20%20isOpen%3A%20false%2C%0A%20%20%20%20%20%20%20%20isSeries%3A%20true%2C%0A%20%20%20%20%20%20%20%20labelOptions%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20borderRadius%3A%20'2px'%2C%0A%20%20%20%20%20%20%20%20%20%20background%3A%20'%23b5d3fb'%2C%0A%20%20%20%20%20%20%20%20%20%20border%3A%20'1px%20solid%20%23b5d3fb'%2C%0A%20%20%20%20%20%20%20%20%20%20color%3A%20'%23333'%2C%0A%20%20%20%20%20%20%20%20%20%20fontSize%3A%20'12px'%2C%0A%20%20%20%20%20%20%20%20%20%20letterSpacing%3A%20'0'%2C%0A%20%20%20%20%20%20%20%20%20%20padding%3A%20'5px'%0A%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20baseOpts%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20fillColor%3A%20'%23fff'%2C%0A%20%20%20%20%20%20%20%20%20%20strokeWeight%3A%205%2C%0A%20%20%20%20%20%20%20%20%20%20strokeOpacity%3A%201%2C%0A%20%20%20%20%20%20%20%20%20%20fillOpacity%3A%200.2%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D)%0A%20%20%20%20%7D)%0A%20%20%7D%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E7%BB%98%E5%88%B6%E7%82%B9%E3%80%81%E7%BA%BF%E3%80%81%E9%9D%A2%E3%80%81%E5%A4%9A%E8%BE%B9%E5%BD%A2%E3%80%81%E5%9C%86%E5%BD%A2%E7%AD%89%3C%2Fp%3E%0A"},{default:t(()=>[D]),_:1}),r,i,s(a,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!distance.isMeasuring%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Edistance.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E6%B5%8B%E9%87%8F%E8%B7%9D%E7%A6%BB%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-else%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Edistance.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%8F%96%E6%B6%88%E6%B5%8B%E9%87%8F%E8%B7%9D%E7%A6%BB%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!measure.isMeasuring%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Emeasure.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E6%B5%8B%E9%87%8F%E9%9D%A2%E7%A7%AF%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-else%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Emeasure.toggle%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%8F%96%E6%B6%88%E6%B5%8B%E9%87%8F%E9%9D%A2%E7%A7%AF%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lng%3A%20116.385243%2C%20lat%3A%2039.913063%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E13.5%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Eenable-scroll-wheel-zoom%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20distance%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Einstance%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enull%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisMeasuring%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Etoggle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20_distance%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20distance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%0A%20%20%20%20%20%20_distance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisMeasuring%20%3Cspan%20class%3D%22token%20operator%22%3E%3F%3C%2Fspan%3E%20_distance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eclose%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20_distance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eopen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20_distance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisMeasuring%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E!%3C%2Fspan%3E_distance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisMeasuring%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20measure%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Einstance%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enull%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EisMeasuring%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Etoggle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20_measure%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20measure%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%0A%20%20%20%20%20%20_measure%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisMeasuring%20%3Cspan%20class%3D%22token%20operator%22%3E%3F%3C%2Fspan%3E%20_measure%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eclose%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20_measure%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eopen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20_measure%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisMeasuring%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E!%3C%2Fspan%3E_measure%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EisMeasuring%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20map%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'bmap-draw'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Ethen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20DrawScene%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20DistanceMeasure%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20AreaMeasure%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20scene%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EDrawScene%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Emap%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E6%B5%8B%E9%87%8F%E8%B7%9D%E7%A6%BB%3C%2Fspan%3E%0A%20%20%20%20%20%20distance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EDistanceMeasure%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Escene%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20distance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Etoggle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20distance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EaddEventListener%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'measure-length-end'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3Ee%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20console%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Elog%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'measure-end'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20e%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E6%B5%8B%E9%87%8F%E9%9D%A2%E7%A7%AF%3C%2Fspan%3E%0A%20%20%20%20%20%20measure%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EAreaMeasure%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Escene%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20measure%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Etoggle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20measure%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einstance%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EaddEventListener%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'measure-area-end'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3Ee%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20console%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Elog%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'measure-end'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20e%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"expand/bmap-draw/meterage","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-if%3D%22!distance.isMeasuring%22%20%40click%3D%22distance.toggle%22%3E%E6%B5%8B%E9%87%8F%E8%B7%9D%E7%A6%BB%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-else%20%40click%3D%22distance.toggle%22%3E%E5%8F%96%E6%B6%88%E6%B5%8B%E9%87%8F%E8%B7%9D%E7%A6%BB%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-if%3D%22!measure.isMeasuring%22%20%40click%3D%22measure.toggle%22%3E%E6%B5%8B%E9%87%8F%E9%9D%A2%E7%A7%AF%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%22%20type%3D%22button%22%20v-else%20%40click%3D%22measure.toggle%22%3E%E5%8F%96%E6%B6%88%E6%B5%8B%E9%87%8F%E9%9D%A2%E7%A7%AF%3C%2Fbutton%3E%0A%20%20%20%20%3CBMap%0A%20%20%20%20%20%20v-bind%3D%22%24attrs%22%0A%20%20%20%20%20%20%3Acenter%3D%22%7B%20lng%3A%20116.385243%2C%20lat%3A%2039.913063%20%7D%22%0A%20%20%20%20%20%20%3Azoom%3D%2213.5%22%0A%20%20%20%20%20%20enable-scroll-wheel-zoom%0A%20%20%20%20%20%20%40initd%3D%22handleInitd%22%0A%20%20%20%20%2F%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20let%20distance%20%3D%20ref(%7B%0A%20%20%20%20instance%3A%20null%2C%0A%20%20%20%20isMeasuring%3A%20true%2C%0A%20%20%20%20toggle()%20%7B%0A%20%20%20%20%20%20let%20_distance%20%3D%20distance.value%0A%20%20%20%20%20%20_distance.isMeasuring%20%3F%20_distance.instance.close()%20%3A%20_distance.instance.open()%0A%20%20%20%20%20%20_distance.isMeasuring%20%3D%20!_distance.isMeasuring%0A%20%20%20%20%7D%0A%20%20%7D)%0A%20%20let%20measure%20%3D%20ref(%7B%0A%20%20%20%20instance%3A%20null%2C%0A%20%20%20%20isMeasuring%3A%20true%2C%0A%20%20%20%20toggle()%20%7B%0A%20%20%20%20%20%20let%20_measure%20%3D%20measure.value%0A%20%20%20%20%20%20_measure.isMeasuring%20%3F%20_measure.instance.close()%20%3A%20_measure.instance.open()%0A%20%20%20%20%20%20_measure.isMeasuring%20%3D%20!_measure.isMeasuring%0A%20%20%20%20%7D%0A%20%20%7D)%0A%20%20function%20handleInitd(%7B%20map%20%7D)%20%7B%0A%20%20%20%20import('bmap-draw').then((%7B%20DrawScene%2C%20DistanceMeasure%2C%20AreaMeasure%20%7D)%20%3D%3E%20%7B%0A%20%20%20%20%20%20const%20scene%20%3D%20new%20DrawScene(map)%0A%20%20%20%20%20%20%2F%2F%20%E6%B5%8B%E9%87%8F%E8%B7%9D%E7%A6%BB%0A%20%20%20%20%20%20distance.value.instance%20%3D%20new%20DistanceMeasure(scene)%0A%20%20%20%20%20%20distance.value.toggle()%0A%20%20%20%20%20%20distance.value.instance.addEventListener('measure-length-end'%2C%20(e)%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20console.log('measure-end'%2C%20e)%0A%20%20%20%20%20%20%7D)%0A%20%20%20%20%20%20%2F%2F%20%E6%B5%8B%E9%87%8F%E9%9D%A2%E7%A7%AF%0A%20%20%20%20%20%20measure.value.instance%20%3D%20new%20AreaMeasure(scene)%0A%20%20%20%20%20%20measure.value.toggle()%0A%20%20%20%20%20%20measure.value.instance.addEventListener('measure-area-end'%2C%20(e)%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20console.log('measure-end'%2C%20e)%0A%20%20%20%20%20%20%7D)%0A%20%20%20%20%7D)%0A%20%20%7D%0A%3C%2Fscript%3E%0A",description:""},{default:t(()=>[k]),_:1})])}const w=p(l,[["render",F]]);export{f as __pageData,w as default}; diff --git a/assets/zh-CN_expand_mapv.md.CkKUmVIe.js b/assets/zh-CN_expand_mapv.md.CkKUmVIe.js new file mode 100644 index 00000000..df17052b --- /dev/null +++ b/assets/zh-CN_expand_mapv.md.CkKUmVIe.js @@ -0,0 +1,28 @@ +import{_ as E,c as e,I as a,w as t,al as o,j as s,a as p,D as C,o as l}from"./chunks/framework.n6hqIsqL.js";const w=JSON.parse('{"title":"mapv 可视化","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/expand/mapv.md","filePath":"zh-CN/expand/mapv.md","lastUpdated":1724785300000}'),i={name:"zh-CN/expand/mapv.md"},c=o(`

mapv 可视化

MapVGL,是一款基于 WebGL 的地理信息可视化库,可以用来展示大量基于 3D 的地理信息点线面数据。设计初衷主要是为了解决大数据量的三维地理数据展示问题及一些炫酷的三维效果。

本章节将演示一下通过插件的形式和 npm 形式加载 mapv 相关资源,并展示几个示例。

结合方式:

mapv 相关资源结合有如下两种方式:

1. 通过组件库提供的插件形式(内部以 cdn 方式加载)

全局配置插件:

ts
// ...
+app.use(baiduMap, {
+  plugins: ['Mapvgl', 'Mapv', 'MapvThree']
+})

或者通过组件配置插件:

vue
<template>
+  <BMap :plugins="['Mapvgl', 'Mapv', 'MapvThree']"></BMap>
+</template>

因为资源是通过异步方式加载,所以需要监听 pluginReady 事件:

vue
<template>
+  <BMap :plugins="['Mapvgl', 'Mapv', 'MapvThree']" @pluginReady="handlePluginReady"></BMap>
+</template>
+<script lang="ts" setup>
+  function handlePluginReady() {
+    // ...
+  }
+</script>

2. 通过 npm

安装

shell
# mapv 基础库
+npm add mapv
+# or
+pnpm add mapv
+# ----------------------
+# mapvgl GL扩展库
+npm add mapvgl
+# or
+pnpm add mapvgl
+# ----------------------
+# mapv-three three.js 相关库
+npm add mapv-three
+# or
+pnpm add mapv-three

使用

ts
import * as mapv from 'mapv'
+import * as mapvgl from 'mapvgl'
+import * as mapvThree from 'mapv-three'

注意

mapv、mapvgl、mapvThree 均使用 umd 格式打包,而非 esm。所以通过 npm 方式使用代码不利于构建工具 Tree-shaking,导致打包大小臃肿。我们更推荐以插件形式使用

示例

以下示例均来自于 mapv 官方示例。更多示例见及文档请参考: https://mapv.baidu.com/gl/docs/index.html

PointLayer 基础点层图

https://mapv.baidu.com/gl/docs/PointLayer.html

`,22),k=s("p",null,"expand/mapv/pointLayer",-1),u=s("h3",{id:"heatgridlayer-柱状热力图",tabindex:"-1"},[p("HeatGridLayer 柱状热力图 "),s("a",{class:"header-anchor",href:"#heatgridlayer-柱状热力图","aria-label":'Permalink to "HeatGridLayer 柱状热力图"'},"​")],-1),D=s("blockquote",null,[s("p",null,[s("a",{href:"https://mapv.baidu.com/gl/docs/HeatGridLayer.html",target:"_blank",rel:"noreferrer"},"https://mapv.baidu.com/gl/docs/HeatGridLayer.html")])],-1),r=s("p",null,"expand/mapv/heatGridLayer",-1),F=s("h3",{id:"渲染-3d-模型",tabindex:"-1"},[p("渲染 3d 模型 "),s("a",{class:"header-anchor",href:"#渲染-3d-模型","aria-label":'Permalink to "渲染 3d 模型"'},"​")],-1),A=s("blockquote",null,[s("p",null,[s("a",{href:"https://lbsyun.baidu.com/solutions/mapvthreedoc",target:"_blank",rel:"noreferrer"},"https://lbsyun.baidu.com/solutions/mapvthreedoc")])],-1),h=s("p",null,"expand/mapv/3dModel",-1);function d(B,g,m,y,b,v){const n=C("Demo");return l(),e("div",null,[c,a(n,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E5%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.403901%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aplugins%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%5B'Mapvgl'%2C%20'Mapv'%5D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AdisplayOptions%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%0A%20%20%20%20%20%20indoor%3A%20false%2C%0A%20%20%20%20%20%20poi%3A%20true%2C%0A%20%20%20%20%20%20skyColors%3A%20%5B'rgba(5%2C%205%2C%2030%2C%200.01)'%2C%20'rgba(5%2C%205%2C%2030%2C%201.0)'%5D%0A%20%20%20%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EmapStyleId%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E91c53039a0b7f75e3dd8ddcdd932243b%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40pluginReady%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandlePluginReady%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandlePluginReady%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3Emap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20data%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20citys%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%8C%97%E4%BA%AC'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%A4%A9%E6%B4%A5'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E4%B8%8A%E6%B5%B7'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E9%87%8D%E5%BA%86'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E7%9F%B3%E5%AE%B6%E5%BA%84'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%A4%AA%E5%8E%9F'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%91%BC%E5%92%8C%E6%B5%A9%E7%89%B9'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%93%88%E5%B0%94%E6%BB%A8'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E9%95%BF%E6%98%A5'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E6%B2%88%E9%98%B3'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E6%B5%8E%E5%8D%97'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%8D%97%E4%BA%AC'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%90%88%E8%82%A5'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E6%9D%AD%E5%B7%9E'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%8D%97%E6%98%8C'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E7%A6%8F%E5%B7%9E'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E9%83%91%E5%B7%9E'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E6%AD%A6%E6%B1%89'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E9%95%BF%E6%B2%99'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%B9%BF%E5%B7%9E'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%8D%97%E5%AE%81'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E8%A5%BF%E5%AE%89'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E9%93%B6%E5%B7%9D'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%85%B0%E5%B7%9E'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E8%A5%BF%E5%AE%81'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E4%B9%8C%E9%B2%81%E6%9C%A8%E9%BD%90'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E6%88%90%E9%83%BD'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E8%B4%B5%E9%98%B3'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E6%98%86%E6%98%8E'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E6%8B%89%E8%90%A8'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E6%B5%B7%E5%8F%A3'%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20randomCount%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E300%3C%2Fspan%3E%0A%0A%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E6%9E%84%E9%80%A0%E6%95%B0%E6%8D%AE%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Ewhile%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3ErandomCount%3Cspan%20class%3D%22token%20operator%22%3E--%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20cityCenter%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20mapv%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EutilCityCenter%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EgetCenterByCityName%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Ecitys%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3EMath%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Efloor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3EMath%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Erandom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E*%3C%2Fspan%3E%20citys%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Elength%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20data%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Epush%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Egeometry%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'Point'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecoordinates%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3EcityCenter%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Elng%20%3Cspan%20class%3D%22token%20operator%22%3E-%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E2%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%2B%3C%2Fspan%3E%20Math%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Erandom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E*%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E4%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20cityCenter%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Elat%20%3Cspan%20class%3D%22token%20operator%22%3E-%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E2%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%2B%3C%2Fspan%3E%20Math%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Erandom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E*%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E4%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eproperties%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecount%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20Math%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Erandom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E*%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E100%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20view%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3Emapvgl%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EView%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Emap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20map%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20pointLayer%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3Emapvgl%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPointLayer%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eblend%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'er'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Esize%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E15%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecolor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'rgba(102%2C%200%2C%20204%2C%200.6)'%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%0A%20%20%20%20view%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EaddLayer%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3EpointLayer%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20pointLayer%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EsetData%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Edata%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"expand/mapv/pointLayer","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%0A%20%20%20%20v-bind%3D%22%24attrs%22%0A%20%20%20%20%3Azoom%3D%225%22%0A%20%20%20%20%3Acenter%3D%22%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.403901%20%7D%22%0A%20%20%20%20%3Aplugins%3D%22%5B'Mapvgl'%2C%20'Mapv'%5D%22%0A%20%20%20%20%3AdisplayOptions%3D%22%7B%0A%20%20%20%20%20%20indoor%3A%20false%2C%0A%20%20%20%20%20%20poi%3A%20true%2C%0A%20%20%20%20%20%20skyColors%3A%20%5B'rgba(5%2C%205%2C%2030%2C%200.01)'%2C%20'rgba(5%2C%205%2C%2030%2C%201.0)'%5D%0A%20%20%20%20%7D%22%0A%20%20%20%20mapStyleId%3D%2291c53039a0b7f75e3dd8ddcdd932243b%22%0A%20%20%20%20enableScrollWheelZoom%0A%20%20%20%20%40pluginReady%3D%22handlePluginReady%22%0A%20%20%2F%3E%0A%3C%2Ftemplate%3E%0A%3Cscript%20setup%3E%0A%20%20function%20handlePluginReady(map)%20%7B%0A%20%20%20%20let%20data%20%3D%20%5B%5D%0A%0A%20%20%20%20let%20citys%20%3D%20%5B%0A%20%20%20%20%20%20'%E5%8C%97%E4%BA%AC'%2C%0A%20%20%20%20%20%20'%E5%A4%A9%E6%B4%A5'%2C%0A%20%20%20%20%20%20'%E4%B8%8A%E6%B5%B7'%2C%0A%20%20%20%20%20%20'%E9%87%8D%E5%BA%86'%2C%0A%20%20%20%20%20%20'%E7%9F%B3%E5%AE%B6%E5%BA%84'%2C%0A%20%20%20%20%20%20'%E5%A4%AA%E5%8E%9F'%2C%0A%20%20%20%20%20%20'%E5%91%BC%E5%92%8C%E6%B5%A9%E7%89%B9'%2C%0A%20%20%20%20%20%20'%E5%93%88%E5%B0%94%E6%BB%A8'%2C%0A%20%20%20%20%20%20'%E9%95%BF%E6%98%A5'%2C%0A%20%20%20%20%20%20'%E6%B2%88%E9%98%B3'%2C%0A%20%20%20%20%20%20'%E6%B5%8E%E5%8D%97'%2C%0A%20%20%20%20%20%20'%E5%8D%97%E4%BA%AC'%2C%0A%20%20%20%20%20%20'%E5%90%88%E8%82%A5'%2C%0A%20%20%20%20%20%20'%E6%9D%AD%E5%B7%9E'%2C%0A%20%20%20%20%20%20'%E5%8D%97%E6%98%8C'%2C%0A%20%20%20%20%20%20'%E7%A6%8F%E5%B7%9E'%2C%0A%20%20%20%20%20%20'%E9%83%91%E5%B7%9E'%2C%0A%20%20%20%20%20%20'%E6%AD%A6%E6%B1%89'%2C%0A%20%20%20%20%20%20'%E9%95%BF%E6%B2%99'%2C%0A%20%20%20%20%20%20'%E5%B9%BF%E5%B7%9E'%2C%0A%20%20%20%20%20%20'%E5%8D%97%E5%AE%81'%2C%0A%20%20%20%20%20%20'%E8%A5%BF%E5%AE%89'%2C%0A%20%20%20%20%20%20'%E9%93%B6%E5%B7%9D'%2C%0A%20%20%20%20%20%20'%E5%85%B0%E5%B7%9E'%2C%0A%20%20%20%20%20%20'%E8%A5%BF%E5%AE%81'%2C%0A%20%20%20%20%20%20'%E4%B9%8C%E9%B2%81%E6%9C%A8%E9%BD%90'%2C%0A%20%20%20%20%20%20'%E6%88%90%E9%83%BD'%2C%0A%20%20%20%20%20%20'%E8%B4%B5%E9%98%B3'%2C%0A%20%20%20%20%20%20'%E6%98%86%E6%98%8E'%2C%0A%20%20%20%20%20%20'%E6%8B%89%E8%90%A8'%2C%0A%20%20%20%20%20%20'%E6%B5%B7%E5%8F%A3'%0A%20%20%20%20%5D%0A%0A%20%20%20%20let%20randomCount%20%3D%20300%0A%0A%20%20%20%20%2F%2F%20%E6%9E%84%E9%80%A0%E6%95%B0%E6%8D%AE%0A%20%20%20%20while%20(randomCount--)%20%7B%0A%20%20%20%20%20%20let%20cityCenter%20%3D%20mapv.utilCityCenter.getCenterByCityName(citys%5BMath.floor(Math.random()%20*%20citys.length)%5D)%0A%20%20%20%20%20%20data.push(%7B%0A%20%20%20%20%20%20%20%20geometry%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20type%3A%20'Point'%2C%0A%20%20%20%20%20%20%20%20%20%20coordinates%3A%20%5BcityCenter.lng%20-%202%20%2B%20Math.random()%20*%204%2C%20cityCenter.lat%20-%202%20%2B%20Math.random()%20*%204%5D%0A%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20properties%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20count%3A%20Math.random()%20*%20100%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D)%0A%20%20%20%20%7D%0A%0A%20%20%20%20let%20view%20%3D%20new%20mapvgl.View(%7B%0A%20%20%20%20%20%20map%3A%20map%0A%20%20%20%20%7D)%0A%0A%20%20%20%20let%20pointLayer%20%3D%20new%20mapvgl.PointLayer(%7B%0A%20%20%20%20%20%20blend%3A%20'lighter'%2C%0A%20%20%20%20%20%20size%3A%2015%2C%0A%20%20%20%20%20%20color%3A%20'rgba(102%2C%200%2C%20204%2C%200.6)'%0A%20%20%20%20%7D)%0A%0A%20%20%20%20view.addLayer(pointLayer)%0A%20%20%20%20pointLayer.setData(data)%0A%20%20%7D%0A%3C%2Fscript%3E%0A",description:""},{default:t(()=>[k]),_:1}),u,D,a(n,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E30%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Atilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E30%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E12%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lat%3A%2039.925406%2C%20lng%3A%20116.387456%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AdisplayOptions%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%0A%20%20%20%20%20%20indoor%3A%20false%2C%0A%20%20%20%20%20%20poi%3A%20true%2C%0A%20%20%20%20%20%20skyColors%3A%20%5B'rgba(5%2C%205%2C%2030%2C%200.01)'%2C%20'rgba(5%2C%205%2C%2030%2C%201.0)'%5D%0A%20%20%20%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EmapStyleId%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E980161f3645989feac25a0da15da4178%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aplugins%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%5B'Mapvgl'%2C%20'Mapv'%5D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40pluginReady%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandlePluginReady%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandlePluginReady%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3Emap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20view%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3Emapvgl%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EView%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Emap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20map%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20grid%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3Emapvgl%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EHeatGridLayer%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Emax%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E80%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E6%9C%80%E5%A4%A7%E9%98%88%E5%80%BC%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Emin%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E10%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E6%9C%80%E5%B0%8F%E9%98%88%E5%80%BC%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EgridSize%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E500%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Egradient%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E5%AF%B9%E5%BA%94%E6%AF%94%E4%BE%8B%E6%B8%90%E5%8F%98%E8%89%B2%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'rgb(50%2C%2050%2C%20256)'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20number%22%3E0.3%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'rgb(178%2C%20202%2C%20256)'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'rgb(250%2C%20250%2C%20256)'%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EriseTime%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E1800%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E6%A5%BC%E5%9D%97%E5%88%9D%E5%A7%8B%E5%8C%96%E5%8D%87%E8%B5%B7%E6%97%B6%E9%97%B4%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EmaxHeight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E10000%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E6%9C%80%E5%A4%A7%E9%AB%98%E5%BA%A6%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EminHeight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E200%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E6%9C%80%E5%B0%8F%E9%AB%98%E5%BA%A6%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20view%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EaddLayer%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Egrid%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Efetch%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'%2Fvue3-baidu-map-gl%2Fbeijing.json'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Ethen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3Ers%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Ereturn%3C%2Fspan%3E%20rs%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Ejson%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Ethen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3Ers%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20rs%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20rs%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eresult%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Edata%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Ebound%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20data%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efor%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20i%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20i%20%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3E%20rs%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Elength%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20i%3Cspan%20class%3D%22token%20operator%22%3E%2B%2B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20item%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20rs%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3Ei%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20data%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Epush%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Egeometry%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'Point'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecoordinates%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3Eitem%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20item%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eproperties%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecount%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20item%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E2%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20grid%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EsetData%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Edata%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"expand/mapv/heatGridLayer","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%0A%20%20%20%20v-bind%3D%22%24attrs%22%0A%20%20%20%20%3Aheading%3D%2230%22%0A%20%20%20%20%3Atilt%3D%2230%22%0A%20%20%20%20%3Azoom%3D%2212%22%0A%20%20%20%20%3Acenter%3D%22%7B%20lat%3A%2039.925406%2C%20lng%3A%20116.387456%20%7D%22%0A%20%20%20%20%3AdisplayOptions%3D%22%7B%0A%20%20%20%20%20%20indoor%3A%20false%2C%0A%20%20%20%20%20%20poi%3A%20true%2C%0A%20%20%20%20%20%20skyColors%3A%20%5B'rgba(5%2C%205%2C%2030%2C%200.01)'%2C%20'rgba(5%2C%205%2C%2030%2C%201.0)'%5D%0A%20%20%20%20%7D%22%0A%20%20%20%20mapStyleId%3D%22980161f3645989feac25a0da15da4178%22%0A%20%20%20%20enableScrollWheelZoom%0A%20%20%20%20%3Aplugins%3D%22%5B'Mapvgl'%2C%20'Mapv'%5D%22%0A%20%20%20%20%40pluginReady%3D%22handlePluginReady%22%0A%20%20%2F%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%3E%0A%20%20function%20handlePluginReady(map)%20%7B%0A%20%20%20%20let%20view%20%3D%20new%20mapvgl.View(%7B%0A%20%20%20%20%20%20map%3A%20map%0A%20%20%20%20%7D)%0A%0A%20%20%20%20let%20grid%20%3D%20new%20mapvgl.HeatGridLayer(%7B%0A%20%20%20%20%20%20max%3A%2080%2C%20%2F%2F%20%E6%9C%80%E5%A4%A7%E9%98%88%E5%80%BC%0A%20%20%20%20%20%20min%3A%2010%2C%20%2F%2F%20%E6%9C%80%E5%B0%8F%E9%98%88%E5%80%BC%0A%20%20%20%20%20%20gridSize%3A%20500%2C%0A%20%20%20%20%20%20gradient%3A%20%7B%0A%20%20%20%20%20%20%20%20%2F%2F%20%E5%AF%B9%E5%BA%94%E6%AF%94%E4%BE%8B%E6%B8%90%E5%8F%98%E8%89%B2%0A%20%20%20%20%20%20%20%200%3A%20'rgb(50%2C%2050%2C%20256)'%2C%0A%20%20%20%20%20%20%20%200.3%3A%20'rgb(178%2C%20202%2C%20256)'%2C%0A%20%20%20%20%20%20%20%201%3A%20'rgb(250%2C%20250%2C%20256)'%0A%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20riseTime%3A%201800%2C%20%2F%2F%20%E6%A5%BC%E5%9D%97%E5%88%9D%E5%A7%8B%E5%8C%96%E5%8D%87%E8%B5%B7%E6%97%B6%E9%97%B4%0A%20%20%20%20%20%20maxHeight%3A%2010000%2C%20%2F%2F%20%E6%9C%80%E5%A4%A7%E9%AB%98%E5%BA%A6%0A%20%20%20%20%20%20minHeight%3A%20200%20%2F%2F%20%E6%9C%80%E5%B0%8F%E9%AB%98%E5%BA%A6%0A%20%20%20%20%7D)%0A%20%20%20%20view.addLayer(grid)%0A%0A%20%20%20%20fetch('%2Fvue3-baidu-map-gl%2Fbeijing.json')%0A%20%20%20%20%20%20.then((rs)%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20return%20rs.json()%0A%20%20%20%20%20%20%7D)%0A%20%20%20%20%20%20.then((rs)%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20rs%20%3D%20rs.result.data%5B0%5D.bound%0A%20%20%20%20%20%20%20%20let%20data%20%3D%20%5B%5D%0A%20%20%20%20%20%20%20%20for%20(let%20i%20%3D%200%3B%20i%20%3C%20rs.length%3B%20i%2B%2B)%20%7B%0A%20%20%20%20%20%20%20%20%20%20let%20item%20%3D%20rs%5Bi%5D%0A%20%20%20%20%20%20%20%20%20%20data.push(%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20geometry%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20type%3A%20'Point'%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20coordinates%3A%20%5Bitem%5B0%5D%2C%20item%5B1%5D%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20properties%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20count%3A%20item%5B2%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%7D)%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20grid.setData(data)%0A%20%20%20%20%20%20%7D)%0A%20%20%7D%0A%3C%2Fscript%3E%0A",description:""},{default:t(()=>[r]),_:1}),F,A,a(n,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Atilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E65%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E-50%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E21%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ecenter%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AdisplayOptions%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%0A%20%20%20%20%20%20building%3A%20false%0A%20%20%20%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3ArestrictCenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Efalse%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableInertialDragging%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableContinuousZoom%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20withBase%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vitepress'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20GLTFLoader%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'three%2Fexamples%2Fjsm%2Floaders%2FGLTFLoader.js'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20center%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.05298%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.25241%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20map%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'mapv-three'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Ethen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3EmapvThree%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20Engine%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20EmptySky%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20mapvThree%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20engine%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EEngine%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Emap%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20engine.map.setCenter(center)%3C%2Fspan%3E%0A%20%20%20%20%20%20engine%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Erendering%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EuseMrt%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%0A%20%20%20%20%20%20engine%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Erendering%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eshadow%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eenabled%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%0A%20%20%20%20%20%20engine%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Erendering%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EanimationLoopFrameTime%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40%3C%2Fspan%3E%0A%20%20%20%20%20%20engine%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Erendering%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EcolorAdjust%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Esaturation%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.25%3C%2Fspan%3E%0A%20%20%20%20%20%20engine%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Erendering%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EcolorAdjust%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Econtrast%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.15%3C%2Fspan%3E%0A%20%20%20%20%20%20engine%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Erendering%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EcolorAdjust%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Ebrightness%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%0A%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20sky%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20engine%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eadd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EEmptySky%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20sky%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Etime%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E3600%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E*%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E16.5%3C%2Fspan%3E%0A%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20position%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20engine%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Emap%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EprojectPointArr%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Ecenter%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E6%A8%A1%E5%9E%8B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20models%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E12941311%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E4845891%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E6%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epath%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EwithBase%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'%2Fmodels%2Fbuilding5.glb'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Erotate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Einfo%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E6%88%BF%E5%AD%90'%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E12941265%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E4845905%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E6%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epath%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EwithBase%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'%2Fmodels%2Fpalm_tree.glb'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Erotate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Einfo%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E6%A0%91%E6%9C%A8'%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E12941369%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E4845869%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E2%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epath%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EwithBase%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'%2Fmodels%2Ftruck1.glb'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Erotate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Einfo%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E8%B4%A7%E8%BD%A6'%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20loader%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EGLTFLoader%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efor%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20i%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20i%20%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3E%20models%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Elength%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20i%3Cspan%20class%3D%22token%20operator%22%3E%2B%2B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20loader%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eload%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Emodels%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3Ei%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Epath%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3Egltf%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20model%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20gltf%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Escene%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Echildren%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20model%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EuserData%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einfo%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20models%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3Ei%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einfo%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efor%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20i%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20i%20%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3E%20model%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Echildren%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Elength%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20i%3Cspan%20class%3D%22token%20operator%22%3E%2B%2B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20model%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Echildren%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3Ei%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EcastShadow%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20model%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eposition%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eset%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Emodels%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3Ei%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eposition%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20models%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3Ei%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eposition%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20models%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3Ei%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eposition%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E2%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eif%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Emodels%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3Ei%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Erotate%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20model%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Erotation%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Ex%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20Math%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20constant%22%3EPI%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%2F%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E2%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20model%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Erotation%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Ey%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E1.08%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E*%3C%2Fspan%3E%20Math%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20constant%22%3EPI%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%2F%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E2%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20engine%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eadd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Emodel%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E6%A8%A1%E5%9E%8B%E6%B7%BB%E5%8A%A0%E7%82%B9%E5%87%BB%E4%BA%8B%E4%BB%B6%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20engine%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eevent%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EmarkEventProxy%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Emodel%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20engine%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eevent%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Ebind%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Emodel%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'click'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3Ee%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Ealert%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'%E7%82%B9%E5%87%BB%E4%BA%86%20'%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%2B%3C%2Fspan%3E%20model%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EuserData%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einfo%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"expand/mapv/3dModel","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%0A%20%20%20%20v-bind%3D%22%24attrs%22%0A%20%20%20%20%3Atilt%3D%2265%22%0A%20%20%20%20%3Aheading%3D%22-50%22%0A%20%20%20%20%3Azoom%3D%2221%22%0A%20%20%20%20%3Acenter%3D%22center%22%0A%20%20%20%20%3AdisplayOptions%3D%22%7B%0A%20%20%20%20%20%20building%3A%20false%0A%20%20%20%20%7D%22%0A%20%20%20%20%3ArestrictCenter%3D%22false%22%0A%20%20%20%20enableInertialDragging%0A%20%20%20%20enableContinuousZoom%0A%20%20%20%20enableScrollWheelZoom%0A%20%20%20%20%40initd%3D%22handleInitd%22%0A%20%20%2F%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%3E%0A%20%20import%20%7B%20withBase%20%7D%20from%20'vitepress'%0A%20%20import%20%7B%20GLTFLoader%20%7D%20from%20'three%2Fexamples%2Fjsm%2Floaders%2FGLTFLoader.js'%0A%20%20const%20center%20%3D%20%7B%20lat%3A%2040.05298%2C%20lng%3A%20116.25241%20%7D%0A%20%20function%20handleInitd(%7B%20map%20%7D)%20%7B%0A%20%20%20%20import('mapv-three').then((mapvThree)%20%3D%3E%20%7B%0A%20%20%20%20%20%20const%20%7B%20Engine%2C%20EmptySky%20%7D%20%3D%20mapvThree%0A%20%20%20%20%20%20const%20engine%20%3D%20new%20Engine(map%2C%20%7B%7D)%0A%20%20%20%20%20%20%2F%2F%20engine.map.setCenter(center)%0A%20%20%20%20%20%20engine.rendering.useMrt%20%3D%20true%0A%20%20%20%20%20%20engine.rendering.shadow.enabled%20%3D%20true%0A%20%20%20%20%20%20engine.rendering.animationLoopFrameTime%20%3D%2040%0A%20%20%20%20%20%20engine.rendering.colorAdjust.saturation%20%3D%200.25%0A%20%20%20%20%20%20engine.rendering.colorAdjust.contrast%20%3D%200.15%0A%20%20%20%20%20%20engine.rendering.colorAdjust.brightness%20%3D%200%0A%0A%20%20%20%20%20%20const%20sky%20%3D%20engine.add(new%20EmptySky())%0A%20%20%20%20%20%20sky.time%20%3D%203600%20*%2016.5%0A%0A%20%20%20%20%20%20const%20position%20%3D%20engine.map.projectPointArr(center)%0A%0A%20%20%20%20%20%20%2F%2F%20%E6%A8%A1%E5%9E%8B%0A%20%20%20%20%20%20const%20models%20%3D%20%5B%0A%20%20%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20%20position%3A%20%5B12941311%2C%204845891%2C%206%5D%2C%0A%20%20%20%20%20%20%20%20%20%20path%3A%20withBase('%2Fmodels%2Fbuilding5.glb')%2C%0A%20%20%20%20%20%20%20%20%20%20rotate%3A%20true%2C%0A%20%20%20%20%20%20%20%20%20%20info%3A%20'%E6%88%BF%E5%AD%90'%0A%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20%20position%3A%20%5B12941265%2C%204845905%2C%206%5D%2C%0A%20%20%20%20%20%20%20%20%20%20path%3A%20withBase('%2Fmodels%2Fpalm_tree.glb')%2C%0A%20%20%20%20%20%20%20%20%20%20rotate%3A%20false%2C%0A%20%20%20%20%20%20%20%20%20%20info%3A%20'%E6%A0%91%E6%9C%A8'%0A%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20%20position%3A%20%5B12941369%2C%204845869%2C%202%5D%2C%0A%20%20%20%20%20%20%20%20%20%20path%3A%20withBase('%2Fmodels%2Ftruck1.glb')%2C%0A%20%20%20%20%20%20%20%20%20%20rotate%3A%20true%2C%0A%20%20%20%20%20%20%20%20%20%20info%3A%20'%E8%B4%A7%E8%BD%A6'%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%5D%0A%20%20%20%20%20%20const%20loader%20%3D%20new%20GLTFLoader()%0A%20%20%20%20%20%20for%20(let%20i%20%3D%200%3B%20i%20%3C%20models.length%3B%20i%2B%2B)%20%7B%0A%20%20%20%20%20%20%20%20loader.load(models%5Bi%5D.path%2C%20(gltf)%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20%20%20const%20model%20%3D%20gltf.scene.children%5B0%5D%0A%20%20%20%20%20%20%20%20%20%20model.userData.info%20%3D%20models%5Bi%5D.info%0A%20%20%20%20%20%20%20%20%20%20for%20(let%20i%20%3D%200%3B%20i%20%3C%20model.children.length%3B%20i%2B%2B)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20model.children%5Bi%5D.castShadow%20%3D%20true%0A%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20model.position.set(models%5Bi%5D.position%5B0%5D%2C%20models%5Bi%5D.position%5B1%5D%2C%20models%5Bi%5D.position%5B2%5D)%0A%20%20%20%20%20%20%20%20%20%20if%20(models%5Bi%5D.rotate)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20model.rotation.x%20%3D%20Math.PI%20%2F%202%0A%20%20%20%20%20%20%20%20%20%20%20%20model.rotation.y%20%3D%20(1.08%20*%20Math.PI)%20%2F%202%0A%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20engine.add(model)%0A%20%20%20%20%20%20%20%20%20%20%2F%2F%20%E6%A8%A1%E5%9E%8B%E6%B7%BB%E5%8A%A0%E7%82%B9%E5%87%BB%E4%BA%8B%E4%BB%B6%0A%20%20%20%20%20%20%20%20%20%20engine.event.markEventProxy(model)%0A%20%20%20%20%20%20%20%20%20%20engine.event.bind(model%2C%20'click'%2C%20(e)%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20alert('%E7%82%B9%E5%87%BB%E4%BA%86%20'%20%2B%20model.userData.info)%0A%20%20%20%20%20%20%20%20%20%20%7D)%0A%20%20%20%20%20%20%20%20%7D)%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D)%0A%20%20%7D%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E6%B8%B2%E6%9F%93%203d%20%E6%A8%A1%E5%9E%8B%E5%B9%B6%E7%BB%91%E5%AE%9A%E4%BA%8B%E4%BB%B6%3C%2Fp%3E%0A"},{default:t(()=>[h]),_:1})])}const _=E(i,[["render",d]]);export{w as __pageData,_ as default}; diff --git a/assets/zh-CN_expand_mapv.md.CkKUmVIe.lean.js b/assets/zh-CN_expand_mapv.md.CkKUmVIe.lean.js new file mode 100644 index 00000000..37d75b96 --- /dev/null +++ b/assets/zh-CN_expand_mapv.md.CkKUmVIe.lean.js @@ -0,0 +1 @@ +import{_ as E,c as e,I as a,w as t,al as o,j as s,a as p,D as C,o as l}from"./chunks/framework.n6hqIsqL.js";const w=JSON.parse('{"title":"mapv 可视化","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/expand/mapv.md","filePath":"zh-CN/expand/mapv.md","lastUpdated":1724785300000}'),i={name:"zh-CN/expand/mapv.md"},c=o("",22),k=s("p",null,"expand/mapv/pointLayer",-1),u=s("h3",{id:"heatgridlayer-柱状热力图",tabindex:"-1"},[p("HeatGridLayer 柱状热力图 "),s("a",{class:"header-anchor",href:"#heatgridlayer-柱状热力图","aria-label":'Permalink to "HeatGridLayer 柱状热力图"'},"​")],-1),D=s("blockquote",null,[s("p",null,[s("a",{href:"https://mapv.baidu.com/gl/docs/HeatGridLayer.html",target:"_blank",rel:"noreferrer"},"https://mapv.baidu.com/gl/docs/HeatGridLayer.html")])],-1),r=s("p",null,"expand/mapv/heatGridLayer",-1),F=s("h3",{id:"渲染-3d-模型",tabindex:"-1"},[p("渲染 3d 模型 "),s("a",{class:"header-anchor",href:"#渲染-3d-模型","aria-label":'Permalink to "渲染 3d 模型"'},"​")],-1),A=s("blockquote",null,[s("p",null,[s("a",{href:"https://lbsyun.baidu.com/solutions/mapvthreedoc",target:"_blank",rel:"noreferrer"},"https://lbsyun.baidu.com/solutions/mapvthreedoc")])],-1),h=s("p",null,"expand/mapv/3dModel",-1);function d(B,g,m,y,b,v){const n=C("Demo");return l(),e("div",null,[c,a(n,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E5%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.403901%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aplugins%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%5B'Mapvgl'%2C%20'Mapv'%5D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AdisplayOptions%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%0A%20%20%20%20%20%20indoor%3A%20false%2C%0A%20%20%20%20%20%20poi%3A%20true%2C%0A%20%20%20%20%20%20skyColors%3A%20%5B'rgba(5%2C%205%2C%2030%2C%200.01)'%2C%20'rgba(5%2C%205%2C%2030%2C%201.0)'%5D%0A%20%20%20%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EmapStyleId%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E91c53039a0b7f75e3dd8ddcdd932243b%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40pluginReady%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandlePluginReady%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandlePluginReady%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3Emap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20data%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20citys%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%8C%97%E4%BA%AC'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%A4%A9%E6%B4%A5'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E4%B8%8A%E6%B5%B7'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E9%87%8D%E5%BA%86'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E7%9F%B3%E5%AE%B6%E5%BA%84'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%A4%AA%E5%8E%9F'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%91%BC%E5%92%8C%E6%B5%A9%E7%89%B9'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%93%88%E5%B0%94%E6%BB%A8'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E9%95%BF%E6%98%A5'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E6%B2%88%E9%98%B3'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E6%B5%8E%E5%8D%97'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%8D%97%E4%BA%AC'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%90%88%E8%82%A5'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E6%9D%AD%E5%B7%9E'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%8D%97%E6%98%8C'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E7%A6%8F%E5%B7%9E'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E9%83%91%E5%B7%9E'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E6%AD%A6%E6%B1%89'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E9%95%BF%E6%B2%99'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%B9%BF%E5%B7%9E'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%8D%97%E5%AE%81'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E8%A5%BF%E5%AE%89'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E9%93%B6%E5%B7%9D'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%85%B0%E5%B7%9E'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E8%A5%BF%E5%AE%81'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E4%B9%8C%E9%B2%81%E6%9C%A8%E9%BD%90'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E6%88%90%E9%83%BD'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E8%B4%B5%E9%98%B3'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E6%98%86%E6%98%8E'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E6%8B%89%E8%90%A8'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E6%B5%B7%E5%8F%A3'%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20randomCount%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E300%3C%2Fspan%3E%0A%0A%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E6%9E%84%E9%80%A0%E6%95%B0%E6%8D%AE%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Ewhile%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3ErandomCount%3Cspan%20class%3D%22token%20operator%22%3E--%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20cityCenter%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20mapv%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EutilCityCenter%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EgetCenterByCityName%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Ecitys%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3EMath%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Efloor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3EMath%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Erandom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E*%3C%2Fspan%3E%20citys%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Elength%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20data%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Epush%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Egeometry%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'Point'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecoordinates%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3EcityCenter%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Elng%20%3Cspan%20class%3D%22token%20operator%22%3E-%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E2%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%2B%3C%2Fspan%3E%20Math%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Erandom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E*%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E4%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20cityCenter%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Elat%20%3Cspan%20class%3D%22token%20operator%22%3E-%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E2%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%2B%3C%2Fspan%3E%20Math%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Erandom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E*%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E4%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eproperties%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecount%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20Math%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Erandom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E*%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E100%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20view%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3Emapvgl%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EView%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Emap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20map%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20pointLayer%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3Emapvgl%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EPointLayer%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eblend%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'er'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Esize%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E15%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecolor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'rgba(102%2C%200%2C%20204%2C%200.6)'%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%0A%20%20%20%20view%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EaddLayer%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3EpointLayer%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20pointLayer%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EsetData%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Edata%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"expand/mapv/pointLayer","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%0A%20%20%20%20v-bind%3D%22%24attrs%22%0A%20%20%20%20%3Azoom%3D%225%22%0A%20%20%20%20%3Acenter%3D%22%7B%20lat%3A%2039.915185%2C%20lng%3A%20116.403901%20%7D%22%0A%20%20%20%20%3Aplugins%3D%22%5B'Mapvgl'%2C%20'Mapv'%5D%22%0A%20%20%20%20%3AdisplayOptions%3D%22%7B%0A%20%20%20%20%20%20indoor%3A%20false%2C%0A%20%20%20%20%20%20poi%3A%20true%2C%0A%20%20%20%20%20%20skyColors%3A%20%5B'rgba(5%2C%205%2C%2030%2C%200.01)'%2C%20'rgba(5%2C%205%2C%2030%2C%201.0)'%5D%0A%20%20%20%20%7D%22%0A%20%20%20%20mapStyleId%3D%2291c53039a0b7f75e3dd8ddcdd932243b%22%0A%20%20%20%20enableScrollWheelZoom%0A%20%20%20%20%40pluginReady%3D%22handlePluginReady%22%0A%20%20%2F%3E%0A%3C%2Ftemplate%3E%0A%3Cscript%20setup%3E%0A%20%20function%20handlePluginReady(map)%20%7B%0A%20%20%20%20let%20data%20%3D%20%5B%5D%0A%0A%20%20%20%20let%20citys%20%3D%20%5B%0A%20%20%20%20%20%20'%E5%8C%97%E4%BA%AC'%2C%0A%20%20%20%20%20%20'%E5%A4%A9%E6%B4%A5'%2C%0A%20%20%20%20%20%20'%E4%B8%8A%E6%B5%B7'%2C%0A%20%20%20%20%20%20'%E9%87%8D%E5%BA%86'%2C%0A%20%20%20%20%20%20'%E7%9F%B3%E5%AE%B6%E5%BA%84'%2C%0A%20%20%20%20%20%20'%E5%A4%AA%E5%8E%9F'%2C%0A%20%20%20%20%20%20'%E5%91%BC%E5%92%8C%E6%B5%A9%E7%89%B9'%2C%0A%20%20%20%20%20%20'%E5%93%88%E5%B0%94%E6%BB%A8'%2C%0A%20%20%20%20%20%20'%E9%95%BF%E6%98%A5'%2C%0A%20%20%20%20%20%20'%E6%B2%88%E9%98%B3'%2C%0A%20%20%20%20%20%20'%E6%B5%8E%E5%8D%97'%2C%0A%20%20%20%20%20%20'%E5%8D%97%E4%BA%AC'%2C%0A%20%20%20%20%20%20'%E5%90%88%E8%82%A5'%2C%0A%20%20%20%20%20%20'%E6%9D%AD%E5%B7%9E'%2C%0A%20%20%20%20%20%20'%E5%8D%97%E6%98%8C'%2C%0A%20%20%20%20%20%20'%E7%A6%8F%E5%B7%9E'%2C%0A%20%20%20%20%20%20'%E9%83%91%E5%B7%9E'%2C%0A%20%20%20%20%20%20'%E6%AD%A6%E6%B1%89'%2C%0A%20%20%20%20%20%20'%E9%95%BF%E6%B2%99'%2C%0A%20%20%20%20%20%20'%E5%B9%BF%E5%B7%9E'%2C%0A%20%20%20%20%20%20'%E5%8D%97%E5%AE%81'%2C%0A%20%20%20%20%20%20'%E8%A5%BF%E5%AE%89'%2C%0A%20%20%20%20%20%20'%E9%93%B6%E5%B7%9D'%2C%0A%20%20%20%20%20%20'%E5%85%B0%E5%B7%9E'%2C%0A%20%20%20%20%20%20'%E8%A5%BF%E5%AE%81'%2C%0A%20%20%20%20%20%20'%E4%B9%8C%E9%B2%81%E6%9C%A8%E9%BD%90'%2C%0A%20%20%20%20%20%20'%E6%88%90%E9%83%BD'%2C%0A%20%20%20%20%20%20'%E8%B4%B5%E9%98%B3'%2C%0A%20%20%20%20%20%20'%E6%98%86%E6%98%8E'%2C%0A%20%20%20%20%20%20'%E6%8B%89%E8%90%A8'%2C%0A%20%20%20%20%20%20'%E6%B5%B7%E5%8F%A3'%0A%20%20%20%20%5D%0A%0A%20%20%20%20let%20randomCount%20%3D%20300%0A%0A%20%20%20%20%2F%2F%20%E6%9E%84%E9%80%A0%E6%95%B0%E6%8D%AE%0A%20%20%20%20while%20(randomCount--)%20%7B%0A%20%20%20%20%20%20let%20cityCenter%20%3D%20mapv.utilCityCenter.getCenterByCityName(citys%5BMath.floor(Math.random()%20*%20citys.length)%5D)%0A%20%20%20%20%20%20data.push(%7B%0A%20%20%20%20%20%20%20%20geometry%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20type%3A%20'Point'%2C%0A%20%20%20%20%20%20%20%20%20%20coordinates%3A%20%5BcityCenter.lng%20-%202%20%2B%20Math.random()%20*%204%2C%20cityCenter.lat%20-%202%20%2B%20Math.random()%20*%204%5D%0A%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20properties%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20count%3A%20Math.random()%20*%20100%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D)%0A%20%20%20%20%7D%0A%0A%20%20%20%20let%20view%20%3D%20new%20mapvgl.View(%7B%0A%20%20%20%20%20%20map%3A%20map%0A%20%20%20%20%7D)%0A%0A%20%20%20%20let%20pointLayer%20%3D%20new%20mapvgl.PointLayer(%7B%0A%20%20%20%20%20%20blend%3A%20'lighter'%2C%0A%20%20%20%20%20%20size%3A%2015%2C%0A%20%20%20%20%20%20color%3A%20'rgba(102%2C%200%2C%20204%2C%200.6)'%0A%20%20%20%20%7D)%0A%0A%20%20%20%20view.addLayer(pointLayer)%0A%20%20%20%20pointLayer.setData(data)%0A%20%20%7D%0A%3C%2Fscript%3E%0A",description:""},{default:t(()=>[k]),_:1}),u,D,a(n,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E30%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Atilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E30%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E12%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lat%3A%2039.925406%2C%20lng%3A%20116.387456%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AdisplayOptions%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%0A%20%20%20%20%20%20indoor%3A%20false%2C%0A%20%20%20%20%20%20poi%3A%20true%2C%0A%20%20%20%20%20%20skyColors%3A%20%5B'rgba(5%2C%205%2C%2030%2C%200.01)'%2C%20'rgba(5%2C%205%2C%2030%2C%201.0)'%5D%0A%20%20%20%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EmapStyleId%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E980161f3645989feac25a0da15da4178%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aplugins%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%5B'Mapvgl'%2C%20'Mapv'%5D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40pluginReady%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandlePluginReady%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandlePluginReady%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3Emap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20view%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3Emapvgl%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EView%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Emap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20map%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20grid%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3Emapvgl%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EHeatGridLayer%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Emax%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E80%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E6%9C%80%E5%A4%A7%E9%98%88%E5%80%BC%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Emin%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E10%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E6%9C%80%E5%B0%8F%E9%98%88%E5%80%BC%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EgridSize%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E500%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Egradient%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E5%AF%B9%E5%BA%94%E6%AF%94%E4%BE%8B%E6%B8%90%E5%8F%98%E8%89%B2%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'rgb(50%2C%2050%2C%20256)'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20number%22%3E0.3%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'rgb(178%2C%20202%2C%20256)'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'rgb(250%2C%20250%2C%20256)'%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EriseTime%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E1800%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E6%A5%BC%E5%9D%97%E5%88%9D%E5%A7%8B%E5%8C%96%E5%8D%87%E8%B5%B7%E6%97%B6%E9%97%B4%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EmaxHeight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E10000%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E6%9C%80%E5%A4%A7%E9%AB%98%E5%BA%A6%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EminHeight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E200%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E6%9C%80%E5%B0%8F%E9%AB%98%E5%BA%A6%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20view%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EaddLayer%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Egrid%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Efetch%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'%2Fvue3-baidu-map-gl%2Fbeijing.json'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Ethen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3Ers%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Ereturn%3C%2Fspan%3E%20rs%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Ejson%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Ethen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3Ers%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20rs%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20rs%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eresult%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Edata%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Ebound%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20data%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efor%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20i%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20i%20%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3E%20rs%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Elength%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20i%3Cspan%20class%3D%22token%20operator%22%3E%2B%2B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20item%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20rs%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3Ei%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20data%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Epush%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Egeometry%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'Point'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecoordinates%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3Eitem%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20item%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eproperties%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecount%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20item%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E2%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20grid%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EsetData%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Edata%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"expand/mapv/heatGridLayer","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%0A%20%20%20%20v-bind%3D%22%24attrs%22%0A%20%20%20%20%3Aheading%3D%2230%22%0A%20%20%20%20%3Atilt%3D%2230%22%0A%20%20%20%20%3Azoom%3D%2212%22%0A%20%20%20%20%3Acenter%3D%22%7B%20lat%3A%2039.925406%2C%20lng%3A%20116.387456%20%7D%22%0A%20%20%20%20%3AdisplayOptions%3D%22%7B%0A%20%20%20%20%20%20indoor%3A%20false%2C%0A%20%20%20%20%20%20poi%3A%20true%2C%0A%20%20%20%20%20%20skyColors%3A%20%5B'rgba(5%2C%205%2C%2030%2C%200.01)'%2C%20'rgba(5%2C%205%2C%2030%2C%201.0)'%5D%0A%20%20%20%20%7D%22%0A%20%20%20%20mapStyleId%3D%22980161f3645989feac25a0da15da4178%22%0A%20%20%20%20enableScrollWheelZoom%0A%20%20%20%20%3Aplugins%3D%22%5B'Mapvgl'%2C%20'Mapv'%5D%22%0A%20%20%20%20%40pluginReady%3D%22handlePluginReady%22%0A%20%20%2F%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%3E%0A%20%20function%20handlePluginReady(map)%20%7B%0A%20%20%20%20let%20view%20%3D%20new%20mapvgl.View(%7B%0A%20%20%20%20%20%20map%3A%20map%0A%20%20%20%20%7D)%0A%0A%20%20%20%20let%20grid%20%3D%20new%20mapvgl.HeatGridLayer(%7B%0A%20%20%20%20%20%20max%3A%2080%2C%20%2F%2F%20%E6%9C%80%E5%A4%A7%E9%98%88%E5%80%BC%0A%20%20%20%20%20%20min%3A%2010%2C%20%2F%2F%20%E6%9C%80%E5%B0%8F%E9%98%88%E5%80%BC%0A%20%20%20%20%20%20gridSize%3A%20500%2C%0A%20%20%20%20%20%20gradient%3A%20%7B%0A%20%20%20%20%20%20%20%20%2F%2F%20%E5%AF%B9%E5%BA%94%E6%AF%94%E4%BE%8B%E6%B8%90%E5%8F%98%E8%89%B2%0A%20%20%20%20%20%20%20%200%3A%20'rgb(50%2C%2050%2C%20256)'%2C%0A%20%20%20%20%20%20%20%200.3%3A%20'rgb(178%2C%20202%2C%20256)'%2C%0A%20%20%20%20%20%20%20%201%3A%20'rgb(250%2C%20250%2C%20256)'%0A%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20riseTime%3A%201800%2C%20%2F%2F%20%E6%A5%BC%E5%9D%97%E5%88%9D%E5%A7%8B%E5%8C%96%E5%8D%87%E8%B5%B7%E6%97%B6%E9%97%B4%0A%20%20%20%20%20%20maxHeight%3A%2010000%2C%20%2F%2F%20%E6%9C%80%E5%A4%A7%E9%AB%98%E5%BA%A6%0A%20%20%20%20%20%20minHeight%3A%20200%20%2F%2F%20%E6%9C%80%E5%B0%8F%E9%AB%98%E5%BA%A6%0A%20%20%20%20%7D)%0A%20%20%20%20view.addLayer(grid)%0A%0A%20%20%20%20fetch('%2Fvue3-baidu-map-gl%2Fbeijing.json')%0A%20%20%20%20%20%20.then((rs)%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20return%20rs.json()%0A%20%20%20%20%20%20%7D)%0A%20%20%20%20%20%20.then((rs)%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20rs%20%3D%20rs.result.data%5B0%5D.bound%0A%20%20%20%20%20%20%20%20let%20data%20%3D%20%5B%5D%0A%20%20%20%20%20%20%20%20for%20(let%20i%20%3D%200%3B%20i%20%3C%20rs.length%3B%20i%2B%2B)%20%7B%0A%20%20%20%20%20%20%20%20%20%20let%20item%20%3D%20rs%5Bi%5D%0A%20%20%20%20%20%20%20%20%20%20data.push(%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20geometry%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20type%3A%20'Point'%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20coordinates%3A%20%5Bitem%5B0%5D%2C%20item%5B1%5D%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20properties%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20count%3A%20item%5B2%5D%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%7D)%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20grid.setData(data)%0A%20%20%20%20%20%20%7D)%0A%20%20%7D%0A%3C%2Fscript%3E%0A",description:""},{default:t(()=>[r]),_:1}),F,A,a(n,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Atilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E65%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E-50%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E21%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ecenter%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AdisplayOptions%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%0A%20%20%20%20%20%20building%3A%20false%0A%20%20%20%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3ArestrictCenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Efalse%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableInertialDragging%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableContinuousZoom%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20withBase%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vitepress'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20GLTFLoader%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'three%2Fexamples%2Fjsm%2Floaders%2FGLTFLoader.js'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20center%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.05298%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.25241%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20map%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'mapv-three'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Ethen%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3EmapvThree%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20Engine%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20EmptySky%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20mapvThree%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20engine%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EEngine%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Emap%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20engine.map.setCenter(center)%3C%2Fspan%3E%0A%20%20%20%20%20%20engine%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Erendering%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EuseMrt%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%0A%20%20%20%20%20%20engine%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Erendering%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eshadow%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eenabled%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%0A%20%20%20%20%20%20engine%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Erendering%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EanimationLoopFrameTime%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40%3C%2Fspan%3E%0A%20%20%20%20%20%20engine%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Erendering%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EcolorAdjust%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Esaturation%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.25%3C%2Fspan%3E%0A%20%20%20%20%20%20engine%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Erendering%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EcolorAdjust%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Econtrast%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.15%3C%2Fspan%3E%0A%20%20%20%20%20%20engine%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Erendering%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EcolorAdjust%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Ebrightness%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%0A%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20sky%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20engine%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eadd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EEmptySky%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20sky%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Etime%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E3600%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E*%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E16.5%3C%2Fspan%3E%0A%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20position%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20engine%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Emap%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EprojectPointArr%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Ecenter%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E6%A8%A1%E5%9E%8B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20models%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E12941311%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E4845891%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E6%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epath%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EwithBase%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'%2Fmodels%2Fbuilding5.glb'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Erotate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Einfo%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E6%88%BF%E5%AD%90'%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E12941265%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E4845905%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E6%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epath%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EwithBase%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'%2Fmodels%2Fpalm_tree.glb'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Erotate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Efalse%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Einfo%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E6%A0%91%E6%9C%A8'%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E12941369%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E4845869%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E2%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epath%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EwithBase%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'%2Fmodels%2Ftruck1.glb'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Erotate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Einfo%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E8%B4%A7%E8%BD%A6'%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20loader%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Enew%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20class-name%22%3EGLTFLoader%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efor%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20i%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20i%20%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3E%20models%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Elength%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20i%3Cspan%20class%3D%22token%20operator%22%3E%2B%2B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20loader%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eload%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Emodels%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3Ei%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Epath%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3Egltf%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20model%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20gltf%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Escene%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Echildren%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20model%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EuserData%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einfo%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20models%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3Ei%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einfo%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efor%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20keyword%22%3Elet%3C%2Fspan%3E%20i%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20i%20%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3E%20model%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Echildren%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Elength%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20i%3Cspan%20class%3D%22token%20operator%22%3E%2B%2B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20model%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Echildren%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3Ei%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EcastShadow%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20model%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eposition%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eset%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Emodels%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3Ei%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eposition%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20models%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3Ei%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eposition%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20models%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3Ei%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eposition%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E2%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eif%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Emodels%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3Ei%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Erotate%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20model%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Erotation%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Ex%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20Math%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20constant%22%3EPI%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%2F%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E2%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20model%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Erotation%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Ey%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E1.08%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E*%3C%2Fspan%3E%20Math%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20constant%22%3EPI%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%2F%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E2%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20engine%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eadd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Emodel%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20comment%22%3E%2F%2F%20%E6%A8%A1%E5%9E%8B%E6%B7%BB%E5%8A%A0%E7%82%B9%E5%87%BB%E4%BA%8B%E4%BB%B6%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20engine%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eevent%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EmarkEventProxy%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Emodel%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20engine%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Eevent%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3Ebind%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Emodel%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'click'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3Ee%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Ealert%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'%E7%82%B9%E5%87%BB%E4%BA%86%20'%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%2B%3C%2Fspan%3E%20model%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3EuserData%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Einfo%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"expand/mapv/3dModel","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%0A%20%20%20%20v-bind%3D%22%24attrs%22%0A%20%20%20%20%3Atilt%3D%2265%22%0A%20%20%20%20%3Aheading%3D%22-50%22%0A%20%20%20%20%3Azoom%3D%2221%22%0A%20%20%20%20%3Acenter%3D%22center%22%0A%20%20%20%20%3AdisplayOptions%3D%22%7B%0A%20%20%20%20%20%20building%3A%20false%0A%20%20%20%20%7D%22%0A%20%20%20%20%3ArestrictCenter%3D%22false%22%0A%20%20%20%20enableInertialDragging%0A%20%20%20%20enableContinuousZoom%0A%20%20%20%20enableScrollWheelZoom%0A%20%20%20%20%40initd%3D%22handleInitd%22%0A%20%20%2F%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%3E%0A%20%20import%20%7B%20withBase%20%7D%20from%20'vitepress'%0A%20%20import%20%7B%20GLTFLoader%20%7D%20from%20'three%2Fexamples%2Fjsm%2Floaders%2FGLTFLoader.js'%0A%20%20const%20center%20%3D%20%7B%20lat%3A%2040.05298%2C%20lng%3A%20116.25241%20%7D%0A%20%20function%20handleInitd(%7B%20map%20%7D)%20%7B%0A%20%20%20%20import('mapv-three').then((mapvThree)%20%3D%3E%20%7B%0A%20%20%20%20%20%20const%20%7B%20Engine%2C%20EmptySky%20%7D%20%3D%20mapvThree%0A%20%20%20%20%20%20const%20engine%20%3D%20new%20Engine(map%2C%20%7B%7D)%0A%20%20%20%20%20%20%2F%2F%20engine.map.setCenter(center)%0A%20%20%20%20%20%20engine.rendering.useMrt%20%3D%20true%0A%20%20%20%20%20%20engine.rendering.shadow.enabled%20%3D%20true%0A%20%20%20%20%20%20engine.rendering.animationLoopFrameTime%20%3D%2040%0A%20%20%20%20%20%20engine.rendering.colorAdjust.saturation%20%3D%200.25%0A%20%20%20%20%20%20engine.rendering.colorAdjust.contrast%20%3D%200.15%0A%20%20%20%20%20%20engine.rendering.colorAdjust.brightness%20%3D%200%0A%0A%20%20%20%20%20%20const%20sky%20%3D%20engine.add(new%20EmptySky())%0A%20%20%20%20%20%20sky.time%20%3D%203600%20*%2016.5%0A%0A%20%20%20%20%20%20const%20position%20%3D%20engine.map.projectPointArr(center)%0A%0A%20%20%20%20%20%20%2F%2F%20%E6%A8%A1%E5%9E%8B%0A%20%20%20%20%20%20const%20models%20%3D%20%5B%0A%20%20%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20%20position%3A%20%5B12941311%2C%204845891%2C%206%5D%2C%0A%20%20%20%20%20%20%20%20%20%20path%3A%20withBase('%2Fmodels%2Fbuilding5.glb')%2C%0A%20%20%20%20%20%20%20%20%20%20rotate%3A%20true%2C%0A%20%20%20%20%20%20%20%20%20%20info%3A%20'%E6%88%BF%E5%AD%90'%0A%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20%20position%3A%20%5B12941265%2C%204845905%2C%206%5D%2C%0A%20%20%20%20%20%20%20%20%20%20path%3A%20withBase('%2Fmodels%2Fpalm_tree.glb')%2C%0A%20%20%20%20%20%20%20%20%20%20rotate%3A%20false%2C%0A%20%20%20%20%20%20%20%20%20%20info%3A%20'%E6%A0%91%E6%9C%A8'%0A%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20%20position%3A%20%5B12941369%2C%204845869%2C%202%5D%2C%0A%20%20%20%20%20%20%20%20%20%20path%3A%20withBase('%2Fmodels%2Ftruck1.glb')%2C%0A%20%20%20%20%20%20%20%20%20%20rotate%3A%20true%2C%0A%20%20%20%20%20%20%20%20%20%20info%3A%20'%E8%B4%A7%E8%BD%A6'%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%5D%0A%20%20%20%20%20%20const%20loader%20%3D%20new%20GLTFLoader()%0A%20%20%20%20%20%20for%20(let%20i%20%3D%200%3B%20i%20%3C%20models.length%3B%20i%2B%2B)%20%7B%0A%20%20%20%20%20%20%20%20loader.load(models%5Bi%5D.path%2C%20(gltf)%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20%20%20const%20model%20%3D%20gltf.scene.children%5B0%5D%0A%20%20%20%20%20%20%20%20%20%20model.userData.info%20%3D%20models%5Bi%5D.info%0A%20%20%20%20%20%20%20%20%20%20for%20(let%20i%20%3D%200%3B%20i%20%3C%20model.children.length%3B%20i%2B%2B)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20model.children%5Bi%5D.castShadow%20%3D%20true%0A%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20model.position.set(models%5Bi%5D.position%5B0%5D%2C%20models%5Bi%5D.position%5B1%5D%2C%20models%5Bi%5D.position%5B2%5D)%0A%20%20%20%20%20%20%20%20%20%20if%20(models%5Bi%5D.rotate)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20model.rotation.x%20%3D%20Math.PI%20%2F%202%0A%20%20%20%20%20%20%20%20%20%20%20%20model.rotation.y%20%3D%20(1.08%20*%20Math.PI)%20%2F%202%0A%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20engine.add(model)%0A%20%20%20%20%20%20%20%20%20%20%2F%2F%20%E6%A8%A1%E5%9E%8B%E6%B7%BB%E5%8A%A0%E7%82%B9%E5%87%BB%E4%BA%8B%E4%BB%B6%0A%20%20%20%20%20%20%20%20%20%20engine.event.markEventProxy(model)%0A%20%20%20%20%20%20%20%20%20%20engine.event.bind(model%2C%20'click'%2C%20(e)%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20alert('%E7%82%B9%E5%87%BB%E4%BA%86%20'%20%2B%20model.userData.info)%0A%20%20%20%20%20%20%20%20%20%20%7D)%0A%20%20%20%20%20%20%20%20%7D)%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D)%0A%20%20%7D%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E6%B8%B2%E6%9F%93%203d%20%E6%A8%A1%E5%9E%8B%E5%B9%B6%E7%BB%91%E5%AE%9A%E4%BA%8B%E4%BB%B6%3C%2Fp%3E%0A"},{default:t(()=>[h]),_:1})])}const _=E(i,[["render",d]]);export{w as __pageData,_ as default}; diff --git a/assets/zh-CN_guide_breaking-changes.md.BfxDBOML.js b/assets/zh-CN_guide_breaking-changes.md.BfxDBOML.js new file mode 100644 index 00000000..c808f974 --- /dev/null +++ b/assets/zh-CN_guide_breaking-changes.md.BfxDBOML.js @@ -0,0 +1 @@ +import{_ as e,c as a,o as t,al as r}from"./chunks/framework.n6hqIsqL.js";const p=JSON.parse('{"title":"Breaking Changes","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/guide/breaking-changes.md","filePath":"zh-CN/guide/breaking-changes.md","lastUpdated":1724785300000}'),n={name:"zh-CN/guide/breaking-changes.md"},s=r('

Breaking Changes

v1 to v2

所有组件名字增加 B 前缀,避免与其他组件库冲突 #24

',3),o=[s];function i(c,h,_,d,g,l){return t(),a("div",null,o)}const k=e(n,[["render",i]]);export{p as __pageData,k as default}; diff --git a/assets/zh-CN_guide_breaking-changes.md.BfxDBOML.lean.js b/assets/zh-CN_guide_breaking-changes.md.BfxDBOML.lean.js new file mode 100644 index 00000000..ed46e81c --- /dev/null +++ b/assets/zh-CN_guide_breaking-changes.md.BfxDBOML.lean.js @@ -0,0 +1 @@ +import{_ as e,c as a,o as t,al as r}from"./chunks/framework.n6hqIsqL.js";const p=JSON.parse('{"title":"Breaking Changes","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/guide/breaking-changes.md","filePath":"zh-CN/guide/breaking-changes.md","lastUpdated":1724785300000}'),n={name:"zh-CN/guide/breaking-changes.md"},s=r("",3),o=[s];function i(c,h,_,d,g,l){return t(),a("div",null,o)}const k=e(n,[["render",i]]);export{p as __pageData,k as default}; diff --git a/assets/zh-CN_guide_com-events.md.D6sVTlpx.js b/assets/zh-CN_guide_com-events.md.D6sVTlpx.js new file mode 100644 index 00000000..f4e3407f --- /dev/null +++ b/assets/zh-CN_guide_com-events.md.D6sVTlpx.js @@ -0,0 +1 @@ +import{_ as t,c as e,o as a,al as d}from"./chunks/framework.n6hqIsqL.js";const u=JSON.parse('{"title":"全局组件事件","description":"","frontmatter":{"title":"全局组件事件","lang":"zh-CN"},"headers":[],"relativePath":"zh-CN/guide/com-events.md","filePath":"zh-CN/guide/com-events.md","lastUpdated":1724785300000}'),o={name:"zh-CN/guide/com-events.md"},n=d('

全局组件事件

每个组件都有这两个事件。如果该组件库提供的功能不能满足开发需求,则可以通过initd事件暴露百度地图实例来自由的使用。

事件名说明类型
initd组件初始化后会触发此事件,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会触发此事件-
',3),c=[n];function r(s,i,_,h,l,m){return a(),e("div",null,c)}const f=t(o,[["render",r]]);export{u as __pageData,f as default}; diff --git a/assets/zh-CN_guide_com-events.md.D6sVTlpx.lean.js b/assets/zh-CN_guide_com-events.md.D6sVTlpx.lean.js new file mode 100644 index 00000000..6ff65ce8 --- /dev/null +++ b/assets/zh-CN_guide_com-events.md.D6sVTlpx.lean.js @@ -0,0 +1 @@ +import{_ as t,c as e,o as a,al as d}from"./chunks/framework.n6hqIsqL.js";const u=JSON.parse('{"title":"全局组件事件","description":"","frontmatter":{"title":"全局组件事件","lang":"zh-CN"},"headers":[],"relativePath":"zh-CN/guide/com-events.md","filePath":"zh-CN/guide/com-events.md","lastUpdated":1724785300000}'),o={name:"zh-CN/guide/com-events.md"},n=d("",3),c=[n];function r(s,i,_,h,l,m){return a(),e("div",null,c)}const f=t(o,[["render",r]]);export{u as __pageData,f as default}; diff --git a/assets/zh-CN_guide_config.md.CWKE5CPM.js b/assets/zh-CN_guide_config.md.CWKE5CPM.js new file mode 100644 index 00000000..54fb4df2 --- /dev/null +++ b/assets/zh-CN_guide_config.md.CWKE5CPM.js @@ -0,0 +1,38 @@ +import{_ as n,c as l,j as s,I as a,al as t,a as e,D as h,o as p}from"./chunks/framework.n6hqIsqL.js";const ls=JSON.parse('{"title":"配置","description":"","frontmatter":{"title":"配置","lang":"zh-CN"},"headers":[],"relativePath":"zh-CN/guide/config.md","filePath":"zh-CN/guide/config.md","lastUpdated":1724785300000}'),k={name:"zh-CN/guide/config.md"},d=t('

配置

本章节将为你讲述如何配置 ak、apiUrl 与插件以及更换资源链接,并实现一个自定义插件

配置方式

目前支持两种方式,全局配置和组件 props 传入

TIP

如果你是全局注册使用方式,那么akapiUrlpluginspluginsSourceLink 都支持两种来源(全局注册配置和组件 props 提供),当同时指定的时候,会优先就近原则,从组件 props 中获取。如果全局注册配置和组件 props 都提供了,则会尝试合并两个配置。

如果你是按需加载使用方式,则只支持组件 props 方式

1. 通过全局注册配置 ak 与 插件

全局注册 Options

',7),r={tabindex:"0"},o=s("thead",null,[s("tr",null,[s("th",null,"属性"),s("th",null,"说明"),s("th",null,"类型"),s("th",null,"可选值"),s("th",null,"默认值"),s("th",null,"版本")])],-1),c=s("tr",null,[s("td",null,"ak"),s("td",null,[e("百度地图 "),s("a",{href:"./../guide/quick-start#申请-ak-密钥"},"ak")]),s("td",null,[s("code",null,"string")]),s("td",null,"-"),s("td",null,"-"),s("td",null,"-")],-1),E=s("td",null,"apiUrl",-1),g=s("td",null,"自建地图 api 资源地址(一般用于离线地图)",-1),u=s("td",null,[s("code",null,"string")],-1),y=s("td",null,"-",-1),_=s("td",null,"-",-1),F=s("tr",null,[s("td",null,"plugins"),s("td",null,"需要注册的插件"),s("td",null,[s("a",{href:"#扩展插件-plugins"},[s("code",null,"PluginId[]")])]),s("td",null,"-"),s("td",null,"-"),s("td",null,"-")],-1),b=s("tr",null,[s("td",null,"pluginsSourceLink"),s("td",null,[s("a",{href:"#更换插件资源链接"},"自定义插件资源地址")]),s("td",null,[s("code",null,"Record")]),s("td",null,"-"),s("td",null,"-"),s("td",null,"-")],-1),m=t(`
ts
import { createApp } from 'vue'
+import App from './App.vue'
+import baiduMap from 'vue3-baidu-map-gl'
+
+const app = createApp(App)
+app.use(baiduMap, {
+  ak: '百度地图ak',
+  plugins: ['TrackAnimation']
+})
+app.mount('#app')

2. 组件 BMap 传入 props 配置

html
<BMap
+  ak='百度地图ak'
+  :plugins="['TrackAnimation']"
+/>

扩展插件 plugins

配置插件,通过 BMap 组件 pluginReady 可获取加载好的插件类

`,5),B={tabindex:"0"},A=s("thead",null,[s("tr",null,[s("th",null,"PluginId"),s("th",null,"插件名称"),s("th",null,"描述"),s("th",null,"版本")])],-1),f=s("tr",null,[s("td",null,[s("a",{href:"https://github.com/huiyan-fe/BMapGLLib?tab=readme-ov-file#%E8%A7%86%E8%A7%92%E8%BD%A8%E8%BF%B9%E5%8A%A8%E7%94%BB",target:"_blank",rel:"noreferrer"},"TrackAnimation")]),s("td",null,"视角轨迹动画"),s("td",null,"TrackAnimation 类提供视角轨迹动画展示效果。"),s("td")],-1),C=s("tr",null,[s("td",null,"Mapvgl"),s("td"),s("td",null,"-"),s("td")],-1),v=s("tr",null,[s("td",null,"MapvglThreeLayers"),s("td"),s("td",null,"-"),s("td")],-1),D=s("tr",null,[s("td",null,"Mapv"),s("td"),s("td",null,"-"),s("td")],-1),T=s("tr",null,[s("td",null,"MapvThree"),s("td"),s("td",null,"-"),s("td")],-1),x=s("td",null,[s("a",{href:"https://github.com/huiyan-fe/BMapGLLib?tab=readme-ov-file",target:"_blank",rel:"noreferrer"},"DrawingManager")],-1),M=s("td",null,"鼠标绘制工具条库",-1),P=s("td",null,"提供鼠标绘制点、线、面、多边形(矩形、圆)的编辑工具条的开源代码库。",-1),L=s("td",null,[s("a",{href:"https://github.com/huiyan-fe/BMapGLLib?tab=readme-ov-file#%E6%B5%8B%E8%B7%9D%E5%B7%A5%E5%85%B7",target:"_blank",rel:"noreferrer"},"DistanceTool")],-1),q=s("td",null,"测距工具",-1),S=s("td",null,"测距工具类",-1),N=s("td",null,[s("a",{href:"https://github.com/huiyan-fe/BMapGLLib?tab=readme-ov-file#%E5%87%A0%E4%BD%95%E8%BF%90%E7%AE%97",target:"_blank",rel:"noreferrer"},"GeoUtils")],-1),I=s("td",null,"几何运算",-1),V=s("td",null,"提供若干几何算法",-1),G=s("td",null,[s("a",{href:"https://github.com/huiyan-fe/BMapGLLib?tab=readme-ov-file#%E5%8C%BA%E5%9F%9F%E9%99%90%E5%88%B6",target:"_blank",rel:"noreferrer"},"AreaRestriction")],-1),R=s("td",null,"区域限制",-1),z=s("td",null,"浏览区域限制类",-1),U=s("td",null,[s("a",{href:"https://github.com/huiyan-fe/BMapGLLib?tab=readme-ov-file#%E8%87%AA%E5%AE%9A%E4%B9%89%E4%BF%A1%E6%81%AF%E7%AA%97%E5%8F%A3",target:"_blank",rel:"noreferrer"},"InfoBox")],-1),w=s("td",null,"自定义信息窗口",-1),$=s("td",null,"类似于 infoWindow,比 infoWindow 更有灵活性,比如可以定制 border,关闭按钮样式等。",-1),O=s("td",null,[s("a",{href:"https://github.com/huiyan-fe/BMapGLLib?tab=readme-ov-file#%E5%AF%8C%E6%A0%87%E6%B3%A8",target:"_blank",rel:"noreferrer"},"RichMarker")],-1),W=s("td",null,"富标注",-1),j=s("td",null,"富 Marker 类",-1),J=s("td",null,[s("a",{href:"https://github.com/huiyan-fe/BMapGLLib?tab=readme-ov-file#%E8%B7%AF%E4%B9%A6",target:"_blank",rel:"noreferrer"},"LuShu")],-1),H=s("td",null,"路书",-1),K=s("td",null,"路书类,实现 Marker 沿路线运动",-1),Q=t(`

更换插件资源链接

如果需要自建或其他地址的资源链接,则可以通过该方式自定义。同样,该方式也支持两种形式:

ts
// ...
+app.use(baiduMap, {
+  plugins: ['TrackAnimation'],
+  pluginsSourceLink: {
+    TrackAnimation: '自建或其他地址的资源链接'
+  }
+})
+// ...

或者

html
<BMap
+  :plugins=['TrackAnimation']
+  :pluginsSourceLink="{
+    TrackAnimation: '自建或其他地址的资源链接'
+  }"
+/>

自定义资源加载插件

除了提供的插件外,你还可以通过自定义插件扩展,自定义的插件将在地图加载完毕后执行与处理。

自定义的方式也很简单,你只需定义一个返回Promise的函数即可

ts
const customPlugin = () => {
+  return new Promise((resolve) => {
+    console.log('自定义插件')
+    // 加载相关资源
+    // 加载完成后可 resolve 一个对象, 插件名和插件所导出的类, 便于通过 pluginRead 更好的访问
+    resolve({
+      // [pluginName]: pluginClass
+    })
+  })
+}

使用的方式同样也有两种:

ts
// ...
+app.use(baiduMap, {
+  plugins: [customPlugin]
+})
+// ...

或者

html
<BMap :plugins="[customPlugin]" />
`,13);function X(Y,Z,ss,is,as,ts){const i=h("Badge");return p(),l("div",null,[d,s("table",r,[o,s("tbody",null,[c,s("tr",null,[E,g,u,y,_,s("td",null,[a(i,{type:"tip",text:"^2.3.0"})])]),F,b])]),m,s("table",B,[A,s("tbody",null,[f,C,v,D,T,s("tr",null,[x,M,P,s("td",null,[a(i,{type:"tip",text:"^2.5.0"})])]),s("tr",null,[L,q,S,s("td",null,[a(i,{type:"tip",text:"^2.5.0"})])]),s("tr",null,[N,I,V,s("td",null,[a(i,{type:"tip",text:"^2.5.0"})])]),s("tr",null,[G,R,z,s("td",null,[a(i,{type:"tip",text:"^2.5.0"})])]),s("tr",null,[U,w,$,s("td",null,[a(i,{type:"tip",text:"^2.5.0"})])]),s("tr",null,[O,W,j,s("td",null,[a(i,{type:"tip",text:"^2.5.0"})])]),s("tr",null,[J,H,K,s("td",null,[a(i,{type:"tip",text:"^2.5.0"})])])])]),Q])}const es=n(k,[["render",X]]);export{ls as __pageData,es as default}; diff --git a/assets/zh-CN_guide_config.md.CWKE5CPM.lean.js b/assets/zh-CN_guide_config.md.CWKE5CPM.lean.js new file mode 100644 index 00000000..63945d37 --- /dev/null +++ b/assets/zh-CN_guide_config.md.CWKE5CPM.lean.js @@ -0,0 +1 @@ +import{_ as n,c as l,j as s,I as a,al as t,a as e,D as h,o as p}from"./chunks/framework.n6hqIsqL.js";const ls=JSON.parse('{"title":"配置","description":"","frontmatter":{"title":"配置","lang":"zh-CN"},"headers":[],"relativePath":"zh-CN/guide/config.md","filePath":"zh-CN/guide/config.md","lastUpdated":1724785300000}'),k={name:"zh-CN/guide/config.md"},d=t("",7),r={tabindex:"0"},o=s("thead",null,[s("tr",null,[s("th",null,"属性"),s("th",null,"说明"),s("th",null,"类型"),s("th",null,"可选值"),s("th",null,"默认值"),s("th",null,"版本")])],-1),c=s("tr",null,[s("td",null,"ak"),s("td",null,[e("百度地图 "),s("a",{href:"./../guide/quick-start#申请-ak-密钥"},"ak")]),s("td",null,[s("code",null,"string")]),s("td",null,"-"),s("td",null,"-"),s("td",null,"-")],-1),E=s("td",null,"apiUrl",-1),g=s("td",null,"自建地图 api 资源地址(一般用于离线地图)",-1),u=s("td",null,[s("code",null,"string")],-1),y=s("td",null,"-",-1),_=s("td",null,"-",-1),F=s("tr",null,[s("td",null,"plugins"),s("td",null,"需要注册的插件"),s("td",null,[s("a",{href:"#扩展插件-plugins"},[s("code",null,"PluginId[]")])]),s("td",null,"-"),s("td",null,"-"),s("td",null,"-")],-1),b=s("tr",null,[s("td",null,"pluginsSourceLink"),s("td",null,[s("a",{href:"#更换插件资源链接"},"自定义插件资源地址")]),s("td",null,[s("code",null,"Record")]),s("td",null,"-"),s("td",null,"-"),s("td",null,"-")],-1),m=t("",5),B={tabindex:"0"},A=s("thead",null,[s("tr",null,[s("th",null,"PluginId"),s("th",null,"插件名称"),s("th",null,"描述"),s("th",null,"版本")])],-1),f=s("tr",null,[s("td",null,[s("a",{href:"https://github.com/huiyan-fe/BMapGLLib?tab=readme-ov-file#%E8%A7%86%E8%A7%92%E8%BD%A8%E8%BF%B9%E5%8A%A8%E7%94%BB",target:"_blank",rel:"noreferrer"},"TrackAnimation")]),s("td",null,"视角轨迹动画"),s("td",null,"TrackAnimation 类提供视角轨迹动画展示效果。"),s("td")],-1),C=s("tr",null,[s("td",null,"Mapvgl"),s("td"),s("td",null,"-"),s("td")],-1),v=s("tr",null,[s("td",null,"MapvglThreeLayers"),s("td"),s("td",null,"-"),s("td")],-1),D=s("tr",null,[s("td",null,"Mapv"),s("td"),s("td",null,"-"),s("td")],-1),T=s("tr",null,[s("td",null,"MapvThree"),s("td"),s("td",null,"-"),s("td")],-1),x=s("td",null,[s("a",{href:"https://github.com/huiyan-fe/BMapGLLib?tab=readme-ov-file",target:"_blank",rel:"noreferrer"},"DrawingManager")],-1),M=s("td",null,"鼠标绘制工具条库",-1),P=s("td",null,"提供鼠标绘制点、线、面、多边形(矩形、圆)的编辑工具条的开源代码库。",-1),L=s("td",null,[s("a",{href:"https://github.com/huiyan-fe/BMapGLLib?tab=readme-ov-file#%E6%B5%8B%E8%B7%9D%E5%B7%A5%E5%85%B7",target:"_blank",rel:"noreferrer"},"DistanceTool")],-1),q=s("td",null,"测距工具",-1),S=s("td",null,"测距工具类",-1),N=s("td",null,[s("a",{href:"https://github.com/huiyan-fe/BMapGLLib?tab=readme-ov-file#%E5%87%A0%E4%BD%95%E8%BF%90%E7%AE%97",target:"_blank",rel:"noreferrer"},"GeoUtils")],-1),I=s("td",null,"几何运算",-1),V=s("td",null,"提供若干几何算法",-1),G=s("td",null,[s("a",{href:"https://github.com/huiyan-fe/BMapGLLib?tab=readme-ov-file#%E5%8C%BA%E5%9F%9F%E9%99%90%E5%88%B6",target:"_blank",rel:"noreferrer"},"AreaRestriction")],-1),R=s("td",null,"区域限制",-1),z=s("td",null,"浏览区域限制类",-1),U=s("td",null,[s("a",{href:"https://github.com/huiyan-fe/BMapGLLib?tab=readme-ov-file#%E8%87%AA%E5%AE%9A%E4%B9%89%E4%BF%A1%E6%81%AF%E7%AA%97%E5%8F%A3",target:"_blank",rel:"noreferrer"},"InfoBox")],-1),w=s("td",null,"自定义信息窗口",-1),$=s("td",null,"类似于 infoWindow,比 infoWindow 更有灵活性,比如可以定制 border,关闭按钮样式等。",-1),O=s("td",null,[s("a",{href:"https://github.com/huiyan-fe/BMapGLLib?tab=readme-ov-file#%E5%AF%8C%E6%A0%87%E6%B3%A8",target:"_blank",rel:"noreferrer"},"RichMarker")],-1),W=s("td",null,"富标注",-1),j=s("td",null,"富 Marker 类",-1),J=s("td",null,[s("a",{href:"https://github.com/huiyan-fe/BMapGLLib?tab=readme-ov-file#%E8%B7%AF%E4%B9%A6",target:"_blank",rel:"noreferrer"},"LuShu")],-1),H=s("td",null,"路书",-1),K=s("td",null,"路书类,实现 Marker 沿路线运动",-1),Q=t("",13);function X(Y,Z,ss,is,as,ts){const i=h("Badge");return p(),l("div",null,[d,s("table",r,[o,s("tbody",null,[c,s("tr",null,[E,g,u,y,_,s("td",null,[a(i,{type:"tip",text:"^2.3.0"})])]),F,b])]),m,s("table",B,[A,s("tbody",null,[f,C,v,D,T,s("tr",null,[x,M,P,s("td",null,[a(i,{type:"tip",text:"^2.5.0"})])]),s("tr",null,[L,q,S,s("td",null,[a(i,{type:"tip",text:"^2.5.0"})])]),s("tr",null,[N,I,V,s("td",null,[a(i,{type:"tip",text:"^2.5.0"})])]),s("tr",null,[G,R,z,s("td",null,[a(i,{type:"tip",text:"^2.5.0"})])]),s("tr",null,[U,w,$,s("td",null,[a(i,{type:"tip",text:"^2.5.0"})])]),s("tr",null,[O,W,j,s("td",null,[a(i,{type:"tip",text:"^2.5.0"})])]),s("tr",null,[J,H,K,s("td",null,[a(i,{type:"tip",text:"^2.5.0"})])])])]),Q])}const es=n(k,[["render",X]]);export{ls as __pageData,es as default}; diff --git a/assets/zh-CN_guide_faq.md.DLloHY_Y.js b/assets/zh-CN_guide_faq.md.DLloHY_Y.js new file mode 100644 index 00000000..186266ec --- /dev/null +++ b/assets/zh-CN_guide_faq.md.DLloHY_Y.js @@ -0,0 +1 @@ +import{_ as e,c as a,o as t,al as r}from"./chunks/framework.n6hqIsqL.js";const _=JSON.parse('{"title":"FAQ","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/guide/faq.md","filePath":"zh-CN/guide/faq.md","lastUpdated":1724785300000}'),n={name:"zh-CN/guide/faq.md"},o=r('

FAQ

是否支持 vue2

该组件库是完全基于 vue3 语法设计,目前只支持 vue3.x,vue2.x 用户请移步 vue-baidu-map

Uncaught TypeError: Cannot read properties of undefined (reading 'getMapInstance')

尝试将 vite 升级 v4 以上

服务器打包部署后地图不显示

尝试将 vite 升级 v4 以上

',7),i=[o];function d(s,c,u,p,h,f){return t(),a("div",null,i)}const g=e(n,[["render",d]]);export{_ as __pageData,g as default}; diff --git a/assets/zh-CN_guide_faq.md.DLloHY_Y.lean.js b/assets/zh-CN_guide_faq.md.DLloHY_Y.lean.js new file mode 100644 index 00000000..0ff65fca --- /dev/null +++ b/assets/zh-CN_guide_faq.md.DLloHY_Y.lean.js @@ -0,0 +1 @@ +import{_ as e,c as a,o as t,al as r}from"./chunks/framework.n6hqIsqL.js";const _=JSON.parse('{"title":"FAQ","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/guide/faq.md","filePath":"zh-CN/guide/faq.md","lastUpdated":1724785300000}'),n={name:"zh-CN/guide/faq.md"},o=r("",7),i=[o];function d(s,c,u,p,h,f){return t(),a("div",null,i)}const g=e(n,[["render",d]]);export{_ as __pageData,g as default}; diff --git a/assets/zh-CN_guide_installation.md.CE9TKwIt.js b/assets/zh-CN_guide_installation.md.CE9TKwIt.js new file mode 100644 index 00000000..48429846 --- /dev/null +++ b/assets/zh-CN_guide_installation.md.CE9TKwIt.js @@ -0,0 +1,13 @@ +import{_ as e,c as l,j as s,a as i,I as n,al as a,D as p,o as h}from"./chunks/framework.n6hqIsqL.js";const C=JSON.parse('{"title":"安装","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/guide/installation.md","filePath":"zh-CN/guide/installation.md","lastUpdated":1724785300000}'),d={name:"zh-CN/guide/installation.md"},k=a('

安装

使用包管理器

我们建议您使用包管理器(如 NPM、Yarn 或 pnpm)安装 Vue3 BaiduMap GL,然后您就可以使用打包工具,例如 Vite 或 webpack。

bash
pnpm add vue3-baidu-map-gl
bash
yarn add vue3-baidu-map-gl
bash
npm install vue3-baidu-map-gl
',4),r={id:"浏览器直接引入",tabindex:"-1"},o=s("a",{class:"header-anchor",href:"#浏览器直接引入","aria-label":'Permalink to "浏览器直接引入 "'},"​",-1),c=a(`

直接通过浏览器的 HTML 标签导入 Vue3 BaiduMap GL,然后就可以使用全局变量 Vue3baiduMapGl 了。

不同的 CDN 提供商有不同的引入方式, 我们在这里以 unpkgjsDelivr 举例。 你也可以使用其它的 CDN 供应商。

html
<head>
+  <meta charset="utf-8" />
+  <!-- Import Vue3 -->
+  <script src="https://unpkg.com/vue@3"></script>
+  <!-- Import Vue3 BaiduMap GL -->
+  <!-- Would use latest version, you'd better specify a version -->
+  <script src="https://unpkg.com/vue3-baidu-map-gl"></script>
+</head>
html
<head>
+  <!-- Import Vue 3 -->
+  <script src="https//cdn.jsdelivr.net/npm/vue@3"></script>
+  <!-- Import Vue3 BaiduMap GL -->
+  <script src="https://cdn.jsdelivr.net/npm/vue3-baidu-map-gl"></script>
+</head>

提示

我们建议使用 CDN 引入 Vue3 BaiduMap GL 的用户在链接地址上锁定版本,以免将来 Vue3BaiduMapGL 升级时受到非兼容性更新的影响

Hello World

在线演示

`,6),g=s("iframe",{allow:"accelerometer; camera; encrypted-media; display-capture; geolocation; gyroscope; microphone; midi; clipboard-read; clipboard-write;",allowfullscreen:"true",allowpaymentrequest:"true",height:"500",style:{width:"100%"},scrolling:"no",title:"Vue3 BaiduMap GL",src:"https://codepen.io/yue1123/embed/oNyQWeP?default-tab=html%2Cresult&theme-id=light",frameborder:"no",loading:"lazy"},null,-1);function E(u,y,b,m,v,_){const t=p("Badge");return h(),l("div",null,[k,s("h2",r,[i("浏览器直接引入 "),n(t,{type:"tip",text:"^0.0.21"}),i(),o]),c,g])}const D=e(d,[["render",E]]);export{C as __pageData,D as default}; diff --git a/assets/zh-CN_guide_installation.md.CE9TKwIt.lean.js b/assets/zh-CN_guide_installation.md.CE9TKwIt.lean.js new file mode 100644 index 00000000..e740d830 --- /dev/null +++ b/assets/zh-CN_guide_installation.md.CE9TKwIt.lean.js @@ -0,0 +1 @@ +import{_ as e,c as l,j as s,a as i,I as n,al as a,D as p,o as h}from"./chunks/framework.n6hqIsqL.js";const C=JSON.parse('{"title":"安装","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/guide/installation.md","filePath":"zh-CN/guide/installation.md","lastUpdated":1724785300000}'),d={name:"zh-CN/guide/installation.md"},k=a("",4),r={id:"浏览器直接引入",tabindex:"-1"},o=s("a",{class:"header-anchor",href:"#浏览器直接引入","aria-label":'Permalink to "浏览器直接引入 "'},"​",-1),c=a("",6),g=s("iframe",{allow:"accelerometer; camera; encrypted-media; display-capture; geolocation; gyroscope; microphone; midi; clipboard-read; clipboard-write;",allowfullscreen:"true",allowpaymentrequest:"true",height:"500",style:{width:"100%"},scrolling:"no",title:"Vue3 BaiduMap GL",src:"https://codepen.io/yue1123/embed/oNyQWeP?default-tab=html%2Cresult&theme-id=light",frameborder:"no",loading:"lazy"},null,-1);function E(u,y,b,m,v,_){const t=p("Badge");return h(),l("div",null,[k,s("h2",r,[i("浏览器直接引入 "),n(t,{type:"tip",text:"^0.0.21"}),i(),o]),c,g])}const D=e(d,[["render",E]]);export{C as __pageData,D as default}; diff --git a/assets/zh-CN_guide_introduction.md.BFOZaG2g.js b/assets/zh-CN_guide_introduction.md.BFOZaG2g.js new file mode 100644 index 00000000..9294e88f --- /dev/null +++ b/assets/zh-CN_guide_introduction.md.BFOZaG2g.js @@ -0,0 +1 @@ +import{V as u}from"./chunks/theme.-bEKLWFY.js";import{d as c,s as l,c as o,b as m,k as h,al as g,j as a,a as b,o as t}from"./chunks/framework.n6hqIsqL.js";const f=g('

Vue3 BaiduMap Gl

GitHub package.json version (subfolder of monorepo)npmGitHub Repo starsGitHub issuesGitHub closed issues

基于百度地图 JavaScript GL 版(使用了 WebGL 对地图、覆盖物等进行渲染,支持 3D 视角展示地图) API 封装设计的 Vue3 组件库,开发体验良好,以优雅的方式完成百度地图的接入。

✨ 特性

  • 🚀 自动加载百度地图 SDK,将百度地图繁琐的 Api 封装进组件,你只需关注组件本身
  • 📦 20+ 高质量的开箱即用 Vue 3 组件以及 8+ hooks 封装
  • 📐 遵循直觉的、简约的 Api 设计
  • ⚡ Composition Api,更好的性能
  • 🔨 完整的 TypeScript 支持,更好的体验
  • 🧩 tree shaking 支持,模块分包,只打包你想要的的
  • 🌏 基于百度地图 Gl 版 SDK,通过 WebGL 对地图、覆盖物等进行渲染,支持 3D 视角展示地图
  • 🚀 支持 volar,组件提供完善的代码提示

环境支持

组件库

Vue3 BaiduMap GL 可以在支持 ES2018 的浏览器上运行。 如果您确实需要支持旧版本的浏览器,请自行添加 Babel 和相应的 Polyfill 。

由于 Vue 3 不再支持 IE11,该组件库是基于 Vue3 封装,自然也不再支持 IE 浏览器。

IEFirefoxChromeSafari
Edge ≥ 79Firefox ≥ 78Chrome ≥ 64Safari ≥ 12

Baidu Map GL Api 兼容性

JavaScript API GL v1.0 基于 WebGL 开发,对于用户的浏览器环境有兼容性要求。需要完整支持 WebGL 的现代浏览器来支持渲染。对于 WebGL 支持欠佳的浏览器会降级为 Canvas 绘制,若仍然存在兼容性问题,则会降级到瓦片图渲染,确保不同浏览器环境的用户都可以完成地图的基本渲染。

贡献者

',13),v={key:0},k=a("h2",{id:"license",tabindex:"-1"},[b("License "),a("a",{class:"header-anchor",href:"#license","aria-label":'Permalink to "License"'},"​")],-1),_=a("p",null,[a("a",{href:"https://opensource.org/licenses/MIT",target:"_blank",rel:"noreferrer"},"MIT licenses")],-1),y=JSON.parse('{"title":"Vue3 BaiduMap Gl","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/guide/introduction.md","filePath":"zh-CN/guide/introduction.md","lastUpdated":1724785300000}'),x={name:"zh-CN/guide/introduction.md"},L=c({...x,setup(j){const i=l([]),s=l(!0);return fetch("https://api.github.com/repos/yue1123/vue3-baidu-map-gl/contributors?anon=1").then(e=>e.json()).then(e=>{s.value=!1,i.value=e.map(({avatar_url:r,login:n,html_url:d},p)=>({avatar:r,name:n,title:p===0?"Creator":"Contributor",links:[{icon:"github",link:d}]}))}),(e,r)=>(t(),o("div",null,[f,s.value?(t(),o("div",v,"Loading Contributors...")):(t(),m(h(u),{key:1,size:"small",members:i.value},null,8,["members"])),k,_]))}});export{y as __pageData,L as default}; diff --git a/assets/zh-CN_guide_introduction.md.BFOZaG2g.lean.js b/assets/zh-CN_guide_introduction.md.BFOZaG2g.lean.js new file mode 100644 index 00000000..9294e88f --- /dev/null +++ b/assets/zh-CN_guide_introduction.md.BFOZaG2g.lean.js @@ -0,0 +1 @@ +import{V as u}from"./chunks/theme.-bEKLWFY.js";import{d as c,s as l,c as o,b as m,k as h,al as g,j as a,a as b,o as t}from"./chunks/framework.n6hqIsqL.js";const f=g('

Vue3 BaiduMap Gl

GitHub package.json version (subfolder of monorepo)npmGitHub Repo starsGitHub issuesGitHub closed issues

基于百度地图 JavaScript GL 版(使用了 WebGL 对地图、覆盖物等进行渲染,支持 3D 视角展示地图) API 封装设计的 Vue3 组件库,开发体验良好,以优雅的方式完成百度地图的接入。

✨ 特性

  • 🚀 自动加载百度地图 SDK,将百度地图繁琐的 Api 封装进组件,你只需关注组件本身
  • 📦 20+ 高质量的开箱即用 Vue 3 组件以及 8+ hooks 封装
  • 📐 遵循直觉的、简约的 Api 设计
  • ⚡ Composition Api,更好的性能
  • 🔨 完整的 TypeScript 支持,更好的体验
  • 🧩 tree shaking 支持,模块分包,只打包你想要的的
  • 🌏 基于百度地图 Gl 版 SDK,通过 WebGL 对地图、覆盖物等进行渲染,支持 3D 视角展示地图
  • 🚀 支持 volar,组件提供完善的代码提示

环境支持

组件库

Vue3 BaiduMap GL 可以在支持 ES2018 的浏览器上运行。 如果您确实需要支持旧版本的浏览器,请自行添加 Babel 和相应的 Polyfill 。

由于 Vue 3 不再支持 IE11,该组件库是基于 Vue3 封装,自然也不再支持 IE 浏览器。

IEFirefoxChromeSafari
Edge ≥ 79Firefox ≥ 78Chrome ≥ 64Safari ≥ 12

Baidu Map GL Api 兼容性

JavaScript API GL v1.0 基于 WebGL 开发,对于用户的浏览器环境有兼容性要求。需要完整支持 WebGL 的现代浏览器来支持渲染。对于 WebGL 支持欠佳的浏览器会降级为 Canvas 绘制,若仍然存在兼容性问题,则会降级到瓦片图渲染,确保不同浏览器环境的用户都可以完成地图的基本渲染。

贡献者

',13),v={key:0},k=a("h2",{id:"license",tabindex:"-1"},[b("License "),a("a",{class:"header-anchor",href:"#license","aria-label":'Permalink to "License"'},"​")],-1),_=a("p",null,[a("a",{href:"https://opensource.org/licenses/MIT",target:"_blank",rel:"noreferrer"},"MIT licenses")],-1),y=JSON.parse('{"title":"Vue3 BaiduMap Gl","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/guide/introduction.md","filePath":"zh-CN/guide/introduction.md","lastUpdated":1724785300000}'),x={name:"zh-CN/guide/introduction.md"},L=c({...x,setup(j){const i=l([]),s=l(!0);return fetch("https://api.github.com/repos/yue1123/vue3-baidu-map-gl/contributors?anon=1").then(e=>e.json()).then(e=>{s.value=!1,i.value=e.map(({avatar_url:r,login:n,html_url:d},p)=>({avatar:r,name:n,title:p===0?"Creator":"Contributor",links:[{icon:"github",link:d}]}))}),(e,r)=>(t(),o("div",null,[f,s.value?(t(),o("div",v,"Loading Contributors...")):(t(),m(h(u),{key:1,size:"small",members:i.value},null,8,["members"])),k,_]))}});export{y as __pageData,L as default}; diff --git a/assets/zh-CN_guide_quick-start.md.COKMMbVx.js b/assets/zh-CN_guide_quick-start.md.COKMMbVx.js new file mode 100644 index 00000000..8f40f918 --- /dev/null +++ b/assets/zh-CN_guide_quick-start.md.COKMMbVx.js @@ -0,0 +1,20 @@ +import{_ as n,c as p,j as a,a as s,I as e,al as i,D as l,o as h}from"./chunks/framework.n6hqIsqL.js";const B=JSON.parse('{"title":"快速开始","description":"","frontmatter":{"title":"快速开始","lang":"zh-CN"},"headers":[],"relativePath":"zh-CN/guide/quick-start.md","filePath":"zh-CN/guide/quick-start.md","lastUpdated":1724785300000}'),k={name:"zh-CN/guide/quick-start.md"},r=i(`

快速开始

本节将介绍如何在项目中使用 Vue3 BaiduMap GL。

用法

完整引入

失去 Tree Shaking 的功能,打包有冗余代码。如果你对打包后的文件大小不是很在乎,那么使用完整导入会更方便。

ts
import { createApp } from 'vue'
+import Vue3BaiduMapGL from 'vue3-baidu-map-gl'
+
+const app = createApp(App)
+app.use(Vue3BaiduMapGL)
`,6),d={id:"volar-支持",tabindex:"-1"},o=a("a",{class:"header-anchor",href:"#volar-支持","aria-label":'Permalink to "Volar 支持 "'},"​",-1),E=i(`

如果你在使用 Volar,那么可以在 tsconfig.json 中配置 compilerOptions.types 来指定全局组件类型,从而获得更好的类型提示。如下图:

json
// tsconfig.json
+{
+  "compilerOptions": {
+    // ...
+    "types": ["vue3-baidu-map-gl/volar"]
+  }
+}
`,2),c={id:"按需导入",tabindex:"-1"},g=a("a",{class:"header-anchor",href:"#按需导入","aria-label":'Permalink to "按需导入 "'},"​",-1),u=i(`

Vue3 BaiduMap GL 提供了基于 ES Module 开箱即用的 Tree Shaking 功能。你可以直接导入组件并使用它。这种情况下,只有导入的组件才会被打包。

vue
<template>
+  <BMap>
+    <BZoom />
+    <!-- ... -->
+  </BMap>
+</template>
+
+<script setup lang="ts">
+  import { BMap, BZoom } from 'vue3-baidu-map-gl'
+</script>

申请 ak 密钥

在开始使用前,您还需在百度地图开发者后台申请百度地图 ak 密钥,然后在项目中配置 ak 密钥后,才能正确的渲染地图。详细请阅读下面两个链接的内容:

官方密钥 ak 申请指引

申请开发者密钥 ak

配置

参考配置

开始使用

您可以从现在起启动您的项目。 对于每个组件或 hooks 的用法,请参考对应的文档。

`,9);function y(_,b,m,F,A,C){const t=l("Badge");return h(),p("div",null,[r,a("h4",d,[s("Volar 支持 "),e(t,{type:"tip",text:"^0.0.21"}),s(),o]),E,a("h3",c,[s("按需导入 "),e(t,{type:"tip",text:"推荐"}),s(),g]),u])}const v=n(k,[["render",y]]);export{B as __pageData,v as default}; diff --git a/assets/zh-CN_guide_quick-start.md.COKMMbVx.lean.js b/assets/zh-CN_guide_quick-start.md.COKMMbVx.lean.js new file mode 100644 index 00000000..05e799f0 --- /dev/null +++ b/assets/zh-CN_guide_quick-start.md.COKMMbVx.lean.js @@ -0,0 +1 @@ +import{_ as n,c as p,j as a,a as s,I as e,al as i,D as l,o as h}from"./chunks/framework.n6hqIsqL.js";const B=JSON.parse('{"title":"快速开始","description":"","frontmatter":{"title":"快速开始","lang":"zh-CN"},"headers":[],"relativePath":"zh-CN/guide/quick-start.md","filePath":"zh-CN/guide/quick-start.md","lastUpdated":1724785300000}'),k={name:"zh-CN/guide/quick-start.md"},r=i("",6),d={id:"volar-支持",tabindex:"-1"},o=a("a",{class:"header-anchor",href:"#volar-支持","aria-label":'Permalink to "Volar 支持 "'},"​",-1),E=i("",2),c={id:"按需导入",tabindex:"-1"},g=a("a",{class:"header-anchor",href:"#按需导入","aria-label":'Permalink to "按需导入 "'},"​",-1),u=i("",9);function y(_,b,m,F,A,C){const t=l("Badge");return h(),p("div",null,[r,a("h4",d,[s("Volar 支持 "),e(t,{type:"tip",text:"^0.0.21"}),s(),o]),E,a("h3",c,[s("按需导入 "),e(t,{type:"tip",text:"推荐"}),s(),g]),u])}const v=n(k,[["render",y]]);export{B as __pageData,v as default}; diff --git a/assets/zh-CN_hooks_useAddressGeocoder.md.B-3kHth6.js b/assets/zh-CN_hooks_useAddressGeocoder.md.B-3kHth6.js new file mode 100644 index 00000000..cfcf828c --- /dev/null +++ b/assets/zh-CN_hooks_useAddressGeocoder.md.B-3kHth6.js @@ -0,0 +1,17 @@ +import{_ as C,c as o,j as s,a as p,I as a,w as E,al as n,D as e,o as l}from"./chunks/framework.n6hqIsqL.js";const _=JSON.parse('{"title":"useAddressGeocoder","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/hooks/useAddressGeocoder.md","filePath":"zh-CN/hooks/useAddressGeocoder.md","lastUpdated":1724785300000}'),c={name:"zh-CN/hooks/useAddressGeocoder.md"},k={id:"useaddressgeocoder",tabindex:"-1"},F=s("a",{class:"header-anchor",href:"#useaddressgeocoder","aria-label":'Permalink to "useAddressGeocoder "'},"​",-1),u=n('

通过地址解析坐标点

ts
import { useAddressGeocoder } from 'vue3-baidu-map-gl'

单个地址解析

使用地址字符串作为 get 方法参数解析单个地址

',4),D=s("p",null,"hooks/useAddressGeocoder/index",-1),r=n(`

TIP

在 Ts 中使用单个解析地址时,使用泛型Point内部可推断point为可推断为Point,从而避免读取值时 ts 的报错。

ts
import { Point } from 'vue3-baidu-map-gl'
+const { point } = useAddressGeocoder<Point>()

批量解析地址

使用地址字符串数组作为 get 方法参数批量解析地址

`,3),d=s("p",null,"hooks/useAddressGeocoder/batch",-1),A=n(`

TIP

在 Ts 中使用批量解析地址时,使用泛型Point[]内部可推断point为可推断为Point[],从而避免遍历时 ts 的报错。

ts
import { Point } from 'vue3-baidu-map-gl'
+const { point: points } = useAddressGeocoder<Point[]>()

用法

ts
const { get, point, isLoading, isEmpty } = useAddressGeocoder(cal)

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 get 方法后数据才可用

参数

参数描述类型默认值
cal定位成功后的回调函数(point: Ref<Point | Point[] | null | undefined>) => void-

返回值

返回值描述类型
isLoading是否在获取中boolean
isEmpty是否有解析结果。批量解析时,所有地址都未解析到正确坐标点,该值才为falseboolean
point地址解析出来的坐标点。批量解析地址时,point 为数组。Ref<Point | Point[] | null | undefined>
get获取地址到坐标点方法,需要在Map组件initd事件触发后才可调用;参数 address表示要解析的地址,可以传数组一次解析多个地址;city表示地址所属的城市(address: string | string[], city: string) => void

Point

ts
type Point = { lng: number; lat: number }

TS 类型定义参考

ts
import { Ref } from 'vue'
+import { type Point } from 'vue3-baidu-map-gl'
+
+export declare type AddressGeocoderResult = Point | Point[]
+/**
+ * 由地址解析坐标点
+ */
+export declare function useAddressGeocoder<T extends AddressGeocoderResult = AddressGeocoderResult>(
+  cal?: (point: Ref<T>) => void
+): {
+  get: (address: T extends Point ? string : string[], city: string) => void
+  point: Ref<T | null | undefined>
+  isLoading: Ref<boolean>
+  isEmpty: Ref<boolean>
+}
`,12);function h(B,g,y,m,v,b){const i=e("Badge"),t=e("Demo");return l(),o("div",null,[s("h1",k,[p("useAddressGeocoder "),a(i,{type:"tip",text:"^0.0.39"}),p(),F]),u,a(t,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%E9%80%89%E6%8B%A9%E5%9C%B0%E5%9D%80%E8%A7%A3%E6%9E%90%3A%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eselect%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EcurrentAddress%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-for%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eitem%20in%20addressList%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Avalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eitem%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%7B%7B%20item.address%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eselect%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estate%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!isLoading%20%26amp%3B%26amp%3B%20!isEmpty%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eh5%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E8%A7%A3%E6%9E%90%E7%BB%93%E6%9E%9C%3A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eh5%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BA%AC%E5%BA%A6%20-%20%7B%7B%20point%3F.lat%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BB%8F%E5%BA%A6%20-%20%7B%7B%20point%3F.lng%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estate%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-else-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EisEmpty%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E6%B2%A1%E6%9C%89%E8%A7%A3%E6%9E%90%E5%88%B0%E7%BB%93%E6%9E%9C%20%EF%BC%81%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estate%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-else%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E8%A7%A3%E6%9E%90%E4%B8%AD...%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Emap%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epoint%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!isLoading%20%26amp%3B%26amp%3B%20!isEmpty%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epoint%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMarker%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20watch%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20useAddressGeocoder%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20Point%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20map%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20addressList%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eaddress%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%8C%97%E4%BA%AC%E5%B8%82%E6%B5%B7%E6%B7%80%E5%8C%BA%E4%B8%8A%E5%9C%B010%E8%A1%97'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%8C%97%E4%BA%AC%E5%B8%82'%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eaddress%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%8C%97%E4%BA%AC%E5%B8%82%E6%B5%B7%E6%B7%80%E5%8C%BA%E6%B5%B7%E6%B7%80%E4%B8%89%E5%B1%B1%E4%BA%94%E5%9B%AD%E7%BB%BF%E9%81%93'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%8C%97%E4%BA%AC%E5%B8%82'%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eaddress%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%8C%97%E4%BA%AC%E5%B8%82%E4%B8%9C%E5%9F%8E%E5%8C%BA%E5%A4%A9%E5%AE%89%E9%97%A8%E4%B8%9C%E9%80%9A%E9%81%93'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%8C%97%E4%BA%AC%E5%B8%82'%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20currentAddress%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3EaddressList%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20function%22%3Ewatch%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20currentAddress%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3En%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Eget%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3En%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eaddress%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20n%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Ecity%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Edeep%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20get%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20point%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20isLoading%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20isEmpty%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20useAddressGeocoder%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3EPoint%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20map%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EresetCenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Eget%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3EcurrentAddress%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eaddress%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20currentAddress%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Ecity%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20style%22%3E%3Cspan%20class%3D%22token%20language-css%22%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.state%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-top%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2015px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.state%20span%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-right%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2025px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"hooks/useAddressGeocoder/index","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%E9%80%89%E6%8B%A9%E5%9C%B0%E5%9D%80%E8%A7%A3%E6%9E%90%3A%0A%20%20%20%20%3Cselect%20class%3D%22mySelect%22%20v-model%3D%22currentAddress%22%3E%0A%20%20%20%20%20%20%3Coption%20v-for%3D%22item%20in%20addressList%22%20%3Avalue%3D%22item%22%3E%7B%7B%20item.address%20%7D%7D%3C%2Foption%3E%0A%20%20%20%20%3C%2Fselect%3E%0A%20%20%20%20%3Cdiv%20class%3D%22state%22%20v-if%3D%22!isLoading%20%26%26%20!isEmpty%22%3E%0A%20%20%20%20%20%20%3Ch5%3E%E8%A7%A3%E6%9E%90%E7%BB%93%E6%9E%9C%3A%3C%2Fh5%3E%0A%20%20%20%20%20%20%3Cspan%3E%E7%BA%AC%E5%BA%A6%20-%20%7B%7B%20point%3F.lat%20%7D%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%3E%E7%BB%8F%E5%BA%A6%20-%20%7B%7B%20point%3F.lng%20%7D%7D%3C%2Fspan%3E%0A%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%3Cdiv%20class%3D%22state%22%20v-else-if%3D%22isEmpty%22%3E%E6%B2%A1%E6%9C%89%E8%A7%A3%E6%9E%90%E5%88%B0%E7%BB%93%E6%9E%9C%20%EF%BC%81%3C%2Fdiv%3E%0A%20%20%20%20%3Cdiv%20class%3D%22state%22%20v-else%3E%E8%A7%A3%E6%9E%90%E4%B8%AD...%3C%2Fdiv%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20ref%3D%22map%22%20%3Acenter%3D%22point%22%20%40initd%3D%22handleInitd%22%3E%0A%20%20%20%20%20%20%3Ctemplate%20v-if%3D%22!isLoading%20%26%26%20!isEmpty%22%3E%0A%20%20%20%20%20%20%20%20%3CBMarker%20%3Aposition%3D%22point%22%3E%3C%2FBMarker%3E%0A%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%3C%2FBMap%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20ref%2C%20watch%20%7D%20from%20'vue'%0A%20%20import%20%7B%20useAddressGeocoder%2C%20Point%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20map%20%3D%20ref()%0A%20%20const%20addressList%20%3D%20ref(%5B%0A%20%20%20%20%7B%0A%20%20%20%20%20%20address%3A%20'%E5%8C%97%E4%BA%AC%E5%B8%82%E6%B5%B7%E6%B7%80%E5%8C%BA%E4%B8%8A%E5%9C%B010%E8%A1%97'%2C%0A%20%20%20%20%20%20city%3A%20'%E5%8C%97%E4%BA%AC%E5%B8%82'%0A%20%20%20%20%7D%2C%0A%20%20%20%20%7B%0A%20%20%20%20%20%20address%3A%20'%E5%8C%97%E4%BA%AC%E5%B8%82%E6%B5%B7%E6%B7%80%E5%8C%BA%E6%B5%B7%E6%B7%80%E4%B8%89%E5%B1%B1%E4%BA%94%E5%9B%AD%E7%BB%BF%E9%81%93'%2C%0A%20%20%20%20%20%20city%3A%20'%E5%8C%97%E4%BA%AC%E5%B8%82'%0A%20%20%20%20%7D%2C%0A%20%20%20%20%7B%0A%20%20%20%20%20%20address%3A%20'%E5%8C%97%E4%BA%AC%E5%B8%82%E4%B8%9C%E5%9F%8E%E5%8C%BA%E5%A4%A9%E5%AE%89%E9%97%A8%E4%B8%9C%E9%80%9A%E9%81%93'%2C%0A%20%20%20%20%20%20city%3A%20'%E5%8C%97%E4%BA%AC%E5%B8%82'%0A%20%20%20%20%7D%0A%20%20%5D)%0A%20%20const%20currentAddress%20%3D%20ref(addressList.value%5B0%5D)%0A%0A%20%20watch(%0A%20%20%20%20()%20%3D%3E%20currentAddress%2C%0A%20%20%20%20(n)%20%3D%3E%20%7B%0A%20%20%20%20%20%20get(n.value.address%2C%20n.value.city)%0A%20%20%20%20%7D%2C%0A%20%20%20%20%7B%0A%20%20%20%20%20%20deep%3A%20true%0A%20%20%20%20%7D%0A%20%20)%0A%20%20const%20%7B%20get%2C%20point%2C%20isLoading%2C%20isEmpty%20%7D%20%3D%20useAddressGeocoder%3CPoint%3E(()%20%3D%3E%20%7B%0A%20%20%20%20map.value.resetCenter()%0A%20%20%7D)%0A%0A%20%20function%20handleInitd()%20%7B%0A%20%20%20%20get(currentAddress.value.address%2C%20currentAddress.value.city)%0A%20%20%7D%0A%3C%2Fscript%3E%0A%0A%3Cstyle%3E%0A%20%20.state%20%7B%0A%20%20%20%20margin-top%3A%2015px%3B%0A%20%20%7D%0A%20%20.state%20span%20%7B%0A%20%20%20%20margin-right%3A%2025px%3B%0A%20%20%7D%0A%3C%2Fstyle%3E%0A",description:"%3Cp%3E%E9%80%9A%E8%BF%87%E4%B8%8B%E6%8B%89%E6%A1%86%E5%88%87%E6%8D%A2%E5%9C%B0%E5%9D%80%E8%A7%A3%E6%9E%90%E5%9D%90%E6%A0%87%E7%82%B9%3C%2Fp%3E%0A"},{default:E(()=>[D]),_:1}),r,a(t,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E13%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ecenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E5%90%88%E8%82%A5%E5%B8%82%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBControl%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eaddress-list%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aoffset%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20x%3A%2010%2C%20y%3A%2010%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eul%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eli%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-for%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eitem%20in%20addressList%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Akey%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eitem%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%7B%7B%20item%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eli%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eul%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBControl%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!isLoading%20%26amp%3B%26amp%3B%20!isEmpty%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-for%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E(item%2C%20index)%20in%20points%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eitem%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMarker%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBLabel%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20special-attr%22%3E%3Cspan%20class%3D%22token%20attr-name%22%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20value%20css%20language-css%22%3E%3Cspan%20class%3D%22token%20property%22%3Ecolor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%23333%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20property%22%3Efont-size%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%209px%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eitem%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acontent%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EaddressList%5Bindex%5D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBLabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20useAddressGeocoder%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20Point%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20addressList%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%8C%85%E6%B2%B3%E5%8C%BA%E9%87%91%E5%AF%A8%E8%B7%AF1%E5%8F%B7%EF%BC%88%E9%87%91%E5%AF%A8%E8%B7%AF%E4%B8%8E%E6%9C%9B%E6%B1%9F%E8%A5%BF%E8%B7%AF%E4%BA%A4%E5%8F%89%E5%8F%A3%EF%BC%89'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%BA%90%E9%98%B3%E5%8C%BA%E5%87%A4%E5%8F%B0%E8%B7%AF209%E5%8F%B7%EF%BC%88%E5%87%A4%E5%8F%B0%E8%B7%AF%E4%B8%8E%E8%92%99%E5%9F%8E%E5%8C%97%E8%B7%AF%E4%BA%A4%E5%8F%89%E5%8F%A3%EF%BC%89'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E8%9C%80%E5%B1%B1%E5%8C%BA%E9%87%91%E5%AF%A8%E8%B7%AF217%E5%8F%B7(%E8%BF%91%E5%AE%89%E5%8C%BB%E9%99%84%E9%99%A2%E5%85%AC%E4%BA%A4%E8%BD%A6%E7%AB%99)'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E8%9C%80%E5%B1%B1%E5%8C%BA%E6%A2%85%E5%B1%B1%E8%B7%AF10%E5%8F%B7(%E8%BF%91%E5%AE%89%E5%BE%BD%E9%A5%AD%E5%BA%97)%20'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E8%9C%80%E5%B1%B1%E5%8C%BA%20%E9%95%BF%E4%B8%B0%E5%8D%97%E8%B7%AF159%E5%8F%B7%E9%93%9C%E9%94%A3%E6%B9%BE%E5%B9%BF%E5%9C%BA312%E5%AE%A4'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%90%88%E8%82%A5%E5%B8%82%E5%AF%BF%E6%98%A5%E8%B7%AF93%E5%8F%B7%E9%92%B1%E6%9F%9C%E6%98%9F%E4%B9%90%E7%94%BAKTV%EF%BC%88%E9%80%8D%E9%81%A5%E6%B4%A5%E5%85%AC%E5%9B%AD%E5%AF%B9%E9%9D%A2%EF%BC%89'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%BA%90%E9%98%B3%E5%8C%BA%E9%95%BF%E6%B1%9F%E4%B8%AD%E8%B7%AF177%E5%8F%B7'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20get%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20points%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20isLoading%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20isEmpty%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20useAddressGeocoder%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3EPoint%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Eget%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3EaddressList%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%90%88%E8%82%A5%E5%B8%82'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20style%22%3E%3Cspan%20class%3D%22token%20language-css%22%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.address-list%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Ecolor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%23333%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Ebackground-color%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%23fff%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Efont-size%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2010px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Epadding%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2010px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Eborder-radius%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%208px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Ebox-shadow%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Ergb%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E0%200%200%20%2F%2015%25%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%201px%202px%201px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.address-list%20ul%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%200%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Epadding%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%200%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.address-list%20li%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Elist-style%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20none%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Eborder-bottom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%201px%20solid%20%23f1f1f1%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"hooks/useAddressGeocoder/batch","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%3Azoom%3D%2213%22%20center%3D%22%E5%90%88%E8%82%A5%E5%B8%82%22%20%40initd%3D%22handleInitd%22%3E%0A%20%20%20%20%20%20%3CBControl%20class%3D%22address-list%22%20%3Aoffset%3D%22%7B%20x%3A%2010%2C%20y%3A%2010%20%7D%22%3E%0A%20%20%20%20%20%20%20%20%3Cul%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cli%20v-for%3D%22item%20in%20addressList%22%20%3Akey%3D%22item%22%3E%7B%7B%20item%20%7D%7D%3C%2Fli%3E%0A%20%20%20%20%20%20%20%20%3C%2Ful%3E%0A%20%20%20%20%20%20%3C%2FBControl%3E%0A%20%20%20%20%20%20%3Ctemplate%20v-if%3D%22!isLoading%20%26%26%20!isEmpty%22%3E%0A%20%20%20%20%20%20%20%20%3Ctemplate%20v-for%3D%22(item%2C%20index)%20in%20points%22%3E%0A%20%20%20%20%20%20%20%20%20%20%3CBMarker%20%3Aposition%3D%22item%22%3E%3C%2FBMarker%3E%0A%20%20%20%20%20%20%20%20%20%20%3CBLabel%20style%3D%22color%3A%20%23333%3B%20font-size%3A%209px%22%20%3Aposition%3D%22item%22%20%3Acontent%3D%22addressList%5Bindex%5D%22%3E%3C%2FBLabel%3E%0A%20%20%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%3C%2FBMap%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20useAddressGeocoder%2C%20Point%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20addressList%20%3D%20%5B%0A%20%20%20%20'%E5%8C%85%E6%B2%B3%E5%8C%BA%E9%87%91%E5%AF%A8%E8%B7%AF1%E5%8F%B7%EF%BC%88%E9%87%91%E5%AF%A8%E8%B7%AF%E4%B8%8E%E6%9C%9B%E6%B1%9F%E8%A5%BF%E8%B7%AF%E4%BA%A4%E5%8F%89%E5%8F%A3%EF%BC%89'%2C%0A%20%20%20%20'%E5%BA%90%E9%98%B3%E5%8C%BA%E5%87%A4%E5%8F%B0%E8%B7%AF209%E5%8F%B7%EF%BC%88%E5%87%A4%E5%8F%B0%E8%B7%AF%E4%B8%8E%E8%92%99%E5%9F%8E%E5%8C%97%E8%B7%AF%E4%BA%A4%E5%8F%89%E5%8F%A3%EF%BC%89'%2C%0A%20%20%20%20'%E8%9C%80%E5%B1%B1%E5%8C%BA%E9%87%91%E5%AF%A8%E8%B7%AF217%E5%8F%B7(%E8%BF%91%E5%AE%89%E5%8C%BB%E9%99%84%E9%99%A2%E5%85%AC%E4%BA%A4%E8%BD%A6%E7%AB%99)'%2C%0A%20%20%20%20'%E8%9C%80%E5%B1%B1%E5%8C%BA%E6%A2%85%E5%B1%B1%E8%B7%AF10%E5%8F%B7(%E8%BF%91%E5%AE%89%E5%BE%BD%E9%A5%AD%E5%BA%97)%20'%2C%0A%20%20%20%20'%E8%9C%80%E5%B1%B1%E5%8C%BA%20%E9%95%BF%E4%B8%B0%E5%8D%97%E8%B7%AF159%E5%8F%B7%E9%93%9C%E9%94%A3%E6%B9%BE%E5%B9%BF%E5%9C%BA312%E5%AE%A4'%2C%0A%20%20%20%20'%E5%90%88%E8%82%A5%E5%B8%82%E5%AF%BF%E6%98%A5%E8%B7%AF93%E5%8F%B7%E9%92%B1%E6%9F%9C%E6%98%9F%E4%B9%90%E7%94%BAKTV%EF%BC%88%E9%80%8D%E9%81%A5%E6%B4%A5%E5%85%AC%E5%9B%AD%E5%AF%B9%E9%9D%A2%EF%BC%89'%2C%0A%20%20%20%20'%E5%BA%90%E9%98%B3%E5%8C%BA%E9%95%BF%E6%B1%9F%E4%B8%AD%E8%B7%AF177%E5%8F%B7'%2C%0A%20%20%20%20%0A%20%20%5D%0A%20%20const%20%7B%20get%2C%20point%3A%20points%2C%20isLoading%2C%20isEmpty%20%7D%20%3D%20useAddressGeocoder%3CPoint%5B%5D%3E()%0A%0A%20%20function%20handleInitd()%20%7B%0A%20%20%20%20get(addressList%2C%20'%E5%90%88%E8%82%A5%E5%B8%82')%0A%20%20%7D%0A%3C%2Fscript%3E%0A%3Cstyle%3E%0A%20%20.address-list%20%7B%0A%20%20%20%20color%3A%20%23333%3B%0A%20%20%20%20background-color%3A%20%23fff%3B%0A%20%20%20%20font-size%3A%2010px%3B%0A%20%20%20%20padding%3A%2010px%3B%0A%20%20%20%20border-radius%3A%208px%3B%0A%20%20%20%20box-shadow%3A%20rgb(0%200%200%20%2F%2015%25)%201px%202px%201px%3B%0A%20%20%7D%0A%20%20.address-list%20ul%20%7B%0A%20%20%20%20margin%3A%200%3B%0A%20%20%20%20padding%3A%200%3B%0A%20%20%7D%0A%20%20.address-list%20li%20%7B%0A%20%20%20%20list-style%3A%20none%3B%0A%20%20%20%20border-bottom%3A%201px%20solid%20%23f1f1f1%3B%0A%20%20%7D%0A%3C%2Fstyle%3E%0A",description:""},{default:E(()=>[d]),_:1}),A])}const x=C(c,[["render",h]]);export{_ as __pageData,x as default}; diff --git a/assets/zh-CN_hooks_useAddressGeocoder.md.B-3kHth6.lean.js b/assets/zh-CN_hooks_useAddressGeocoder.md.B-3kHth6.lean.js new file mode 100644 index 00000000..776c42a6 --- /dev/null +++ b/assets/zh-CN_hooks_useAddressGeocoder.md.B-3kHth6.lean.js @@ -0,0 +1 @@ +import{_ as C,c as o,j as s,a as p,I as a,w as E,al as n,D as e,o as l}from"./chunks/framework.n6hqIsqL.js";const _=JSON.parse('{"title":"useAddressGeocoder","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/hooks/useAddressGeocoder.md","filePath":"zh-CN/hooks/useAddressGeocoder.md","lastUpdated":1724785300000}'),c={name:"zh-CN/hooks/useAddressGeocoder.md"},k={id:"useaddressgeocoder",tabindex:"-1"},F=s("a",{class:"header-anchor",href:"#useaddressgeocoder","aria-label":'Permalink to "useAddressGeocoder "'},"​",-1),u=n("",4),D=s("p",null,"hooks/useAddressGeocoder/index",-1),r=n("",3),d=s("p",null,"hooks/useAddressGeocoder/batch",-1),A=n("",12);function h(B,g,y,m,v,b){const i=e("Badge"),t=e("Demo");return l(),o("div",null,[s("h1",k,[p("useAddressGeocoder "),a(i,{type:"tip",text:"^0.0.39"}),p(),F]),u,a(t,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%E9%80%89%E6%8B%A9%E5%9C%B0%E5%9D%80%E8%A7%A3%E6%9E%90%3A%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eselect%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EcurrentAddress%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-for%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eitem%20in%20addressList%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Avalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eitem%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%7B%7B%20item.address%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eselect%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estate%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!isLoading%20%26amp%3B%26amp%3B%20!isEmpty%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eh5%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E8%A7%A3%E6%9E%90%E7%BB%93%E6%9E%9C%3A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eh5%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BA%AC%E5%BA%A6%20-%20%7B%7B%20point%3F.lat%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BB%8F%E5%BA%A6%20-%20%7B%7B%20point%3F.lng%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estate%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-else-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EisEmpty%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E6%B2%A1%E6%9C%89%E8%A7%A3%E6%9E%90%E5%88%B0%E7%BB%93%E6%9E%9C%20%EF%BC%81%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estate%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-else%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E8%A7%A3%E6%9E%90%E4%B8%AD...%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Emap%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epoint%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!isLoading%20%26amp%3B%26amp%3B%20!isEmpty%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epoint%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMarker%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20watch%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20useAddressGeocoder%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20Point%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20map%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20addressList%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eaddress%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%8C%97%E4%BA%AC%E5%B8%82%E6%B5%B7%E6%B7%80%E5%8C%BA%E4%B8%8A%E5%9C%B010%E8%A1%97'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%8C%97%E4%BA%AC%E5%B8%82'%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eaddress%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%8C%97%E4%BA%AC%E5%B8%82%E6%B5%B7%E6%B7%80%E5%8C%BA%E6%B5%B7%E6%B7%80%E4%B8%89%E5%B1%B1%E4%BA%94%E5%9B%AD%E7%BB%BF%E9%81%93'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%8C%97%E4%BA%AC%E5%B8%82'%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eaddress%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%8C%97%E4%BA%AC%E5%B8%82%E4%B8%9C%E5%9F%8E%E5%8C%BA%E5%A4%A9%E5%AE%89%E9%97%A8%E4%B8%9C%E9%80%9A%E9%81%93'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%8C%97%E4%BA%AC%E5%B8%82'%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20currentAddress%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3EaddressList%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20function%22%3Ewatch%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20currentAddress%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3En%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Eget%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3En%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eaddress%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20n%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Ecity%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Edeep%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20boolean%22%3Etrue%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20get%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20point%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20isLoading%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20isEmpty%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20useAddressGeocoder%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3EPoint%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20map%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EresetCenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Eget%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3EcurrentAddress%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Eaddress%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20currentAddress%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Ecity%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20style%22%3E%3Cspan%20class%3D%22token%20language-css%22%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.state%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-top%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2015px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.state%20span%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-right%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2025px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"hooks/useAddressGeocoder/index","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%E9%80%89%E6%8B%A9%E5%9C%B0%E5%9D%80%E8%A7%A3%E6%9E%90%3A%0A%20%20%20%20%3Cselect%20class%3D%22mySelect%22%20v-model%3D%22currentAddress%22%3E%0A%20%20%20%20%20%20%3Coption%20v-for%3D%22item%20in%20addressList%22%20%3Avalue%3D%22item%22%3E%7B%7B%20item.address%20%7D%7D%3C%2Foption%3E%0A%20%20%20%20%3C%2Fselect%3E%0A%20%20%20%20%3Cdiv%20class%3D%22state%22%20v-if%3D%22!isLoading%20%26%26%20!isEmpty%22%3E%0A%20%20%20%20%20%20%3Ch5%3E%E8%A7%A3%E6%9E%90%E7%BB%93%E6%9E%9C%3A%3C%2Fh5%3E%0A%20%20%20%20%20%20%3Cspan%3E%E7%BA%AC%E5%BA%A6%20-%20%7B%7B%20point%3F.lat%20%7D%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%3E%E7%BB%8F%E5%BA%A6%20-%20%7B%7B%20point%3F.lng%20%7D%7D%3C%2Fspan%3E%0A%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%3Cdiv%20class%3D%22state%22%20v-else-if%3D%22isEmpty%22%3E%E6%B2%A1%E6%9C%89%E8%A7%A3%E6%9E%90%E5%88%B0%E7%BB%93%E6%9E%9C%20%EF%BC%81%3C%2Fdiv%3E%0A%20%20%20%20%3Cdiv%20class%3D%22state%22%20v-else%3E%E8%A7%A3%E6%9E%90%E4%B8%AD...%3C%2Fdiv%3E%0A%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20ref%3D%22map%22%20%3Acenter%3D%22point%22%20%40initd%3D%22handleInitd%22%3E%0A%20%20%20%20%20%20%3Ctemplate%20v-if%3D%22!isLoading%20%26%26%20!isEmpty%22%3E%0A%20%20%20%20%20%20%20%20%3CBMarker%20%3Aposition%3D%22point%22%3E%3C%2FBMarker%3E%0A%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%3C%2FBMap%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20ref%2C%20watch%20%7D%20from%20'vue'%0A%20%20import%20%7B%20useAddressGeocoder%2C%20Point%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20map%20%3D%20ref()%0A%20%20const%20addressList%20%3D%20ref(%5B%0A%20%20%20%20%7B%0A%20%20%20%20%20%20address%3A%20'%E5%8C%97%E4%BA%AC%E5%B8%82%E6%B5%B7%E6%B7%80%E5%8C%BA%E4%B8%8A%E5%9C%B010%E8%A1%97'%2C%0A%20%20%20%20%20%20city%3A%20'%E5%8C%97%E4%BA%AC%E5%B8%82'%0A%20%20%20%20%7D%2C%0A%20%20%20%20%7B%0A%20%20%20%20%20%20address%3A%20'%E5%8C%97%E4%BA%AC%E5%B8%82%E6%B5%B7%E6%B7%80%E5%8C%BA%E6%B5%B7%E6%B7%80%E4%B8%89%E5%B1%B1%E4%BA%94%E5%9B%AD%E7%BB%BF%E9%81%93'%2C%0A%20%20%20%20%20%20city%3A%20'%E5%8C%97%E4%BA%AC%E5%B8%82'%0A%20%20%20%20%7D%2C%0A%20%20%20%20%7B%0A%20%20%20%20%20%20address%3A%20'%E5%8C%97%E4%BA%AC%E5%B8%82%E4%B8%9C%E5%9F%8E%E5%8C%BA%E5%A4%A9%E5%AE%89%E9%97%A8%E4%B8%9C%E9%80%9A%E9%81%93'%2C%0A%20%20%20%20%20%20city%3A%20'%E5%8C%97%E4%BA%AC%E5%B8%82'%0A%20%20%20%20%7D%0A%20%20%5D)%0A%20%20const%20currentAddress%20%3D%20ref(addressList.value%5B0%5D)%0A%0A%20%20watch(%0A%20%20%20%20()%20%3D%3E%20currentAddress%2C%0A%20%20%20%20(n)%20%3D%3E%20%7B%0A%20%20%20%20%20%20get(n.value.address%2C%20n.value.city)%0A%20%20%20%20%7D%2C%0A%20%20%20%20%7B%0A%20%20%20%20%20%20deep%3A%20true%0A%20%20%20%20%7D%0A%20%20)%0A%20%20const%20%7B%20get%2C%20point%2C%20isLoading%2C%20isEmpty%20%7D%20%3D%20useAddressGeocoder%3CPoint%3E(()%20%3D%3E%20%7B%0A%20%20%20%20map.value.resetCenter()%0A%20%20%7D)%0A%0A%20%20function%20handleInitd()%20%7B%0A%20%20%20%20get(currentAddress.value.address%2C%20currentAddress.value.city)%0A%20%20%7D%0A%3C%2Fscript%3E%0A%0A%3Cstyle%3E%0A%20%20.state%20%7B%0A%20%20%20%20margin-top%3A%2015px%3B%0A%20%20%7D%0A%20%20.state%20span%20%7B%0A%20%20%20%20margin-right%3A%2025px%3B%0A%20%20%7D%0A%3C%2Fstyle%3E%0A",description:"%3Cp%3E%E9%80%9A%E8%BF%87%E4%B8%8B%E6%8B%89%E6%A1%86%E5%88%87%E6%8D%A2%E5%9C%B0%E5%9D%80%E8%A7%A3%E6%9E%90%E5%9D%90%E6%A0%87%E7%82%B9%3C%2Fp%3E%0A"},{default:E(()=>[D]),_:1}),r,a(t,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E13%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ecenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E5%90%88%E8%82%A5%E5%B8%82%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBControl%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eaddress-list%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aoffset%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20x%3A%2010%2C%20y%3A%2010%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eul%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eli%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-for%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eitem%20in%20addressList%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Akey%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eitem%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%7B%7B%20item%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eli%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eul%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBControl%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!isLoading%20%26amp%3B%26amp%3B%20!isEmpty%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-for%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E(item%2C%20index)%20in%20points%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eitem%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMarker%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBLabel%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20special-attr%22%3E%3Cspan%20class%3D%22token%20attr-name%22%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20value%20css%20language-css%22%3E%3Cspan%20class%3D%22token%20property%22%3Ecolor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%23333%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20property%22%3Efont-size%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%209px%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eitem%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acontent%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EaddressList%5Bindex%5D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBLabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20useAddressGeocoder%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20Point%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20addressList%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%8C%85%E6%B2%B3%E5%8C%BA%E9%87%91%E5%AF%A8%E8%B7%AF1%E5%8F%B7%EF%BC%88%E9%87%91%E5%AF%A8%E8%B7%AF%E4%B8%8E%E6%9C%9B%E6%B1%9F%E8%A5%BF%E8%B7%AF%E4%BA%A4%E5%8F%89%E5%8F%A3%EF%BC%89'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%BA%90%E9%98%B3%E5%8C%BA%E5%87%A4%E5%8F%B0%E8%B7%AF209%E5%8F%B7%EF%BC%88%E5%87%A4%E5%8F%B0%E8%B7%AF%E4%B8%8E%E8%92%99%E5%9F%8E%E5%8C%97%E8%B7%AF%E4%BA%A4%E5%8F%89%E5%8F%A3%EF%BC%89'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E8%9C%80%E5%B1%B1%E5%8C%BA%E9%87%91%E5%AF%A8%E8%B7%AF217%E5%8F%B7(%E8%BF%91%E5%AE%89%E5%8C%BB%E9%99%84%E9%99%A2%E5%85%AC%E4%BA%A4%E8%BD%A6%E7%AB%99)'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E8%9C%80%E5%B1%B1%E5%8C%BA%E6%A2%85%E5%B1%B1%E8%B7%AF10%E5%8F%B7(%E8%BF%91%E5%AE%89%E5%BE%BD%E9%A5%AD%E5%BA%97)%20'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E8%9C%80%E5%B1%B1%E5%8C%BA%20%E9%95%BF%E4%B8%B0%E5%8D%97%E8%B7%AF159%E5%8F%B7%E9%93%9C%E9%94%A3%E6%B9%BE%E5%B9%BF%E5%9C%BA312%E5%AE%A4'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%90%88%E8%82%A5%E5%B8%82%E5%AF%BF%E6%98%A5%E8%B7%AF93%E5%8F%B7%E9%92%B1%E6%9F%9C%E6%98%9F%E4%B9%90%E7%94%BAKTV%EF%BC%88%E9%80%8D%E9%81%A5%E6%B4%A5%E5%85%AC%E5%9B%AD%E5%AF%B9%E9%9D%A2%EF%BC%89'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%BA%90%E9%98%B3%E5%8C%BA%E9%95%BF%E6%B1%9F%E4%B8%AD%E8%B7%AF177%E5%8F%B7'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20get%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epoint%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20points%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20isLoading%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20isEmpty%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20useAddressGeocoder%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3EPoint%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Eget%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3EaddressList%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'%E5%90%88%E8%82%A5%E5%B8%82'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20style%22%3E%3Cspan%20class%3D%22token%20language-css%22%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.address-list%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Ecolor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%23333%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Ebackground-color%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%23fff%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Efont-size%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2010px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Epadding%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2010px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Eborder-radius%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%208px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Ebox-shadow%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Ergb%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E0%200%200%20%2F%2015%25%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%201px%202px%201px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.address-list%20ul%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%200%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Epadding%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%200%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.address-list%20li%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Elist-style%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20none%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Eborder-bottom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%201px%20solid%20%23f1f1f1%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"hooks/useAddressGeocoder/batch","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%3Azoom%3D%2213%22%20center%3D%22%E5%90%88%E8%82%A5%E5%B8%82%22%20%40initd%3D%22handleInitd%22%3E%0A%20%20%20%20%20%20%3CBControl%20class%3D%22address-list%22%20%3Aoffset%3D%22%7B%20x%3A%2010%2C%20y%3A%2010%20%7D%22%3E%0A%20%20%20%20%20%20%20%20%3Cul%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cli%20v-for%3D%22item%20in%20addressList%22%20%3Akey%3D%22item%22%3E%7B%7B%20item%20%7D%7D%3C%2Fli%3E%0A%20%20%20%20%20%20%20%20%3C%2Ful%3E%0A%20%20%20%20%20%20%3C%2FBControl%3E%0A%20%20%20%20%20%20%3Ctemplate%20v-if%3D%22!isLoading%20%26%26%20!isEmpty%22%3E%0A%20%20%20%20%20%20%20%20%3Ctemplate%20v-for%3D%22(item%2C%20index)%20in%20points%22%3E%0A%20%20%20%20%20%20%20%20%20%20%3CBMarker%20%3Aposition%3D%22item%22%3E%3C%2FBMarker%3E%0A%20%20%20%20%20%20%20%20%20%20%3CBLabel%20style%3D%22color%3A%20%23333%3B%20font-size%3A%209px%22%20%3Aposition%3D%22item%22%20%3Acontent%3D%22addressList%5Bindex%5D%22%3E%3C%2FBLabel%3E%0A%20%20%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%3C%2FBMap%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20useAddressGeocoder%2C%20Point%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20addressList%20%3D%20%5B%0A%20%20%20%20'%E5%8C%85%E6%B2%B3%E5%8C%BA%E9%87%91%E5%AF%A8%E8%B7%AF1%E5%8F%B7%EF%BC%88%E9%87%91%E5%AF%A8%E8%B7%AF%E4%B8%8E%E6%9C%9B%E6%B1%9F%E8%A5%BF%E8%B7%AF%E4%BA%A4%E5%8F%89%E5%8F%A3%EF%BC%89'%2C%0A%20%20%20%20'%E5%BA%90%E9%98%B3%E5%8C%BA%E5%87%A4%E5%8F%B0%E8%B7%AF209%E5%8F%B7%EF%BC%88%E5%87%A4%E5%8F%B0%E8%B7%AF%E4%B8%8E%E8%92%99%E5%9F%8E%E5%8C%97%E8%B7%AF%E4%BA%A4%E5%8F%89%E5%8F%A3%EF%BC%89'%2C%0A%20%20%20%20'%E8%9C%80%E5%B1%B1%E5%8C%BA%E9%87%91%E5%AF%A8%E8%B7%AF217%E5%8F%B7(%E8%BF%91%E5%AE%89%E5%8C%BB%E9%99%84%E9%99%A2%E5%85%AC%E4%BA%A4%E8%BD%A6%E7%AB%99)'%2C%0A%20%20%20%20'%E8%9C%80%E5%B1%B1%E5%8C%BA%E6%A2%85%E5%B1%B1%E8%B7%AF10%E5%8F%B7(%E8%BF%91%E5%AE%89%E5%BE%BD%E9%A5%AD%E5%BA%97)%20'%2C%0A%20%20%20%20'%E8%9C%80%E5%B1%B1%E5%8C%BA%20%E9%95%BF%E4%B8%B0%E5%8D%97%E8%B7%AF159%E5%8F%B7%E9%93%9C%E9%94%A3%E6%B9%BE%E5%B9%BF%E5%9C%BA312%E5%AE%A4'%2C%0A%20%20%20%20'%E5%90%88%E8%82%A5%E5%B8%82%E5%AF%BF%E6%98%A5%E8%B7%AF93%E5%8F%B7%E9%92%B1%E6%9F%9C%E6%98%9F%E4%B9%90%E7%94%BAKTV%EF%BC%88%E9%80%8D%E9%81%A5%E6%B4%A5%E5%85%AC%E5%9B%AD%E5%AF%B9%E9%9D%A2%EF%BC%89'%2C%0A%20%20%20%20'%E5%BA%90%E9%98%B3%E5%8C%BA%E9%95%BF%E6%B1%9F%E4%B8%AD%E8%B7%AF177%E5%8F%B7'%2C%0A%20%20%20%20%0A%20%20%5D%0A%20%20const%20%7B%20get%2C%20point%3A%20points%2C%20isLoading%2C%20isEmpty%20%7D%20%3D%20useAddressGeocoder%3CPoint%5B%5D%3E()%0A%0A%20%20function%20handleInitd()%20%7B%0A%20%20%20%20get(addressList%2C%20'%E5%90%88%E8%82%A5%E5%B8%82')%0A%20%20%7D%0A%3C%2Fscript%3E%0A%3Cstyle%3E%0A%20%20.address-list%20%7B%0A%20%20%20%20color%3A%20%23333%3B%0A%20%20%20%20background-color%3A%20%23fff%3B%0A%20%20%20%20font-size%3A%2010px%3B%0A%20%20%20%20padding%3A%2010px%3B%0A%20%20%20%20border-radius%3A%208px%3B%0A%20%20%20%20box-shadow%3A%20rgb(0%200%200%20%2F%2015%25)%201px%202px%201px%3B%0A%20%20%7D%0A%20%20.address-list%20ul%20%7B%0A%20%20%20%20margin%3A%200%3B%0A%20%20%20%20padding%3A%200%3B%0A%20%20%7D%0A%20%20.address-list%20li%20%7B%0A%20%20%20%20list-style%3A%20none%3B%0A%20%20%20%20border-bottom%3A%201px%20solid%20%23f1f1f1%3B%0A%20%20%7D%0A%3C%2Fstyle%3E%0A",description:""},{default:E(()=>[d]),_:1}),A])}const x=C(c,[["render",h]]);export{_ as __pageData,x as default}; diff --git a/assets/zh-CN_hooks_useAreaBoundary.md.CC8ZAf6w.js b/assets/zh-CN_hooks_useAreaBoundary.md.CC8ZAf6w.js new file mode 100644 index 00000000..ecd61578 --- /dev/null +++ b/assets/zh-CN_hooks_useAreaBoundary.md.CC8ZAf6w.js @@ -0,0 +1,33 @@ +import{_ as n,c as t,I as p,w as i,al as s,D as e,o as E,j as l}from"./chunks/framework.n6hqIsqL.js";const B=JSON.parse('{"title":"useAreaBoundary","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/hooks/useAreaBoundary.md","filePath":"zh-CN/hooks/useAreaBoundary.md","lastUpdated":1724785300000}'),o={name:"zh-CN/hooks/useAreaBoundary.md"},k=s('

useAreaBoundary

通过该 hooks 可获取行政区域的边界。

ts
import { useAreaBoundary } from 'vue3-baidu-map-gl'

示例

',4),C=l("p",null,"overlay/polygon/boundaries",-1),c=s(`

用法

ts
const { isLoading, boundaries, get } = useAreaBoundary(cal)

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 get 方法后数据才可用

参数

参数描述类型默认值
cal获取行政区域成功后的回调函数(boundaries: string[]) => void-

返回值

返回值描述类型
isLoading是否加载中boolean
boundaries区域边界数据,默认为空数组,get方法调用后才可用Ref<string[]>
get获取指定区域边界方法({string}) => void

代码示例

html
<Map @initd="handleInitd"></Map>
+
+<script setup lang="ts">
+  import { useAreaBoundary } from 'vue3-baidu-map-gl'
+
+  const { isLoading, boundaries, get } = useAreaBoundary()
+
+  function handleInitd() {
+    get('北京市')
+  }
+</script>

TS 类型定义参考

ts
import { Ref } from 'vue'
+export declare type AreaBoundary = string[]
+/**
+ * 获取地图区域边界
+ * @param cal 获取成功后的回调函数
+ * @returns { isLoading, boundaries, get }
+ */
+export declare function useAreaBoundary(cal?: (boundaries: Ref<AreaBoundary>) => void): {
+  /**
+   * 是否加载中
+   */
+  isLoading: Ref<boolean>
+  /**
+   * 区域边界数据
+   */
+  boundaries: Ref<string[]>
+  /**
+   * 获取指定区域边界
+   * @param {string} area 区域名
+   * @example get('北京市')
+   */
+  get: (area: string) => void
+}
`,11);function h(r,u,D,F,d,A){const a=e("Demo");return E(),t("div",null,[k,p(a,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AminZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E3%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ezoom%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBControl%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20special-attr%22%3E%3Cspan%20class%3D%22token%20attr-name%22%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20border-radius%3A%204px%3B%0A%20%20%20%20%20%20%20%20box-shadow%3A%200%202px%206px%200%20rgba(27%2C%20142%2C%20236%2C%200.5)%3B%0A%20%20%20%20%20%20%20%20color%3A%20%23666%3B%0A%20%20%20%20%20%20%20%20background%3A%20%23fff%3B%0A%20%20%20%20%20%20%20%20padding%3A%2010px%3B%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aoffset%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20x%3A%2015%2C%20y%3A%2015%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%9C%B0%E5%8C%BA%EF%BC%9A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eselect%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Earea%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E5%8C%97%E4%BA%AC%E5%B8%82%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%8C%97%E4%BA%AC%E5%B8%82%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E9%A1%BA%E4%B9%89%E5%8C%BA%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%8C%97%E4%BA%AC%E5%B8%82%E9%A1%BA%E4%B9%89%E5%8C%BA%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E5%9B%9B%E5%B7%9D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%9B%9B%E5%B7%9D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E6%88%90%E9%83%BD%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E6%88%90%E9%83%BD%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eselect%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBControl%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBPolygon%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Akey%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Earea%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EisBoundary%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Apath%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EpathPoints%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Estroke-color%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%23000%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EfillColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eblue%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Astroke-weight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E1%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20watch%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20useAreaBoundary%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20zoom%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Enumber%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E11%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20area%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Estring%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'%E9%A1%BA%E4%B9%89%E5%8C%BA'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20areaZoomMap%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3E%E5%8C%97%E4%BA%AC%E5%B8%82%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E9%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3E%E9%A1%BA%E4%B9%89%E5%8C%BA%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E11%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3E%E5%9B%9B%E5%B7%9D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E7%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3E%E6%88%90%E9%83%BD%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E9%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eboundaries%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20pathPoints%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20get%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EuseAreaBoundary%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20zoom%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20areaZoomMap%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3Earea%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Eget%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Earea%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20function%22%3Ewatch%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20area%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20get%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/polygon/boundaries","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%3AminZoom%3D%223%22%20%3Azoom%3D%22zoom%22%20enableScrollWheelZoom%20%40initd%3D%22handleInitd%22%3E%0A%20%20%20%20%3CBControl%0A%20%20%20%20%20%20style%3D%22%0A%20%20%20%20%20%20%20%20border-radius%3A%204px%3B%0A%20%20%20%20%20%20%20%20box-shadow%3A%200%202px%206px%200%20rgba(27%2C%20142%2C%20236%2C%200.5)%3B%0A%20%20%20%20%20%20%20%20color%3A%20%23666%3B%0A%20%20%20%20%20%20%20%20background%3A%20%23fff%3B%0A%20%20%20%20%20%20%20%20padding%3A%2010px%3B%0A%20%20%20%20%20%20%22%0A%20%20%20%20%20%20%3Aoffset%3D%22%7B%20x%3A%2015%2C%20y%3A%2015%20%7D%22%0A%20%20%20%20%3E%0A%20%20%20%20%20%20%3Cspan%3E%E5%9C%B0%E5%8C%BA%EF%BC%9A%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cselect%20class%3D%22mySelect%20light%20no-m-b%20no-m-t%22%20v-model%3D%22area%22%3E%0A%20%20%20%20%20%20%20%20%3Coption%20value%3D%22%E5%8C%97%E4%BA%AC%E5%B8%82%22%3E%E5%8C%97%E4%BA%AC%E5%B8%82%3C%2Foption%3E%0A%20%20%20%20%20%20%20%20%3Coption%20value%3D%22%E9%A1%BA%E4%B9%89%E5%8C%BA%22%3E%E5%8C%97%E4%BA%AC%E5%B8%82%E9%A1%BA%E4%B9%89%E5%8C%BA%3C%2Foption%3E%0A%20%20%20%20%20%20%20%20%3Coption%20value%3D%22%E5%9B%9B%E5%B7%9D%22%3E%E5%9B%9B%E5%B7%9D%3C%2Foption%3E%0A%20%20%20%20%20%20%20%20%3Coption%20value%3D%22%E6%88%90%E9%83%BD%22%3E%E6%88%90%E9%83%BD%3C%2Foption%3E%0A%20%20%20%20%20%20%3C%2Fselect%3E%0A%20%20%20%20%3C%2FBControl%3E%0A%20%20%20%20%3CBPolygon%20%3Akey%3D%22area%22%20isBoundary%20%3Apath%3D%22pathPoints%22%20stroke-color%3D%22%23000%22%20fillColor%3D%22blue%22%20%3Astroke-weight%3D%221%22%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%20lang%3D%22ts%22%3E%0A%20%20import%20%7B%20ref%2C%20watch%20%7D%20from%20'vue'%0A%20%20import%20%7B%20useAreaBoundary%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20zoom%20%3D%20ref%3Cnumber%3E(11)%0A%20%20const%20area%20%3D%20ref%3Cstring%3E('%E9%A1%BA%E4%B9%89%E5%8C%BA')%0A%20%20const%20areaZoomMap%20%3D%20%7B%0A%20%20%20%20%E5%8C%97%E4%BA%AC%E5%B8%82%3A%209%2C%0A%20%20%20%20%E9%A1%BA%E4%B9%89%E5%8C%BA%3A%2011%2C%0A%20%20%20%20%E5%9B%9B%E5%B7%9D%3A%207%2C%0A%20%20%20%20%E6%88%90%E9%83%BD%3A%209%0A%20%20%7D%0A%0A%20%20const%20%7B%20boundaries%3A%20pathPoints%2C%20get%20%7D%20%3D%20useAreaBoundary(()%20%3D%3E%20%7B%0A%20%20%20%20zoom.value%20%3D%20areaZoomMap%5Barea.value%5D%0A%20%20%7D)%0A%0A%20%20function%20handleInitd()%20%7B%0A%20%20%20%20get(area.value)%0A%20%20%7D%0A%20%20watch(()%20%3D%3E%20area.value%2C%20get)%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E7%BB%93%E5%90%88%20%3Ca%20href%3D%22..%2Fcomponents%2Foverlay%2Fpolygon%22%3E%3Ccode%3EPolygon%3C%2Fcode%3E%3C%2Fa%3E%20%E7%BB%84%E4%BB%B6%2C%20%E5%B9%B6%E9%80%9A%E8%BF%87%E6%8C%87%E5%AE%9A%20%3Ccode%3Eprops.isBoundary%3C%2Fcode%3E%20%E4%B8%BA%20%3Ccode%3Etrue%3C%2Fcode%3E%20%E5%AE%9E%E7%8E%B0%E8%A1%8C%E6%94%BF%E5%8C%BA%E5%9F%9F%E6%98%BE%E7%A4%BA%E6%95%88%E6%9E%9C%3C%2Fp%3E%0A"},{default:i(()=>[C]),_:1}),c])}const y=n(o,[["render",h]]);export{B as __pageData,y as default}; diff --git a/assets/zh-CN_hooks_useAreaBoundary.md.CC8ZAf6w.lean.js b/assets/zh-CN_hooks_useAreaBoundary.md.CC8ZAf6w.lean.js new file mode 100644 index 00000000..01623d15 --- /dev/null +++ b/assets/zh-CN_hooks_useAreaBoundary.md.CC8ZAf6w.lean.js @@ -0,0 +1 @@ +import{_ as n,c as t,I as p,w as i,al as s,D as e,o as E,j as l}from"./chunks/framework.n6hqIsqL.js";const B=JSON.parse('{"title":"useAreaBoundary","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/hooks/useAreaBoundary.md","filePath":"zh-CN/hooks/useAreaBoundary.md","lastUpdated":1724785300000}'),o={name:"zh-CN/hooks/useAreaBoundary.md"},k=s("",4),C=l("p",null,"overlay/polygon/boundaries",-1),c=s("",11);function h(r,u,D,F,d,A){const a=e("Demo");return E(),t("div",null,[k,p(a,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AminZoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E3%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ezoom%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBControl%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20special-attr%22%3E%3Cspan%20class%3D%22token%20attr-name%22%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20border-radius%3A%204px%3B%0A%20%20%20%20%20%20%20%20box-shadow%3A%200%202px%206px%200%20rgba(27%2C%20142%2C%20236%2C%200.5)%3B%0A%20%20%20%20%20%20%20%20color%3A%20%23666%3B%0A%20%20%20%20%20%20%20%20background%3A%20%23fff%3B%0A%20%20%20%20%20%20%20%20padding%3A%2010px%3B%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aoffset%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20x%3A%2015%2C%20y%3A%2015%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%9C%B0%E5%8C%BA%EF%BC%9A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eselect%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-model%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Earea%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E5%8C%97%E4%BA%AC%E5%B8%82%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%8C%97%E4%BA%AC%E5%B8%82%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E9%A1%BA%E4%B9%89%E5%8C%BA%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%8C%97%E4%BA%AC%E5%B8%82%E9%A1%BA%E4%B9%89%E5%8C%BA%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E5%9B%9B%E5%B7%9D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%9B%9B%E5%B7%9D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eoption%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Evalue%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E6%88%90%E9%83%BD%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E6%88%90%E9%83%BD%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eoption%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eselect%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBControl%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBPolygon%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Akey%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Earea%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EisBoundary%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Apath%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EpathPoints%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Estroke-color%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%23000%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EfillColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eblue%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Astroke-weight%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E1%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20watch%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20useAreaBoundary%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20zoom%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Enumber%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E11%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20area%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20ref%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3Estring%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'%E9%A1%BA%E4%B9%89%E5%8C%BA'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20areaZoomMap%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3E%E5%8C%97%E4%BA%AC%E5%B8%82%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E9%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3E%E9%A1%BA%E4%B9%89%E5%8C%BA%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E11%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3E%E5%9B%9B%E5%B7%9D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E7%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3E%E6%88%90%E9%83%BD%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E9%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eboundaries%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20pathPoints%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20get%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EuseAreaBoundary%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20zoom%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20areaZoomMap%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3Earea%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Eget%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Earea%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20function%22%3Ewatch%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20area%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20get%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"overlay/polygon/boundaries","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%3AminZoom%3D%223%22%20%3Azoom%3D%22zoom%22%20enableScrollWheelZoom%20%40initd%3D%22handleInitd%22%3E%0A%20%20%20%20%3CBControl%0A%20%20%20%20%20%20style%3D%22%0A%20%20%20%20%20%20%20%20border-radius%3A%204px%3B%0A%20%20%20%20%20%20%20%20box-shadow%3A%200%202px%206px%200%20rgba(27%2C%20142%2C%20236%2C%200.5)%3B%0A%20%20%20%20%20%20%20%20color%3A%20%23666%3B%0A%20%20%20%20%20%20%20%20background%3A%20%23fff%3B%0A%20%20%20%20%20%20%20%20padding%3A%2010px%3B%0A%20%20%20%20%20%20%22%0A%20%20%20%20%20%20%3Aoffset%3D%22%7B%20x%3A%2015%2C%20y%3A%2015%20%7D%22%0A%20%20%20%20%3E%0A%20%20%20%20%20%20%3Cspan%3E%E5%9C%B0%E5%8C%BA%EF%BC%9A%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cselect%20class%3D%22mySelect%20light%20no-m-b%20no-m-t%22%20v-model%3D%22area%22%3E%0A%20%20%20%20%20%20%20%20%3Coption%20value%3D%22%E5%8C%97%E4%BA%AC%E5%B8%82%22%3E%E5%8C%97%E4%BA%AC%E5%B8%82%3C%2Foption%3E%0A%20%20%20%20%20%20%20%20%3Coption%20value%3D%22%E9%A1%BA%E4%B9%89%E5%8C%BA%22%3E%E5%8C%97%E4%BA%AC%E5%B8%82%E9%A1%BA%E4%B9%89%E5%8C%BA%3C%2Foption%3E%0A%20%20%20%20%20%20%20%20%3Coption%20value%3D%22%E5%9B%9B%E5%B7%9D%22%3E%E5%9B%9B%E5%B7%9D%3C%2Foption%3E%0A%20%20%20%20%20%20%20%20%3Coption%20value%3D%22%E6%88%90%E9%83%BD%22%3E%E6%88%90%E9%83%BD%3C%2Foption%3E%0A%20%20%20%20%20%20%3C%2Fselect%3E%0A%20%20%20%20%3C%2FBControl%3E%0A%20%20%20%20%3CBPolygon%20%3Akey%3D%22area%22%20isBoundary%20%3Apath%3D%22pathPoints%22%20stroke-color%3D%22%23000%22%20fillColor%3D%22blue%22%20%3Astroke-weight%3D%221%22%20%2F%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%20lang%3D%22ts%22%3E%0A%20%20import%20%7B%20ref%2C%20watch%20%7D%20from%20'vue'%0A%20%20import%20%7B%20useAreaBoundary%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20zoom%20%3D%20ref%3Cnumber%3E(11)%0A%20%20const%20area%20%3D%20ref%3Cstring%3E('%E9%A1%BA%E4%B9%89%E5%8C%BA')%0A%20%20const%20areaZoomMap%20%3D%20%7B%0A%20%20%20%20%E5%8C%97%E4%BA%AC%E5%B8%82%3A%209%2C%0A%20%20%20%20%E9%A1%BA%E4%B9%89%E5%8C%BA%3A%2011%2C%0A%20%20%20%20%E5%9B%9B%E5%B7%9D%3A%207%2C%0A%20%20%20%20%E6%88%90%E9%83%BD%3A%209%0A%20%20%7D%0A%0A%20%20const%20%7B%20boundaries%3A%20pathPoints%2C%20get%20%7D%20%3D%20useAreaBoundary(()%20%3D%3E%20%7B%0A%20%20%20%20zoom.value%20%3D%20areaZoomMap%5Barea.value%5D%0A%20%20%7D)%0A%0A%20%20function%20handleInitd()%20%7B%0A%20%20%20%20get(area.value)%0A%20%20%7D%0A%20%20watch(()%20%3D%3E%20area.value%2C%20get)%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E7%BB%93%E5%90%88%20%3Ca%20href%3D%22..%2Fcomponents%2Foverlay%2Fpolygon%22%3E%3Ccode%3EPolygon%3C%2Fcode%3E%3C%2Fa%3E%20%E7%BB%84%E4%BB%B6%2C%20%E5%B9%B6%E9%80%9A%E8%BF%87%E6%8C%87%E5%AE%9A%20%3Ccode%3Eprops.isBoundary%3C%2Fcode%3E%20%E4%B8%BA%20%3Ccode%3Etrue%3C%2Fcode%3E%20%E5%AE%9E%E7%8E%B0%E8%A1%8C%E6%94%BF%E5%8C%BA%E5%9F%9F%E6%98%BE%E7%A4%BA%E6%95%88%E6%9E%9C%3C%2Fp%3E%0A"},{default:i(()=>[C]),_:1}),c])}const y=n(o,[["render",h]]);export{B as __pageData,y as default}; diff --git a/assets/zh-CN_hooks_useBrowserLocation.md.3DNDeBXx.js b/assets/zh-CN_hooks_useBrowserLocation.md.3DNDeBXx.js new file mode 100644 index 00000000..22caedaf --- /dev/null +++ b/assets/zh-CN_hooks_useBrowserLocation.md.3DNDeBXx.js @@ -0,0 +1,53 @@ +import{_ as l,c as o,j as s,a,I as n,w as E,al as i,D as t,o as k}from"./chunks/framework.n6hqIsqL.js";const v=JSON.parse('{"title":"useBrowserLocation","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/hooks/useBrowserLocation.md","filePath":"zh-CN/hooks/useBrowserLocation.md","lastUpdated":1724785300000}'),c={name:"zh-CN/hooks/useBrowserLocation.md"},C={id:"usebrowserlocation",tabindex:"-1"},h=s("a",{class:"header-anchor",href:"#usebrowserlocation","aria-label":'Permalink to "useBrowserLocation "'},"​",-1),r=i('

用于获取用户所在的城市位置信息(根据浏览器原生定位或者结合安卓定位 SDK 辅助定位),相比Ip 定位获取的信息更丰富,但稳定性并不高,有时候很精准,有时候飘半个中国。

ts
import { useBrowserLocation } from 'vue3-baidu-map-gl'

注意

  1. 由于 Chrome、iOS10 以上系统等已不再支持非安全域的浏览器定位请求,为保证定位成功率和精度,请尽快升级您的站点到 HTTPS。
  2. iOS15 系统浏览器默认关闭位置请求,需要用户设置手机为允许/询问后方可获取精确的定位,定位权限的开启方式请参见 iOS15 定位问题。
  3. 由于浏览器原生定位成功率并不高,可以尝试 Ip 定位安卓 SDK 定位 进行辅助,如果定位精准在城市级别,可联系百度地图提供 ak 以提高定位精准度。

示例

',4),d=s("p",null,"hooks/useBrowserLocation",-1),F=i(`

用法

ts
const { get, location, isLoading, isError, status } = useBrowserLocation(options, cal)

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 get 方法后数据才可用

参数

参数描述类型默认值
options浏览器定位配置项UseBrowserLocationOptions-
cal定位成功后的回调函数(location: Ref<Location>) => void-

UseBrowserLocationOptions

属性描述类型默认值
enableSDKLocation是否启用安卓定位 SDK 辅助定位,适用于安卓 WebView 页面,详见booleanfalse
enableHighAccuracy是否要求浏览器获取最佳效果,同浏览器定位接口参数booleanfalse
timeout超时时间number10000
maximumAge允许返回指定事件内的缓存结果,单位为毫秒。如果为0,则每次请求都获取最新的定位结果。默认为10分钟number600,000

返回值

返回值描述类型
isLoading是否在获取中boolean
location定位信息Location
get获取定位方法,需要在Map组件initd事件触发后才可调用() => void
isError是否定位出错boolean
status定位状态Status

Location

属性描述类型
accuracy定位精度number
point经纬度点{ lng: number lat: number }
address定位地址Address

Status

status描述
BMAP_STATUS_SUCCESS定位成功
ERR_POSITION_TIMEOUT定位超时
ERR_POSITION_UNAVAILABLE定位不可用
ERR_PERMISSION_DENIED没有权限,定位被拒绝

Address

属性描述类型
country国家string
city城市string
city_code城市 codestring
district行政区string
province省份string
street街道string
street_number城市 codestring

TS 类型定义参考

ts
import { Ref } from 'vue'
+import { type Point } from 'vue3-baidu-map-gl'
+
+interface UseBrowserLocationOptions {
+  /**
+   * 是否开启SDK辅助定位,仅当使用环境为移动web混合开发,且开启了定位sdk辅助定位功能后生效
+   */
+  enableSDKLocation?: boolean
+  /**
+   * 是否要求浏览器获取最佳效果,同浏览器定位接口参数。默认为false
+   */
+  enableHighAccuracy?: boolean
+  /**
+   * 超时事件,单位为毫秒。默认为10秒
+   */
+  timeout?: number
+  /**
+   * 允许返回指定事件内的缓存结果,单位为毫秒。如果为0,则每次请求都获取最新的定位结果。默认为10分钟
+   */
+  maximumAge?: number
+  /**
+   * 是否开启SDK辅助定位
+   */
+  SDKLocation?: boolean
+}
+declare type Status =
+  | 'BMAP_STATUS_SUCCESS'
+  | 'ERR_PERMISSION_DENIED'
+  | 'ERR_POSITION_UNAVAILABLE'
+  | 'ERR_POSITION_TIMEOUT'
+interface Location {
+  accuracy: number
+  point: Point
+  address: {
+    country: string
+    city: string
+    city_code: string
+    district: string
+    province: string
+    street: string
+    street_number: string
+  }
+}
+export declare function useBrowserLocation(
+  options?: UseBrowserLocationOptions,
+  cal?: (location: Ref<Location>) => void
+): {
+  get: () => void
+  isLoading: Ref<boolean>
+  isError: Ref<boolean>
+  status: Ref<Status | undefined>
+  location: Ref<Location>
+}
`,17);function u(D,g,A,B,y,m){const p=t("Badge"),e=t("Demo");return k(),o("div",null,[s("h1",C,[a("useBrowserLocation "),n(p,{type:"tip",text:"^0.0.33"}),a(),h]),r,n(e,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estate%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!isLoading%20%26amp%3B%26amp%3B%20!isError%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eh5%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%AE%9A%E4%BD%8D%3A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eh5%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%E5%9F%8E%E5%B8%82%20-%20%7B%7B%20location.address%3F.province%20%7D%7D-%7B%7B%20location.address%3F.city%20%7D%7D-%7B%7B%20location.address%3F.district%20%7D%7D-%7B%7B%0A%20%20%20%20%20%20%20%20%20%20location.address%3F.street%0A%20%20%20%20%20%20%20%20%7D%7D%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BA%AC%E5%BA%A6%20-%20%7B%7B%20location.point%3F.lat%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BB%8F%E5%BA%A6%20-%20%7B%7B%20location.point%3F.lng%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%AE%9A%E4%BD%8D%E7%B2%BE%E5%BA%A6%20-%20%7B%7B%20location.accuracy%20%7D%7Dm%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estate%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-else-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EisError%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%87%BA%E9%94%99%E4%BA%86%EF%BC%8C%7B%7B%20status%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estate%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-else%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%AE%9A%E4%BD%8D%E4%B8%AD...%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!isLoading%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eget%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E9%87%8D%E6%96%B0%E8%8E%B7%E5%8F%96%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Emap%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eget%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Elocation.point%20%7C%7C%20undefined%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!isLoading%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Elocation.point%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMarker%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBCircle%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EstrokeStyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Esolid%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EstrokeColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%230099ff%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AstrokeOpacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E0.8%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EfillColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%230099ff%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AfillOpacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E0.5%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Elocation.point%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aradius%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Elocation.accuracy%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20useBrowserLocation%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20map%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20get%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20location%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20isLoading%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20isError%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20status%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EuseBrowserLocation%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20keyword%22%3Enull%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20map%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EresetCenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20style%22%3E%3Cspan%20class%3D%22token%20language-css%22%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.state%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-top%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2015px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.state%20span%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-right%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2025px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"hooks/useBrowserLocation","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%3Cdiv%20class%3D%22state%22%20v-if%3D%22!isLoading%20%26%26%20!isError%22%3E%0A%20%20%20%20%20%20%3Ch5%3E%E5%AE%9A%E4%BD%8D%3A%3C%2Fh5%3E%0A%20%20%20%20%20%20%3Cspan%3E%0A%20%20%20%20%20%20%20%20%E5%9F%8E%E5%B8%82%20-%20%7B%7B%20location.address%3F.province%20%7D%7D-%7B%7B%20location.address%3F.city%20%7D%7D-%7B%7B%20location.address%3F.district%20%7D%7D-%7B%7B%0A%20%20%20%20%20%20%20%20%20%20location.address%3F.street%0A%20%20%20%20%20%20%20%20%7D%7D%0A%20%20%20%20%20%20%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%3E%E7%BA%AC%E5%BA%A6%20-%20%7B%7B%20location.point%3F.lat%20%7D%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%3E%E7%BB%8F%E5%BA%A6%20-%20%7B%7B%20location.point%3F.lng%20%7D%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%20%20%3Cspan%3E%E5%AE%9A%E4%BD%8D%E7%B2%BE%E5%BA%A6%20-%20%7B%7B%20location.accuracy%20%7D%7Dm%3C%2Fspan%3E%0A%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%3Cdiv%20class%3D%22state%22%20v-else-if%3D%22isError%22%3E%E5%87%BA%E9%94%99%E4%BA%86%EF%BC%8C%7B%7B%20status%20%7D%7D%3C%2Fdiv%3E%0A%20%20%20%20%3Cdiv%20class%3D%22state%22%20v-else%3E%E5%AE%9A%E4%BD%8D%E4%B8%AD...%3C%2Fdiv%3E%0A%20%20%20%20%3Cbutton%20v-if%3D%22!isLoading%22%20class%3D%22myButton%22%20%40click%3D%22get%22%3E%E9%87%8D%E6%96%B0%E8%8E%B7%E5%8F%96%3C%2Fbutton%3E%0A%20%20%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20enableScrollWheelZoom%20ref%3D%22map%22%20%40initd%3D%22get%22%20%3Acenter%3D%22location.point%20%7C%7C%20undefined%22%3E%0A%20%20%20%20%20%20%3Ctemplate%20v-if%3D%22!isLoading%22%3E%0A%20%20%20%20%20%20%20%20%3CBMarker%20%3Aposition%3D%22location.point%22%3E%3C%2FBMarker%3E%0A%20%20%20%20%20%20%20%20%3CBCircle%0A%20%20%20%20%20%20%20%20%20%20strokeStyle%3D%22solid%22%0A%20%20%20%20%20%20%20%20%20%20strokeColor%3D%22%230099ff%22%0A%20%20%20%20%20%20%20%20%20%20%3AstrokeOpacity%3D%220.8%22%0A%20%20%20%20%20%20%20%20%20%20fillColor%3D%22%230099ff%22%0A%20%20%20%20%20%20%20%20%20%20%3AfillOpacity%3D%220.5%22%0A%20%20%20%20%20%20%20%20%20%20%3Acenter%3D%22location.point%22%0A%20%20%20%20%20%20%20%20%20%20%3Aradius%3D%22location.accuracy%22%0A%20%20%20%20%20%20%20%20%2F%3E%0A%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%3C%2FBMap%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20import%20%7B%20useBrowserLocation%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20map%20%3D%20ref()%0A%20%20const%20%7B%20get%2C%20location%2C%20isLoading%2C%20isError%2C%20status%20%7D%20%3D%20useBrowserLocation(null%2C%20()%20%3D%3E%20%7B%0A%20%20%20%20map.value.resetCenter()%0A%20%20%7D)%0A%3C%2Fscript%3E%0A%0A%3Cstyle%3E%0A%20%20.state%20%7B%0A%20%20%20%20margin-top%3A%2015px%3B%0A%20%20%7D%0A%20%20.state%20span%20%7B%0A%20%20%20%20margin-right%3A%2025px%3B%0A%20%20%7D%0A%3C%2Fstyle%3E%0A",description:""},{default:E(()=>[d]),_:1}),F])}const f=l(c,[["render",u]]);export{v as __pageData,f as default}; diff --git a/assets/zh-CN_hooks_useBrowserLocation.md.3DNDeBXx.lean.js b/assets/zh-CN_hooks_useBrowserLocation.md.3DNDeBXx.lean.js new file mode 100644 index 00000000..d0d2bdcf --- /dev/null +++ b/assets/zh-CN_hooks_useBrowserLocation.md.3DNDeBXx.lean.js @@ -0,0 +1 @@ +import{_ as l,c as o,j as s,a,I as n,w as E,al as i,D as t,o as k}from"./chunks/framework.n6hqIsqL.js";const v=JSON.parse('{"title":"useBrowserLocation","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/hooks/useBrowserLocation.md","filePath":"zh-CN/hooks/useBrowserLocation.md","lastUpdated":1724785300000}'),c={name:"zh-CN/hooks/useBrowserLocation.md"},C={id:"usebrowserlocation",tabindex:"-1"},h=s("a",{class:"header-anchor",href:"#usebrowserlocation","aria-label":'Permalink to "useBrowserLocation "'},"​",-1),r=i("",4),d=s("p",null,"hooks/useBrowserLocation",-1),F=i("",17);function u(D,g,A,B,y,m){const p=t("Badge"),e=t("Demo");return k(),o("div",null,[s("h1",C,[a("useBrowserLocation "),n(p,{type:"tip",text:"^0.0.33"}),a(),h]),r,n(e,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estate%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!isLoading%20%26amp%3B%26amp%3B%20!isError%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eh5%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%AE%9A%E4%BD%8D%3A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eh5%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%E5%9F%8E%E5%B8%82%20-%20%7B%7B%20location.address%3F.province%20%7D%7D-%7B%7B%20location.address%3F.city%20%7D%7D-%7B%7B%20location.address%3F.district%20%7D%7D-%7B%7B%0A%20%20%20%20%20%20%20%20%20%20location.address%3F.street%0A%20%20%20%20%20%20%20%20%7D%7D%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BA%AC%E5%BA%A6%20-%20%7B%7B%20location.point%3F.lat%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BB%8F%E5%BA%A6%20-%20%7B%7B%20location.point%3F.lng%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebr%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%AE%9A%E4%BD%8D%E7%B2%BE%E5%BA%A6%20-%20%7B%7B%20location.accuracy%20%7D%7Dm%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estate%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-else-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EisError%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%87%BA%E9%94%99%E4%BA%86%EF%BC%8C%7B%7B%20status%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estate%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-else%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%AE%9A%E4%BD%8D%E4%B8%AD...%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!isLoading%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eget%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E9%87%8D%E6%96%B0%E8%8E%B7%E5%8F%96%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Emap%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eget%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Elocation.point%20%7C%7C%20undefined%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!isLoading%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Elocation.point%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMarker%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBCircle%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EstrokeStyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Esolid%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EstrokeColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%230099ff%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AstrokeOpacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E0.8%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EfillColor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%230099ff%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3AfillOpacity%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E0.5%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Elocation.point%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aradius%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Elocation.accuracy%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20useBrowserLocation%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20map%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20get%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20location%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20isLoading%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20isError%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20status%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EuseBrowserLocation%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20keyword%22%3Enull%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20map%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EresetCenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20style%22%3E%3Cspan%20class%3D%22token%20language-css%22%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.state%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-top%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2015px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.state%20span%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-right%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2025px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"hooks/useBrowserLocation","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%3Cdiv%20class%3D%22state%22%20v-if%3D%22!isLoading%20%26%26%20!isError%22%3E%0A%20%20%20%20%20%20%3Ch5%3E%E5%AE%9A%E4%BD%8D%3A%3C%2Fh5%3E%0A%20%20%20%20%20%20%3Cspan%3E%0A%20%20%20%20%20%20%20%20%E5%9F%8E%E5%B8%82%20-%20%7B%7B%20location.address%3F.province%20%7D%7D-%7B%7B%20location.address%3F.city%20%7D%7D-%7B%7B%20location.address%3F.district%20%7D%7D-%7B%7B%0A%20%20%20%20%20%20%20%20%20%20location.address%3F.street%0A%20%20%20%20%20%20%20%20%7D%7D%0A%20%20%20%20%20%20%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%3E%E7%BA%AC%E5%BA%A6%20-%20%7B%7B%20location.point%3F.lat%20%7D%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%3E%E7%BB%8F%E5%BA%A6%20-%20%7B%7B%20location.point%3F.lng%20%7D%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cbr%20%2F%3E%0A%20%20%20%20%20%20%3Cspan%3E%E5%AE%9A%E4%BD%8D%E7%B2%BE%E5%BA%A6%20-%20%7B%7B%20location.accuracy%20%7D%7Dm%3C%2Fspan%3E%0A%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%3Cdiv%20class%3D%22state%22%20v-else-if%3D%22isError%22%3E%E5%87%BA%E9%94%99%E4%BA%86%EF%BC%8C%7B%7B%20status%20%7D%7D%3C%2Fdiv%3E%0A%20%20%20%20%3Cdiv%20class%3D%22state%22%20v-else%3E%E5%AE%9A%E4%BD%8D%E4%B8%AD...%3C%2Fdiv%3E%0A%20%20%20%20%3Cbutton%20v-if%3D%22!isLoading%22%20class%3D%22myButton%22%20%40click%3D%22get%22%3E%E9%87%8D%E6%96%B0%E8%8E%B7%E5%8F%96%3C%2Fbutton%3E%0A%20%20%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20enableScrollWheelZoom%20ref%3D%22map%22%20%40initd%3D%22get%22%20%3Acenter%3D%22location.point%20%7C%7C%20undefined%22%3E%0A%20%20%20%20%20%20%3Ctemplate%20v-if%3D%22!isLoading%22%3E%0A%20%20%20%20%20%20%20%20%3CBMarker%20%3Aposition%3D%22location.point%22%3E%3C%2FBMarker%3E%0A%20%20%20%20%20%20%20%20%3CBCircle%0A%20%20%20%20%20%20%20%20%20%20strokeStyle%3D%22solid%22%0A%20%20%20%20%20%20%20%20%20%20strokeColor%3D%22%230099ff%22%0A%20%20%20%20%20%20%20%20%20%20%3AstrokeOpacity%3D%220.8%22%0A%20%20%20%20%20%20%20%20%20%20fillColor%3D%22%230099ff%22%0A%20%20%20%20%20%20%20%20%20%20%3AfillOpacity%3D%220.5%22%0A%20%20%20%20%20%20%20%20%20%20%3Acenter%3D%22location.point%22%0A%20%20%20%20%20%20%20%20%20%20%3Aradius%3D%22location.accuracy%22%0A%20%20%20%20%20%20%20%20%2F%3E%0A%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%3C%2FBMap%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20import%20%7B%20useBrowserLocation%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20map%20%3D%20ref()%0A%20%20const%20%7B%20get%2C%20location%2C%20isLoading%2C%20isError%2C%20status%20%7D%20%3D%20useBrowserLocation(null%2C%20()%20%3D%3E%20%7B%0A%20%20%20%20map.value.resetCenter()%0A%20%20%7D)%0A%3C%2Fscript%3E%0A%0A%3Cstyle%3E%0A%20%20.state%20%7B%0A%20%20%20%20margin-top%3A%2015px%3B%0A%20%20%7D%0A%20%20.state%20span%20%7B%0A%20%20%20%20margin-right%3A%2025px%3B%0A%20%20%7D%0A%3C%2Fstyle%3E%0A",description:""},{default:E(()=>[d]),_:1}),F])}const f=l(c,[["render",u]]);export{v as __pageData,f as default}; diff --git a/assets/zh-CN_hooks_useDefaultMarkerIcons.md.Djxvwufr.js b/assets/zh-CN_hooks_useDefaultMarkerIcons.md.Djxvwufr.js new file mode 100644 index 00000000..4b2fed05 --- /dev/null +++ b/assets/zh-CN_hooks_useDefaultMarkerIcons.md.Djxvwufr.js @@ -0,0 +1,40 @@ +import{_ as s,c as i,o as a,al as n}from"./chunks/framework.n6hqIsqL.js";const o=JSON.parse('{"title":"useDefaultMarkerIcons","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/hooks/useDefaultMarkerIcons.md","filePath":"zh-CN/hooks/useDefaultMarkerIcons.md","lastUpdated":1724785300000}'),l={name:"zh-CN/hooks/useDefaultMarkerIcons.md"},t=n(`

useDefaultMarkerIcons

通过该 hooks 可获取一些内置的地图图标(BMapGL.Icon)。

ts
import { useDefaultMarkerIcons } from 'vue3-baidu-map-gl'

参考: marker 图标可选值

用法

ts
const icons = useDefaultMarkerIcons()

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 set 方法后数据才可用

参数

返回值

返回值描述类型
icons所有内置的 BMapGL.Icon 实例对象键值对Record<DefaultMarkerIcons, BMapGL.Icon>

代码示例

vue
<template>
+  <Map @initd="handleInitd"></Map>
+</template>
+
+<script setup lang="ts">
+  import { useAreaBoundary } from 'vue3-baidu-map-gl'
+
+  function handleInitd() {
+    const icons = useDefaultMarkerIcons()
+    // ...
+  }
+</script>

TS 类型定义参考

ts
export declare type DefaultMarkerIcons =
+  | 'simple_red'
+  | 'simple_blue'
+  | 'loc_red'
+  | 'loc_blue'
+  | 'start'
+  | 'end'
+  | 'location'
+  | 'red1'
+  | 'red2'
+  | 'red3'
+  | 'red4'
+  | 'red5'
+  | 'red6'
+  | 'red7'
+  | 'red8'
+  | 'red9'
+  | 'red10'
+  | 'blue1'
+  | 'blue2'
+  | 'blue3'
+  | 'blue4'
+  | 'blue5'
+  | 'blue6'
+  | 'blue7'
+  | 'blue8'
+  | 'blue9'
+  | 'blue10'
+export declare function useDefaultMarkerIcons(): Record<DefaultMarkerIcons, BMapGL.Icon>
`,15),h=[t];function k(p,e,r,d,F,c){return a(),i("div",null,h)}const E=s(l,[["render",k]]);export{o as __pageData,E as default}; diff --git a/assets/zh-CN_hooks_useDefaultMarkerIcons.md.Djxvwufr.lean.js b/assets/zh-CN_hooks_useDefaultMarkerIcons.md.Djxvwufr.lean.js new file mode 100644 index 00000000..4be8af61 --- /dev/null +++ b/assets/zh-CN_hooks_useDefaultMarkerIcons.md.Djxvwufr.lean.js @@ -0,0 +1 @@ +import{_ as s,c as i,o as a,al as n}from"./chunks/framework.n6hqIsqL.js";const o=JSON.parse('{"title":"useDefaultMarkerIcons","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/hooks/useDefaultMarkerIcons.md","filePath":"zh-CN/hooks/useDefaultMarkerIcons.md","lastUpdated":1724785300000}'),l={name:"zh-CN/hooks/useDefaultMarkerIcons.md"},t=n("",15),h=[t];function k(p,e,r,d,F,c){return a(),i("div",null,h)}const E=s(l,[["render",k]]);export{o as __pageData,E as default}; diff --git a/assets/zh-CN_hooks_useIpLocation.md.DEuBASB_.js b/assets/zh-CN_hooks_useIpLocation.md.DEuBASB_.js new file mode 100644 index 00000000..17a90cbb --- /dev/null +++ b/assets/zh-CN_hooks_useIpLocation.md.DEuBASB_.js @@ -0,0 +1,15 @@ +import{_ as E,c as o,j as s,a,I as n,w as l,al as p,D as t,o as C}from"./chunks/framework.n6hqIsqL.js";const b=JSON.parse('{"title":"useIpLocation","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/hooks/useIpLocation.md","filePath":"zh-CN/hooks/useIpLocation.md","lastUpdated":1724785300000}'),c={name:"zh-CN/hooks/useIpLocation.md"},k={id:"useiplocation",tabindex:"-1"},F=s("a",{class:"header-anchor",href:"#useiplocation","aria-label":'Permalink to "useIpLocation "'},"​",-1),u=p('

用于获取用户所在的城市位置信息。(根据用户 IP 自动定位到城市)

ts
import { useIpLocation } from 'vue3-baidu-map-gl'

示例

',3),h=s("p",null,"hooks/useIpLocation",-1),D=p(`

用法

ts
const { get, location, isLoading } = useIpLocation(cal)

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 get 方法后数据才可用

参数

参数描述类型默认值
cal定位成功后的回调函数(location: Ref<Location>) => void-

返回值

返回值描述类型
isLoading是否在获取中boolean
location定位信息{ point: Point code: number name: string }
get获取定位方法,需要在Map组件initd事件触发后才可调用() => void

TS 类型定义参考

ts
import { Ref } from 'vue'
+import { type Point } from 'vue3-baidu-map-gl'
+interface Location {
+  point: Point
+  code: number
+  name: string
+}
+/**
+ * ip定位
+ */
+export declare function useIpLocation(cal?: (location: Ref<Location>) => void): {
+  location: Ref<Location>
+  isLoading: Ref<boolean>
+  get: () => void
+}
`,9);function r(d,g,A,B,y,m){const i=t("Badge"),e=t("Demo");return C(),o("div",null,[s("h1",k,[a("useIpLocation "),n(i,{type:"tip",text:"^0.0.33"}),a(),F]),u,n(e,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estate%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!isLoading%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eh5%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%AE%9A%E4%BD%8D%E7%BB%93%E6%9E%9C%3A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eh5%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%9F%8E%E5%B8%82%20-%20%7B%7B%20location.name%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BA%AC%E5%BA%A6%20-%20%7B%7B%20location.point%3F.lat%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BB%8F%E5%BA%A6%20-%20%7B%7B%20location.point%3F.lng%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estate%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-else%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%AE%9A%E4%BD%8D%E4%B8%AD...%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!isLoading%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eget%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E9%87%8D%E6%96%B0%E8%8E%B7%E5%8F%96%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Emap%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Elocation.point%20%7C%7C%20undefined%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eget%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!isLoading%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Elocation.point%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMarker%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20useIpLocation%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20map%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20get%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20location%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20isLoading%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EuseIpLocation%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20map%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EresetCenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20style%22%3E%3Cspan%20class%3D%22token%20language-css%22%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.state%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-top%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2015px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.state%20span%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-right%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2025px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"hooks/useIpLocation","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%3Cdiv%20class%3D%22state%22%20v-if%3D%22!isLoading%22%3E%0A%20%20%20%20%20%20%3Ch5%3E%E5%AE%9A%E4%BD%8D%E7%BB%93%E6%9E%9C%3A%3C%2Fh5%3E%0A%20%20%20%20%20%20%3Cspan%3E%E5%9F%8E%E5%B8%82%20-%20%7B%7B%20location.name%20%7D%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%3E%E7%BA%AC%E5%BA%A6%20-%20%7B%7B%20location.point%3F.lat%20%7D%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%3E%E7%BB%8F%E5%BA%A6%20-%20%7B%7B%20location.point%3F.lng%20%7D%7D%3C%2Fspan%3E%0A%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%3Cdiv%20class%3D%22state%22%20v-else%3E%E5%AE%9A%E4%BD%8D%E4%B8%AD...%3C%2Fdiv%3E%0A%20%20%20%20%3Cbutton%20v-if%3D%22!isLoading%22%20class%3D%22myButton%22%20%40click%3D%22get%22%3E%E9%87%8D%E6%96%B0%E8%8E%B7%E5%8F%96%3C%2Fbutton%3E%0A%20%20%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20enableScrollWheelZoom%20ref%3D%22map%22%20%3Acenter%3D%22location.point%20%7C%7C%20undefined%22%20%40initd%3D%22get%22%3E%0A%20%20%20%20%20%20%3Ctemplate%20v-if%3D%22!isLoading%22%3E%0A%20%20%20%20%20%20%20%20%3CBMarker%20%3Aposition%3D%22location.point%22%3E%3C%2FBMarker%3E%0A%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%3C%2FBMap%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20import%20%7B%20useIpLocation%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20map%20%3D%20ref()%0A%20%20const%20%7B%20get%2C%20location%2C%20isLoading%20%7D%20%3D%20useIpLocation(()%20%3D%3E%20%7B%0A%20%20%20%20map.value.resetCenter()%0A%20%20%7D)%0A%3C%2Fscript%3E%0A%0A%3Cstyle%3E%0A%20%20.state%20%7B%0A%20%20%20%20margin-top%3A%2015px%3B%0A%20%20%7D%0A%20%20.state%20span%20%7B%0A%20%20%20%20margin-right%3A%2025px%3B%0A%20%20%7D%0A%3C%2Fstyle%3E%0A",description:""},{default:l(()=>[h]),_:1}),D])}const _=E(c,[["render",r]]);export{b as __pageData,_ as default}; diff --git a/assets/zh-CN_hooks_useIpLocation.md.DEuBASB_.lean.js b/assets/zh-CN_hooks_useIpLocation.md.DEuBASB_.lean.js new file mode 100644 index 00000000..23a4b9f3 --- /dev/null +++ b/assets/zh-CN_hooks_useIpLocation.md.DEuBASB_.lean.js @@ -0,0 +1 @@ +import{_ as E,c as o,j as s,a,I as n,w as l,al as p,D as t,o as C}from"./chunks/framework.n6hqIsqL.js";const b=JSON.parse('{"title":"useIpLocation","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/hooks/useIpLocation.md","filePath":"zh-CN/hooks/useIpLocation.md","lastUpdated":1724785300000}'),c={name:"zh-CN/hooks/useIpLocation.md"},k={id:"useiplocation",tabindex:"-1"},F=s("a",{class:"header-anchor",href:"#useiplocation","aria-label":'Permalink to "useIpLocation "'},"​",-1),u=p("",3),h=s("p",null,"hooks/useIpLocation",-1),D=p("",9);function r(d,g,A,B,y,m){const i=t("Badge"),e=t("Demo");return C(),o("div",null,[s("h1",k,[a("useIpLocation "),n(i,{type:"tip",text:"^0.0.33"}),a(),F]),u,n(e,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estate%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!isLoading%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eh5%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%AE%9A%E4%BD%8D%E7%BB%93%E6%9E%9C%3A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eh5%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%9F%8E%E5%B8%82%20-%20%7B%7B%20location.name%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BA%AC%E5%BA%A6%20-%20%7B%7B%20location.point%3F.lat%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BB%8F%E5%BA%A6%20-%20%7B%7B%20location.point%3F.lng%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estate%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-else%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%AE%9A%E4%BD%8D%E4%B8%AD...%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!isLoading%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eget%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E9%87%8D%E6%96%B0%E8%8E%B7%E5%8F%96%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Emap%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Elocation.point%20%7C%7C%20undefined%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eget%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!isLoading%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Elocation.point%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMarker%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20useIpLocation%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20map%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20get%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20location%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20isLoading%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EuseIpLocation%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20map%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3E%3Cspan%20class%3D%22token%20function%22%3EresetCenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20style%22%3E%3Cspan%20class%3D%22token%20language-css%22%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.state%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-top%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2015px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.state%20span%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-right%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2025px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"hooks/useIpLocation","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%3Cdiv%20class%3D%22state%22%20v-if%3D%22!isLoading%22%3E%0A%20%20%20%20%20%20%3Ch5%3E%E5%AE%9A%E4%BD%8D%E7%BB%93%E6%9E%9C%3A%3C%2Fh5%3E%0A%20%20%20%20%20%20%3Cspan%3E%E5%9F%8E%E5%B8%82%20-%20%7B%7B%20location.name%20%7D%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%3E%E7%BA%AC%E5%BA%A6%20-%20%7B%7B%20location.point%3F.lat%20%7D%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%3E%E7%BB%8F%E5%BA%A6%20-%20%7B%7B%20location.point%3F.lng%20%7D%7D%3C%2Fspan%3E%0A%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%3Cdiv%20class%3D%22state%22%20v-else%3E%E5%AE%9A%E4%BD%8D%E4%B8%AD...%3C%2Fdiv%3E%0A%20%20%20%20%3Cbutton%20v-if%3D%22!isLoading%22%20class%3D%22myButton%22%20%40click%3D%22get%22%3E%E9%87%8D%E6%96%B0%E8%8E%B7%E5%8F%96%3C%2Fbutton%3E%0A%20%20%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20enableScrollWheelZoom%20ref%3D%22map%22%20%3Acenter%3D%22location.point%20%7C%7C%20undefined%22%20%40initd%3D%22get%22%3E%0A%20%20%20%20%20%20%3Ctemplate%20v-if%3D%22!isLoading%22%3E%0A%20%20%20%20%20%20%20%20%3CBMarker%20%3Aposition%3D%22location.point%22%3E%3C%2FBMarker%3E%0A%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%3C%2FBMap%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20import%20%7B%20useIpLocation%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20map%20%3D%20ref()%0A%20%20const%20%7B%20get%2C%20location%2C%20isLoading%20%7D%20%3D%20useIpLocation(()%20%3D%3E%20%7B%0A%20%20%20%20map.value.resetCenter()%0A%20%20%7D)%0A%3C%2Fscript%3E%0A%0A%3Cstyle%3E%0A%20%20.state%20%7B%0A%20%20%20%20margin-top%3A%2015px%3B%0A%20%20%7D%0A%20%20.state%20span%20%7B%0A%20%20%20%20margin-right%3A%2025px%3B%0A%20%20%7D%0A%3C%2Fstyle%3E%0A",description:""},{default:l(()=>[h]),_:1}),D])}const _=E(c,[["render",r]]);export{b as __pageData,_ as default}; diff --git a/assets/zh-CN_hooks_usePoint.md.CaVondzo.js b/assets/zh-CN_hooks_usePoint.md.CaVondzo.js new file mode 100644 index 00000000..7bf2f3ab --- /dev/null +++ b/assets/zh-CN_hooks_usePoint.md.CaVondzo.js @@ -0,0 +1,35 @@ +import{_ as s,c as i,o as a,al as n}from"./chunks/framework.n6hqIsqL.js";const c=JSON.parse('{"title":"usePoint","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/hooks/usePoint.md","filePath":"zh-CN/hooks/usePoint.md","lastUpdated":1724785300000}'),t={name:"zh-CN/hooks/usePoint.md"},h=n(`

usePoint

通过该 hooks 可获取一个地图实例点(BMapGL.Point)。

ts
import { usePoint } from 'vue3-baidu-map-gl'

用法

ts
const { point, set } = usePoint()

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 set 方法后数据才可用

参数

返回值

返回值描述类型
pointBMapGL.Point 实例对象,默认为 null,调用 set 方法后才可用BMapGL.Point
set设置实例点坐标方法,需要在Map组件initd事件触发后才可调用({ lng: number; lat: number }) => void

代码示例

html
<Map @initd="handleInitd"></Map>
+
+<script setup lang="ts">
+  import { useAreaBoundary } from 'vue3-baidu-map-gl'
+
+  const { point, set } = usePoint()
+
+  function handleInitd() {
+    set({
+      lng: 116.297611,
+      lat: 40.047363
+    })
+  }
+</script>

TS 类型定义参考

ts
import { Ref } from 'vue'
+import { Point } from '../utils'
+/**
+ * 地图经纬度点
+ */
+export declare type Point = {
+  lng: number
+  lat: number
+}
+/**
+ * 获取一个地图经纬度点实例
+ */
+export declare function usePoint(): {
+  /**
+   * BMapGL.Point 实例对象
+   */
+  point: Ref<BMapGL.Point | null>
+  /**
+   * 设置实例点坐标
+   */
+  set: ({ lng, lat }: Point) => void
+}
`,14),l=[h];function p(k,e,d,r,E,o){return a(),i("div",null,l)}const y=s(t,[["render",p]]);export{c as __pageData,y as default}; diff --git a/assets/zh-CN_hooks_usePoint.md.CaVondzo.lean.js b/assets/zh-CN_hooks_usePoint.md.CaVondzo.lean.js new file mode 100644 index 00000000..86aed488 --- /dev/null +++ b/assets/zh-CN_hooks_usePoint.md.CaVondzo.lean.js @@ -0,0 +1 @@ +import{_ as s,c as i,o as a,al as n}from"./chunks/framework.n6hqIsqL.js";const c=JSON.parse('{"title":"usePoint","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/hooks/usePoint.md","filePath":"zh-CN/hooks/usePoint.md","lastUpdated":1724785300000}'),t={name:"zh-CN/hooks/usePoint.md"},h=n("",14),l=[h];function p(k,e,d,r,E,o){return a(),i("div",null,l)}const y=s(t,[["render",p]]);export{c as __pageData,y as default}; diff --git a/assets/zh-CN_hooks_usePointConvertor.md.DRPIMBVL.js b/assets/zh-CN_hooks_usePointConvertor.md.DRPIMBVL.js new file mode 100644 index 00000000..c912f7c7 --- /dev/null +++ b/assets/zh-CN_hooks_usePointConvertor.md.DRPIMBVL.js @@ -0,0 +1,80 @@ +import{_ as n,c as t,I as i,w as p,al as s,D as l,o as e,j as k}from"./chunks/framework.n6hqIsqL.js";const y=JSON.parse('{"title":"usePointConvertor 坐标点转换","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/hooks/usePointConvertor.md","filePath":"zh-CN/hooks/usePointConvertor.md","lastUpdated":1724785300000}'),E={name:"zh-CN/hooks/usePointConvertor.md"},o=s('

usePointConvertor 坐标点转换

用于将其他坐标系的坐标转换为百度坐标。

ts
import { usePointConvertor } from 'vue3-baidu-map-gl'

示例

',4),h=k("p",null,"hooks/usePointConvertor",-1),C=s(`

用法

ts
const { result, convert, isLoading, isError, status } = usePointConvertor()

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 convert 方法后数据才可用

参数

返回值

返回值描述类型
result目标坐标点数组{ lng: number; lat: number }[]
isLoading是否加载中boolean
isError是否出错boolean
status当前状态UsePointConvertorStatus
convert点坐标转换方法,需要在Map组件initd事件触发后才可调用({ lng: number; lat: number }[], CoordinatesFromType, CoordinatesToType) => void

CoordinatesFromType

原坐标类型

ts
export enum CoordinatesFromType {
+  /**
+   *  WGS84坐标(GPS标准坐标)
+   */
+  'COORDINATES_WGS84' = 1,
+  /**
+   *  WGS84的平面墨卡托坐标(搜狗地图坐标)
+   */
+  'COORDINATES_WGS84_MC' = 2,
+  /**
+   * GCJ02坐标(火星坐标),即高德地图、腾讯地图、谷歌坐标和MapABC等地图使用的坐标;
+   */
+  'COORDINATES_GCJ02' = 3,
+  /**
+   *  GCJ02的平面墨卡托坐标(火星坐标对应的墨卡托平面坐标)
+   */
+  'COORDINATES_GCJ02_MC' = 4,
+  /**
+   *  百度地图采用的经纬度坐标(bd09ll)
+   */
+  'COORDINATES_BD09' = 5,
+  /**
+   * 百度地图采用的墨卡托平面坐标(bd09mc)
+   */
+  'COORDINATES_BD09_MC' = 6,
+  /**
+   * 图吧地图坐标
+   */
+  'COORDINATES_MAPBAR' = 7,
+  /**
+   * 51地图坐标
+   */
+  'COORDINATES_51' = 8
+}

CoordinatesToType

目标坐标类型

ts
export enum CoordinatesToType {
+  /**
+   * GCJ02坐标(火星坐标),即高德地图、腾讯地图、谷歌坐标和MapABC等地图使用的坐标;
+   */
+  'COORDINATES_GCJ02' = 3,
+  /**
+   * 百度地图采用的经纬度坐标(bd09ll)
+   */
+  'COORDINATES_BD09' = 5,
+  /**
+   * 百度地图采用的墨卡托平面坐标(bd09mc)
+   */
+  'COORDINATES_BD09_MC' = 6
+}

UsePointConvertorStatus

警告

当转换不被允许的坐标系,如:X→GPS,可能不会响应返回以下错误 code,会拒绝响应,浏览器直接报跨域请求

code描述
0ok 正常 服务请求正常召回
1内部错误
4转换失败 X→GPS 时必现,根据法律规定,不支持将任何类型的坐标转换为 GPS 坐标
21from 非法
22to 非法
24coords 格式非法
25coords 个数非法,超过限制
26参数错误

代码示例

html
<Map @initd="handleInitd"></Map>
+
+<script setup lang="ts">
+  import { useAreaBoundary } from 'vue3-baidu-map-gl'
+
+  const { point, set } = usePoint()
+
+  function handleInitd() {
+    set({
+      lng: 116.297611,
+      lat: 40.047363
+    })
+  }
+</script>

TS 类型定义参考

ts
import { Ref } from 'vue'
+/**
+ * 地图经纬度点
+ */
+export declare type Point = {
+  lng: number
+  lat: number
+}
+/**
+ * 获取一个地图经纬度点实例
+ */
+export declare function usePoint(): {
+  /**
+   * BMapGL.Point 实例对象
+   */
+  point: Ref<BMapGL.Point | null>
+  /**
+   * 设置实例点坐标
+   */
+  set: ({ lng, lat }: { lng: number; lat: number }) => void
+}
`,20);function r(c,d,F,D,u,g){const a=l("Demo");return e(),t("div",null,[o,i(a,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EgooglePoint%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!isLoading%20%26amp%3B%26amp%3B%20!isError%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-for%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E(point%2C%20index)%20in%20result%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epoint%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMarker%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBLabel%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epoint%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20special-attr%22%3E%3Cspan%20class%3D%22token%20attr-name%22%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20value%20css%20language-css%22%3E%3Cspan%20class%3D%22token%20property%22%3Ecolor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%23333%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20property%22%3Efont-size%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%209px%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Econtent%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E8%BD%AC%E6%8D%A2%E5%90%8E%E7%9A%84%E7%99%BE%E5%BA%A6%E6%A0%87%E6%B3%A8%EF%BC%88%E6%AD%A3%E7%A1%AE%EF%BC%89%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBLabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EgooglePoint%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMarker%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBLabel%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EgooglePoint%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20special-attr%22%3E%3Cspan%20class%3D%22token%20attr-name%22%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20value%20css%20language-css%22%3E%3Cspan%20class%3D%22token%20property%22%3Ecolor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%23333%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20property%22%3Efont-size%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%209px%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Econtent%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E6%9C%AA%E8%BD%AC%E6%8D%A2%E7%9A%84%E8%B0%B7%E6%AD%8C%E6%A0%87%E6%B3%A8%EF%BC%88%E9%94%99%E8%AF%AF%EF%BC%89%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBLabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20CoordinatesFromType%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20CoordinatesToType%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20usePointConvertor%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20convert%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20result%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20isLoading%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20isError%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EusePointConvertor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20googlePoint%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.32715863448607%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E39.990912172420714%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Econvert%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3EgooglePoint%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20CoordinatesFromType%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'COORDINATES_GCJ02'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20CoordinatesToType%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'COORDINATES_BD09'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"hooks/usePointConvertor","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%40initd%3D%22handleInitd%22%20%3Acenter%3D%22googlePoint%22%3E%0A%20%20%20%20%3Ctemplate%20v-if%3D%22!isLoading%20%26%26%20!isError%22%3E%0A%20%20%20%20%20%20%3Ctemplate%20v-for%3D%22(point%2C%20index)%20in%20result%22%3E%0A%20%20%20%20%20%20%20%20%3CBMarker%20%3Aposition%3D%22point%22%3E%3C%2FBMarker%3E%0A%20%20%20%20%20%20%20%20%3CBLabel%20%3Aposition%3D%22point%22%20style%3D%22color%3A%20%23333%3B%20font-size%3A%209px%22%20content%3D%22%E8%BD%AC%E6%8D%A2%E5%90%8E%E7%9A%84%E7%99%BE%E5%BA%A6%E6%A0%87%E6%B3%A8%EF%BC%88%E6%AD%A3%E7%A1%AE%EF%BC%89%22%3E%3C%2FBLabel%3E%0A%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%3CBMarker%20%3Aposition%3D%22googlePoint%22%3E%3C%2FBMarker%3E%0A%20%20%20%20%3CBLabel%20%3Aposition%3D%22googlePoint%22%20style%3D%22color%3A%20%23333%3B%20font-size%3A%209px%22%20content%3D%22%E6%9C%AA%E8%BD%AC%E6%8D%A2%E7%9A%84%E8%B0%B7%E6%AD%8C%E6%A0%87%E6%B3%A8%EF%BC%88%E9%94%99%E8%AF%AF%EF%BC%89%22%3E%3C%2FBLabel%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20CoordinatesFromType%2C%20CoordinatesToType%2C%20usePointConvertor%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20%7B%20convert%2C%20result%2C%20isLoading%2C%20isError%20%7D%20%3D%20usePointConvertor()%0A%20%20const%20googlePoint%20%3D%20%7B%20lng%3A%20116.32715863448607%2C%20lat%3A%2039.990912172420714%20%7D%0A%20%20function%20handleInitd()%20%7B%0A%20%20%20%20convert(%5BgooglePoint%5D%2C%20CoordinatesFromType%5B'COORDINATES_GCJ02'%5D%2C%20CoordinatesToType%5B'COORDINATES_BD09'%5D)%0A%20%20%7D%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E5%B0%86%E8%B0%B7%E6%AD%8C%E5%9D%90%E6%A0%87%E8%BD%AC%E6%8D%A2%E4%B8%BA%E7%99%BE%E5%BA%A6%E5%9D%90%E6%A0%87%3C%2Fp%3E%0A"},{default:p(()=>[h]),_:1}),C])}const B=n(E,[["render",r]]);export{y as __pageData,B as default}; diff --git a/assets/zh-CN_hooks_usePointConvertor.md.DRPIMBVL.lean.js b/assets/zh-CN_hooks_usePointConvertor.md.DRPIMBVL.lean.js new file mode 100644 index 00000000..1d2a0ca4 --- /dev/null +++ b/assets/zh-CN_hooks_usePointConvertor.md.DRPIMBVL.lean.js @@ -0,0 +1 @@ +import{_ as n,c as t,I as i,w as p,al as s,D as l,o as e,j as k}from"./chunks/framework.n6hqIsqL.js";const y=JSON.parse('{"title":"usePointConvertor 坐标点转换","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/hooks/usePointConvertor.md","filePath":"zh-CN/hooks/usePointConvertor.md","lastUpdated":1724785300000}'),E={name:"zh-CN/hooks/usePointConvertor.md"},o=s("",4),h=k("p",null,"hooks/usePointConvertor",-1),C=s("",20);function r(c,d,F,D,u,g){const a=l("Demo");return e(),t("div",null,[o,i(a,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EgooglePoint%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!isLoading%20%26amp%3B%26amp%3B%20!isError%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-for%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E(point%2C%20index)%20in%20result%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epoint%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMarker%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBLabel%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epoint%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20special-attr%22%3E%3Cspan%20class%3D%22token%20attr-name%22%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20value%20css%20language-css%22%3E%3Cspan%20class%3D%22token%20property%22%3Ecolor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%23333%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20property%22%3Efont-size%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%209px%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Econtent%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E8%BD%AC%E6%8D%A2%E5%90%8E%E7%9A%84%E7%99%BE%E5%BA%A6%E6%A0%87%E6%B3%A8%EF%BC%88%E6%AD%A3%E7%A1%AE%EF%BC%89%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBLabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EgooglePoint%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMarker%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBLabel%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EgooglePoint%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20special-attr%22%3E%3Cspan%20class%3D%22token%20attr-name%22%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20value%20css%20language-css%22%3E%3Cspan%20class%3D%22token%20property%22%3Ecolor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%23333%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20property%22%3Efont-size%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%209px%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Econtent%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%E6%9C%AA%E8%BD%AC%E6%8D%A2%E7%9A%84%E8%B0%B7%E6%AD%8C%E6%A0%87%E6%B3%A8%EF%BC%88%E9%94%99%E8%AF%AF%EF%BC%89%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBLabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20CoordinatesFromType%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20CoordinatesToType%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20usePointConvertor%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20convert%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20result%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20isLoading%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20isError%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EusePointConvertor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20googlePoint%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.32715863448607%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E39.990912172420714%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Econvert%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3EgooglePoint%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20CoordinatesFromType%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'COORDINATES_GCJ02'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20CoordinatesToType%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20string%22%3E'COORDINATES_BD09'%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"hooks/usePointConvertor","raw-source":"%3Ctemplate%3E%0A%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20%40initd%3D%22handleInitd%22%20%3Acenter%3D%22googlePoint%22%3E%0A%20%20%20%20%3Ctemplate%20v-if%3D%22!isLoading%20%26%26%20!isError%22%3E%0A%20%20%20%20%20%20%3Ctemplate%20v-for%3D%22(point%2C%20index)%20in%20result%22%3E%0A%20%20%20%20%20%20%20%20%3CBMarker%20%3Aposition%3D%22point%22%3E%3C%2FBMarker%3E%0A%20%20%20%20%20%20%20%20%3CBLabel%20%3Aposition%3D%22point%22%20style%3D%22color%3A%20%23333%3B%20font-size%3A%209px%22%20content%3D%22%E8%BD%AC%E6%8D%A2%E5%90%8E%E7%9A%84%E7%99%BE%E5%BA%A6%E6%A0%87%E6%B3%A8%EF%BC%88%E6%AD%A3%E7%A1%AE%EF%BC%89%22%3E%3C%2FBLabel%3E%0A%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%3CBMarker%20%3Aposition%3D%22googlePoint%22%3E%3C%2FBMarker%3E%0A%20%20%20%20%3CBLabel%20%3Aposition%3D%22googlePoint%22%20style%3D%22color%3A%20%23333%3B%20font-size%3A%209px%22%20content%3D%22%E6%9C%AA%E8%BD%AC%E6%8D%A2%E7%9A%84%E8%B0%B7%E6%AD%8C%E6%A0%87%E6%B3%A8%EF%BC%88%E9%94%99%E8%AF%AF%EF%BC%89%22%3E%3C%2FBLabel%3E%0A%20%20%3C%2FBMap%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20CoordinatesFromType%2C%20CoordinatesToType%2C%20usePointConvertor%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20%7B%20convert%2C%20result%2C%20isLoading%2C%20isError%20%7D%20%3D%20usePointConvertor()%0A%20%20const%20googlePoint%20%3D%20%7B%20lng%3A%20116.32715863448607%2C%20lat%3A%2039.990912172420714%20%7D%0A%20%20function%20handleInitd()%20%7B%0A%20%20%20%20convert(%5BgooglePoint%5D%2C%20CoordinatesFromType%5B'COORDINATES_GCJ02'%5D%2C%20CoordinatesToType%5B'COORDINATES_BD09'%5D)%0A%20%20%7D%0A%3C%2Fscript%3E%0A",description:"%3Cp%3E%E5%B0%86%E8%B0%B7%E6%AD%8C%E5%9D%90%E6%A0%87%E8%BD%AC%E6%8D%A2%E4%B8%BA%E7%99%BE%E5%BA%A6%E5%9D%90%E6%A0%87%3C%2Fp%3E%0A"},{default:p(()=>[h]),_:1}),C])}const B=n(E,[["render",r]]);export{y as __pageData,B as default}; diff --git a/assets/zh-CN_hooks_usePointGeocoder.md.Dik6QxCV.js b/assets/zh-CN_hooks_usePointGeocoder.md.Dik6QxCV.js new file mode 100644 index 00000000..dfbad6d1 --- /dev/null +++ b/assets/zh-CN_hooks_usePointGeocoder.md.Dik6QxCV.js @@ -0,0 +1,46 @@ +import{_ as l,c as E,j as s,a as p,I as a,w as i,al as n,D as e,o as C}from"./chunks/framework.n6hqIsqL.js";const f=JSON.parse('{"title":"usePointGeocoder","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/hooks/usePointGeocoder.md","filePath":"zh-CN/hooks/usePointGeocoder.md","lastUpdated":1724785300000}'),c={name:"zh-CN/hooks/usePointGeocoder.md"},k={id:"usepointgeocoder",tabindex:"-1"},r=s("a",{class:"header-anchor",href:"#usepointgeocoder","aria-label":'Permalink to "usePointGeocoder "'},"​",-1),u=n('

由坐标点解析地址信息

ts
import { usePointGeocoder } from 'vue3-baidu-map-gl'

单个坐标点解析

使用坐标点对象作为 get 方法参数解析单个坐标点

',4),F=s("p",null,"hooks/usePointGeocoder/index",-1),d=n(`

TIP

在 Ts 中使用批量解析坐标点时,使用泛型PointGeocoderResult内部可推断result为可推断为PointGeocoderResult,从而避免读取值时 ts 的报错。

ts
import { usePointGeocoder, PointGeocoderResult } from 'vue3-baidu-map-gl'
+const { result } = usePointGeocoder<PointGeocoderResult>()

批量解析坐标点

使用坐标点对象数组作为 get 方法参数批量解析坐标点

`,3),D=s("p",null,"hooks/usePointGeocoder/batch",-1),h=n(`

TIP

在 Ts 中使用批量解析坐标点时,使用泛型PointGeocoderResult[]内部可推断result为可推断为PointGeocoderResult[],从而避免遍历时 ts 的报错。

ts
import { usePointGeocoder, PointGeocoderResult } from 'vue3-baidu-map-gl'
+const { result } = usePointGeocoder<PointGeocoderResult[]>()

用法

ts
const { get, result, isLoading, isEmpty } = usePointGeocoder(options, cal)

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 get 方法后数据才可用

参数

参数描述类型默认值
options解析配置UsePointGeocoderOptions-
cal定位成功后的回调函数(result: Ref<PointGeocoderResult | PointGeocoderResult[] | null>) => void-

UsePointGeocoderOptions

属性描述类型
poiRadius附近 POI 所处于的最大半径,默认为 100 米number
numPois返回的 POI 点个数,默认为 10 个。取值范围number

返回值

返回值描述类型
isLoading是否在获取中boolean
isEmpty是否有解析结果boolean
result坐标点解析结果Ref<PointGeocoderResult | PointGeocoderResult[] | null>
get获取坐标点信息方法,需要在Map组件initd事件触发后才可调用(point: Point | Point[]) => void]

Point

ts
type Point = { lng: number; lat: number }

PointGeocoderResult

属性描述类型
point坐标点boolean
string地址描述string
AddressComponent结构化的地址描述AddressComponent
surroundingPois附近的 POI 点LocalResultPoi
business商圈字段,代表此点所属的商圈string
AddressComponent
属性描述类型
streetNumber门牌号码string
street街道名称string
district区县名称string
city城市名称string
province省份名称string
LocalResultPoi
属性描述类型
title结果的名称标题string
point该结果所在的地理位置point
url在百度地图中展示该结果点的详情信息链接string
address地址(根据数据部分提供)。注:当结果点类型为公交站或地铁站时,地址信息为经过该站点的所有车次string
city所在城市string
phoneNumber电话,根据数据部分提供string
postcode邮政编码,根据数据部分提供string
type类型,根据数据部分提供PoiType
uid地点 idstring
tagsPOI 的标签,如商务大厦、餐馆等。string[]
PoiType
描述
0一般位置点
1公交车站位置点
3地铁车站位置点

TS 类型定义参考

ts
import { Ref } from 'vue'
+import { Point } from 'vue3-baidu-map-gl'
+export interface PointGeocoderResult {
+  /**
+   * 坐标点
+   */
+  point: Point
+  /**
+   * 地址描述
+   */
+  address: string
+  /**
+   * 结构化的地址描述
+   */
+  addressComponents: {
+    city: string
+    district: string
+    province: string
+    street: string
+    streetNumber: string
+  }
+  /**
+   * 附近的POI点
+   */
+  surroundingPois: Array<BMapGL.LocalResultPoi>
+  /**
+   * 商圈字段,代表此点所属的商圈
+   */
+  business: string
+}
+/**
+ * 由地址解析坐标点
+ */
+export declare function usePointGeocoder<
+  T extends PointGeocoderResult | PointGeocoderResult[] = PointGeocoderResult | PointGeocoderResult[]
+>(
+  options?: BMapGL.LocationOptions | null,
+  cal?: (point: Ref<T>) => void
+): {
+  get: (point: T extends PointGeocoderResult ? Point : Point[]) => void
+  result: Ref<T | null | undefined>
+  isLoading: Ref<boolean>
+  isEmpty: Ref<boolean>
+}
`,22);function A(g,y,B,m,b,P){const o=e("Badge"),t=e("Demo");return C(),E("div",null,[s("h1",k,[p("usePointGeocoder "),a(o,{type:"tip",text:"^0.0.39"}),p(),r]),u,a(t,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Emap%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epoint%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleClick%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!isLoading%20%26amp%3B%26amp%3B%20!isEmpty%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epoint%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMarker%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBLabel%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20special-attr%22%3E%3Cspan%20class%3D%22token%20attr-name%22%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20value%20css%20language-css%22%3E%3Cspan%20class%3D%22token%20property%22%3Ecolor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%23333%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20property%22%3Efont-size%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%209px%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eresult.point%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acontent%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%60%E5%9C%B0%E5%9D%80%3A%20%24%7Bresult%3F.address%7D%20%E6%89%80%E5%B1%9E%E5%95%86%E5%9C%88%3A%24%7Bresult%3F.business%7D%20%E6%9C%80%E5%8C%B9%E9%85%8D%E5%9C%B0%E7%82%B9%3A%20%24%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20result%3F.surroundingPois%5B0%5D%3F.title%20%7C%7C%20'%E6%97%A0'%0A%20%20%20%20%20%20%20%20%20%20%7D%60%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20usePointGeocoder%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20PointGeocoderResult%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20map%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20get%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20result%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20isLoading%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20isEmpty%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20usePointGeocoder%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3EPointGeocoderResult%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20point%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.30793520652882%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.05861561613348%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20markerPoint%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20point%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Eget%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Epoint%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleClick%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3Ee%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20markerPoint%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20e%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Elatlng%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Eget%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Ee%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Elatlng%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20style%22%3E%3Cspan%20class%3D%22token%20language-css%22%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.state%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-top%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2015px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.state%20span%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-right%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2025px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"hooks/usePointGeocoder/index","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20enableScrollWheelZoom%20ref%3D%22map%22%20%3Acenter%3D%22point%22%20%40initd%3D%22handleInitd%22%20%40click%3D%22handleClick%22%3E%0A%20%20%20%20%20%20%3Ctemplate%20v-if%3D%22!isLoading%20%26%26%20!isEmpty%22%3E%0A%20%20%20%20%20%20%20%20%3CBMarker%20%3Aposition%3D%22point%22%3E%3C%2FBMarker%3E%0A%20%20%20%20%20%20%20%20%3CBLabel%0A%20%20%20%20%20%20%20%20%20%20style%3D%22color%3A%20%23333%3B%20font-size%3A%209px%22%0A%20%20%20%20%20%20%20%20%20%20%3Aposition%3D%22result.point%22%0A%20%20%20%20%20%20%20%20%20%20%3Acontent%3D%22%60%E5%9C%B0%E5%9D%80%3A%20%24%7Bresult%3F.address%7D%20%E6%89%80%E5%B1%9E%E5%95%86%E5%9C%88%3A%24%7Bresult%3F.business%7D%20%E6%9C%80%E5%8C%B9%E9%85%8D%E5%9C%B0%E7%82%B9%3A%20%24%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20result%3F.surroundingPois%5B0%5D%3F.title%20%7C%7C%20'%E6%97%A0'%0A%20%20%20%20%20%20%20%20%20%20%7D%60%22%0A%20%20%20%20%20%20%20%20%2F%3E%0A%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%3C%2FBMap%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20import%20%7B%20usePointGeocoder%2C%20PointGeocoderResult%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20map%20%3D%20ref()%0A%20%20const%20%7B%20get%2C%20result%2C%20isLoading%2C%20isEmpty%20%7D%20%3D%20usePointGeocoder%3CPointGeocoderResult%3E()%0A%20%20const%20point%20%3D%20ref(%7B%20lng%3A%20116.30793520652882%2C%20lat%3A%2040.05861561613348%20%7D)%0A%20%20const%20markerPoint%20%3D%20point%0A%0A%20%20function%20handleInitd()%20%7B%0A%20%20%20%20get(point.value)%0A%20%20%7D%0A%20%20function%20handleClick(e)%20%7B%0A%20%20%20%20markerPoint.value%20%3D%20e.latlng%0A%20%20%20%20get(e.latlng)%0A%20%20%7D%0A%3C%2Fscript%3E%0A%0A%3Cstyle%3E%0A%20%20.state%20%7B%0A%20%20%20%20margin-top%3A%2015px%3B%0A%20%20%7D%0A%20%20.state%20span%20%7B%0A%20%20%20%20margin-right%3A%2025px%3B%0A%20%20%7D%0A%3C%2Fstyle%3E%0A",description:"%3Cp%3E%E9%BC%A0%E6%A0%87%E7%82%B9%E5%87%BB%E5%9C%B0%E5%9B%BE%E9%80%89%E6%8B%A9%E5%9D%90%E6%A0%87%E7%82%B9%E8%A7%A3%E6%9E%90%3C%2Fp%3E%0A"},{default:i(()=>[F]),_:1}),d,a(t,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E13%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lng%3A%20116.328749%2C%20lat%3A%2040.026922%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBControl%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epoint-list%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aoffset%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20x%3A%2010%2C%20y%3A%2010%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eul%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eli%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-for%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E(item%2C%20index)%20in%20points%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Akey%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eindex%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%7B%7B%20index%20%2B%201%20%7D%7D.%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BA%AC%E5%BA%A6%20-%20%7B%7B%20item.lat%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BB%8F%E5%BA%A6%20-%20%7B%7B%20item.lng%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eli%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eul%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBControl%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!isLoading%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-for%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E(item%2C%20index)%20in%20result%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eitem.point%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMarker%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBLabel%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20special-attr%22%3E%3Cspan%20class%3D%22token%20attr-name%22%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20value%20css%20language-css%22%3E%3Cspan%20class%3D%22token%20property%22%3Ecolor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%23333%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20property%22%3Efont-size%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%209px%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eitem.point%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acontent%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%60%24%7Bindex%7D.%20%E5%9C%B0%E5%9D%80%3A%20%24%7Bitem.address%7D%20%E6%89%80%E5%B1%9E%E5%95%86%E5%9C%88%3A%24%7Bitem.business%7D%20%E6%9C%80%E5%8C%B9%E9%85%8D%E5%9C%B0%E7%82%B9%3A%20%24%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20item%3F.surroundingPois%5B0%5D%3F.title%20%7C%7C%20'%E6%97%A0'%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%60%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBLabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20usePointGeocoder%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20PointGeocoderResult%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20points%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.307852%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.057031%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.313082%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.047674%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.328749%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.026922%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.347571%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E39.988698%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.316163%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E39.997753%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.345867%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E39.998333%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.403472%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E39.999411%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.307901%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.05901%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20get%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20result%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20isLoading%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20usePointGeocoder%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3EPointGeocoderResult%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Eget%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Epoints%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20style%22%3E%3Cspan%20class%3D%22token%20language-css%22%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.point-list%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Ecolor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%23333%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Ebackground-color%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%23fff%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Efont-size%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2010px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Epadding%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2010px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Eborder-radius%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%208px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Ebox-shadow%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Ergb%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E0%200%200%20%2F%2015%25%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%201px%202px%201px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.point-list%20ul%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%200%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Epadding%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%200%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.point-list%20li%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Elist-style%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20none%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Eborder-bottom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%201px%20solid%20%23f1f1f1%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.point-list%20span%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-right%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2015px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"hooks/usePointGeocoder/batch","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%3CBMap%0A%20%20%20%20%20%20v-bind%3D%22%24attrs%22%0A%20%20%20%20%20%20enableScrollWheelZoom%0A%20%20%20%20%20%20%3Azoom%3D%2213%22%0A%20%20%20%20%20%20%3Acenter%3D%22%7B%20lng%3A%20116.328749%2C%20lat%3A%2040.026922%20%7D%22%0A%20%20%20%20%20%20%40initd%3D%22handleInitd%22%0A%20%20%20%20%3E%0A%20%20%20%20%20%20%3CBControl%20class%3D%22point-list%22%20%3Aoffset%3D%22%7B%20x%3A%2010%2C%20y%3A%2010%20%7D%22%3E%0A%20%20%20%20%20%20%20%20%3Cul%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cli%20v-for%3D%22(item%2C%20index)%20in%20points%22%20%3Akey%3D%22index%22%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cdiv%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%3E%7B%7B%20index%20%2B%201%20%7D%7D.%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%3E%E7%BA%AC%E5%BA%A6%20-%20%7B%7B%20item.lat%20%7D%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%3E%E7%BB%8F%E5%BA%A6%20-%20%7B%7B%20item.lng%20%7D%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%20%20%20%20%20%20%3C%2Fli%3E%0A%20%20%20%20%20%20%20%20%3C%2Ful%3E%0A%20%20%20%20%20%20%3C%2FBControl%3E%0A%20%20%20%20%20%20%3Ctemplate%20v-if%3D%22!isLoading%22%3E%0A%20%20%20%20%20%20%20%20%3Ctemplate%20v-for%3D%22(item%2C%20index)%20in%20result%22%3E%0A%20%20%20%20%20%20%20%20%20%20%3CBMarker%20%3Aposition%3D%22item.point%22%3E%3C%2FBMarker%3E%0A%20%20%20%20%20%20%20%20%20%20%3CBLabel%0A%20%20%20%20%20%20%20%20%20%20%20%20style%3D%22color%3A%20%23333%3B%20font-size%3A%209px%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Aposition%3D%22item.point%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Acontent%3D%22%60%24%7Bindex%7D.%20%E5%9C%B0%E5%9D%80%3A%20%24%7Bitem.address%7D%20%E6%89%80%E5%B1%9E%E5%95%86%E5%9C%88%3A%24%7Bitem.business%7D%20%E6%9C%80%E5%8C%B9%E9%85%8D%E5%9C%B0%E7%82%B9%3A%20%24%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20item%3F.surroundingPois%5B0%5D%3F.title%20%7C%7C%20'%E6%97%A0'%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%60%22%0A%20%20%20%20%20%20%20%20%20%20%3E%3C%2FBLabel%3E%0A%20%20%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%3C%2FBMap%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20usePointGeocoder%2C%20PointGeocoderResult%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20points%20%3D%20%5B%0A%20%20%20%20%7B%20lng%3A%20116.307852%2C%20lat%3A%2040.057031%20%7D%2C%0A%20%20%20%20%7B%20lng%3A%20116.313082%2C%20lat%3A%2040.047674%20%7D%2C%0A%20%20%20%20%7B%20lng%3A%20116.328749%2C%20lat%3A%2040.026922%20%7D%2C%0A%20%20%20%20%7B%20lng%3A%20116.347571%2C%20lat%3A%2039.988698%20%7D%2C%0A%20%20%20%20%7B%20lng%3A%20116.316163%2C%20lat%3A%2039.997753%20%7D%2C%0A%20%20%20%20%7B%20lng%3A%20116.345867%2C%20lat%3A%2039.998333%20%7D%2C%0A%20%20%20%20%7B%20lng%3A%20116.403472%2C%20lat%3A%2039.999411%20%7D%2C%0A%20%20%20%20%7B%20lng%3A%20116.307901%2C%20lat%3A%2040.05901%20%7D%0A%20%20%5D%0A%20%20const%20%7B%20get%2C%20result%2C%20isLoading%20%7D%20%3D%20usePointGeocoder%3CPointGeocoderResult%5B%5D%3E()%0A%20%20function%20handleInitd()%20%7B%0A%20%20%20%20get(points)%0A%20%20%7D%0A%3C%2Fscript%3E%0A%0A%3Cstyle%3E%0A%20%20.point-list%20%7B%0A%20%20%20%20color%3A%20%23333%3B%0A%20%20%20%20background-color%3A%20%23fff%3B%0A%20%20%20%20font-size%3A%2010px%3B%0A%20%20%20%20padding%3A%2010px%3B%0A%20%20%20%20border-radius%3A%208px%3B%0A%20%20%20%20box-shadow%3A%20rgb(0%200%200%20%2F%2015%25)%201px%202px%201px%3B%0A%20%20%7D%0A%20%20.point-list%20ul%20%7B%0A%20%20%20%20margin%3A%200%3B%0A%20%20%20%20padding%3A%200%3B%0A%20%20%7D%0A%20%20.point-list%20li%20%7B%0A%20%20%20%20list-style%3A%20none%3B%0A%20%20%20%20border-bottom%3A%201px%20solid%20%23f1f1f1%3B%0A%20%20%7D%0A%20%20.point-list%20span%20%7B%0A%20%20%20%20margin-right%3A%2015px%3B%0A%20%20%7D%0A%3C%2Fstyle%3E%0A",description:""},{default:i(()=>[D]),_:1}),h])}const x=l(c,[["render",A]]);export{f as __pageData,x as default}; diff --git a/assets/zh-CN_hooks_usePointGeocoder.md.Dik6QxCV.lean.js b/assets/zh-CN_hooks_usePointGeocoder.md.Dik6QxCV.lean.js new file mode 100644 index 00000000..53bafa11 --- /dev/null +++ b/assets/zh-CN_hooks_usePointGeocoder.md.Dik6QxCV.lean.js @@ -0,0 +1 @@ +import{_ as l,c as E,j as s,a as p,I as a,w as i,al as n,D as e,o as C}from"./chunks/framework.n6hqIsqL.js";const f=JSON.parse('{"title":"usePointGeocoder","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/hooks/usePointGeocoder.md","filePath":"zh-CN/hooks/usePointGeocoder.md","lastUpdated":1724785300000}'),c={name:"zh-CN/hooks/usePointGeocoder.md"},k={id:"usepointgeocoder",tabindex:"-1"},r=s("a",{class:"header-anchor",href:"#usepointgeocoder","aria-label":'Permalink to "usePointGeocoder "'},"​",-1),u=n("",4),F=s("p",null,"hooks/usePointGeocoder/index",-1),d=n("",3),D=s("p",null,"hooks/usePointGeocoder/batch",-1),h=n("",22);function A(g,y,B,m,b,P){const o=e("Badge"),t=e("Demo");return C(),E("div",null,[s("h1",k,[p("usePointGeocoder "),a(o,{type:"tip",text:"^0.0.39"}),p(),r]),u,a(t,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Emap%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epoint%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleClick%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!isLoading%20%26amp%3B%26amp%3B%20!isEmpty%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epoint%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMarker%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBLabel%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20special-attr%22%3E%3Cspan%20class%3D%22token%20attr-name%22%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20value%20css%20language-css%22%3E%3Cspan%20class%3D%22token%20property%22%3Ecolor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%23333%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20property%22%3Efont-size%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%209px%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eresult.point%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acontent%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%60%E5%9C%B0%E5%9D%80%3A%20%24%7Bresult%3F.address%7D%20%E6%89%80%E5%B1%9E%E5%95%86%E5%9C%88%3A%24%7Bresult%3F.business%7D%20%E6%9C%80%E5%8C%B9%E9%85%8D%E5%9C%B0%E7%82%B9%3A%20%24%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20result%3F.surroundingPois%5B0%5D%3F.title%20%7C%7C%20'%E6%97%A0'%0A%20%20%20%20%20%20%20%20%20%20%7D%60%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20usePointGeocoder%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20PointGeocoderResult%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20map%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20get%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20result%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20isLoading%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20isEmpty%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20usePointGeocoder%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3EPointGeocoderResult%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20point%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.30793520652882%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.05861561613348%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20markerPoint%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20point%0A%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Eget%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Epoint%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleClick%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20parameter%22%3Ee%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20markerPoint%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Evalue%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20e%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Elatlng%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Eget%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Ee%3Cspan%20class%3D%22token%20punctuation%22%3E.%3C%2Fspan%3Elatlng%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20style%22%3E%3Cspan%20class%3D%22token%20language-css%22%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.state%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-top%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2015px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.state%20span%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-right%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2025px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"hooks/usePointGeocoder/index","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%3CBMap%20v-bind%3D%22%24attrs%22%20enableScrollWheelZoom%20ref%3D%22map%22%20%3Acenter%3D%22point%22%20%40initd%3D%22handleInitd%22%20%40click%3D%22handleClick%22%3E%0A%20%20%20%20%20%20%3Ctemplate%20v-if%3D%22!isLoading%20%26%26%20!isEmpty%22%3E%0A%20%20%20%20%20%20%20%20%3CBMarker%20%3Aposition%3D%22point%22%3E%3C%2FBMarker%3E%0A%20%20%20%20%20%20%20%20%3CBLabel%0A%20%20%20%20%20%20%20%20%20%20style%3D%22color%3A%20%23333%3B%20font-size%3A%209px%22%0A%20%20%20%20%20%20%20%20%20%20%3Aposition%3D%22result.point%22%0A%20%20%20%20%20%20%20%20%20%20%3Acontent%3D%22%60%E5%9C%B0%E5%9D%80%3A%20%24%7Bresult%3F.address%7D%20%E6%89%80%E5%B1%9E%E5%95%86%E5%9C%88%3A%24%7Bresult%3F.business%7D%20%E6%9C%80%E5%8C%B9%E9%85%8D%E5%9C%B0%E7%82%B9%3A%20%24%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20result%3F.surroundingPois%5B0%5D%3F.title%20%7C%7C%20'%E6%97%A0'%0A%20%20%20%20%20%20%20%20%20%20%7D%60%22%0A%20%20%20%20%20%20%20%20%2F%3E%0A%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%3C%2FBMap%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20import%20%7B%20usePointGeocoder%2C%20PointGeocoderResult%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20map%20%3D%20ref()%0A%20%20const%20%7B%20get%2C%20result%2C%20isLoading%2C%20isEmpty%20%7D%20%3D%20usePointGeocoder%3CPointGeocoderResult%3E()%0A%20%20const%20point%20%3D%20ref(%7B%20lng%3A%20116.30793520652882%2C%20lat%3A%2040.05861561613348%20%7D)%0A%20%20const%20markerPoint%20%3D%20point%0A%0A%20%20function%20handleInitd()%20%7B%0A%20%20%20%20get(point.value)%0A%20%20%7D%0A%20%20function%20handleClick(e)%20%7B%0A%20%20%20%20markerPoint.value%20%3D%20e.latlng%0A%20%20%20%20get(e.latlng)%0A%20%20%7D%0A%3C%2Fscript%3E%0A%0A%3Cstyle%3E%0A%20%20.state%20%7B%0A%20%20%20%20margin-top%3A%2015px%3B%0A%20%20%7D%0A%20%20.state%20span%20%7B%0A%20%20%20%20margin-right%3A%2025px%3B%0A%20%20%7D%0A%3C%2Fstyle%3E%0A",description:"%3Cp%3E%E9%BC%A0%E6%A0%87%E7%82%B9%E5%87%BB%E5%9C%B0%E5%9B%BE%E9%80%89%E6%8B%A9%E5%9D%90%E6%A0%87%E7%82%B9%E8%A7%A3%E6%9E%90%3C%2Fp%3E%0A"},{default:i(()=>[F]),_:1}),d,a(t,{source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3EenableScrollWheelZoom%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E13%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20lng%3A%20116.328749%2C%20lat%3A%2040.026922%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBControl%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Epoint-list%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aoffset%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%20x%3A%2010%2C%20y%3A%2010%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eul%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Eli%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-for%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E(item%2C%20index)%20in%20points%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Akey%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eindex%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%7B%7B%20index%20%2B%201%20%7D%7D.%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BA%AC%E5%BA%A6%20-%20%7B%7B%20item.lat%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BB%8F%E5%BA%A6%20-%20%7B%7B%20item.lng%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eli%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Eul%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBControl%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-if%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E!isLoading%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Ev-for%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E(item%2C%20index)%20in%20result%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMarker%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eitem.point%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMarker%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBLabel%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20special-attr%22%3E%3Cspan%20class%3D%22token%20attr-name%22%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3Cspan%20class%3D%22token%20value%20css%20language-css%22%3E%3Cspan%20class%3D%22token%20property%22%3Ecolor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%23333%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20property%22%3Efont-size%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%209px%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aposition%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eitem.point%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acontent%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%60%24%7Bindex%7D.%20%E5%9C%B0%E5%9D%80%3A%20%24%7Bitem.address%7D%20%E6%89%80%E5%B1%9E%E5%95%86%E5%9C%88%3A%24%7Bitem.business%7D%20%E6%9C%80%E5%8C%B9%E9%85%8D%E5%9C%B0%E7%82%B9%3A%20%24%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20item%3F.surroundingPois%5B0%5D%3F.title%20%7C%7C%20'%E6%97%A0'%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%60%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBLabel%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3EBMap%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20usePointGeocoder%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20PointGeocoderResult%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20points%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.307852%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.057031%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.313082%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.047674%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.328749%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.026922%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.347571%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E39.988698%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.316163%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E39.997753%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.345867%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E39.998333%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.403472%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E39.999411%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.307901%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.05901%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20get%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20result%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20isLoading%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20usePointGeocoder%3Cspan%20class%3D%22token%20operator%22%3E%26lt%3B%3C%2Fspan%3EPointGeocoderResult%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3Eget%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Epoints%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20style%22%3E%3Cspan%20class%3D%22token%20language-css%22%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.point-list%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Ecolor%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%23333%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Ebackground-color%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%23fff%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Efont-size%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2010px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Epadding%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2010px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Eborder-radius%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%208px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Ebox-shadow%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Ergb%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E0%200%200%20%2F%2015%25%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%201px%202px%201px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.point-list%20ul%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%200%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Epadding%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%200%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.point-list%20li%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Elist-style%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%20none%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Eborder-bottom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%201px%20solid%20%23f1f1f1%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.point-list%20span%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-right%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2015px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"hooks/usePointGeocoder/batch","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%3CBMap%0A%20%20%20%20%20%20v-bind%3D%22%24attrs%22%0A%20%20%20%20%20%20enableScrollWheelZoom%0A%20%20%20%20%20%20%3Azoom%3D%2213%22%0A%20%20%20%20%20%20%3Acenter%3D%22%7B%20lng%3A%20116.328749%2C%20lat%3A%2040.026922%20%7D%22%0A%20%20%20%20%20%20%40initd%3D%22handleInitd%22%0A%20%20%20%20%3E%0A%20%20%20%20%20%20%3CBControl%20class%3D%22point-list%22%20%3Aoffset%3D%22%7B%20x%3A%2010%2C%20y%3A%2010%20%7D%22%3E%0A%20%20%20%20%20%20%20%20%3Cul%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cli%20v-for%3D%22(item%2C%20index)%20in%20points%22%20%3Akey%3D%22index%22%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Cdiv%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%3E%7B%7B%20index%20%2B%201%20%7D%7D.%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%3E%E7%BA%AC%E5%BA%A6%20-%20%7B%7B%20item.lat%20%7D%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cspan%3E%E7%BB%8F%E5%BA%A6%20-%20%7B%7B%20item.lng%20%7D%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%20%20%20%20%20%20%3C%2Fli%3E%0A%20%20%20%20%20%20%20%20%3C%2Ful%3E%0A%20%20%20%20%20%20%3C%2FBControl%3E%0A%20%20%20%20%20%20%3Ctemplate%20v-if%3D%22!isLoading%22%3E%0A%20%20%20%20%20%20%20%20%3Ctemplate%20v-for%3D%22(item%2C%20index)%20in%20result%22%3E%0A%20%20%20%20%20%20%20%20%20%20%3CBMarker%20%3Aposition%3D%22item.point%22%3E%3C%2FBMarker%3E%0A%20%20%20%20%20%20%20%20%20%20%3CBLabel%0A%20%20%20%20%20%20%20%20%20%20%20%20style%3D%22color%3A%20%23333%3B%20font-size%3A%209px%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Aposition%3D%22item.point%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%3Acontent%3D%22%60%24%7Bindex%7D.%20%E5%9C%B0%E5%9D%80%3A%20%24%7Bitem.address%7D%20%E6%89%80%E5%B1%9E%E5%95%86%E5%9C%88%3A%24%7Bitem.business%7D%20%E6%9C%80%E5%8C%B9%E9%85%8D%E5%9C%B0%E7%82%B9%3A%20%24%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20item%3F.surroundingPois%5B0%5D%3F.title%20%7C%7C%20'%E6%97%A0'%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%60%22%0A%20%20%20%20%20%20%20%20%20%20%3E%3C%2FBLabel%3E%0A%20%20%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%20%20%3C%2Ftemplate%3E%0A%20%20%20%20%3C%2FBMap%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20lang%3D%22ts%22%20setup%3E%0A%20%20import%20%7B%20usePointGeocoder%2C%20PointGeocoderResult%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20points%20%3D%20%5B%0A%20%20%20%20%7B%20lng%3A%20116.307852%2C%20lat%3A%2040.057031%20%7D%2C%0A%20%20%20%20%7B%20lng%3A%20116.313082%2C%20lat%3A%2040.047674%20%7D%2C%0A%20%20%20%20%7B%20lng%3A%20116.328749%2C%20lat%3A%2040.026922%20%7D%2C%0A%20%20%20%20%7B%20lng%3A%20116.347571%2C%20lat%3A%2039.988698%20%7D%2C%0A%20%20%20%20%7B%20lng%3A%20116.316163%2C%20lat%3A%2039.997753%20%7D%2C%0A%20%20%20%20%7B%20lng%3A%20116.345867%2C%20lat%3A%2039.998333%20%7D%2C%0A%20%20%20%20%7B%20lng%3A%20116.403472%2C%20lat%3A%2039.999411%20%7D%2C%0A%20%20%20%20%7B%20lng%3A%20116.307901%2C%20lat%3A%2040.05901%20%7D%0A%20%20%5D%0A%20%20const%20%7B%20get%2C%20result%2C%20isLoading%20%7D%20%3D%20usePointGeocoder%3CPointGeocoderResult%5B%5D%3E()%0A%20%20function%20handleInitd()%20%7B%0A%20%20%20%20get(points)%0A%20%20%7D%0A%3C%2Fscript%3E%0A%0A%3Cstyle%3E%0A%20%20.point-list%20%7B%0A%20%20%20%20color%3A%20%23333%3B%0A%20%20%20%20background-color%3A%20%23fff%3B%0A%20%20%20%20font-size%3A%2010px%3B%0A%20%20%20%20padding%3A%2010px%3B%0A%20%20%20%20border-radius%3A%208px%3B%0A%20%20%20%20box-shadow%3A%20rgb(0%200%200%20%2F%2015%25)%201px%202px%201px%3B%0A%20%20%7D%0A%20%20.point-list%20ul%20%7B%0A%20%20%20%20margin%3A%200%3B%0A%20%20%20%20padding%3A%200%3B%0A%20%20%7D%0A%20%20.point-list%20li%20%7B%0A%20%20%20%20list-style%3A%20none%3B%0A%20%20%20%20border-bottom%3A%201px%20solid%20%23f1f1f1%3B%0A%20%20%7D%0A%20%20.point-list%20span%20%7B%0A%20%20%20%20margin-right%3A%2015px%3B%0A%20%20%7D%0A%3C%2Fstyle%3E%0A",description:""},{default:i(()=>[D]),_:1}),h])}const x=l(c,[["render",A]]);export{f as __pageData,x as default}; diff --git a/assets/zh-CN_hooks_useTrackAnimation.md.2lbxwdWN.js b/assets/zh-CN_hooks_useTrackAnimation.md.2lbxwdWN.js new file mode 100644 index 00000000..2bebb9e5 --- /dev/null +++ b/assets/zh-CN_hooks_useTrackAnimation.md.2lbxwdWN.js @@ -0,0 +1,71 @@ +import{_ as n,c as t,I as p,w as i,al as s,D as l,o as e,j as k}from"./chunks/framework.n6hqIsqL.js";const y=JSON.parse('{"title":"useTrackAnimation","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/hooks/useTrackAnimation.md","filePath":"zh-CN/hooks/useTrackAnimation.md","lastUpdated":1724785300000}'),o={name:"zh-CN/hooks/useTrackAnimation.md"},E=s('

useTrackAnimation

通过该 hooks 可实现轨迹动画, 在轨迹动态播放的同时,视角跟随移动.

ts
import { useTrackAnimation } from 'vue3-baidu-map-gl'

注意

  1. 使用该 hooks 前,请确保TrackAnimation插件正确的 注册 了。
  2. 由于在渲染动画时,数据资源是随着当前方位和坐标的改变而实时加载的,刚开始播放动画时画面可能会卡顿,属于正常现象。
  3. 为了减少加载数据资源的性能损耗,在播放动画时隐藏了地图上的 POI 点。

示例

',5),c=k("p",null,"hooks/useTrackAnimation",-1),C=s(`

用法

ts
const { setPath, start, cancel, stop, proceed, status } = useTrackAnimation(map, options)

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 setPath 初始化路径后,方法和数据才可用

参数

参数描述类型默认值
mapMap地图组件ref引用Ref<Map>required
options地图视角动画的配置TrackAnimationOptions-

TrackAnimationOptions

属性描述类型默认值
duration动画持续时常,单位 msnumber10000
delay动画开始延迟number0
overallView是否在动画结束后总览视图缩放(调整地图到能看到整个轨迹的视野),默认开启booleantrue
tilt设置动画中的地图倾斜角度,默认 55 度number55
zoom设置动画中的缩放级别,默认会根据轨迹情况调整到一个合适的级别booleanauto

返回值

返回值描述类型
setPath设置路径动画路径,需要在Map组件initd事件触发后才可调用(path: PathPoint[]) => void
start开始动画,setPath 设置路径后且 statusINITIAL 才可调用() => void
stop暂停动画函数() => void
cancel取消动画函数() => void
proceed继续播放动画函数() => void
status动画状态Ref<AnimationStatus>

PathPoint

ts
type PathPoint = { lng: number lat: number }

AnimationStatus

ts
// PLAYING 播放中
+// STOPPING 暂停中
+// INITIAL 默认状态
+type AnimationStatus = 'PLAYING' | 'STOPPING' | 'INITIAL'

TS 类型定义参考

ts
import { Ref } from 'vue'
+export declare type PathPoint = {
+  lng: number
+  lat: number
+}
+export declare type UseTrackAnimationOptions = {
+  /**
+   * 动画持续时常,单位ms
+   * @default 10000
+   */
+  duration?: number
+  /**
+   * 动画开始延迟
+   * @default 0
+   */
+  delay?: number
+  /**
+   * 是否在动画结束后总览视图缩放(调整地图到能看到整个轨迹的视野),默认开启
+   * @default true
+   */
+  overallView?: boolean
+  /**
+   * 设置动画中的地图倾斜角度,默认55度
+   * @default 55
+   */
+  tilt?: number
+  /**
+   * 设置动画中的缩放级别,默认会根据轨迹情况调整到一个合适的级别
+   * @default auto
+   */
+  zoom?: number
+}
+declare type AnimationStatus = 'PLAYING' | 'STOPPING' | 'INITIAL'
+/**
+ * 轨迹动画
+ * @param {any} map 地图组件实例返回值
+ * @param {TrackAnimationOptions} options 轨迹动画配置
+ * @returns { setPath, start, stop}
+ */
+export declare function useTrackAnimation(
+  map: any,
+  options: UseTrackAnimationOptions
+): {
+  /**
+   * 设置路径动画路径
+   */
+  setPath: (path: PathPoint[]) => void
+  /**
+   * 开始动画
+   */
+  start: () => void
+  /**
+   * 暂停动画
+   */
+  stop: () => void
+  /**
+   * 取消动画
+   */
+  cancel: () => void
+  /**
+   * 继续播放动画
+   */
+  proceed: () => void
+  /**
+   * 动画状态
+   */
+  status: Ref<AnimationStatus>
+}
`,15);function h(r,D,d,u,F,A){const a=l("Demo");return e(),t("div",null,[E,p(a,{class:"p-bottom",source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%0A%20%20%20%20%20%20%20%20lng%3A%20116.308301%2C%0A%20%20%20%20%20%20%20%20lat%3A%2040.050566%0A%20%20%20%20%20%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E16%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aplugins%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%5B'TrackAnimation'%5D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Emap%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40pluginReady%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estate%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%8A%A8%E7%94%BB%E7%8A%B6%E6%80%81%3A%20%7B%7B%20status%20!%3D%3D%20'INITIAL'%20%3F%20'%E5%B7%B2%E5%BC%80%E5%A7%8B'%20%3A%20'%E6%9C%AA%E5%BC%80%E5%A7%8B'%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E6%92%AD%E6%94%BE%E7%8A%B6%E6%80%81%3A%20%7B%7B%20status%20%3D%3D%3D%20'INITIAL'%20%7C%7C%20status%20%3D%3D%3D%20'STOPPING'%20%3F%20'%E6%9C%AA%E6%92%AD%E6%94%BE'%20%3A%20'%E6%92%AD%E6%94%BE%E4%B8%AD'%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estart%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%BC%80%E5%A7%8B%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estop%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E6%9A%82%E5%81%9C%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eproceed%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BB%A7%E7%BB%AD%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ecancel%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%8F%96%E6%B6%88%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20useTrackAnimation%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20map%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20keyword%22%3Enull%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20setPath%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20start%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20cancel%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20stop%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20proceed%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20status%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EuseTrackAnimation%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Emap%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eduration%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E10000%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Edelay%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20path%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.297611%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.047363%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.302839%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.048219%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.308301%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.050566%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.305732%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.054957%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.304754%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.057953%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.306487%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.058312%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.307223%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.056379%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3EsetPath%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Epath%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20style%22%3E%3Cspan%20class%3D%22token%20language-css%22%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.state%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-top%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2015px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.state%20span%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-right%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2025px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"hooks/useTrackAnimation","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%3CBMap%0A%20%20%20%20%20%20v-bind%3D%22%24attrs%22%0A%20%20%20%20%20%20%3Acenter%3D%22%7B%0A%20%20%20%20%20%20%20%20lng%3A%20116.308301%2C%0A%20%20%20%20%20%20%20%20lat%3A%2040.050566%0A%20%20%20%20%20%20%7D%22%0A%20%20%20%20%20%20%3Azoom%3D%2216%22%0A%20%20%20%20%20%20%3Aplugins%3D%22%5B'TrackAnimation'%5D%22%0A%20%20%20%20%20%20ref%3D%22map%22%0A%20%20%20%20%20%20%40pluginReady%3D%22handleInitd%22%0A%20%20%20%20%2F%3E%0A%20%20%20%20%3Cdiv%20class%3D%22state%22%3E%0A%20%20%20%20%20%20%3Cspan%3E%E5%8A%A8%E7%94%BB%E7%8A%B6%E6%80%81%3A%20%7B%7B%20status%20!%3D%3D%20'INITIAL'%20%3F%20'%E5%B7%B2%E5%BC%80%E5%A7%8B'%20%3A%20'%E6%9C%AA%E5%BC%80%E5%A7%8B'%20%7D%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%3E%E6%92%AD%E6%94%BE%E7%8A%B6%E6%80%81%3A%20%7B%7B%20status%20%3D%3D%3D%20'INITIAL'%20%7C%7C%20status%20%3D%3D%3D%20'STOPPING'%20%3F%20'%E6%9C%AA%E6%92%AD%E6%94%BE'%20%3A%20'%E6%92%AD%E6%94%BE%E4%B8%AD'%20%7D%7D%3C%2Fspan%3E%0A%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%20no-m-b%22%20type%3D%22button%22%20%40click%3D%22start%22%3E%E5%BC%80%E5%A7%8B%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%20no-m-b%22%20type%3D%22button%22%20%40click%3D%22stop%22%3E%E6%9A%82%E5%81%9C%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%20no-m-b%22%20type%3D%22button%22%20%40click%3D%22proceed%22%3E%E7%BB%A7%E7%BB%AD%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%20no-m-b%22%20type%3D%22button%22%20%40click%3D%22cancel%22%3E%E5%8F%96%E6%B6%88%3C%2Fbutton%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%20lang%3D%22ts%22%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20import%20%7B%20useTrackAnimation%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20map%20%3D%20ref(null)%0A%20%20const%20%7B%20setPath%2C%20start%2C%20cancel%2C%20stop%2C%20proceed%2C%20status%20%7D%20%3D%20useTrackAnimation(map%2C%20%7B%0A%20%20%20%20duration%3A%2010000%2C%0A%20%20%20%20delay%3A%200%0A%20%20%7D)%0A%20%20const%20path%20%3D%20%5B%0A%20%20%20%20%7B%0A%20%20%20%20%20%20lng%3A%20116.297611%2C%0A%20%20%20%20%20%20lat%3A%2040.047363%0A%20%20%20%20%7D%2C%0A%20%20%20%20%7B%0A%20%20%20%20%20%20lng%3A%20116.302839%2C%0A%20%20%20%20%20%20lat%3A%2040.048219%0A%20%20%20%20%7D%2C%0A%20%20%20%20%7B%0A%20%20%20%20%20%20lng%3A%20116.308301%2C%0A%20%20%20%20%20%20lat%3A%2040.050566%0A%20%20%20%20%7D%2C%0A%20%20%20%20%7B%0A%20%20%20%20%20%20lng%3A%20116.305732%2C%0A%20%20%20%20%20%20lat%3A%2040.054957%0A%20%20%20%20%7D%2C%0A%20%20%20%20%7B%0A%20%20%20%20%20%20lng%3A%20116.304754%2C%0A%20%20%20%20%20%20lat%3A%2040.057953%0A%20%20%20%20%7D%2C%0A%20%20%20%20%7B%0A%20%20%20%20%20%20lng%3A%20116.306487%2C%0A%20%20%20%20%20%20lat%3A%2040.058312%0A%20%20%20%20%7D%2C%0A%20%20%20%20%7B%0A%20%20%20%20%20%20lng%3A%20116.307223%2C%0A%20%20%20%20%20%20lat%3A%2040.056379%0A%20%20%20%20%7D%0A%20%20%5D%0A%20%20function%20handleInitd()%20%7B%0A%20%20%20%20setPath(path)%0A%20%20%7D%0A%3C%2Fscript%3E%0A%0A%3Cstyle%3E%0A%20%20.state%20%7B%0A%20%20%20%20margin-top%3A%2015px%3B%0A%20%20%7D%0A%20%20.state%20span%20%7B%0A%20%20%20%20margin-right%3A%2025px%3B%0A%20%20%7D%0A%3C%2Fstyle%3E%0A",description:""},{default:i(()=>[c]),_:1}),C])}const B=n(o,[["render",h]]);export{y as __pageData,B as default}; diff --git a/assets/zh-CN_hooks_useTrackAnimation.md.2lbxwdWN.lean.js b/assets/zh-CN_hooks_useTrackAnimation.md.2lbxwdWN.lean.js new file mode 100644 index 00000000..8c4db02a --- /dev/null +++ b/assets/zh-CN_hooks_useTrackAnimation.md.2lbxwdWN.lean.js @@ -0,0 +1 @@ +import{_ as n,c as t,I as p,w as i,al as s,D as l,o as e,j as k}from"./chunks/framework.n6hqIsqL.js";const y=JSON.parse('{"title":"useTrackAnimation","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/hooks/useTrackAnimation.md","filePath":"zh-CN/hooks/useTrackAnimation.md","lastUpdated":1724785300000}'),o={name:"zh-CN/hooks/useTrackAnimation.md"},E=s("",5),c=k("p",null,"hooks/useTrackAnimation",-1),C=s("",15);function h(r,D,d,u,F,A){const a=l("Demo");return e(),t("div",null,[E,p(a,{class:"p-bottom",source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%0A%20%20%20%20%20%20%20%20lng%3A%20116.308301%2C%0A%20%20%20%20%20%20%20%20lat%3A%2040.050566%0A%20%20%20%20%20%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E16%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aplugins%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%5B'TrackAnimation'%5D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Emap%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40pluginReady%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estate%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%8A%A8%E7%94%BB%E7%8A%B6%E6%80%81%3A%20%7B%7B%20status%20!%3D%3D%20'INITIAL'%20%3F%20'%E5%B7%B2%E5%BC%80%E5%A7%8B'%20%3A%20'%E6%9C%AA%E5%BC%80%E5%A7%8B'%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E6%92%AD%E6%94%BE%E7%8A%B6%E6%80%81%3A%20%7B%7B%20status%20%3D%3D%3D%20'INITIAL'%20%7C%7C%20status%20%3D%3D%3D%20'STOPPING'%20%3F%20'%E6%9C%AA%E6%92%AD%E6%94%BE'%20%3A%20'%E6%92%AD%E6%94%BE%E4%B8%AD'%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estart%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%BC%80%E5%A7%8B%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estop%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E6%9A%82%E5%81%9C%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eproceed%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BB%A7%E7%BB%AD%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ecancel%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%8F%96%E6%B6%88%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20useTrackAnimation%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20map%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20keyword%22%3Enull%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20setPath%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20start%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20cancel%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20stop%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20proceed%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20status%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EuseTrackAnimation%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Emap%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eduration%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E10000%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Edelay%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20path%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.297611%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.047363%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.302839%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.048219%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.308301%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.050566%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.305732%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.054957%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.304754%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.057953%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.306487%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.058312%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.307223%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.056379%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3EsetPath%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Epath%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20style%22%3E%3Cspan%20class%3D%22token%20language-css%22%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.state%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-top%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2015px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.state%20span%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-right%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2025px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"hooks/useTrackAnimation","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%3CBMap%0A%20%20%20%20%20%20v-bind%3D%22%24attrs%22%0A%20%20%20%20%20%20%3Acenter%3D%22%7B%0A%20%20%20%20%20%20%20%20lng%3A%20116.308301%2C%0A%20%20%20%20%20%20%20%20lat%3A%2040.050566%0A%20%20%20%20%20%20%7D%22%0A%20%20%20%20%20%20%3Azoom%3D%2216%22%0A%20%20%20%20%20%20%3Aplugins%3D%22%5B'TrackAnimation'%5D%22%0A%20%20%20%20%20%20ref%3D%22map%22%0A%20%20%20%20%20%20%40pluginReady%3D%22handleInitd%22%0A%20%20%20%20%2F%3E%0A%20%20%20%20%3Cdiv%20class%3D%22state%22%3E%0A%20%20%20%20%20%20%3Cspan%3E%E5%8A%A8%E7%94%BB%E7%8A%B6%E6%80%81%3A%20%7B%7B%20status%20!%3D%3D%20'INITIAL'%20%3F%20'%E5%B7%B2%E5%BC%80%E5%A7%8B'%20%3A%20'%E6%9C%AA%E5%BC%80%E5%A7%8B'%20%7D%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%3E%E6%92%AD%E6%94%BE%E7%8A%B6%E6%80%81%3A%20%7B%7B%20status%20%3D%3D%3D%20'INITIAL'%20%7C%7C%20status%20%3D%3D%3D%20'STOPPING'%20%3F%20'%E6%9C%AA%E6%92%AD%E6%94%BE'%20%3A%20'%E6%92%AD%E6%94%BE%E4%B8%AD'%20%7D%7D%3C%2Fspan%3E%0A%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%20no-m-b%22%20type%3D%22button%22%20%40click%3D%22start%22%3E%E5%BC%80%E5%A7%8B%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%20no-m-b%22%20type%3D%22button%22%20%40click%3D%22stop%22%3E%E6%9A%82%E5%81%9C%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%20no-m-b%22%20type%3D%22button%22%20%40click%3D%22proceed%22%3E%E7%BB%A7%E7%BB%AD%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%20no-m-b%22%20type%3D%22button%22%20%40click%3D%22cancel%22%3E%E5%8F%96%E6%B6%88%3C%2Fbutton%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%20lang%3D%22ts%22%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20import%20%7B%20useTrackAnimation%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20map%20%3D%20ref(null)%0A%20%20const%20%7B%20setPath%2C%20start%2C%20cancel%2C%20stop%2C%20proceed%2C%20status%20%7D%20%3D%20useTrackAnimation(map%2C%20%7B%0A%20%20%20%20duration%3A%2010000%2C%0A%20%20%20%20delay%3A%200%0A%20%20%7D)%0A%20%20const%20path%20%3D%20%5B%0A%20%20%20%20%7B%0A%20%20%20%20%20%20lng%3A%20116.297611%2C%0A%20%20%20%20%20%20lat%3A%2040.047363%0A%20%20%20%20%7D%2C%0A%20%20%20%20%7B%0A%20%20%20%20%20%20lng%3A%20116.302839%2C%0A%20%20%20%20%20%20lat%3A%2040.048219%0A%20%20%20%20%7D%2C%0A%20%20%20%20%7B%0A%20%20%20%20%20%20lng%3A%20116.308301%2C%0A%20%20%20%20%20%20lat%3A%2040.050566%0A%20%20%20%20%7D%2C%0A%20%20%20%20%7B%0A%20%20%20%20%20%20lng%3A%20116.305732%2C%0A%20%20%20%20%20%20lat%3A%2040.054957%0A%20%20%20%20%7D%2C%0A%20%20%20%20%7B%0A%20%20%20%20%20%20lng%3A%20116.304754%2C%0A%20%20%20%20%20%20lat%3A%2040.057953%0A%20%20%20%20%7D%2C%0A%20%20%20%20%7B%0A%20%20%20%20%20%20lng%3A%20116.306487%2C%0A%20%20%20%20%20%20lat%3A%2040.058312%0A%20%20%20%20%7D%2C%0A%20%20%20%20%7B%0A%20%20%20%20%20%20lng%3A%20116.307223%2C%0A%20%20%20%20%20%20lat%3A%2040.056379%0A%20%20%20%20%7D%0A%20%20%5D%0A%20%20function%20handleInitd()%20%7B%0A%20%20%20%20setPath(path)%0A%20%20%7D%0A%3C%2Fscript%3E%0A%0A%3Cstyle%3E%0A%20%20.state%20%7B%0A%20%20%20%20margin-top%3A%2015px%3B%0A%20%20%7D%0A%20%20.state%20span%20%7B%0A%20%20%20%20margin-right%3A%2025px%3B%0A%20%20%7D%0A%3C%2Fstyle%3E%0A",description:""},{default:i(()=>[c]),_:1}),C])}const B=n(o,[["render",h]]);export{y as __pageData,B as default}; diff --git a/assets/zh-CN_hooks_useViewAnimation.md.DLT_1V89.js b/assets/zh-CN_hooks_useViewAnimation.md.DLT_1V89.js new file mode 100644 index 00000000..726f62e7 --- /dev/null +++ b/assets/zh-CN_hooks_useViewAnimation.md.DLT_1V89.js @@ -0,0 +1,84 @@ +import{_ as l,c as o,j as s,a,I as n,w as E,al as p,D as t,o as k}from"./chunks/framework.n6hqIsqL.js";const v=JSON.parse('{"title":"useViewAnimation","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/hooks/useViewAnimation.md","filePath":"zh-CN/hooks/useViewAnimation.md","lastUpdated":1724785300000}'),C={name:"zh-CN/hooks/useViewAnimation.md"},r={id:"useviewanimation",tabindex:"-1"},c=s("a",{class:"header-anchor",href:"#useviewanimation","aria-label":'Permalink to "useViewAnimation "'},"​",-1),h=p('

该 hooks 用于展示地图的 3D 动画,您可以自定义从地图上某一地点切换到另一地点的 3D 过渡动画效果。

ts
import { useViewAnimation } from 'vue3-baidu-map-gl'

注意

  • 由于在渲染动画时,数据资源是随着当前方位和坐标的改变而实时加载的,刚开始播放动画时画面可能会卡顿,属于正常现象;此外,为了减少加载数据资源的性能损耗,在播放动画时隐藏了地图上的 POI 点。
  • 其次,在定义关键帧时相邻两个关键帧的坐标点不宜距离太远,否则会导致当前帧的资源还未加载完毕,就已经进入下一帧的播放,出现视野中看不到地图的现象。

示例

',4),F=s("p",null,"hooks/useViewAnimation",-1),D=p(`

用法

ts
const { setKeyFrames, start, cancel, stop, proceed, status } = useViewAnimation(map, options)

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 setKeyFrames 方法后其他方法和数据才可用

参数

参数描述类型默认值
mapMap地图组件ref引用Ref<Map>required
options地图视角动画的配置ViewAnimationOptions-

ViewAnimationOptions

属性描述类型默认值
duration动画持续时常,单位 msnumber1000
delay动画开始延迟number0
loop循环次数,参数类型为数字时循环固定次数,参数为'INFINITE'无限循环number | 'INFINITE'1
disableDragging动画播放时禁止鼠标拖动booleantrue

返回值

返回值描述类型
viewAnimation视角动画实例BMapGL.ViewAnimation
setKeyFrames设置动画关键帧函数,需要在Map组件initd事件触发后才可调用(path: ViewAnimationKeyFrames[]) => void
start开始动画函数,setKeyFrames 设置路径后且 statusINITIAL 才可调用() => void
stop暂停动画函数() => void
cancel取消动画函数() => void
proceed继续播放动画函数() => void
status动画状态Ref<AnimationStatus>

ViewAnimationKeyFrames

ts
type Point = { lng: number; lat: number }
+interface ViewAnimationKeyFrames {
+  /**
+   * 	地图中心点
+   */
+  center: Point
+  /**
+   * 	地图缩放级别,默认值为地图当前状态缩放级别
+   */
+  zoom?: number
+  /**
+   * 	地图倾斜角度,默认值为地图当前状态倾斜角度
+   */
+  tilt?: number
+  /**
+   * 	地图旋转角度,默认值为地图当前旋转角度
+   */
+  heading?: number
+  /**
+   * 	表示当前关键帧处于动画过程的百分比,取值范围0~1
+   */
+  percentage: number
+}

AnimationStatus

ts
// PLAYING 播放中
+// STOPPING 暂停中
+// INITIAL 默认状态
+type AnimationStatus = 'PLAYING' | 'STOPPING' | 'INITIAL'

事件监听

调用useViewAnimation后,即可通过viewAnimation返回值来添加事件监听,无需等待setKeyFrames方法调用

事件参数描述
animationstart-动画开始时触发,如果配置了 delay,则在 delay 后触发
animationiterations-当动画循环大于 1 次时,上一次结束既下一次开始时触发。最后一次循环结束时不触发
animationend-动画结束时触发,如果动画中途被终止,则不会触发
animationcancel-动画中途被终止时触发

FAQ

为什么事件监听可以同步,而其他方法需要等到 setKeyFrames 方法调用后才可以使用 ?

之所以事件监听可以同步,是因为useViewAnimationhooks 内部做了处理,先缓存了视角动画初始化前的事件监听,等到setKeyFrames方法调用后,再由内部添加监听到视角动画实例上。

这只是为了使用开发者使用体验更好,这和你等到setKeyFrames调用时,在后面添加监听,是一样的效果。

TS 类型定义参考

ts
import { Ref } from 'vue'
+type Point = { lng: number; lat: number }
+export interface ViewAnimationKeyFrames {
+  /**
+   * 	地图中心点,默认值为地图当前状态中心点
+   */
+  center: Point
+  /**
+   * 	地图缩放级别,默认值为地图当前状态缩放级别
+   */
+  zoom?: number
+  /**
+   * 	地图倾斜角度,默认值为地图当前状态倾斜角度
+   */
+  tilt?: number
+  /**
+   * 	地图旋转角度,默认值为地图当前旋转角度
+   */
+  heading?: number
+  /**
+   * 	表示当前关键帧处于动画过程的百分比,取值范围0~1
+   */
+  percentage: number
+}
+export interface UseViewAnimationOptions {
+  /**
+   * 	动画开始延迟时间,单位ms,默认0
+   */
+  delay: number
+  /**
+   * 	动画持续时间,单位ms,默认1000
+   */
+  duration: number
+  /**
+   * 循环次数,参数类型为数字时循环固定次数,参数为'INFINITE'无限循环,默认为1
+   */
+  loop: number | 'INFINITE'
+  /**
+   * 动画播放时禁止鼠标拖动
+   */
+  disableDragging: boolean
+}
+declare type AnimationListenerType = 'animationstart' | 'animationiterations' | 'animationend' | 'animationcancel'
+declare type AnimationStatus = 'PLAYING' | 'STOPPING' | 'INITIAL'
+export declare function useViewAnimation(
+  map: any,
+  options: UseViewAnimationOptions
+): {
+  viewAnimation: {
+    addEventListener(event: AnimationListenerType, cal: BMapGL.Callback): void
+    removeEventListener(event: AnimationListenerType, cal: BMapGL.Callback): void
+  }
+  start: () => void
+  cancel: () => void
+  stop: () => void
+  proceed: () => void
+  status: Ref<AnimationStatus>
+  setKeyFrames: (keyFrames: ViewAnimationKeyFrames[]) => void
+}
`,22);function u(A,d,y,g,m,B){const i=t("Badge"),e=t("Demo");return k(),o("div",null,[s("h1",r,[a("useViewAnimation "),n(i,{type:"tip",text:"^0.0.30"}),a(),c]),h,n(e,{class:"p-bottom",source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%0A%20%20%20%20%20%20%20%20lng%3A%20116.308301%2C%0A%20%20%20%20%20%20%20%20lat%3A%2040.050566%0A%20%20%20%20%20%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E16%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aplugins%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%5B'TrackAnimation'%5D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Emap%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estate%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%8A%A8%E7%94%BB%E7%8A%B6%E6%80%81%3A%20%7B%7B%20status%20!%3D%3D%20'INITIAL'%20%3F%20'%E5%B7%B2%E5%BC%80%E5%A7%8B'%20%3A%20'%E6%9C%AA%E5%BC%80%E5%A7%8B'%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E6%92%AD%E6%94%BE%E7%8A%B6%E6%80%81%3A%20%7B%7B%20status%20%3D%3D%3D%20'INITIAL'%20%7C%7C%20status%20%3D%3D%3D%20'STOPPING'%20%3F%20'%E6%9C%AA%E6%92%AD%E6%94%BE'%20%3A%20'%E6%92%AD%E6%94%BE%E4%B8%AD'%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estart%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%BC%80%E5%A7%8B%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estop%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E6%9A%82%E5%81%9C%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eproceed%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BB%A7%E7%BB%AD%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ecancel%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%8F%96%E6%B6%88%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20useViewAnimation%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20ViewAnimationKeyFrames%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20map%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20keyword%22%3Enull%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20setKeyFrames%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20start%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20stop%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20proceed%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20cancel%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20status%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EuseViewAnimation%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Emap%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eduration%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E10000%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Edelay%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eloop%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'INFINITE'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EkeyFrames%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20ViewAnimationKeyFrames%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.307092%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.054922%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ezoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E18%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E50%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epercentage%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.307631%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.055391%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ezoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E19%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E70%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epercentage%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.1%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.306858%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.057887%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ezoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E19%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E70%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epercentage%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.25%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.306858%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.057887%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ezoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E19%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E70%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E-%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E90%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epercentage%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.35%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.307904%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.058118%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ezoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E19%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E70%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E-%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E90%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epercentage%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.45%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.307904%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.058118%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ezoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E19%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E70%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E-%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E180%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epercentage%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.55%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.308902%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.055954%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ezoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E19%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E70%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E-%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E180%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epercentage%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.75%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.308902%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.055954%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ezoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E19%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E70%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E-%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E270%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epercentage%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.85%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.307779%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.055754%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ezoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E19%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E70%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E-%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E360%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epercentage%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.95%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.307092%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.054922%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ezoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E18%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E50%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E-%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E360%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epercentage%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3EsetKeyFrames%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3EkeyFrames%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20style%22%3E%3Cspan%20class%3D%22token%20language-css%22%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.state%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-top%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2015px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.state%20span%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-right%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2025px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"hooks/useViewAnimation","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%3CBMap%0A%20%20%20%20%20%20v-bind%3D%22%24attrs%22%0A%20%20%20%20%20%20%3Acenter%3D%22%7B%0A%20%20%20%20%20%20%20%20lng%3A%20116.308301%2C%0A%20%20%20%20%20%20%20%20lat%3A%2040.050566%0A%20%20%20%20%20%20%7D%22%0A%20%20%20%20%20%20%3Azoom%3D%2216%22%0A%20%20%20%20%20%20%3Aplugins%3D%22%5B'TrackAnimation'%5D%22%0A%20%20%20%20%20%20ref%3D%22map%22%0A%20%20%20%20%20%20%40initd%3D%22handleInitd%22%0A%20%20%20%20%2F%3E%0A%20%20%20%20%3Cdiv%20class%3D%22state%22%3E%0A%20%20%20%20%20%20%3Cspan%3E%E5%8A%A8%E7%94%BB%E7%8A%B6%E6%80%81%3A%20%7B%7B%20status%20!%3D%3D%20'INITIAL'%20%3F%20'%E5%B7%B2%E5%BC%80%E5%A7%8B'%20%3A%20'%E6%9C%AA%E5%BC%80%E5%A7%8B'%20%7D%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%3E%E6%92%AD%E6%94%BE%E7%8A%B6%E6%80%81%3A%20%7B%7B%20status%20%3D%3D%3D%20'INITIAL'%20%7C%7C%20status%20%3D%3D%3D%20'STOPPING'%20%3F%20'%E6%9C%AA%E6%92%AD%E6%94%BE'%20%3A%20'%E6%92%AD%E6%94%BE%E4%B8%AD'%20%7D%7D%3C%2Fspan%3E%0A%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%20no-m-b%22%20type%3D%22button%22%20%40click%3D%22start%22%3E%E5%BC%80%E5%A7%8B%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%20no-m-b%22%20type%3D%22button%22%20%40click%3D%22stop%22%3E%E6%9A%82%E5%81%9C%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%20no-m-b%22%20type%3D%22button%22%20%40click%3D%22proceed%22%3E%E7%BB%A7%E7%BB%AD%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%20no-m-b%22%20type%3D%22button%22%20%40click%3D%22cancel%22%3E%E5%8F%96%E6%B6%88%3C%2Fbutton%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%20lang%3D%22ts%22%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20import%20%7B%20useViewAnimation%2C%20ViewAnimationKeyFrames%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20map%20%3D%20ref(null)%0A%20%20const%20%7B%20setKeyFrames%2C%20start%2C%20stop%2C%20proceed%2C%20cancel%2C%20status%20%7D%20%3D%20useViewAnimation(map%2C%20%7B%0A%20%20%20%20duration%3A%2010000%2C%0A%20%20%20%20delay%3A%200%2C%0A%20%20%20%20loop%3A%20'INFINITE'%0A%20%20%7D)%0A%20%20function%20handleInitd()%20%7B%0A%20%20%20%20const%20keyFrames%3A%20ViewAnimationKeyFrames%5B%5D%20%3D%20%5B%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20center%3A%20%7B%20lng%3A%20116.307092%2C%20lat%3A%2040.054922%20%7D%2C%0A%20%20%20%20%20%20%20%20zoom%3A%2018%2C%0A%20%20%20%20%20%20%20%20tilt%3A%2050%2C%0A%20%20%20%20%20%20%20%20heading%3A%200%2C%0A%20%20%20%20%20%20%20%20percentage%3A%200%0A%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20center%3A%20%7B%20lng%3A%20116.307631%2C%20lat%3A%2040.055391%20%7D%2C%0A%20%20%20%20%20%20%20%20zoom%3A%2019%2C%0A%20%20%20%20%20%20%20%20tilt%3A%2070%2C%0A%20%20%20%20%20%20%20%20heading%3A%200%2C%0A%20%20%20%20%20%20%20%20percentage%3A%200.1%0A%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20center%3A%20%7B%20lng%3A%20116.306858%2C%20lat%3A%2040.057887%20%7D%2C%0A%20%20%20%20%20%20%20%20zoom%3A%2019%2C%0A%20%20%20%20%20%20%20%20tilt%3A%2070%2C%0A%20%20%20%20%20%20%20%20heading%3A%200%2C%0A%20%20%20%20%20%20%20%20percentage%3A%200.25%0A%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20center%3A%20%7B%20lng%3A%20116.306858%2C%20lat%3A%2040.057887%20%7D%2C%0A%20%20%20%20%20%20%20%20zoom%3A%2019%2C%0A%20%20%20%20%20%20%20%20tilt%3A%2070%2C%0A%20%20%20%20%20%20%20%20heading%3A%20-90%2C%0A%20%20%20%20%20%20%20%20percentage%3A%200.35%0A%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20center%3A%20%7B%20lng%3A%20116.307904%2C%20lat%3A%2040.058118%20%7D%2C%0A%20%20%20%20%20%20%20%20zoom%3A%2019%2C%0A%20%20%20%20%20%20%20%20tilt%3A%2070%2C%0A%20%20%20%20%20%20%20%20heading%3A%20-90%2C%0A%20%20%20%20%20%20%20%20percentage%3A%200.45%0A%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20center%3A%20%7B%20lng%3A%20116.307904%2C%20lat%3A%2040.058118%20%7D%2C%0A%20%20%20%20%20%20%20%20zoom%3A%2019%2C%0A%20%20%20%20%20%20%20%20tilt%3A%2070%2C%0A%20%20%20%20%20%20%20%20heading%3A%20-180%2C%0A%20%20%20%20%20%20%20%20percentage%3A%200.55%0A%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20center%3A%20%7B%20lng%3A%20116.308902%2C%20lat%3A%2040.055954%20%7D%2C%0A%20%20%20%20%20%20%20%20zoom%3A%2019%2C%0A%20%20%20%20%20%20%20%20tilt%3A%2070%2C%0A%20%20%20%20%20%20%20%20heading%3A%20-180%2C%0A%20%20%20%20%20%20%20%20percentage%3A%200.75%0A%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20center%3A%20%7B%20lng%3A%20116.308902%2C%20lat%3A%2040.055954%20%7D%2C%0A%20%20%20%20%20%20%20%20zoom%3A%2019%2C%0A%20%20%20%20%20%20%20%20tilt%3A%2070%2C%0A%20%20%20%20%20%20%20%20heading%3A%20-270%2C%0A%20%20%20%20%20%20%20%20percentage%3A%200.85%0A%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20center%3A%20%7B%20lng%3A%20116.307779%2C%20lat%3A%2040.055754%20%7D%2C%0A%20%20%20%20%20%20%20%20zoom%3A%2019%2C%0A%20%20%20%20%20%20%20%20tilt%3A%2070%2C%0A%20%20%20%20%20%20%20%20heading%3A%20-360%2C%0A%20%20%20%20%20%20%20%20percentage%3A%200.95%0A%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20center%3A%20%7B%20lng%3A%20116.307092%2C%20lat%3A%2040.054922%20%7D%2C%0A%20%20%20%20%20%20%20%20zoom%3A%2018%2C%0A%20%20%20%20%20%20%20%20tilt%3A%2050%2C%0A%20%20%20%20%20%20%20%20heading%3A%20-360%2C%0A%20%20%20%20%20%20%20%20percentage%3A%201%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%5D%0A%20%20%20%20setKeyFrames(keyFrames)%0A%20%20%7D%0A%3C%2Fscript%3E%0A%0A%3Cstyle%3E%0A%20%20.state%20%7B%0A%20%20%20%20margin-top%3A%2015px%3B%0A%20%20%7D%0A%20%20.state%20span%20%7B%0A%20%20%20%20margin-right%3A%2025px%3B%0A%20%20%7D%0A%3C%2Fstyle%3E%0A",description:""},{default:E(()=>[F]),_:1}),D])}const I=l(C,[["render",u]]);export{v as __pageData,I as default}; diff --git a/assets/zh-CN_hooks_useViewAnimation.md.DLT_1V89.lean.js b/assets/zh-CN_hooks_useViewAnimation.md.DLT_1V89.lean.js new file mode 100644 index 00000000..e992bd68 --- /dev/null +++ b/assets/zh-CN_hooks_useViewAnimation.md.DLT_1V89.lean.js @@ -0,0 +1 @@ +import{_ as l,c as o,j as s,a,I as n,w as E,al as p,D as t,o as k}from"./chunks/framework.n6hqIsqL.js";const v=JSON.parse('{"title":"useViewAnimation","description":"","frontmatter":{},"headers":[],"relativePath":"zh-CN/hooks/useViewAnimation.md","filePath":"zh-CN/hooks/useViewAnimation.md","lastUpdated":1724785300000}'),C={name:"zh-CN/hooks/useViewAnimation.md"},r={id:"useviewanimation",tabindex:"-1"},c=s("a",{class:"header-anchor",href:"#useviewanimation","aria-label":'Permalink to "useViewAnimation "'},"​",-1),h=p("",4),F=s("p",null,"hooks/useViewAnimation",-1),D=p("",22);function u(A,d,y,g,m,B){const i=t("Badge"),e=t("Demo");return k(),o("div",null,[s("h1",r,[a("useViewAnimation "),n(i,{type:"tip",text:"^0.0.30"}),a(),c]),h,n(e,{class:"p-bottom",source:"%3Cpre%20v-pre%3E%3Ccode%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3EBMap%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Acenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%7B%0A%20%20%20%20%20%20%20%20lng%3A%20116.308301%2C%0A%20%20%20%20%20%20%20%20lat%3A%2040.050566%0A%20%20%20%20%20%20%7D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Azoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E16%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%3Aplugins%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%5B'TrackAnimation'%5D%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Emap%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40initd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3EhandleInitd%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%2F%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ediv%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Eclass%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estate%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%8A%A8%E7%94%BB%E7%8A%B6%E6%80%81%3A%20%7B%7B%20status%20!%3D%3D%20'INITIAL'%20%3F%20'%E5%B7%B2%E5%BC%80%E5%A7%8B'%20%3A%20'%E6%9C%AA%E5%BC%80%E5%A7%8B'%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E6%92%AD%E6%94%BE%E7%8A%B6%E6%80%81%3A%20%7B%7B%20status%20%3D%3D%3D%20'INITIAL'%20%7C%7C%20status%20%3D%3D%3D%20'STOPPING'%20%3F%20'%E6%9C%AA%E6%92%AD%E6%94%BE'%20%3A%20'%E6%92%AD%E6%94%BE%E4%B8%AD'%20%7D%7D%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Espan%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estart%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%BC%80%E5%A7%8B%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Estop%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E6%9A%82%E5%81%9C%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Eproceed%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E7%BB%A7%E7%BB%AD%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Ebutton%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Etype%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ebutton%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3E%40click%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ecancel%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%E5%8F%96%E6%B6%88%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ebutton%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Ediv%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Etemplate%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Escript%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Esetup%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20attr-name%22%3Elang%3C%2Fspan%3E%3Cspan%20class%3D%22token%20attr-value%22%3E%3Cspan%20class%3D%22token%20punctuation%20attr-equals%22%3E%3D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3Ets%3Cspan%20class%3D%22token%20punctuation%22%3E%22%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20script%22%3E%3Cspan%20class%3D%22token%20language-javascript%22%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20ref%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Eimport%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20useViewAnimation%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20ViewAnimationKeyFrames%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20keyword%22%3Efrom%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'vue3-baidu-map-gl'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20map%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3Eref%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20keyword%22%3Enull%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20setKeyFrames%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20start%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20stop%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20proceed%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20cancel%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20status%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EuseViewAnimation%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3Emap%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eduration%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E10000%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Edelay%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eloop%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20string%22%3E'INFINITE'%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20keyword%22%3Efunction%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20function%22%3EhandleInitd%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20keyword%22%3Econst%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3EkeyFrames%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20ViewAnimationKeyFrames%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E%3D%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5B%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.307092%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.054922%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ezoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E18%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E50%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epercentage%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.307631%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.055391%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ezoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E19%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E70%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epercentage%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.1%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.306858%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.057887%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ezoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E19%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E70%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epercentage%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.25%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.306858%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.057887%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ezoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E19%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E70%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E-%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E90%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epercentage%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.35%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.307904%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.058118%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ezoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E19%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E70%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E-%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E90%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epercentage%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.45%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.307904%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.058118%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ezoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E19%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E70%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E-%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E180%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epercentage%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.55%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.308902%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.055954%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ezoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E19%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E70%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E-%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E180%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epercentage%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.75%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.308902%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.055954%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ezoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E19%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E70%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E-%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E270%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epercentage%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.85%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.307779%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.055754%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ezoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E19%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E70%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E-%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E360%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epercentage%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E0.95%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ecenter%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elng%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E116.307092%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Elat%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E40.054922%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Ezoom%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E18%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Etilt%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E50%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Eheading%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20operator%22%3E-%3C%2Fspan%3E%3Cspan%20class%3D%22token%20number%22%3E360%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%2C%3C%2Fspan%3E%0A%20%20%20%20%20%20%20%20%3Cspan%20class%3D%22token%20literal-property%20property%22%3Epercentage%3C%2Fspan%3E%3Cspan%20class%3D%22token%20operator%22%3E%3A%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20number%22%3E1%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%5D%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20function%22%3EsetKeyFrames%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E(%3C%2Fspan%3EkeyFrames%3Cspan%20class%3D%22token%20punctuation%22%3E)%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Escript%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%0A%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20style%22%3E%3Cspan%20class%3D%22token%20language-css%22%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.state%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-top%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2015px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20selector%22%3E.state%20span%3C%2Fspan%3E%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7B%3C%2Fspan%3E%0A%20%20%20%20%3Cspan%20class%3D%22token%20property%22%3Emargin-right%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3A%3C%2Fspan%3E%2025px%3Cspan%20class%3D%22token%20punctuation%22%3E%3B%3C%2Fspan%3E%0A%20%20%3Cspan%20class%3D%22token%20punctuation%22%3E%7D%3C%2Fspan%3E%0A%3C%2Fspan%3E%3C%2Fspan%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20tag%22%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%26lt%3B%2F%3C%2Fspan%3Estyle%3C%2Fspan%3E%3Cspan%20class%3D%22token%20punctuation%22%3E%3E%3C%2Fspan%3E%3C%2Fspan%3E%0A%3C%2Fcode%3E%3C%2Fpre%3E",path:"hooks/useViewAnimation","raw-source":"%3Ctemplate%3E%0A%20%20%3Cdiv%3E%0A%20%20%20%20%3CBMap%0A%20%20%20%20%20%20v-bind%3D%22%24attrs%22%0A%20%20%20%20%20%20%3Acenter%3D%22%7B%0A%20%20%20%20%20%20%20%20lng%3A%20116.308301%2C%0A%20%20%20%20%20%20%20%20lat%3A%2040.050566%0A%20%20%20%20%20%20%7D%22%0A%20%20%20%20%20%20%3Azoom%3D%2216%22%0A%20%20%20%20%20%20%3Aplugins%3D%22%5B'TrackAnimation'%5D%22%0A%20%20%20%20%20%20ref%3D%22map%22%0A%20%20%20%20%20%20%40initd%3D%22handleInitd%22%0A%20%20%20%20%2F%3E%0A%20%20%20%20%3Cdiv%20class%3D%22state%22%3E%0A%20%20%20%20%20%20%3Cspan%3E%E5%8A%A8%E7%94%BB%E7%8A%B6%E6%80%81%3A%20%7B%7B%20status%20!%3D%3D%20'INITIAL'%20%3F%20'%E5%B7%B2%E5%BC%80%E5%A7%8B'%20%3A%20'%E6%9C%AA%E5%BC%80%E5%A7%8B'%20%7D%7D%3C%2Fspan%3E%0A%20%20%20%20%20%20%3Cspan%3E%E6%92%AD%E6%94%BE%E7%8A%B6%E6%80%81%3A%20%7B%7B%20status%20%3D%3D%3D%20'INITIAL'%20%7C%7C%20status%20%3D%3D%3D%20'STOPPING'%20%3F%20'%E6%9C%AA%E6%92%AD%E6%94%BE'%20%3A%20'%E6%92%AD%E6%94%BE%E4%B8%AD'%20%7D%7D%3C%2Fspan%3E%0A%20%20%20%20%3C%2Fdiv%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%20no-m-b%22%20type%3D%22button%22%20%40click%3D%22start%22%3E%E5%BC%80%E5%A7%8B%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%20no-m-b%22%20type%3D%22button%22%20%40click%3D%22stop%22%3E%E6%9A%82%E5%81%9C%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%20no-m-b%22%20type%3D%22button%22%20%40click%3D%22proceed%22%3E%E7%BB%A7%E7%BB%AD%3C%2Fbutton%3E%0A%20%20%20%20%3Cbutton%20class%3D%22myButton%20no-m-b%22%20type%3D%22button%22%20%40click%3D%22cancel%22%3E%E5%8F%96%E6%B6%88%3C%2Fbutton%3E%0A%20%20%3C%2Fdiv%3E%0A%3C%2Ftemplate%3E%0A%0A%3Cscript%20setup%20lang%3D%22ts%22%3E%0A%20%20import%20%7B%20ref%20%7D%20from%20'vue'%0A%20%20import%20%7B%20useViewAnimation%2C%20ViewAnimationKeyFrames%20%7D%20from%20'vue3-baidu-map-gl'%0A%20%20const%20map%20%3D%20ref(null)%0A%20%20const%20%7B%20setKeyFrames%2C%20start%2C%20stop%2C%20proceed%2C%20cancel%2C%20status%20%7D%20%3D%20useViewAnimation(map%2C%20%7B%0A%20%20%20%20duration%3A%2010000%2C%0A%20%20%20%20delay%3A%200%2C%0A%20%20%20%20loop%3A%20'INFINITE'%0A%20%20%7D)%0A%20%20function%20handleInitd()%20%7B%0A%20%20%20%20const%20keyFrames%3A%20ViewAnimationKeyFrames%5B%5D%20%3D%20%5B%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20center%3A%20%7B%20lng%3A%20116.307092%2C%20lat%3A%2040.054922%20%7D%2C%0A%20%20%20%20%20%20%20%20zoom%3A%2018%2C%0A%20%20%20%20%20%20%20%20tilt%3A%2050%2C%0A%20%20%20%20%20%20%20%20heading%3A%200%2C%0A%20%20%20%20%20%20%20%20percentage%3A%200%0A%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20center%3A%20%7B%20lng%3A%20116.307631%2C%20lat%3A%2040.055391%20%7D%2C%0A%20%20%20%20%20%20%20%20zoom%3A%2019%2C%0A%20%20%20%20%20%20%20%20tilt%3A%2070%2C%0A%20%20%20%20%20%20%20%20heading%3A%200%2C%0A%20%20%20%20%20%20%20%20percentage%3A%200.1%0A%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20center%3A%20%7B%20lng%3A%20116.306858%2C%20lat%3A%2040.057887%20%7D%2C%0A%20%20%20%20%20%20%20%20zoom%3A%2019%2C%0A%20%20%20%20%20%20%20%20tilt%3A%2070%2C%0A%20%20%20%20%20%20%20%20heading%3A%200%2C%0A%20%20%20%20%20%20%20%20percentage%3A%200.25%0A%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20center%3A%20%7B%20lng%3A%20116.306858%2C%20lat%3A%2040.057887%20%7D%2C%0A%20%20%20%20%20%20%20%20zoom%3A%2019%2C%0A%20%20%20%20%20%20%20%20tilt%3A%2070%2C%0A%20%20%20%20%20%20%20%20heading%3A%20-90%2C%0A%20%20%20%20%20%20%20%20percentage%3A%200.35%0A%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20center%3A%20%7B%20lng%3A%20116.307904%2C%20lat%3A%2040.058118%20%7D%2C%0A%20%20%20%20%20%20%20%20zoom%3A%2019%2C%0A%20%20%20%20%20%20%20%20tilt%3A%2070%2C%0A%20%20%20%20%20%20%20%20heading%3A%20-90%2C%0A%20%20%20%20%20%20%20%20percentage%3A%200.45%0A%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20center%3A%20%7B%20lng%3A%20116.307904%2C%20lat%3A%2040.058118%20%7D%2C%0A%20%20%20%20%20%20%20%20zoom%3A%2019%2C%0A%20%20%20%20%20%20%20%20tilt%3A%2070%2C%0A%20%20%20%20%20%20%20%20heading%3A%20-180%2C%0A%20%20%20%20%20%20%20%20percentage%3A%200.55%0A%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20center%3A%20%7B%20lng%3A%20116.308902%2C%20lat%3A%2040.055954%20%7D%2C%0A%20%20%20%20%20%20%20%20zoom%3A%2019%2C%0A%20%20%20%20%20%20%20%20tilt%3A%2070%2C%0A%20%20%20%20%20%20%20%20heading%3A%20-180%2C%0A%20%20%20%20%20%20%20%20percentage%3A%200.75%0A%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20center%3A%20%7B%20lng%3A%20116.308902%2C%20lat%3A%2040.055954%20%7D%2C%0A%20%20%20%20%20%20%20%20zoom%3A%2019%2C%0A%20%20%20%20%20%20%20%20tilt%3A%2070%2C%0A%20%20%20%20%20%20%20%20heading%3A%20-270%2C%0A%20%20%20%20%20%20%20%20percentage%3A%200.85%0A%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20center%3A%20%7B%20lng%3A%20116.307779%2C%20lat%3A%2040.055754%20%7D%2C%0A%20%20%20%20%20%20%20%20zoom%3A%2019%2C%0A%20%20%20%20%20%20%20%20tilt%3A%2070%2C%0A%20%20%20%20%20%20%20%20heading%3A%20-360%2C%0A%20%20%20%20%20%20%20%20percentage%3A%200.95%0A%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20center%3A%20%7B%20lng%3A%20116.307092%2C%20lat%3A%2040.054922%20%7D%2C%0A%20%20%20%20%20%20%20%20zoom%3A%2018%2C%0A%20%20%20%20%20%20%20%20tilt%3A%2050%2C%0A%20%20%20%20%20%20%20%20heading%3A%20-360%2C%0A%20%20%20%20%20%20%20%20percentage%3A%201%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%5D%0A%20%20%20%20setKeyFrames(keyFrames)%0A%20%20%7D%0A%3C%2Fscript%3E%0A%0A%3Cstyle%3E%0A%20%20.state%20%7B%0A%20%20%20%20margin-top%3A%2015px%3B%0A%20%20%7D%0A%20%20.state%20span%20%7B%0A%20%20%20%20margin-right%3A%2025px%3B%0A%20%20%7D%0A%3C%2Fstyle%3E%0A",description:""},{default:E(()=>[F]),_:1}),D])}const I=l(C,[["render",u]]);export{v as __pageData,I as default}; diff --git a/assets/zh-CN_index.md.CEKXJMZO.js b/assets/zh-CN_index.md.CEKXJMZO.js new file mode 100644 index 00000000..c42add6f --- /dev/null +++ b/assets/zh-CN_index.md.CEKXJMZO.js @@ -0,0 +1 @@ +import{V as e}from"./chunks/vanilla-tilt.es2015.DBgKETYq.js";import{d as i,y as a,c as n,o as s}from"./chunks/framework.n6hqIsqL.js";const c=JSON.parse('{"title":"Vue3 Baidu Map Gl","description":"","frontmatter":{"layout":"home","title":"Vue3 Baidu Map Gl","hero":{"name":"Vue3 Baidu Map Gl","text":"Vue3 & BMapGL 组件库 + hooks 库","tagline":"易用 & 完整 & 性能不错","image":{"src":"/logo.svg","alt":"Vue3 BaiduMap GL"},"actions":[{"theme":"brand","text":"开始使用","link":"/zh-CN/guide/introduction"},{"theme":"alt","text":"View on GitHub","link":"https://github.com/yue1123/vue3-baidu-map-gl"}]},"features":[{"icon":"\\"Rocket\\"","title":"化繁 => 为简","details":"将百度地图繁琐的 API 封装进组件,你只需关注组件本身"},{"icon":"\\"Package\\"","title":"完整","details":"20+ 高质量的开箱即用 Vue 3 组件以及 5+ hooks 封装"},{"icon":"\\"Triangular","title":"易用","details":"遵循直觉的、简约的 Api 设计"},{"icon":"\\"High","title":"高性能","details":"Composition Api,更好的性能"},{"icon":"\\"Hammer\\"","title":"不是 AnyScript","details":"完整的 TypeScript 支持,更好的体验"},{"icon":"\\"Globe","title":"WebGL","details":"基于百度地图Gl版SDK,WebGL对地图、覆盖物等进行渲染,支持3D视角展示地图"}]},"headers":[],"relativePath":"zh-CN/index.md","filePath":"zh-CN/index.md","lastUpdated":1724785300000}'),l={name:"zh-CN/index.md"},h=i({...l,setup(o){return a(()=>{const t=document.querySelector(".image");e.init(t,{reverse:!0,transition:!0})}),(t,r)=>(s(),n("div"))}});export{c as __pageData,h as default}; diff --git a/assets/zh-CN_index.md.CEKXJMZO.lean.js b/assets/zh-CN_index.md.CEKXJMZO.lean.js new file mode 100644 index 00000000..c42add6f --- /dev/null +++ b/assets/zh-CN_index.md.CEKXJMZO.lean.js @@ -0,0 +1 @@ +import{V as e}from"./chunks/vanilla-tilt.es2015.DBgKETYq.js";import{d as i,y as a,c as n,o as s}from"./chunks/framework.n6hqIsqL.js";const c=JSON.parse('{"title":"Vue3 Baidu Map Gl","description":"","frontmatter":{"layout":"home","title":"Vue3 Baidu Map Gl","hero":{"name":"Vue3 Baidu Map Gl","text":"Vue3 & BMapGL 组件库 + hooks 库","tagline":"易用 & 完整 & 性能不错","image":{"src":"/logo.svg","alt":"Vue3 BaiduMap GL"},"actions":[{"theme":"brand","text":"开始使用","link":"/zh-CN/guide/introduction"},{"theme":"alt","text":"View on GitHub","link":"https://github.com/yue1123/vue3-baidu-map-gl"}]},"features":[{"icon":"\\"Rocket\\"","title":"化繁 => 为简","details":"将百度地图繁琐的 API 封装进组件,你只需关注组件本身"},{"icon":"\\"Package\\"","title":"完整","details":"20+ 高质量的开箱即用 Vue 3 组件以及 5+ hooks 封装"},{"icon":"\\"Triangular","title":"易用","details":"遵循直觉的、简约的 Api 设计"},{"icon":"\\"High","title":"高性能","details":"Composition Api,更好的性能"},{"icon":"\\"Hammer\\"","title":"不是 AnyScript","details":"完整的 TypeScript 支持,更好的体验"},{"icon":"\\"Globe","title":"WebGL","details":"基于百度地图Gl版SDK,WebGL对地图、覆盖物等进行渲染,支持3D视角展示地图"}]},"headers":[],"relativePath":"zh-CN/index.md","filePath":"zh-CN/index.md","lastUpdated":1724785300000}'),l={name:"zh-CN/index.md"},h=i({...l,setup(o){return a(()=>{const t=document.querySelector(".image");e.init(t,{reverse:!0,transition:!0})}),(t,r)=>(s(),n("div"))}});export{c as __pageData,h as default}; diff --git a/hashmap.json b/hashmap.json index 3c44dacf..a92aa348 100644 --- a/hashmap.json +++ b/hashmap.json @@ -1 +1 @@ -{"zh-cn_components_control_context-menu.md":"RLjBXEk0","zh-cn_components_autocomplete_index.md":"JVHi06A1","zh-cn_index.md":"i5-hLPs_","zh-cn_components_overlay_ground-overlay.md":"TrGK40oB","zh-cn_guide_config.md":"6JEr2Oiz","zh-cn_components_overlay_prism.md":"ppIv4U1X","index.md":"48hqsp4f","zh-cn_hooks_usebrowserlocation.md":"gCcmdvVT","sponsor.md":"TisVtjNZ","zh-cn_guide_faq.md":"e5pKPFne","zh-cn_guide_installation.md":"ZJqK6BfE","zh-cn_hooks_useiplocation.md":"DSaM0DYx","zh-cn_components_overlay_infowindow.md":"U9QSEEAW","zh-cn_hooks_usepointconvertor.md":"tO9NMKi4","zh-cn_hooks_useaddressgeocoder.md":"SFuJV8Q0","zh-cn_hooks_useareaboundary.md":"yvFu6GBm","zh-cn_hooks_usedefaultmarkericons.md":"9dqc4mjt","zh-cn_hooks_usepointgeocoder.md":"VSExeGfa","zh-cn_components_control_zoom.md":"8M0rtZDT","zh-cn_components_control_copyright.md":"Aib5sdpR","zh-cn_components_overlay_mapmask.md":"gSMl_T4J","zh-cn_components_overlay_marker.md":"nImwnUhr","zh-cn_hooks_usetrackanimation.md":"bpS0hwmf","zh-cn_components_overlay_polyline.md":"c0xlr7Oa","zh-cn_guide_quick-start.md":"mgqYAuTi","zh-cn_components_control_citylist.md":"idya_KLm","zh-cn_guide_introduction.md":"axvwZD1W","zh-cn_hooks_useviewanimation.md":"LjG4cc5f","zh-cn_components_control_navigation3d.md":"zhrDrimb","zh-cn_expand_bmap-draw.md":"awOKdrU9","zh-cn_components_overlay_beziercurve.md":"8okl8LlJ","zh-cn_expand_mapv.md":"BKtzpoDc","zh-cn_components_overlay_marker3d.md":"Qbq0bEFu","zh-cn_components_control_custom.md":"G8C2X-SZ","zh-cn_components_overlay_label.md":"ODqGUv1C","zh-cn_components_layer_district-layer.md":"DiBz0QLc","zh-cn_hooks_usepoint.md":"wifDggbs","zh-cn_components_control_scale.md":"lYXgG17k","zh-cn_components_layer_panorama-coverage.md":"aLKjHoed","zh-cn_guide_breaking-changes.md":"3L7xPRlu","zh-cn_components_map.md":"7pRcshwd","zh-cn_guide_com-events.md":"BhalNNGo","zh-cn_components_overlay_circle.md":"2_NDUHZm","zh-cn_components_overlay_polygon.md":"WS8cnEL2","zh-cn_components_control_location.md":"huq1YetT","zh-cn_components_control_panorama-control.md":"u2S1XC49"} +{"index.md":"CiNBW8e4","sponsor.md":"rapiUBvt","zh-cn_components_autocomplete_index.md":"DQoPodUL","zh-cn_components_control_citylist.md":"uLczJt12","zh-cn_components_control_context-menu.md":"ymt5YPFp","zh-cn_components_control_copyright.md":"BXr3tWie","zh-cn_components_control_custom.md":"mA4ICBXG","zh-cn_components_control_location.md":"BISwXaNg","zh-cn_components_control_navigation3d.md":"Ft2w-rsN","zh-cn_components_control_panorama-control.md":"CfR8VVZi","zh-cn_components_control_scale.md":"DuVkT0Hk","zh-cn_components_control_zoom.md":"vmZan6vN","zh-cn_components_layer_district-layer.md":"gp0MGNvv","zh-cn_components_layer_panorama-coverage.md":"DGi9wvoW","zh-cn_components_map.md":"QTK8yFhV","zh-cn_components_overlay_beziercurve.md":"B_ppttYG","zh-cn_components_overlay_circle.md":"pa5wWVpk","zh-cn_components_overlay_ground-overlay.md":"DUChyj6g","zh-cn_components_overlay_infowindow.md":"Ct8o2KOQ","zh-cn_components_overlay_label.md":"BrGf0ABD","zh-cn_components_overlay_mapmask.md":"C8jk-9AH","zh-cn_components_overlay_marker.md":"D_cVCEpz","zh-cn_components_overlay_marker3d.md":"DBnGeUZO","zh-cn_components_overlay_polygon.md":"BWeZXyb8","zh-cn_components_overlay_polyline.md":"CDBAW4zY","zh-cn_components_overlay_prism.md":"B2qewn0M","zh-cn_expand_bmap-draw.md":"i3gnZ90D","zh-cn_expand_mapv.md":"CkKUmVIe","zh-cn_guide_breaking-changes.md":"BfxDBOML","zh-cn_guide_com-events.md":"D6sVTlpx","zh-cn_guide_config.md":"CWKE5CPM","zh-cn_guide_faq.md":"DLloHY_Y","zh-cn_guide_installation.md":"CE9TKwIt","zh-cn_guide_introduction.md":"BFOZaG2g","zh-cn_guide_quick-start.md":"COKMMbVx","zh-cn_hooks_useaddressgeocoder.md":"B-3kHth6","zh-cn_hooks_useareaboundary.md":"CC8ZAf6w","zh-cn_hooks_usebrowserlocation.md":"3DNDeBXx","zh-cn_hooks_usedefaultmarkericons.md":"Djxvwufr","zh-cn_hooks_useiplocation.md":"DEuBASB_","zh-cn_hooks_usepoint.md":"CaVondzo","zh-cn_hooks_usepointconvertor.md":"DRPIMBVL","zh-cn_hooks_usepointgeocoder.md":"Dik6QxCV","zh-cn_hooks_usetrackanimation.md":"2lbxwdWN","zh-cn_hooks_useviewanimation.md":"DLT_1V89","zh-cn_index.md":"CEKXJMZO"} diff --git a/index.html b/index.html index 4a73b109..14b9de9f 100644 --- a/index.html +++ b/index.html @@ -3,20 +3,17 @@ - Vue3 Baidu Map Gl | Vue3 Baidu Map Gl + Vue3 Baidu Map Gl - - + + - - - - - - - - - + + + + + + @@ -29,8 +26,8 @@ -
Skip to content

Vue3 Baidu Map Gl

Vue3 & BMapGL 组件库 + hooks 库

易用 & 完整 & 性能不错

Vue3 BaiduMap GL

Released under the MIT License.

- +
Skip to content

Vue3 Baidu Map Gl

Vue3 & BMapGL 组件库 + hooks 库

易用 & 完整 & 性能不错

Vue3 BaiduMap GL

Released under the MIT License.

+ \ No newline at end of file diff --git a/sponsor.html b/sponsor.html index 4c878f8f..bf104d07 100644 --- a/sponsor.html +++ b/sponsor.html @@ -5,17 +5,14 @@ 赞助作者 ☕️ | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

赞助作者 ☕️



维护和开发一个开源项目需要花费大量时间和精力。如果您觉得这个项目对您有所帮助,考虑用一杯咖啡的价格来鼓励和支持我们的工作。您的赞助将激励我们更加积极地更新和改进项目!

或者,给我们的项目点个 star ⭐️,这对于我们来说意义重大。这将有助于让更多的人知道我们的项目,增加项目的曝光度和受欢迎程度。

如何赞助

您可以通过微信或者支付宝扫描下面二维码进行赞助,我们会在下面展示您的昵称信息(如果您介意展示,也可在留言中说明)。

非常感谢您的支持。



当前赞助者

昵称 Partying Face
充电 High Voltage
友**_A10¥
Song 丶**成眷88.88¥
**满200¥
热心**小马15¥

Released under the MIT License.

- +
Skip to content

赞助作者 ☕️



维护和开发一个开源项目需要花费大量时间和精力。如果您觉得这个项目对您有所帮助,考虑用一杯咖啡的价格来鼓励和支持我们的工作。您的赞助将激励我们更加积极地更新和改进项目!

或者,给我们的项目点个 star ⭐️,这对于我们来说意义重大。这将有助于让更多的人知道我们的项目,增加项目的曝光度和受欢迎程度。

如何赞助

您可以通过微信或者支付宝扫描下面二维码进行赞助,我们会在下面展示您的昵称信息(如果您介意展示,也可在留言中说明)。

非常感谢您的支持。



当前赞助者

昵称 Partying Face
充电 High Voltage
友**_A10¥
Song 丶**成眷88.88¥
**满200¥
热心**小马15¥

Released under the MIT License.

+ \ No newline at end of file diff --git a/sw.js b/sw.js index 2c5dcb50..67f9c6d7 100644 --- a/sw.js +++ b/sw.js @@ -1 +1 @@ -if(!self.define){let e,s={};const n=(n,o)=>(n=new URL(n+".js",o).href,s[n]||new Promise((s=>{if("document"in self){const e=document.createElement("script");e.src=n,e.onload=s,document.head.appendChild(e)}else e=n,importScripts(n),s()})).then((()=>{let e=s[n];if(!e)throw new Error(`Module ${n} didn’t register its module`);return e})));self.define=(o,l)=>{const a=e||("document"in self?document.currentScript.src:"")||location.href;if(s[a])return;let i={};const r=e=>n(e,a),d={module:{uri:a},exports:i,require:r};s[a]=Promise.all(o.map((e=>d[e]||r(e)))).then((e=>(l(...e),i)))}}define(["./workbox-8c9736bb"],(function(e){"use strict";e.setCacheNameDetails({prefix:"bundle-prefetch"}),self.addEventListener("message",(e=>{e.data&&"SKIP_WAITING"===e.data.type&&self.skipWaiting()})),e.precacheAndRoute([{url:"404.html",revision:"938a4ac8677c53dffe292c7b84f2f8ba"},{url:"assets/app.8d72TBhU.js",revision:null},{url:"assets/chunks/@localSearchIndexroot.7WLy6Cky.js",revision:null},{url:"assets/chunks/bmap-draw.min.fXjVp_JZ.js",revision:null},{url:"assets/chunks/commonjsHelpers.5-cIlDoe.js",revision:null},{url:"assets/chunks/framework.aeLSa5ZG.js",revision:null},{url:"assets/chunks/mapvthree.umd.c7ntDXwx.js",revision:null},{url:"assets/chunks/theme.RFiQYD5D.js",revision:null},{url:"assets/chunks/vanilla-tilt.es2015.wZKfKoOJ.js",revision:null},{url:"assets/chunks/virtual_pwa-register.Wfz9M2iD.js",revision:null},{url:"assets/chunks/VPLocalSearchBox.g5CqjfdC.js",revision:null},{url:"assets/chunks/workbox-window.prod.es5.prqDwDSL.js",revision:null},{url:"assets/index.md.48hqsp4f.js",revision:null},{url:"assets/index.md.48hqsp4f.lean.js",revision:null},{url:"assets/inter-italic-cyrillic-ext.OVycGSDq.woff2",revision:null},{url:"assets/inter-italic-cyrillic.-nLMcIwj.woff2",revision:null},{url:"assets/inter-italic-greek-ext.hznxWNZO.woff2",revision:null},{url:"assets/inter-italic-greek.PSfer2Kc.woff2",revision:null},{url:"assets/inter-italic-latin-ext.RnFly65-.woff2",revision:null},{url:"assets/inter-italic-latin.27E69YJn.woff2",revision:null},{url:"assets/inter-italic-vietnamese.xzQHe1q1.woff2",revision:null},{url:"assets/inter-roman-cyrillic-ext.8T9wMG5w.woff2",revision:null},{url:"assets/inter-roman-cyrillic.jIZ9REo5.woff2",revision:null},{url:"assets/inter-roman-greek-ext.9JiNzaSO.woff2",revision:null},{url:"assets/inter-roman-greek.Cb5wWeGA.woff2",revision:null},{url:"assets/inter-roman-latin-ext.GZWE-KO4.woff2",revision:null},{url:"assets/inter-roman-latin.bvIUbFQP.woff2",revision:null},{url:"assets/inter-roman-vietnamese.paY3CzEB.woff2",revision:null},{url:"assets/sponsor.md.TisVtjNZ.js",revision:null},{url:"assets/sponsor.md.TisVtjNZ.lean.js",revision:null},{url:"assets/style.SL9VpgYA.css",revision:null},{url:"assets/zh-CN_components_autoComplete_index.md.JVHi06A1.js",revision:null},{url:"assets/zh-CN_components_autoComplete_index.md.JVHi06A1.lean.js",revision:null},{url:"assets/zh-CN_components_control_citylist.md.idya_KLm.js",revision:null},{url:"assets/zh-CN_components_control_citylist.md.idya_KLm.lean.js",revision:null},{url:"assets/zh-CN_components_control_context-menu.md.RLjBXEk0.js",revision:null},{url:"assets/zh-CN_components_control_context-menu.md.RLjBXEk0.lean.js",revision:null},{url:"assets/zh-CN_components_control_copyright.md.Aib5sdpR.js",revision:null},{url:"assets/zh-CN_components_control_copyright.md.Aib5sdpR.lean.js",revision:null},{url:"assets/zh-CN_components_control_custom.md.G8C2X-SZ.js",revision:null},{url:"assets/zh-CN_components_control_custom.md.G8C2X-SZ.lean.js",revision:null},{url:"assets/zh-CN_components_control_location.md.huq1YetT.js",revision:null},{url:"assets/zh-CN_components_control_location.md.huq1YetT.lean.js",revision:null},{url:"assets/zh-CN_components_control_navigation3d.md.zhrDrimb.js",revision:null},{url:"assets/zh-CN_components_control_navigation3d.md.zhrDrimb.lean.js",revision:null},{url:"assets/zh-CN_components_control_panorama-control.md.u2S1XC49.js",revision:null},{url:"assets/zh-CN_components_control_panorama-control.md.u2S1XC49.lean.js",revision:null},{url:"assets/zh-CN_components_control_scale.md.lYXgG17k.js",revision:null},{url:"assets/zh-CN_components_control_scale.md.lYXgG17k.lean.js",revision:null},{url:"assets/zh-CN_components_control_zoom.md.8M0rtZDT.js",revision:null},{url:"assets/zh-CN_components_control_zoom.md.8M0rtZDT.lean.js",revision:null},{url:"assets/zh-CN_components_layer_district-layer.md.DiBz0QLc.js",revision:null},{url:"assets/zh-CN_components_layer_district-layer.md.DiBz0QLc.lean.js",revision:null},{url:"assets/zh-CN_components_layer_panorama-coverage.md.aLKjHoed.js",revision:null},{url:"assets/zh-CN_components_layer_panorama-coverage.md.aLKjHoed.lean.js",revision:null},{url:"assets/zh-CN_components_map.md.7pRcshwd.js",revision:null},{url:"assets/zh-CN_components_map.md.7pRcshwd.lean.js",revision:null},{url:"assets/zh-CN_components_overlay_bezierCurve.md.8okl8LlJ.js",revision:null},{url:"assets/zh-CN_components_overlay_bezierCurve.md.8okl8LlJ.lean.js",revision:null},{url:"assets/zh-CN_components_overlay_circle.md.2_NDUHZm.js",revision:null},{url:"assets/zh-CN_components_overlay_circle.md.2_NDUHZm.lean.js",revision:null},{url:"assets/zh-CN_components_overlay_ground-overlay.md.TrGK40oB.js",revision:null},{url:"assets/zh-CN_components_overlay_ground-overlay.md.TrGK40oB.lean.js",revision:null},{url:"assets/zh-CN_components_overlay_infowindow.md.U9QSEEAW.js",revision:null},{url:"assets/zh-CN_components_overlay_infowindow.md.U9QSEEAW.lean.js",revision:null},{url:"assets/zh-CN_components_overlay_label.md.ODqGUv1C.js",revision:null},{url:"assets/zh-CN_components_overlay_label.md.ODqGUv1C.lean.js",revision:null},{url:"assets/zh-CN_components_overlay_mapMask.md.gSMl_T4J.js",revision:null},{url:"assets/zh-CN_components_overlay_mapMask.md.gSMl_T4J.lean.js",revision:null},{url:"assets/zh-CN_components_overlay_marker.md.nImwnUhr.js",revision:null},{url:"assets/zh-CN_components_overlay_marker.md.nImwnUhr.lean.js",revision:null},{url:"assets/zh-CN_components_overlay_marker3d.md.Qbq0bEFu.js",revision:null},{url:"assets/zh-CN_components_overlay_marker3d.md.Qbq0bEFu.lean.js",revision:null},{url:"assets/zh-CN_components_overlay_polygon.md.WS8cnEL2.js",revision:null},{url:"assets/zh-CN_components_overlay_polygon.md.WS8cnEL2.lean.js",revision:null},{url:"assets/zh-CN_components_overlay_polyline.md.c0xlr7Oa.js",revision:null},{url:"assets/zh-CN_components_overlay_polyline.md.c0xlr7Oa.lean.js",revision:null},{url:"assets/zh-CN_components_overlay_prism.md.ppIv4U1X.js",revision:null},{url:"assets/zh-CN_components_overlay_prism.md.ppIv4U1X.lean.js",revision:null},{url:"assets/zh-CN_expand_bmap-draw.md.awOKdrU9.js",revision:null},{url:"assets/zh-CN_expand_bmap-draw.md.awOKdrU9.lean.js",revision:null},{url:"assets/zh-CN_expand_mapv.md.BKtzpoDc.js",revision:null},{url:"assets/zh-CN_expand_mapv.md.BKtzpoDc.lean.js",revision:null},{url:"assets/zh-CN_guide_breaking-changes.md.3L7xPRlu.js",revision:null},{url:"assets/zh-CN_guide_breaking-changes.md.3L7xPRlu.lean.js",revision:null},{url:"assets/zh-CN_guide_com-events.md.BhalNNGo.js",revision:null},{url:"assets/zh-CN_guide_com-events.md.BhalNNGo.lean.js",revision:null},{url:"assets/zh-CN_guide_config.md.6JEr2Oiz.js",revision:null},{url:"assets/zh-CN_guide_config.md.6JEr2Oiz.lean.js",revision:null},{url:"assets/zh-CN_guide_faq.md.e5pKPFne.js",revision:null},{url:"assets/zh-CN_guide_faq.md.e5pKPFne.lean.js",revision:null},{url:"assets/zh-CN_guide_installation.md.ZJqK6BfE.js",revision:null},{url:"assets/zh-CN_guide_installation.md.ZJqK6BfE.lean.js",revision:null},{url:"assets/zh-CN_guide_introduction.md.axvwZD1W.js",revision:null},{url:"assets/zh-CN_guide_introduction.md.axvwZD1W.lean.js",revision:null},{url:"assets/zh-CN_guide_quick-start.md.mgqYAuTi.js",revision:null},{url:"assets/zh-CN_guide_quick-start.md.mgqYAuTi.lean.js",revision:null},{url:"assets/zh-CN_hooks_useAddressGeocoder.md.SFuJV8Q0.js",revision:null},{url:"assets/zh-CN_hooks_useAddressGeocoder.md.SFuJV8Q0.lean.js",revision:null},{url:"assets/zh-CN_hooks_useAreaBoundary.md.yvFu6GBm.js",revision:null},{url:"assets/zh-CN_hooks_useAreaBoundary.md.yvFu6GBm.lean.js",revision:null},{url:"assets/zh-CN_hooks_useBrowserLocation.md.gCcmdvVT.js",revision:null},{url:"assets/zh-CN_hooks_useBrowserLocation.md.gCcmdvVT.lean.js",revision:null},{url:"assets/zh-CN_hooks_useDefaultMarkerIcons.md.9dqc4mjt.js",revision:null},{url:"assets/zh-CN_hooks_useDefaultMarkerIcons.md.9dqc4mjt.lean.js",revision:null},{url:"assets/zh-CN_hooks_useIpLocation.md.DSaM0DYx.js",revision:null},{url:"assets/zh-CN_hooks_useIpLocation.md.DSaM0DYx.lean.js",revision:null},{url:"assets/zh-CN_hooks_usePoint.md.wifDggbs.js",revision:null},{url:"assets/zh-CN_hooks_usePoint.md.wifDggbs.lean.js",revision:null},{url:"assets/zh-CN_hooks_usePointConvertor.md.tO9NMKi4.js",revision:null},{url:"assets/zh-CN_hooks_usePointConvertor.md.tO9NMKi4.lean.js",revision:null},{url:"assets/zh-CN_hooks_usePointGeocoder.md.VSExeGfa.js",revision:null},{url:"assets/zh-CN_hooks_usePointGeocoder.md.VSExeGfa.lean.js",revision:null},{url:"assets/zh-CN_hooks_useTrackAnimation.md.bpS0hwmf.js",revision:null},{url:"assets/zh-CN_hooks_useTrackAnimation.md.bpS0hwmf.lean.js",revision:null},{url:"assets/zh-CN_hooks_useViewAnimation.md.LjG4cc5f.js",revision:null},{url:"assets/zh-CN_hooks_useViewAnimation.md.LjG4cc5f.lean.js",revision:null},{url:"assets/zh-CN_index.md.i5-hLPs_.js",revision:null},{url:"assets/zh-CN_index.md.i5-hLPs_.lean.js",revision:null},{url:"beijing.json",revision:"8ca7c8460514609870281b24078bbf81"},{url:"bounds.svg",revision:"b5001c3bffdaad6a5244df2d49a08e07"},{url:"enable-volar.png",revision:"c6c5d4487d32007fc6a6adb9297fdd6c"},{url:"enable-volar1.png",revision:"aa9e7916f5bcbf6e1aeca8e9dfaa573c"},{url:"hashmap.json",revision:"82aed4d7f007165486c7bd89713a044b"},{url:"icons/icon-192x192.png",revision:"df23467819a90f7f0e57cd0d1bf67e3f"},{url:"icons/icon-512x512.png",revision:"05d42d8e81c2ea43916b9bc98b9ac56c"},{url:"icons/maskable-icon-512x512.png",revision:"ee74635d9d737b7be78efd9ad166af07"},{url:"index.html",revision:"328c2081723028ed8c1ef1a40a4a38ec"},{url:"logo-shadow.svg",revision:"8fc534bd92b643a27be3927a763e7951"},{url:"logo.png",revision:"31283fbfca0afc60e809b49ca96ce068"},{url:"logo.svg",revision:"3790581a3ce09985efd90ecc6ac5a9d6"},{url:"not-enable-volar.png",revision:"a682f49b4e025eea643f713deffb30da"},{url:"not-enable-volar1.png",revision:"514ab5f4fe331ff8855d66957ef24c09"},{url:"sponsor.html",revision:"6d645b23940d10baca627e519698ba10"},{url:"zh-CN/components/autoComplete/index.html",revision:"cbd7b203807f87fb5b6e2dc9568e2b66"},{url:"zh-CN/components/control/citylist.html",revision:"bd05fb0dc32bd9ebf1eb7ec5ea63482b"},{url:"zh-CN/components/control/context-menu.html",revision:"f2182c82f3ef39a2b153d332c07c8136"},{url:"zh-CN/components/control/copyright.html",revision:"d2d90ff7e9ebe7b1d9694e62b8ac6a95"},{url:"zh-CN/components/control/custom.html",revision:"45c2824e66fe7f1bd10a201571f51a84"},{url:"zh-CN/components/control/location.html",revision:"206145e20b24bc58405aae8078989cc7"},{url:"zh-CN/components/control/navigation3d.html",revision:"41f0e1f2f085f9e1eeeba5702b0726f6"},{url:"zh-CN/components/control/panorama-control.html",revision:"c918a4bd991b2059bd8e05122fdba342"},{url:"zh-CN/components/control/scale.html",revision:"bef30cebcf87eb15c584f541a7e6c484"},{url:"zh-CN/components/control/zoom.html",revision:"2d1469ff484f8e051fb0ec2cac51bc02"},{url:"zh-CN/components/layer/district-layer.html",revision:"5a19a18707b61edf399700ddbcf5b310"},{url:"zh-CN/components/layer/panorama-coverage.html",revision:"209ba925c60fbe0d509fc22bfaeb31a8"},{url:"zh-CN/components/map.html",revision:"6a6936cbf9e9529ae940c244be28bd6d"},{url:"zh-CN/components/overlay/bezierCurve.html",revision:"e9a4400850f673b18b2186fa0155caf2"},{url:"zh-CN/components/overlay/circle.html",revision:"c581699cef2b344d8eed7a78a6d0cc8e"},{url:"zh-CN/components/overlay/ground-overlay.html",revision:"633e5ee49b97a7b858e782af402d87e5"},{url:"zh-CN/components/overlay/infowindow.html",revision:"9e4559efa0cbb87801dbf20f780d41c5"},{url:"zh-CN/components/overlay/label.html",revision:"edf86eb58d08c71c636571ef46c9c49f"},{url:"zh-CN/components/overlay/mapMask.html",revision:"7a761a4876a5c2f9267ea1d21e592126"},{url:"zh-CN/components/overlay/marker.html",revision:"afe2ca2fab6a9beb70cceba66d8e02bf"},{url:"zh-CN/components/overlay/marker3d.html",revision:"2239c8960d8cf93ea22e235d3c8eeaea"},{url:"zh-CN/components/overlay/polygon.html",revision:"39653070b242a991aaa5331a3c009095"},{url:"zh-CN/components/overlay/polyline.html",revision:"f3fa2f21c4ea9373e284e223ca7708af"},{url:"zh-CN/components/overlay/prism.html",revision:"4167e950a5404138ef5b870b22b783c7"},{url:"zh-CN/expand/bmap-draw.html",revision:"4471af9dc3a94452e78d349686252dd0"},{url:"zh-CN/expand/mapv.html",revision:"6991260201af9aac97a49ac8fab8fe9a"},{url:"zh-CN/guide/breaking-changes.html",revision:"4125a6060e40f76b8c0d230e6ad955e2"},{url:"zh-CN/guide/com-events.html",revision:"23cb219866eb2a31d8351187c0c12b23"},{url:"zh-CN/guide/config.html",revision:"7ef5003d36c7220124fe3b7235707d32"},{url:"zh-CN/guide/faq.html",revision:"3dd8c6c53ad5c5a51cbfc21df30e34a1"},{url:"zh-CN/guide/installation.html",revision:"7acbfd0b0b8357b82ab391ad36ed3705"},{url:"zh-CN/guide/introduction.html",revision:"1c61a409e9bad8dd68ed3883ba86cb47"},{url:"zh-CN/guide/quick-start.html",revision:"a4f694ebbdf0be8c005112bdc9b6ea68"},{url:"zh-CN/hooks/useAddressGeocoder.html",revision:"e810e5fc344ce01754328cc6f71a5043"},{url:"zh-CN/hooks/useAreaBoundary.html",revision:"d02ee46f4ce77c21c663fd6f037f6631"},{url:"zh-CN/hooks/useBrowserLocation.html",revision:"17db04568fbf653fbe1951a85b7851f4"},{url:"zh-CN/hooks/useDefaultMarkerIcons.html",revision:"70789da51c392731296beaf17a65ff92"},{url:"zh-CN/hooks/useIpLocation.html",revision:"320c652a55f588fc03b6754fc444d708"},{url:"zh-CN/hooks/usePoint.html",revision:"3c5ffa0f04585c155fed28b613a9d98d"},{url:"zh-CN/hooks/usePointConvertor.html",revision:"927d10fdbe59ddf673bbfa0579c13472"},{url:"zh-CN/hooks/usePointGeocoder.html",revision:"cff4f853204c889f5744fdc0f958bc0a"},{url:"zh-CN/hooks/useTrackAnimation.html",revision:"80d2e60c08aed23a6d6ca178507e0327"},{url:"zh-CN/hooks/useViewAnimation.html",revision:"dad60ba08735c405e56f5fede43edf48"},{url:"zh-CN/index.html",revision:"e6ea1869ba5ef630d3464be93a9cd30d"},{url:"manifest.webmanifest",revision:"47e773587c46881dd5c19db9f20147e7"}],{}),e.cleanupOutdatedCaches(),e.registerRoute(new e.NavigationRoute(e.createHandlerBoundToURL("index.html"),{allowlist:[/^\/vue3\x2dbaidu\x2dmap\x2dgl\/(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/sponsor(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/autoComplete\/index(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/control\/citylist(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/control\/context\x2dmenu(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/control\/copyright(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/control\/custom(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/control\/location(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/control\/navigation3d(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/control\/panorama\x2dcontrol(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/control\/scale(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/control\/zoom(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/layer\/district\x2dlayer(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/layer\/panorama\x2dcoverage(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/map(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/overlay\/bezierCurve(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/overlay\/circle(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/overlay\/ground\x2doverlay(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/overlay\/infowindow(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/overlay\/label(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/overlay\/mapMask(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/overlay\/marker(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/overlay\/marker3d(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/overlay\/polygon(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/overlay\/polyline(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/overlay\/prism(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/expand\/bmap\x2ddraw(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/expand\/mapv(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/guide\/breaking\x2dchanges(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/guide\/com\x2devents(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/guide\/config(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/guide\/faq(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/guide\/installation(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/guide\/introduction(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/guide\/quick\x2dstart(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/hooks\/useAddressGeocoder(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/hooks\/useAreaBoundary(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/hooks\/useBrowserLocation(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/hooks\/useDefaultMarkerIcons(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/hooks\/useIpLocation(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/hooks\/usePoint(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/hooks\/usePointConvertor(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/hooks\/usePointGeocoder(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/hooks\/useTrackAnimation(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/hooks\/useViewAnimation(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/index(\.html)?$/]})),e.registerRoute(/^https:\/\/raw\.githubusercontent\.com\/.*/i,new e.CacheFirst({cacheName:"animated-images-cache",plugins:[new e.ExpirationPlugin({maxEntries:15,maxAgeSeconds:31536e3}),new e.CacheableResponsePlugin({statuses:[0,200]})]}),"GET"),e.registerRoute(/^https:\/\/img\.shields\.io\/.*/i,new e.NetworkFirst({cacheName:"dynamic-images-cache",plugins:[new e.ExpirationPlugin({maxEntries:15,maxAgeSeconds:86400}),new e.CacheableResponsePlugin({statuses:[0,200]})]}),"GET"),e.registerRoute(/^https:\/\/cdn\.jsdelivr\.net\/.*/i,new e.NetworkFirst({cacheName:"jsdelivr-images-cache",plugins:[new e.ExpirationPlugin({maxEntries:10,maxAgeSeconds:604800}),new e.CacheableResponsePlugin({statuses:[0,200]})]}),"GET"),e.registerRoute(/^https:\/\/api\.github\.com\/.*/i,new e.NetworkFirst({cacheName:"github-api-cache",plugins:[new e.ExpirationPlugin({maxEntries:10,maxAgeSeconds:86400}),new e.CacheableResponsePlugin({statuses:[0,200]})]}),"GET"),e.registerRoute(/\.glb$/i,new e.CacheFirst({cacheName:"3d-model-cache",plugins:[new e.ExpirationPlugin({maxEntries:10,maxAgeSeconds:31536e3}),new e.CacheableResponsePlugin({statuses:[0,200]})]}),"GET"),e.registerRoute((({request:e,sameOrigin:s})=>s&&"navigate"===e.mode),new e.NetworkOnly({plugins:[{handlerDidError:async()=>Response.redirect("404",302),cacheWillUpdate:async()=>null}]}),"GET")})); +if(!self.define){let e,s={};const n=(n,o)=>(n=new URL(n+".js",o).href,s[n]||new Promise((s=>{if("document"in self){const e=document.createElement("script");e.src=n,e.onload=s,document.head.appendChild(e)}else e=n,importScripts(n),s()})).then((()=>{let e=s[n];if(!e)throw new Error(`Module ${n} didn’t register its module`);return e})));self.define=(o,l)=>{const a=e||("document"in self?document.currentScript.src:"")||location.href;if(s[a])return;let i={};const r=e=>n(e,a),t={module:{uri:a},exports:i,require:r};s[a]=Promise.all(o.map((e=>t[e]||r(e)))).then((e=>(l(...e),i)))}}define(["./workbox-8c9736bb"],(function(e){"use strict";e.setCacheNameDetails({prefix:"bundle-prefetch"}),self.addEventListener("message",(e=>{e.data&&"SKIP_WAITING"===e.data.type&&self.skipWaiting()})),e.precacheAndRoute([{url:"404.html",revision:"102f42ca2a7511d8bb6cd507ef7b12ef"},{url:"assets/app.CCmjgpae.js",revision:null},{url:"assets/chunks/@localSearchIndexroot.BVyFwV8F.js",revision:null},{url:"assets/chunks/bmap-draw.min.4O0BZXxI.js",revision:null},{url:"assets/chunks/commonjsHelpers.Cpj98o6Y.js",revision:null},{url:"assets/chunks/framework.n6hqIsqL.js",revision:null},{url:"assets/chunks/mapvthree.umd.1cz8IRaC.js",revision:null},{url:"assets/chunks/theme.-bEKLWFY.js",revision:null},{url:"assets/chunks/vanilla-tilt.es2015.DBgKETYq.js",revision:null},{url:"assets/chunks/virtual_pwa-register.F33dMvvE.js",revision:null},{url:"assets/chunks/VPLocalSearchBox.6F88UWle.js",revision:null},{url:"assets/chunks/workbox-window.prod.es5.B_6ZJHoI.js",revision:null},{url:"assets/index.md.CiNBW8e4.js",revision:null},{url:"assets/index.md.CiNBW8e4.lean.js",revision:null},{url:"assets/inter-italic-cyrillic-ext.r48I6akx.woff2",revision:null},{url:"assets/inter-italic-cyrillic.By2_1cv3.woff2",revision:null},{url:"assets/inter-italic-greek-ext.1u6EdAuj.woff2",revision:null},{url:"assets/inter-italic-greek.DJ8dCoTZ.woff2",revision:null},{url:"assets/inter-italic-latin-ext.CN1xVJS-.woff2",revision:null},{url:"assets/inter-italic-latin.C2AdPX0b.woff2",revision:null},{url:"assets/inter-italic-vietnamese.BSbpV94h.woff2",revision:null},{url:"assets/inter-roman-cyrillic-ext.BBPuwvHQ.woff2",revision:null},{url:"assets/inter-roman-cyrillic.C5lxZ8CY.woff2",revision:null},{url:"assets/inter-roman-greek-ext.CqjqNYQ-.woff2",revision:null},{url:"assets/inter-roman-greek.BBVDIX6e.woff2",revision:null},{url:"assets/inter-roman-latin-ext.4ZJIpNVo.woff2",revision:null},{url:"assets/inter-roman-latin.Di8DUHzh.woff2",revision:null},{url:"assets/inter-roman-vietnamese.BjW4sHH5.woff2",revision:null},{url:"assets/sponsor.md.rapiUBvt.js",revision:null},{url:"assets/sponsor.md.rapiUBvt.lean.js",revision:null},{url:"assets/style.DQDgy0V6.css",revision:null},{url:"assets/zh-CN_components_autoComplete_index.md.DQoPodUL.js",revision:null},{url:"assets/zh-CN_components_autoComplete_index.md.DQoPodUL.lean.js",revision:null},{url:"assets/zh-CN_components_control_citylist.md.uLczJt12.js",revision:null},{url:"assets/zh-CN_components_control_citylist.md.uLczJt12.lean.js",revision:null},{url:"assets/zh-CN_components_control_context-menu.md.ymt5YPFp.js",revision:null},{url:"assets/zh-CN_components_control_context-menu.md.ymt5YPFp.lean.js",revision:null},{url:"assets/zh-CN_components_control_copyright.md.BXr3tWie.js",revision:null},{url:"assets/zh-CN_components_control_copyright.md.BXr3tWie.lean.js",revision:null},{url:"assets/zh-CN_components_control_custom.md.mA4ICBXG.js",revision:null},{url:"assets/zh-CN_components_control_custom.md.mA4ICBXG.lean.js",revision:null},{url:"assets/zh-CN_components_control_location.md.BISwXaNg.js",revision:null},{url:"assets/zh-CN_components_control_location.md.BISwXaNg.lean.js",revision:null},{url:"assets/zh-CN_components_control_navigation3d.md.Ft2w-rsN.js",revision:null},{url:"assets/zh-CN_components_control_navigation3d.md.Ft2w-rsN.lean.js",revision:null},{url:"assets/zh-CN_components_control_panorama-control.md.CfR8VVZi.js",revision:null},{url:"assets/zh-CN_components_control_panorama-control.md.CfR8VVZi.lean.js",revision:null},{url:"assets/zh-CN_components_control_scale.md.DuVkT0Hk.js",revision:null},{url:"assets/zh-CN_components_control_scale.md.DuVkT0Hk.lean.js",revision:null},{url:"assets/zh-CN_components_control_zoom.md.vmZan6vN.js",revision:null},{url:"assets/zh-CN_components_control_zoom.md.vmZan6vN.lean.js",revision:null},{url:"assets/zh-CN_components_layer_district-layer.md.gp0MGNvv.js",revision:null},{url:"assets/zh-CN_components_layer_district-layer.md.gp0MGNvv.lean.js",revision:null},{url:"assets/zh-CN_components_layer_panorama-coverage.md.DGi9wvoW.js",revision:null},{url:"assets/zh-CN_components_layer_panorama-coverage.md.DGi9wvoW.lean.js",revision:null},{url:"assets/zh-CN_components_map.md.QTK8yFhV.js",revision:null},{url:"assets/zh-CN_components_map.md.QTK8yFhV.lean.js",revision:null},{url:"assets/zh-CN_components_overlay_bezierCurve.md.B_ppttYG.js",revision:null},{url:"assets/zh-CN_components_overlay_bezierCurve.md.B_ppttYG.lean.js",revision:null},{url:"assets/zh-CN_components_overlay_circle.md.pa5wWVpk.js",revision:null},{url:"assets/zh-CN_components_overlay_circle.md.pa5wWVpk.lean.js",revision:null},{url:"assets/zh-CN_components_overlay_ground-overlay.md.DUChyj6g.js",revision:null},{url:"assets/zh-CN_components_overlay_ground-overlay.md.DUChyj6g.lean.js",revision:null},{url:"assets/zh-CN_components_overlay_infowindow.md.Ct8o2KOQ.js",revision:null},{url:"assets/zh-CN_components_overlay_infowindow.md.Ct8o2KOQ.lean.js",revision:null},{url:"assets/zh-CN_components_overlay_label.md.BrGf0ABD.js",revision:null},{url:"assets/zh-CN_components_overlay_label.md.BrGf0ABD.lean.js",revision:null},{url:"assets/zh-CN_components_overlay_mapMask.md.C8jk-9AH.js",revision:null},{url:"assets/zh-CN_components_overlay_mapMask.md.C8jk-9AH.lean.js",revision:null},{url:"assets/zh-CN_components_overlay_marker.md.D_cVCEpz.js",revision:null},{url:"assets/zh-CN_components_overlay_marker.md.D_cVCEpz.lean.js",revision:null},{url:"assets/zh-CN_components_overlay_marker3d.md.DBnGeUZO.js",revision:null},{url:"assets/zh-CN_components_overlay_marker3d.md.DBnGeUZO.lean.js",revision:null},{url:"assets/zh-CN_components_overlay_polygon.md.BWeZXyb8.js",revision:null},{url:"assets/zh-CN_components_overlay_polygon.md.BWeZXyb8.lean.js",revision:null},{url:"assets/zh-CN_components_overlay_polyline.md.CDBAW4zY.js",revision:null},{url:"assets/zh-CN_components_overlay_polyline.md.CDBAW4zY.lean.js",revision:null},{url:"assets/zh-CN_components_overlay_prism.md.B2qewn0M.js",revision:null},{url:"assets/zh-CN_components_overlay_prism.md.B2qewn0M.lean.js",revision:null},{url:"assets/zh-CN_expand_bmap-draw.md.i3gnZ90D.js",revision:null},{url:"assets/zh-CN_expand_bmap-draw.md.i3gnZ90D.lean.js",revision:null},{url:"assets/zh-CN_expand_mapv.md.CkKUmVIe.js",revision:null},{url:"assets/zh-CN_expand_mapv.md.CkKUmVIe.lean.js",revision:null},{url:"assets/zh-CN_guide_breaking-changes.md.BfxDBOML.js",revision:null},{url:"assets/zh-CN_guide_breaking-changes.md.BfxDBOML.lean.js",revision:null},{url:"assets/zh-CN_guide_com-events.md.D6sVTlpx.js",revision:null},{url:"assets/zh-CN_guide_com-events.md.D6sVTlpx.lean.js",revision:null},{url:"assets/zh-CN_guide_config.md.CWKE5CPM.js",revision:null},{url:"assets/zh-CN_guide_config.md.CWKE5CPM.lean.js",revision:null},{url:"assets/zh-CN_guide_faq.md.DLloHY_Y.js",revision:null},{url:"assets/zh-CN_guide_faq.md.DLloHY_Y.lean.js",revision:null},{url:"assets/zh-CN_guide_installation.md.CE9TKwIt.js",revision:null},{url:"assets/zh-CN_guide_installation.md.CE9TKwIt.lean.js",revision:null},{url:"assets/zh-CN_guide_introduction.md.BFOZaG2g.js",revision:null},{url:"assets/zh-CN_guide_introduction.md.BFOZaG2g.lean.js",revision:null},{url:"assets/zh-CN_guide_quick-start.md.COKMMbVx.js",revision:null},{url:"assets/zh-CN_guide_quick-start.md.COKMMbVx.lean.js",revision:null},{url:"assets/zh-CN_hooks_useAddressGeocoder.md.B-3kHth6.js",revision:null},{url:"assets/zh-CN_hooks_useAddressGeocoder.md.B-3kHth6.lean.js",revision:null},{url:"assets/zh-CN_hooks_useAreaBoundary.md.CC8ZAf6w.js",revision:null},{url:"assets/zh-CN_hooks_useAreaBoundary.md.CC8ZAf6w.lean.js",revision:null},{url:"assets/zh-CN_hooks_useBrowserLocation.md.3DNDeBXx.js",revision:null},{url:"assets/zh-CN_hooks_useBrowserLocation.md.3DNDeBXx.lean.js",revision:null},{url:"assets/zh-CN_hooks_useDefaultMarkerIcons.md.Djxvwufr.js",revision:null},{url:"assets/zh-CN_hooks_useDefaultMarkerIcons.md.Djxvwufr.lean.js",revision:null},{url:"assets/zh-CN_hooks_useIpLocation.md.DEuBASB_.js",revision:null},{url:"assets/zh-CN_hooks_useIpLocation.md.DEuBASB_.lean.js",revision:null},{url:"assets/zh-CN_hooks_usePoint.md.CaVondzo.js",revision:null},{url:"assets/zh-CN_hooks_usePoint.md.CaVondzo.lean.js",revision:null},{url:"assets/zh-CN_hooks_usePointConvertor.md.DRPIMBVL.js",revision:null},{url:"assets/zh-CN_hooks_usePointConvertor.md.DRPIMBVL.lean.js",revision:null},{url:"assets/zh-CN_hooks_usePointGeocoder.md.Dik6QxCV.js",revision:null},{url:"assets/zh-CN_hooks_usePointGeocoder.md.Dik6QxCV.lean.js",revision:null},{url:"assets/zh-CN_hooks_useTrackAnimation.md.2lbxwdWN.js",revision:null},{url:"assets/zh-CN_hooks_useTrackAnimation.md.2lbxwdWN.lean.js",revision:null},{url:"assets/zh-CN_hooks_useViewAnimation.md.DLT_1V89.js",revision:null},{url:"assets/zh-CN_hooks_useViewAnimation.md.DLT_1V89.lean.js",revision:null},{url:"assets/zh-CN_index.md.CEKXJMZO.js",revision:null},{url:"assets/zh-CN_index.md.CEKXJMZO.lean.js",revision:null},{url:"beijing.json",revision:"8ca7c8460514609870281b24078bbf81"},{url:"bounds.svg",revision:"b5001c3bffdaad6a5244df2d49a08e07"},{url:"enable-volar.png",revision:"c6c5d4487d32007fc6a6adb9297fdd6c"},{url:"enable-volar1.png",revision:"aa9e7916f5bcbf6e1aeca8e9dfaa573c"},{url:"hashmap.json",revision:"97095fd9a07c40209d020ab54a04865b"},{url:"icons/icon-192x192.png",revision:"df23467819a90f7f0e57cd0d1bf67e3f"},{url:"icons/icon-512x512.png",revision:"05d42d8e81c2ea43916b9bc98b9ac56c"},{url:"icons/maskable-icon-512x512.png",revision:"ee74635d9d737b7be78efd9ad166af07"},{url:"index.html",revision:"988e44d4de9b757c79b1e1a879ae9473"},{url:"logo-shadow.svg",revision:"8fc534bd92b643a27be3927a763e7951"},{url:"logo.png",revision:"31283fbfca0afc60e809b49ca96ce068"},{url:"logo.svg",revision:"3790581a3ce09985efd90ecc6ac5a9d6"},{url:"not-enable-volar.png",revision:"a682f49b4e025eea643f713deffb30da"},{url:"not-enable-volar1.png",revision:"514ab5f4fe331ff8855d66957ef24c09"},{url:"sponsor.html",revision:"7d9f7a92074207e2f8087787f8838748"},{url:"zh-CN/components/autoComplete/index.html",revision:"463855411229445350bacc9f7aeafa7b"},{url:"zh-CN/components/control/citylist.html",revision:"fd03d363fe4044c4044902266aff8636"},{url:"zh-CN/components/control/context-menu.html",revision:"43d77d7a9b6367a980a6df53eee535d1"},{url:"zh-CN/components/control/copyright.html",revision:"70a6865e42d7c20710f7cb7c0178f996"},{url:"zh-CN/components/control/custom.html",revision:"b6537d380206781160d47b64e01567a9"},{url:"zh-CN/components/control/location.html",revision:"48a5b78d22aa702a616ee18a89d7d526"},{url:"zh-CN/components/control/navigation3d.html",revision:"b9a6a61612d2932560db027b0c984e00"},{url:"zh-CN/components/control/panorama-control.html",revision:"7481ae70ee28c9019662498016008c7a"},{url:"zh-CN/components/control/scale.html",revision:"c3b36092f64e6f868995741d0d99dc14"},{url:"zh-CN/components/control/zoom.html",revision:"52e02db6d5a37f54d6701edae78e4564"},{url:"zh-CN/components/layer/district-layer.html",revision:"910e7cc00d99e23ee7fd223605794fa6"},{url:"zh-CN/components/layer/panorama-coverage.html",revision:"542729109922f368b0430d5fb0db706c"},{url:"zh-CN/components/map.html",revision:"8dd2aaf2495833d37572217c408e1d9d"},{url:"zh-CN/components/overlay/bezierCurve.html",revision:"1fb013058c26f1efe0672b3ea7fd087d"},{url:"zh-CN/components/overlay/circle.html",revision:"787c7c8d59e4f4ab9ef86748c60ce3d5"},{url:"zh-CN/components/overlay/ground-overlay.html",revision:"e8bbf56cdb9179ec0d3ecf59bae35f06"},{url:"zh-CN/components/overlay/infowindow.html",revision:"71a458f2835af70b7ac867e96f70636d"},{url:"zh-CN/components/overlay/label.html",revision:"2e1b0b9461b4570ff63e7c564eeeaa3a"},{url:"zh-CN/components/overlay/mapMask.html",revision:"24150cebc760fafe96479ee7615face4"},{url:"zh-CN/components/overlay/marker.html",revision:"d1204b530be6c7978c9385c3f8622bb7"},{url:"zh-CN/components/overlay/marker3d.html",revision:"b7eb97ff3791161d979ddf0f5a336fe8"},{url:"zh-CN/components/overlay/polygon.html",revision:"e7ee8fe0db35a226bc3f0d1aaa781d31"},{url:"zh-CN/components/overlay/polyline.html",revision:"c8822f707707405b8393e82139f6619f"},{url:"zh-CN/components/overlay/prism.html",revision:"07fde128a6433b31591fe99dd5e0d2e7"},{url:"zh-CN/expand/bmap-draw.html",revision:"9e1f8e317c2a733ea059edf0f42c04f3"},{url:"zh-CN/expand/mapv.html",revision:"93fe80c3208131e51549015cca64b37f"},{url:"zh-CN/guide/breaking-changes.html",revision:"aa16001527809f9c9c2082dc53db2da1"},{url:"zh-CN/guide/com-events.html",revision:"0beec3f58cae9392d60c4a90cb3e1930"},{url:"zh-CN/guide/config.html",revision:"61fa63428108847c8a7b78f50e269642"},{url:"zh-CN/guide/faq.html",revision:"e0835e63032f41440775b96af86aecd7"},{url:"zh-CN/guide/installation.html",revision:"62b7a2e8479f0a163c4df4aa75ee6f67"},{url:"zh-CN/guide/introduction.html",revision:"f7b7283a42f73de9805e6ba07b20ffb9"},{url:"zh-CN/guide/quick-start.html",revision:"bb8d74316857c53821479772ce51fcd0"},{url:"zh-CN/hooks/useAddressGeocoder.html",revision:"e1339734d560ca1a9b865ec3f0e1970b"},{url:"zh-CN/hooks/useAreaBoundary.html",revision:"ace2e0a143fccee14910b430c7e9246c"},{url:"zh-CN/hooks/useBrowserLocation.html",revision:"589811826c4b2a73a9a3c7d41daee641"},{url:"zh-CN/hooks/useDefaultMarkerIcons.html",revision:"99f98f23a4d9542dab29288f515e13ba"},{url:"zh-CN/hooks/useIpLocation.html",revision:"f757cef641854602420f0445f60320e3"},{url:"zh-CN/hooks/usePoint.html",revision:"7b95ca6cad99d96f50a82fc5b9416547"},{url:"zh-CN/hooks/usePointConvertor.html",revision:"55b45de6a5b9b0b5e7f911c90ee30ecd"},{url:"zh-CN/hooks/usePointGeocoder.html",revision:"4cb590fc293e4c4fc144869908af7384"},{url:"zh-CN/hooks/useTrackAnimation.html",revision:"c98950608b79fd08f76705aa3ba32a99"},{url:"zh-CN/hooks/useViewAnimation.html",revision:"305a4fe5188bf135ab319e0ddd9e642b"},{url:"zh-CN/index.html",revision:"4dfaf13c05d60aa3705b37050d3bd9fe"},{url:"manifest.webmanifest",revision:"47e773587c46881dd5c19db9f20147e7"}],{}),e.cleanupOutdatedCaches(),e.registerRoute(new e.NavigationRoute(e.createHandlerBoundToURL("index.html"),{allowlist:[/^\/vue3\x2dbaidu\x2dmap\x2dgl\/(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/sponsor(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/autoComplete\/index(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/control\/citylist(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/control\/context\x2dmenu(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/control\/copyright(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/control\/custom(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/control\/location(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/control\/navigation3d(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/control\/panorama\x2dcontrol(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/control\/scale(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/control\/zoom(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/layer\/district\x2dlayer(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/layer\/panorama\x2dcoverage(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/map(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/overlay\/bezierCurve(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/overlay\/circle(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/overlay\/ground\x2doverlay(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/overlay\/infowindow(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/overlay\/label(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/overlay\/mapMask(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/overlay\/marker(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/overlay\/marker3d(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/overlay\/polygon(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/overlay\/polyline(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/components\/overlay\/prism(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/expand\/bmap\x2ddraw(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/expand\/mapv(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/guide\/breaking\x2dchanges(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/guide\/com\x2devents(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/guide\/config(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/guide\/faq(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/guide\/installation(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/guide\/introduction(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/guide\/quick\x2dstart(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/hooks\/useAddressGeocoder(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/hooks\/useAreaBoundary(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/hooks\/useBrowserLocation(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/hooks\/useDefaultMarkerIcons(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/hooks\/useIpLocation(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/hooks\/usePoint(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/hooks\/usePointConvertor(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/hooks\/usePointGeocoder(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/hooks\/useTrackAnimation(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/hooks\/useViewAnimation(\.html)?$/,/^\/vue3\x2dbaidu\x2dmap\x2dgl\/zh\x2dCN\/index(\.html)?$/]})),e.registerRoute(/^https:\/\/raw\.githubusercontent\.com\/.*/i,new e.CacheFirst({cacheName:"animated-images-cache",plugins:[new e.ExpirationPlugin({maxEntries:15,maxAgeSeconds:31536e3}),new e.CacheableResponsePlugin({statuses:[0,200]})]}),"GET"),e.registerRoute(/^https:\/\/img\.shields\.io\/.*/i,new e.NetworkFirst({cacheName:"dynamic-images-cache",plugins:[new e.ExpirationPlugin({maxEntries:15,maxAgeSeconds:86400}),new e.CacheableResponsePlugin({statuses:[0,200]})]}),"GET"),e.registerRoute(/^https:\/\/cdn\.jsdelivr\.net\/.*/i,new e.NetworkFirst({cacheName:"jsdelivr-images-cache",plugins:[new e.ExpirationPlugin({maxEntries:10,maxAgeSeconds:604800}),new e.CacheableResponsePlugin({statuses:[0,200]})]}),"GET"),e.registerRoute(/^https:\/\/api\.github\.com\/.*/i,new e.NetworkFirst({cacheName:"github-api-cache",plugins:[new e.ExpirationPlugin({maxEntries:10,maxAgeSeconds:86400}),new e.CacheableResponsePlugin({statuses:[0,200]})]}),"GET"),e.registerRoute(/\.glb$/i,new e.CacheFirst({cacheName:"3d-model-cache",plugins:[new e.ExpirationPlugin({maxEntries:10,maxAgeSeconds:31536e3}),new e.CacheableResponsePlugin({statuses:[0,200]})]}),"GET"),e.registerRoute((({request:e,sameOrigin:s})=>s&&"navigate"===e.mode),new e.NetworkOnly({plugins:[{handlerDidError:async()=>Response.redirect("404",302),cacheWillUpdate:async()=>null}]}),"GET")})); diff --git a/zh-CN/components/autoComplete/index.html b/zh-CN/components/autoComplete/index.html index f9941feb..cc70ec68 100644 --- a/zh-CN/components/autoComplete/index.html +++ b/zh-CN/components/autoComplete/index.html @@ -5,17 +5,14 @@ BAutoComplete 自动填充 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

BAutoComplete 自动填充 ^2.1.3

地址检索关键词提示

ts
import { BAutoComplete } from 'vue3-baidu-map-gl'

TIP

目前这个组件所使用的百度地图 api 还不稳定 (在写这个组件时候深有体会)

组件示例

动态组件 Props

属性说明类型可选值默认值
location设定返回结果的所属范围。例如“北京市”string | Point | BMapGL.Map-BMapGL.Map
types返回数据类型string[]-

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
searchComplete在 input 框中输入字符后,发起列表检索,完成后的回调函数((e: Event) => void)
highlight键盘或者鼠标移动,某条记录高亮之后((e: Event) => void)
confirm鼠标点击或回车选中某条记录后触发((e: Event) => void)

Released under the MIT License.

- +
Skip to content

BAutoComplete 自动填充 ^2.1.3

地址检索关键词提示

ts
import { BAutoComplete } from 'vue3-baidu-map-gl'

TIP

目前这个组件所使用的百度地图 api 还不稳定 (在写这个组件时候深有体会)

组件示例

动态组件 Props

属性说明类型可选值默认值
location设定返回结果的所属范围。例如“北京市”string | Point | BMapGL.Map-BMapGL.Map
types返回数据类型string[]-

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
searchComplete在 input 框中输入字符后,发起列表检索,完成后的回调函数((e: Event) => void)
highlight键盘或者鼠标移动,某条记录高亮之后((e: Event) => void)
confirm鼠标点击或回车选中某条记录后触发((e: Event) => void)

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/components/control/citylist.html b/zh-CN/components/control/citylist.html index e94ac7df..71edf573 100644 --- a/zh-CN/components/control/citylist.html +++ b/zh-CN/components/control/citylist.html @@ -5,17 +5,14 @@ BCityList 城市选择控件 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

BCityList 城市选择控件

缩放控件,默认位于地图右下角

ts
import { BCityList } from 'vue3-baidu-map-gl'

组件示例

提示

组件示例样式被 vitepress 样式影响,实际使用不受影响,请参考官方示例为准 https://lbs.baidu.com/jsdemo.htm#cCityList

静态组件 Props

属性说明类型可选值默认值
anchor控件的停靠位置stringanchorBMAP_ANCHOR_BOTTOM_LEFT
offset控件的偏移值{x: number, y: number }-{ x: 18, y: 18 }
expand默认列表是否展开boolean-false

动态组件 Props

属性说明类型可选值默认值版本
visible是否显示boolean-true^2.2.0

anchor

说明
BMAP_ANCHOR_TOP_LEFT左上
BMAP_ANCHOR_TOP_RIGHT右上
BMAP_ANCHOR_BOTTOM_LEFT左下
BMAP_ANCHOR_BOTTOM_RIGHT右下

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-

Released under the MIT License.

- +
Skip to content

BCityList 城市选择控件

缩放控件,默认位于地图右下角

ts
import { BCityList } from 'vue3-baidu-map-gl'

组件示例

提示

组件示例样式被 vitepress 样式影响,实际使用不受影响,请参考官方示例为准 https://lbs.baidu.com/jsdemo.htm#cCityList

静态组件 Props

属性说明类型可选值默认值
anchor控件的停靠位置stringanchorBMAP_ANCHOR_BOTTOM_LEFT
offset控件的偏移值{x: number, y: number }-{ x: 18, y: 18 }
expand默认列表是否展开boolean-false

动态组件 Props

属性说明类型可选值默认值版本
visible是否显示boolean-true^2.2.0

anchor

说明
BMAP_ANCHOR_TOP_LEFT左上
BMAP_ANCHOR_TOP_RIGHT右上
BMAP_ANCHOR_BOTTOM_LEFT左下
BMAP_ANCHOR_BOTTOM_RIGHT右下

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/components/control/context-menu.html b/zh-CN/components/control/context-menu.html index 5ce74ab1..07d39fa4 100644 --- a/zh-CN/components/control/context-menu.html +++ b/zh-CN/components/control/context-menu.html @@ -5,17 +5,14 @@ BContextMenu 上下文菜单 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

BContextMenu 上下文菜单 ^0.0.29

在地图上添加自定义内容的右键菜单

ts
import { BContextMenu } from 'vue3-baidu-map-gl'

组件示例

静态组件 Props

属性说明类型默认值
width菜单宽度(单位 px)number100

动态组件 Props

属性说明类型可选值默认值版本
menuItems菜单项,-添加分割线(ContextMenuItem | -) []---
visible是否显示boolean-true^2.2.0

ContextMenuItem

属性说明类型可选值默认值
text菜单项文字string-required
callback菜单项点击触发的回调函数({point, pixel, map, BMapGL, target}) => void-required
disabled是否禁用该菜单项booleanfalse-

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
open右键菜单打开时触发,事件参数 point 和 pixel 分别表示菜单开启时的地理和像素坐标点((e: Event) => void)
close右键菜单关闭时触发,事件参数 point 和 pixel 分别表示菜单开启时的地理和像素坐标点((e: Event) => void)

Released under the MIT License.

- +
Skip to content

BContextMenu 上下文菜单 ^0.0.29

在地图上添加自定义内容的右键菜单

ts
import { BContextMenu } from 'vue3-baidu-map-gl'

组件示例

静态组件 Props

属性说明类型默认值
width菜单宽度(单位 px)number100

动态组件 Props

属性说明类型可选值默认值版本
menuItems菜单项,-添加分割线(ContextMenuItem | -) []---
visible是否显示boolean-true^2.2.0

ContextMenuItem

属性说明类型可选值默认值
text菜单项文字string-required
callback菜单项点击触发的回调函数({point, pixel, map, BMapGL, target}) => void-required
disabled是否禁用该菜单项booleanfalse-

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
open右键菜单打开时触发,事件参数 point 和 pixel 分别表示菜单开启时的地理和像素坐标点((e: Event) => void)
close右键菜单关闭时触发,事件参数 point 和 pixel 分别表示菜单开启时的地理和像素坐标点((e: Event) => void)

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/components/control/copyright.html b/zh-CN/components/control/copyright.html index 136fb53b..47b9ca11 100644 --- a/zh-CN/components/control/copyright.html +++ b/zh-CN/components/control/copyright.html @@ -5,17 +5,14 @@ BCopyright 版权控件 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

Released under the MIT License.

- +
Skip to content

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/components/control/custom.html b/zh-CN/components/control/custom.html index efeb257d..962d81fe 100644 --- a/zh-CN/components/control/custom.html +++ b/zh-CN/components/control/custom.html @@ -5,17 +5,14 @@ BControl 自定义控件 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

BControl 自定义控件

根据地图 BMap 组件提供的 Props,或者地图实例,自定义控件

ts
import { BControl } from 'vue3-baidu-map-gl'

组件示例

静态组件 Props

属性说明类型可选值默认值
anchor控件的停靠位置stringanchorBMAP_ANCHOR_BOTTOM_LEFT
offset控件的偏移值{x: number, y: number }-{ x: 83, y: 18 }

动态组件 Props

属性说明类型可选值默认值版本
visible是否显示boolean-true^2.2.0

anchor

说明
BMAP_ANCHOR_TOP_LEFT左上
BMAP_ANCHOR_TOP_RIGHT右上
BMAP_ANCHOR_BOTTOM_LEFT左下
BMAP_ANCHOR_BOTTOM_RIGHT右下

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-

Released under the MIT License.

- +
Skip to content

BControl 自定义控件

根据地图 BMap 组件提供的 Props,或者地图实例,自定义控件

ts
import { BControl } from 'vue3-baidu-map-gl'

组件示例

静态组件 Props

属性说明类型可选值默认值
anchor控件的停靠位置stringanchorBMAP_ANCHOR_BOTTOM_LEFT
offset控件的偏移值{x: number, y: number }-{ x: 83, y: 18 }

动态组件 Props

属性说明类型可选值默认值版本
visible是否显示boolean-true^2.2.0

anchor

说明
BMAP_ANCHOR_TOP_LEFT左上
BMAP_ANCHOR_TOP_RIGHT右上
BMAP_ANCHOR_BOTTOM_LEFT左下
BMAP_ANCHOR_BOTTOM_RIGHT右下

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/components/control/location.html b/zh-CN/components/control/location.html index 14c74752..3403bd89 100644 --- a/zh-CN/components/control/location.html +++ b/zh-CN/components/control/location.html @@ -5,17 +5,14 @@ BLocation 定位控件 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

BLocation 定位控件

定位控件,默认位于地图右下角

ts
import { BLocation } from 'vue3-baidu-map-gl'

组件示例

静态组件 Props

属性说明类型可选值默认值
anchor控件的停靠位置stringanchorBMAP_ANCHOR_BOTTOM_RIGHT
offset控件的偏移值{x: number, y: number }-{ x: 18, y: 18 }

动态组件 Props

属性说明类型可选值默认值版本
visible是否显示boolean-true^2.2.0

anchor

说明
BMAP_ANCHOR_TOP_LEFT左上
BMAP_ANCHOR_TOP_RIGHT右上
BMAP_ANCHOR_BOTTOM_LEFT左下
BMAP_ANCHOR_BOTTOM_RIGHT右下

组件事件

事件名说明类型版本
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }-
unload组件卸载时会调用此方法--
locationSuccess定位成功时会调用此方法{Event}^0.0.39
locationError定位失败时会调用此方法{Event}^0.0.39

Released under the MIT License.

- +
Skip to content

BLocation 定位控件

定位控件,默认位于地图右下角

ts
import { BLocation } from 'vue3-baidu-map-gl'

组件示例

静态组件 Props

属性说明类型可选值默认值
anchor控件的停靠位置stringanchorBMAP_ANCHOR_BOTTOM_RIGHT
offset控件的偏移值{x: number, y: number }-{ x: 18, y: 18 }

动态组件 Props

属性说明类型可选值默认值版本
visible是否显示boolean-true^2.2.0

anchor

说明
BMAP_ANCHOR_TOP_LEFT左上
BMAP_ANCHOR_TOP_RIGHT右上
BMAP_ANCHOR_BOTTOM_LEFT左下
BMAP_ANCHOR_BOTTOM_RIGHT右下

组件事件

事件名说明类型版本
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }-
unload组件卸载时会调用此方法--
locationSuccess定位成功时会调用此方法{Event}^0.0.39
locationError定位失败时会调用此方法{Event}^0.0.39

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/components/control/navigation3d.html b/zh-CN/components/control/navigation3d.html index 5cc6825a..34cace51 100644 --- a/zh-CN/components/control/navigation3d.html +++ b/zh-CN/components/control/navigation3d.html @@ -5,17 +5,14 @@ BNavigation3d 3D 视角导航控件 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

BNavigation3d 3D 视角导航控件

地图 3D 控件,可以控制地图的旋转、倾斜,默认位于地图右下角

ts
import { BNavigation3d } from 'vue3-baidu-map-gl'

组件示例

静态组件 Props

属性说明类型可选值默认值
anchor控件的停靠位置stringanchorBMAP_ANCHOR_BOTTOM_LEFT
offset控件的偏移值{x: number, y: number }-{ x: 83, y: 18 }

动态组件 Props

属性说明类型可选值默认值版本
visible是否显示boolean-true^2.2.0

anchor

说明
BMAP_ANCHOR_TOP_LEFT左上
BMAP_ANCHOR_TOP_RIGHT右上
BMAP_ANCHOR_BOTTOM_LEFT左下
BMAP_ANCHOR_BOTTOM_RIGHT右下

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-

Released under the MIT License.

- +
Skip to content

BNavigation3d 3D 视角导航控件

地图 3D 控件,可以控制地图的旋转、倾斜,默认位于地图右下角

ts
import { BNavigation3d } from 'vue3-baidu-map-gl'

组件示例

静态组件 Props

属性说明类型可选值默认值
anchor控件的停靠位置stringanchorBMAP_ANCHOR_BOTTOM_LEFT
offset控件的偏移值{x: number, y: number }-{ x: 83, y: 18 }

动态组件 Props

属性说明类型可选值默认值版本
visible是否显示boolean-true^2.2.0

anchor

说明
BMAP_ANCHOR_TOP_LEFT左上
BMAP_ANCHOR_TOP_RIGHT右上
BMAP_ANCHOR_BOTTOM_LEFT左下
BMAP_ANCHOR_BOTTOM_RIGHT右下

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/components/control/panorama-control.html b/zh-CN/components/control/panorama-control.html index 3e003708..e02ffa9f 100644 --- a/zh-CN/components/control/panorama-control.html +++ b/zh-CN/components/control/panorama-control.html @@ -5,17 +5,14 @@ BPanoramaControl 全景控件 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

BPanoramaControl 全景控件 ^0.0.31

全景地图服务,360° 全景地图刻画真实世界,将街道场景带入到地图产品中,用户可以拖拽地图从不同的角度浏览真实的街景效果

ts
import { BPanoramaControl } from 'vue3-baidu-map-gl'

TIP

全景地图服务属于百度地图高级服务,需要向 百度地图申请 才可以使用

组件示例

单独使用该组件不会显示全景地图覆盖情况,还需要搭配BPanoramaCoverageLayer组件使用。

静态组件 Props

属性说明类型可选值默认值
anchor控件的停靠位置stringanchorBMAP_ANCHOR_BOTTOM_RIGHT
offset控件的偏移值{x: number, y: number }-{ x: 18, y: 18 }

动态组件 Props

属性说明类型可选值默认值版本
visible是否显示boolean-true^2.2.0

anchor

说明
BMAP_ANCHOR_TOP_LEFT左上
BMAP_ANCHOR_TOP_RIGHT右上
BMAP_ANCHOR_BOTTOM_LEFT左下
BMAP_ANCHOR_BOTTOM_RIGHT右下

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-

Released under the MIT License.

- +
Skip to content

BPanoramaControl 全景控件 ^0.0.31

全景地图服务,360° 全景地图刻画真实世界,将街道场景带入到地图产品中,用户可以拖拽地图从不同的角度浏览真实的街景效果

ts
import { BPanoramaControl } from 'vue3-baidu-map-gl'

TIP

全景地图服务属于百度地图高级服务,需要向 百度地图申请 才可以使用

组件示例

单独使用该组件不会显示全景地图覆盖情况,还需要搭配BPanoramaCoverageLayer组件使用。

静态组件 Props

属性说明类型可选值默认值
anchor控件的停靠位置stringanchorBMAP_ANCHOR_BOTTOM_RIGHT
offset控件的偏移值{x: number, y: number }-{ x: 18, y: 18 }

动态组件 Props

属性说明类型可选值默认值版本
visible是否显示boolean-true^2.2.0

anchor

说明
BMAP_ANCHOR_TOP_LEFT左上
BMAP_ANCHOR_TOP_RIGHT右上
BMAP_ANCHOR_BOTTOM_LEFT左下
BMAP_ANCHOR_BOTTOM_RIGHT右下

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/components/control/scale.html b/zh-CN/components/control/scale.html index 8a9f23e6..f41ba3c3 100644 --- a/zh-CN/components/control/scale.html +++ b/zh-CN/components/control/scale.html @@ -5,17 +5,14 @@ BScale 比例尺控件 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

BScale 比例尺控件

比例尺控件,默认显示在地图左下角

ts
import { BScale } from 'vue3-baidu-map-gl'

组件示例

静态组件 Props

属性说明类型可选值默认值
anchor控件的停靠位置stringanchorBMAP_ANCHOR_BOTTOM_LEFT
offset控件的偏移值{x: number, y: number }-{ x: 83, y: 18 }

动态组件 Props

属性说明类型可选值默认值版本
unit比例尺单位制stringunitBMAP_UNIT_METRIC
visible是否显示boolean-true^2.2.0

anchor

说明
BMAP_ANCHOR_TOP_LEFT左上
BMAP_ANCHOR_TOP_RIGHT右上
BMAP_ANCHOR_BOTTOM_LEFT左下
BMAP_ANCHOR_BOTTOM_RIGHT右下

unit

说明
BMAP_UNIT_METRIC公尺
BMAP_UNIT_IMPERIAL英尺

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-

Released under the MIT License.

- +
Skip to content

BScale 比例尺控件

比例尺控件,默认显示在地图左下角

ts
import { BScale } from 'vue3-baidu-map-gl'

组件示例

静态组件 Props

属性说明类型可选值默认值
anchor控件的停靠位置stringanchorBMAP_ANCHOR_BOTTOM_LEFT
offset控件的偏移值{x: number, y: number }-{ x: 83, y: 18 }

动态组件 Props

属性说明类型可选值默认值版本
unit比例尺单位制stringunitBMAP_UNIT_METRIC
visible是否显示boolean-true^2.2.0

anchor

说明
BMAP_ANCHOR_TOP_LEFT左上
BMAP_ANCHOR_TOP_RIGHT右上
BMAP_ANCHOR_BOTTOM_LEFT左下
BMAP_ANCHOR_BOTTOM_RIGHT右下

unit

说明
BMAP_UNIT_METRIC公尺
BMAP_UNIT_IMPERIAL英尺

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/components/control/zoom.html b/zh-CN/components/control/zoom.html index 67a18b03..2073b74d 100644 --- a/zh-CN/components/control/zoom.html +++ b/zh-CN/components/control/zoom.html @@ -5,17 +5,14 @@ BZoom 缩放控件 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

BZoom 缩放控件

缩放控件,默认位于地图右下角

ts
import { BZoom } from 'vue3-baidu-map-gl'

组件示例

静态组件 Props

属性说明类型可选值默认值
anchor控件的停靠位置stringanchorBMAP_ANCHOR_BOTTOM_LEFT
offset控件的偏移值{x: number, y: number }- { x: 83, y: 18 }

动态组件 Props

属性说明类型可选值默认值版本
visible是否显示boolean-true^2.2.0

anchor

说明
BMAP_ANCHOR_TOP_LEFT左上
BMAP_ANCHOR_TOP_RIGHT右上
BMAP_ANCHOR_BOTTOM_LEFT左下
BMAP_ANCHOR_BOTTOM_RIGHT右下

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-

Released under the MIT License.

- +
Skip to content

BZoom 缩放控件

缩放控件,默认位于地图右下角

ts
import { BZoom } from 'vue3-baidu-map-gl'

组件示例

静态组件 Props

属性说明类型可选值默认值
anchor控件的停靠位置stringanchorBMAP_ANCHOR_BOTTOM_LEFT
offset控件的偏移值{x: number, y: number }- { x: 83, y: 18 }

动态组件 Props

属性说明类型可选值默认值版本
visible是否显示boolean-true^2.2.0

anchor

说明
BMAP_ANCHOR_TOP_LEFT左上
BMAP_ANCHOR_TOP_RIGHT右上
BMAP_ANCHOR_BOTTOM_LEFT左下
BMAP_ANCHOR_BOTTOM_RIGHT右下

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/components/layer/district-layer.html b/zh-CN/components/layer/district-layer.html index 1a32d5b4..ea252dc7 100644 --- a/zh-CN/components/layer/district-layer.html +++ b/zh-CN/components/layer/district-layer.html @@ -5,17 +5,14 @@ BDistrictLayer 行政区图层 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

BDistrictLayer 行政区图层 ^1.1.2

在地图上显示行政区划分

ts
import { BDistrictLayer } from 'vue3-baidu-map-gl'

组件示例

静态组件 Props

属性说明类型可选值默认值版本
name行政区名字string-required
kind行政区类型DistrictType-DistrictType['AREA']
fillColor填充颜色string-#fdfd27
fillOpacity填充透明度number-1
strokeColor描边线条颜色string-#231cf8
strokeWeight描边线条粗细number-1^2.4.0
strokeOpacity描边线透明度number-1^2.4.0
viewport自动聚焦地图中心boolean-false

动态组件 Props

属性说明类型可选值默认值版本
visible是否显示boolean-true^2.2.0

DistrictType

说明
PROVINCE省级
CITY市级
AREA县/区级

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
mouseover鼠标移入行政区域时触发此事件{type, target}
mouseout鼠标移出行政区域时触发此事件{type, target}

Released under the MIT License.

- +
Skip to content

BDistrictLayer 行政区图层 ^1.1.2

在地图上显示行政区划分

ts
import { BDistrictLayer } from 'vue3-baidu-map-gl'

组件示例

静态组件 Props

属性说明类型可选值默认值版本
name行政区名字string-required
kind行政区类型DistrictType-DistrictType['AREA']
fillColor填充颜色string-#fdfd27
fillOpacity填充透明度number-1
strokeColor描边线条颜色string-#231cf8
strokeWeight描边线条粗细number-1^2.4.0
strokeOpacity描边线透明度number-1^2.4.0
viewport自动聚焦地图中心boolean-false

动态组件 Props

属性说明类型可选值默认值版本
visible是否显示boolean-true^2.2.0

DistrictType

说明
PROVINCE省级
CITY市级
AREA县/区级

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
mouseover鼠标移入行政区域时触发此事件{type, target}
mouseout鼠标移出行政区域时触发此事件{type, target}

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/components/layer/panorama-coverage.html b/zh-CN/components/layer/panorama-coverage.html index 047f5474..73c41bad 100644 --- a/zh-CN/components/layer/panorama-coverage.html +++ b/zh-CN/components/layer/panorama-coverage.html @@ -5,17 +5,14 @@ BPanoramaCoverageLayer 全景图层 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

BPanoramaCoverageLayer 全景图层 ^0.0.31

全景地图服务,360° 全景地图刻画真实世界,将街道场景带入到地图产品中,用户可以拖拽地图从不同的角度浏览真实的街景效果

ts
import { BPanoramaCoverageLayer } from 'vue3-baidu-map-gl'

提示

全景地图服务属于百度地图高级服务,需要向 百度地图申请 才可以使用

组件示例

单独使用该组件无法查看全景地图,还需要搭配BPanoramaControl组件使用。

静态组件 Props

属性说明类型可选值默认值
anchor控件的停靠位置stringanchorBMAP_ANCHOR_TOP_RIGHT
offset控件的偏移值{x: number, y: number }-{ x: 10, y: 10 }

anchor

说明
BMAP_ANCHOR_TOP_LEFT左上
BMAP_ANCHOR_TOP_RIGHT右上
BMAP_ANCHOR_BOTTOM_LEFT左下
BMAP_ANCHOR_BOTTOM_RIGHT右下

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-

Released under the MIT License.

- +
Skip to content

BPanoramaCoverageLayer 全景图层 ^0.0.31

全景地图服务,360° 全景地图刻画真实世界,将街道场景带入到地图产品中,用户可以拖拽地图从不同的角度浏览真实的街景效果

ts
import { BPanoramaCoverageLayer } from 'vue3-baidu-map-gl'

提示

全景地图服务属于百度地图高级服务,需要向 百度地图申请 才可以使用

组件示例

单独使用该组件无法查看全景地图,还需要搭配BPanoramaControl组件使用。

静态组件 Props

属性说明类型可选值默认值
anchor控件的停靠位置stringanchorBMAP_ANCHOR_TOP_RIGHT
offset控件的偏移值{x: number, y: number }-{ x: 10, y: 10 }

anchor

说明
BMAP_ANCHOR_TOP_LEFT左上
BMAP_ANCHOR_TOP_RIGHT右上
BMAP_ANCHOR_BOTTOM_LEFT左下
BMAP_ANCHOR_BOTTOM_RIGHT右下

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/components/map.html b/zh-CN/components/map.html index a61a72e0..0a16b69f 100644 --- a/zh-CN/components/map.html +++ b/zh-CN/components/map.html @@ -5,17 +5,14 @@ Map 地图 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,7 +25,7 @@ -
Skip to content

Map 地图

地图核心对象,地图控件、覆盖物、图层等需作为其子组件,以获得 map 的实例化对象

ts
import { BMap } from 'vue3-baidu-map-gl'

渲染地图

多实例

个性化地图

通过指定 Map 组件的 mapStyleId或者mapStyleJson来展示个性化地图,如果同时指定,mapStyleId会优先生效。

提示

  1. 如果个性化地图没有生效,请先检查mapStyleIdmapStyleJson是否正确。如果是通过mapStyleId实现,还需要检查是否与 ak申请的账号一致
  2. 以下示例使用的 mapStyleId 均与 ak 和 域名绑定,无法直接复制使用。可根据示例主题名字到百度地图个性化编辑器创建后使用

获取资源

mapStyleId 和 mapStyleJson 获取以及相关注意事项,请访问 百度地图个性化地图相关文档 知悉

出行主题示例

赛博朋克主题示例

自定义地图加载中

默认情况下,地图加载中效果是map loading...文字居中。如果不能满足你的需求,你可以通过提供loading具名插槽来自定义地图加载中显示效果。

显示代码
html
<template>
+    
Skip to content

Map 地图

地图核心对象,地图控件、覆盖物、图层等需作为其子组件,以获得 map 的实例化对象

ts
import { BMap } from 'vue3-baidu-map-gl'

渲染地图

多实例

个性化地图

通过指定 Map 组件的 mapStyleId或者mapStyleJson来展示个性化地图,如果同时指定,mapStyleId会优先生效。

提示

  1. 如果个性化地图没有生效,请先检查mapStyleIdmapStyleJson是否正确。如果是通过mapStyleId实现,还需要检查是否与 ak申请的账号一致
  2. 以下示例使用的 mapStyleId 均与 ak 和 域名绑定,无法直接复制使用。可根据示例主题名字到百度地图个性化编辑器创建后使用

获取资源

mapStyleId 和 mapStyleJson 获取以及相关注意事项,请访问 百度地图个性化地图相关文档 知悉

出行主题示例

赛博朋克主题示例

自定义地图加载中

默认情况下,地图加载中效果是map loading...文字居中。如果不能满足你的需求,你可以通过提供loading具名插槽来自定义地图加载中显示效果。

显示代码
html
<template>
   <BMap>
     <template #loading>
       <div class="spinner">
@@ -89,8 +86,8 @@
       -webkit-transform: scale(1);
     }
   }
-</style>

静态组件 props

属性说明类型可选值默认值版本
ak百度地图 akstring---
apiUrl自建地图 api 资源地址(一般用于离线地图)string--^2.3.0
minZoom地图允许展示的最小级别number0-210-
maxZoom地图允许展示的最大级别number0-2121-
backgroundColor地图背景颜色, rgba 数组 number[]-[245, 245, 245, 100]^2.1.0
showControls是否显示室内图boolean-false-
restrictCenter是否限制中心boolean-true^1.1.3
plugins需要注册的插件['TrackAnimation', 'Mapvgl', 'Mapv', 'MapvThree']---
pluginsSourceLink自定义插件资源地址Record<'TrackAnimation' | 'Mapvgl' | 'Mapv' | 'MapvThree', string>---

动态组件 Props

属性说明类型默认值版本
width地图显示宽度string / number100%^1.0.1
height地图显示高度string / number550px^1.0.1
center地图默认中心点,可使用城市名,如:北京市,也可以使用对象如 {lng: 121.424333, lat: 31.228604} 表示经纬度。string / {lng: number, lat: number}北京市-
heading地图旋转角度number0-
tilt地图倾斜角度number0 -
mapType地图类型 mapTypestringBMAP_NORMAL_MAP-
zoom地图缩放级别number14-
displayOptions自定义地图属性 详见---
mapStyleId个性化地图样式 ID 详见string--
mapStyleJson个性化地图样式 Json 详见{featureType: string...}[]--
enableTraffic是否启用交通路况图层booleanfalse-
enableDragging启用地图拖拽booleantrue-
enableInertialDragging启用地图惯性拖拽booleantrue-
enableScrollWheelZoom允许地图可被鼠标滚轮缩放booleanfalse-
enableContinuousZoom开启双击平滑缩放效果booleantrue-
enableResizeOnCenter开启图区 resize 中心点不变booleantrue-
enableDoubleClickZoom启用地图双击缩放,左键双击放大、右键双击缩小booleanfalse-
enableKeyboard启用键盘操作,键盘的上、下、左、右键可连续移动地图。同时按下其中两个键可使地图进行对角移动。PgUp、PgDn、Home 和 End 键会使地图平移其 1/2 的大小。 +、-键会使地图放大或缩小一级booleantrue-
enablePinchToZoom启用双指缩放地图booleantrue-
enableAutoResize启用自动适应容器尺寸变化booleantrue-
enableIconClick是否启用底图可点击booleantrue^2.1.0
loadingBgColor加载背景图颜色string#f1f1f1^2.1.0
loadingTextColor加载文字图颜色string#999^2.1.0

地图类型

描述
BMAP_NORMAL_MAP标准地图
BMAP_EARTH_MAP地球模式
BMAP_SATELLITE_MAP普通卫星地图

注意

地球模式(BMAP_EARTH_MAP)下能支持的地图交互操作有限,如您需要卫星地图支持和标准地图(BMAP_NORMAL_MAP)一致的交互体验,请使用普通卫星图模式(BMAP_SATELLITE_MAP)

displayOptions

属性说明类型默认值
poi是否显示地图上的地点标识booleantrue
indoor是否显示室内图booleantrue
poiText是否显示地图上的地点标识文字booleantrue
poiIcon是否显示地图上的地点标识图标booleantrue
overlay是否显示覆盖物booleantrue
layer是否显示叠加图层,地球模式暂不支持booleantrue
building是否显示 3D 建筑物(仅支持 WebGL 方式渲染的地图)booleantrue
street是否显示路网(只对卫星图和地球模式有效)booleantrue
skyColors配置天空的颜色,数组中首个元素表示地面颜色,第二个元素表示天空颜色。从而形成渐变,支持只传入一个元素[string, string]-

组件方法

方法说明类型
getMapInstance父组件获取 map 实例方法() => void
getBaseMapOptions父组件/外部获取 map 组件 options() => void
resetCenter重置地图中心() => void
setDragging设置地图是否可拖动(nableDragging: boolean) => void

组件事件

事件名说明类型
initd组件初始化后会触发此事件,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会触发此事件-
pluginReady插件加载完毕会触发此事件{map}
click左键单击地图时触发此事件。 当双击时,产生的事件序列为: click click dblclick{type, target, latlng, pixel, overlay}
dblclick鼠标双击地图时会触发此事件{type, target, pixel, point}
rightclick右键单击地图时触发此事件。 当双击时,产生的事件序列为: rightclick rightclick rightdblclick{type, target, latlng, pixel, overlay}
rightdblclick右键双击地图时触发此事件{type, target, latlng, pixel, overlay}
maptypechange地图类型发生变化时触发此事件{type, target}
mousemove鼠标在地图区域移动过程中触发此事件{type, target, latlng, pixel, overlay}
mouseover鼠标移入地图区域时触发此事件{type, target}
mouseout鼠标移出地图区域时触发此事件{type, target}
movestart地图移动开始时触发此事件{type, target}
moving地图移动过程中触发此事件{type, target}
moveend地图移动结束时触发此事件{type, target}
zoomstart地图更改缩放级别开始时触发触发此事件{type, target}
zoomend地图更改缩放级别结束时触发触发此事件{type, target}
addoverlay当组件被挂载到地图中时会触发此事件{type, target}
removeoverlay当组件被移除时会触发此事件{type, target}
addcontrol当组件被挂载到地图中时会触发此事件{type, target}
removecontrol当组件被移除时会触发此事件{type, target}
clearoverlays当使用方法一次性移除全部覆盖物时会触发此事件{type, target}
dragstart开始拖拽地图时触发{type, target, pixel, point}
dragging拖拽地图过程中触发{type, target, pixel, point}
dragend停止拖拽地图时触发{type, target, pixel, point}
addtilelayer添加一个自定义地图图层时触发此事件{type, target}
removetilelayer移除一个自定义地图图层时触发此事件{type, target}
load调用方法时会触发此事件。这表示位置、缩放层级已经确定,但可能还在载入地图图块{type, target}
resize地图可视区域大小发生变化时会触发此事件{type, target, pixel, point}
hotspotclick点击热区时触发此事件{type, target}
hotspotover鼠标移至热区时触发此事件{type, target}
hotspotout鼠标移出热区时触发此事件{type, target}
tilesloaded当地图所有图块完成加载时触发此事件{type, target}
touchstart触摸开始时触发此事件,仅适用移动设备{type, target}
touchmove触摸移动时触发此事件,仅适用移动设备{type, target}
touchend触摸结束时触发此事件,仅适用移动设备{type, target}
longpress长按事件,仅适用移动设备{type, target}

Released under the MIT License.

- +</style>

静态组件 props

属性说明类型可选值默认值版本
ak百度地图 akstring---
apiUrl自建地图 api 资源地址(一般用于离线地图)string--^2.3.0
minZoom地图允许展示的最小级别number0-210-
maxZoom地图允许展示的最大级别number0-2121-
backgroundColor地图背景颜色, rgba 数组 number[]-[245, 245, 245, 100]^2.1.0
showControls是否显示室内图boolean-false-
restrictCenter是否限制中心boolean-true^1.1.3
plugins需要注册的插件['TrackAnimation', 'Mapvgl', 'Mapv', 'MapvThree']---
pluginsSourceLink自定义插件资源地址Record<'TrackAnimation' | 'Mapvgl' | 'Mapv' | 'MapvThree', string>---

动态组件 Props

属性说明类型默认值版本
width地图显示宽度string / number100%^1.0.1
height地图显示高度string / number550px^1.0.1
center地图默认中心点,可使用城市名,如:北京市,也可以使用对象如 {lng: 121.424333, lat: 31.228604} 表示经纬度。string / {lng: number, lat: number}北京市-
heading地图旋转角度number0-
tilt地图倾斜角度number0 -
mapType地图类型 mapTypestringBMAP_NORMAL_MAP-
zoom地图缩放级别number14-
displayOptions自定义地图属性 详见---
mapStyleId个性化地图样式 ID 详见string--
mapStyleJson个性化地图样式 Json 详见{featureType: string...}[]--
enableTraffic是否启用交通路况图层booleanfalse-
enableDragging启用地图拖拽booleantrue-
enableInertialDragging启用地图惯性拖拽booleantrue-
enableScrollWheelZoom允许地图可被鼠标滚轮缩放booleanfalse-
enableContinuousZoom开启双击平滑缩放效果booleantrue-
enableResizeOnCenter开启图区 resize 中心点不变booleantrue-
enableDoubleClickZoom启用地图双击缩放,左键双击放大、右键双击缩小booleanfalse-
enableKeyboard启用键盘操作,键盘的上、下、左、右键可连续移动地图。同时按下其中两个键可使地图进行对角移动。PgUp、PgDn、Home 和 End 键会使地图平移其 1/2 的大小。 +、-键会使地图放大或缩小一级booleantrue-
enablePinchToZoom启用双指缩放地图booleantrue-
enableAutoResize启用自动适应容器尺寸变化booleantrue-
enableIconClick是否启用底图可点击booleantrue^2.1.0
loadingBgColor加载背景图颜色string#f1f1f1^2.1.0
loadingTextColor加载文字图颜色string#999^2.1.0

地图类型

描述
BMAP_NORMAL_MAP标准地图
BMAP_EARTH_MAP地球模式
BMAP_SATELLITE_MAP普通卫星地图

注意

地球模式(BMAP_EARTH_MAP)下能支持的地图交互操作有限,如您需要卫星地图支持和标准地图(BMAP_NORMAL_MAP)一致的交互体验,请使用普通卫星图模式(BMAP_SATELLITE_MAP)

displayOptions

属性说明类型默认值
poi是否显示地图上的地点标识booleantrue
indoor是否显示室内图booleantrue
poiText是否显示地图上的地点标识文字booleantrue
poiIcon是否显示地图上的地点标识图标booleantrue
overlay是否显示覆盖物booleantrue
layer是否显示叠加图层,地球模式暂不支持booleantrue
building是否显示 3D 建筑物(仅支持 WebGL 方式渲染的地图)booleantrue
street是否显示路网(只对卫星图和地球模式有效)booleantrue
skyColors配置天空的颜色,数组中首个元素表示地面颜色,第二个元素表示天空颜色。从而形成渐变,支持只传入一个元素[string, string]-

组件方法

方法说明类型
getMapInstance父组件获取 map 实例方法() => void
getBaseMapOptions父组件/外部获取 map 组件 options() => void
resetCenter重置地图中心() => void
setDragging设置地图是否可拖动(nableDragging: boolean) => void

组件事件

事件名说明类型
initd组件初始化后会触发此事件,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会触发此事件-
pluginReady插件加载完毕会触发此事件{map, pluginRecord}
click左键单击地图时触发此事件。 当双击时,产生的事件序列为: click click dblclick{type, target, latlng, pixel, overlay}
dblclick鼠标双击地图时会触发此事件{type, target, pixel, point}
rightclick右键单击地图时触发此事件。 当双击时,产生的事件序列为: rightclick rightclick rightdblclick{type, target, latlng, pixel, overlay}
rightdblclick右键双击地图时触发此事件{type, target, latlng, pixel, overlay}
maptypechange地图类型发生变化时触发此事件{type, target}
mousemove鼠标在地图区域移动过程中触发此事件{type, target, latlng, pixel, overlay}
mouseover鼠标移入地图区域时触发此事件{type, target}
mouseout鼠标移出地图区域时触发此事件{type, target}
movestart地图移动开始时触发此事件{type, target}
moving地图移动过程中触发此事件{type, target}
moveend地图移动结束时触发此事件{type, target}
zoomstart地图更改缩放级别开始时触发触发此事件{type, target}
zoomend地图更改缩放级别结束时触发触发此事件{type, target}
addoverlay当组件被挂载到地图中时会触发此事件{type, target}
removeoverlay当组件被移除时会触发此事件{type, target}
addcontrol当组件被挂载到地图中时会触发此事件{type, target}
removecontrol当组件被移除时会触发此事件{type, target}
clearoverlays当使用方法一次性移除全部覆盖物时会触发此事件{type, target}
dragstart开始拖拽地图时触发{type, target, pixel, point}
dragging拖拽地图过程中触发{type, target, pixel, point}
dragend停止拖拽地图时触发{type, target, pixel, point}
addtilelayer添加一个自定义地图图层时触发此事件{type, target}
removetilelayer移除一个自定义地图图层时触发此事件{type, target}
load调用方法时会触发此事件。这表示位置、缩放层级已经确定,但可能还在载入地图图块{type, target}
resize地图可视区域大小发生变化时会触发此事件{type, target, pixel, point}
hotspotclick点击热区时触发此事件{type, target}
hotspotover鼠标移至热区时触发此事件{type, target}
hotspotout鼠标移出热区时触发此事件{type, target}
tilesloaded当地图所有图块完成加载时触发此事件{type, target}
touchstart触摸开始时触发此事件,仅适用移动设备{type, target}
touchmove触摸移动时触发此事件,仅适用移动设备{type, target}
touchend触摸结束时触发此事件,仅适用移动设备{type, target}
longpress长按事件,仅适用移动设备{type, target}

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/components/overlay/bezierCurve.html b/zh-CN/components/overlay/bezierCurve.html index bb72cb86..7a3db770 100644 --- a/zh-CN/components/overlay/bezierCurve.html +++ b/zh-CN/components/overlay/bezierCurve.html @@ -5,17 +5,14 @@ BBezierCurve 折线 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

BBezierCurve 折线

在地图上绘制二阶贝塞尔曲线

ts
import { BBezierCurve } from 'vue3-baidu-map-gl'

提示

不了解贝塞尔曲线的小伙伴可以先学习一下: https://zh-CN.javascript.info/bezier-curve

组件示例

动态组件 Props

属性说明类型可选值默认值版本
path贝塞尔曲线的坐标数组{ lng: number, lat: number}[]-required-
controlPoints贝塞尔曲线控制点的坐标数组{ lng: number, lat: number}[][]-required-
strokeColor描边的颜色,同 CSS 颜色string-#000000-
strokeWeight描边的宽度,单位为像素string-2-
strokeOpacity描边的透明度,范围 0-1 number- 1-
strokeStyle描边的样式,为实线、虚线、或者点状线stringsolid / dashed / dotted--
enableMassClear是否在调用 map.clearOverlays 清除此覆盖物boolean-true -
visible是否显示boolean-true^2.2.0

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。 当双击时,产生的事件序列为: click click dblclick((e: Event) => void)
dblclick鼠标左键双击事件的回调函数((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数((e: Event) => void)
remove该覆盖物被移除的回调函数((e: Event) => void)
lineupdate覆盖物被编辑后的回调函数((e: Event) => void)

Released under the MIT License.

- +
Skip to content

BBezierCurve 折线

在地图上绘制二阶贝塞尔曲线

ts
import { BBezierCurve } from 'vue3-baidu-map-gl'

提示

不了解贝塞尔曲线的小伙伴可以先学习一下: https://zh-CN.javascript.info/bezier-curve

组件示例

动态组件 Props

属性说明类型可选值默认值版本
path贝塞尔曲线的坐标数组{ lng: number, lat: number}[]-required-
controlPoints贝塞尔曲线控制点的坐标数组{ lng: number, lat: number}[][]-required-
strokeColor描边的颜色,同 CSS 颜色string-#000000-
strokeWeight描边的宽度,单位为像素string-2-
strokeOpacity描边的透明度,范围 0-1 number- 1-
strokeStyle描边的样式,为实线、虚线、或者点状线stringsolid / dashed / dotted--
enableMassClear是否在调用 map.clearOverlays 清除此覆盖物boolean-true -
visible是否显示boolean-true^2.2.0

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。 当双击时,产生的事件序列为: click click dblclick((e: Event) => void)
dblclick鼠标左键双击事件的回调函数((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数((e: Event) => void)
remove该覆盖物被移除的回调函数((e: Event) => void)
lineupdate覆盖物被编辑后的回调函数((e: Event) => void)

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/components/overlay/circle.html b/zh-CN/components/overlay/circle.html index ff0a95b0..1e950542 100644 --- a/zh-CN/components/overlay/circle.html +++ b/zh-CN/components/overlay/circle.html @@ -5,17 +5,14 @@ BCircle 圆形 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

BCircle 圆形

在地图上绘制简单的圆形

ts
import { BCircle } from 'vue3-baidu-map-gl'

组件示例

静态组件 Props

属性说明类型默认值
enableClicking是否响应点击事件booleantrue
geodesic是否开启大地线模式,true 时,两点连线将以大地线的形式booleanfalse
clip是否进行跨经度 180 度裁剪,绘制跨精度 180 时为了优化效果booleantrue

动态组件 Props

属性说明类型可选值默认值版本
center圆形中心点经纬度{ lng: number, lat: number}-required-
radius圆形的半径,单位为米number-required-
strokeColor描边的颜色,同 CSS 颜色string-#000-
strokeOpacity描边的透明度,范围 0-1number0-1 1-
fillColor面填充颜色,同 CSS 颜色string-#fff-
fillOpacity面填充的透明度,范围 0-1number0-1 0.3 -
strokeWeight描边的宽度,单位为像素number-2 -
strokeStyle描边的样式,为实线、虚线、或者点状线stringsolid / dashed / dottedsolid -
enableMassClear是否在调用 map.clearOverlays 清除此覆盖物boolean-true -
enableEditing是否启用线编辑boolean-false -
visible是否显示boolean-true^2.2.0

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。 当双击时,产生的事件序列为:click -> click -> dblclick((e: Event) => void)
dblclick鼠标左键双击事件的回调函数((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数((e: Event) => void)
remove该覆盖物被移除的回调函数((e: Event) => void)
lineupdate覆盖物被编辑后的回调函数((e: Event) => void)

Released under the MIT License.

- +
Skip to content

BCircle 圆形

在地图上绘制简单的圆形

ts
import { BCircle } from 'vue3-baidu-map-gl'

组件示例

静态组件 Props

属性说明类型默认值
enableClicking是否响应点击事件booleantrue
geodesic是否开启大地线模式,true 时,两点连线将以大地线的形式booleanfalse
clip是否进行跨经度 180 度裁剪,绘制跨精度 180 时为了优化效果booleantrue

动态组件 Props

属性说明类型可选值默认值版本
center圆形中心点经纬度{ lng: number, lat: number}-required-
radius圆形的半径,单位为米number-required-
strokeColor描边的颜色,同 CSS 颜色string-#000-
strokeOpacity描边的透明度,范围 0-1number0-1 1-
fillColor面填充颜色,同 CSS 颜色string-#fff-
fillOpacity面填充的透明度,范围 0-1number0-1 0.3 -
strokeWeight描边的宽度,单位为像素number-2 -
strokeStyle描边的样式,为实线、虚线、或者点状线stringsolid / dashed / dottedsolid -
enableMassClear是否在调用 map.clearOverlays 清除此覆盖物boolean-true -
enableEditing是否启用线编辑boolean-false -
visible是否显示boolean-true^2.2.0

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。 当双击时,产生的事件序列为:click -> click -> dblclick((e: Event) => void)
dblclick鼠标左键双击事件的回调函数((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数((e: Event) => void)
remove该覆盖物被移除的回调函数((e: Event) => void)
lineupdate覆盖物被编辑后的回调函数((e: Event) => void)

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/components/overlay/ground-overlay.html b/zh-CN/components/overlay/ground-overlay.html index 44dfda69..1a03b5b9 100644 --- a/zh-CN/components/overlay/ground-overlay.html +++ b/zh-CN/components/overlay/ground-overlay.html @@ -5,17 +5,14 @@ BGroundOverlay 地面叠加层 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,12 +25,12 @@ -
Skip to content

BGroundOverlay 地面叠加层 ^0.0.32

在地图底面上叠加覆盖物,覆盖物可以是图片、自定义 Canvas、视频。

ts
import { BGroundOverlay } from 'vue3-baidu-map-gl'

组件示例

动态组件 Props

属性说明类型默认值版本
type地面叠加物类型video | canvas | imagerequired-
url叠加物 image url、video url 或者自定义的 canvas 对象GroundOverlayUrlrequired-
startPoint显示区域开始点,见图示{ lng: number, lat: number}required-
endPoint显示区域结束点,见图示{ lng: number, lat: number}required-
autoCenter是否自动根据地面叠加物显示区域居中地图boolean true-
opacity透明度,范围 0-1number-
visible是否显示booleantrue^2.2.0

bounds 图示


GroundOverlayUrl

ts
export type GroundOverlayUrl =
+    
Skip to content

BGroundOverlay 地面叠加层 ^0.0.32

在地图底面上叠加覆盖物,覆盖物可以是图片、自定义 Canvas、视频。

ts
import { BGroundOverlay } from 'vue3-baidu-map-gl'

组件示例

动态组件 Props

属性说明类型默认值版本
type地面叠加物类型video | canvas | imagerequired-
url叠加物 image url、video url 或者自定义的 canvas 对象GroundOverlayUrlrequired-
startPoint显示区域开始点,见图示{ lng: number, lat: number}required-
endPoint显示区域结束点,见图示{ lng: number, lat: number}required-
autoCenter是否自动根据地面叠加物显示区域居中地图boolean true-
opacity透明度,范围 0-1number-
visible是否显示booleantrue^2.2.0

bounds 图示


GroundOverlayUrl

ts
export type GroundOverlayUrl =
   | string
   | HTMLCanvasElement
   | Ref<HTMLCanvasElement | string>
-  | (() => HTMLCanvasElement | Ref<HTMLCanvasElement | string>)

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。 当双击时,产生的事件序列为: click -> click -> dblclick ((e: Event) => void)
dblclick鼠标左键双击事件的回调函数 ((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数 ((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数 ((e: Event) => void)
mousemove鼠标指针在该覆盖物移动的事件的回调函数 ((e: Event) => void)

Released under the MIT License.

- + | (() => HTMLCanvasElement | Ref<HTMLCanvasElement | string>)

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。 当双击时,产生的事件序列为: click -> click -> dblclick ((e: Event) => void)
dblclick鼠标左键双击事件的回调函数 ((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数 ((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数 ((e: Event) => void)
mousemove鼠标指针在该覆盖物移动的事件的回调函数 ((e: Event) => void)

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/components/overlay/infowindow.html b/zh-CN/components/overlay/infowindow.html index ccfd1039..4aaf706f 100644 --- a/zh-CN/components/overlay/infowindow.html +++ b/zh-CN/components/overlay/infowindow.html @@ -5,17 +5,14 @@ BInfoWindow 信息窗口 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

BInfoWindow 信息窗口

使用 slot 模式渲染子节点向地图添加信息窗口,以及与地图相关的一些交互。

ts
import { BInfoWindow } from 'vue3-baidu-map-gl'

提示

地图上只能同时显示一个infoWindow,所以当地图上有多个infoWindow组件同时绑定v-model="true",只有最后一个 infoWindow组件会在地图上显示。

组件示例


静态组件 Props

属性说明类型默认值
offset信息窗位置偏移值。默认情况下在地图上打开的信息窗底端的尖角将指向其地理坐标,在标注上打开的信息窗底端尖角的位置取决于标注所用图标的 infoWindowOffset 属性值,您可以为信息窗添加偏移量来改变默认位置{x: number, y: number }{x: 0, y: 0 }

动态组件 Props

属性说明类型可选值默认值版本
show是否开启信息窗体, 支持 v-model:showboolean -false^2.2.2
position信息窗体所在坐标{ lng: number, lat: number}[]-required-
title信息窗标题文字string---
width信息窗宽度,单位像素。取值范围:0, 220 - 730。如果您指定宽度为 0,则信息窗口的宽度将按照其内容自动调整number220-7300-
height信息窗高度,单位像素。取值范围:0, 60 - 650。如果您指定高度为 0,则信息窗口的高度将按照其内容自动调整number60-6500-
enableAutoPan是否开启信息窗口打开时地图自动移动boolean- true-
enableCloseOnClick是否开启点击地图关闭信息窗口boolean- true-

组件事件

事件名说明属性
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
close信息窗口被关闭时触发此事件event{type, target, point}
open信息窗口被打开时触发此事件event{type, target, point}
clickclose点击信息窗口的关闭按钮时触发此事件event{type, target}

Released under the MIT License.

- +
Skip to content

BInfoWindow 信息窗口

使用 slot 模式渲染子节点向地图添加信息窗口,以及与地图相关的一些交互。

ts
import { BInfoWindow } from 'vue3-baidu-map-gl'

提示

地图上只能同时显示一个infoWindow,所以当地图上有多个infoWindow组件同时绑定v-model="true",只有最后一个 infoWindow组件会在地图上显示。

组件示例


静态组件 Props

属性说明类型默认值
offset信息窗位置偏移值。默认情况下在地图上打开的信息窗底端的尖角将指向其地理坐标,在标注上打开的信息窗底端尖角的位置取决于标注所用图标的 infoWindowOffset 属性值,您可以为信息窗添加偏移量来改变默认位置{x: number, y: number }{x: 0, y: 0 }

动态组件 Props

属性说明类型可选值默认值版本
show是否开启信息窗体, 支持 v-model:showboolean -false^2.2.2
position信息窗体所在坐标{ lng: number, lat: number}[]-required-
title信息窗标题文字string---
width信息窗宽度,单位像素。取值范围:0, 220 - 730。如果您指定宽度为 0,则信息窗口的宽度将按照其内容自动调整number220-7300-
height信息窗高度,单位像素。取值范围:0, 60 - 650。如果您指定高度为 0,则信息窗口的高度将按照其内容自动调整number60-6500-
enableAutoPan是否开启信息窗口打开时地图自动移动boolean- true-
enableCloseOnClick是否开启点击地图关闭信息窗口boolean- true-

组件事件

事件名说明属性
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
close信息窗口被关闭时触发此事件event{type, target, point}
open信息窗口被打开时触发此事件event{type, target, point}
clickclose点击信息窗口的关闭按钮时触发此事件event{type, target}

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/components/overlay/label.html b/zh-CN/components/overlay/label.html index b4bba7c2..83f8f330 100644 --- a/zh-CN/components/overlay/label.html +++ b/zh-CN/components/overlay/label.html @@ -5,17 +5,14 @@ BLabel 文本标注 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

BLabel 文本标注

在地图上显示文本标注

ts
import { BLabel } from 'vue3-baidu-map-gl'

组件示例

动态组件 Props

属性说明类型默认值版本
content设置文本标注的内容string required-
offset文本标注的像素偏移{x: number, y: number } --
enableMassClear是否在调用 map.clearOverlays 清除此覆盖物boolean true -
style设置文本标注的样式CSSStyleDeclaration--
position文本标注的坐标{ lng: number, lat: number} required-
zIndex显示层级number-^2.2.0
visible是否显示booleantrue^2.2.0

提示

style 可以是任何符合规范的 css 样式,样式属性需使用驼峰命名法

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。 当双击时,产生的事件序列为: click -> click -> dblclick ((e: Event) => void)
dblclick鼠标左键双击事件的回调函数 ((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数 ((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数 ((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数 ((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数 ((e: Event) => void)
remove该覆盖物被移除的回调函数 ((e: Event) => void)
lineupdate覆盖物被编辑后的回调函数 ((e: Event) => void)

Released under the MIT License.

- +
Skip to content

BLabel 文本标注

在地图上显示文本标注

ts
import { BLabel } from 'vue3-baidu-map-gl'

组件示例

动态组件 Props

属性说明类型默认值版本
content设置文本标注的内容string required-
offset文本标注的像素偏移{x: number, y: number } --
enableMassClear是否在调用 map.clearOverlays 清除此覆盖物boolean true -
style设置文本标注的样式CSSStyleDeclaration--
position文本标注的坐标{ lng: number, lat: number} required-
zIndex显示层级number-^2.2.0
visible是否显示booleantrue^2.2.0

提示

style 可以是任何符合规范的 css 样式,样式属性需使用驼峰命名法

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。 当双击时,产生的事件序列为: click -> click -> dblclick ((e: Event) => void)
dblclick鼠标左键双击事件的回调函数 ((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数 ((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数 ((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数 ((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数 ((e: Event) => void)
remove该覆盖物被移除的回调函数 ((e: Event) => void)
lineupdate覆盖物被编辑后的回调函数 ((e: Event) => void)

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/components/overlay/mapMask.html b/zh-CN/components/overlay/mapMask.html index 23f2e297..4b1eebad 100644 --- a/zh-CN/components/overlay/mapMask.html +++ b/zh-CN/components/overlay/mapMask.html @@ -5,17 +5,14 @@ BMapMask 掩膜 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

BMapMask 掩膜 ^2.1.0

控制地图元素的局部显示与隐藏

  • 局部显示:只展示指定区域的地图及地图元素(poi 标注、底图、楼块等),隐藏掉区域外的地图元素以突出重点。
  • 局部隐藏:隐藏掉局部区域地图元素,比如隐藏掉指定园区范围的地图元素,然后自定义叠加园区模型。
ts
import { BMapMask } from 'vue3-baidu-map-gl'

注意

  1. 局部隐藏适用于地图大级别情况,建议在 zoom>=18 级时使用
  2. 初始地图的中心点需要设置到掩膜区域内

组件示例

动态组件 Props

属性说明类型可选值默认值版本
path圆形中心点经纬度{ lng: number, lat: number}-required-
showRegion展示区域内部还是外部MapMaskShowRegion-inside-
isBuildingMask楼块是否参与掩膜boolean-false-
isMapMask底图是否参与掩膜boolean-false-
isPoiMask底图上的 Poi 是否参与掩膜boolean-false-
visible是否显示boolean-true^2.2.0

MapMaskShowRegion

描述
outside局部隐藏:隐藏掉局部区域地图元素,比如隐藏掉指定园区范围的地图元素,然后自定义叠加园区模型。
inside局部显示:只展示指定区域的地图及地图元素(poi 标注、底图、楼块等),隐藏掉区域外的地图元素以突出重点。

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。 当双击时,产生的事件序列为:click -> click -> dblclick((e: Event) => void)
dblclick鼠标左键双击事件的回调函数((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数((e: Event) => void)
rightclick鼠标右键单击事件的回调函数((e: Event) => void)

Released under the MIT License.

- +
Skip to content

BMapMask 掩膜 ^2.1.0

控制地图元素的局部显示与隐藏

  • 局部显示:只展示指定区域的地图及地图元素(poi 标注、底图、楼块等),隐藏掉区域外的地图元素以突出重点。
  • 局部隐藏:隐藏掉局部区域地图元素,比如隐藏掉指定园区范围的地图元素,然后自定义叠加园区模型。
ts
import { BMapMask } from 'vue3-baidu-map-gl'

注意

  1. 局部隐藏适用于地图大级别情况,建议在 zoom>=18 级时使用
  2. 初始地图的中心点需要设置到掩膜区域内

组件示例

动态组件 Props

属性说明类型可选值默认值版本
path圆形中心点经纬度{ lng: number, lat: number}-required-
showRegion展示区域内部还是外部MapMaskShowRegion-inside-
isBuildingMask楼块是否参与掩膜boolean-false-
isMapMask底图是否参与掩膜boolean-false-
isPoiMask底图上的 Poi 是否参与掩膜boolean-false-
visible是否显示boolean-true^2.2.0

MapMaskShowRegion

描述
outside局部隐藏:隐藏掉局部区域地图元素,比如隐藏掉指定园区范围的地图元素,然后自定义叠加园区模型。
inside局部显示:只展示指定区域的地图及地图元素(poi 标注、底图、楼块等),隐藏掉区域外的地图元素以突出重点。

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。 当双击时,产生的事件序列为:click -> click -> dblclick((e: Event) => void)
dblclick鼠标左键双击事件的回调函数((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数((e: Event) => void)
rightclick鼠标右键单击事件的回调函数((e: Event) => void)

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/components/overlay/marker.html b/zh-CN/components/overlay/marker.html index 559c61a8..1e1267be 100644 --- a/zh-CN/components/overlay/marker.html +++ b/zh-CN/components/overlay/marker.html @@ -5,17 +5,14 @@ BMarker 标注点 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

BMarker 标注点

在地图上绘制点

ts
import { BMarker } from 'vue3-baidu-map-gl'

组件示例

在地图上添加标记点,通过 icon 指定显示图标

静态组件 Props

属性说明类型默认值
title鼠标移到 marker 上的显示内容string-
draggingCursor拖拽标注时的鼠标指针样式。此属性值需遵循 CSS 的cursor属性规范string-
raiseOnDrag拖拽标注时,标注是否开启离开地图表面效果 booleanfalse
enableClicking是否响应点击事件 booleantrue

动态组件 Props

属性说明类型可选值默认值版本
zIndex显示层级number--^0.0.35
position标注点的坐标{ lng: number, lat: number}-required-
offset标注点的像素偏移 {x: number, y: number }--
icon标注点的图标。可使用默认图标,也可自定义图标string simple_red / simple_blue...--
rotation旋转角度number --
enableDragging是否启用拖拽boolean - true-
enableMassClear是否在调用 map.clearOverlays 清除此覆盖物boolean -true -
visible是否显示boolean-true^2.2.0

默认图标可选值

simple_red , simple_blue , loc_red , loc_blue , start , end , location

红色图标: red1 , red2 , red3 , red4 , red5 , red6 , red7 , red8 , red9 , red10

蓝色图标: blue1 , blue2 , blue3 , blue4 , blue5 , blue6 , blue7 , blue8 , blue9 , blue10

其余图标可根据下图自行定位裁切:

https://mapopen.bj.bcebos.com/cms/react-bmap/markers_new2x_fbb9e99.png

自定义图标

属性说明类型默认值版本
anchor图标的定位点相对于图标左上角的偏移值{ x: number, y: number }--
imageOffset图标所用的图片相对于可视区域的偏移值,此功能的作用等同于 CSS 中的 background-position 属性{ x: number, y: number }--
size图标可视区域的大小{ width: number, height: number }required^2.3.3
imageSize图标所用的图片的大小,此功能的作用等同于 CSS 中的 background-size 属性。可用于实现高清屏的高清效果{ width: number, height: number }--
imageUrl图标所用图像资源的位置stringrequired-
printImageUrl设置 icon 打印图片的 url,该打印图片只针对 IE6 有效,解决 IE6 使用 PNG 滤镜导致的错位问题。如果您的 icon 没有使用 PNG 格式图片或者没有使用 CSS Sprites 技术,则可忽略此配置string --

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。当双击时,产生的事件序列为:click -> click -> dblclick((e: Event) => void)
dblclick鼠标左键双击事件的回调函数((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数((e: Event) => void)
remove该覆盖物被移除的回调函数((e: Event) => void)
infowindowcloseinfowindow 关闭事件的回调函数((e: Event) => void)
infowindowopeninfowindow 打开事件的回调函数((e: Event) => void)
dragstart拖拽覆盖物开始事件的回调函数((e: Event) => void)
dragging覆盖物拖拽中事件的回调函数((e: Event) => void)
dragend拖拽覆盖物结束事件的回调函数((e: Event) => void)
rightclick鼠标右键单击事件的回调函数((e: Event) => void)

Released under the MIT License.

- +
Skip to content

BMarker 标注点

在地图上绘制点

ts
import { BMarker } from 'vue3-baidu-map-gl'

组件示例

在地图上添加标记点,通过 icon 指定显示图标

静态组件 Props

属性说明类型默认值
title鼠标移到 marker 上的显示内容string-
draggingCursor拖拽标注时的鼠标指针样式。此属性值需遵循 CSS 的cursor属性规范string-
raiseOnDrag拖拽标注时,标注是否开启离开地图表面效果 booleanfalse
enableClicking是否响应点击事件 booleantrue

动态组件 Props

属性说明类型可选值默认值版本
zIndex显示层级number--^0.0.35
position标注点的坐标{ lng: number, lat: number}-required-
offset标注点的像素偏移 {x: number, y: number }--
icon标注点的图标。可使用默认图标,也可自定义图标string simple_red / simple_blue...--
rotation旋转角度number --
enableDragging是否启用拖拽boolean - true-
enableMassClear是否在调用 map.clearOverlays 清除此覆盖物boolean -true -
visible是否显示boolean-true^2.2.0

默认图标可选值

simple_red , simple_blue , loc_red , loc_blue , start , end , location

红色图标: red1 , red2 , red3 , red4 , red5 , red6 , red7 , red8 , red9 , red10

蓝色图标: blue1 , blue2 , blue3 , blue4 , blue5 , blue6 , blue7 , blue8 , blue9 , blue10

其余图标可根据下图自行定位裁切:

https://mapopen.bj.bcebos.com/cms/react-bmap/markers_new2x_fbb9e99.png

自定义图标

属性说明类型默认值版本
anchor图标的定位点相对于图标左上角的偏移值{ x: number, y: number }--
imageOffset图标所用的图片相对于可视区域的偏移值,此功能的作用等同于 CSS 中的 background-position 属性{ x: number, y: number }--
size图标可视区域的大小{ width: number, height: number }required^2.3.3
imageSize图标所用的图片的大小,此功能的作用等同于 CSS 中的 background-size 属性。可用于实现高清屏的高清效果{ width: number, height: number }--
imageUrl图标所用图像资源的位置stringrequired-
printImageUrl设置 icon 打印图片的 url,该打印图片只针对 IE6 有效,解决 IE6 使用 PNG 滤镜导致的错位问题。如果您的 icon 没有使用 PNG 格式图片或者没有使用 CSS Sprites 技术,则可忽略此配置string --

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。当双击时,产生的事件序列为:click -> click -> dblclick((e: Event) => void)
dblclick鼠标左键双击事件的回调函数((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数((e: Event) => void)
remove该覆盖物被移除的回调函数((e: Event) => void)
infowindowcloseinfowindow 关闭事件的回调函数((e: Event) => void)
infowindowopeninfowindow 打开事件的回调函数((e: Event) => void)
dragstart拖拽覆盖物开始事件的回调函数((e: Event) => void)
dragging覆盖物拖拽中事件的回调函数((e: Event) => void)
dragend拖拽覆盖物结束事件的回调函数((e: Event) => void)
rightclick鼠标右键单击事件的回调函数((e: Event) => void)

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/components/overlay/marker3d.html b/zh-CN/components/overlay/marker3d.html index 7b949346..1a64aaaa 100644 --- a/zh-CN/components/overlay/marker3d.html +++ b/zh-CN/components/overlay/marker3d.html @@ -5,17 +5,14 @@ BMarker3d 带高度的点 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

BMarker3d 带高度的点

在地图上绘制带高度的点覆盖物

ts
import { BMarker3d } from 'vue3-baidu-map-gl'

组件示例

纹理贴图

静态组件 Props

属性说明类型默认值
height点高度numberrequired
size点大小(宽/高)number50
shape点的形状BMAP_SHAPE_CIRCLE | BMAP_SHAPE_RECTBMAP_SHAPE_CIRCLE

点形状

属性说明
BMAP_SHAPE_CIRCLE圆形
BMAP_SHAPE_RECT正方形

动态组件 Props

属性说明类型可选值默认值版本
position点的坐标{ lng: number, lat: number}-required-
icon点的图或自定义纹理贴图string --
fillColor点填充颜色,同 CSS 颜色string -#f00-
fillOpacity点填充的透明度,范围 0-1number 0-10.8 -
enableMassClear是否在调用 map.clearOverlays 清除此覆盖物boolean- true-
visible是否显示boolean-true^2.2.0

自定义纹理贴图

属性说明类型默认值
anchor贴图的定位点相对于贴图左上角的偏移值{ x: number, y: number }-
imageOffset贴图所用的图片相对于可视区域的偏移值,此功能的作用等同于 CSS 中的 background-position 属性{ x: number, y: number }-
imageSize贴图所用的图片的大小,此功能的作用等同于 CSS 中的background-size属性。可用于实现高清屏的高清效果{ width: number, height: number }required
imageUrl贴图所用图像资源的位置stringrequired
printImageUrl设置 icon 打印图片的 url,该打印图片只针对 IE6 有效,解决 IE6 使用 PNG 滤镜导致的错位问题。如果您的 icon 没有使用 PNG 格式图片或者没有使用 CSS Sprites 技术,则可忽略此配置string -

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。当双击时,产生的事件序列为:click -> click -> dblclick((e: Event) => void)
dblclick鼠标左键双击事件的回调函数((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数((e: Event) => void)
remove该覆盖物被移除的回调函数((e: Event) => void)
rightclick鼠标右键单击事件的回调函数((e: Event) => void)

Released under the MIT License.

- +
Skip to content

BMarker3d 带高度的点

在地图上绘制带高度的点覆盖物

ts
import { BMarker3d } from 'vue3-baidu-map-gl'

组件示例

纹理贴图

静态组件 Props

属性说明类型默认值
height点高度numberrequired
size点大小(宽/高)number50
shape点的形状BMAP_SHAPE_CIRCLE | BMAP_SHAPE_RECTBMAP_SHAPE_CIRCLE

点形状

属性说明
BMAP_SHAPE_CIRCLE圆形
BMAP_SHAPE_RECT正方形

动态组件 Props

属性说明类型可选值默认值版本
position点的坐标{ lng: number, lat: number}-required-
icon点的图或自定义纹理贴图string --
fillColor点填充颜色,同 CSS 颜色string -#f00-
fillOpacity点填充的透明度,范围 0-1number 0-10.8 -
enableMassClear是否在调用 map.clearOverlays 清除此覆盖物boolean- true-
visible是否显示boolean-true^2.2.0

自定义纹理贴图

属性说明类型默认值
anchor贴图的定位点相对于贴图左上角的偏移值{ x: number, y: number }-
imageOffset贴图所用的图片相对于可视区域的偏移值,此功能的作用等同于 CSS 中的 background-position 属性{ x: number, y: number }-
imageSize贴图所用的图片的大小,此功能的作用等同于 CSS 中的background-size属性。可用于实现高清屏的高清效果{ width: number, height: number }required
imageUrl贴图所用图像资源的位置stringrequired
printImageUrl设置 icon 打印图片的 url,该打印图片只针对 IE6 有效,解决 IE6 使用 PNG 滤镜导致的错位问题。如果您的 icon 没有使用 PNG 格式图片或者没有使用 CSS Sprites 技术,则可忽略此配置string -

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。当双击时,产生的事件序列为:click -> click -> dblclick((e: Event) => void)
dblclick鼠标左键双击事件的回调函数((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数((e: Event) => void)
remove该覆盖物被移除的回调函数((e: Event) => void)
rightclick鼠标右键单击事件的回调函数((e: Event) => void)

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/components/overlay/polygon.html b/zh-CN/components/overlay/polygon.html index b4be1822..0b0e9ac5 100644 --- a/zh-CN/components/overlay/polygon.html +++ b/zh-CN/components/overlay/polygon.html @@ -5,17 +5,14 @@ BPolygon 多边形 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

BPolygon 多边形

在地图上绘制简单的多边形

ts
import { BPolygon } from 'vue3-baidu-map-gl'

组件示例

镂空面绘制 / 行政区域边界

静态组件 Props

属性说明类型默认值
clip是否进行跨经度 180 度裁剪,绘制跨精度 180 时为了优化效果,boolean true
geodesic是否开启大地线模式,true 时,两点连线将以大地线的形式。boolean false
isBoundary是否是行政区域的边界多边形boolean false
autoCenter是否自动根据多边形居中地图boolean true
enableClicking是否响应点击事件boolean true

动态组件 Props

属性说明类型可选值默认值版本
path多边形的坐标数组 { lng: number, lat: number}[]-required-
strokeColor描边的颜色,同 CSS 颜色string-#000000-
strokeWeight描边的宽度,单位为像素string -2 -
strokeOpacity描边的透明度,范围 0-1number -1 -
strokeStyle描边的样式,为实线、虚线、或者点状线string solid / dashed / dotted--
fillColor面填充颜色,同 CSS 颜色string -#fff-
fillOpacity面填充的透明度,范围 0-1number 0-10.3 -
enableMassClear是否在调用 map.clearOverlays 清除此覆盖物boolean- true-
enableEditing开启可编辑模式boolean -false -
visible是否显示boolean-true^2.2.0

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。 当双击时,产生的事件序列为: click -> click -> dblclick ((e: Event) => void)
dblclick鼠标左键双击事件的回调函数((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数((e: Event) => void)
remove该覆盖物被移除的回调函数((e: Event) => void)
lineupdate覆盖物被编辑后的回调函数((e: Event) => void)

Released under the MIT License.

- +
Skip to content

BPolygon 多边形

在地图上绘制简单的多边形

ts
import { BPolygon } from 'vue3-baidu-map-gl'

组件示例

镂空面绘制 / 行政区域边界

静态组件 Props

属性说明类型默认值
clip是否进行跨经度 180 度裁剪,绘制跨精度 180 时为了优化效果,boolean true
geodesic是否开启大地线模式,true 时,两点连线将以大地线的形式。boolean false
isBoundary是否是行政区域的边界多边形boolean false
autoCenter是否自动根据多边形居中地图boolean true
enableClicking是否响应点击事件boolean true

动态组件 Props

属性说明类型可选值默认值版本
path多边形的坐标数组 { lng: number, lat: number}[]-required-
strokeColor描边的颜色,同 CSS 颜色string-#000000-
strokeWeight描边的宽度,单位为像素string -2 -
strokeOpacity描边的透明度,范围 0-1number -1 -
strokeStyle描边的样式,为实线、虚线、或者点状线string solid / dashed / dotted--
fillColor面填充颜色,同 CSS 颜色string -#fff-
fillOpacity面填充的透明度,范围 0-1number 0-10.3 -
enableMassClear是否在调用 map.clearOverlays 清除此覆盖物boolean- true-
enableEditing开启可编辑模式boolean -false -
visible是否显示boolean-true^2.2.0

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。 当双击时,产生的事件序列为: click -> click -> dblclick ((e: Event) => void)
dblclick鼠标左键双击事件的回调函数((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数((e: Event) => void)
remove该覆盖物被移除的回调函数((e: Event) => void)
lineupdate覆盖物被编辑后的回调函数((e: Event) => void)

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/components/overlay/polyline.html b/zh-CN/components/overlay/polyline.html index ac34803d..e4cfbcd5 100644 --- a/zh-CN/components/overlay/polyline.html +++ b/zh-CN/components/overlay/polyline.html @@ -5,17 +5,14 @@ BPolyline 折线 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

BPolyline 折线

在地图上绘制简单的折线

ts
import { BPolyline } from 'vue3-baidu-map-gl'

组件示例

静态组件 Props

属性说明类型可选值默认值版本
enableClicking是否响应点击事件boolean-true
geodesic是否开启大地线模式,true 时,两点连线将以大地线的形式。boolean-false
clip是否进行跨经度 180 度裁剪,绘制跨精度 180 时为了优化效果boolean-true
linkRight连接右线,配合clip解决跨 ±180 度经线绘制问题boolean-true^2.1.0

动态组件 Props

属性说明类型可选值默认值版本
path多边形的坐标数组{ lng: number, lat: number}[]-required-
strokeColor描边的颜色,同 CSS 颜色string-#000000-
strokeWeight描边的宽度,单位为像素string-2-
strokeOpacity描边的透明度,范围 0-1 number- 1-
strokeStyle描边的样式,为实线、虚线、或者点状线stringsolid / dashed / dotted--
enableMassClear是否在调用 map.clearOverlays 清除此覆盖物boolean-true -
enableEditing开启可编辑模式boolean-false -
visible是否显示booleantrue^2.2.0

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。 当双击时,产生的事件序列为: click click dblclick((e: Event) => void)
dblclick鼠标左键双击事件的回调函数((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数((e: Event) => void)
remove该覆盖物被移除的回调函数((e: Event) => void)
lineupdate覆盖物被编辑后的回调函数((e: Event) => void)

Released under the MIT License.

- +
Skip to content

BPolyline 折线

在地图上绘制简单的折线

ts
import { BPolyline } from 'vue3-baidu-map-gl'

组件示例

静态组件 Props

属性说明类型可选值默认值版本
enableClicking是否响应点击事件boolean-true
geodesic是否开启大地线模式,true 时,两点连线将以大地线的形式。boolean-false
clip是否进行跨经度 180 度裁剪,绘制跨精度 180 时为了优化效果boolean-true
linkRight连接右线,配合clip解决跨 ±180 度经线绘制问题boolean-true^2.1.0

动态组件 Props

属性说明类型可选值默认值版本
path多边形的坐标数组{ lng: number, lat: number}[]-required-
strokeColor描边的颜色,同 CSS 颜色string-#000000-
strokeWeight描边的宽度,单位为像素string-2-
strokeOpacity描边的透明度,范围 0-1 number- 1-
strokeStyle描边的样式,为实线、虚线、或者点状线stringsolid / dashed / dotted--
enableMassClear是否在调用 map.clearOverlays 清除此覆盖物boolean-true -
enableEditing开启可编辑模式boolean-false -
visible是否显示booleantrue^2.2.0

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。 当双击时,产生的事件序列为: click click dblclick((e: Event) => void)
dblclick鼠标左键双击事件的回调函数((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数((e: Event) => void)
remove该覆盖物被移除的回调函数((e: Event) => void)
lineupdate覆盖物被编辑后的回调函数((e: Event) => void)

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/components/overlay/prism.html b/zh-CN/components/overlay/prism.html index 623d2094..88acf28c 100644 --- a/zh-CN/components/overlay/prism.html +++ b/zh-CN/components/overlay/prism.html @@ -5,17 +5,14 @@ BPrism 3d 棱柱 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

BPrism 3d 棱柱

通过该组件可在地图上绘制 3d 棱柱,可以基于位置经纬度,高度,顶面和侧面的颜色、透明度等属性来绘制不规则的棱柱体。

ts
import { BPrism } from 'vue3-baidu-map-gl'

示例

静态组件 Props

属性说明类型默认值
isBoundary是否是行政区域的边界多边形boolean false
autoCenter是否自动根据多边形居中地图boolean true
enableClicking是否响应点击事件boolean true

动态组件 Props

属性说明类型可选值默认值版本
path多边形的坐标数组{ lng: number, lat: number}[]-required-
altitude3d 棱柱高度number-required-
topFillColor顶面填充颜色string -#fff-
topFillOpacity顶面填充颜色透明度number0-1--
sideFillColor侧面填充颜色string--
sideFillOpacity侧面填充颜色透明度number0-1#fff-
enableMassClear是否在调用 map.clearOverlays 清除此覆盖物boolean- true-
visible是否显示boolean-true^2.2.0

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。 当双击时,产生的事件序列为: click -> click -> dblclick ((e: Event) => void)
dblclick鼠标左键双击事件的回调函数((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数((e: Event) => void)
remove该覆盖物被移除的回调函数((e: Event) => void)
lineupdate覆盖物被编辑后的回调函数((e: Event) => void)

Released under the MIT License.

- +
Skip to content

BPrism 3d 棱柱

通过该组件可在地图上绘制 3d 棱柱,可以基于位置经纬度,高度,顶面和侧面的颜色、透明度等属性来绘制不规则的棱柱体。

ts
import { BPrism } from 'vue3-baidu-map-gl'

示例

静态组件 Props

属性说明类型默认值
isBoundary是否是行政区域的边界多边形boolean false
autoCenter是否自动根据多边形居中地图boolean true
enableClicking是否响应点击事件boolean true

动态组件 Props

属性说明类型可选值默认值版本
path多边形的坐标数组{ lng: number, lat: number}[]-required-
altitude3d 棱柱高度number-required-
topFillColor顶面填充颜色string -#fff-
topFillOpacity顶面填充颜色透明度number0-1--
sideFillColor侧面填充颜色string--
sideFillOpacity侧面填充颜色透明度number0-1#fff-
enableMassClear是否在调用 map.clearOverlays 清除此覆盖物boolean- true-
visible是否显示boolean-true^2.2.0

组件事件

事件名说明类型
initd组件初始化后,调用的方法,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会调用此方法-
click鼠标左键单击事件的回调函数。 当双击时,产生的事件序列为: click -> click -> dblclick ((e: Event) => void)
dblclick鼠标左键双击事件的回调函数((e: Event) => void)
mousedown鼠标左键在该覆盖物上按下的回调函数((e: Event) => void)
mouseup鼠标左键在该覆盖物上抬起的回调函数((e: Event) => void)
mouseout鼠标指针移出该覆盖物事件的回调函数((e: Event) => void)
mouseover鼠标指针移入该覆盖物事件的回调函数((e: Event) => void)
remove该覆盖物被移除的回调函数((e: Event) => void)
lineupdate覆盖物被编辑后的回调函数((e: Event) => void)

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/expand/bmap-draw.html b/zh-CN/expand/bmap-draw.html index 0a5be335..62e3c3c6 100644 --- a/zh-CN/expand/bmap-draw.html +++ b/zh-CN/expand/bmap-draw.html @@ -5,17 +5,14 @@ bmap-draw 鼠标测量与绘制 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,10 +25,10 @@ -
Skip to content

bmap-draw 鼠标测量与绘制

BMap Draw 是一个基于百度地图 JSAPI 的轻量级鼠标绘制库,提供了鼠标绘制、编辑、裁切、合并、复制黏贴、移动、测量等多种几何图形操作能力,助力开发者开箱即用式快速实现自己的几何图形编辑器。

使用方式请参考官方文档: https://lbsyun.baidu.com/bmap-draw/

注意

该组件库中 BMapGL 是异步加载,而 bmap-draw 中配置文件中包含同步调用 BMapGL 相关构造函数,所以只能使用异步加载。

ts
import('bmap-draw').then(({ DrawScene }) => {
+    
Skip to content

bmap-draw 鼠标测量与绘制

BMap Draw 是一个基于百度地图 JSAPI 的轻量级鼠标绘制库,提供了鼠标绘制、编辑、裁切、合并、复制黏贴、移动、测量等多种几何图形操作能力,助力开发者开箱即用式快速实现自己的几何图形编辑器。

使用方式请参考官方文档: https://lbsyun.baidu.com/bmap-draw/

注意

该组件库中 BMapGL 是异步加载,而 bmap-draw 中配置文件中包含同步调用 BMapGL 相关构造函数,所以只能使用异步加载。

ts
import('bmap-draw').then(({ DrawScene }) => {
   // ...
-})

绘制

测量

测量距离,面积,折线长度等

Released under the MIT License.

- +})

绘制

测量

测量距离,面积,折线长度等

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/expand/mapv.html b/zh-CN/expand/mapv.html index fe5a0eca..3654e706 100644 --- a/zh-CN/expand/mapv.html +++ b/zh-CN/expand/mapv.html @@ -5,17 +5,14 @@ mapv 可视化 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,19 +25,19 @@ -
Skip to content

mapv 可视化

MapVGL,是一款基于 WebGL 的地理信息可视化库,可以用来展示大量基于 3D 的地理信息点线面数据。设计初衷主要是为了解决大数据量的三维地理数据展示问题及一些炫酷的三维效果。

本章节将演示一下通过插件的形式和 npm 形式加载 mapv 相关资源,并展示几个示例。

结合方式:

mapv 相关资源结合有如下两种方式:

1. 通过组件库提供的插件形式(内部以 cdn 方式加载)

全局配置插件:

ts
// ...
+    
Skip to content

mapv 可视化

MapVGL,是一款基于 WebGL 的地理信息可视化库,可以用来展示大量基于 3D 的地理信息点线面数据。设计初衷主要是为了解决大数据量的三维地理数据展示问题及一些炫酷的三维效果。

本章节将演示一下通过插件的形式和 npm 形式加载 mapv 相关资源,并展示几个示例。

结合方式:

mapv 相关资源结合有如下两种方式:

1. 通过组件库提供的插件形式(内部以 cdn 方式加载)

全局配置插件:

ts
// ...
 app.use(baiduMap, {
   plugins: ['Mapvgl', 'Mapv', 'MapvThree']
-})

或者通过组件配置插件:

vue
<template>
-  <BMap :plugins="['Mapvgl', 'Mapv', 'MapvThree']"></BMap>
-</template>

因为资源是通过异步方式加载,所以需要监听 pluginReady 事件:

vue
<template>
-  <BMap :plugins="['Mapvgl', 'Mapv', 'MapvThree']" @pluginReady="handlePluginReady"></BMap>
+})

或者通过组件配置插件:

vue
<template>
+  <BMap :plugins="['Mapvgl', 'Mapv', 'MapvThree']"></BMap>
+</template>

因为资源是通过异步方式加载,所以需要监听 pluginReady 事件:

vue
<template>
+  <BMap :plugins="['Mapvgl', 'Mapv', 'MapvThree']" @pluginReady="handlePluginReady"></BMap>
 </template>
 <script lang="ts" setup>
   function handlePluginReady() {
     // ...
   }
-</script>

2. 通过 npm

安装

shell
# mapv 基础库
+</script>

2. 通过 npm

安装

shell
# mapv 基础库
 npm add mapv
 # or
 pnpm add mapv
@@ -53,10 +50,10 @@
 # mapv-three three.js 相关库
 npm add mapv-three
 # or
-pnpm add mapv-three

使用

ts
import * as mapv from 'mapv'
+pnpm add mapv-three

使用

ts
import * as mapv from 'mapv'
 import * as mapvgl from 'mapvgl'
-import * as mapvThree from 'mapv-three'

注意

mapv、mapvgl、mapvThree 均使用 umd 格式打包,而非 esm。所以通过 npm 方式使用代码不利于构建工具 Tree-shaking,导致打包大小臃肿。我们更推荐以插件形式使用

示例

以下示例均来自于 mapv 官方示例。更多示例见及文档请参考: https://mapv.baidu.com/gl/docs/index.html

PointLayer 基础点层图

https://mapv.baidu.com/gl/docs/PointLayer.html

HeatGridLayer 柱状热力图

https://mapv.baidu.com/gl/docs/HeatGridLayer.html

渲染 3d 模型

https://lbsyun.baidu.com/solutions/mapvthreedoc

Released under the MIT License.

- +import * as mapvThree from 'mapv-three'

注意

mapv、mapvgl、mapvThree 均使用 umd 格式打包,而非 esm。所以通过 npm 方式使用代码不利于构建工具 Tree-shaking,导致打包大小臃肿。我们更推荐以插件形式使用

示例

以下示例均来自于 mapv 官方示例。更多示例见及文档请参考: https://mapv.baidu.com/gl/docs/index.html

PointLayer 基础点层图

https://mapv.baidu.com/gl/docs/PointLayer.html

HeatGridLayer 柱状热力图

https://mapv.baidu.com/gl/docs/HeatGridLayer.html

渲染 3d 模型

https://lbsyun.baidu.com/solutions/mapvthreedoc

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/guide/breaking-changes.html b/zh-CN/guide/breaking-changes.html index a67a6652..77b025a0 100644 --- a/zh-CN/guide/breaking-changes.html +++ b/zh-CN/guide/breaking-changes.html @@ -5,17 +5,14 @@ Breaking Changes | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

Breaking Changes

v1 to v2

所有组件名字增加 B 前缀,避免与其他组件库冲突 #24

Released under the MIT License.

- +
Skip to content

Breaking Changes

v1 to v2

所有组件名字增加 B 前缀,避免与其他组件库冲突 #24

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/guide/com-events.html b/zh-CN/guide/com-events.html index a6154bb0..ccf4ca95 100644 --- a/zh-CN/guide/com-events.html +++ b/zh-CN/guide/com-events.html @@ -5,17 +5,14 @@ 全局组件事件 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

全局组件事件

每个组件都有这两个事件。如果该组件库提供的功能不能满足开发需求,则可以通过initd事件暴露百度地图实例来自由的使用。

事件名说明类型
initd组件初始化后会触发此事件,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会触发此事件-

Released under the MIT License.

- +
Skip to content

全局组件事件

每个组件都有这两个事件。如果该组件库提供的功能不能满足开发需求,则可以通过initd事件暴露百度地图实例来自由的使用。

事件名说明类型
initd组件初始化后会触发此事件,返回一个地图实例{ map, BmapGL, instance }
unload组件卸载时会触发此事件-

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/guide/config.html b/zh-CN/guide/config.html index d55a3b70..e97398b8 100644 --- a/zh-CN/guide/config.html +++ b/zh-CN/guide/config.html @@ -5,17 +5,14 @@ 配置 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,7 +25,7 @@ -
Skip to content

配置

本章节将为你讲述如何配置 ak、apiUrl 与插件以及更换资源链接,并实现一个自定义插件

配置方式

TIP

如果你是全局注册使用方式,那么akapiUrlpluginspluginsSourceLink 都支持两种来源(全局注册配置和组件 props 提供),当同时指定的时候,会优先就近原则,从组件 props 中获取。如果全局注册配置和组件 props 都提供了,则会尝试合并两个配置。

如果你是按需加载使用方式,则只支持组件 props 方式

1. 通过全局注册配置 ak 与 插件

全局注册 Options

属性说明类型可选值默认值版本
ak百度地图 akstring---
apiUrl自建地图 api 资源地址(一般用于离线地图)string--^2.3.0
plugins需要注册的插件['TrackAnimation', 'Mapvgl', 'Mapv', 'MapvThree']---
pluginsSourceLink自定义插件资源地址Record<'TrackAnimation' | 'Mapvgl' | 'MapvglThreeLayers' | 'Mapv' | 'MapvThree', string>---
ts
import { createApp } from 'vue'
+    
Skip to content

配置

本章节将为你讲述如何配置 ak、apiUrl 与插件以及更换资源链接,并实现一个自定义插件

配置方式

目前支持两种方式,全局配置和组件 props 传入

TIP

如果你是全局注册使用方式,那么akapiUrlpluginspluginsSourceLink 都支持两种来源(全局注册配置和组件 props 提供),当同时指定的时候,会优先就近原则,从组件 props 中获取。如果全局注册配置和组件 props 都提供了,则会尝试合并两个配置。

如果你是按需加载使用方式,则只支持组件 props 方式

1. 通过全局注册配置 ak 与 插件

全局注册 Options

属性说明类型可选值默认值版本
ak百度地图 akstring---
apiUrl自建地图 api 资源地址(一般用于离线地图)string--^2.3.0
plugins需要注册的插件PluginId[]---
pluginsSourceLink自定义插件资源地址Record<PluginId, string>---
ts
import { createApp } from 'vue'
 import App from './App.vue'
 import baiduMap from 'vue3-baidu-map-gl'
 
@@ -37,32 +34,36 @@
   ak: '百度地图ak',
   plugins: ['TrackAnimation']
 })
-app.mount('#app')

组件 BMap 传入 props 配置

html
<BMap
+app.mount('#app')

2. 组件 BMap 传入 props 配置

html
<BMap
   ak='百度地图ak'
   :plugins="['TrackAnimation']"
-/>

更换插件资源链接

如果需要自建或其他地址的资源链接,则可以通过该方式自定义。同样,该方式也支持两种形式:

ts
// ...
+/>

扩展插件 plugins

配置插件,通过 BMap 组件 pluginReady 可获取加载好的插件类

PluginId插件名称描述版本
TrackAnimation视角轨迹动画TrackAnimation 类提供视角轨迹动画展示效果。
Mapvgl-
MapvglThreeLayers-
Mapv-
MapvThree-
DrawingManager鼠标绘制工具条库提供鼠标绘制点、线、面、多边形(矩形、圆)的编辑工具条的开源代码库。^2.5.0
DistanceTool测距工具测距工具类^2.5.0
GeoUtils几何运算提供若干几何算法^2.5.0
AreaRestriction区域限制浏览区域限制类^2.5.0
InfoBox自定义信息窗口类似于 infoWindow,比 infoWindow 更有灵活性,比如可以定制 border,关闭按钮样式等。^2.5.0
RichMarker富标注富 Marker 类^2.5.0
LuShu路书路书类,实现 Marker 沿路线运动^2.5.0

更换插件资源链接

如果需要自建或其他地址的资源链接,则可以通过该方式自定义。同样,该方式也支持两种形式:

ts
// ...
 app.use(baiduMap, {
   plugins: ['TrackAnimation'],
   pluginsSourceLink: {
     TrackAnimation: '自建或其他地址的资源链接'
   }
 })
-// ...

或者

html
<BMap
+// ...

或者

html
<BMap
   :plugins=['TrackAnimation']
   :pluginsSourceLink="{
     TrackAnimation: '自建或其他地址的资源链接'
   }"
-/>

自定义插件

除了提供的插件外,你还可以通过自定义插件扩展,自定义的插件将在地图加载完毕后执行与处理。

自定义的方式也很简单,你只需定义一个返回Promise的函数即可

ts
const customPlugin = () => {
+/>

自定义资源加载插件

除了提供的插件外,你还可以通过自定义插件扩展,自定义的插件将在地图加载完毕后执行与处理。

自定义的方式也很简单,你只需定义一个返回Promise的函数即可

ts
const customPlugin = () => {
   return new Promise((resolve) => {
     console.log('自定义插件')
-    resolve()
+    // 加载相关资源
+    // 加载完成后可 resolve 一个对象, 插件名和插件所导出的类, 便于通过 pluginRead 更好的访问
+    resolve({
+      // [pluginName]: pluginClass
+    })
   })
-}

使用的方式同样也有两种:

ts
// ...
+}

使用的方式同样也有两种:

ts
// ...
 app.use(baiduMap, {
   plugins: [customPlugin]
 })
-// ...

或者

html
<BMap :plugins="[customPlugin]" />

Released under the MIT License.

- +// ...

或者

html
<BMap :plugins="[customPlugin]" />

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/guide/faq.html b/zh-CN/guide/faq.html index cf59e48e..880a97e9 100644 --- a/zh-CN/guide/faq.html +++ b/zh-CN/guide/faq.html @@ -5,17 +5,14 @@ FAQ | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

FAQ

是否支持 vue2

该组件库是完全基于 vue3 语法设计,目前只支持 vue3.x,vue2.x 用户请移步 vue-baidu-map

Uncaught TypeError: Cannot read properties of undefined (reading 'getMapInstance')

尝试将 vite 升级 v4 以上

服务器打包部署后地图不显示

尝试将 vite 升级 v4 以上

Released under the MIT License.

- +
Skip to content

FAQ

是否支持 vue2

该组件库是完全基于 vue3 语法设计,目前只支持 vue3.x,vue2.x 用户请移步 vue-baidu-map

Uncaught TypeError: Cannot read properties of undefined (reading 'getMapInstance')

尝试将 vite 升级 v4 以上

服务器打包部署后地图不显示

尝试将 vite 升级 v4 以上

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/guide/installation.html b/zh-CN/guide/installation.html index a06ba217..afde5be4 100644 --- a/zh-CN/guide/installation.html +++ b/zh-CN/guide/installation.html @@ -5,17 +5,14 @@ 安装 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,21 +25,20 @@ -
Skip to content

安装

使用包管理器

我们建议您使用包管理器(如 NPM、Yarn 或 pnpm)安装 Vue3 BaiduMap GL,然后您就可以使用打包工具,例如 Vite 或 webpack。

bash
pnpm add vue3-baidu-map-gl
bash
yarn add vue3-baidu-map-gl
bash
npm install vue3-baidu-map-gl

浏览器直接引入 ^0.0.21

直接通过浏览器的 HTML 标签导入 Vue3 BaiduMap GL,然后就可以使用全局变量 Vue3baiduMapGl 了。

不同的 CDN 提供商有不同的引入方式, 我们在这里以 unpkgjsDelivr 举例。 你也可以使用其它的 CDN 供应商。

html
<head>
+    
Skip to content

安装

使用包管理器

我们建议您使用包管理器(如 NPM、Yarn 或 pnpm)安装 Vue3 BaiduMap GL,然后您就可以使用打包工具,例如 Vite 或 webpack。

bash
pnpm add vue3-baidu-map-gl
bash
yarn add vue3-baidu-map-gl
bash
npm install vue3-baidu-map-gl

浏览器直接引入 ^0.0.21

直接通过浏览器的 HTML 标签导入 Vue3 BaiduMap GL,然后就可以使用全局变量 Vue3baiduMapGl 了。

不同的 CDN 提供商有不同的引入方式, 我们在这里以 unpkgjsDelivr 举例。 你也可以使用其它的 CDN 供应商。

html
<head>
   <meta charset="utf-8" />
   <!-- Import Vue3 -->
   <script src="https://unpkg.com/vue@3"></script>
   <!-- Import Vue3 BaiduMap GL -->
   <!-- Would use latest version, you'd better specify a version -->
   <script src="https://unpkg.com/vue3-baidu-map-gl"></script>
-</head>
html
<head>
+</head>
html
<head>
   <!-- Import Vue 3 -->
   <script src="https//cdn.jsdelivr.net/npm/vue@3"></script>
   <!-- Import Vue3 BaiduMap GL -->
   <script src="https://cdn.jsdelivr.net/npm/vue3-baidu-map-gl"></script>
-</head>

提示

我们建议使用 CDN 引入 Vue3 BaiduMap GL 的用户在链接地址上锁定版本,以免将来 Vue3BaiduMapGL 升级时受到非兼容性更新的影响

Hello World

在线演示

Released under the MIT License.

- +</head>

提示

我们建议使用 CDN 引入 Vue3 BaiduMap GL 的用户在链接地址上锁定版本,以免将来 Vue3BaiduMapGL 升级时受到非兼容性更新的影响

Hello World

在线演示

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/guide/introduction.html b/zh-CN/guide/introduction.html index cc9238e4..9fa014fd 100644 --- a/zh-CN/guide/introduction.html +++ b/zh-CN/guide/introduction.html @@ -5,17 +5,14 @@ Vue3 BaiduMap Gl | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

Vue3 BaiduMap Gl

GitHub package.json version (subfolder of monorepo)npmGitHub Repo starsGitHub issuesGitHub closed issues

基于百度地图 JavaScript GL 版(使用了 WebGL 对地图、覆盖物等进行渲染,支持 3D 视角展示地图) API 封装设计的 Vue3 组件库,开发体验良好,以优雅的方式完成百度地图的接入。

✨ 特性

  • 🚀 自动加载百度地图 SDK,将百度地图繁琐的 Api 封装进组件,你只需关注组件本身
  • 📦 20+ 高质量的开箱即用 Vue 3 组件以及 8+ hooks 封装
  • 📐 遵循直觉的、简约的 Api 设计
  • ⚡ Composition Api,更好的性能
  • 🔨 完整的 TypeScript 支持,更好的体验
  • 🧩 tree shaking 支持,模块分包,只打包你想要的的
  • 🌏 基于百度地图 Gl 版 SDK,通过 WebGL 对地图、覆盖物等进行渲染,支持 3D 视角展示地图
  • 🚀 支持 volar,组件提供完善的代码提示

环境支持

组件库

Vue3 BaiduMap GL 可以在支持 ES2018 的浏览器上运行。 如果您确实需要支持旧版本的浏览器,请自行添加 Babel 和相应的 Polyfill 。

由于 Vue 3 不再支持 IE11,该组件库是基于 Vue3 封装,自然也不再支持 IE 浏览器。

IEFirefoxChromeSafari
Edge ≥ 79Firefox ≥ 78Chrome ≥ 64Safari ≥ 12

Baidu Map GL Api 兼容性

JavaScript API GL v1.0 基于 WebGL 开发,对于用户的浏览器环境有兼容性要求。需要完整支持 WebGL 的现代浏览器来支持渲染。对于 WebGL 支持欠佳的浏览器会降级为 Canvas 绘制,若仍然存在兼容性问题,则会降级到瓦片图渲染,确保不同浏览器环境的用户都可以完成地图的基本渲染。

贡献者

Loading Contributors...

License

MIT licenses

Released under the MIT License.

- +
Skip to content

Vue3 BaiduMap Gl

GitHub package.json version (subfolder of monorepo)npmGitHub Repo starsGitHub issuesGitHub closed issues

基于百度地图 JavaScript GL 版(使用了 WebGL 对地图、覆盖物等进行渲染,支持 3D 视角展示地图) API 封装设计的 Vue3 组件库,开发体验良好,以优雅的方式完成百度地图的接入。

✨ 特性

  • 🚀 自动加载百度地图 SDK,将百度地图繁琐的 Api 封装进组件,你只需关注组件本身
  • 📦 20+ 高质量的开箱即用 Vue 3 组件以及 8+ hooks 封装
  • 📐 遵循直觉的、简约的 Api 设计
  • ⚡ Composition Api,更好的性能
  • 🔨 完整的 TypeScript 支持,更好的体验
  • 🧩 tree shaking 支持,模块分包,只打包你想要的的
  • 🌏 基于百度地图 Gl 版 SDK,通过 WebGL 对地图、覆盖物等进行渲染,支持 3D 视角展示地图
  • 🚀 支持 volar,组件提供完善的代码提示

环境支持

组件库

Vue3 BaiduMap GL 可以在支持 ES2018 的浏览器上运行。 如果您确实需要支持旧版本的浏览器,请自行添加 Babel 和相应的 Polyfill 。

由于 Vue 3 不再支持 IE11,该组件库是基于 Vue3 封装,自然也不再支持 IE 浏览器。

IEFirefoxChromeSafari
Edge ≥ 79Firefox ≥ 78Chrome ≥ 64Safari ≥ 12

Baidu Map GL Api 兼容性

JavaScript API GL v1.0 基于 WebGL 开发,对于用户的浏览器环境有兼容性要求。需要完整支持 WebGL 的现代浏览器来支持渲染。对于 WebGL 支持欠佳的浏览器会降级为 Canvas 绘制,若仍然存在兼容性问题,则会降级到瓦片图渲染,确保不同浏览器环境的用户都可以完成地图的基本渲染。

贡献者

Loading Contributors...

License

MIT licenses

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/guide/quick-start.html b/zh-CN/guide/quick-start.html index c377f6d7..be6af249 100644 --- a/zh-CN/guide/quick-start.html +++ b/zh-CN/guide/quick-start.html @@ -5,17 +5,14 @@ 快速开始 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,27 +25,27 @@ -
Skip to content

快速开始

本节将介绍如何在项目中使用 Vue3 BaiduMap GL。

用法

完整引入

失去 Tree Shaking 的功能,打包有冗余代码。如果你对打包后的文件大小不是很在乎,那么使用完整导入会更方便。

ts
import { createApp } from 'vue'
+    
Skip to content

快速开始

本节将介绍如何在项目中使用 Vue3 BaiduMap GL。

用法

完整引入

失去 Tree Shaking 的功能,打包有冗余代码。如果你对打包后的文件大小不是很在乎,那么使用完整导入会更方便。

ts
import { createApp } from 'vue'
 import Vue3BaiduMapGL from 'vue3-baidu-map-gl'
 
 const app = createApp(App)
-app.use(Vue3BaiduMapGL)

Volar 支持 ^0.0.21

如果你在使用 Volar,那么可以在 tsconfig.json 中配置 compilerOptions.types 来指定全局组件类型,从而获得更好的类型提示。如下图:

json
// tsconfig.json
+app.use(Vue3BaiduMapGL)

Volar 支持 ^0.0.21

如果你在使用 Volar,那么可以在 tsconfig.json 中配置 compilerOptions.types 来指定全局组件类型,从而获得更好的类型提示。如下图:

json
// tsconfig.json
 {
   "compilerOptions": {
     // ...
     "types": ["vue3-baidu-map-gl/volar"]
   }
-}

按需导入 推荐

Vue3 BaiduMap GL 提供了基于 ES Module 开箱即用的 Tree Shaking 功能。你可以直接导入组件并使用它。这种情况下,只有导入的组件才会被打包。

vue
<template>
-  <BMap>
-    <BZoom />
+}

按需导入 推荐

Vue3 BaiduMap GL 提供了基于 ES Module 开箱即用的 Tree Shaking 功能。你可以直接导入组件并使用它。这种情况下,只有导入的组件才会被打包。

vue
<template>
+  <BMap>
+    <BZoom />
     <!-- ... -->
-  </BMap>
+  </BMap>
 </template>
 
 <script setup lang="ts">
   import { BMap, BZoom } from 'vue3-baidu-map-gl'
-</script>

申请 ak 密钥

在开始使用前,您还需在百度地图开发者后台申请百度地图 ak 密钥,然后在项目中配置 ak 密钥后,才能正确的渲染地图。详细请阅读下面两个链接的内容:

官方密钥 ak 申请指引

申请开发者密钥 ak

配置

参考配置

开始使用

您可以从现在起启动您的项目。 对于每个组件或 hooks 的用法,请参考对应的文档。

Released under the MIT License.

- +</script>

申请 ak 密钥

在开始使用前,您还需在百度地图开发者后台申请百度地图 ak 密钥,然后在项目中配置 ak 密钥后,才能正确的渲染地图。详细请阅读下面两个链接的内容:

官方密钥 ak 申请指引

申请开发者密钥 ak

配置

参考配置

开始使用

您可以从现在起启动您的项目。 对于每个组件或 hooks 的用法,请参考对应的文档。

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/hooks/useAddressGeocoder.html b/zh-CN/hooks/useAddressGeocoder.html index f236bc49..fa000c3a 100644 --- a/zh-CN/hooks/useAddressGeocoder.html +++ b/zh-CN/hooks/useAddressGeocoder.html @@ -5,17 +5,14 @@ useAddressGeocoder | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,9 +25,9 @@ -
Skip to content

useAddressGeocoder ^0.0.39

通过地址解析坐标点

ts
import { useAddressGeocoder } from 'vue3-baidu-map-gl'

单个地址解析

使用地址字符串作为 get 方法参数解析单个地址

TIP

在 Ts 中使用单个解析地址时,使用泛型Point内部可推断point为可推断为Point,从而避免读取值时 ts 的报错。

ts
import { Point } from 'vue3-baidu-map-gl'
-const { point } = useAddressGeocoder<Point>()

批量解析地址

使用地址字符串数组作为 get 方法参数批量解析地址

TIP

在 Ts 中使用批量解析地址时,使用泛型Point[]内部可推断point为可推断为Point[],从而避免遍历时 ts 的报错。

ts
import { Point } from 'vue3-baidu-map-gl'
-const { point: points } = useAddressGeocoder<Point[]>()

用法

ts
const { get, point, isLoading, isEmpty } = useAddressGeocoder(cal)

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 get 方法后数据才可用

参数

参数描述类型默认值
cal定位成功后的回调函数(point: Ref<Point | Point[] | null | undefined>) => void-

返回值

返回值描述类型
isLoading是否在获取中boolean
isEmpty是否有解析结果。批量解析时,所有地址都未解析到正确坐标点,该值才为falseboolean
point地址解析出来的坐标点。批量解析地址时,point 为数组。Ref<Point | Point[] | null | undefined>
get获取地址到坐标点方法,需要在Map组件initd事件触发后才可调用;参数 address表示要解析的地址,可以传数组一次解析多个地址;city表示地址所属的城市(address: string | string[], city: string) => void

Point

ts
type Point = { lng: number; lat: number }

TS 类型定义参考

ts
import { Ref } from 'vue'
+    
Skip to content

useAddressGeocoder ^0.0.39

通过地址解析坐标点

ts
import { useAddressGeocoder } from 'vue3-baidu-map-gl'

单个地址解析

使用地址字符串作为 get 方法参数解析单个地址

TIP

在 Ts 中使用单个解析地址时,使用泛型Point内部可推断point为可推断为Point,从而避免读取值时 ts 的报错。

ts
import { Point } from 'vue3-baidu-map-gl'
+const { point } = useAddressGeocoder<Point>()

批量解析地址

使用地址字符串数组作为 get 方法参数批量解析地址

TIP

在 Ts 中使用批量解析地址时,使用泛型Point[]内部可推断point为可推断为Point[],从而避免遍历时 ts 的报错。

ts
import { Point } from 'vue3-baidu-map-gl'
+const { point: points } = useAddressGeocoder<Point[]>()

用法

ts
const { get, point, isLoading, isEmpty } = useAddressGeocoder(cal)

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 get 方法后数据才可用

参数

参数描述类型默认值
cal定位成功后的回调函数(point: Ref<Point | Point[] | null | undefined>) => void-

返回值

返回值描述类型
isLoading是否在获取中boolean
isEmpty是否有解析结果。批量解析时,所有地址都未解析到正确坐标点,该值才为falseboolean
point地址解析出来的坐标点。批量解析地址时,point 为数组。Ref<Point | Point[] | null | undefined>
get获取地址到坐标点方法,需要在Map组件initd事件触发后才可调用;参数 address表示要解析的地址,可以传数组一次解析多个地址;city表示地址所属的城市(address: string | string[], city: string) => void

Point

ts
type Point = { lng: number; lat: number }

TS 类型定义参考

ts
import { Ref } from 'vue'
 import { type Point } from 'vue3-baidu-map-gl'
 
 export declare type AddressGeocoderResult = Point | Point[]
@@ -44,8 +41,8 @@
   point: Ref<T | null | undefined>
   isLoading: Ref<boolean>
   isEmpty: Ref<boolean>
-}

Released under the MIT License.

- +}

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/hooks/useAreaBoundary.html b/zh-CN/hooks/useAreaBoundary.html index 2514c63a..783034ce 100644 --- a/zh-CN/hooks/useAreaBoundary.html +++ b/zh-CN/hooks/useAreaBoundary.html @@ -5,17 +5,14 @@ useAreaBoundary | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,7 +25,7 @@ -
Skip to content

useAreaBoundary

通过该 hooks 可获取行政区域的边界。

ts
import { useAreaBoundary } from 'vue3-baidu-map-gl'

示例

用法

ts
const { isLoading, boundaries, get } = useAreaBoundary(cal)

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 get 方法后数据才可用

参数

参数描述类型默认值
cal获取行政区域成功后的回调函数(boundaries: string[]) => void-

返回值

返回值描述类型
isLoading是否加载中boolean
boundaries区域边界数据,默认为空数组,get方法调用后才可用Ref<string[]>
get获取指定区域边界方法({string}) => void

代码示例

html
<Map @initd="handleInitd"></Map>
+    
Skip to content

useAreaBoundary

通过该 hooks 可获取行政区域的边界。

ts
import { useAreaBoundary } from 'vue3-baidu-map-gl'

示例

用法

ts
const { isLoading, boundaries, get } = useAreaBoundary(cal)

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 get 方法后数据才可用

参数

参数描述类型默认值
cal获取行政区域成功后的回调函数(boundaries: string[]) => void-

返回值

返回值描述类型
isLoading是否加载中boolean
boundaries区域边界数据,默认为空数组,get方法调用后才可用Ref<string[]>
get获取指定区域边界方法({string}) => void

代码示例

html
<Map @initd="handleInitd"></Map>
 
 <script setup lang="ts">
   import { useAreaBoundary } from 'vue3-baidu-map-gl'
@@ -38,7 +35,7 @@
   function handleInitd() {
     get('北京市')
   }
-</script>

TS 类型定义参考

ts
import { Ref } from 'vue'
+</script>

TS 类型定义参考

ts
import { Ref } from 'vue'
 export declare type AreaBoundary = string[]
 /**
  * 获取地图区域边界
@@ -60,8 +57,8 @@
    * @example get('北京市')
    */
   get: (area: string) => void
-}

Released under the MIT License.

- +}

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/hooks/useBrowserLocation.html b/zh-CN/hooks/useBrowserLocation.html index 2cc8b64e..b869fb38 100644 --- a/zh-CN/hooks/useBrowserLocation.html +++ b/zh-CN/hooks/useBrowserLocation.html @@ -5,17 +5,14 @@ useBrowserLocation | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,7 +25,7 @@ -
Skip to content

useBrowserLocation ^0.0.33

用于获取用户所在的城市位置信息(根据浏览器原生定位或者结合安卓定位 SDK 辅助定位),相比Ip 定位获取的信息更丰富,但稳定性并不高,有时候很精准,有时候飘半个中国。

ts
import { useBrowserLocation } from 'vue3-baidu-map-gl'

注意

  1. 由于 Chrome、iOS10 以上系统等已不再支持非安全域的浏览器定位请求,为保证定位成功率和精度,请尽快升级您的站点到 HTTPS。
  2. iOS15 系统浏览器默认关闭位置请求,需要用户设置手机为允许/询问后方可获取精确的定位,定位权限的开启方式请参见 iOS15 定位问题。
  3. 由于浏览器原生定位成功率并不高,可以尝试 Ip 定位安卓 SDK 定位 进行辅助,如果定位精准在城市级别,可联系百度地图提供 ak 以提高定位精准度。

示例

用法

ts
const { get, location, isLoading, isError, status } = useBrowserLocation(options, cal)

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 get 方法后数据才可用

参数

参数描述类型默认值
options浏览器定位配置项UseBrowserLocationOptions-
cal定位成功后的回调函数(location: Ref<Location>) => void-

UseBrowserLocationOptions

属性描述类型默认值
enableSDKLocation是否启用安卓定位 SDK 辅助定位,适用于安卓 WebView 页面,详见booleanfalse
enableHighAccuracy是否要求浏览器获取最佳效果,同浏览器定位接口参数booleanfalse
timeout超时时间number10000
maximumAge允许返回指定事件内的缓存结果,单位为毫秒。如果为0,则每次请求都获取最新的定位结果。默认为10分钟number600,000

返回值

返回值描述类型
isLoading是否在获取中boolean
location定位信息Location
get获取定位方法,需要在Map组件initd事件触发后才可调用() => void
isError是否定位出错boolean
status定位状态Status

Location

属性描述类型
accuracy定位精度number
point经纬度点{ lng: number lat: number }
address定位地址Address

Status

status描述
BMAP_STATUS_SUCCESS定位成功
ERR_POSITION_TIMEOUT定位超时
ERR_POSITION_UNAVAILABLE定位不可用
ERR_PERMISSION_DENIED没有权限,定位被拒绝

Address

属性描述类型
country国家string
city城市string
city_code城市 codestring
district行政区string
province省份string
street街道string
street_number城市 codestring

TS 类型定义参考

ts
import { Ref } from 'vue'
+    
Skip to content

useBrowserLocation ^0.0.33

用于获取用户所在的城市位置信息(根据浏览器原生定位或者结合安卓定位 SDK 辅助定位),相比Ip 定位获取的信息更丰富,但稳定性并不高,有时候很精准,有时候飘半个中国。

ts
import { useBrowserLocation } from 'vue3-baidu-map-gl'

注意

  1. 由于 Chrome、iOS10 以上系统等已不再支持非安全域的浏览器定位请求,为保证定位成功率和精度,请尽快升级您的站点到 HTTPS。
  2. iOS15 系统浏览器默认关闭位置请求,需要用户设置手机为允许/询问后方可获取精确的定位,定位权限的开启方式请参见 iOS15 定位问题。
  3. 由于浏览器原生定位成功率并不高,可以尝试 Ip 定位安卓 SDK 定位 进行辅助,如果定位精准在城市级别,可联系百度地图提供 ak 以提高定位精准度。

示例

用法

ts
const { get, location, isLoading, isError, status } = useBrowserLocation(options, cal)

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 get 方法后数据才可用

参数

参数描述类型默认值
options浏览器定位配置项UseBrowserLocationOptions-
cal定位成功后的回调函数(location: Ref<Location>) => void-

UseBrowserLocationOptions

属性描述类型默认值
enableSDKLocation是否启用安卓定位 SDK 辅助定位,适用于安卓 WebView 页面,详见booleanfalse
enableHighAccuracy是否要求浏览器获取最佳效果,同浏览器定位接口参数booleanfalse
timeout超时时间number10000
maximumAge允许返回指定事件内的缓存结果,单位为毫秒。如果为0,则每次请求都获取最新的定位结果。默认为10分钟number600,000

返回值

返回值描述类型
isLoading是否在获取中boolean
location定位信息Location
get获取定位方法,需要在Map组件initd事件触发后才可调用() => void
isError是否定位出错boolean
status定位状态Status

Location

属性描述类型
accuracy定位精度number
point经纬度点{ lng: number lat: number }
address定位地址Address

Status

status描述
BMAP_STATUS_SUCCESS定位成功
ERR_POSITION_TIMEOUT定位超时
ERR_POSITION_UNAVAILABLE定位不可用
ERR_PERMISSION_DENIED没有权限,定位被拒绝

Address

属性描述类型
country国家string
city城市string
city_code城市 codestring
district行政区string
province省份string
street街道string
street_number城市 codestring

TS 类型定义参考

ts
import { Ref } from 'vue'
 import { type Point } from 'vue3-baidu-map-gl'
 
 interface UseBrowserLocationOptions {
@@ -80,8 +77,8 @@
   isError: Ref<boolean>
   status: Ref<Status | undefined>
   location: Ref<Location>
-}

Released under the MIT License.

- +}

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/hooks/useDefaultMarkerIcons.html b/zh-CN/hooks/useDefaultMarkerIcons.html index 0c1c2464..bfe856d1 100644 --- a/zh-CN/hooks/useDefaultMarkerIcons.html +++ b/zh-CN/hooks/useDefaultMarkerIcons.html @@ -5,17 +5,14 @@ useDefaultMarkerIcons | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,8 +25,8 @@ -
Skip to content

useDefaultMarkerIcons

通过该 hooks 可获取一些内置的地图图标(BMapGL.Icon)。

ts
import { useDefaultMarkerIcons } from 'vue3-baidu-map-gl'

参考: marker 图标可选值

用法

ts
const icons = useDefaultMarkerIcons()

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 set 方法后数据才可用

参数

返回值

返回值描述类型
icons所有内置的 BMapGL.Icon 实例对象键值对Record<DefaultMarkerIcons, BMapGL.Icon>

代码示例

vue
<template>
-  <Map @initd="handleInitd"></Map>
+    
Skip to content

useDefaultMarkerIcons

通过该 hooks 可获取一些内置的地图图标(BMapGL.Icon)。

ts
import { useDefaultMarkerIcons } from 'vue3-baidu-map-gl'

参考: marker 图标可选值

用法

ts
const icons = useDefaultMarkerIcons()

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 set 方法后数据才可用

参数

返回值

返回值描述类型
icons所有内置的 BMapGL.Icon 实例对象键值对Record<DefaultMarkerIcons, BMapGL.Icon>

代码示例

vue
<template>
+  <Map @initd="handleInitd"></Map>
 </template>
 
 <script setup lang="ts">
@@ -39,7 +36,7 @@
     const icons = useDefaultMarkerIcons()
     // ...
   }
-</script>

TS 类型定义参考

ts
export declare type DefaultMarkerIcons =
+</script>

TS 类型定义参考

ts
export declare type DefaultMarkerIcons =
   | 'simple_red'
   | 'simple_blue'
   | 'loc_red'
@@ -67,8 +64,8 @@
   | 'blue8'
   | 'blue9'
   | 'blue10'
-export declare function useDefaultMarkerIcons(): Record<DefaultMarkerIcons, BMapGL.Icon>

Released under the MIT License.

- +export declare function useDefaultMarkerIcons(): Record<DefaultMarkerIcons, BMapGL.Icon>

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/hooks/useIpLocation.html b/zh-CN/hooks/useIpLocation.html index 8927774a..2b62a00c 100644 --- a/zh-CN/hooks/useIpLocation.html +++ b/zh-CN/hooks/useIpLocation.html @@ -5,17 +5,14 @@ useIpLocation | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,7 +25,7 @@ -
Skip to content

useIpLocation ^0.0.33

用于获取用户所在的城市位置信息。(根据用户 IP 自动定位到城市)

ts
import { useIpLocation } from 'vue3-baidu-map-gl'

示例

用法

ts
const { get, location, isLoading } = useIpLocation(cal)

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 get 方法后数据才可用

参数

参数描述类型默认值
cal定位成功后的回调函数(location: Ref<Location>) => void-

返回值

返回值描述类型
isLoading是否在获取中boolean
location定位信息{ point: Point code: number name: string }
get获取定位方法,需要在Map组件initd事件触发后才可调用() => void

TS 类型定义参考

ts
import { Ref } from 'vue'
+    
Skip to content

useIpLocation ^0.0.33

用于获取用户所在的城市位置信息。(根据用户 IP 自动定位到城市)

ts
import { useIpLocation } from 'vue3-baidu-map-gl'

示例

用法

ts
const { get, location, isLoading } = useIpLocation(cal)

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 get 方法后数据才可用

参数

参数描述类型默认值
cal定位成功后的回调函数(location: Ref<Location>) => void-

返回值

返回值描述类型
isLoading是否在获取中boolean
location定位信息{ point: Point code: number name: string }
get获取定位方法,需要在Map组件initd事件触发后才可调用() => void

TS 类型定义参考

ts
import { Ref } from 'vue'
 import { type Point } from 'vue3-baidu-map-gl'
 interface Location {
   point: Point
@@ -42,8 +39,8 @@
   location: Ref<Location>
   isLoading: Ref<boolean>
   get: () => void
-}

Released under the MIT License.

- +}

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/hooks/usePoint.html b/zh-CN/hooks/usePoint.html index a41c3e83..c78b314f 100644 --- a/zh-CN/hooks/usePoint.html +++ b/zh-CN/hooks/usePoint.html @@ -5,17 +5,14 @@ usePoint | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,7 +25,7 @@ -
Skip to content

usePoint

通过该 hooks 可获取一个地图实例点(BMapGL.Point)。

ts
import { usePoint } from 'vue3-baidu-map-gl'

用法

ts
const { point, set } = usePoint()

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 set 方法后数据才可用

参数

返回值

返回值描述类型
pointBMapGL.Point 实例对象,默认为 null,调用 set 方法后才可用BMapGL.Point
set设置实例点坐标方法,需要在Map组件initd事件触发后才可调用({ lng: number; lat: number }) => void

代码示例

html
<Map @initd="handleInitd"></Map>
+    
Skip to content

usePoint

通过该 hooks 可获取一个地图实例点(BMapGL.Point)。

ts
import { usePoint } from 'vue3-baidu-map-gl'

用法

ts
const { point, set } = usePoint()

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 set 方法后数据才可用

参数

返回值

返回值描述类型
pointBMapGL.Point 实例对象,默认为 null,调用 set 方法后才可用BMapGL.Point
set设置实例点坐标方法,需要在Map组件initd事件触发后才可调用({ lng: number; lat: number }) => void

代码示例

html
<Map @initd="handleInitd"></Map>
 
 <script setup lang="ts">
   import { useAreaBoundary } from 'vue3-baidu-map-gl'
@@ -41,7 +38,7 @@
       lat: 40.047363
     })
   }
-</script>

TS 类型定义参考

ts
import { Ref } from 'vue'
+</script>

TS 类型定义参考

ts
import { Ref } from 'vue'
 import { Point } from '../utils'
 /**
  * 地图经纬度点
@@ -62,8 +59,8 @@
    * 设置实例点坐标
    */
   set: ({ lng, lat }: Point) => void
-}

Released under the MIT License.

- +}

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/hooks/usePointConvertor.html b/zh-CN/hooks/usePointConvertor.html index b2d3fdbf..dfe710b0 100644 --- a/zh-CN/hooks/usePointConvertor.html +++ b/zh-CN/hooks/usePointConvertor.html @@ -5,17 +5,14 @@ usePointConvertor 坐标点转换 | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,7 +25,7 @@ -
Skip to content

usePointConvertor 坐标点转换

用于将其他坐标系的坐标转换为百度坐标。

ts
import { usePointConvertor } from 'vue3-baidu-map-gl'

示例

用法

ts
const { result, convert, isLoading, isError, status } = usePointConvertor()

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 convert 方法后数据才可用

参数

返回值

返回值描述类型
result目标坐标点数组{ lng: number; lat: number }[]
isLoading是否加载中boolean
isError是否出错boolean
status当前状态UsePointConvertorStatus
convert点坐标转换方法,需要在Map组件initd事件触发后才可调用({ lng: number; lat: number }[], CoordinatesFromType, CoordinatesToType) => void

CoordinatesFromType

原坐标类型

ts
export enum CoordinatesFromType {
+    
Skip to content

usePointConvertor 坐标点转换

用于将其他坐标系的坐标转换为百度坐标。

ts
import { usePointConvertor } from 'vue3-baidu-map-gl'

示例

用法

ts
const { result, convert, isLoading, isError, status } = usePointConvertor()

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 convert 方法后数据才可用

参数

返回值

返回值描述类型
result目标坐标点数组{ lng: number; lat: number }[]
isLoading是否加载中boolean
isError是否出错boolean
status当前状态UsePointConvertorStatus
convert点坐标转换方法,需要在Map组件initd事件触发后才可调用({ lng: number; lat: number }[], CoordinatesFromType, CoordinatesToType) => void

CoordinatesFromType

原坐标类型

ts
export enum CoordinatesFromType {
   /**
    *  WGS84坐标(GPS标准坐标)
    */
@@ -61,7 +58,7 @@
    * 51地图坐标
    */
   'COORDINATES_51' = 8
-}

CoordinatesToType

目标坐标类型

ts
export enum CoordinatesToType {
+}

CoordinatesToType

目标坐标类型

ts
export enum CoordinatesToType {
   /**
    * GCJ02坐标(火星坐标),即高德地图、腾讯地图、谷歌坐标和MapABC等地图使用的坐标;
    */
@@ -74,7 +71,7 @@
    * 百度地图采用的墨卡托平面坐标(bd09mc)
    */
   'COORDINATES_BD09_MC' = 6
-}

UsePointConvertorStatus

警告

当转换不被允许的坐标系,如:X→GPS,可能不会响应返回以下错误 code,会拒绝响应,浏览器直接报跨域请求

code描述
0ok 正常 服务请求正常召回
1内部错误
4转换失败 X→GPS 时必现,根据法律规定,不支持将任何类型的坐标转换为 GPS 坐标
21from 非法
22to 非法
24coords 格式非法
25coords 个数非法,超过限制
26参数错误

代码示例

html
<Map @initd="handleInitd"></Map>
+}

UsePointConvertorStatus

警告

当转换不被允许的坐标系,如:X→GPS,可能不会响应返回以下错误 code,会拒绝响应,浏览器直接报跨域请求

code描述
0ok 正常 服务请求正常召回
1内部错误
4转换失败 X→GPS 时必现,根据法律规定,不支持将任何类型的坐标转换为 GPS 坐标
21from 非法
22to 非法
24coords 格式非法
25coords 个数非法,超过限制
26参数错误

代码示例

html
<Map @initd="handleInitd"></Map>
 
 <script setup lang="ts">
   import { useAreaBoundary } from 'vue3-baidu-map-gl'
@@ -87,7 +84,7 @@
       lat: 40.047363
     })
   }
-</script>

TS 类型定义参考

ts
import { Ref } from 'vue'
+</script>

TS 类型定义参考

ts
import { Ref } from 'vue'
 /**
  * 地图经纬度点
  */
@@ -107,8 +104,8 @@
    * 设置实例点坐标
    */
   set: ({ lng, lat }: { lng: number; lat: number }) => void
-}

Released under the MIT License.

- +}

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/hooks/usePointGeocoder.html b/zh-CN/hooks/usePointGeocoder.html index 0e2a3354..40a0ec42 100644 --- a/zh-CN/hooks/usePointGeocoder.html +++ b/zh-CN/hooks/usePointGeocoder.html @@ -5,17 +5,14 @@ usePointGeocoder | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,9 +25,9 @@ -
Skip to content

usePointGeocoder ^0.0.39

由坐标点解析地址信息

ts
import { usePointGeocoder } from 'vue3-baidu-map-gl'

单个坐标点解析

使用坐标点对象作为 get 方法参数解析单个坐标点

TIP

在 Ts 中使用批量解析坐标点时,使用泛型PointGeocoderResult内部可推断result为可推断为PointGeocoderResult,从而避免读取值时 ts 的报错。

ts
import { usePointGeocoder, PointGeocoderResult } from 'vue3-baidu-map-gl'
-const { result } = usePointGeocoder<PointGeocoderResult>()

批量解析坐标点

使用坐标点对象数组作为 get 方法参数批量解析坐标点

TIP

在 Ts 中使用批量解析坐标点时,使用泛型PointGeocoderResult[]内部可推断result为可推断为PointGeocoderResult[],从而避免遍历时 ts 的报错。

ts
import { usePointGeocoder, PointGeocoderResult } from 'vue3-baidu-map-gl'
-const { result } = usePointGeocoder<PointGeocoderResult[]>()

用法

ts
const { get, result, isLoading, isEmpty } = usePointGeocoder(options, cal)

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 get 方法后数据才可用

参数

参数描述类型默认值
options解析配置UsePointGeocoderOptions-
cal定位成功后的回调函数(result: Ref<PointGeocoderResult | PointGeocoderResult[] | null>) => void-

UsePointGeocoderOptions

属性描述类型
poiRadius附近 POI 所处于的最大半径,默认为 100 米number
numPois返回的 POI 点个数,默认为 10 个。取值范围number

返回值

返回值描述类型
isLoading是否在获取中boolean
isEmpty是否有解析结果boolean
result坐标点解析结果Ref<PointGeocoderResult | PointGeocoderResult[] | null>
get获取坐标点信息方法,需要在Map组件initd事件触发后才可调用(point: Point | Point[]) => void]

Point

ts
type Point = { lng: number; lat: number }

PointGeocoderResult

属性描述类型
point坐标点boolean
string地址描述string
AddressComponent结构化的地址描述AddressComponent
surroundingPois附近的 POI 点LocalResultPoi
business商圈字段,代表此点所属的商圈string
AddressComponent
属性描述类型
streetNumber门牌号码string
street街道名称string
district区县名称string
city城市名称string
province省份名称string
LocalResultPoi
属性描述类型
title结果的名称标题string
point该结果所在的地理位置point
url在百度地图中展示该结果点的详情信息链接string
address地址(根据数据部分提供)。注:当结果点类型为公交站或地铁站时,地址信息为经过该站点的所有车次string
city所在城市string
phoneNumber电话,根据数据部分提供string
postcode邮政编码,根据数据部分提供string
type类型,根据数据部分提供PoiType
uid地点 idstring
tagsPOI 的标签,如商务大厦、餐馆等。string[]
PoiType
描述
0一般位置点
1公交车站位置点
3地铁车站位置点

TS 类型定义参考

ts
import { Ref } from 'vue'
+    
Skip to content

usePointGeocoder ^0.0.39

由坐标点解析地址信息

ts
import { usePointGeocoder } from 'vue3-baidu-map-gl'

单个坐标点解析

使用坐标点对象作为 get 方法参数解析单个坐标点

TIP

在 Ts 中使用批量解析坐标点时,使用泛型PointGeocoderResult内部可推断result为可推断为PointGeocoderResult,从而避免读取值时 ts 的报错。

ts
import { usePointGeocoder, PointGeocoderResult } from 'vue3-baidu-map-gl'
+const { result } = usePointGeocoder<PointGeocoderResult>()

批量解析坐标点

使用坐标点对象数组作为 get 方法参数批量解析坐标点

TIP

在 Ts 中使用批量解析坐标点时,使用泛型PointGeocoderResult[]内部可推断result为可推断为PointGeocoderResult[],从而避免遍历时 ts 的报错。

ts
import { usePointGeocoder, PointGeocoderResult } from 'vue3-baidu-map-gl'
+const { result } = usePointGeocoder<PointGeocoderResult[]>()

用法

ts
const { get, result, isLoading, isEmpty } = usePointGeocoder(options, cal)

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 get 方法后数据才可用

参数

参数描述类型默认值
options解析配置UsePointGeocoderOptions-
cal定位成功后的回调函数(result: Ref<PointGeocoderResult | PointGeocoderResult[] | null>) => void-

UsePointGeocoderOptions

属性描述类型
poiRadius附近 POI 所处于的最大半径,默认为 100 米number
numPois返回的 POI 点个数,默认为 10 个。取值范围number

返回值

返回值描述类型
isLoading是否在获取中boolean
isEmpty是否有解析结果boolean
result坐标点解析结果Ref<PointGeocoderResult | PointGeocoderResult[] | null>
get获取坐标点信息方法,需要在Map组件initd事件触发后才可调用(point: Point | Point[]) => void]

Point

ts
type Point = { lng: number; lat: number }

PointGeocoderResult

属性描述类型
point坐标点boolean
string地址描述string
AddressComponent结构化的地址描述AddressComponent
surroundingPois附近的 POI 点LocalResultPoi
business商圈字段,代表此点所属的商圈string
AddressComponent
属性描述类型
streetNumber门牌号码string
street街道名称string
district区县名称string
city城市名称string
province省份名称string
LocalResultPoi
属性描述类型
title结果的名称标题string
point该结果所在的地理位置point
url在百度地图中展示该结果点的详情信息链接string
address地址(根据数据部分提供)。注:当结果点类型为公交站或地铁站时,地址信息为经过该站点的所有车次string
city所在城市string
phoneNumber电话,根据数据部分提供string
postcode邮政编码,根据数据部分提供string
type类型,根据数据部分提供PoiType
uid地点 idstring
tagsPOI 的标签,如商务大厦、餐馆等。string[]
PoiType
描述
0一般位置点
1公交车站位置点
3地铁车站位置点

TS 类型定义参考

ts
import { Ref } from 'vue'
 import { Point } from 'vue3-baidu-map-gl'
 export interface PointGeocoderResult {
   /**
@@ -73,8 +70,8 @@
   result: Ref<T | null | undefined>
   isLoading: Ref<boolean>
   isEmpty: Ref<boolean>
-}

Released under the MIT License.

- +}

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/hooks/useTrackAnimation.html b/zh-CN/hooks/useTrackAnimation.html index 6f6fcd5b..d4f38d22 100644 --- a/zh-CN/hooks/useTrackAnimation.html +++ b/zh-CN/hooks/useTrackAnimation.html @@ -5,17 +5,14 @@ useTrackAnimation | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,10 +25,10 @@ -
Skip to content

useTrackAnimation

通过该 hooks 可实现轨迹动画, 在轨迹动态播放的同时,视角跟随移动.

ts
import { useTrackAnimation } from 'vue3-baidu-map-gl'

注意

  1. 使用该 hooks 前,请确保TrackAnimation插件正确的 注册 了。
  2. 由于在渲染动画时,数据资源是随着当前方位和坐标的改变而实时加载的,刚开始播放动画时画面可能会卡顿,属于正常现象。
  3. 为了减少加载数据资源的性能损耗,在播放动画时隐藏了地图上的 POI 点。

示例

用法

ts
const { setPath, start, cancel, stop, proceed, status } = useTrackAnimation(map, options)

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 setPath 初始化路径后,方法和数据才可用

参数

参数描述类型默认值
mapMap地图组件ref引用Ref<Map>required
options地图视角动画的配置TrackAnimationOptions-

TrackAnimationOptions

属性描述类型默认值
duration动画持续时常,单位 msnumber10000
delay动画开始延迟number0
overallView是否在动画结束后总览视图缩放(调整地图到能看到整个轨迹的视野),默认开启booleantrue
tilt设置动画中的地图倾斜角度,默认 55 度number55
zoom设置动画中的缩放级别,默认会根据轨迹情况调整到一个合适的级别booleanauto

返回值

返回值描述类型
setPath设置路径动画路径,需要在Map组件initd事件触发后才可调用(path: PathPoint[]) => void
start开始动画,setPath 设置路径后且 statusINITIAL 才可调用() => void
stop暂停动画函数() => void
cancel取消动画函数() => void
proceed继续播放动画函数() => void
status动画状态Ref<AnimationStatus>

PathPoint

ts
type PathPoint = { lng: number lat: number }

AnimationStatus

ts
// PLAYING 播放中
+    
Skip to content

useTrackAnimation

通过该 hooks 可实现轨迹动画, 在轨迹动态播放的同时,视角跟随移动.

ts
import { useTrackAnimation } from 'vue3-baidu-map-gl'

注意

  1. 使用该 hooks 前,请确保TrackAnimation插件正确的 注册 了。
  2. 由于在渲染动画时,数据资源是随着当前方位和坐标的改变而实时加载的,刚开始播放动画时画面可能会卡顿,属于正常现象。
  3. 为了减少加载数据资源的性能损耗,在播放动画时隐藏了地图上的 POI 点。

示例

用法

ts
const { setPath, start, cancel, stop, proceed, status } = useTrackAnimation(map, options)

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 setPath 初始化路径后,方法和数据才可用

参数

参数描述类型默认值
mapMap地图组件ref引用Ref<Map>required
options地图视角动画的配置TrackAnimationOptions-

TrackAnimationOptions

属性描述类型默认值
duration动画持续时常,单位 msnumber10000
delay动画开始延迟number0
overallView是否在动画结束后总览视图缩放(调整地图到能看到整个轨迹的视野),默认开启booleantrue
tilt设置动画中的地图倾斜角度,默认 55 度number55
zoom设置动画中的缩放级别,默认会根据轨迹情况调整到一个合适的级别booleanauto

返回值

返回值描述类型
setPath设置路径动画路径,需要在Map组件initd事件触发后才可调用(path: PathPoint[]) => void
start开始动画,setPath 设置路径后且 statusINITIAL 才可调用() => void
stop暂停动画函数() => void
cancel取消动画函数() => void
proceed继续播放动画函数() => void
status动画状态Ref<AnimationStatus>

PathPoint

ts
type PathPoint = { lng: number lat: number }

AnimationStatus

ts
// PLAYING 播放中
 // STOPPING 暂停中
 // INITIAL 默认状态
-type AnimationStatus = 'PLAYING' | 'STOPPING' | 'INITIAL'

TS 类型定义参考

ts
import { Ref } from 'vue'
+type AnimationStatus = 'PLAYING' | 'STOPPING' | 'INITIAL'

TS 类型定义参考

ts
import { Ref } from 'vue'
 export declare type PathPoint = {
   lng: number
   lat: number
@@ -98,8 +95,8 @@
    * 动画状态
    */
   status: Ref<AnimationStatus>
-}

Released under the MIT License.

- +}

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/hooks/useViewAnimation.html b/zh-CN/hooks/useViewAnimation.html index 10b18e6d..ef35f655 100644 --- a/zh-CN/hooks/useViewAnimation.html +++ b/zh-CN/hooks/useViewAnimation.html @@ -5,17 +5,14 @@ useViewAnimation | Vue3 Baidu Map Gl - - + + - - - - - - - - + + + + + @@ -28,7 +25,7 @@ -
Skip to content

useViewAnimation ^0.0.30

该 hooks 用于展示地图的 3D 动画,您可以自定义从地图上某一地点切换到另一地点的 3D 过渡动画效果。

ts
import { useViewAnimation } from 'vue3-baidu-map-gl'

注意

  • 由于在渲染动画时,数据资源是随着当前方位和坐标的改变而实时加载的,刚开始播放动画时画面可能会卡顿,属于正常现象;此外,为了减少加载数据资源的性能损耗,在播放动画时隐藏了地图上的 POI 点。
  • 其次,在定义关键帧时相邻两个关键帧的坐标点不宜距离太远,否则会导致当前帧的资源还未加载完毕,就已经进入下一帧的播放,出现视野中看不到地图的现象。

示例

用法

ts
const { setKeyFrames, start, cancel, stop, proceed, status } = useViewAnimation(map, options)

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 setKeyFrames 方法后其他方法和数据才可用

参数

参数描述类型默认值
mapMap地图组件ref引用Ref<Map>required
options地图视角动画的配置ViewAnimationOptions-

ViewAnimationOptions

属性描述类型默认值
duration动画持续时常,单位 msnumber1000
delay动画开始延迟number0
loop循环次数,参数类型为数字时循环固定次数,参数为'INFINITE'无限循环number | 'INFINITE'1
disableDragging动画播放时禁止鼠标拖动booleantrue

返回值

返回值描述类型
viewAnimation视角动画实例BMapGL.ViewAnimation
setKeyFrames设置动画关键帧函数,需要在Map组件initd事件触发后才可调用(path: ViewAnimationKeyFrames[]) => void
start开始动画函数,setKeyFrames 设置路径后且 statusINITIAL 才可调用() => void
stop暂停动画函数() => void
cancel取消动画函数() => void
proceed继续播放动画函数() => void
status动画状态Ref<AnimationStatus>

ViewAnimationKeyFrames

ts
type Point = { lng: number; lat: number }
+    
Skip to content

useViewAnimation ^0.0.30

该 hooks 用于展示地图的 3D 动画,您可以自定义从地图上某一地点切换到另一地点的 3D 过渡动画效果。

ts
import { useViewAnimation } from 'vue3-baidu-map-gl'

注意

  • 由于在渲染动画时,数据资源是随着当前方位和坐标的改变而实时加载的,刚开始播放动画时画面可能会卡顿,属于正常现象;此外,为了减少加载数据资源的性能损耗,在播放动画时隐藏了地图上的 POI 点。
  • 其次,在定义关键帧时相邻两个关键帧的坐标点不宜距离太远,否则会导致当前帧的资源还未加载完毕,就已经进入下一帧的播放,出现视野中看不到地图的现象。

示例

用法

ts
const { setKeyFrames, start, cancel, stop, proceed, status } = useViewAnimation(map, options)

TIP

该 hooks 依赖于 BMapGL ,所以需要在 Map 组件初始化完毕调用 setKeyFrames 方法后其他方法和数据才可用

参数

参数描述类型默认值
mapMap地图组件ref引用Ref<Map>required
options地图视角动画的配置ViewAnimationOptions-

ViewAnimationOptions

属性描述类型默认值
duration动画持续时常,单位 msnumber1000
delay动画开始延迟number0
loop循环次数,参数类型为数字时循环固定次数,参数为'INFINITE'无限循环number | 'INFINITE'1
disableDragging动画播放时禁止鼠标拖动booleantrue

返回值

返回值描述类型
viewAnimation视角动画实例BMapGL.ViewAnimation
setKeyFrames设置动画关键帧函数,需要在Map组件initd事件触发后才可调用(path: ViewAnimationKeyFrames[]) => void
start开始动画函数,setKeyFrames 设置路径后且 statusINITIAL 才可调用() => void
stop暂停动画函数() => void
cancel取消动画函数() => void
proceed继续播放动画函数() => void
status动画状态Ref<AnimationStatus>

ViewAnimationKeyFrames

ts
type Point = { lng: number; lat: number }
 interface ViewAnimationKeyFrames {
   /**
    * 	地图中心点
@@ -50,10 +47,10 @@
    * 	表示当前关键帧处于动画过程的百分比,取值范围0~1
    */
   percentage: number
-}

AnimationStatus

ts
// PLAYING 播放中
+}

AnimationStatus

ts
// PLAYING 播放中
 // STOPPING 暂停中
 // INITIAL 默认状态
-type AnimationStatus = 'PLAYING' | 'STOPPING' | 'INITIAL'

事件监听

调用useViewAnimation后,即可通过viewAnimation返回值来添加事件监听,无需等待setKeyFrames方法调用

事件参数描述
animationstart-动画开始时触发,如果配置了 delay,则在 delay 后触发
animationiterations-当动画循环大于 1 次时,上一次结束既下一次开始时触发。最后一次循环结束时不触发
animationend-动画结束时触发,如果动画中途被终止,则不会触发
animationcancel-动画中途被终止时触发

FAQ

为什么事件监听可以同步,而其他方法需要等到 setKeyFrames 方法调用后才可以使用 ?

之所以事件监听可以同步,是因为useViewAnimationhooks 内部做了处理,先缓存了视角动画初始化前的事件监听,等到setKeyFrames方法调用后,再由内部添加监听到视角动画实例上。

这只是为了使用开发者使用体验更好,这和你等到setKeyFrames调用时,在后面添加监听,是一样的效果。

TS 类型定义参考

ts
import { Ref } from 'vue'
+type AnimationStatus = 'PLAYING' | 'STOPPING' | 'INITIAL'

事件监听

调用useViewAnimation后,即可通过viewAnimation返回值来添加事件监听,无需等待setKeyFrames方法调用

事件参数描述
animationstart-动画开始时触发,如果配置了 delay,则在 delay 后触发
animationiterations-当动画循环大于 1 次时,上一次结束既下一次开始时触发。最后一次循环结束时不触发
animationend-动画结束时触发,如果动画中途被终止,则不会触发
animationcancel-动画中途被终止时触发

FAQ

为什么事件监听可以同步,而其他方法需要等到 setKeyFrames 方法调用后才可以使用 ?

之所以事件监听可以同步,是因为useViewAnimationhooks 内部做了处理,先缓存了视角动画初始化前的事件监听,等到setKeyFrames方法调用后,再由内部添加监听到视角动画实例上。

这只是为了使用开发者使用体验更好,这和你等到setKeyFrames调用时,在后面添加监听,是一样的效果。

TS 类型定义参考

ts
import { Ref } from 'vue'
 type Point = { lng: number; lat: number }
 export interface ViewAnimationKeyFrames {
   /**
@@ -111,8 +108,8 @@
   proceed: () => void
   status: Ref<AnimationStatus>
   setKeyFrames: (keyFrames: ViewAnimationKeyFrames[]) => void
-}

Released under the MIT License.

- +}

Released under the MIT License.

+ \ No newline at end of file diff --git a/zh-CN/index.html b/zh-CN/index.html index f2377dcf..c1e420cd 100644 --- a/zh-CN/index.html +++ b/zh-CN/index.html @@ -3,20 +3,17 @@ - Vue3 Baidu Map Gl | Vue3 Baidu Map Gl + Vue3 Baidu Map Gl - - + + - - - - - - - - - + + + + + + @@ -29,8 +26,8 @@ -
Skip to content

Vue3 Baidu Map Gl

Vue3 & BMapGL 组件库 + hooks 库

易用 & 完整 & 性能不错

Vue3 BaiduMap GL

Released under the MIT License.

- +
Skip to content

Vue3 Baidu Map Gl

Vue3 & BMapGL 组件库 + hooks 库

易用 & 完整 & 性能不错

Vue3 BaiduMap GL

Released under the MIT License.

+ \ No newline at end of file