@summeruse/ol 0.2.0-alpha.0 → 0.2.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -0
- package/dist/index.js +689 -816
- package/es/components/index.mjs +3 -0
- package/es/components/ol-map/index.mjs +3 -0
- package/es/components/ol-map/index.vue_vue_type_script_setup_true_lang.mjs +114 -0
- package/es/components/ol-map/index2.mjs +2 -0
- package/es/components/ol-map/props.mjs +5 -8
- package/es/composables/common/index.mjs +4 -6
- package/es/composables/index.mjs +6 -0
- package/es/composables/useContextmenu/index.mjs +70 -76
- package/es/composables/useDrawLineString/index.mjs +104 -112
- package/es/composables/useDrawPolygon/index.mjs +105 -115
- package/es/composables/useGraticule/index.mjs +22 -36
- package/es/composables/usePointermove/index.mjs +100 -99
- package/es/composables/useSwitchBaseLayer/index.mjs +16 -24
- package/es/constants/distance.mjs +2 -4
- package/es/constants/projection.mjs +2 -7
- package/es/index.mjs +19 -76
- package/es/utils/distance/index.mjs +6 -9
- package/es/utils/feature/index.mjs +66 -82
- package/es/utils/index.d.ts +0 -3
- package/es/utils/index.mjs +5 -0
- package/es/utils/layer/index.d.ts +1 -1
- package/es/utils/layer/index.mjs +47 -60
- package/es/utils/projection/index.mjs +15 -24
- package/es/utils/style/index.mjs +27 -31
- package/lib/_virtual/rolldown_runtime.js +1 -0
- package/lib/components/index.js +1 -0
- package/lib/components/ol-map/index.js +1 -0
- package/lib/components/ol-map/index.vue_vue_type_script_setup_true_lang.js +1 -0
- package/lib/components/ol-map/index2.js +1 -0
- package/lib/components/ol-map/props.js +1 -1
- package/lib/composables/common/index.js +1 -1
- package/lib/composables/index.js +1 -0
- package/lib/composables/useContextmenu/index.js +1 -1
- package/lib/composables/useDrawLineString/index.js +1 -1
- package/lib/composables/useDrawPolygon/index.js +1 -1
- package/lib/composables/useGraticule/index.js +1 -1
- package/lib/composables/usePointermove/index.js +1 -1
- package/lib/composables/useSwitchBaseLayer/index.js +1 -1
- package/lib/constants/distance.js +1 -1
- package/lib/constants/projection.js +1 -1
- package/lib/index.js +1 -1
- package/lib/utils/distance/index.js +1 -1
- package/lib/utils/feature/index.js +1 -1
- package/lib/utils/index.d.ts +0 -3
- package/lib/utils/index.js +1 -0
- package/lib/utils/layer/index.d.ts +1 -1
- package/lib/utils/layer/index.js +1 -1
- package/lib/utils/projection/index.js +1 -1
- package/lib/utils/style/index.js +1 -1
- package/package.json +4 -11
- package/es/components/ol-map/index.vue.mjs +0 -124
- package/es/components/ol-map/index.vue2.mjs +0 -4
- package/es/utils/calculate/index.d.ts +0 -24
- package/es/utils/calculate/index.mjs +0 -29
- package/es/utils/calculate/index.test.d.ts +0 -1
- package/es/utils/format/index.d.ts +0 -4
- package/es/utils/format/index.mjs +0 -10
- package/es/utils/realCircle/index.d.ts +0 -9
- package/es/utils/realCircle/index.mjs +0 -10
- package/lib/components/ol-map/index.vue.js +0 -1
- package/lib/components/ol-map/index.vue2.js +0 -1
- package/lib/utils/calculate/index.d.ts +0 -24
- package/lib/utils/calculate/index.js +0 -1
- package/lib/utils/calculate/index.test.d.ts +0 -1
- package/lib/utils/format/index.d.ts +0 -4
- package/lib/utils/format/index.js +0 -1
- package/lib/utils/realCircle/index.d.ts +0 -9
- package/lib/utils/realCircle/index.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const e=require(`../../_virtual/rolldown_runtime.js`),t=require(`../../utils/style/index.js`);require(`../../utils/index.js`);const n=require(`../common/index.js`);let r=require(`vue`);r=e.__toESM(r);let i=require(`ol`);i=e.__toESM(i);let a=require(`ol/interaction`);a=e.__toESM(a);let o=require(`ol/extent`);o=e.__toESM(o);let s=require(`ol/geom`);s=e.__toESM(s);let c=require(`ol/layer/Vector`);c=e.__toESM(c);let l=require(`ol/source/Vector`);l=e.__toESM(l);function u(e,u){let d=(0,r.ref)(!0),f=(0,r.ref)([]),p=(0,r.computed)(()=>f.value.map(e=>e.getGeometry().getCoordinates())),m=u.styleOptions?t.createStyle(u.styleOptions):u?.style,h=new l.default,g=new c.default({source:h,style:m,zIndex:u?.zIndex});e.addLayer(g);let _=new a.Draw({source:h,style:(u.drawStyleOptions?t.createStyle(u.drawStyleOptions):u?.drawStyle)||m,type:`Polygon`});_.setActive(!1);let v=new a.Modify({source:h,style:(u.modifyStyleOptions?t.createStyle(u.modifyStyleOptions):u?.modifyStyle)||m}),y=new Set;e.addInteraction(_),(0,r.onMounted)(()=>{e.addInteraction(v)}),h.on(`addfeature`,()=>{u.size&&h.getFeatures().length>=u.size&&_.setActive(!1)}),h.on(`removefeature`,()=>{u.size&&h.getFeatures().length<u.size&&_.setActive(!0)});let b=()=>{y.forEach(t=>{e.removeOverlay(t)}),y.clear()};h.on(`change`,()=>{b(),h.getFeatures().forEach(t=>{let a=t.getGeometry(),c=(0,o.getCenter)(a.getExtent()),l=document.createElement(`div`);u.deleteFeatureLabel?(0,r.render)(u.deleteFeatureLabel,l):l=n.createToolTipElement(`删除区域`),l.addEventListener(`click`,()=>{h.removeFeature(t)});let d=new i.Overlay({position:c,positioning:`center-center`,element:l});y.add(d),e.addOverlay(d);let f=a.getCoordinates()[0];f.length<3||f.forEach((a,o)=>{let c=document.createElement(`div`);u.deletePointLabel?(0,r.render)(u.deletePointLabel,c):c=n.createToolTipElement(`删除点`),c.addEventListener(`click`,()=>{t.setGeometry(new s.Polygon([f.filter((e,t)=>t!==o)]))});let l=new i.Overlay({position:a,positioning:`top-center`,offset:[0,-30],element:c});y.add(l),e.addOverlay(l)})})}),_.on(`change:active`,()=>{d.value=_.getActive()}),h.on(`change`,()=>{f.value=h.getFeatures()});let x=()=>{b(),e.removeLayer(g),e.removeInteraction(_),e.removeInteraction(v)},S=()=>{u.size&&f.value.length>=u.size||_.setActive(!0)},C=()=>{_.setActive(!1)},w=e=>{h.clear(),e?.forEach(e=>{e.forEach(e=>{if(e.length<2)return;e[0]!==e[e.length-1]&&e.push(e[0]);let t=new i.Feature({geometry:new s.Polygon([e])});h.addFeature(t)})})},T=()=>{w(u.defaultCoordinates)};return T(),(0,r.onUnmounted)(()=>{x()}),{inDraw:d,start:S,stop:C,clear:()=>{h.clear(),C()},setFeatures:w,reset:T,features:f,coordinates:p,destroy:x}}exports.useDrawPolygon=u;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const e=require(`../../_virtual/rolldown_runtime.js`),t=require(`../../utils/style/index.js`);require(`../../utils/index.js`);let n=require(`vue`);n=e.__toESM(n);let r=require(`ol/style`);r=e.__toESM(r);let i=require(`ol/layer`);i=e.__toESM(i);function a(e){let a=(0,n.ref)(e.defaultShow||!1),{strokeStyleOption:o,strokeStyle:s,labelStyleOption:c,latLabelStyleOption:l,lonLabelStyleOption:u,latLabelStyle:d,lonLabelStyle:f,...p}=e.graticuleOptions||{},m=o?new r.Stroke(o):s,h=c?t.createTextStyle(c):void 0,g=(l?t.createTextStyle(l):d)||h,_=(u?t.createTextStyle(u):f)||h,v=new i.Graticule({...p,strokeStyle:m,latLabelStyle:g,lonLabelStyle:_});return(0,n.watch)(a,t=>{if(v.setMap(null),t){let t=(0,n.toValue)(e.olMap);t&&v.setMap(t)}},{immediate:!0,deep:!0}),{showGraticule:a}}exports.useGraticule=a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const e=require(`../../_virtual/rolldown_runtime.js`);let t=require(`vue`);t=e.__toESM(t);let n=require(`ol/extent`);n=e.__toESM(n);function r(e,r){let i=(0,t.ref)(!1),a=(0,t.ref)({x:0,y:0}),o=(0,t.ref)(),s=(0,t.ref)(),c=(0,t.ref)({x:0,y:0}),l=(0,t.ref)(),u=(0,t.ref)(),d=(0,t.computed)(()=>({x:a.value.x+c.value.x,y:a.value.y+c.value.y})),f,p=``;function m(e){let n=(0,t.toValue)(r).filter(t=>{let n=t.visible;return typeof n==`function`?n(e):n??!0});return n.length===0?null:n.sort((e,t)=>(t.priority??0)-(e.priority??0))[0]}function h(e){if(!f)return;let t=f.getEventCoordinate(e);l.value=t;let r=f.getEventPixel(e),d,h;if(f.forEachFeatureAtPixel(r,(e,t)=>(d=e,h=t,!0)),!d){g();return}o.value=d;let _={map:f,position:{x:e.clientX,y:e.clientY},coordinate:t,feature:d,layer:h},v=m(_);if(v){let{content:e,cursor:t,visible:n,fixedFeatureCenter:r,offset:i,priority:a,...o}=v;u.value={...o}}if(!v){g();return}c.value={x:v.offset?.x??0,y:v.offset?.y??0};let y=v.fixedFeatureCenter??!0,b=d.getGeometry();if(y&&b){let e=(0,n.getCenter)(b.getExtent()),t=f.getPixelFromCoordinate(e),{top:r,left:i}=f.getViewport().getBoundingClientRect();a.value.x=t[0]+i,a.value.y=t[1]+r}else a.value={x:e.clientX,y:e.clientY};let x=v.content;s.value=typeof x==`function`?()=>x(_):x;let S=v.cursor,C=typeof S==`function`?S(_):S;if(C&&f){let e=f.getViewport();p||=e.style.cursor,e.style.cursor=C}i.value=!0}function g(){if(i.value=!1,o.value=void 0,f&&p!==void 0){let e=f.getViewport();e.style.cursor=p,p=``}}function _(e){if(!e)return;let t=e.getViewport();t.addEventListener(`pointermove`,h),t.addEventListener(`pointerout`,g)}function v(e){if(!e)return;let t=e.getViewport();t.removeEventListener(`pointermove`,h),t.removeEventListener(`pointerout`,g)}return(0,t.watch)(()=>(0,t.toValue)(e),(e,t)=>{t!==e&&(v(t),_(e),f=e)},{immediate:!0}),(0,t.onBeforeUnmount)(()=>{v(f)}),{visible:(0,t.computed)(()=>i.value),position:(0,t.computed)(()=>d.value),originalPosition:(0,t.computed)(()=>a.value),feature:(0,t.computed)(()=>o.value),content:(0,t.computed)(()=>s.value),coordinate:(0,t.computed)(()=>l.value),option:(0,t.computed)(()=>u.value),hide:g}}exports.usePointermove=r;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const e=require(`../../_virtual/rolldown_runtime.js`);let t=require(`vue`);t=e.__toESM(t);function n(e){let n=(0,t.ref)(e.defaultLayerName||Object.keys(e.layers)[0]);return Object.values(e.layers).forEach(t=>{t.forEach(t=>{e.olMap.addLayer(t)})}),(0,t.watch)(n,()=>{Object.entries(e.layers).forEach(([e,t])=>{let r=e===n.value;t.forEach(e=>{e.setVisible(r)})})},{immediate:!0}),{visibleLayerName:n}}exports.useSwitchBaseLayer=n;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const e=1852;exports.ONE_NM=1852;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const e=`EPSG:3857`,t=`EPSG:4326`,n=e,r=t;exports.EPSG_3857=e,exports.EPSG_4326=t,exports.WGS84Projection=`EPSG:4326`,exports.WebMercatorProjection=`EPSG:3857`;
|
package/lib/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const e=require(`./components/ol-map/props.js`),t=require(`./components/ol-map/index.js`);require(`./components/index.js`);const n=require(`./composables/useContextmenu/index.js`),r=require(`./constants/distance.js`),i=require(`./constants/projection.js`),a=require(`./utils/distance/index.js`),o=require(`./utils/style/index.js`),s=require(`./utils/feature/index.js`),c=require(`./utils/layer/index.js`),l=require(`./utils/projection/index.js`);require(`./utils/index.js`);const u=require(`./composables/useDrawLineString/index.js`),d=require(`./composables/useDrawPolygon/index.js`),f=require(`./composables/useGraticule/index.js`),p=require(`./composables/usePointermove/index.js`),m=require(`./composables/useSwitchBaseLayer/index.js`);require(`./composables/index.js`),exports.EPSG_3857=i.EPSG_3857,exports.EPSG_3857ExtentToEPSG_4326=l.EPSG_3857ExtentToEPSG_4326,exports.EPSG_3857ToEPSG_4326=l.EPSG_3857ToEPSG_4326,exports.EPSG_4326=i.EPSG_4326,exports.EPSG_4326ExtentToEPSG_3857=l.EPSG_4326ExtentToEPSG_3857,exports.EPSG_4326ToEPSG_3857=l.EPSG_4326ToEPSG_3857,exports.ONE_NM=r.ONE_NM,exports.OlMap=t.default,exports.WGS84Projection=i.WGS84Projection,exports.WebMercatorProjection=i.WebMercatorProjection,exports.createCircle=s.createCircle,exports.createCircleFeature=s.createCircleFeature,exports.createCircleStyle=o.createCircleStyle,exports.createFeature=s.createFeature,exports.createLineString=s.createLineString,exports.createLineStringFeature=s.createLineStringFeature,exports.createMultiLineString=s.createMultiLineString,exports.createMultiLineStringFeature=s.createMultiLineStringFeature,exports.createMultiPoint=s.createMultiPoint,exports.createMultiPointFeature=s.createMultiPointFeature,exports.createMultiPolygon=s.createMultiPolygon,exports.createMultiPolygonFeature=s.createMultiPolygonFeature,exports.createPoint=s.createPoint,exports.createPointFeature=s.createPointFeature,exports.createPolygon=s.createPolygon,exports.createPolygonFeature=s.createPolygonFeature,exports.createStyle=o.createStyle,exports.createTextStyle=o.createTextStyle,exports.createVectorLayer=c.createVectorLayer,exports.getBingLayer=c.getBingLayer,exports.getOSMLayer=c.getOSMLayer,exports.getTianDiTuLayer=c.getTianDiTuLayer,exports.getTianDiTuUrl=c.getTianDiTuUrl,exports.kmToNauticalMiles=a.kmToNauticalMiles,exports.mercatorExtentToWgs84=l.mercatorExtentToWgs84,exports.mercatorToWgs84=l.mercatorToWgs84,exports.nauticalMilesToKm=a.nauticalMilesToKm,exports.olMapInjectionKey=e.olMapInjectionKey,exports.useContextmenu=n.useContextmenu,exports.useDrawLineString=u.useDrawLineString,exports.useDrawPolygon=d.useDrawPolygon,exports.useGraticule=f.useGraticule,exports.useOlMap=e.useOlMap,exports.usePointermove=p.usePointermove,exports.useSwitchBaseLayer=m.useSwitchBaseLayer,exports.wgs84ExtentToMercator=l.wgs84ExtentToMercator,exports.wgs84ToMercator=l.wgs84ToMercator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const e=require(`../../constants/distance.js`);function t(t){return t*1e3/e.ONE_NM}function n(t){return t*e.ONE_NM/1e3}exports.kmToNauticalMiles=t,exports.nauticalMilesToKm=n;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const e=require(`../../_virtual/rolldown_runtime.js`),t=require(`../style/index.js`);let n=require(`ol`);n=e.__toESM(n);let r=require(`ol/geom`);r=e.__toESM(r);function i(e){return new r.Point(e)}function a(e){return new r.LineString(e)}function o(e){return new r.Polygon(e)}function s(e,t){return new r.Circle(e,t)}function c(e){return new r.MultiPoint(e)}function l(e){return new r.MultiLineString(e)}function u(e){return new r.MultiPolygon(e)}function d(e){let{styleOptions:r,style:i,geometry:a,...o}=e??{},s=r?t.createStyle(r):i,c=new n.Feature({geometry:a,...o});return c.setStyle(s),c}function f(e,t){let n=i(e);return d({...t,geometry:n})}function p(e,t){let n=a(e);return d({...t,geometry:n})}function m(e,t){let n=o(e);return d({...t,geometry:n})}function h(e,t,n){let r=s(e,t);return d({...n,geometry:r})}function g(e,t){let n=c(e);return d({...t,geometry:n})}function _(e,t){let n=l(e);return d({...t,geometry:n})}function v(e,t){let n=u(e);return d({...t,geometry:n})}exports.createCircle=s,exports.createCircleFeature=h,exports.createFeature=d,exports.createLineString=a,exports.createLineStringFeature=p,exports.createMultiLineString=l,exports.createMultiLineStringFeature=_,exports.createMultiPoint=c,exports.createMultiPointFeature=g,exports.createMultiPolygon=u,exports.createMultiPolygonFeature=v,exports.createPoint=i,exports.createPointFeature=f,exports.createPolygon=o,exports.createPolygonFeature=m;
|
package/lib/utils/index.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require(`./distance/index.js`),t=require(`./style/index.js`),n=require(`./feature/index.js`),r=require(`./layer/index.js`),i=require(`./projection/index.js`);
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { T_MAP_TYPE } from '@summeruse/common';
|
|
2
1
|
import { Feature } from 'ol';
|
|
3
2
|
import { Geometry } from 'ol/geom';
|
|
4
3
|
import { ProjectionLike } from 'ol/proj';
|
|
@@ -7,6 +6,7 @@ import { Tile as TileLayer } from 'ol/layer';
|
|
|
7
6
|
import { default as VectorLayer } from 'ol/layer/Vector';
|
|
8
7
|
import { BingMaps, OSM, XYZ } from 'ol/source';
|
|
9
8
|
import { default as VectorSource } from 'ol/source/Vector';
|
|
9
|
+
export type T_MAP_TYPE = 'vec' | 'cva' | 'img' | 'cia' | 'ter' | 'cta' | 'ibo';
|
|
10
10
|
export declare function getTianDiTuUrl(data: {
|
|
11
11
|
url?: string;
|
|
12
12
|
type: T_MAP_TYPE;
|
package/lib/utils/layer/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const e=require(`../../_virtual/rolldown_runtime.js`),t=require(`../../constants/projection.js`),n=require(`../style/index.js`);let r=require(`ol/layer/Vector`);r=e.__toESM(r);let i=require(`ol/source/Vector`);i=e.__toESM(i);let a=require(`ol/layer`);a=e.__toESM(a);let o=require(`ol/source`);o=e.__toESM(o);function s(e){let{type:n=`img`,projection:r=t.WebMercatorProjection,key:i}=e,a=e.url||`https://t{0-4}.tianditu.gov.cn`,o=`&tk=${i}&SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}`;return`${a}/${n}_${r===`EPSG:4326`?`c`:r===`EPSG:3857`?`w`:`c`}/wmts?LAYER=${n}${o}`}function c(e){let{zIndex:t,projection:n,className:r}=e;return new a.Tile({className:r,source:new o.XYZ({url:s(e),projection:n,crossOrigin:`Anonymous`}),zIndex:t})}function l({name:e,zIndex:t,key:n,className:r}){return new a.Tile({className:r,source:new o.BingMaps({key:n,imagerySet:e,placeholderTiles:!1}),zIndex:t})}function u(e){return new a.Tile({className:e?.className,source:new o.OSM({crossOrigin:`Anonymous`}),zIndex:e?.zIndex})}function d(e){let{styleOptions:t,...a}=e||{},o=t?n.createStyle(t):void 0,s=new i.default;return{source:s,layer:new r.default({source:s,...a,style:o||a.style})}}exports.createVectorLayer=d,exports.getBingLayer=l,exports.getOSMLayer=u,exports.getTianDiTuLayer=c,exports.getTianDiTuUrl=s;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const e=require(`../../_virtual/rolldown_runtime.js`),t=require(`../../constants/projection.js`);let n=require(`ol/proj`);n=e.__toESM(n);function r(e){return(0,n.transform)(e,t.EPSG_4326,t.EPSG_3857)}const i=r;function a(e){return(0,n.transform)(e,t.EPSG_3857,t.EPSG_4326)}const o=a;function s(e){return(0,n.transformExtent)(e,t.EPSG_4326,t.EPSG_3857)}const c=s;function l(e){return(0,n.transformExtent)(e,t.EPSG_3857,t.EPSG_4326)}const u=l;exports.EPSG_3857ExtentToEPSG_4326=u,exports.EPSG_3857ToEPSG_4326=o,exports.EPSG_4326ExtentToEPSG_3857=c,exports.EPSG_4326ToEPSG_3857=i,exports.mercatorExtentToWgs84=l,exports.mercatorToWgs84=a,exports.wgs84ExtentToMercator=s,exports.wgs84ToMercator=r;
|
package/lib/utils/style/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const e=require(`../../_virtual/rolldown_runtime.js`);let t=require(`ol/style`);t=e.__toESM(t);function n(e){let{fillOptions:n,strokeOptions:r,...i}=e;return new t.Circle({...i,fill:n?new t.Fill(n):void 0,stroke:r?new t.Stroke(r):void 0})}function r(e){let{fillOptions:n,strokeOptions:r,backgroundFillOptions:i,backgroundStrokeOptions:a,...o}=e;return new t.Text({...o,fill:n?new t.Fill(n):void 0,stroke:r?new t.Stroke(r):void 0,backgroundFill:i?new t.Fill(i):void 0,backgroundStroke:a?new t.Stroke(a):void 0})}function i(e){let{fillOptions:i,strokeOptions:a,iconOptions:o,circleOptions:s,textOptions:c,...l}=e,u=i?new t.Fill(i):void 0,d=a?new t.Stroke(a):void 0,f=o?new t.Icon(o):void 0,p=s?n(s):void 0,m=c?r(c):void 0;return new t.Style({...l,fill:u,stroke:d,image:f||p,text:m})}exports.createCircleStyle=n,exports.createStyle=i,exports.createTextStyle=r;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@summeruse/ol",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.2.0-alpha.
|
|
4
|
+
"version": "0.2.0-alpha.1",
|
|
5
5
|
"description": "",
|
|
6
6
|
"author": "finalsummer",
|
|
7
7
|
"license": "ISC",
|
|
@@ -26,23 +26,16 @@
|
|
|
26
26
|
"lib"
|
|
27
27
|
],
|
|
28
28
|
"peerDependencies": {
|
|
29
|
-
"ol": "10.5.0",
|
|
29
|
+
"ol": "^10.5.0",
|
|
30
30
|
"vue": "^3.5.13"
|
|
31
31
|
},
|
|
32
|
-
"dependencies": {
|
|
33
|
-
"@turf/turf": "7.2.0",
|
|
34
|
-
"@summeruse/common": "0.2.0"
|
|
35
|
-
},
|
|
36
32
|
"devDependencies": {
|
|
37
|
-
"@turf/turf": "7.2.0",
|
|
38
33
|
"@types/node": "^22.13.14",
|
|
39
|
-
"@vitejs/plugin-vue": "
|
|
34
|
+
"@vitejs/plugin-vue": "6.0.1",
|
|
40
35
|
"@vue/tsconfig": "^0.7.0",
|
|
41
|
-
"naive-ui": "^2.41.0",
|
|
42
|
-
"ol": "10.5.0",
|
|
43
36
|
"sass-embedded": "^1.86.3",
|
|
44
37
|
"typescript": "~5.7.2",
|
|
45
|
-
"vite": "
|
|
38
|
+
"vite": "npm:rolldown-vite@latest",
|
|
46
39
|
"vite-plugin-css-injected-by-js": "^3.5.2",
|
|
47
40
|
"vite-plugin-dts": "^4.5.3",
|
|
48
41
|
"vue-tsc": "^2.2.4"
|
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
import { defineComponent as K, ref as O, watch as n, provide as V, createElementBlock as E, openBlock as L, renderSlot as T, unref as $ } from "vue";
|
|
2
|
-
import { Map as q, View as G } from "ol";
|
|
3
|
-
import { Zoom as p, Attribution as w, Rotate as h, FullScreen as Z, OverviewMap as v, ScaleLine as y } from "ol/control";
|
|
4
|
-
import { DragPan as M, MouseWheelZoom as R, DoubleClickZoom as I, PinchRotate as B, PinchZoom as C, DragRotate as g, KeyboardPan as b, KeyboardZoom as A } from "ol/interaction";
|
|
5
|
-
import { olMapInjectionKey as H } from "./props.mjs";
|
|
6
|
-
const ee = /* @__PURE__ */ K({
|
|
7
|
-
__name: "index",
|
|
8
|
-
props: {
|
|
9
|
-
olMap: { default: () => new q() },
|
|
10
|
-
center: { default: () => [0, 0] },
|
|
11
|
-
zoom: { default: 2 },
|
|
12
|
-
minZoom: { default: 2 },
|
|
13
|
-
maxZoom: { default: 18 },
|
|
14
|
-
constrainResolution: { type: Boolean, default: !0 },
|
|
15
|
-
projection: {},
|
|
16
|
-
extent: {},
|
|
17
|
-
showZoom: { type: Boolean, default: !1 },
|
|
18
|
-
showAttribution: { type: Boolean, default: !1 },
|
|
19
|
-
showRotate: { type: Boolean, default: !1 },
|
|
20
|
-
showFullScreen: { type: Boolean, default: !1 },
|
|
21
|
-
showOverview: { type: Boolean, default: !1 },
|
|
22
|
-
showScale: { type: Boolean, default: !1 },
|
|
23
|
-
dragPan: { type: Boolean, default: !0 },
|
|
24
|
-
mouseWheelZoom: { type: Boolean, default: !0 },
|
|
25
|
-
doubleClickZoom: { type: Boolean, default: !1 },
|
|
26
|
-
pinchRotate: { type: Boolean },
|
|
27
|
-
pinchZoom: { type: Boolean },
|
|
28
|
-
altShiftDragRotate: { type: Boolean }
|
|
29
|
-
},
|
|
30
|
-
setup(S, { expose: k }) {
|
|
31
|
-
const o = S, s = O(), t = o.olMap, i = new G({
|
|
32
|
-
projection: o.projection,
|
|
33
|
-
extent: o.extent
|
|
34
|
-
});
|
|
35
|
-
t.setView(i), n(() => o.zoom, (e) => {
|
|
36
|
-
i.setZoom(e);
|
|
37
|
-
}, {
|
|
38
|
-
immediate: !0
|
|
39
|
-
}), n(() => o.center, (e) => {
|
|
40
|
-
i.setCenter(e);
|
|
41
|
-
}, {
|
|
42
|
-
immediate: !0
|
|
43
|
-
}), n(() => o.constrainResolution, (e) => {
|
|
44
|
-
i.setConstrainResolution(e);
|
|
45
|
-
}, {
|
|
46
|
-
immediate: !0
|
|
47
|
-
}), n(() => o.minZoom, (e) => {
|
|
48
|
-
e && i.setMinZoom(e);
|
|
49
|
-
}, {
|
|
50
|
-
immediate: !0
|
|
51
|
-
}), n(() => o.maxZoom, (e) => {
|
|
52
|
-
e && i.setMaxZoom(e);
|
|
53
|
-
}, {
|
|
54
|
-
immediate: !0
|
|
55
|
-
}), n(s, (e) => {
|
|
56
|
-
e && t.setTarget(e);
|
|
57
|
-
}), k({
|
|
58
|
-
olMap: t
|
|
59
|
-
}), V(H, t);
|
|
60
|
-
const r = t.getControls().getArray(), x = r.find((e) => e instanceof p) || new p(), P = r.find((e) => e instanceof w) || new w(), D = r.find((e) => e instanceof h) || new h(), _ = r.find((e) => e instanceof Z) || new Z(), j = r.find((e) => e instanceof v) || new v(), W = r.find((e) => e instanceof y) || new y();
|
|
61
|
-
n(() => o.showZoom, (e) => {
|
|
62
|
-
x.setMap(e ? t : null);
|
|
63
|
-
}, {
|
|
64
|
-
immediate: !0
|
|
65
|
-
}), n(() => o.showAttribution, (e) => {
|
|
66
|
-
P.setMap(e ? t : null);
|
|
67
|
-
}, {
|
|
68
|
-
immediate: !0
|
|
69
|
-
}), n(() => o.showRotate, (e) => {
|
|
70
|
-
D.setMap(e ? t : null);
|
|
71
|
-
}, {
|
|
72
|
-
immediate: !0
|
|
73
|
-
}), n(() => o.showFullScreen, (e) => {
|
|
74
|
-
_.setMap(e ? t : null);
|
|
75
|
-
}, {
|
|
76
|
-
immediate: !0
|
|
77
|
-
}), n(() => o.showOverview, (e) => {
|
|
78
|
-
j.setMap(e ? t : null);
|
|
79
|
-
}, {
|
|
80
|
-
immediate: !0
|
|
81
|
-
}), n(() => o.showScale, (e) => {
|
|
82
|
-
W.setMap(e ? t : null);
|
|
83
|
-
}, {
|
|
84
|
-
immediate: !0
|
|
85
|
-
});
|
|
86
|
-
const a = t.getInteractions().getArray(), l = a.find((e) => e instanceof M) || new M(), c = a.find((e) => e instanceof R) || new R(), m = a.find((e) => e instanceof I) || new I(), d = a.find((e) => e instanceof B) || new B(), f = a.find((e) => e instanceof C) || new C(), u = a.find((e) => e instanceof g) || new g(), z = a.find((e) => e instanceof b) || new b(), F = a.find((e) => e instanceof A) || new A();
|
|
87
|
-
return t.removeInteraction(l), t.addInteraction(l), t.removeInteraction(c), t.addInteraction(c), t.removeInteraction(m), t.addInteraction(m), t.removeInteraction(d), t.addInteraction(d), t.removeInteraction(f), t.addInteraction(f), t.removeInteraction(u), t.addInteraction(u), t.removeInteraction(z), t.removeInteraction(F), n(() => o.dragPan, (e) => {
|
|
88
|
-
l.setActive(e);
|
|
89
|
-
}, {
|
|
90
|
-
immediate: !0
|
|
91
|
-
}), n(() => o.mouseWheelZoom, (e) => {
|
|
92
|
-
c.setActive(e);
|
|
93
|
-
}, {
|
|
94
|
-
immediate: !0
|
|
95
|
-
}), n(() => o.doubleClickZoom, (e) => {
|
|
96
|
-
m.setActive(e);
|
|
97
|
-
}, {
|
|
98
|
-
immediate: !0
|
|
99
|
-
}), n(() => o.pinchRotate, (e) => {
|
|
100
|
-
d.setActive(e);
|
|
101
|
-
}, {
|
|
102
|
-
immediate: !0
|
|
103
|
-
}), n(() => o.pinchZoom, (e) => {
|
|
104
|
-
f.setActive(e);
|
|
105
|
-
}, {
|
|
106
|
-
immediate: !0
|
|
107
|
-
}), n(() => o.altShiftDragRotate, (e) => {
|
|
108
|
-
u.setActive(e);
|
|
109
|
-
}, {
|
|
110
|
-
immediate: !0
|
|
111
|
-
}), (e, J) => (L(), E("div", {
|
|
112
|
-
ref_key: "mapRef",
|
|
113
|
-
ref: s
|
|
114
|
-
}, [
|
|
115
|
-
T(e.$slots, "default", {
|
|
116
|
-
olMap: $(t),
|
|
117
|
-
mapRef: s.value
|
|
118
|
-
})
|
|
119
|
-
], 512));
|
|
120
|
-
}
|
|
121
|
-
});
|
|
122
|
-
export {
|
|
123
|
-
ee as default
|
|
124
|
-
};
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { Coordinate } from 'ol/coordinate';
|
|
2
|
-
import { Extent } from 'ol/extent';
|
|
3
|
-
/**
|
|
4
|
-
* 计算已知方位距离的目标点
|
|
5
|
-
* @param coordinates 起点坐标 WGS84 EPSG:4326
|
|
6
|
-
* @param distance 距离,单位为米
|
|
7
|
-
* @param azimuth 方位角,单位为度
|
|
8
|
-
* @returns 目标点坐标 WGS84 EPSG:4326
|
|
9
|
-
*/
|
|
10
|
-
export declare function getDestinationPoint(coordinates: Coordinate, distance: number, azimuth: number): Coordinate;
|
|
11
|
-
/**
|
|
12
|
-
* 计算线段的长度
|
|
13
|
-
* @param coordinates 线段坐标 WGS84 EPSG:4326
|
|
14
|
-
* @returns 线段长度,单位为米
|
|
15
|
-
*/
|
|
16
|
-
export declare function getLineLength(coordinates: Coordinate[]): number;
|
|
17
|
-
/** 计算面积 */
|
|
18
|
-
export declare function getArea(coordinates: Coordinate[][]): number;
|
|
19
|
-
/** 计算2点之间的角度 */
|
|
20
|
-
export declare function getAngle(start: Coordinate, end: Coordinate): number;
|
|
21
|
-
/** 计算2点的中心点 */
|
|
22
|
-
export declare function getCenter(start: Coordinate, end: Coordinate): Coordinate;
|
|
23
|
-
/** 计算Extent中心点 */
|
|
24
|
-
export declare function getExtentCenter(extent: Extent): Coordinate;
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { destination as r, lineString as o, length as i, area as g, polygon as u, bearing as f, midpoint as c } from "@turf/turf";
|
|
2
|
-
import { toTurfAngle as m, toOlAngle as s } from "../format/index.mjs";
|
|
3
|
-
function d(n, t, e) {
|
|
4
|
-
return r(n, t, m(e), { units: "meters" }).geometry.coordinates;
|
|
5
|
-
}
|
|
6
|
-
function A(n) {
|
|
7
|
-
const t = o(n);
|
|
8
|
-
return i(t, { units: "meters" });
|
|
9
|
-
}
|
|
10
|
-
function y(n) {
|
|
11
|
-
return g(u(n));
|
|
12
|
-
}
|
|
13
|
-
function L(n, t) {
|
|
14
|
-
return s(f(n, t));
|
|
15
|
-
}
|
|
16
|
-
function a(n, t) {
|
|
17
|
-
return c(n, t).geometry.coordinates;
|
|
18
|
-
}
|
|
19
|
-
function h(n) {
|
|
20
|
-
return a([n[0], n[1]], [n[2], n[3]]);
|
|
21
|
-
}
|
|
22
|
-
export {
|
|
23
|
-
L as getAngle,
|
|
24
|
-
y as getArea,
|
|
25
|
-
a as getCenter,
|
|
26
|
-
d as getDestinationPoint,
|
|
27
|
-
h as getExtentCenter,
|
|
28
|
-
A as getLineLength
|
|
29
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { Coordinate } from 'ol/coordinate';
|
|
2
|
-
/**
|
|
3
|
-
* 获取一个地理圆形的坐标点
|
|
4
|
-
* @param coordinate 中心坐标 EPSG:4326 WGS84
|
|
5
|
-
* @param radius 单位:米
|
|
6
|
-
* @param [sides] 边数
|
|
7
|
-
* @returns 伪圆形坐标 EPSG:4326 WGS84
|
|
8
|
-
*/
|
|
9
|
-
export declare function getRealCircleCoordinates(coordinate: Coordinate, radius: number, sides?: number): Coordinate[][];
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("vue"),h=require("ol"),i=require("ol/control"),a=require("ol/interaction"),S=require("./props.js"),P=o.defineComponent({__name:"index",props:{olMap:{default:()=>new h.Map},center:{default:()=>[0,0]},zoom:{default:2},minZoom:{default:2},maxZoom:{default:18},constrainResolution:{type:Boolean,default:!0},projection:{},extent:{},showZoom:{type:Boolean,default:!1},showAttribution:{type:Boolean,default:!1},showRotate:{type:Boolean,default:!1},showFullScreen:{type:Boolean,default:!1},showOverview:{type:Boolean,default:!1},showScale:{type:Boolean,default:!1},dragPan:{type:Boolean,default:!0},mouseWheelZoom:{type:Boolean,default:!0},doubleClickZoom:{type:Boolean,default:!1},pinchRotate:{type:Boolean},pinchZoom:{type:Boolean},altShiftDragRotate:{type:Boolean}},setup(Z,{expose:v}){const n=Z,s=o.ref(),t=n.olMap,c=new h.View({projection:n.projection,extent:n.extent});t.setView(c),o.watch(()=>n.zoom,e=>{c.setZoom(e)},{immediate:!0}),o.watch(()=>n.center,e=>{c.setCenter(e)},{immediate:!0}),o.watch(()=>n.constrainResolution,e=>{c.setConstrainResolution(e)},{immediate:!0}),o.watch(()=>n.minZoom,e=>{e&&c.setMinZoom(e)},{immediate:!0}),o.watch(()=>n.maxZoom,e=>{e&&c.setMaxZoom(e)},{immediate:!0}),o.watch(s,e=>{e&&t.setTarget(e)}),v({olMap:t}),o.provide(S.olMapInjectionKey,t);const l=t.getControls().getArray(),y=l.find(e=>e instanceof i.Zoom)||new i.Zoom,M=l.find(e=>e instanceof i.Attribution)||new i.Attribution,R=l.find(e=>e instanceof i.Rotate)||new i.Rotate,b=l.find(e=>e instanceof i.FullScreen)||new i.FullScreen,g=l.find(e=>e instanceof i.OverviewMap)||new i.OverviewMap,I=l.find(e=>e instanceof i.ScaleLine)||new i.ScaleLine;o.watch(()=>n.showZoom,e=>{y.setMap(e?t:null)},{immediate:!0}),o.watch(()=>n.showAttribution,e=>{M.setMap(e?t:null)},{immediate:!0}),o.watch(()=>n.showRotate,e=>{R.setMap(e?t:null)},{immediate:!0}),o.watch(()=>n.showFullScreen,e=>{b.setMap(e?t:null)},{immediate:!0}),o.watch(()=>n.showOverview,e=>{g.setMap(e?t:null)},{immediate:!0}),o.watch(()=>n.showScale,e=>{I.setMap(e?t:null)},{immediate:!0});const r=t.getInteractions().getArray(),m=r.find(e=>e instanceof a.DragPan)||new a.DragPan,u=r.find(e=>e instanceof a.MouseWheelZoom)||new a.MouseWheelZoom,d=r.find(e=>e instanceof a.DoubleClickZoom)||new a.DoubleClickZoom,f=r.find(e=>e instanceof a.PinchRotate)||new a.PinchRotate,w=r.find(e=>e instanceof a.PinchZoom)||new a.PinchZoom,p=r.find(e=>e instanceof a.DragRotate)||new a.DragRotate,B=r.find(e=>e instanceof a.KeyboardPan)||new a.KeyboardPan,C=r.find(e=>e instanceof a.KeyboardZoom)||new a.KeyboardZoom;return t.removeInteraction(m),t.addInteraction(m),t.removeInteraction(u),t.addInteraction(u),t.removeInteraction(d),t.addInteraction(d),t.removeInteraction(f),t.addInteraction(f),t.removeInteraction(w),t.addInteraction(w),t.removeInteraction(p),t.addInteraction(p),t.removeInteraction(B),t.removeInteraction(C),o.watch(()=>n.dragPan,e=>{m.setActive(e)},{immediate:!0}),o.watch(()=>n.mouseWheelZoom,e=>{u.setActive(e)},{immediate:!0}),o.watch(()=>n.doubleClickZoom,e=>{d.setActive(e)},{immediate:!0}),o.watch(()=>n.pinchRotate,e=>{f.setActive(e)},{immediate:!0}),o.watch(()=>n.pinchZoom,e=>{w.setActive(e)},{immediate:!0}),o.watch(()=>n.altShiftDragRotate,e=>{p.setActive(e)},{immediate:!0}),(e,A)=>(o.openBlock(),o.createElementBlock("div",{ref_key:"mapRef",ref:s},[o.renderSlot(e.$slots,"default",{olMap:o.unref(t),mapRef:s.value})],512))}});exports.default=P;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./index.vue.js");exports.default=e.default;
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { Coordinate } from 'ol/coordinate';
|
|
2
|
-
import { Extent } from 'ol/extent';
|
|
3
|
-
/**
|
|
4
|
-
* 计算已知方位距离的目标点
|
|
5
|
-
* @param coordinates 起点坐标 WGS84 EPSG:4326
|
|
6
|
-
* @param distance 距离,单位为米
|
|
7
|
-
* @param azimuth 方位角,单位为度
|
|
8
|
-
* @returns 目标点坐标 WGS84 EPSG:4326
|
|
9
|
-
*/
|
|
10
|
-
export declare function getDestinationPoint(coordinates: Coordinate, distance: number, azimuth: number): Coordinate;
|
|
11
|
-
/**
|
|
12
|
-
* 计算线段的长度
|
|
13
|
-
* @param coordinates 线段坐标 WGS84 EPSG:4326
|
|
14
|
-
* @returns 线段长度,单位为米
|
|
15
|
-
*/
|
|
16
|
-
export declare function getLineLength(coordinates: Coordinate[]): number;
|
|
17
|
-
/** 计算面积 */
|
|
18
|
-
export declare function getArea(coordinates: Coordinate[][]): number;
|
|
19
|
-
/** 计算2点之间的角度 */
|
|
20
|
-
export declare function getAngle(start: Coordinate, end: Coordinate): number;
|
|
21
|
-
/** 计算2点的中心点 */
|
|
22
|
-
export declare function getCenter(start: Coordinate, end: Coordinate): Coordinate;
|
|
23
|
-
/** 计算Extent中心点 */
|
|
24
|
-
export declare function getExtentCenter(extent: Extent): Coordinate;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("@turf/turf"),r=require("../format/index.js");function g(e,t,o){return n.destination(e,t,r.toTurfAngle(o),{units:"meters"}).geometry.coordinates}function u(e){const t=n.lineString(e);return n.length(t,{units:"meters"})}function s(e){return n.area(n.polygon(e))}function c(e,t){return r.toOlAngle(n.bearing(e,t))}function i(e,t){return n.midpoint(e,t).geometry.coordinates}function a(e){return i([e[0],e[1]],[e[2],e[3]])}exports.getAngle=c;exports.getArea=s;exports.getCenter=i;exports.getDestinationPoint=g;exports.getExtentCenter=a;exports.getLineLength=u;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});function t(r){return r<0?t(r+360):r>360?t(r-360):r}function e(r){return r<-180?e(r+360):r>180?e(r-360):r}exports.toOlAngle=t;exports.toTurfAngle=e;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { Coordinate } from 'ol/coordinate';
|
|
2
|
-
/**
|
|
3
|
-
* 获取一个地理圆形的坐标点
|
|
4
|
-
* @param coordinate 中心坐标 EPSG:4326 WGS84
|
|
5
|
-
* @param radius 单位:米
|
|
6
|
-
* @param [sides] 边数
|
|
7
|
-
* @returns 伪圆形坐标 EPSG:4326 WGS84
|
|
8
|
-
*/
|
|
9
|
-
export declare function getRealCircleCoordinates(coordinate: Coordinate, radius: number, sides?: number): Coordinate[][];
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("../calculate/index.js");function c(o,i,n=60){const t=[],r=360/n;for(let e=-180;e<180;e=e+r)t.push(s.getDestinationPoint(o,i,e));return[t]}exports.getRealCircleCoordinates=c;
|