vue-openlayers-plugin 1.0.82 → 1.0.84
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/lib/BasemapPanel-1145a7ed.mjs +280 -0
- package/lib/CoordinateLocationDialog-be972ee5.mjs +263 -0
- package/lib/FilterPanel-9d55d20c.mjs +6 -0
- package/lib/LayerPanel-0272f4a3.mjs +6 -0
- package/lib/MapPrintDialog-3d0a2891.mjs +6 -0
- package/lib/MeasurementDialog-37a0bbb3.mjs +369 -0
- package/lib/MyMarkersDialog-61d5c30d.mjs +584 -0
- package/lib/RegionNavigationDialog-0808549f.mjs +1320 -0
- package/lib/ViewBookmarksDialog-107a29d1.mjs +723 -0
- package/lib/index-3d1e1ad0.mjs +839 -0
- package/lib/{index-61901e1f.mjs → index-6f94a7fa.mjs} +50494 -53897
- package/lib/index-91e9a4e6.mjs +756 -0
- package/lib/{index.es-c17b5917.mjs → index.es-03fbdea2.mjs} +1 -1
- package/lib/index.esm.js +65 -56
- package/lib/index.umd.js +73175 -71501
- package/lib/style.css +1705 -1704
- package/package.json +8 -4
- package/types/src/assets/index.d.ts +9 -0
- package/types/src/assets/index.d.ts.map +1 -0
- package/types/src/components/CustomDialog/CustomDialog.vue.d.ts +16 -16
- package/types/src/components/CustomDialog/icons/index.d.ts +14 -0
- package/types/src/components/CustomDialog/icons/index.d.ts.map +1 -0
- package/types/src/components/OlBaseLayerSwitcher.vue.d.ts +19 -0
- package/types/src/components/OlBaseLayerSwitcher.vue.d.ts.map +1 -0
- package/types/src/components/OlControlPanel.vue.d.ts +63 -0
- package/types/src/components/OlControlPanel.vue.d.ts.map +1 -0
- package/types/src/components/OlDialogs/BasemapPanel.vue.d.ts +20 -0
- package/types/src/components/OlDialogs/BasemapPanel.vue.d.ts.map +1 -0
- package/types/src/components/OlDialogs/CoordinateLocationDialog.vue.d.ts +21 -0
- package/types/src/components/OlDialogs/CoordinateLocationDialog.vue.d.ts.map +1 -0
- package/types/src/components/OlDialogs/DialogManager.d.ts +58 -0
- package/types/src/components/OlDialogs/DialogManager.d.ts.map +1 -0
- package/types/src/components/OlDialogs/FilterPanel.vue.d.ts +33 -0
- package/types/src/components/OlDialogs/FilterPanel.vue.d.ts.map +1 -0
- package/types/src/components/OlDialogs/LayerPanel.vue.d.ts +1345 -0
- package/types/src/components/OlDialogs/LayerPanel.vue.d.ts.map +1 -0
- package/types/src/components/OlDialogs/LayerStyleConfig.vue.d.ts +23 -0
- package/types/src/components/OlDialogs/LayerStyleConfig.vue.d.ts.map +1 -0
- package/types/src/components/OlDialogs/LayerTreeNode.vue.d.ts +28 -0
- package/types/src/components/OlDialogs/LayerTreeNode.vue.d.ts.map +1 -0
- package/types/src/components/OlDialogs/MapDrawingDialog/components/ListTab.vue.d.ts +3 -0
- package/types/src/components/OlDialogs/MapDrawingDialog/components/ListTab.vue.d.ts.map +1 -0
- package/types/src/components/OlDialogs/MapDrawingDialog/components/MarkTab.vue.d.ts +3 -0
- package/types/src/components/OlDialogs/MapDrawingDialog/components/MarkTab.vue.d.ts.map +1 -0
- package/types/src/components/OlDialogs/MapDrawingDialog/index.vue.d.ts +3 -0
- package/types/src/components/OlDialogs/MapDrawingDialog/index.vue.d.ts.map +1 -0
- package/types/src/components/OlDialogs/MapPrintDialog.vue.d.ts +24 -0
- package/types/src/components/OlDialogs/MapPrintDialog.vue.d.ts.map +1 -0
- package/types/src/components/OlDialogs/MeasurementDialog.vue.d.ts +41 -0
- package/types/src/components/OlDialogs/MeasurementDialog.vue.d.ts.map +1 -0
- package/types/src/components/OlDialogs/MyMarkersDialog.vue.d.ts +21 -0
- package/types/src/components/OlDialogs/MyMarkersDialog.vue.d.ts.map +1 -0
- package/types/src/components/OlDialogs/RegionNavigationDialog.vue.d.ts +25 -0
- package/types/src/components/OlDialogs/RegionNavigationDialog.vue.d.ts.map +1 -0
- package/types/src/components/OlDialogs/ViewBookmarksDialog.vue.d.ts +21 -0
- package/types/src/components/OlDialogs/ViewBookmarksDialog.vue.d.ts.map +1 -0
- package/types/src/components/OlDialogs/registry.d.ts +39 -0
- package/types/src/components/OlDialogs/registry.d.ts.map +1 -0
- package/types/src/components/OlDrawToolbar.vue.d.ts +61 -0
- package/types/src/components/OlDrawToolbar.vue.d.ts.map +1 -0
- package/types/src/components/OlLegendPanel.vue.d.ts +69 -0
- package/types/src/components/OlLegendPanel.vue.d.ts.map +1 -0
- package/types/src/components/OlMapContainer.vue.d.ts +112 -0
- package/types/src/components/OlMapContainer.vue.d.ts.map +1 -0
- package/types/src/components/OlMapPopup/ArrayPopup.vue.d.ts +47 -0
- package/types/src/components/OlMapPopup/ArrayPopup.vue.d.ts.map +1 -0
- package/types/src/components/OlMapPopup/BasePopup.vue.d.ts +63 -0
- package/types/src/components/OlMapPopup/BasePopup.vue.d.ts.map +1 -0
- package/types/src/components/OlMapPopup/HtmlPopup.vue.d.ts +45 -0
- package/types/src/components/OlMapPopup/HtmlPopup.vue.d.ts.map +1 -0
- package/types/src/components/OlMapPopup/ImagePopup.vue.d.ts +45 -0
- package/types/src/components/OlMapPopup/ImagePopup.vue.d.ts.map +1 -0
- package/types/src/components/OlMapPopup/index.d.ts +9 -0
- package/types/src/components/OlMapPopup/index.d.ts.map +1 -0
- package/types/src/components/OlMapPopup/types.d.ts +118 -0
- package/types/src/components/OlMapPopup/types.d.ts.map +1 -0
- package/types/src/components/OlMapSearch.vue.d.ts +126 -0
- package/types/src/components/OlMapSearch.vue.d.ts.map +1 -0
- package/types/src/components/OlMapTooltip.vue.d.ts +70 -0
- package/types/src/components/OlMapTooltip.vue.d.ts.map +1 -0
- package/types/src/core/EventBus.d.ts +66 -0
- package/types/src/core/EventBus.d.ts.map +1 -0
- package/types/src/core/EventManager.d.ts +147 -0
- package/types/src/core/EventManager.d.ts.map +1 -0
- package/types/src/core/FeatureHighlightManager.d.ts +103 -0
- package/types/src/core/FeatureHighlightManager.d.ts.map +1 -0
- package/types/src/core/GlobalStyleManager.d.ts +76 -0
- package/types/src/core/GlobalStyleManager.d.ts.map +1 -0
- package/types/src/core/LayerConfigManager.d.ts +66 -0
- package/types/src/core/LayerConfigManager.d.ts.map +1 -0
- package/types/src/core/LayerManager.d.ts +198 -0
- package/types/src/core/LayerManager.d.ts.map +1 -0
- package/types/src/core/LayerTreeManager.d.ts +125 -0
- package/types/src/core/LayerTreeManager.d.ts.map +1 -0
- package/types/src/core/MapManager.d.ts +203 -0
- package/types/src/core/MapManager.d.ts.map +1 -0
- package/types/src/core/MarkerDrawingAdapter.d.ts +125 -0
- package/types/src/core/MarkerDrawingAdapter.d.ts.map +1 -0
- package/types/src/core/PluginManager.d.ts +158 -0
- package/types/src/core/PluginManager.d.ts.map +1 -0
- package/types/src/core/PopupManager.d.ts +110 -0
- package/types/src/core/PopupManager.d.ts.map +1 -0
- package/types/src/core/SearchMarkerManager.d.ts +96 -0
- package/types/src/core/SearchMarkerManager.d.ts.map +1 -0
- package/types/src/core/TooltipHelper.d.ts +134 -0
- package/types/src/core/TooltipHelper.d.ts.map +1 -0
- package/types/src/core/amapSearchApi.d.ts +57 -0
- package/types/src/core/amapSearchApi.d.ts.map +1 -0
- package/types/src/core/basemapManager.d.ts +63 -0
- package/types/src/core/basemapManager.d.ts.map +1 -0
- package/types/src/core/configLoader.d.ts +159 -0
- package/types/src/core/configLoader.d.ts.map +1 -0
- package/types/src/core/drawing/BaseDrawing.d.ts +255 -0
- package/types/src/core/drawing/BaseDrawing.d.ts.map +1 -0
- package/types/src/core/drawing/DrawingManager.d.ts +394 -0
- package/types/src/core/drawing/DrawingManager.d.ts.map +1 -0
- package/types/src/core/drawing/IconDrawing.d.ts +188 -0
- package/types/src/core/drawing/IconDrawing.d.ts.map +1 -0
- package/types/src/core/drawing/ImageDrawing.d.ts +193 -0
- package/types/src/core/drawing/ImageDrawing.d.ts.map +1 -0
- package/types/src/core/drawing/LineDrawing.d.ts +193 -0
- package/types/src/core/drawing/LineDrawing.d.ts.map +1 -0
- package/types/src/core/drawing/MilitaryDrawing.d.ts +175 -0
- package/types/src/core/drawing/MilitaryDrawing.d.ts.map +1 -0
- package/types/src/core/drawing/MultiLineStringDrawing.d.ts +294 -0
- package/types/src/core/drawing/MultiLineStringDrawing.d.ts.map +1 -0
- package/types/src/core/drawing/MultiPointDrawing.d.ts +244 -0
- package/types/src/core/drawing/MultiPointDrawing.d.ts.map +1 -0
- package/types/src/core/drawing/MultiPolygonDrawing.d.ts +206 -0
- package/types/src/core/drawing/MultiPolygonDrawing.d.ts.map +1 -0
- package/types/src/core/drawing/PointDrawing.d.ts +175 -0
- package/types/src/core/drawing/PointDrawing.d.ts.map +1 -0
- package/types/src/core/drawing/PointWithTextDrawing.d.ts +183 -0
- package/types/src/core/drawing/PointWithTextDrawing.d.ts.map +1 -0
- package/types/src/core/drawing/PolygonDrawing.d.ts +240 -0
- package/types/src/core/drawing/PolygonDrawing.d.ts.map +1 -0
- package/types/src/core/drawing/TextDrawing.d.ts +164 -0
- package/types/src/core/drawing/TextDrawing.d.ts.map +1 -0
- package/types/src/core/drawing/index.d.ts +525 -0
- package/types/src/core/drawing/index.d.ts.map +1 -0
- package/types/src/core/geoJsonLocationTool.d.ts +116 -0
- package/types/src/core/geoJsonLocationTool.d.ts.map +1 -0
- package/types/src/core/layers/BaseLayer.d.ts +162 -0
- package/types/src/core/layers/BaseLayer.d.ts.map +1 -0
- package/types/src/core/layers/CanvasLayerHandler.d.ts +65 -0
- package/types/src/core/layers/CanvasLayerHandler.d.ts.map +1 -0
- package/types/src/core/layers/ClusterLayerHandler.d.ts +122 -0
- package/types/src/core/layers/ClusterLayerHandler.d.ts.map +1 -0
- package/types/src/core/layers/GMLLayerHandler.d.ts +107 -0
- package/types/src/core/layers/GMLLayerHandler.d.ts.map +1 -0
- package/types/src/core/layers/GeoJSONLayerHandler.d.ts +125 -0
- package/types/src/core/layers/GeoJSONLayerHandler.d.ts.map +1 -0
- package/types/src/core/layers/HeatmapLayerHandler.d.ts +86 -0
- package/types/src/core/layers/HeatmapLayerHandler.d.ts.map +1 -0
- package/types/src/core/layers/ImageVectorLayerHandler.d.ts +77 -0
- package/types/src/core/layers/ImageVectorLayerHandler.d.ts.map +1 -0
- package/types/src/core/layers/KMLLayerHandler.d.ts +95 -0
- package/types/src/core/layers/KMLLayerHandler.d.ts.map +1 -0
- package/types/src/core/layers/LayerFactory.d.ts +63 -0
- package/types/src/core/layers/LayerFactory.d.ts.map +1 -0
- package/types/src/core/layers/SuperMapServiceTester.d.ts +54 -0
- package/types/src/core/layers/SuperMapServiceTester.d.ts.map +1 -0
- package/types/src/core/layers/SuperMapTiledMapServiceHandler.d.ts +35 -0
- package/types/src/core/layers/SuperMapTiledMapServiceHandler.d.ts.map +1 -0
- package/types/src/core/layers/TiandituConfigHelper.d.ts +120 -0
- package/types/src/core/layers/TiandituConfigHelper.d.ts.map +1 -0
- package/types/src/core/layers/TiandituLayerHandler.d.ts +75 -0
- package/types/src/core/layers/TiandituLayerHandler.d.ts.map +1 -0
- package/types/src/core/layers/TileLayerHandler.d.ts +42 -0
- package/types/src/core/layers/TileLayerHandler.d.ts.map +1 -0
- package/types/src/core/layers/TileSuperMapRestHandler.d.ts +161 -0
- package/types/src/core/layers/TileSuperMapRestHandler.d.ts.map +1 -0
- package/types/src/core/layers/VectorTileLayerHandler.d.ts +126 -0
- package/types/src/core/layers/VectorTileLayerHandler.d.ts.map +1 -0
- package/types/src/core/layers/WFSLayerHandler.d.ts +80 -0
- package/types/src/core/layers/WFSLayerHandler.d.ts.map +1 -0
- package/types/src/core/layers/WKTLayerHandler.d.ts +123 -0
- package/types/src/core/layers/WKTLayerHandler.d.ts.map +1 -0
- package/types/src/core/layers/WMSLayerHandler.d.ts +78 -0
- package/types/src/core/layers/WMSLayerHandler.d.ts.map +1 -0
- package/types/src/core/layers/WMTSLayerHandler.d.ts +44 -0
- package/types/src/core/layers/WMTSLayerHandler.d.ts.map +1 -0
- package/types/src/core/layers/index.d.ts +20 -0
- package/types/src/core/layers/index.d.ts.map +1 -0
- package/types/src/core/layers/interfaces.d.ts +95 -0
- package/types/src/core/layers/interfaces.d.ts.map +1 -0
- package/types/src/core/mapOperationTool.d.ts +145 -0
- package/types/src/core/mapOperationTool.d.ts.map +1 -0
- package/types/src/core/measurementTool.d.ts +136 -0
- package/types/src/core/measurementTool.d.ts.map +1 -0
- package/types/src/core/overviewMapUtil.d.ts +62 -0
- package/types/src/core/overviewMapUtil.d.ts.map +1 -0
- package/types/src/core/proxyHelper.d.ts +66 -0
- package/types/src/core/proxyHelper.d.ts.map +1 -0
- package/types/src/core/storage.d.ts +139 -0
- package/types/src/core/storage.d.ts.map +1 -0
- package/types/src/core/styles/StyleFactory.d.ts +74 -0
- package/types/src/core/styles/StyleFactory.d.ts.map +1 -0
- package/types/src/core/styles/StyleManager.d.ts +77 -0
- package/types/src/core/styles/StyleManager.d.ts.map +1 -0
- package/types/src/core/styles/index.d.ts +67 -0
- package/types/src/core/styles/index.d.ts.map +1 -0
- package/types/src/core/styles/interfaces.d.ts +221 -0
- package/types/src/core/styles/interfaces.d.ts.map +1 -0
- package/types/src/core/tiandituSearchApi.d.ts +51 -0
- package/types/src/core/tiandituSearchApi.d.ts.map +1 -0
- package/types/src/data-old/testLayers.d.ts +84 -0
- package/types/src/data-old/testLayers.d.ts.map +1 -0
- package/types/src/examples-old/FilterExamples.d.ts +104 -0
- package/types/src/examples-old/FilterExamples.d.ts.map +1 -0
- package/types/src/hooks/useMap.d.ts +5 -0
- package/types/src/hooks/useMap.d.ts.map +1 -0
- package/types/src/services/searchService.d.ts +106 -0
- package/types/src/services/searchService.d.ts.map +1 -0
- package/types/src/test-old/FilterSystemTest.d.ts +57 -0
- package/types/src/test-old/FilterSystemTest.d.ts.map +1 -0
- package/types/src/types/index.d.ts +2 -11
- package/types/src/types/index.d.ts.map +1 -1
- package/types/src/types/map.d.ts +819 -0
- package/types/src/types/map.d.ts.map +1 -0
- package/types/src/types/plugin.d.ts +202 -0
- package/types/src/types/plugin.d.ts.map +1 -0
- package/types/src/utils/DiffusionAnimationHelper.d.ts +60 -0
- package/types/src/utils/DiffusionAnimationHelper.d.ts.map +1 -0
- package/types/src/utils/GifAnimationHelper.d.ts +31 -0
- package/types/src/utils/GifAnimationHelper.d.ts.map +1 -0
- package/types/src/utils/coordinateTransform.d.ts +28 -0
- package/types/src/utils/coordinateTransform.d.ts.map +1 -0
- package/types/src/utils/index.d.ts +8 -8
- package/types/src/utils/index.d.ts.map +1 -1
- package/types/src/utils/unitConverter.d.ts +36 -0
- package/types/src/utils/unitConverter.d.ts.map +1 -0
- package/types/tsconfig.tsbuildinfo +1 -1
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
import { Style } from 'ol/style';
|
|
2
|
+
import { ColorLike } from 'ol/colorlike';
|
|
3
|
+
import { Coordinate } from 'ol/coordinate';
|
|
4
|
+
import { BaseDrawing, DrawingConfig, DrawingStyleConfig } from './BaseDrawing';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* 图标标绘样式配置
|
|
8
|
+
*/
|
|
9
|
+
export interface IconStyleConfig extends DrawingStyleConfig {
|
|
10
|
+
iconUrl: string;
|
|
11
|
+
iconScale?: number;
|
|
12
|
+
iconRotation?: number;
|
|
13
|
+
iconOpacity?: number;
|
|
14
|
+
iconAnchor?: [number, number];
|
|
15
|
+
iconOffset?: [number, number];
|
|
16
|
+
iconSize?: [number, number];
|
|
17
|
+
iconColor?: ColorLike;
|
|
18
|
+
iconCrosOrigin?: string;
|
|
19
|
+
iconImgSize?: [number, number];
|
|
20
|
+
iconDisplacement?: [number, number];
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* 图标标绘配置
|
|
24
|
+
*/
|
|
25
|
+
export interface IconDrawingConfig extends DrawingConfig {
|
|
26
|
+
type: "icon";
|
|
27
|
+
coordinates: Coordinate;
|
|
28
|
+
style: IconStyleConfig;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* 图标标绘类
|
|
32
|
+
* 专门用于在地图上绘制各种图标,支持PNG、JPG、SVG等格式
|
|
33
|
+
*/
|
|
34
|
+
export declare class IconDrawing extends BaseDrawing<IconDrawingConfig, IconStyleConfig> {
|
|
35
|
+
protected _config: IconDrawingConfig;
|
|
36
|
+
protected _style: IconStyleConfig;
|
|
37
|
+
private _iconCache;
|
|
38
|
+
constructor(config: IconDrawingConfig);
|
|
39
|
+
/**
|
|
40
|
+
* 创建要素
|
|
41
|
+
*/
|
|
42
|
+
protected createFeature(): void;
|
|
43
|
+
/**
|
|
44
|
+
* 创建样式
|
|
45
|
+
*/
|
|
46
|
+
protected createStyle(): Style;
|
|
47
|
+
/**
|
|
48
|
+
* 更新要素几何
|
|
49
|
+
*/
|
|
50
|
+
protected updateFeatureGeometry(): void;
|
|
51
|
+
/**
|
|
52
|
+
* 更新选中样式
|
|
53
|
+
*/
|
|
54
|
+
protected updateSelectionStyle(): void;
|
|
55
|
+
/**
|
|
56
|
+
* 设置坐标
|
|
57
|
+
*/
|
|
58
|
+
setCoordinates(coordinates: Coordinate): void;
|
|
59
|
+
/**
|
|
60
|
+
* 获取坐标
|
|
61
|
+
*/
|
|
62
|
+
getCoordinates(): Coordinate;
|
|
63
|
+
/**
|
|
64
|
+
* 设置图标URL
|
|
65
|
+
*/
|
|
66
|
+
setIconUrl(url: string): void;
|
|
67
|
+
/**
|
|
68
|
+
* 获取图标URL
|
|
69
|
+
*/
|
|
70
|
+
getIconUrl(): string;
|
|
71
|
+
/**
|
|
72
|
+
* 设置图标缩放
|
|
73
|
+
*/
|
|
74
|
+
setIconScale(scale: number): void;
|
|
75
|
+
/**
|
|
76
|
+
* 设置图标旋转
|
|
77
|
+
*/
|
|
78
|
+
setIconRotation(rotation: number): void;
|
|
79
|
+
/**
|
|
80
|
+
* 设置图标透明度
|
|
81
|
+
*/
|
|
82
|
+
setIconOpacity(opacity: number): void;
|
|
83
|
+
/**
|
|
84
|
+
* 设置图标锚点
|
|
85
|
+
*/
|
|
86
|
+
setIconAnchor(anchor: [number, number]): void;
|
|
87
|
+
/**
|
|
88
|
+
* 设置图标偏移
|
|
89
|
+
*/
|
|
90
|
+
setIconOffset(offset: [number, number]): void;
|
|
91
|
+
/**
|
|
92
|
+
* 设置图标大小
|
|
93
|
+
*/
|
|
94
|
+
setIconSize(size: [number, number]): void;
|
|
95
|
+
/**
|
|
96
|
+
* 设置图标颜色(适用于SVG图标)
|
|
97
|
+
*/
|
|
98
|
+
setIconColor(color: ColorLike): void;
|
|
99
|
+
/**
|
|
100
|
+
* 设置图标样式
|
|
101
|
+
*/
|
|
102
|
+
setIconStyle(options: {
|
|
103
|
+
url?: string;
|
|
104
|
+
scale?: number;
|
|
105
|
+
rotation?: number;
|
|
106
|
+
opacity?: number;
|
|
107
|
+
anchor?: [number, number];
|
|
108
|
+
offset?: [number, number];
|
|
109
|
+
size?: [number, number];
|
|
110
|
+
color?: ColorLike;
|
|
111
|
+
}): void;
|
|
112
|
+
/**
|
|
113
|
+
* 预加载图标
|
|
114
|
+
*/
|
|
115
|
+
preloadIcon(): Promise<void>;
|
|
116
|
+
/**
|
|
117
|
+
* 获取图标尺寸
|
|
118
|
+
*/
|
|
119
|
+
getIconDimensions(): Promise<{
|
|
120
|
+
width: number;
|
|
121
|
+
height: number;
|
|
122
|
+
}>;
|
|
123
|
+
/**
|
|
124
|
+
* 检查图标是否已加载
|
|
125
|
+
*/
|
|
126
|
+
isIconLoaded(): boolean;
|
|
127
|
+
/**
|
|
128
|
+
* 清除图标缓存
|
|
129
|
+
*/
|
|
130
|
+
clearIconCache(): void;
|
|
131
|
+
/**
|
|
132
|
+
* 创建实例
|
|
133
|
+
*/
|
|
134
|
+
protected createInstance(config: IconDrawingConfig): BaseDrawing<IconDrawingConfig, IconStyleConfig>;
|
|
135
|
+
/**
|
|
136
|
+
* 从JSON数据创建图标标绘
|
|
137
|
+
*/
|
|
138
|
+
static fromJSON(data: any): IconDrawing;
|
|
139
|
+
/**
|
|
140
|
+
* 转换为JSON数据
|
|
141
|
+
*/
|
|
142
|
+
toJSON(): any;
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* 图标标绘工厂类
|
|
146
|
+
*/
|
|
147
|
+
export declare class IconDrawingFactory {
|
|
148
|
+
static create(config: IconDrawingConfig): IconDrawing;
|
|
149
|
+
static getType(): string;
|
|
150
|
+
static getSupportedTypes(): string[];
|
|
151
|
+
/**
|
|
152
|
+
* 创建预设图标标绘
|
|
153
|
+
*/
|
|
154
|
+
static createPreset(coordinates: Coordinate, iconType: "marker" | "pin" | "flag" | "star" | "heart" | "warning" | "info" | "success" | "danger" | "home" | "office" | "shop" | "hospital" | "school", options?: {
|
|
155
|
+
name?: string;
|
|
156
|
+
scale?: number;
|
|
157
|
+
rotation?: number;
|
|
158
|
+
opacity?: number;
|
|
159
|
+
color?: string;
|
|
160
|
+
}): IconDrawing;
|
|
161
|
+
/**
|
|
162
|
+
* 从URL创建图标标绘
|
|
163
|
+
*/
|
|
164
|
+
static createFromUrl(coordinates: Coordinate, iconUrl: string, options?: {
|
|
165
|
+
name?: string;
|
|
166
|
+
scale?: number;
|
|
167
|
+
rotation?: number;
|
|
168
|
+
opacity?: number;
|
|
169
|
+
anchor?: [number, number];
|
|
170
|
+
offset?: [number, number];
|
|
171
|
+
size?: [number, number];
|
|
172
|
+
color?: string;
|
|
173
|
+
}): IconDrawing;
|
|
174
|
+
/**
|
|
175
|
+
* 批量创建图标标绘
|
|
176
|
+
*/
|
|
177
|
+
static createBatch(coordinatesList: Coordinate[], iconUrl: string, options?: {
|
|
178
|
+
namePrefix?: string;
|
|
179
|
+
scale?: number;
|
|
180
|
+
rotation?: number;
|
|
181
|
+
opacity?: number;
|
|
182
|
+
anchor?: [number, number];
|
|
183
|
+
offset?: [number, number];
|
|
184
|
+
size?: [number, number];
|
|
185
|
+
color?: string;
|
|
186
|
+
}): IconDrawing[];
|
|
187
|
+
}
|
|
188
|
+
//# sourceMappingURL=IconDrawing.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IconDrawing.d.ts","sourceRoot":"","sources":["../../../../src/core/drawing/IconDrawing.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
import { Style } from 'ol/style';
|
|
2
|
+
import { Coordinate } from 'ol/coordinate';
|
|
3
|
+
import { BaseDrawing, DrawingConfig, DrawingStyleConfig } from './BaseDrawing';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* 图片标绘样式配置
|
|
7
|
+
*/
|
|
8
|
+
export interface ImageStyleConfig extends DrawingStyleConfig {
|
|
9
|
+
imageUrl: string;
|
|
10
|
+
imageSize?: [number, number];
|
|
11
|
+
imageScale?: number;
|
|
12
|
+
imageRotation?: number;
|
|
13
|
+
imageAnchor?: [number, number];
|
|
14
|
+
imageOffset?: [number, number];
|
|
15
|
+
showBorder?: boolean;
|
|
16
|
+
borderColor?: string;
|
|
17
|
+
borderWidth?: number;
|
|
18
|
+
showShadow?: boolean;
|
|
19
|
+
shadowColor?: string;
|
|
20
|
+
shadowOffset?: [number, number];
|
|
21
|
+
shadowBlur?: number;
|
|
22
|
+
allowResize?: boolean;
|
|
23
|
+
maintainAspectRatio?: boolean;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* 图片标绘配置
|
|
27
|
+
*/
|
|
28
|
+
export interface ImageDrawingConfig extends DrawingConfig {
|
|
29
|
+
type: "image";
|
|
30
|
+
coordinates: Coordinate;
|
|
31
|
+
style: ImageStyleConfig;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* 图片标绘类
|
|
35
|
+
* 支持在地图上添加图片标注,包括图标、照片、标识等
|
|
36
|
+
*/
|
|
37
|
+
export declare class ImageDrawing extends BaseDrawing<ImageDrawingConfig, ImageStyleConfig> {
|
|
38
|
+
protected _config: ImageDrawingConfig;
|
|
39
|
+
protected _style: ImageStyleConfig;
|
|
40
|
+
private _imageElement;
|
|
41
|
+
private _imageLoaded;
|
|
42
|
+
private _originalSize;
|
|
43
|
+
constructor(config: ImageDrawingConfig);
|
|
44
|
+
/**
|
|
45
|
+
* 预加载图片
|
|
46
|
+
*/
|
|
47
|
+
preloadImage(): Promise<void>;
|
|
48
|
+
/**
|
|
49
|
+
* 创建要素
|
|
50
|
+
*/
|
|
51
|
+
protected createFeature(): void;
|
|
52
|
+
/**
|
|
53
|
+
* 创建样式
|
|
54
|
+
*/
|
|
55
|
+
protected createStyle(): Style | Style[];
|
|
56
|
+
/**
|
|
57
|
+
* 创建图片样式
|
|
58
|
+
*/
|
|
59
|
+
private createImageStyle;
|
|
60
|
+
/**
|
|
61
|
+
* 创建占位符样式
|
|
62
|
+
*/
|
|
63
|
+
private createPlaceholderStyle;
|
|
64
|
+
/**
|
|
65
|
+
* 创建边框样式
|
|
66
|
+
*/
|
|
67
|
+
private createBorderStyle;
|
|
68
|
+
/**
|
|
69
|
+
* 创建阴影样式
|
|
70
|
+
*/
|
|
71
|
+
private createShadowStyle;
|
|
72
|
+
/**
|
|
73
|
+
* 创建文字样式
|
|
74
|
+
*/
|
|
75
|
+
private createTextStyle;
|
|
76
|
+
/**
|
|
77
|
+
* 更新要素几何
|
|
78
|
+
*/
|
|
79
|
+
protected updateFeatureGeometry(): void;
|
|
80
|
+
/**
|
|
81
|
+
* 更新选中状态的样式
|
|
82
|
+
*/
|
|
83
|
+
protected updateSelectionStyle(): void;
|
|
84
|
+
/**
|
|
85
|
+
* 设置坐标
|
|
86
|
+
*/
|
|
87
|
+
setCoordinates(coordinates: Coordinate): void;
|
|
88
|
+
/**
|
|
89
|
+
* 获取坐标
|
|
90
|
+
*/
|
|
91
|
+
getCoordinates(): Coordinate;
|
|
92
|
+
/**
|
|
93
|
+
* 设置图片URL
|
|
94
|
+
*/
|
|
95
|
+
setImageUrl(url: string): Promise<void>;
|
|
96
|
+
/**
|
|
97
|
+
* 获取图片URL
|
|
98
|
+
*/
|
|
99
|
+
getImageUrl(): string;
|
|
100
|
+
/**
|
|
101
|
+
* 设置图片大小
|
|
102
|
+
*/
|
|
103
|
+
setImageSize(size: [number, number], maintainAspectRatio?: boolean): void;
|
|
104
|
+
/**
|
|
105
|
+
* 获取图片大小
|
|
106
|
+
*/
|
|
107
|
+
getImageSize(): [number, number] | undefined;
|
|
108
|
+
/**
|
|
109
|
+
* 设置图片缩放
|
|
110
|
+
*/
|
|
111
|
+
setImageScale(scale: number): void;
|
|
112
|
+
/**
|
|
113
|
+
* 获取图片缩放
|
|
114
|
+
*/
|
|
115
|
+
getImageScale(): number;
|
|
116
|
+
/**
|
|
117
|
+
* 设置图片旋转角度
|
|
118
|
+
*/
|
|
119
|
+
setImageRotation(rotation: number): void;
|
|
120
|
+
/**
|
|
121
|
+
* 获取图片旋转角度
|
|
122
|
+
*/
|
|
123
|
+
getImageRotation(): number;
|
|
124
|
+
/**
|
|
125
|
+
* 设置图片锚点
|
|
126
|
+
*/
|
|
127
|
+
setImageAnchor(anchor: [number, number]): void;
|
|
128
|
+
/**
|
|
129
|
+
* 获取图片锚点
|
|
130
|
+
*/
|
|
131
|
+
getImageAnchor(): [number, number];
|
|
132
|
+
/**
|
|
133
|
+
* 设置边框
|
|
134
|
+
*/
|
|
135
|
+
setBorder(show: boolean, options?: {
|
|
136
|
+
color?: string;
|
|
137
|
+
width?: number;
|
|
138
|
+
}): void;
|
|
139
|
+
/**
|
|
140
|
+
* 设置阴影
|
|
141
|
+
*/
|
|
142
|
+
setShadow(show: boolean, options?: {
|
|
143
|
+
color?: string;
|
|
144
|
+
offset?: [number, number];
|
|
145
|
+
blur?: number;
|
|
146
|
+
}): void;
|
|
147
|
+
/**
|
|
148
|
+
* 获取原始图片尺寸
|
|
149
|
+
*/
|
|
150
|
+
getOriginalSize(): [number, number] | null;
|
|
151
|
+
/**
|
|
152
|
+
* 检查图片是否已加载
|
|
153
|
+
*/
|
|
154
|
+
isImageLoaded(): boolean;
|
|
155
|
+
/**
|
|
156
|
+
* 创建实例
|
|
157
|
+
*/
|
|
158
|
+
protected createInstance(config: ImageDrawingConfig): BaseDrawing<ImageDrawingConfig, ImageStyleConfig>;
|
|
159
|
+
/**
|
|
160
|
+
* 从JSON反序列化
|
|
161
|
+
*/
|
|
162
|
+
static fromJSON(data: any): ImageDrawing;
|
|
163
|
+
/**
|
|
164
|
+
* 销毁时清理资源
|
|
165
|
+
*/
|
|
166
|
+
destroy(): void;
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* 图片标绘工厂
|
|
170
|
+
*/
|
|
171
|
+
export declare class ImageDrawingFactory {
|
|
172
|
+
static create(config: ImageDrawingConfig): ImageDrawing;
|
|
173
|
+
static getType(): string;
|
|
174
|
+
static getSupportedTypes(): string[];
|
|
175
|
+
/**
|
|
176
|
+
* 创建预设样式的图片标绘
|
|
177
|
+
*/
|
|
178
|
+
static createPreset(coordinates: Coordinate, imageUrl: string, preset: "default" | "bordered" | "shadowed" | "highlighted", options?: {
|
|
179
|
+
name?: string;
|
|
180
|
+
text?: string;
|
|
181
|
+
size?: [number, number];
|
|
182
|
+
scale?: number;
|
|
183
|
+
}): ImageDrawing;
|
|
184
|
+
/**
|
|
185
|
+
* 从文件创建图片标绘
|
|
186
|
+
*/
|
|
187
|
+
static createFromFile(coordinates: Coordinate, file: File, options?: {
|
|
188
|
+
name?: string;
|
|
189
|
+
text?: string;
|
|
190
|
+
maxSize?: number;
|
|
191
|
+
}): Promise<ImageDrawing>;
|
|
192
|
+
}
|
|
193
|
+
//# sourceMappingURL=ImageDrawing.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ImageDrawing.d.ts","sourceRoot":"","sources":["../../../../src/core/drawing/ImageDrawing.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
import { Style } from 'ol/style';
|
|
2
|
+
import { Coordinate } from 'ol/coordinate';
|
|
3
|
+
import { BaseDrawing, DrawingConfig, DrawingStyleConfig } from './BaseDrawing';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* 线标绘样式配置
|
|
7
|
+
*/
|
|
8
|
+
export interface LineStyleConfig extends DrawingStyleConfig {
|
|
9
|
+
lineColor?: string;
|
|
10
|
+
lineWidth?: number;
|
|
11
|
+
lineDash?: number[];
|
|
12
|
+
lineCap?: "butt" | "round" | "square";
|
|
13
|
+
lineJoin?: "bevel" | "round" | "miter";
|
|
14
|
+
showArrow?: boolean;
|
|
15
|
+
arrowSize?: number;
|
|
16
|
+
arrowColor?: string;
|
|
17
|
+
showStartPoint?: boolean;
|
|
18
|
+
showEndPoint?: boolean;
|
|
19
|
+
pointSize?: number;
|
|
20
|
+
pointColor?: string;
|
|
21
|
+
showLength?: boolean;
|
|
22
|
+
lengthUnit?: "m" | "km" | "mi" | "ft";
|
|
23
|
+
lengthPrecision?: number;
|
|
24
|
+
imagePattern?: {
|
|
25
|
+
src: string;
|
|
26
|
+
scale?: number;
|
|
27
|
+
spacing?: number;
|
|
28
|
+
rotation?: number;
|
|
29
|
+
opacity?: number;
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* 线标绘配置
|
|
34
|
+
*/
|
|
35
|
+
export interface LineDrawingConfig extends DrawingConfig {
|
|
36
|
+
type: "line";
|
|
37
|
+
coordinates: Coordinate[];
|
|
38
|
+
style?: LineStyleConfig;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* 线标绘类
|
|
42
|
+
* 支持各种线样式:实线、虚线、箭头、端点标记、长度标注等
|
|
43
|
+
*/
|
|
44
|
+
export declare class LineDrawing extends BaseDrawing<LineDrawingConfig, LineStyleConfig> {
|
|
45
|
+
protected _config: LineDrawingConfig;
|
|
46
|
+
protected _style: LineStyleConfig;
|
|
47
|
+
constructor(config: LineDrawingConfig);
|
|
48
|
+
/**
|
|
49
|
+
* 创建要素
|
|
50
|
+
*/
|
|
51
|
+
protected createFeature(): void;
|
|
52
|
+
/**
|
|
53
|
+
* 创建样式
|
|
54
|
+
*/
|
|
55
|
+
protected createStyle(): Style | Style[];
|
|
56
|
+
/**
|
|
57
|
+
* 创建主线样式
|
|
58
|
+
*/
|
|
59
|
+
private createLineStyle;
|
|
60
|
+
/**
|
|
61
|
+
* 创建图片线样式(使用CanvasPattern优化版本)
|
|
62
|
+
*/
|
|
63
|
+
private createImageLineStyles;
|
|
64
|
+
/**
|
|
65
|
+
* 创建fallback样式(当图片加载失败时使用)
|
|
66
|
+
*/
|
|
67
|
+
private createFallbackStyle;
|
|
68
|
+
/**
|
|
69
|
+
* 创建箭头样式
|
|
70
|
+
*/
|
|
71
|
+
private createArrowStyles;
|
|
72
|
+
/**
|
|
73
|
+
* 创建箭头图像
|
|
74
|
+
*/
|
|
75
|
+
private createArrowImage;
|
|
76
|
+
/**
|
|
77
|
+
* 创建端点样式
|
|
78
|
+
*/
|
|
79
|
+
private createPointStyles;
|
|
80
|
+
/**
|
|
81
|
+
* 创建长度标注样式
|
|
82
|
+
*/
|
|
83
|
+
private createLengthStyle;
|
|
84
|
+
/**
|
|
85
|
+
* 创建文字样式
|
|
86
|
+
*/
|
|
87
|
+
private createTextStyle;
|
|
88
|
+
/**
|
|
89
|
+
* 更新要素几何
|
|
90
|
+
*/
|
|
91
|
+
protected updateFeatureGeometry(): void;
|
|
92
|
+
/**
|
|
93
|
+
* 创建选择样式
|
|
94
|
+
*/
|
|
95
|
+
protected createSelectionStyles(): Style[];
|
|
96
|
+
/**
|
|
97
|
+
* 创建编辑控制点样式
|
|
98
|
+
*/
|
|
99
|
+
private createEditHandleStyles;
|
|
100
|
+
/**
|
|
101
|
+
* 计算线长度
|
|
102
|
+
*/
|
|
103
|
+
private calculateLength;
|
|
104
|
+
/**
|
|
105
|
+
* 格式化长度显示
|
|
106
|
+
*/
|
|
107
|
+
private formatLength;
|
|
108
|
+
/**
|
|
109
|
+
* 设置坐标
|
|
110
|
+
*/
|
|
111
|
+
setCoordinates(coordinates: Coordinate[]): void;
|
|
112
|
+
/**
|
|
113
|
+
* 获取坐标
|
|
114
|
+
*/
|
|
115
|
+
getCoordinates(): Coordinate[];
|
|
116
|
+
/**
|
|
117
|
+
* 添加坐标点
|
|
118
|
+
*/
|
|
119
|
+
addCoordinate(coordinate: Coordinate): void;
|
|
120
|
+
/**
|
|
121
|
+
* 插入坐标点
|
|
122
|
+
*/
|
|
123
|
+
insertCoordinate(index: number, coordinate: Coordinate): void;
|
|
124
|
+
/**
|
|
125
|
+
* 移除坐标点
|
|
126
|
+
*/
|
|
127
|
+
removeCoordinate(index: number): void;
|
|
128
|
+
/**
|
|
129
|
+
* 设置线样式
|
|
130
|
+
*/
|
|
131
|
+
setLineStyle(options: {
|
|
132
|
+
color?: string;
|
|
133
|
+
width?: number;
|
|
134
|
+
dash?: number[];
|
|
135
|
+
cap?: "butt" | "round" | "square";
|
|
136
|
+
join?: "bevel" | "round" | "miter";
|
|
137
|
+
}): void;
|
|
138
|
+
/**
|
|
139
|
+
* 设置箭头
|
|
140
|
+
*/
|
|
141
|
+
setArrow(show: boolean, options?: {
|
|
142
|
+
size?: number;
|
|
143
|
+
color?: string;
|
|
144
|
+
}): void;
|
|
145
|
+
/**
|
|
146
|
+
* 设置端点显示
|
|
147
|
+
*/
|
|
148
|
+
setEndPoints(showStart: boolean, showEnd: boolean, options?: {
|
|
149
|
+
size?: number;
|
|
150
|
+
color?: string;
|
|
151
|
+
}): void;
|
|
152
|
+
/**
|
|
153
|
+
* 设置长度标注
|
|
154
|
+
*/
|
|
155
|
+
setLengthLabel(show: boolean, options?: {
|
|
156
|
+
unit?: "m" | "km" | "mi" | "ft";
|
|
157
|
+
precision?: number;
|
|
158
|
+
}): void;
|
|
159
|
+
/**
|
|
160
|
+
* 获取长度
|
|
161
|
+
*/
|
|
162
|
+
getLength(unit?: "m" | "km" | "mi" | "ft"): number;
|
|
163
|
+
/**
|
|
164
|
+
* 创建实例
|
|
165
|
+
*/
|
|
166
|
+
protected createInstance(config: LineDrawingConfig): BaseDrawing<LineDrawingConfig, LineStyleConfig>;
|
|
167
|
+
/**
|
|
168
|
+
* 从JSON反序列化
|
|
169
|
+
*/
|
|
170
|
+
static fromJSON(data: any): LineDrawing;
|
|
171
|
+
/**
|
|
172
|
+
* 添加透明度到颜色
|
|
173
|
+
*/
|
|
174
|
+
private addOpacityToColor;
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* 线标绘工厂
|
|
178
|
+
*/
|
|
179
|
+
export declare class LineDrawingFactory {
|
|
180
|
+
static create(config: LineDrawingConfig): LineDrawing;
|
|
181
|
+
static getType(): string;
|
|
182
|
+
static getSupportedTypes(): string[];
|
|
183
|
+
/**
|
|
184
|
+
* 创建预设样式的线
|
|
185
|
+
*/
|
|
186
|
+
static createPreset(coordinates: Coordinate[], preset: "default" | "dashed" | "arrow" | "measured", options?: {
|
|
187
|
+
name?: string;
|
|
188
|
+
text?: string;
|
|
189
|
+
color?: string;
|
|
190
|
+
width?: number;
|
|
191
|
+
}): LineDrawing;
|
|
192
|
+
}
|
|
193
|
+
//# sourceMappingURL=LineDrawing.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LineDrawing.d.ts","sourceRoot":"","sources":["../../../../src/core/drawing/LineDrawing.ts"],"names":[],"mappings":"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"}
|