vue-openlayers-plugin 1.0.82 → 1.0.85

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.
Files changed (233) hide show
  1. package/lib/BasemapPanel-3f78db9f.mjs +280 -0
  2. package/lib/CoordinateLocationDialog-d265fbae.mjs +263 -0
  3. package/lib/FilterPanel-136dc7d8.mjs +6 -0
  4. package/lib/LayerPanel-58997ef0.mjs +6 -0
  5. package/lib/MapPrintDialog-6ed0e095.mjs +6 -0
  6. package/lib/MeasurementDialog-b86c21c6.mjs +369 -0
  7. package/lib/MyMarkersDialog-fbbd0aeb.mjs +584 -0
  8. package/lib/RegionNavigationDialog-0808549f.mjs +1320 -0
  9. package/lib/ViewBookmarksDialog-94010687.mjs +723 -0
  10. package/lib/index-14efa785.mjs +756 -0
  11. package/lib/{index-61901e1f.mjs → index-5a13e877.mjs} +50503 -53903
  12. package/lib/index-5b1583d0.mjs +839 -0
  13. package/lib/{index.es-c17b5917.mjs → index.es-0c397170.mjs} +1 -1
  14. package/lib/index.esm.js +65 -56
  15. package/lib/index.umd.js +73180 -71503
  16. package/lib/style.css +1705 -1704
  17. package/package.json +11 -5
  18. package/types/src/assets/index.d.ts +9 -0
  19. package/types/src/assets/index.d.ts.map +1 -0
  20. package/types/src/components/CustomDialog/CustomDialog.vue.d.ts +16 -16
  21. package/types/src/components/CustomDialog/icons/index.d.ts +14 -0
  22. package/types/src/components/CustomDialog/icons/index.d.ts.map +1 -0
  23. package/types/src/components/OlBaseLayerSwitcher.vue.d.ts +19 -0
  24. package/types/src/components/OlBaseLayerSwitcher.vue.d.ts.map +1 -0
  25. package/types/src/components/OlControlPanel.vue.d.ts +63 -0
  26. package/types/src/components/OlControlPanel.vue.d.ts.map +1 -0
  27. package/types/src/components/OlDialogs/BasemapPanel.vue.d.ts +20 -0
  28. package/types/src/components/OlDialogs/BasemapPanel.vue.d.ts.map +1 -0
  29. package/types/src/components/OlDialogs/CoordinateLocationDialog.vue.d.ts +21 -0
  30. package/types/src/components/OlDialogs/CoordinateLocationDialog.vue.d.ts.map +1 -0
  31. package/types/src/components/OlDialogs/DialogManager.d.ts +58 -0
  32. package/types/src/components/OlDialogs/DialogManager.d.ts.map +1 -0
  33. package/types/src/components/OlDialogs/FilterPanel.vue.d.ts +33 -0
  34. package/types/src/components/OlDialogs/FilterPanel.vue.d.ts.map +1 -0
  35. package/types/src/components/OlDialogs/LayerPanel.vue.d.ts +1345 -0
  36. package/types/src/components/OlDialogs/LayerPanel.vue.d.ts.map +1 -0
  37. package/types/src/components/OlDialogs/LayerStyleConfig.vue.d.ts +23 -0
  38. package/types/src/components/OlDialogs/LayerStyleConfig.vue.d.ts.map +1 -0
  39. package/types/src/components/OlDialogs/LayerTreeNode.vue.d.ts +28 -0
  40. package/types/src/components/OlDialogs/LayerTreeNode.vue.d.ts.map +1 -0
  41. package/types/src/components/OlDialogs/MapDrawingDialog/components/ListTab.vue.d.ts +3 -0
  42. package/types/src/components/OlDialogs/MapDrawingDialog/components/ListTab.vue.d.ts.map +1 -0
  43. package/types/src/components/OlDialogs/MapDrawingDialog/components/MarkTab.vue.d.ts +3 -0
  44. package/types/src/components/OlDialogs/MapDrawingDialog/components/MarkTab.vue.d.ts.map +1 -0
  45. package/types/src/components/OlDialogs/MapDrawingDialog/index.vue.d.ts +3 -0
  46. package/types/src/components/OlDialogs/MapDrawingDialog/index.vue.d.ts.map +1 -0
  47. package/types/src/components/OlDialogs/MapPrintDialog.vue.d.ts +24 -0
  48. package/types/src/components/OlDialogs/MapPrintDialog.vue.d.ts.map +1 -0
  49. package/types/src/components/OlDialogs/MeasurementDialog.vue.d.ts +41 -0
  50. package/types/src/components/OlDialogs/MeasurementDialog.vue.d.ts.map +1 -0
  51. package/types/src/components/OlDialogs/MyMarkersDialog.vue.d.ts +21 -0
  52. package/types/src/components/OlDialogs/MyMarkersDialog.vue.d.ts.map +1 -0
  53. package/types/src/components/OlDialogs/RegionNavigationDialog.vue.d.ts +25 -0
  54. package/types/src/components/OlDialogs/RegionNavigationDialog.vue.d.ts.map +1 -0
  55. package/types/src/components/OlDialogs/ViewBookmarksDialog.vue.d.ts +21 -0
  56. package/types/src/components/OlDialogs/ViewBookmarksDialog.vue.d.ts.map +1 -0
  57. package/types/src/components/OlDialogs/registry.d.ts +39 -0
  58. package/types/src/components/OlDialogs/registry.d.ts.map +1 -0
  59. package/types/src/components/OlDrawToolbar.vue.d.ts +61 -0
  60. package/types/src/components/OlDrawToolbar.vue.d.ts.map +1 -0
  61. package/types/src/components/OlLegendPanel.vue.d.ts +69 -0
  62. package/types/src/components/OlLegendPanel.vue.d.ts.map +1 -0
  63. package/types/src/components/OlMapContainer.vue.d.ts +112 -0
  64. package/types/src/components/OlMapContainer.vue.d.ts.map +1 -0
  65. package/types/src/components/OlMapPopup/ArrayPopup.vue.d.ts +47 -0
  66. package/types/src/components/OlMapPopup/ArrayPopup.vue.d.ts.map +1 -0
  67. package/types/src/components/OlMapPopup/BasePopup.vue.d.ts +63 -0
  68. package/types/src/components/OlMapPopup/BasePopup.vue.d.ts.map +1 -0
  69. package/types/src/components/OlMapPopup/HtmlPopup.vue.d.ts +45 -0
  70. package/types/src/components/OlMapPopup/HtmlPopup.vue.d.ts.map +1 -0
  71. package/types/src/components/OlMapPopup/ImagePopup.vue.d.ts +45 -0
  72. package/types/src/components/OlMapPopup/ImagePopup.vue.d.ts.map +1 -0
  73. package/types/src/components/OlMapPopup/index.d.ts +9 -0
  74. package/types/src/components/OlMapPopup/index.d.ts.map +1 -0
  75. package/types/src/components/OlMapPopup/types.d.ts +118 -0
  76. package/types/src/components/OlMapPopup/types.d.ts.map +1 -0
  77. package/types/src/components/OlMapSearch.vue.d.ts +126 -0
  78. package/types/src/components/OlMapSearch.vue.d.ts.map +1 -0
  79. package/types/src/components/OlMapTooltip.vue.d.ts +70 -0
  80. package/types/src/components/OlMapTooltip.vue.d.ts.map +1 -0
  81. package/types/src/core/EventBus.d.ts +66 -0
  82. package/types/src/core/EventBus.d.ts.map +1 -0
  83. package/types/src/core/EventManager.d.ts +147 -0
  84. package/types/src/core/EventManager.d.ts.map +1 -0
  85. package/types/src/core/FeatureHighlightManager.d.ts +103 -0
  86. package/types/src/core/FeatureHighlightManager.d.ts.map +1 -0
  87. package/types/src/core/GlobalStyleManager.d.ts +76 -0
  88. package/types/src/core/GlobalStyleManager.d.ts.map +1 -0
  89. package/types/src/core/LayerConfigManager.d.ts +66 -0
  90. package/types/src/core/LayerConfigManager.d.ts.map +1 -0
  91. package/types/src/core/LayerManager.d.ts +198 -0
  92. package/types/src/core/LayerManager.d.ts.map +1 -0
  93. package/types/src/core/LayerTreeManager.d.ts +125 -0
  94. package/types/src/core/LayerTreeManager.d.ts.map +1 -0
  95. package/types/src/core/MapManager.d.ts +203 -0
  96. package/types/src/core/MapManager.d.ts.map +1 -0
  97. package/types/src/core/MarkerDrawingAdapter.d.ts +125 -0
  98. package/types/src/core/MarkerDrawingAdapter.d.ts.map +1 -0
  99. package/types/src/core/PluginManager.d.ts +158 -0
  100. package/types/src/core/PluginManager.d.ts.map +1 -0
  101. package/types/src/core/PopupManager.d.ts +110 -0
  102. package/types/src/core/PopupManager.d.ts.map +1 -0
  103. package/types/src/core/SearchMarkerManager.d.ts +96 -0
  104. package/types/src/core/SearchMarkerManager.d.ts.map +1 -0
  105. package/types/src/core/TooltipHelper.d.ts +134 -0
  106. package/types/src/core/TooltipHelper.d.ts.map +1 -0
  107. package/types/src/core/amapSearchApi.d.ts +57 -0
  108. package/types/src/core/amapSearchApi.d.ts.map +1 -0
  109. package/types/src/core/basemapManager.d.ts +63 -0
  110. package/types/src/core/basemapManager.d.ts.map +1 -0
  111. package/types/src/core/configLoader.d.ts +159 -0
  112. package/types/src/core/configLoader.d.ts.map +1 -0
  113. package/types/src/core/drawing/BaseDrawing.d.ts +255 -0
  114. package/types/src/core/drawing/BaseDrawing.d.ts.map +1 -0
  115. package/types/src/core/drawing/DrawingManager.d.ts +394 -0
  116. package/types/src/core/drawing/DrawingManager.d.ts.map +1 -0
  117. package/types/src/core/drawing/IconDrawing.d.ts +188 -0
  118. package/types/src/core/drawing/IconDrawing.d.ts.map +1 -0
  119. package/types/src/core/drawing/ImageDrawing.d.ts +193 -0
  120. package/types/src/core/drawing/ImageDrawing.d.ts.map +1 -0
  121. package/types/src/core/drawing/LineDrawing.d.ts +193 -0
  122. package/types/src/core/drawing/LineDrawing.d.ts.map +1 -0
  123. package/types/src/core/drawing/MilitaryDrawing.d.ts +175 -0
  124. package/types/src/core/drawing/MilitaryDrawing.d.ts.map +1 -0
  125. package/types/src/core/drawing/MultiLineStringDrawing.d.ts +294 -0
  126. package/types/src/core/drawing/MultiLineStringDrawing.d.ts.map +1 -0
  127. package/types/src/core/drawing/MultiPointDrawing.d.ts +244 -0
  128. package/types/src/core/drawing/MultiPointDrawing.d.ts.map +1 -0
  129. package/types/src/core/drawing/MultiPolygonDrawing.d.ts +206 -0
  130. package/types/src/core/drawing/MultiPolygonDrawing.d.ts.map +1 -0
  131. package/types/src/core/drawing/PointDrawing.d.ts +175 -0
  132. package/types/src/core/drawing/PointDrawing.d.ts.map +1 -0
  133. package/types/src/core/drawing/PointWithTextDrawing.d.ts +183 -0
  134. package/types/src/core/drawing/PointWithTextDrawing.d.ts.map +1 -0
  135. package/types/src/core/drawing/PolygonDrawing.d.ts +240 -0
  136. package/types/src/core/drawing/PolygonDrawing.d.ts.map +1 -0
  137. package/types/src/core/drawing/TextDrawing.d.ts +164 -0
  138. package/types/src/core/drawing/TextDrawing.d.ts.map +1 -0
  139. package/types/src/core/drawing/index.d.ts +525 -0
  140. package/types/src/core/drawing/index.d.ts.map +1 -0
  141. package/types/src/core/geoJsonLocationTool.d.ts +116 -0
  142. package/types/src/core/geoJsonLocationTool.d.ts.map +1 -0
  143. package/types/src/core/layers/BaseLayer.d.ts +162 -0
  144. package/types/src/core/layers/BaseLayer.d.ts.map +1 -0
  145. package/types/src/core/layers/CanvasLayerHandler.d.ts +65 -0
  146. package/types/src/core/layers/CanvasLayerHandler.d.ts.map +1 -0
  147. package/types/src/core/layers/ClusterLayerHandler.d.ts +122 -0
  148. package/types/src/core/layers/ClusterLayerHandler.d.ts.map +1 -0
  149. package/types/src/core/layers/GMLLayerHandler.d.ts +107 -0
  150. package/types/src/core/layers/GMLLayerHandler.d.ts.map +1 -0
  151. package/types/src/core/layers/GeoJSONLayerHandler.d.ts +125 -0
  152. package/types/src/core/layers/GeoJSONLayerHandler.d.ts.map +1 -0
  153. package/types/src/core/layers/HeatmapLayerHandler.d.ts +86 -0
  154. package/types/src/core/layers/HeatmapLayerHandler.d.ts.map +1 -0
  155. package/types/src/core/layers/ImageVectorLayerHandler.d.ts +77 -0
  156. package/types/src/core/layers/ImageVectorLayerHandler.d.ts.map +1 -0
  157. package/types/src/core/layers/KMLLayerHandler.d.ts +95 -0
  158. package/types/src/core/layers/KMLLayerHandler.d.ts.map +1 -0
  159. package/types/src/core/layers/LayerFactory.d.ts +63 -0
  160. package/types/src/core/layers/LayerFactory.d.ts.map +1 -0
  161. package/types/src/core/layers/SuperMapServiceTester.d.ts +54 -0
  162. package/types/src/core/layers/SuperMapServiceTester.d.ts.map +1 -0
  163. package/types/src/core/layers/SuperMapTiledMapServiceHandler.d.ts +35 -0
  164. package/types/src/core/layers/SuperMapTiledMapServiceHandler.d.ts.map +1 -0
  165. package/types/src/core/layers/TiandituConfigHelper.d.ts +120 -0
  166. package/types/src/core/layers/TiandituConfigHelper.d.ts.map +1 -0
  167. package/types/src/core/layers/TiandituLayerHandler.d.ts +75 -0
  168. package/types/src/core/layers/TiandituLayerHandler.d.ts.map +1 -0
  169. package/types/src/core/layers/TileLayerHandler.d.ts +42 -0
  170. package/types/src/core/layers/TileLayerHandler.d.ts.map +1 -0
  171. package/types/src/core/layers/TileSuperMapRestHandler.d.ts +161 -0
  172. package/types/src/core/layers/TileSuperMapRestHandler.d.ts.map +1 -0
  173. package/types/src/core/layers/VectorTileLayerHandler.d.ts +126 -0
  174. package/types/src/core/layers/VectorTileLayerHandler.d.ts.map +1 -0
  175. package/types/src/core/layers/WFSLayerHandler.d.ts +80 -0
  176. package/types/src/core/layers/WFSLayerHandler.d.ts.map +1 -0
  177. package/types/src/core/layers/WKTLayerHandler.d.ts +123 -0
  178. package/types/src/core/layers/WKTLayerHandler.d.ts.map +1 -0
  179. package/types/src/core/layers/WMSLayerHandler.d.ts +78 -0
  180. package/types/src/core/layers/WMSLayerHandler.d.ts.map +1 -0
  181. package/types/src/core/layers/WMTSLayerHandler.d.ts +44 -0
  182. package/types/src/core/layers/WMTSLayerHandler.d.ts.map +1 -0
  183. package/types/src/core/layers/index.d.ts +20 -0
  184. package/types/src/core/layers/index.d.ts.map +1 -0
  185. package/types/src/core/layers/interfaces.d.ts +95 -0
  186. package/types/src/core/layers/interfaces.d.ts.map +1 -0
  187. package/types/src/core/mapOperationTool.d.ts +145 -0
  188. package/types/src/core/mapOperationTool.d.ts.map +1 -0
  189. package/types/src/core/measurementTool.d.ts +136 -0
  190. package/types/src/core/measurementTool.d.ts.map +1 -0
  191. package/types/src/core/overviewMapUtil.d.ts +62 -0
  192. package/types/src/core/overviewMapUtil.d.ts.map +1 -0
  193. package/types/src/core/proxyHelper.d.ts +66 -0
  194. package/types/src/core/proxyHelper.d.ts.map +1 -0
  195. package/types/src/core/storage.d.ts +139 -0
  196. package/types/src/core/storage.d.ts.map +1 -0
  197. package/types/src/core/styles/StyleFactory.d.ts +74 -0
  198. package/types/src/core/styles/StyleFactory.d.ts.map +1 -0
  199. package/types/src/core/styles/StyleManager.d.ts +77 -0
  200. package/types/src/core/styles/StyleManager.d.ts.map +1 -0
  201. package/types/src/core/styles/index.d.ts +67 -0
  202. package/types/src/core/styles/index.d.ts.map +1 -0
  203. package/types/src/core/styles/interfaces.d.ts +221 -0
  204. package/types/src/core/styles/interfaces.d.ts.map +1 -0
  205. package/types/src/core/tiandituSearchApi.d.ts +51 -0
  206. package/types/src/core/tiandituSearchApi.d.ts.map +1 -0
  207. package/types/src/data-old/testLayers.d.ts +84 -0
  208. package/types/src/data-old/testLayers.d.ts.map +1 -0
  209. package/types/src/examples-old/FilterExamples.d.ts +104 -0
  210. package/types/src/examples-old/FilterExamples.d.ts.map +1 -0
  211. package/types/src/hooks/useMap.d.ts +5 -0
  212. package/types/src/hooks/useMap.d.ts.map +1 -0
  213. package/types/src/services/searchService.d.ts +106 -0
  214. package/types/src/services/searchService.d.ts.map +1 -0
  215. package/types/src/test-old/FilterSystemTest.d.ts +57 -0
  216. package/types/src/test-old/FilterSystemTest.d.ts.map +1 -0
  217. package/types/src/types/index.d.ts +2 -11
  218. package/types/src/types/index.d.ts.map +1 -1
  219. package/types/src/types/map.d.ts +819 -0
  220. package/types/src/types/map.d.ts.map +1 -0
  221. package/types/src/types/plugin.d.ts +202 -0
  222. package/types/src/types/plugin.d.ts.map +1 -0
  223. package/types/src/utils/DiffusionAnimationHelper.d.ts +60 -0
  224. package/types/src/utils/DiffusionAnimationHelper.d.ts.map +1 -0
  225. package/types/src/utils/GifAnimationHelper.d.ts +31 -0
  226. package/types/src/utils/GifAnimationHelper.d.ts.map +1 -0
  227. package/types/src/utils/coordinateTransform.d.ts +28 -0
  228. package/types/src/utils/coordinateTransform.d.ts.map +1 -0
  229. package/types/src/utils/index.d.ts +8 -8
  230. package/types/src/utils/index.d.ts.map +1 -1
  231. package/types/src/utils/unitConverter.d.ts +36 -0
  232. package/types/src/utils/unitConverter.d.ts.map +1 -0
  233. package/types/tsconfig.tsbuildinfo +1 -1
