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 +26 -14
- package/dist/index.d.cts +5 -2
- package/dist/index.d.ts +5 -2
- package/dist/index.js +26 -14
- package/package.json +1 -1
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,
|
|
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
|
|
180
|
+
return import_gcoord.default.transform(
|
|
181
181
|
{ type: "FeatureCollection", features: tempList },
|
|
182
|
-
import_gcoord.default.
|
|
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,
|
|
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(
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
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(
|
|
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
|
|
133
|
+
* @param crsForm
|
|
131
134
|
*/
|
|
132
|
-
declare const appendFeaturesByLayer: (targetLayer: VectorLayer, dataList: MassData[],
|
|
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
|
|
133
|
+
* @param crsForm
|
|
131
134
|
*/
|
|
132
|
-
declare const appendFeaturesByLayer: (targetLayer: VectorLayer, dataList: MassData[],
|
|
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,
|
|
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
|
|
122
|
+
return gcoord.transform(
|
|
123
123
|
{ type: "FeatureCollection", features: tempList },
|
|
124
|
-
gcoord.
|
|
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,
|
|
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(
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
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(
|
|
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
|
);
|