map-ol-utils 0.0.39 → 0.0.41

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
@@ -117,12 +117,12 @@ var import_View = __toESM(require("ol/View"), 1);
117
117
  var import_control = require("ol/control");
118
118
 
119
119
  // src/layer-utils.ts
120
- var import_gcoord = __toESM(require("gcoord"), 1);
121
120
  var import_geom = require("ol/geom");
122
121
  var import_format = require("ol/format");
123
122
  var import_extent = require("ol/extent");
124
123
  var import_ol = require("ol");
125
124
  var import_interaction = require("ol/interaction");
125
+ var import_gcoord = __toESM(require("gcoord"), 1);
126
126
  var import_Vector = __toESM(require("ol/layer/Vector"), 1);
127
127
  var import_Vector2 = __toESM(require("ol/source/Vector"), 1);
128
128
  var import_condition = require("ol/events/condition");
@@ -158,7 +158,7 @@ var resetActiveVector = () => {
158
158
  });
159
159
  };
160
160
  var assembleGeoJson = (dataList, config) => {
161
- const { key, needTransform = true } = config;
161
+ const { key, crsForm } = config;
162
162
  const tempList = [];
163
163
  dataList.forEach((item) => {
164
164
  try {
@@ -177,9 +177,9 @@ var assembleGeoJson = (dataList, config) => {
177
177
  console.error(`\u521B\u5EFA\u7EBF\u72B6\u6570\u636E\u5931\u8D25\uFF1A${e}`);
178
178
  }
179
179
  });
180
- return !needTransform ? { type: "FeatureCollection", features: tempList } : import_gcoord.default.transform(
180
+ return import_gcoord.default.transform(
181
181
  { type: "FeatureCollection", features: tempList },
182
- import_gcoord.default.GCJ02,
182
+ crsForm || import_gcoord.default.WGS84,
183
183
  import_gcoord.default.WGS84
184
184
  );
185
185
  };
@@ -265,20 +265,25 @@ var createBusinessLayer = (dataList, config) => {
265
265
  });
266
266
  return vectorLayer;
267
267
  };