@@ -0,0 +1,183 @@
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 PointWithTextStyleConfig extends Omit<DrawingStyleConfig, 'pointStyle'> {
9
+ pointStyle: "circle" | "square" | "triangle" | "star" | "cross" | "x" | "icon";
10
+ pointSize?: number;
11
+ pointColor?: string;
12
+ pointStrokeColor?: string;
13
+ pointStrokeWidth?: number;
14
+ pointOpacity?: number;
15
+ iconUrl?: string;
16
+ iconScale?: number;
17
+ iconRotation?: number;
18
+ iconOpacity?: number;
19
+ iconAnchor?: [number, number];
20
+ iconOffset?: [number, number];
21
+ textContent: string;
22
+ fontSize?: number;
23
+ fontFamily?: string;
24
+ fontWeight?: "normal" | "bold" | "bolder" | "lighter";
25
+ fontStyle?: "normal" | "italic" | "oblique";
26
+ textColor?: string;
27
+ textAlign?: "left" | "center" | "right" | "start" | "end";
28
+ textBaseline?: "top" | "middle" | "bottom" | "alphabetic" | "hanging";
29
+ textOffsetX?: number;
30
+ textOffsetY?: number;
31
+ textRotation?: number;
32
+ textScale?: number;
33
+ textPosition?: "top" | "bottom" | "left" | "right" | "center" | "top-left" | "top-right" | "bottom-left" | "bottom-right";
34
+ textBackgroundColor?: string;
35
+ textBackgroundOpacity?: number;
36
+ textBackgroundPadding?: [number, number, number, number];
37
+ textStrokeColor?: string;
38
+ textStrokeWidth?: number;
39
+ }
40
+ /**
41
+ * 带文字的点标绘配置
42
+ */
43
+ export interface PointWithTextDrawingConfig extends Omit<DrawingConfig, 'style'> {
44
+ type: "point-with-text";
45
+ coordinates?: Coordinate | Coordinate[] | Coordinate[][] | {
46
+ center: Coordinate;
47
+ radius: number;
48
+ } | {
49
+ topLeft: Coordinate;
50
+ bottomRight: Coordinate;
51
+ } | any;
52
+ style?: PointWithTextStyleConfig;
53
+ }
54
+ /**
55
+ * 带文字的点标绘类
56
+ * 在点标绘的基础上添加文字标注功能
57
+ */
58
+ export declare class PointWithTextDrawing extends BaseDrawing<PointWithTextDrawingConfig, PointWithTextStyleConfig> {
59
+ constructor(config: PointWithTextDrawingConfig);
60
+ /**
61
+ * 创建要素
62
+ */
63
+ protected createFeature(): void;
64
+ /**
65
+ * 创建样式
66
+ */
67
+ protected createStyle(): Style;
68
+ /**
69
+ * 创建点样式
70
+ */
71
+ private createPointStyle;
72
+ /**
73
+ * 创建几何形状样式
74
+ */
75
+ private createGeometryStyle;
76
+ /**
77
+ * 创建文字样式
78
+ */
79
+ private createTextStyle;
80
+ /**
81
+ * 计算文字偏移位置
82
+ */
83
+ private calculateTextOffset;
84
+ /**
85
+ * 获取字体字符串
86
+ */
87
+ private getFontString;
88
+ /**
89
+ * 更新要素几何
90
+ */
91
+ protected updateFeatureGeometry(): void;
92
+ /**
93
+ * 更新选中样式
94
+ */
95
+ protected updateSelectionStyle(): void;
96
+ /**
97
+ * 设置坐标
98
+ */
99
+ setCoordinates(coordinates: Coordinate): void;
100
+ /**
101
+ * 获取坐标
102
+ */
103
+ getCoordinates(): Coordinate | undefined;
104
+ /**
105
+ * 设置点样式
106
+ */
107
+ setPointStyle(options: {
108
+ style?: "circle" | "square" | "triangle" | "star" | "cross" | "x" | "icon";
109
+ size?: number;
110
+ color?: string;
111
+ strokeColor?: string;
112
+ strokeWidth?: number;
113
+ opacity?: number;
114
+ }): void;
115
+ /**
116
+ * 设置图标
117
+ */
118
+ setIcon(options: {
119
+ url?: string;
120
+ scale?: number;
121
+ rotation?: number;
122
+ opacity?: number;
123
+ anchor?: [number, number];
124
+ offset?: [number, number];
125
+ }): void;
126
+ /**
127
+ * 设置文字内容
128
+ */
129
+ setText(text: string): void;
130
+ /**
131
+ * 获取文字内容
132
+ */
133
+ getText(): string;
134
+ /**
135
+ * 设置文字样式
136
+ */
137
+ setTextStyle(options: {
138
+ fontSize?: number;
139
+ fontFamily?: string;
140
+ fontWeight?: "normal" | "bold" | "bolder" | "lighter";
141
+ fontStyle?: "normal" | "italic" | "oblique";
142
+ color?: string;
143
+ position?: "top" | "bottom" | "left" | "right" | "center" | "top-left" | "top-right" | "bottom-left" | "bottom-right";
144
+ }): void;
145
+ /**
146
+ * 设置文字位置
147
+ */
148
+ setTextPosition(position: "top" | "bottom" | "left" | "right" | "center" | "top-left" | "top-right" | "bottom-left" | "bottom-right"): void;
149
+ /**
150
+ * 设置文字偏移
151
+ */
152
+ setTextOffset(offsetX: number, offsetY: number): void;
153
+ /**
154
+ * 创建实例
155
+ */
156
+ protected createInstance(config: PointWithTextDrawingConfig): BaseDrawing<PointWithTextDrawingConfig, PointWithTextStyleConfig>;
157
+ /**
158
+ * 从JSON数据创建带文字的点标绘
159
+ */
160
+ static fromJSON(data: any): PointWithTextDrawing;
161
+ /**
162
+ * 为颜色添加透明度
163
+ */
164
+ private addOpacityToColor;
165
+ }
166
+ /**
167
+ * 带文字的点标绘工厂类
168
+ */
169
+ export declare class PointWithTextDrawingFactory {
170
+ static create(config: PointWithTextDrawingConfig): PointWithTextDrawing;
171
+ static getType(): string;
172
+ static getSupportedTypes(): string[];
173
+ /**
174
+ * 创建预设带文字的点标绘
175
+ */
176
+ static createPreset(coordinates: Coordinate, text: string, preset: "marker" | "location" | "warning" | "info" | "success" | "danger", options?: {
177
+ name?: string;
178
+ pointSize?: number;
179
+ textPosition?: "top" | "bottom" | "left" | "right" | "center";
180
+ fontSize?: number;
181
+ }): PointWithTextDrawing;
182
+ }
183
+ //# sourceMappingURL=PointWithTextDrawing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PointWithTextDrawing.d.ts","sourceRoot":"","sources":["../../../../src/core/drawing/PointWithTextDrawing.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,240 @@
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 PolygonStyleConfig extends DrawingStyleConfig {
9
+ fillColor?: string;
10
+ strokeColor?: string;
11
+ strokeWidth?: number;
12
+ strokeDash?: number[];
13
+ strokeOpacity?: number;
14
+ fillOpacity?: number;
15
+ showVertices?: boolean;
16
+ vertexSize?: number;
17
+ vertexColor?: string;
18
+ showArea?: boolean;
19
+ areaUnit?: "m²" | "km²" | "ha" | "acre" | "ft²";
20
+ areaPrecision?: number;
21
+ showPerimeter?: boolean;
22
+ perimeterUnit?: "m" | "km" | "mi" | "ft";
23
+ perimeterPrecision?: number;
24
+ }
25
+ /**
26
+ * 面标绘配置
27
+ */
28
+ export interface PolygonDrawingConfig extends DrawingConfig {
29
+ type: "polygon" | "circle" | "rectangle" | "star";
30
+ coordinates?: Coordinate[] | {
31
+ center: Coordinate;
32
+ radius: number;
33
+ } | {
34
+ topLeft: Coordinate;
35
+ bottomRight: Coordinate;
36
+ };
37
+ style?: PolygonStyleConfig;
38
+ }
39
+ /**
40
+ * 面标绘类
41
+ * 支持多边形、圆形、矩形等面状图形的绘制
42
+ */
43
+ export declare class PolygonDrawing extends BaseDrawing<PolygonDrawingConfig, PolygonStyleConfig> {
44
+ protected _config: PolygonDrawingConfig;
45
+ protected _style: PolygonStyleConfig;
46
+ constructor(config: PolygonDrawingConfig);
47
+ /**
48
+ * 创建要素
49
+ */
50
+ protected createFeature(): void;
51
+ /**
52
+ * 创建多边形几何
53
+ */
54
+ private createPolygonGeometry;
55
+ /**
56
+ * 创建圆形几何
57
+ */
58
+ private createCircleGeometry;
59
+ /**
60
+ * 创建矩形几何
61
+ */
62
+ private createRectangleGeometry;
63
+ /**
64
+ * 创建星形几何
65
+ */
66
+ private createStarGeometry;
67
+ /**
68
+ * 创建样式
69
+ */
70
+ protected createStyle(): Style | Style[];
71
+ /**
72
+ * 创建主面样式
73
+ */
74
+ private createPolygonStyle;
75
+ /**
76
+ * 创建顶点样式
77
+ */
78
+ private createVertexStyles;
79
+ /**
80
+ * 创建面积标注样式
81
+ */
82
+ private createAreaStyle;
83
+ /**
84
+ * 创建周长标注样式
85
+ */
86
+ private createPerimeterStyle;
87
+ /**
88
+ * 创建文字样式
89
+ */
90
+ private createTextStyle;
91
+ /**
92
+ * 更新要素几何
93
+ */
94
+ protected updateFeatureGeometry(): void;
95
+ /**
96
+ * 创建选择样式
97
+ */
98
+ protected createSelectionStyles(): Style[];
99
+ /**
100
+ * 创建编辑控制点样式
101
+ */
102
+ private createEditHandleStyles;
103
+ /**
104
+ * 获取图形中心点
105
+ */
106
+ private getCenterPoint;
107
+ /**
108
+ * 计算面积
109
+ */
110
+ private calculateArea;
111
+ /**
112
+ * 计算周长
113
+ */
114
+ private calculatePerimeter;
115
+ /**
116
+ * 格式化面积显示
117
+ */
118
+ private formatArea;
119
+ /**
120
+ * 格式化周长显示
121
+ */
122
+ private formatPerimeter;
123
+ /**
124
+ * 设置坐标
125
+ */
126
+ setCoordinates(coordinates: Coordinate[] | {
127
+ center: Coordinate;
128
+ radius: number;
129
+ } | {
130
+ topLeft: Coordinate;
131
+ bottomRight: Coordinate;
132
+ }): void;
133
+ /**
134
+ * 获取坐标
135
+ */
136
+ getCoordinates(): Coordinate[] | {
137
+ center: Coordinate;
138
+ radius: number;
139
+ } | {
140
+ topLeft: Coordinate;
141
+ bottomRight: Coordinate;
142
+ };
143
+ /**
144
+ * 获取完整的多边形坐标数组(适用于所有类型)
145
+ */
146
+ getPolygonCoordinates(): Coordinate[];
147
+ /**
148
+ * 添加顶点(仅适用于多边形)
149
+ */
150
+ addVertex(coordinate: Coordinate, index?: number): void;
151
+ /**
152
+ * 移除顶点(仅适用于多边形)
153
+ */
154
+ removeVertex(index: number): void;
155
+ /**
156
+ * 设置填充样式
157
+ */
158
+ setFillStyle(options: {
159
+ color?: string;
160
+ opacity?: number;
161
+ }): void;
162
+ /**
163
+ * 设置边框样式
164
+ */
165
+ setStrokeStyle(options: {
166
+ color?: string;
167
+ width?: number;
168
+ dash?: number[];
169
+ opacity?: number;
170
+ }): void;
171
+ /**
172
+ * 设置顶点显示
173
+ */
174
+ setVerticesVisible(visible: boolean, options?: {
175
+ size?: number;
176
+ color?: string;
177
+ }): void;
178
+ /**
179
+ * 设置面积标注
180
+ */
181
+ setAreaLabel(show: boolean, options?: {
182
+ unit?: "m²" | "km²" | "ha" | "acre" | "ft²";
183
+ precision?: number;
184
+ }): void;
185
+ /**
186
+ * 设置周长标注
187
+ */
188
+ setPerimeterLabel(show: boolean, options?: {
189
+ unit?: "m" | "km" | "mi" | "ft";
190
+ precision?: number;
191
+ }): void;
192
+ /**
193
+ * 获取面积
194
+ */
195
+ getArea(unit?: "m²" | "km²" | "ha" | "acre" | "ft²"): number;
196
+ /**
197
+ * 获取周长
198
+ */
199
+ getPerimeter(unit?: "m" | "km" | "mi" | "ft"): number;
200
+ /**
201
+ * 获取多边形类型
202
+ */
203
+ getPolygonType(): "polygon" | "circle" | "rectangle" | "star";
204
+ /**
205
+ * 创建实例
206
+ */
207
+ protected createInstance(config: PolygonDrawingConfig): BaseDrawing<PolygonDrawingConfig, PolygonStyleConfig>;
208
+ /**
209
+ * 从JSON反序列化
210
+ */
211
+ static fromJSON(data: any): PolygonDrawing;
212
+ /**
213
+ * 添加透明度到颜色
214
+ */
215
+ private addOpacityToColor;
216
+ }
217
+ /**
218
+ * 面标绘工厂
219
+ */
220
+ export declare class PolygonDrawingFactory {
221
+ static create(config: PolygonDrawingConfig): PolygonDrawing;
222
+ static getType(): string;
223
+ static getSupportedTypes(): string[];
224
+ /**
225
+ * 创建预设样式的面
226
+ */
227
+ static createPreset(coordinates: Coordinate[] | {
228
+ center: Coordinate;
229
+ radius: number;
230
+ } | {
231
+ topLeft: Coordinate;
232
+ bottomRight: Coordinate;
233
+ }, type: "polygon" | "circle" | "rectangle", preset: "default" | "highlight" | "warning" | "success" | "danger", options?: {
234
+ name?: string;
235
+ text?: string;
236
+ showArea?: boolean;
237
+ showPerimeter?: boolean;
238
+ }): PolygonDrawing;
239
+ }
240
+ //# sourceMappingURL=PolygonDrawing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PolygonDrawing.d.ts","sourceRoot":"","sources":["../../../../src/core/drawing/PolygonDrawing.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,164 @@
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 TextStyleConfig extends DrawingStyleConfig {
9
+ textContent: string;
10
+ fontSize?: number;
11
+ fontFamily?: string;
12
+ fontWeight?: "normal" | "bold" | "bolder" | "lighter";
13
+ fontStyle?: "normal" | "italic" | "oblique";
14
+ textColor?: string;
15
+ textAlign?: "left" | "center" | "right" | "start" | "end";
16
+ textBaseline?: "top" | "middle" | "bottom" | "alphabetic" | "hanging";
17
+ textOffsetX?: number;
18
+ textOffsetY?: number;
19
+ textRotation?: number;
20
+ textScale?: number;
21
+ backgroundColor?: string;
22
+ backgroundOpacity?: number;
23
+ backgroundPadding?: [number, number, number, number];
24
+ textStrokeColor?: string;
25
+ textStrokeWidth?: number;
26
+ textShadowColor?: string;
27
+ textShadowOffsetX?: number;
28
+ textShadowOffsetY?: number;
29
+ textShadowBlur?: number;
30
+ }
31
+ /**
32
+ * 文字标绘配置
33
+ */
34
+ export interface TextDrawingConfig extends DrawingConfig {
35
+ type: "text";
36
+ coordinates: Coordinate;
37
+ style?: TextStyleConfig;
38
+ }
39
+ /**
40
+ * 文字标绘类
41
+ * 专门用于在地图上绘制文字标注,支持丰富的文字样式和效果
42
+ */
43
+ export declare class TextDrawing extends BaseDrawing<TextDrawingConfig, TextStyleConfig> {
44
+ protected _config: TextDrawingConfig;
45
+ protected _style: TextStyleConfig;
46
+ constructor(config: TextDrawingConfig);
47
+ /**
48
+ * 创建要素
49
+ */
50
+ protected createFeature(): void;
51
+ /**
52
+ * 创建样式
53
+ */
54
+ protected createStyle(): Style;
55
+ /**
56
+ * 获取字体字符串
57
+ */
58
+ private getFontString;
59
+ /**
60
+ * 更新要素几何
61
+ */
62
+ protected updateFeatureGeometry(): void;
63
+ /**
64
+ * 更新选中样式
65
+ */
66
+ protected updateSelectionStyle(): void;
67
+ /**
68
+ * 设置坐标
69
+ */
70
+ setCoordinates(coordinates: Coordinate): void;
71
+ /**
72
+ * 获取坐标
73
+ */
74
+ getCoordinates(): Coordinate;
75
+ /**
76
+ * 设置文字内容
77
+ */
78
+ setText(text: string): void;
79
+ /**
80
+ * 获取文字内容
81
+ */
82
+ getText(): string;
83
+ /**
84
+ * 设置字体大小
85
+ */
86
+ setFontSize(size: number): void;
87
+ /**
88
+ * 设置字体颜色
89
+ */
90
+ setTextColor(color: string): void;
91
+ /**
92
+ * 设置字体样式
93
+ */
94
+ setFontStyle(options: {
95
+ family?: string;
96
+ size?: number;
97
+ weight?: "normal" | "bold" | "bolder" | "lighter";
98
+ style?: "normal" | "italic" | "oblique";
99
+ color?: string;
100
+ }): void;
101
+ /**
102
+ * 设置文字对齐
103
+ */
104
+ setTextAlign(align: "left" | "center" | "right" | "start" | "end", baseline?: "top" | "middle" | "bottom" | "alphabetic" | "hanging"): void;
105
+ /**
106
+ * 设置文字偏移
107
+ */
108
+ setTextOffset(offsetX: number, offsetY: number): void;
109
+ /**
110
+ * 设置文字旋转
111
+ */
112
+ setTextRotation(rotation: number): void;
113
+ /**
114
+ * 设置文字缩放
115
+ */
116
+ setTextScale(scale: number): void;
117
+ /**
118
+ * 设置背景样式
119
+ */
120
+ setBackground(options: {
121
+ color?: string;
122
+ opacity?: number;
123
+ padding?: [number, number, number, number];
124
+ }): void;
125
+ /**
126
+ * 设置文字描边
127
+ */
128
+ setTextStroke(color: string, width: number): void;
129
+ /**
130
+ * 移除文字描边
131
+ */
132
+ removeTextStroke(): void;
133
+ /**
134
+ * 创建实例
135
+ */
136
+ protected createInstance(config: TextDrawingConfig): BaseDrawing<TextDrawingConfig, TextStyleConfig>;
137
+ /**
138
+ * 从JSON数据创建文字标绘
139
+ */
140
+ static fromJSON(data: any): TextDrawing;
141
+ /**
142
+ * 为颜色添加透明度
143
+ */
144
+ private addOpacityToColor;
145
+ }
146
+ /**
147
+ * 文字标绘工厂类
148
+ */
149
+ export declare class TextDrawingFactory {
150
+ static create(config: TextDrawingConfig): TextDrawing;
151
+ static getType(): string;
152
+ static getSupportedTypes(): string[];
153
+ /**
154
+ * 创建预设文字标绘
155
+ */
156
+ static createPreset(coordinates: Coordinate, text: string, preset: "default" | "title" | "subtitle" | "caption" | "warning" | "success" | "danger" | "info", options?: {
157
+ name?: string;
158
+ fontSize?: number;
159
+ fontFamily?: string;
160
+ backgroundColor?: string;
161
+ textStroke?: boolean;
162
+ }): TextDrawing;
163
+ }
164
+ //# sourceMappingURL=TextDrawing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TextDrawing.d.ts","sourceRoot":"","sources":["../../../../src/core/drawing/TextDrawing.ts"],"names":[],"mappings":"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"}