map-ol-utils 0.0.61 → 0.0.63

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/dist/index.cjs CHANGED
@@ -88,6 +88,7 @@ __export(index_exports, {
88
88
  getMapInstance: () => getMapInstance,
89
89
  instance: () => instance,
90
90
  removeAllLayers: () => removeAllLayers,
91
+ removeLayerByName: () => removeLayerByName,
91
92
  resetActiveFeature: () => resetActiveFeature,
92
93
  resetActiveVector: () => resetActiveVector,
93
94
  resetMap: () => resetMap,
@@ -121,6 +122,7 @@ var import_control = require("ol/control");
121
122
  // src/layer-utils.ts
122
123
  var import_format = require("ol/format");
123
124
  var import_ol = require("ol");
125
+ var import_extent = require("ol/extent");
124
126
  var import_interaction = require("ol/interaction");
125
127
  var import_gcoord = __toESM(require("gcoord"), 1);
126
128
  var import_Vector = __toESM(require("ol/layer/Vector"), 1);
@@ -128,7 +130,6 @@ var import_Vector2 = __toESM(require("ol/source/Vector"), 1);
128
130
  var import_geom = require("ol/geom");
129
131
  var import_condition = require("ol/events/condition");
130
132
  var import_style = require("ol/style");
131
- var import_extent = require("ol/extent");
132
133
  var removeOverlays = (key = "") => {
133
134
  if (instance) {
134
135
  const overlays = instance.getOverlays().getArray().filter((overlay) => overlay.get(key || "position"));
@@ -264,7 +265,7 @@ var createVectorStyle = (feature, config) => {
264
265
  return unActiveStyle;
265
266
  };
266
267
  var createBusinessLayer = (dataList, config) => {
267
- const { layerName, openClick } = config;
268
+ const { isAutoFit, layerName, openClick } = config;
268
269
  const geoJson = assembleGeoJson(dataList, config);
269
270
  const vectorLayer = new import_Vector.default({
270
271
  zIndex: 5,
@@ -281,6 +282,7 @@ var createBusinessLayer = (dataList, config) => {
281
282
  }
282
283
  vectorLayer.setProperties({
283
284
  _isCustom: true,
285
+ _isAutoFit: isAutoFit,
284
286
  _isVectorLayer: true,
285
287
  _vectorConfig: config,
286
288
  _layerName: layerName,
@@ -448,12 +450,15 @@ var createSelectByLayer = (vectorLayer) => {
448
450
  );
449
451
  }, 1e3);
450
452
  }
451
- const view = instance.getView();
452
- view.animate({
453
- duration: 1e3,
454
- center: (0, import_extent.getCenter)(feature.getGeometry().getExtent()),
455
- zoom: vectorLayer.get("_isAutoFit") ? view.getZoom() : 12
456
- });
453
+ const isAutoFit = vectorLayer.get("_isAutoFit");
454
+ if (isAutoFit) {
455
+ const view = instance.getView();
456
+ view.animate({
457
+ duration: 1e3,
458
+ zoom: view.getZoom(),
459
+ center: (0, import_extent.getCenter)(feature.getGeometry().getExtent())
460
+ });
461
+ }
457
462
  }
458
463
  if (deselected.length) {
459
464
  const feature = deselected[0];
@@ -776,9 +781,7 @@ var createMapInstance = (config = {}) => {
776
781
  instance.removeLayerByName = removeLayerByName;
777
782
  instance.changeLayersByNames = changeLayersByNames;
778
783
  instance.on("pointermove", (evt) => {
779
- instance.getTargetElement().style.cursor = instance.hasFeatureAtPixel(
780
- evt.pixel
781
- ) ? "pointer" : "";
784
+ instance.getTargetElement().style.cursor = instance.hasFeatureAtPixel(evt.pixel) ? "pointer" : "";
782
785
  });
783
786
  return instance;
784
787
  };
@@ -943,6 +946,7 @@ var createWmtsLayer = (serverUrl) => (config) => __async(null, null, function* (
943
946
  getMapInstance,
944
947
  instance,
945
948
  removeAllLayers,
949
+ removeLayerByName,
946
950
  resetActiveFeature,
947
951
  resetActiveVector,
948
952
  resetMap,
package/dist/index.d.cts CHANGED
@@ -31,6 +31,7 @@ type VectorConfig = {
31
31
  layerName?: string;
32
32
  openClick?: boolean;
33
33
  fillColor?: string;
34
+ isAutoFit?: boolean;
34
35
  crsForm?: CRSTypes;
35
36
  fillOpacity?: number;
36
37
  strokeColor?: string;
@@ -63,15 +64,10 @@ type MassData = {
63
64
  status: string;
64
65
  width?: number;
65
66
  height?: number;
66
- itemName: string;
67
67
  crsForm?: CRSTypes;
68
68
  rawData: {
69
69
  [key: string]: any;
70
70
  };
71
- imgList: {
72
- text: string;
73
- icon: string;
74
- }[];
75
71
  lnglat: [string, string] | [number, number];
76
72
  };
77
73
  type WmtsSourceOptions = {
@@ -111,6 +107,11 @@ declare const createBaseLayer: (isDark?: boolean) => Tile<XYZ>;
111
107
  * @param tk - 天地图TK
112
108
  */
113
109
  declare const createMapWorldLayer: (layerName: string, tk?: string) => Tile<WMTS>;
110
+ /**
111
+ * 根据图层名称删除图层
112
+ * @param name
113
+ */
114
+ declare const removeLayerByName: (name: string) => void;
114
115
 
115
116
  declare let instance: CustomMap;
116
117
  declare const createMapInstance: (config?: {}) => CustomMap;
@@ -199,4 +200,4 @@ declare const addMassMarksLayer: (getImgUrlFn: GetImgUrlFn) => (dataList: never[
199
200
  */
200
201
  declare const updateMarksLayersByStatus: (checkedStatusList?: string[]) => MassData[];
201
202
 
202
- export { type CustomMap, type GeometryCoordinates, GeometryType, type GetImgUrl, type GetImgUrlFn, type IconConfig, type MassData, type VectorConfig, type WmtsSourceOptions, activeFeatureByUid, addMassMarksLayer, appendFeaturesByLayer, buildMassMarksStyles, createAnimationMarker, createBaseLayer, createBusinessLayer, createMapInstance, createMapWorldLayer, createMassMarksLayer, createSelectByLayer, createVectorFaceLayer, createVectorLineLayer, createWmtsLayer, disposeMap, emitter, getLayersDataList, getMapInstance, instance, removeAllLayers, resetActiveFeature, resetActiveVector, resetMap, resetZoomAndCenter, setFitViewByGeom, setFitViewByLayer, updateMarksLayersByStatus };
203
+ export { type CustomMap, type GeometryCoordinates, GeometryType, type GetImgUrl, type GetImgUrlFn, type IconConfig, type MassData, type VectorConfig, type WmtsSourceOptions, activeFeatureByUid, addMassMarksLayer, appendFeaturesByLayer, buildMassMarksStyles, createAnimationMarker, createBaseLayer, createBusinessLayer, createMapInstance, createMapWorldLayer, createMassMarksLayer, createSelectByLayer, createVectorFaceLayer, createVectorLineLayer, createWmtsLayer, disposeMap, emitter, getLayersDataList, getMapInstance, instance, removeAllLayers, removeLayerByName, resetActiveFeature, resetActiveVector, resetMap, resetZoomAndCenter, setFitViewByGeom, setFitViewByLayer, updateMarksLayersByStatus };
package/dist/index.d.ts CHANGED
@@ -31,6 +31,7 @@ type VectorConfig = {
31
31
  layerName?: string;
32
32
  openClick?: boolean;
33
33
  fillColor?: string;
34
+ isAutoFit?: boolean;
34
35
  crsForm?: CRSTypes;
35
36
  fillOpacity?: number;
36
37
  strokeColor?: string;
@@ -63,15 +64,10 @@ type MassData = {
63
64
  status: string;
64
65
  width?: number;
65
66
  height?: number;
66
- itemName: string;
67
67
  crsForm?: CRSTypes;
68
68
  rawData: {
69
69
  [key: string]: any;
70
70
  };
71
- imgList: {
72
- text: string;
73
- icon: string;
74
- }[];
75
71
  lnglat: [string, string] | [number, number];
76
72
  };
77
73
  type WmtsSourceOptions = {
@@ -111,6 +107,11 @@ declare const createBaseLayer: (isDark?: boolean) => Tile<XYZ>;
111
107
  * @param tk - 天地图TK
112
108
  */
113
109
  declare const createMapWorldLayer: (layerName: string, tk?: string) => Tile<WMTS>;
110
+ /**
111
+ * 根据图层名称删除图层
112
+ * @param name
113
+ */
114
+ declare const removeLayerByName: (name: string) => void;
114
115
 
115
116
  declare let instance: CustomMap;
116
117
  declare const createMapInstance: (config?: {}) => CustomMap;
@@ -199,4 +200,4 @@ declare const addMassMarksLayer: (getImgUrlFn: GetImgUrlFn) => (dataList: never[
199
200
  */
200
201
  declare const updateMarksLayersByStatus: (checkedStatusList?: string[]) => MassData[];
201
202
 
202
- export { type CustomMap, type GeometryCoordinates, GeometryType, type GetImgUrl, type GetImgUrlFn, type IconConfig, type MassData, type VectorConfig, type WmtsSourceOptions, activeFeatureByUid, addMassMarksLayer, appendFeaturesByLayer, buildMassMarksStyles, createAnimationMarker, createBaseLayer, createBusinessLayer, createMapInstance, createMapWorldLayer, createMassMarksLayer, createSelectByLayer, createVectorFaceLayer, createVectorLineLayer, createWmtsLayer, disposeMap, emitter, getLayersDataList, getMapInstance, instance, removeAllLayers, resetActiveFeature, resetActiveVector, resetMap, resetZoomAndCenter, setFitViewByGeom, setFitViewByLayer, updateMarksLayersByStatus };
203
+ export { type CustomMap, type GeometryCoordinates, GeometryType, type GetImgUrl, type GetImgUrlFn, type IconConfig, type MassData, type VectorConfig, type WmtsSourceOptions, activeFeatureByUid, addMassMarksLayer, appendFeaturesByLayer, buildMassMarksStyles, createAnimationMarker, createBaseLayer, createBusinessLayer, createMapInstance, createMapWorldLayer, createMassMarksLayer, createSelectByLayer, createVectorFaceLayer, createVectorLineLayer, createWmtsLayer, disposeMap, emitter, getLayersDataList, getMapInstance, instance, removeAllLayers, removeLayerByName, resetActiveFeature, resetActiveVector, resetMap, resetZoomAndCenter, setFitViewByGeom, setFitViewByLayer, updateMarksLayersByStatus };
package/dist/index.js CHANGED
@@ -61,6 +61,7 @@ import { defaults } from "ol/control";
61
61
  // src/layer-utils.ts
62
62
  import { GeoJSON } from "ol/format";
63
63
  import { Feature, Overlay } from "ol";
64
+ import { getCenter } from "ol/extent";
64
65
  import { Select } from "ol/interaction";
65
66
  import gcoord from "gcoord";
66
67
  import VectorLayer from "ol/layer/Vector";
@@ -68,7 +69,6 @@ import VectorSource from "ol/source/Vector";
68
69
  import { Point } from "ol/geom";
69
70
  import { singleClick } from "ol/events/condition";
70
71
  import { Fill, Icon, Stroke, Style } from "ol/style";
71
- import { getCenter } from "ol/extent";
72
72
  var removeOverlays = (key = "") => {
73
73
  if (instance) {
74
74
  const overlays = instance.getOverlays().getArray().filter((overlay) => overlay.get(key || "position"));
@@ -204,7 +204,7 @@ var createVectorStyle = (feature, config) => {
204
204
  return unActiveStyle;
205
205
  };
206
206
  var createBusinessLayer = (dataList, config) => {
207
- const { layerName, openClick } = config;
207
+ const { isAutoFit, layerName, openClick } = config;
208
208
  const geoJson = assembleGeoJson(dataList, config);
209
209
  const vectorLayer = new VectorLayer({
210
210
  zIndex: 5,
@@ -221,6 +221,7 @@ var createBusinessLayer = (dataList, config) => {
221
221
  }
222
222
  vectorLayer.setProperties({
223
223
  _isCustom: true,
224
+ _isAutoFit: isAutoFit,
224
225
  _isVectorLayer: true,
225
226
  _vectorConfig: config,
226
227
  _layerName: layerName,
@@ -388,12 +389,15 @@ var createSelectByLayer = (vectorLayer) => {
388
389
  );
389
390
  }, 1e3);
390
391
  }
391
- const view = instance.getView();
392
- view.animate({
393
- duration: 1e3,
394
- center: getCenter(feature.getGeometry().getExtent()),
395
- zoom: vectorLayer.get("_isAutoFit") ? view.getZoom() : 12
396
- });
392
+ const isAutoFit = vectorLayer.get("_isAutoFit");
393
+ if (isAutoFit) {
394
+ const view = instance.getView();
395
+ view.animate({
396
+ duration: 1e3,
397
+ zoom: view.getZoom(),
398
+ center: getCenter(feature.getGeometry().getExtent())
399
+ });
400
+ }
397
401
  }
398
402
  if (deselected.length) {
399
403
  const feature = deselected[0];
@@ -716,9 +720,7 @@ var createMapInstance = (config = {}) => {
716
720
  instance.removeLayerByName = removeLayerByName;
717
721
  instance.changeLayersByNames = changeLayersByNames;
718
722
  instance.on("pointermove", (evt) => {
719
- instance.getTargetElement().style.cursor = instance.hasFeatureAtPixel(
720
- evt.pixel
721
- ) ? "pointer" : "";
723
+ instance.getTargetElement().style.cursor = instance.hasFeatureAtPixel(evt.pixel) ? "pointer" : "";
722
724
  });
723
725
  return instance;
724
726
  };
@@ -882,6 +884,7 @@ export {
882
884
  getMapInstance,
883
885
  instance,
884
886
  removeAllLayers,
887
+ removeLayerByName,
885
888
  resetActiveFeature,
886
889
  resetActiveVector,
887
890
  resetMap,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "map-ol-utils",
3
- "version": "0.0.61",
3
+ "version": "0.0.63",
4
4
  "type": "module",
5
5
  "description": "Openlayers utils library",
6
6
  "files": [