map-ol-utils 0.0.21 → 0.0.23
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 +33 -28
- package/dist/index.d.cts +27 -31
- package/dist/index.d.ts +27 -31
- package/dist/index.js +32 -27
- package/package.json +3 -5
package/dist/index.cjs
CHANGED
|
@@ -72,7 +72,7 @@ __export(index_exports, {
|
|
|
72
72
|
buildMassMarksStyles: () => buildMassMarksStyles,
|
|
73
73
|
createAnimationMarker: () => createAnimationMarker,
|
|
74
74
|
createBaseLayer: () => createBaseLayer,
|
|
75
|
-
|
|
75
|
+
createBusinessLayer: () => createBusinessLayer,
|
|
76
76
|
createMapInstance: () => createMapInstance,
|
|
77
77
|
createMapWorldLayer: () => createMapWorldLayer,
|
|
78
78
|
createMassMarksLayer: () => createMassMarksLayer,
|
|
@@ -160,6 +160,7 @@ var import_View = __toESM(require("ol/View"), 1);
|
|
|
160
160
|
var import_control = require("ol/control");
|
|
161
161
|
|
|
162
162
|
// src/layer-utils.ts
|
|
163
|
+
var import_gcoord = __toESM(require("gcoord"), 1);
|
|
163
164
|
var import_geom = require("ol/geom");
|
|
164
165
|
var import_format2 = require("ol/format");
|
|
165
166
|
var import_ol = require("ol");
|
|
@@ -220,38 +221,42 @@ var assembleGeoJson = (dataList, config) => {
|
|
|
220
221
|
console.error(`\u521B\u5EFA\u7EBF\u72B6\u6570\u636E\u5931\u8D25\uFF1A${e}`);
|
|
221
222
|
}
|
|
222
223
|
});
|
|
223
|
-
return { type: "FeatureCollection", features: tempList };
|
|
224
|
+
return import_gcoord.default.transform({ type: "FeatureCollection", features: tempList }, import_gcoord.default.GCJ02, import_gcoord.default.WGS84);
|
|
224
225
|
};
|
|
225
|
-
var
|
|
226
|
-
const { isLine,
|
|
226
|
+
var createVectorStyle = (data, config) => {
|
|
227
|
+
const { isLine, colorMap, fillColor, colorKey, strokeColor, strokeWeight } = config || {};
|
|
228
|
+
const style = new import_style.Style({
|
|
229
|
+
stroke: new import_style.Stroke({
|
|
230
|
+
width: strokeWeight,
|
|
231
|
+
color: colorKey ? (colorMap == null ? void 0 : colorMap.get(data[colorKey])) || strokeColor : strokeColor
|
|
232
|
+
})
|
|
233
|
+
});
|
|
234
|
+
if (!isLine) {
|
|
235
|
+
style.setFill(
|
|
236
|
+
new import_style.Fill({
|
|
237
|
+
color: colorKey ? (colorMap == null ? void 0 : colorMap.get(data[colorKey])) || fillColor : fillColor
|
|
238
|
+
})
|
|
239
|
+
);
|
|
240
|
+
}
|
|
241
|
+
return style;
|
|
242
|
+
};
|
|
243
|
+
var createBusinessLayer = (dataList, config) => {
|
|
244
|
+
const { layerName } = config || {};
|
|
227
245
|
const geoJson = assembleGeoJson(dataList, config);
|
|
228
246
|
const vectorLayer = new import_Vector.default({
|
|
229
247
|
className: layerName ? layerName : "ol-layer",
|
|
230
248
|
source: new import_Vector2.default({
|
|
231
|
-
features: new import_format2.GeoJSON().readFeatures(geoJson)
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
stroke: new import_style.Stroke({
|
|
235
|
-
color: "red",
|
|
236
|
-
lineDash: [10],
|
|
237
|
-
width: 3
|
|
238
|
-
})
|
|
239
|
-
}) : new import_style.Style({
|
|
240
|
-
stroke: new import_style.Stroke({
|
|
241
|
-
color: "red",
|
|
242
|
-
lineDash: [10],
|
|
243
|
-
width: 3
|
|
244
|
-
}),
|
|
245
|
-
fill: new import_style.Fill({
|
|
246
|
-
color: "rgba(0, 0, 255, 0.1)"
|
|
249
|
+
features: new import_format2.GeoJSON().readFeatures(geoJson).map((feature) => {
|
|
250
|
+
feature.setStyle(createVectorStyle(feature.getProperties(), config));
|
|
251
|
+
return feature;
|
|
247
252
|
})
|
|
248
253
|
})
|
|
249
254
|
});
|
|
250
255
|
vectorLayer.set("_layerName", layerName);
|
|
251
256
|
return vectorLayer;
|
|
252
257
|
};
|
|
253
|
-
var createVectorFaceLayer = (dataList = [], config) =>
|
|
254
|
-
var createVectorLineLayer = (dataList = [], config) =>
|
|
258
|
+
var createVectorFaceLayer = (dataList = [], config) => createBusinessLayer(dataList, Object.assign(config, { isLine: false }));
|
|
259
|
+
var createVectorLineLayer = (dataList = [], config) => createBusinessLayer(dataList, Object.assign(config, { isLine: true }));
|
|
255
260
|
var removeAllLayers = (isClearAll = true) => {
|
|
256
261
|
removeOverlays();
|
|
257
262
|
console.log(isClearAll);
|
|
@@ -422,7 +427,7 @@ var createMassMarksLayer = (dataList, styleList = []) => {
|
|
|
422
427
|
_isCustom: true,
|
|
423
428
|
_isMassMarksLayer: true,
|
|
424
429
|
_statusNum: styleList.length / 2,
|
|
425
|
-
_dataList: dataList,
|
|
430
|
+
_dataList: [...dataList],
|
|
426
431
|
_uuidSet: new Set(dataList.map((item) => item._uuid) || [])
|
|
427
432
|
});
|
|
428
433
|
return vectorLayer;
|
|
@@ -436,7 +441,8 @@ var addMassMarksLayer = (getImgUrlFn) => {
|
|
|
436
441
|
isDynamic,
|
|
437
442
|
statusNum,
|
|
438
443
|
markerIcon,
|
|
439
|
-
markerSize
|
|
444
|
+
markerSize,
|
|
445
|
+
vectorConfig
|
|
440
446
|
} = iconConfig;
|
|
441
447
|
const massMarksStyles = buildMassMarksStyles(getImgUrlFn)({
|
|
442
448
|
baseUrl,
|
|
@@ -450,7 +456,7 @@ var addMassMarksLayer = (getImgUrlFn) => {
|
|
|
450
456
|
createSelectByLayer(massMarksLayer);
|
|
451
457
|
}
|
|
452
458
|
if (hasLine) {
|
|
453
|
-
const vectorLayer =
|
|
459
|
+
const vectorLayer = createBusinessLayer(dataList, vectorConfig ? vectorConfig : {
|
|
454
460
|
key: "line",
|
|
455
461
|
isLine: true,
|
|
456
462
|
strokeColor: "rgba(29, 235, 255, 0.8)"
|
|
@@ -458,10 +464,9 @@ var addMassMarksLayer = (getImgUrlFn) => {
|
|
|
458
464
|
instance.addLayer(vectorLayer);
|
|
459
465
|
}
|
|
460
466
|
if (hasFace) {
|
|
461
|
-
const vectorLayer =
|
|
467
|
+
const vectorLayer = createBusinessLayer(dataList, vectorConfig ? vectorConfig : {
|
|
462
468
|
isLine: false,
|
|
463
469
|
key: "faceList",
|
|
464
|
-
fillOpacity: 0.1,
|
|
465
470
|
fillColor: "#4247DF",
|
|
466
471
|
strokeWeight: 1,
|
|
467
472
|
strokeStyle: "dashed",
|
|
@@ -686,7 +691,7 @@ var changeLayersByNames = (activeNames, allLayerNames) => {
|
|
|
686
691
|
buildMassMarksStyles,
|
|
687
692
|
createAnimationMarker,
|
|
688
693
|
createBaseLayer,
|
|
689
|
-
|
|
694
|
+
createBusinessLayer,
|
|
690
695
|
createMapInstance,
|
|
691
696
|
createMapWorldLayer,
|
|
692
697
|
createMassMarksLayer,
|
package/dist/index.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Map, Feature } from 'ol';
|
|
2
1
|
import { Layer, Tile } from 'ol/layer';
|
|
2
|
+
import { Map as Map$1, Feature } from 'ol';
|
|
3
3
|
import { Source, XYZ, WMTS } from 'ol/source';
|
|
4
4
|
import { Emitter, EventType } from 'mitt';
|
|
5
5
|
import TileLayer from 'ol/layer/Tile';
|
|
@@ -10,7 +10,7 @@ import VectorLayer from 'ol/layer/Vector';
|
|
|
10
10
|
import { StyleLike } from 'ol/style/Style';
|
|
11
11
|
import VectorSource from 'ol/source/Vector';
|
|
12
12
|
|
|
13
|
-
interface CustomMap extends Map {
|
|
13
|
+
interface CustomMap extends Map$1 {
|
|
14
14
|
activeBaseLayer?: string;
|
|
15
15
|
changeBaseLayer?: () => void;
|
|
16
16
|
removeLayerByName?: (name: string) => void;
|
|
@@ -19,53 +19,49 @@ interface CustomMap extends Map {
|
|
|
19
19
|
}
|
|
20
20
|
type GetImgUrl = (name: string, ext?: string) => string;
|
|
21
21
|
type GetImgUrlFn = (baseUrl: string) => GetImgUrl;
|
|
22
|
-
type LayerConfig = {
|
|
23
|
-
zIndex?: number;
|
|
24
|
-
visible?: boolean;
|
|
25
|
-
minZoom?: number;
|
|
26
|
-
maxZoom?: number;
|
|
27
|
-
layerName: string;
|
|
28
|
-
};
|
|
29
22
|
type VectorConfig = {
|
|
30
23
|
key: string;
|
|
31
24
|
zIndex?: number;
|
|
32
25
|
isRaw?: boolean;
|
|
33
26
|
isLine: boolean;
|
|
27
|
+
colorKey?: string;
|
|
34
28
|
layerName?: string;
|
|
35
29
|
openClick?: boolean;
|
|
36
30
|
fillColor?: string;
|
|
37
|
-
fillOpacity?: number;
|
|
38
31
|
strokeColor?: string;
|
|
39
32
|
strokeStyle?: string;
|
|
40
33
|
strokeWeight?: number;
|
|
41
|
-
|
|
42
|
-
type LineConfig = {
|
|
43
|
-
key: string;
|
|
44
|
-
width?: number;
|
|
45
|
-
isRaw?: boolean;
|
|
46
|
-
openClick?: boolean;
|
|
47
|
-
strokeColor?: string;
|
|
48
|
-
strokeStyle?: string;
|
|
49
|
-
};
|
|
50
|
-
type MassData = {
|
|
51
|
-
style: number;
|
|
52
|
-
_uuid?: string;
|
|
53
|
-
width?: number;
|
|
54
|
-
height?: number;
|
|
55
|
-
status?: number | string | undefined;
|
|
56
|
-
_status?: number | string | undefined;
|
|
57
|
-
lnglat: [string, string] | [number, number];
|
|
34
|
+
colorMap?: Map<string, string>;
|
|
58
35
|
};
|
|
59
36
|
type IconConfig = {
|
|
60
37
|
baseUrl: string;
|
|
61
38
|
hasLine?: boolean;
|
|
62
39
|
hasFace?: boolean;
|
|
63
|
-
statusNum
|
|
40
|
+
statusNum?: number;
|
|
64
41
|
isDynamic?: boolean;
|
|
65
42
|
markerIcon: string;
|
|
66
43
|
activeScale?: number;
|
|
44
|
+
vectorConfig?: VectorConfig;
|
|
67
45
|
markerSize: [number, number];
|
|
68
46
|
};
|
|
47
|
+
type MassData = {
|
|
48
|
+
_uuid?: string;
|
|
49
|
+
id: string;
|
|
50
|
+
style: number;
|
|
51
|
+
name: string;
|
|
52
|
+
status: string;
|
|
53
|
+
width?: number;
|
|
54
|
+
height?: number;
|
|
55
|
+
itemName: string;
|
|
56
|
+
rawData: {
|
|
57
|
+
[key: string]: any;
|
|
58
|
+
};
|
|
59
|
+
imgList: {
|
|
60
|
+
text: string;
|
|
61
|
+
icon: string;
|
|
62
|
+
}[];
|
|
63
|
+
lnglat: [string, string] | [number, number];
|
|
64
|
+
};
|
|
69
65
|
type MassMarkersStyleOptions = {
|
|
70
66
|
url: string;
|
|
71
67
|
zIndex?: number;
|
|
@@ -112,7 +108,7 @@ declare const createAnimationMarker: (imgUrl: string, data: MassData) => void;
|
|
|
112
108
|
* 重置激活的矢量数据
|
|
113
109
|
*/
|
|
114
110
|
declare const resetActiveVector: () => void;
|
|
115
|
-
declare const
|
|
111
|
+
declare const createBusinessLayer: (dataList: any, config: VectorConfig) => VectorLayer<VectorSource<Feature<ol_geom.Geometry>>, Feature<ol_geom.Geometry>>;
|
|
116
112
|
/**
|
|
117
113
|
* 创建面状数据
|
|
118
114
|
* @param dataList
|
|
@@ -163,6 +159,6 @@ declare const addMassMarksLayer: (getImgUrlFn: GetImgUrlFn) => (dataList: never[
|
|
|
163
159
|
* 更新图层根据选中状态列表
|
|
164
160
|
* @param checkedStatusList
|
|
165
161
|
*/
|
|
166
|
-
declare const updateMarksLayersByStatus: (checkedStatusList?:
|
|
162
|
+
declare const updateMarksLayersByStatus: (checkedStatusList?: string[]) => void;
|
|
167
163
|
|
|
168
|
-
export { type CustomMap, type GetImgUrl, type GetImgUrlFn, type IconConfig, type
|
|
164
|
+
export { type CustomMap, type GetImgUrl, type GetImgUrlFn, type IconConfig, type MassData, type MassMarkersStyleOptions, type VectorConfig, type WmtsSourceOptions, activeMarkerByUid, addMassMarksLayer, buildMassMarksStyles, createAnimationMarker, createBaseLayer, createBusinessLayer, createMapInstance, createMapWorldLayer, createMassMarksLayer, createSelectByLayer, createVectorFaceLayer, createVectorLineLayer, createWmtsLayer, disposeMap, emitter, getMapInstance, instance, removeAllLayers, resetActiveMarker, resetActiveVector, resetMap, resetZoomAndCenter, updateMarksLayersByStatus };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Map, Feature } from 'ol';
|
|
2
1
|
import { Layer, Tile } from 'ol/layer';
|
|
2
|
+
import { Map as Map$1, Feature } from 'ol';
|
|
3
3
|
import { Source, XYZ, WMTS } from 'ol/source';
|
|
4
4
|
import { Emitter, EventType } from 'mitt';
|
|
5
5
|
import TileLayer from 'ol/layer/Tile';
|
|
@@ -10,7 +10,7 @@ import VectorLayer from 'ol/layer/Vector';
|
|
|
10
10
|
import { StyleLike } from 'ol/style/Style';
|
|
11
11
|
import VectorSource from 'ol/source/Vector';
|
|
12
12
|
|
|
13
|
-
interface CustomMap extends Map {
|
|
13
|
+
interface CustomMap extends Map$1 {
|
|
14
14
|
activeBaseLayer?: string;
|
|
15
15
|
changeBaseLayer?: () => void;
|
|
16
16
|
removeLayerByName?: (name: string) => void;
|
|
@@ -19,53 +19,49 @@ interface CustomMap extends Map {
|
|
|
19
19
|
}
|
|
20
20
|
type GetImgUrl = (name: string, ext?: string) => string;
|
|
21
21
|
type GetImgUrlFn = (baseUrl: string) => GetImgUrl;
|
|
22
|
-
type LayerConfig = {
|
|
23
|
-
zIndex?: number;
|
|
24
|
-
visible?: boolean;
|
|
25
|
-
minZoom?: number;
|
|
26
|
-
maxZoom?: number;
|
|
27
|
-
layerName: string;
|
|
28
|
-
};
|
|
29
22
|
type VectorConfig = {
|
|
30
23
|
key: string;
|
|
31
24
|
zIndex?: number;
|
|
32
25
|
isRaw?: boolean;
|
|
33
26
|
isLine: boolean;
|
|
27
|
+
colorKey?: string;
|
|
34
28
|
layerName?: string;
|
|
35
29
|
openClick?: boolean;
|
|
36
30
|
fillColor?: string;
|
|
37
|
-
fillOpacity?: number;
|
|
38
31
|
strokeColor?: string;
|
|
39
32
|
strokeStyle?: string;
|
|
40
33
|
strokeWeight?: number;
|
|
41
|
-
|
|
42
|
-
type LineConfig = {
|
|
43
|
-
key: string;
|
|
44
|
-
width?: number;
|
|
45
|
-
isRaw?: boolean;
|
|
46
|
-
openClick?: boolean;
|
|
47
|
-
strokeColor?: string;
|
|
48
|
-
strokeStyle?: string;
|
|
49
|
-
};
|
|
50
|
-
type MassData = {
|
|
51
|
-
style: number;
|
|
52
|
-
_uuid?: string;
|
|
53
|
-
width?: number;
|
|
54
|
-
height?: number;
|
|
55
|
-
status?: number | string | undefined;
|
|
56
|
-
_status?: number | string | undefined;
|
|
57
|
-
lnglat: [string, string] | [number, number];
|
|
34
|
+
colorMap?: Map<string, string>;
|
|
58
35
|
};
|
|
59
36
|
type IconConfig = {
|
|
60
37
|
baseUrl: string;
|
|
61
38
|
hasLine?: boolean;
|
|
62
39
|
hasFace?: boolean;
|
|
63
|
-
statusNum
|
|
40
|
+
statusNum?: number;
|
|
64
41
|
isDynamic?: boolean;
|
|
65
42
|
markerIcon: string;
|
|
66
43
|
activeScale?: number;
|
|
44
|
+
vectorConfig?: VectorConfig;
|
|
67
45
|
markerSize: [number, number];
|
|
68
46
|
};
|
|
47
|
+
type MassData = {
|
|
48
|
+
_uuid?: string;
|
|
49
|
+
id: string;
|
|
50
|
+
style: number;
|
|
51
|
+
name: string;
|
|
52
|
+
status: string;
|
|
53
|
+
width?: number;
|
|
54
|
+
height?: number;
|
|
55
|
+
itemName: string;
|
|
56
|
+
rawData: {
|
|
57
|
+
[key: string]: any;
|
|
58
|
+
};
|
|
59
|
+
imgList: {
|
|
60
|
+
text: string;
|
|
61
|
+
icon: string;
|
|
62
|
+
}[];
|
|
63
|
+
lnglat: [string, string] | [number, number];
|
|
64
|
+
};
|
|
69
65
|
type MassMarkersStyleOptions = {
|
|
70
66
|
url: string;
|
|
71
67
|
zIndex?: number;
|
|
@@ -112,7 +108,7 @@ declare const createAnimationMarker: (imgUrl: string, data: MassData) => void;
|
|
|
112
108
|
* 重置激活的矢量数据
|
|
113
109
|
*/
|
|
114
110
|
declare const resetActiveVector: () => void;
|
|
115
|
-
declare const
|
|
111
|
+
declare const createBusinessLayer: (dataList: any, config: VectorConfig) => VectorLayer<VectorSource<Feature<ol_geom.Geometry>>, Feature<ol_geom.Geometry>>;
|
|
116
112
|
/**
|
|
117
113
|
* 创建面状数据
|
|
118
114
|
* @param dataList
|
|
@@ -163,6 +159,6 @@ declare const addMassMarksLayer: (getImgUrlFn: GetImgUrlFn) => (dataList: never[
|
|
|
163
159
|
* 更新图层根据选中状态列表
|
|
164
160
|
* @param checkedStatusList
|
|
165
161
|
*/
|
|
166
|
-
declare const updateMarksLayersByStatus: (checkedStatusList?:
|
|
162
|
+
declare const updateMarksLayersByStatus: (checkedStatusList?: string[]) => void;
|
|
167
163
|
|
|
168
|
-
export { type CustomMap, type GetImgUrl, type GetImgUrlFn, type IconConfig, type
|
|
164
|
+
export { type CustomMap, type GetImgUrl, type GetImgUrlFn, type IconConfig, type MassData, type MassMarkersStyleOptions, type VectorConfig, type WmtsSourceOptions, activeMarkerByUid, addMassMarksLayer, buildMassMarksStyles, createAnimationMarker, createBaseLayer, createBusinessLayer, createMapInstance, createMapWorldLayer, createMassMarksLayer, createSelectByLayer, createVectorFaceLayer, createVectorLineLayer, createWmtsLayer, disposeMap, emitter, getMapInstance, instance, removeAllLayers, resetActiveMarker, resetActiveVector, resetMap, resetZoomAndCenter, updateMarksLayersByStatus };
|
package/dist/index.js
CHANGED
|
@@ -105,6 +105,7 @@ import View from "ol/View";
|
|
|
105
105
|
import { defaults } from "ol/control";
|
|
106
106
|
|
|
107
107
|
// src/layer-utils.ts
|
|
108
|
+
import gcoord from "gcoord";
|
|
108
109
|
import { Point } from "ol/geom";
|
|
109
110
|
import { GeoJSON } from "ol/format";
|
|
110
111
|
import { Feature, Overlay } from "ol";
|
|
@@ -165,38 +166,42 @@ var assembleGeoJson = (dataList, config) => {
|
|
|
165
166
|
console.error(`\u521B\u5EFA\u7EBF\u72B6\u6570\u636E\u5931\u8D25\uFF1A${e}`);
|
|
166
167
|
}
|
|
167
168
|
});
|
|
168
|
-
return { type: "FeatureCollection", features: tempList };
|
|
169
|
+
return gcoord.transform({ type: "FeatureCollection", features: tempList }, gcoord.GCJ02, gcoord.WGS84);
|
|
169
170
|
};
|
|
170
|
-
var
|
|
171
|
-
const { isLine,
|
|
171
|
+
var createVectorStyle = (data, config) => {
|
|
172
|
+
const { isLine, colorMap, fillColor, colorKey, strokeColor, strokeWeight } = config || {};
|
|
173
|
+
const style = new Style({
|
|
174
|
+
stroke: new Stroke({
|
|
175
|
+
width: strokeWeight,
|
|
176
|
+
color: colorKey ? (colorMap == null ? void 0 : colorMap.get(data[colorKey])) || strokeColor : strokeColor
|
|
177
|
+
})
|
|
178
|
+
});
|
|
179
|
+
if (!isLine) {
|
|
180
|
+
style.setFill(
|
|
181
|
+
new Fill({
|
|
182
|
+
color: colorKey ? (colorMap == null ? void 0 : colorMap.get(data[colorKey])) || fillColor : fillColor
|
|
183
|
+
})
|
|
184
|
+
);
|
|
185
|
+
}
|
|
186
|
+
return style;
|
|
187
|
+
};
|
|
188
|
+
var createBusinessLayer = (dataList, config) => {
|
|
189
|
+
const { layerName } = config || {};
|
|
172
190
|
const geoJson = assembleGeoJson(dataList, config);
|
|
173
191
|
const vectorLayer = new VectorLayer({
|
|
174
192
|
className: layerName ? layerName : "ol-layer",
|
|
175
193
|
source: new VectorSource({
|
|
176
|
-
features: new GeoJSON().readFeatures(geoJson)
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
stroke: new Stroke({
|
|
180
|
-
color: "red",
|
|
181
|
-
lineDash: [10],
|
|
182
|
-
width: 3
|
|
183
|
-
})
|
|
184
|
-
}) : new Style({
|
|
185
|
-
stroke: new Stroke({
|
|
186
|
-
color: "red",
|
|
187
|
-
lineDash: [10],
|
|
188
|
-
width: 3
|
|
189
|
-
}),
|
|
190
|
-
fill: new Fill({
|
|
191
|
-
color: "rgba(0, 0, 255, 0.1)"
|
|
194
|
+
features: new GeoJSON().readFeatures(geoJson).map((feature) => {
|
|
195
|
+
feature.setStyle(createVectorStyle(feature.getProperties(), config));
|
|
196
|
+
return feature;
|
|
192
197
|
})
|
|
193
198
|
})
|
|
194
199
|
});
|
|
195
200
|
vectorLayer.set("_layerName", layerName);
|
|
196
201
|
return vectorLayer;
|
|
197
202
|
};
|
|
198
|
-
var createVectorFaceLayer = (dataList = [], config) =>
|
|
199
|
-
var createVectorLineLayer = (dataList = [], config) =>
|
|
203
|
+
var createVectorFaceLayer = (dataList = [], config) => createBusinessLayer(dataList, Object.assign(config, { isLine: false }));
|
|
204
|
+
var createVectorLineLayer = (dataList = [], config) => createBusinessLayer(dataList, Object.assign(config, { isLine: true }));
|
|
200
205
|
var removeAllLayers = (isClearAll = true) => {
|
|
201
206
|
removeOverlays();
|
|
202
207
|
console.log(isClearAll);
|
|
@@ -367,7 +372,7 @@ var createMassMarksLayer = (dataList, styleList = []) => {
|
|
|
367
372
|
_isCustom: true,
|
|
368
373
|
_isMassMarksLayer: true,
|
|
369
374
|
_statusNum: styleList.length / 2,
|
|
370
|
-
_dataList: dataList,
|
|
375
|
+
_dataList: [...dataList],
|
|
371
376
|
_uuidSet: new Set(dataList.map((item) => item._uuid) || [])
|
|
372
377
|
});
|
|
373
378
|
return vectorLayer;
|
|
@@ -381,7 +386,8 @@ var addMassMarksLayer = (getImgUrlFn) => {
|
|
|
381
386
|
isDynamic,
|
|
382
387
|
statusNum,
|
|
383
388
|
markerIcon,
|
|
384
|
-
markerSize
|
|
389
|
+
markerSize,
|
|
390
|
+
vectorConfig
|
|
385
391
|
} = iconConfig;
|
|
386
392
|
const massMarksStyles = buildMassMarksStyles(getImgUrlFn)({
|
|
387
393
|
baseUrl,
|
|
@@ -395,7 +401,7 @@ var addMassMarksLayer = (getImgUrlFn) => {
|
|
|
395
401
|
createSelectByLayer(massMarksLayer);
|
|
396
402
|
}
|
|
397
403
|
if (hasLine) {
|
|
398
|
-
const vectorLayer =
|
|
404
|
+
const vectorLayer = createBusinessLayer(dataList, vectorConfig ? vectorConfig : {
|
|
399
405
|
key: "line",
|
|
400
406
|
isLine: true,
|
|
401
407
|
strokeColor: "rgba(29, 235, 255, 0.8)"
|
|
@@ -403,10 +409,9 @@ var addMassMarksLayer = (getImgUrlFn) => {
|
|
|
403
409
|
instance.addLayer(vectorLayer);
|
|
404
410
|
}
|
|
405
411
|
if (hasFace) {
|
|
406
|
-
const vectorLayer =
|
|
412
|
+
const vectorLayer = createBusinessLayer(dataList, vectorConfig ? vectorConfig : {
|
|
407
413
|
isLine: false,
|
|
408
414
|
key: "faceList",
|
|
409
|
-
fillOpacity: 0.1,
|
|
410
415
|
fillColor: "#4247DF",
|
|
411
416
|
strokeWeight: 1,
|
|
412
417
|
strokeStyle: "dashed",
|
|
@@ -630,7 +635,7 @@ export {
|
|
|
630
635
|
buildMassMarksStyles,
|
|
631
636
|
createAnimationMarker,
|
|
632
637
|
createBaseLayer,
|
|
633
|
-
|
|
638
|
+
createBusinessLayer,
|
|
634
639
|
createMapInstance,
|
|
635
640
|
createMapWorldLayer,
|
|
636
641
|
createMassMarksLayer,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "map-ol-utils",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.23",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Openlayers utils library",
|
|
6
6
|
"files": [
|
|
@@ -27,11 +27,9 @@
|
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"ol": "^10.5.0",
|
|
29
29
|
"mitt": "^3.0.1",
|
|
30
|
-
"
|
|
31
|
-
},
|
|
32
|
-
"devDependencies": {
|
|
33
|
-
"@types/proj4": "^2.5.6"
|
|
30
|
+
"gcoord": "^1.0.7"
|
|
34
31
|
},
|
|
32
|
+
"devDependencies": {},
|
|
35
33
|
"peerDependencies": {
|
|
36
34
|
"ol": ">=10.5.0"
|
|
37
35
|
},
|