268
- var appendFeaturesByLayer = (targetLayer, dataList, needTransform = false) => {
268
+ var appendFeaturesByLayer = (targetLayer, dataList, crsForm) => {
269
269
  const vectorSource = targetLayer.getSource();
270
270
  const tempSet = targetLayer.get("_uuidSet") || /* @__PURE__ */ new Set();
271
271
  dataList.forEach((item) => tempSet.add(item._uuid));
272
272
  targetLayer.set("_uuidSet", tempSet);
273
273
  const { _vectorConfig: config } = targetLayer.getProperties() || {};
274
- const geoJson = assembleGeoJson(dataList, Object.assign({}, config, { needTransform }));
275
- vectorSource.addFeatures(new import_format.GeoJSON().readFeatures(geoJson).map((feature) => {
276
- feature.setStyle(createVectorStyle(feature, config));
277
- return feature;
278
- }));
274
+ const geoJson = assembleGeoJson(
275
+ dataList,
276
+ Object.assign({}, config, { crsForm })
277
+ );
278
+ vectorSource.addFeatures(
279
+ new import_format.GeoJSON().readFeatures(geoJson).map((feature) => {
280
+ feature.setStyle(createVectorStyle(feature, config));
281
+ return feature;
282
+ })
283
+ );
279
284
  };
280
- var createVectorFaceLayer = (dataList = [], config) => createBusinessLayer(dataList, Object.assign(config, { isLine: false }));
281
- var createVectorLineLayer = (dataList = [], config) => createBusinessLayer(dataList, Object.assign(config, { isLine: true }));
285
+ var createVectorFaceLayer = (dataList = [], config) => createBusinessLayer(dataList, Object.assign({}, config, { isLine: false }));
286
+ var createVectorLineLayer = (dataList = [], config) => createBusinessLayer(dataList, Object.assign({}, config, { isLine: true }));
282
287
  var removeAllLayers = (isClearAll = true) => {
283
288
  removeOverlays();
284
289
  console.log(isClearAll);
@@ -311,7 +316,7 @@ var activeFeatureByUid = (uid) => {
311
316
  const targetLayers = instance.getAllLayers().filter((layer) => layer.get("_isVectorLayer"));
312
317
  if (targetLayers.length) {
313
318
  const targetLayer = targetLayers.find(
314
- (layer) => layer.get("_uuidSet").has(uid)
319
+ (layer) => layer.get("_uuidSet").has(uid) && layer.get("_selectInteraction")
315
320
  );
316
321
  if (targetLayer) {
317
322
  const tempList = ((_a = targetLayer.getSource()) == null ? void 0 : _a.getFeatures()) || [];
@@ -437,8 +442,14 @@ var createSelectByLayer = (vectorLayer) => {
437
442
  };
438
443
  var createMassMarksLayer = (dataList, styleList = []) => {
439
444
  const features = dataList.map((item) => {
445
+ const { crsForm } = item;
446
+ const coord = import_gcoord.default.transform(
447
+ [+item.lnglat[0], +item.lnglat[1]],
448
+ crsForm || import_gcoord.default.WGS84,
449
+ import_gcoord.default.WGS84
450
+ );
440
451
  const feature = new import_ol.Feature({
441
- geometry: new import_geom.Point([+item.lnglat[0], +item.lnglat[1]])
452
+ geometry: new import_geom.Point(coord)
442
453
  });
443
454
  feature.setProperties(__spreadProps(__spreadValues({}, item), {
444
455
  unActiveStyle: styleList[item.style],
@@ -493,6 +504,7 @@ var addMassMarksLayer = (getImgUrlFn) => {
493
504
  key: "line",
494
505
  isLine: true,
495
506
  openClick: false,
507
+ strokeWeight: 4,
496
508
  strokeColor: "rgba(29, 235, 255, 0.8)"
497
509
  }
498
510
  );
package/dist/index.d.cts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { Layer, Tile } from 'ol/layer';
2
2
  import { Map as Map$1, Feature } from 'ol';
3
+ import { CRSTypes } from 'gcoord';
3
4
  import { Source, XYZ, WMTS } from 'ol/source';
4
5
  import { Coordinate } from 'ol/coordinate';
5
6
  import { Emitter, EventType } from 'mitt';
@@ -29,6 +30,7 @@ type VectorConfig = {
29
30
  layerName?: string;
30
31
  openClick?: boolean;
31
32
  fillColor?: string;
33
+ crsForm?: CRSTypes;
32
34
  fillOpacity?: number;
33
35
  strokeColor?: string;
34
36
  strokeStyle?: string;
@@ -60,6 +62,7 @@ type MassData = {
60
62
  width?: number;
61
63
  height?: number;
62
64
  itemName: string;
65
+ crsForm?: CRSTypes;
63
66
  rawData: {
64
67
  [key: string]: any;
65
68
  };
@@ -127,9 +130,9 @@ declare const createBusinessLayer: (dataList: MassData[], config: VectorConfig)
127
130
  * 追加Features
128
131
  * @param targetLayer
129
132
  * @param dataList
130
- * @param needTransform
133
+ * @param crsForm
131
134
  */
132
- declare const appendFeaturesByLayer: (targetLayer: VectorLayer, dataList: MassData[], needTransform?: boolean) => void;
135
+ declare const appendFeaturesByLayer: (targetLayer: VectorLayer, dataList: MassData[], crsForm: CRSTypes) => void;
133
136
  /**
134
137
  * 创建面状数据
135
138
  * @param dataList
package/dist/index.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { Layer, Tile } from 'ol/layer';
2
2
  import { Map as Map$1, Feature } from 'ol';
3
+ import { CRSTypes } from 'gcoord';
3
4
  import { Source, XYZ, WMTS } from 'ol/source';
4
5
  import { Coordinate } from 'ol/coordinate';
5
6
  import { Emitter, EventType } from 'mitt';
@@ -29,6 +30,7 @@ type VectorConfig = {
29
30
  layerName?: string;
30
31
  openClick?: boolean;
31
32
  fillColor?: string;
33
+ crsForm?: CRSTypes;
32
34
  fillOpacity?: number;
33
35
  strokeColor?: string;
34
36
  strokeStyle?: string;
@@ -60,6 +62,7 @@ type MassData = {
60
62
  width?: number;
61
63
  height?: number;
62
64
  itemName: string;
65
+ crsForm?: CRSTypes;
63
66
  rawData: {
64
67
  [key: string]: any;
65
68
  };
@@ -127,9 +130,9 @@ declare const createBusinessLayer: (dataList: MassData[], config: VectorConfig)
127
130
  * 追加Features
128
131
  * @param targetLayer
129
132
  * @param dataList
130
- * @param needTransform
133
+ * @param crsForm
131
134
  */
132
- declare const appendFeaturesByLayer: (targetLayer: VectorLayer, dataList: MassData[], needTransform?: boolean) => void;
135
+ declare const appendFeaturesByLayer: (targetLayer: VectorLayer, dataList: MassData[], crsForm: CRSTypes) => void;
133
136
  /**
134
137
  * 创建面状数据
135
138
  * @param dataList
package/dist/index.js CHANGED
@@ -59,12 +59,12 @@ import View from "ol/View";
59
59
  import { defaults } from "ol/control";
60
60
 
61
61
  // src/layer-utils.ts
62
- import gcoord from "gcoord";
63
62
  import { Point } from "ol/geom";
64
63
  import { GeoJSON } from "ol/format";
65
64
  import { getCenter } from "ol/extent";
66
65
  import { Feature, Overlay } from "ol";
67
66
  import { Select } from "ol/interaction";
67
+ import gcoord from "gcoord";
68
68
  import VectorLayer from "ol/layer/Vector";
69
69
  import VectorSource from "ol/source/Vector";
70
70
  import { click } from "ol/events/condition";
@@ -100,7 +100,7 @@ var resetActiveVector = () => {
100
100
  });
101
101
  };
102
102
  var assembleGeoJson = (dataList, config) => {
103
- const { key, needTransform = true } = config;
103
+ const { key, crsForm } = config;
104
104
  const tempList = [];
105
105
  dataList.forEach((item) => {
106
106
  try {
@@ -119,9 +119,9 @@ var assembleGeoJson = (dataList, config) => {
119
119
  console.error(`\u521B\u5EFA\u7EBF\u72B6\u6570\u636E\u5931\u8D25\uFF1A${e}`);
120
120
  }
121
121
  });
122
- return !needTransform ? { type: "FeatureCollection", features: tempList } : gcoord.transform(
122
+ return gcoord.transform(
123
123
  { type: "FeatureCollection", features: tempList },
124
- gcoord.GCJ02,
124
+ crsForm || gcoord.WGS84,
125
125
  gcoord.WGS84
126
126
  );
127
127
  };
@@ -207,20 +207,25 @@ var createBusinessLayer = (dataList, config) => {
207
207
  });
208
208
  return vectorLayer;
209
209
  };
210
- var appendFeaturesByLayer = (targetLayer, dataList, needTransform = false) => {
210
+ var appendFeaturesByLayer = (targetLayer, dataList, crsForm) => {
211
211
  const vectorSource = targetLayer.getSource();
212
212
  const tempSet = targetLayer.get("_uuidSet") || /* @__PURE__ */ new Set();
213
213
  dataList.forEach((item) => tempSet.add(item._uuid));
214
214
  targetLayer.set("_uuidSet", tempSet);
215
215
  const { _vectorConfig: config } = targetLayer.getProperties() || {};
216
- const geoJson = assembleGeoJson(dataList, Object.assign({}, config, { needTransform }));
217
- vectorSource.addFeatures(new GeoJSON().readFeatures(geoJson).map((feature) => {
218
- feature.setStyle(createVectorStyle(feature, config));
219
- return feature;
220
- }));
216
+ const geoJson = assembleGeoJson(
217
+ dataList,
218
+ Object.assign({}, config, { crsForm })
219
+ );
220
+ vectorSource.addFeatures(
221
+ new GeoJSON().readFeatures(geoJson).map((feature) => {
222
+ feature.setStyle(createVectorStyle(feature, config));
223
+ return feature;
224
+ })
225
+ );
221
226
  };
222
- var createVectorFaceLayer = (dataList = [], config) => createBusinessLayer(dataList, Object.assign(config, { isLine: false }));
223
- var createVectorLineLayer = (dataList = [], config) => createBusinessLayer(dataList, Object.assign(config, { isLine: true }));
227
+ var createVectorFaceLayer = (dataList = [], config) => createBusinessLayer(dataList, Object.assign({}, config, { isLine: false }));
228
+ var createVectorLineLayer = (dataList = [], config) => createBusinessLayer(dataList, Object.assign({}, config, { isLine: true }));
224
229
  var removeAllLayers = (isClearAll = true) => {
225
230
  removeOverlays();
226
231
  console.log(isClearAll);
@@ -253,7 +258,7 @@ var activeFeatureByUid = (uid) => {
253
258
  const targetLayers = instance.getAllLayers().filter((layer) => layer.get("_isVectorLayer"));
254
259
  if (targetLayers.length) {
255
260
  const targetLayer = targetLayers.find(
256
- (layer) => layer.get("_uuidSet").has(uid)
261
+ (layer) => layer.get("_uuidSet").has(uid) && layer.get("_selectInteraction")
257
262
  );
258
263
  if (targetLayer) {
259
264
  const tempList = ((_a = targetLayer.getSource()) == null ? void 0 : _a.getFeatures()) || [];
@@ -379,8 +384,14 @@ var createSelectByLayer = (vectorLayer) => {
379
384
  };
380
385
  var createMassMarksLayer = (dataList, styleList = []) => {
381
386
  const features = dataList.map((item) => {
387
+ const { crsForm } = item;
388
+ const coord = gcoord.transform(
389
+ [+item.lnglat[0], +item.lnglat[1]],
390
+ crsForm || gcoord.WGS84,
391
+ gcoord.WGS84
392
+ );
382
393
  const feature = new Feature({
383
- geometry: new Point([+item.lnglat[0], +item.lnglat[1]])
394
+ geometry: new Point(coord)
384
395
  });
385
396
  feature.setProperties(__spreadProps(__spreadValues({}, item), {
386
397
  unActiveStyle: styleList[item.style],
@@ -435,6 +446,7 @@ var addMassMarksLayer = (getImgUrlFn) => {
435
446
  key: "line",
436
447
  isLine: true,
437
448
  openClick: false,
449
+ strokeWeight: 4,
438
450
  strokeColor: "rgba(29, 235, 255, 0.8)"
439
451
  }
440
452
  );
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "map-ol-utils",
3
- "version": "0.0.39",
3
+ "version": "0.0.41",
4
4
  "type": "module",
5
5
  "description": "Openlayers utils library",
6
6
  "files": [