geo-types-cz 1.0.3 → 1.0.5

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/README.md CHANGED
@@ -4,7 +4,6 @@
4
4
 
5
5
  🌐 **官方文档**: https://thunder7991.github.io/geo-types-cz
6
6
 
7
- 📦 NPM: https://www.npmjs.com/package/geo-types-cz
8
7
  ## 特性
9
8
 
10
9
  - ✅ **完整的 GeoJSON 支持** - 基于 RFC 7946 标准
@@ -185,7 +184,6 @@ const mergedBBox = unionBBox(bbox, geomBBox);
185
184
  - `Style` - 样式定义
186
185
  - `Layer` - 图层类型(矢量、栅格、瓦片)
187
186
  - `MapConfig` - 地图配置
188
- - `Query` - 空间和属性查询
189
187
 
190
188
  ### 工具函数
191
189
 
@@ -258,22 +256,6 @@ const heatmapStyle: Style = {
258
256
  };
259
257
  ```
260
258
 
261
- ### 空间分析
262
- ```typescript
263
- import { SpatialQuery, AttributeQuery } from 'geo-types-cz';
264
-
265
- const spatialQuery: SpatialQuery = {
266
- type: 'intersects',
267
- geometry: polygon,
268
- buffer: 1000
269
- };
270
-
271
- const attributeQuery: AttributeQuery = {
272
- field: 'population',
273
- operator: '>',
274
- value: 100000
275
- };
276
- ```
277
259
 
278
260
  ## 兼容性
279
261
 
package/dist/bbox.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * 边界框(BBox)类型定义和工具函数
3
3
  */
4
- import { Position } from './geometry';
4
+ import { Polygon, Position } from './geometry';
5
5
  export type BBox2D = [number, number, number, number];
6
6
  export type BBox3D = [number, number, number, number, number, number];
7
7
  export type BBox = BBox2D | BBox3D;
@@ -18,8 +18,24 @@ export declare function is3DBBox(bbox: BBox): bbox is BBox3D;
18
18
  export declare function createBBox2D(west: number, south: number, east: number, north: number): BBox2D;
19
19
  export declare function createBBox3D(west: number, south: number, minElevation: number, east: number, north: number, maxElevation: number): BBox3D;
20
20
  export declare function bboxToObject(bbox: BBox): BoundingBox;
21
+ export declare function bboxToPolygon(bbox: BBox): Polygon;
21
22
  export declare function objectToBBox(boundingBox: BoundingBox): BBox;
22
23
  export declare function unionBBox(bbox1: BBox, bbox2: BBox): BBox;
23
24
  export declare function isPositionInBBox(position: Position, bbox: BBox): boolean;
25
+ /**
26
+ * @description: 验证bbox(2D)是否符合规范
27
+ * @param {any} bbox
28
+ * @return {*} boolean
29
+ */
30
+ export declare function validateBBox(bbox: any): bbox is BBox;
24
31
  export declare function getBBoxCenter(bbox: BBox): Position;
32
+ /**
33
+ * @description: 根据paths计算bbox
34
+ * @param {any} Position[]
35
+ * @return {*}
36
+ */
37
+ export declare function calcGeometryBBox(geometry: Position[]): {
38
+ southWest: number[];
39
+ northEast: number[];
40
+ };
25
41
  //# sourceMappingURL=bbox.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bbox.d.ts","sourceRoot":"","sources":["../src/bbox.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC,MAAM,MAAM,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAGtD,MAAM,MAAM,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAGtE,MAAM,MAAM,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC;AAGnC,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAGD,wBAAgB,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,IAAI,MAAM,CAEnD;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,IAAI,MAAM,CAEnD;AAGD,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAE7F;AAED,wBAAgB,YAAY,CAC1B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,GACnB,MAAM,CAER;AAGD,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,WAAW,CAkBpD;AAGD,wBAAgB,YAAY,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI,CAkB3D;AAGD,wBAAgB,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,GAAG,IAAI,CAoBxD;AAGD,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAWxE;AAGD,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,QAAQ,CAWlD"}
1
+ {"version":3,"file":"bbox.d.ts","sourceRoot":"","sources":["../src/bbox.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAgB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAG7D,MAAM,MAAM,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAGtD,MAAM,MAAM,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAGtE,MAAM,MAAM,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC;AAGnC,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAGD,wBAAgB,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,IAAI,MAAM,CAEnD;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,IAAI,MAAM,CAEnD;AAGD,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAE7F;AAED,wBAAgB,YAAY,CAC1B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,GACnB,MAAM,CAER;AAGD,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,WAAW,CAkBpD;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAYjD;AAGD,wBAAgB,YAAY,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI,CAkB3D;AAGD,wBAAgB,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,GAAG,IAAI,CAoBxD;AAGD,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAWxE;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,IAAI,IAAI,CAYpD;AAGD,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,QAAQ,CAWlD;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE;;;EAwBpD"}
package/dist/bbox.js CHANGED
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * 边界框(BBox)类型定义和工具函数
3
3
  */
4
+ import { GeometryType } from './geometry';
4
5
  // 类型守卫函数
5
6
  export function is2DBBox(bbox) {
6
7
  return bbox.length === 4;
@@ -36,6 +37,20 @@ export function bboxToObject(bbox) {
36
37
  };
37
38
  }
38
39
  }
40
+ //bbox转换为多边形
41
+ export function bboxToPolygon(bbox) {
42
+ const [minX, minY, maxX, maxY] = bbox;
43
+ return {
44
+ type: GeometryType.Polygon,
45
+ coordinates: [[
46
+ [minX, minY],
47
+ [maxX, minY],
48
+ [maxX, maxY],
49
+ [minX, maxY],
50
+ [minX, minY]
51
+ ]]
52
+ };
53
+ }
39
54
  // 从对象转换为边界框数组
40
55
  export function objectToBBox(boundingBox) {
41
56
  if (boundingBox.minElevation !== undefined && boundingBox.maxElevation !== undefined) {
@@ -73,6 +88,23 @@ export function isPositionInBBox(position, bbox) {
73
88
  }
74
89
  return inBounds;
75
90
  }
91
+ /**
92
+ * @description: 验证bbox(2D)是否符合规范
93
+ * @param {any} bbox
94
+ * @return {*} boolean
95
+ */
96
+ export function validateBBox(bbox) {
97
+ if (!Array.isArray(bbox) || bbox.length < 4) {
98
+ return false;
99
+ }
100
+ const [minX, minY, maxX, maxY] = bbox;
101
+ return typeof minX === 'number' &&
102
+ typeof minY === 'number' &&
103
+ typeof maxX === 'number' &&
104
+ typeof maxY === 'number' &&
105
+ minX <= maxX &&
106
+ minY <= maxY;
107
+ }
76
108
  // 计算边界框的中心点
77
109
  export function getBBoxCenter(bbox) {
78
110
  const obj = bboxToObject(bbox);
@@ -84,4 +116,33 @@ export function getBBoxCenter(bbox) {
84
116
  }
85
117
  return [centerLon, centerLat];
86
118
  }
119
+ /**
120
+ * @description: 根据paths计算bbox
121
+ * @param {any} Position[]
122
+ * @return {*}
123
+ */
124
+ export function calcGeometryBBox(geometry) {
125
+ let minLng = Infinity, minLat = Infinity, maxLng = -Infinity, maxLat = -Infinity;
126
+ for (const [lng, lat] of geometry) {
127
+ if (lng < minLng)
128
+ minLng = lng;
129
+ if (lat < minLat)
130
+ minLat = lat;
131
+ if (lng > maxLng)
132
+ maxLng = lng;
133
+ if (lat > maxLat)
134
+ maxLat = lat;
135
+ }
136
+ // 适度留白,避免多边形贴边
137
+ const padLng = 0.001;
138
+ const padLat = 0.001;
139
+ minLng = minLng - padLng;
140
+ minLat = minLat - padLat;
141
+ maxLng = maxLng + padLng;
142
+ maxLat = maxLat + padLat;
143
+ return {
144
+ southWest: [minLng, minLat],
145
+ northEast: [maxLng, maxLat],
146
+ };
147
+ }
87
148
  //# sourceMappingURL=bbox.js.map
package/dist/bbox.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"bbox.js","sourceRoot":"","sources":["../src/bbox.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bbox.js","sourceRoot":"","sources":["../src/bbox.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAqB,MAAM,YAAY,CAAC;AAqB7D,SAAS;AACT,MAAM,UAAU,QAAQ,CAAC,IAAU;IACjC,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,IAAU;IACjC,OAAO,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC;AAC3B,CAAC;AAED,OAAO;AACP,MAAM,UAAU,YAAY,CAAC,IAAY,EAAE,KAAa,EAAE,IAAY,EAAE,KAAa;IACnF,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,IAAY,EACZ,KAAa,EACb,YAAoB,EACpB,IAAY,EACZ,KAAa,EACb,YAAoB;IAEpB,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;AAChE,CAAC;AAED,cAAc;AACd,MAAM,UAAU,YAAY,CAAC,IAAU;IACrC,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACnB,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;YACb,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;YACd,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;YACb,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;SACf,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;YACb,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;YACd,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;YACb,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;YACd,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC;YACrB,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC;SACtB,CAAC;IACJ,CAAC;AACH,CAAC;AACD,YAAY;AACZ,MAAM,UAAU,aAAa,CAAC,IAAU;IACtC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,IAAI,CAAA;IACrC,OAAO;QACL,IAAI,EAAE,YAAY,CAAC,OAAO;QAC1B,WAAW,EAAE,CAAC;gBACZ,CAAC,IAAI,EAAE,IAAI,CAAC;gBACZ,CAAC,IAAI,EAAE,IAAI,CAAC;gBACZ,CAAC,IAAI,EAAE,IAAI,CAAC;gBACZ,CAAC,IAAI,EAAE,IAAI,CAAC;gBACZ,CAAC,IAAI,EAAE,IAAI,CAAC;aACb,CAAC;KACH,CAAA;AACH,CAAC;AAED,cAAc;AACd,MAAM,UAAU,YAAY,CAAC,WAAwB;IACnD,IAAI,WAAW,CAAC,YAAY,KAAK,SAAS,IAAI,WAAW,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACrF,OAAO,YAAY,CACjB,WAAW,CAAC,IAAI,EAChB,WAAW,CAAC,KAAK,EACjB,WAAW,CAAC,YAAY,EACxB,WAAW,CAAC,IAAI,EAChB,WAAW,CAAC,KAAK,EACjB,WAAW,CAAC,YAAY,CACzB,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,OAAO,YAAY,CACjB,WAAW,CAAC,IAAI,EAChB,WAAW,CAAC,KAAK,EACjB,WAAW,CAAC,IAAI,EAChB,WAAW,CAAC,KAAK,CAClB,CAAC;IACJ,CAAC;AACH,CAAC;AAED,aAAa;AACb,MAAM,UAAU,SAAS,CAAC,KAAW,EAAE,KAAW;IAChD,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IAEjC,MAAM,MAAM,GAAgB;QAC1B,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;QACpC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC;QACvC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;QACpC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC;KACxC,CAAC;IAEF,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACvE,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IACvE,CAAC;IAED,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACvE,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IACvE,CAAC;IAED,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC;AAC9B,CAAC;AAED,aAAa;AACb,MAAM,UAAU,gBAAgB,CAAC,QAAkB,EAAE,IAAU;IAC7D,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC;IACvC,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAE/B,MAAM,QAAQ,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,IAAI,GAAG,CAAC,KAAK,IAAI,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC;IAE5F,IAAI,SAAS,KAAK,SAAS,IAAI,GAAG,CAAC,YAAY,KAAK,SAAS,IAAI,GAAG,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QAChG,OAAO,QAAQ,IAAI,SAAS,IAAI,GAAG,CAAC,YAAY,IAAI,SAAS,IAAI,GAAG,CAAC,YAAY,CAAC;IACpF,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,IAAS;IACpC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5C,OAAO,KAAK,CAAA;IACd,CAAC;IAED,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,IAAI,CAAA;IACrC,OAAO,OAAO,IAAI,KAAK,QAAQ;QACxB,OAAO,IAAI,KAAK,QAAQ;QACxB,OAAO,IAAI,KAAK,QAAQ;QACxB,OAAO,IAAI,KAAK,QAAQ;QACxB,IAAI,IAAI,IAAI;QACZ,IAAI,IAAI,IAAI,CAAA;AACrB,CAAC;AAED,YAAY;AACZ,MAAM,UAAU,aAAa,CAAC,IAAU;IACtC,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,SAAS,GAAG,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC5C,MAAM,SAAS,GAAG,CAAC,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAE9C,IAAI,GAAG,CAAC,YAAY,KAAK,SAAS,IAAI,GAAG,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACrE,MAAM,eAAe,GAAG,CAAC,GAAG,CAAC,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QAClE,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;IACjD,CAAC;IAED,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;AAChC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAoB;IACnD,IAAI,MAAM,GAAG,QAAQ,EACnB,MAAM,GAAG,QAAQ,EACjB,MAAM,GAAG,CAAC,QAAQ,EAClB,MAAM,GAAG,CAAC,QAAQ,CAAC;IACrB,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,QAAQ,EAAE,CAAC;QAClC,IAAI,GAAG,GAAG,MAAM;YAAE,MAAM,GAAG,GAAG,CAAC;QAC/B,IAAI,GAAG,GAAG,MAAM;YAAE,MAAM,GAAG,GAAG,CAAC;QAC/B,IAAI,GAAG,GAAG,MAAM;YAAE,MAAM,GAAG,GAAG,CAAC;QAC/B,IAAI,GAAG,GAAG,MAAM;YAAE,MAAM,GAAG,GAAG,CAAC;IACjC,CAAC;IAED,eAAe;IACf,MAAM,MAAM,GAAG,KAAK,CAAC;IACrB,MAAM,MAAM,GAAG,KAAK,CAAC;IAErB,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IACzB,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IACzB,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IACzB,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IACzB,OAAO;QACL,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;QAC3B,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;KAC5B,CAAC;AACJ,CAAC"}
@@ -122,29 +122,6 @@ export interface MapConfig {
122
122
  keyboard?: boolean;
123
123
  };
124
124
  }
125
- export declare enum SpatialQueryType {
126
- Intersects = "intersects",
127
- Contains = "contains",
128
- Within = "within",
129
- Touches = "touches",
130
- Crosses = "crosses",
131
- Overlaps = "overlaps"
132
- }
133
- export interface SpatialQuery {
134
- type: SpatialQueryType;
135
- geometry: Geometry;
136
- buffer?: number;
137
- }
138
- export interface AttributeQuery {
139
- field: string;
140
- operator: '=' | '!=' | '>' | '<' | '>=' | '<=' | 'like' | 'in' | 'not in';
141
- value: any;
142
- }
143
- export interface Query {
144
- spatial?: SpatialQuery;
145
- attributes?: AttributeQuery[];
146
- logic?: 'and' | 'or';
147
- }
148
125
  export declare function isVectorLayer(layer: Layer): layer is VectorLayer;
149
126
  export declare function isRasterLayer(layer: Layer): layer is RasterLayer;
150
127
  export declare function isTileLayer(layer: Layer): layer is TileLayer;
@@ -1 +1 @@
1
- {"version":3,"file":"extensions.d.ts","sourceRoot":"","sources":["../src/extensions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extensions.d.ts","sourceRoot":"","sources":["../src/extensions.ts"],"names":[],"mappings":"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"}
@@ -9,16 +9,6 @@ export var LayerType;
9
9
  LayerType["Raster"] = "raster";
10
10
  LayerType["TileLayer"] = "tile";
11
11
  })(LayerType || (LayerType = {}));
12
- // 空间查询类型
13
- export var SpatialQueryType;
14
- (function (SpatialQueryType) {
15
- SpatialQueryType["Intersects"] = "intersects";
16
- SpatialQueryType["Contains"] = "contains";
17
- SpatialQueryType["Within"] = "within";
18
- SpatialQueryType["Touches"] = "touches";
19
- SpatialQueryType["Crosses"] = "crosses";
20
- SpatialQueryType["Overlaps"] = "overlaps";
21
- })(SpatialQueryType || (SpatialQueryType = {}));
22
12
  // 类型守卫函数
23
13
  export function isVectorLayer(layer) {
24
14
  return layer.type === LayerType.Vector;
@@ -1 +1 @@
1
- {"version":3,"file":"extensions.js","sourceRoot":"","sources":["../src/extensions.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA6DH,OAAO;AACP,MAAM,CAAN,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,8BAAiB,CAAA;IACjB,8BAAiB,CAAA;IACjB,+BAAkB,CAAA;AACpB,CAAC,EAJW,SAAS,KAAT,SAAS,QAIpB;AAuFD,SAAS;AACT,MAAM,CAAN,IAAY,gBAOX;AAPD,WAAY,gBAAgB;IAC1B,6CAAyB,CAAA;IACzB,yCAAqB,CAAA;IACrB,qCAAiB,CAAA;IACjB,uCAAmB,CAAA;IACnB,uCAAmB,CAAA;IACnB,yCAAqB,CAAA;AACvB,CAAC,EAPW,gBAAgB,KAAhB,gBAAgB,QAO3B;AAuBD,SAAS;AACT,MAAM,UAAU,aAAa,CAAC,KAAY;IACxC,OAAO,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,MAAM,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,KAAY;IACxC,OAAO,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,MAAM,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAY;IACtC,OAAO,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,SAAS,CAAC;AAC5C,CAAC;AAED,OAAO;AACP,MAAM,UAAU,iBAAiB,CAC/B,EAAU,EACV,IAAY,EACZ,IAAuB,EACvB,KAAa;IAEb,OAAO;QACL,EAAE;QACF,IAAI;QACJ,IAAI,EAAE,SAAS,CAAC,MAAM;QACtB,IAAI;QACJ,KAAK;QACL,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,CAAC;KACX,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,EAAU,EACV,IAAY,EACZ,GAAW,EACX,WAAoB;IAEpB,OAAO;QACL,EAAE;QACF,IAAI;QACJ,IAAI,EAAE,SAAS,CAAC,SAAS;QACzB,GAAG;QACH,WAAW;QACX,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,CAAC;KACX,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"extensions.js","sourceRoot":"","sources":["../src/extensions.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA6DH,OAAO;AACP,MAAM,CAAN,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,8BAAiB,CAAA;IACjB,8BAAiB,CAAA;IACjB,+BAAkB,CAAA;AACpB,CAAC,EAJW,SAAS,KAAT,SAAS,QAIpB;AAuFD,SAAS;AACT,MAAM,UAAU,aAAa,CAAC,KAAY;IACxC,OAAO,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,MAAM,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,KAAY;IACxC,OAAO,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,MAAM,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAY;IACtC,OAAO,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,SAAS,CAAC;AAC5C,CAAC;AAED,OAAO;AACP,MAAM,UAAU,iBAAiB,CAC/B,EAAU,EACV,IAAY,EACZ,IAAuB,EACvB,KAAa;IAEb,OAAO;QACL,EAAE;QACF,IAAI;QACJ,IAAI,EAAE,SAAS,CAAC,MAAM;QACtB,IAAI;QACJ,KAAK;QACL,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,CAAC;KACX,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,EAAU,EACV,IAAY,EACZ,GAAW,EACX,WAAoB;IAEpB,OAAO;QACL,EAAE;QACF,IAAI;QACJ,IAAI,EAAE,SAAS,CAAC,SAAS;QACzB,GAAG;QACH,WAAW;QACX,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,CAAC;KACX,CAAC;AACJ,CAAC"}
package/dist/index.d.ts CHANGED
@@ -7,15 +7,10 @@
7
7
  */
8
8
  export { Position, GeometryType, BaseGeometry, Point, LineString, Polygon, MultiPoint, MultiLineString, MultiPolygon, GeometryCollection, Geometry, isPoint, isLineString, isPolygon, isMultiPoint, isMultiLineString, isMultiPolygon, isGeometryCollection, validateCoordinates, validateFeatureGeometry } from './geometry';
9
9
  export { FeatureType, Properties, Feature, FeatureCollection, GeoJSONObject, isFeature, isFeatureCollection, createFeature, createFeatureCollection, createCircle } from './feature';
10
- export { CRSType, BaseCRS, NamedCRS, LinkedCRS, CRS, CommonCRS, isNamedCRS, isLinkedCRS, createNamedCRS, createLinkedCRS } from './crs';
11
- export { BBox2D, BBox3D, BBox, BoundingBox, is2DBBox, is3DBBox, createBBox2D, createBBox3D, bboxToObject, objectToBBox, unionBBox, isPositionInBBox, getBBoxCenter } from './bbox';
12
- export { Color, Style, StyledFeature, StyledFeatureCollection, LayerType, BaseLayer, VectorLayer, RasterLayer, TileLayer, Layer, MapView, MapConfig, SpatialQueryType, SpatialQuery, AttributeQuery, Query, isVectorLayer, isRasterLayer, isTileLayer, ClusterConfig } from './extensions';
13
- export { degreesToRadians, radiansToDegrees, calculateDistance, calculateBearing, calculateDestination, calculateLineLength, calculatePolygonArea, calculateGeometryBBox, calculateFeatureCollectionBBox, simplifyLineString, createBuffer } from './utils';
14
- export declare const VERSION = "1.0.0";
15
- declare const _default: {
16
- VERSION: string;
17
- };
18
- export default _default;
10
+ export { BBox2D, BBox3D, BBox, validateBBox, BoundingBox, is2DBBox, is3DBBox, createBBox2D, createBBox3D, bboxToObject, objectToBBox, unionBBox, isPositionInBBox, getBBoxCenter, calcGeometryBBox } from './bbox';
11
+ export { Color, Style, StyledFeature, StyledFeatureCollection, LayerType, BaseLayer, VectorLayer, RasterLayer, TileLayer, Layer, MapView, MapConfig, isVectorLayer, isRasterLayer, isTileLayer, ClusterConfig } from './extensions';
12
+ export { degreesToRadians, radiansToDegrees, calculateDistance, calculateBearing, calculateDestination, calculateLineLength, calculatePolygonArea, calculateGeometryBBox, calculateFeatureCollectionBBox, simplifyLineString, createBuffer, isPointInPolygon } from './utils';
13
+ export { getAddressByGeocoder } from "./service";
19
14
  /**
20
15
  * 使用示例:
21
16
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,YAAY,EACZ,KAAK,EACL,UAAU,EACV,OAAO,EACP,UAAU,EACV,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,QAAQ,EACR,OAAO,EACP,YAAY,EACZ,SAAS,EACT,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,oBAAoB,EACpB,mBAAmB,EACnB,uBAAuB,EACxB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,WAAW,EACX,UAAU,EACV,OAAO,EACP,iBAAiB,EACjB,aAAa,EACb,SAAS,EACT,mBAAmB,EACnB,aAAa,EACb,uBAAuB,EACvB,YAAY,EACb,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,OAAO,EACP,OAAO,EACP,QAAQ,EACR,SAAS,EACT,GAAG,EACH,SAAS,EACT,UAAU,EACV,WAAW,EACX,cAAc,EACd,eAAe,EAChB,MAAM,OAAO,CAAC;AAGf,OAAO,EACL,MAAM,EACN,MAAM,EACN,IAAI,EACJ,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,aAAa,EACd,MAAM,QAAQ,CAAC;AAGhB,OAAO,EACL,KAAK,EACL,KAAK,EACL,aAAa,EACb,uBAAuB,EACvB,SAAS,EACT,SAAS,EACT,WAAW,EACX,WAAW,EACX,SAAS,EACT,KAAK,EACL,OAAO,EACP,SAAS,EACT,gBAAgB,EAChB,YAAY,EACZ,cAAc,EACd,KAAK,EACL,aAAa,EACb,aAAa,EACb,WAAW,EACX,aAAa,EACd,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,8BAA8B,EAC9B,kBAAkB,EAClB,YAAY,EACb,MAAM,SAAS,CAAC;AAGjB,eAAO,MAAM,OAAO,UAAU,CAAC;;;;AAG/B,wBAEE;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,YAAY,EACZ,KAAK,EACL,UAAU,EACV,OAAO,EACP,UAAU,EACV,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,QAAQ,EACR,OAAO,EACP,YAAY,EACZ,SAAS,EACT,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,oBAAoB,EACpB,mBAAmB,EACnB,uBAAuB,EACxB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,WAAW,EACX,UAAU,EACV,OAAO,EACP,iBAAiB,EACjB,aAAa,EACb,SAAS,EACT,mBAAmB,EACnB,aAAa,EACb,uBAAuB,EACvB,YAAY,EACb,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,MAAM,EACN,MAAM,EACN,IAAI,EACJ,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EACjB,MAAM,QAAQ,CAAC;AAGhB,OAAO,EACL,KAAK,EACL,KAAK,EACL,aAAa,EACb,uBAAuB,EACvB,SAAS,EACT,SAAS,EACT,WAAW,EACX,WAAW,EACX,SAAS,EACT,KAAK,EACL,OAAO,EACP,SAAS,EACT,aAAa,EACb,aAAa,EACb,WAAW,EACX,aAAa,EACd,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,8BAA8B,EAC9B,kBAAkB,EAClB,YAAY,EACZ,gBAAgB,EACjB,MAAM,SAAS,CAAC;AAIjB,OAAO,EAAC,oBAAoB,EAAC,MAAM,WAAW,CAAA;AAG9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG"}
package/dist/index.js CHANGED
@@ -9,20 +9,14 @@
9
9
  export { GeometryType, isPoint, isLineString, isPolygon, isMultiPoint, isMultiLineString, isMultiPolygon, isGeometryCollection, validateCoordinates, validateFeatureGeometry } from './geometry';
10
10
  // 导出要素类型
11
11
  export { FeatureType, isFeature, isFeatureCollection, createFeature, createFeatureCollection, createCircle } from './feature';
12
- // 导出坐标参考系统类型
13
- export { CRSType, CommonCRS, isNamedCRS, isLinkedCRS, createNamedCRS, createLinkedCRS } from './crs';
14
12
  // 导出边界框类型
15
- export { is2DBBox, is3DBBox, createBBox2D, createBBox3D, bboxToObject, objectToBBox, unionBBox, isPositionInBBox, getBBoxCenter } from './bbox';
13
+ export { validateBBox, is2DBBox, is3DBBox, createBBox2D, createBBox3D, bboxToObject, objectToBBox, unionBBox, isPositionInBBox, getBBoxCenter, calcGeometryBBox } from './bbox';
16
14
  // 导出扩展类型
17
- export { LayerType, SpatialQueryType, isVectorLayer, isRasterLayer, isTileLayer } from './extensions';
15
+ export { LayerType, isVectorLayer, isRasterLayer, isTileLayer } from './extensions';
18
16
  // 导出工具函数
19
- export { degreesToRadians, radiansToDegrees, calculateDistance, calculateBearing, calculateDestination, calculateLineLength, calculatePolygonArea, calculateGeometryBBox, calculateFeatureCollectionBBox, simplifyLineString, createBuffer } from './utils';
20
- // 版本信息
21
- export const VERSION = '1.0.0';
22
- // 默认导出
23
- export default {
24
- VERSION
25
- };
17
+ export { degreesToRadians, radiansToDegrees, calculateDistance, calculateBearing, calculateDestination, calculateLineLength, calculatePolygonArea, calculateGeometryBBox, calculateFeatureCollectionBBox, simplifyLineString, createBuffer, isPointInPolygon } from './utils';
18
+ //导出服务函数
19
+ export { getAddressByGeocoder } from "./service";
26
20
  /**
27
21
  * 使用示例:
28
22
  *
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,SAAS;AACT,OAAO,EAEL,YAAY,EAUZ,OAAO,EACP,YAAY,EACZ,SAAS,EACT,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,oBAAoB,EACpB,mBAAmB,EACnB,uBAAuB,EACxB,MAAM,YAAY,CAAC;AAEpB,SAAS;AACT,OAAO,EACL,WAAW,EAKX,SAAS,EACT,mBAAmB,EACnB,aAAa,EACb,uBAAuB,EACvB,YAAY,EACb,MAAM,WAAW,CAAC;AAEnB,aAAa;AACb,OAAO,EACL,OAAO,EAKP,SAAS,EACT,UAAU,EACV,WAAW,EACX,cAAc,EACd,eAAe,EAChB,MAAM,OAAO,CAAC;AAEf,UAAU;AACV,OAAO,EAKL,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,aAAa,EACd,MAAM,QAAQ,CAAC;AAEhB,SAAS;AACT,OAAO,EAKL,SAAS,EAQT,gBAAgB,EAIhB,aAAa,EACb,aAAa,EACb,WAAW,EAEZ,MAAM,cAAc,CAAC;AAEtB,SAAS;AACT,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,8BAA8B,EAC9B,kBAAkB,EAClB,YAAY,EACb,MAAM,SAAS,CAAC;AAEjB,OAAO;AACP,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC;AAE/B,OAAO;AACP,eAAe;IACb,OAAO;CACR,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,SAAS;AACT,OAAO,EAEL,YAAY,EAUZ,OAAO,EACP,YAAY,EACZ,SAAS,EACT,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,oBAAoB,EACpB,mBAAmB,EACnB,uBAAuB,EACxB,MAAM,YAAY,CAAC;AAEpB,SAAS;AACT,OAAO,EACL,WAAW,EAKX,SAAS,EACT,mBAAmB,EACnB,aAAa,EACb,uBAAuB,EACvB,YAAY,EACb,MAAM,WAAW,CAAC;AAEnB,UAAU;AACV,OAAO,EAIL,YAAY,EAEZ,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EACjB,MAAM,QAAQ,CAAC;AAEhB,SAAS;AACT,OAAO,EAKL,SAAS,EAQT,aAAa,EACb,aAAa,EACb,WAAW,EAEZ,MAAM,cAAc,CAAC;AAEtB,SAAS;AACT,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,8BAA8B,EAC9B,kBAAkB,EAClB,YAAY,EACZ,gBAAgB,EACjB,MAAM,SAAS,CAAC;AAGjB,QAAQ;AACR,OAAO,EAAC,oBAAoB,EAAC,MAAM,WAAW,CAAA;AAG9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG"}
@@ -0,0 +1,9 @@
1
+ import { Position } from "./geometry";
2
+ /**
3
+ * @description: 高德地图,逆地理编码(坐标 -> 地址),获取地址
4
+ * @param {any} geocoder AMap.Geocoder
5
+ * @param {Position} lnglat 经纬度
6
+ * @return {Promise<string>} 地址
7
+ */
8
+ export declare function getAddressByGeocoder(geocoder: any, lnglat: Position): Promise<unknown>;
9
+ //# sourceMappingURL=service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,oBAqBnE"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * @description: 高德地图,逆地理编码(坐标 -> 地址),获取地址
3
+ * @param {any} geocoder AMap.Geocoder
4
+ * @param {Position} lnglat 经纬度
5
+ * @return {Promise<string>} 地址
6
+ */
7
+ export function getAddressByGeocoder(geocoder, lnglat) {
8
+ return new Promise((resolve, reject) => {
9
+ // 坐标与地址插件-逆地理编码(坐标 -> 地址)
10
+ geocoder.getAddress(lnglat, function (status, result) {
11
+ if (status === 'complete' && result.regeocode) {
12
+ let address = '';
13
+ if (result.regeocode.aois.length > 0) {
14
+ address += result.regeocode.aois[0].name;
15
+ }
16
+ else if (result.regeocode.pois.length > 0) {
17
+ address += result.regeocode.pois[0].name;
18
+ }
19
+ else if (result.regeocode.roads.length > 0) {
20
+ address += result.regeocode.roads[0].name;
21
+ }
22
+ else {
23
+ address = result.regeocode.formattedAddress;
24
+ }
25
+ resolve(address);
26
+ }
27
+ else {
28
+ reject(result);
29
+ }
30
+ });
31
+ });
32
+ }
33
+ //# sourceMappingURL=service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"AACA;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAAa,EAAE,MAAgB;IAClE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,0BAA0B;QAC1B,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,MAAa,EAAE,MAAU;YAC7D,IAAI,MAAM,KAAK,UAAU,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;gBAC9C,IAAI,OAAO,GAAG,EAAE,CAAC;gBACjB,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACrC,OAAO,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC3C,CAAC;qBAAM,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC5C,OAAO,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC3C,CAAC;qBAAM,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC7C,OAAO,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC5C,CAAC;qBAAM,CAAC;oBACN,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC;gBAC9C,CAAC;gBACD,OAAO,CAAC,OAAO,CAAC,CAAC;YACnB,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,MAAM,CAAC,CAAC;YACjB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC"}
package/dist/utils.d.ts CHANGED
@@ -16,4 +16,11 @@ export declare function calculateGeometryBBox(geometry: Geometry): BBox;
16
16
  export declare function calculateFeatureCollectionBBox(featureCollection: FeatureCollection): BBox;
17
17
  export declare function simplifyLineString(lineString: LineString, tolerance: number): LineString;
18
18
  export declare function createBuffer(geometry: Point, distance: number): Polygon;
19
+ /**
20
+ * @description: 判断点是否在多边形内/外/边界上
21
+ * @param {Position} point 点坐标
22
+ * @param {Position[][]} polygon 多边形坐标,格式为[[[lon, lat], [lon, lat], ...]]
23
+ * @return {*} 0: 点在多边形边界上,true: 点在多边形内,false: 点在多边形外
24
+ */
25
+ export declare function isPointInPolygon(point: Position, polygon: Position[][]): boolean | 0;
19
26
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAgB,MAAM,YAAY,CAAC;AAC1F,OAAO,EAAW,iBAAiB,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,EAAE,IAAI,EAAgB,MAAM,QAAQ,CAAC;AAO5C,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAExD;AAGD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAExD;AAGD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,GAAG,MAAM,CAcxE;AAGD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,GAAG,MAAM,CAevE;AAGD,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,QAAQ,EACf,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GACd,QAAQ,CAmBV;AAGD,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM,CASlE;AAGD,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAiB7D;AAGD,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAmD9D;AAGD,wBAAgB,8BAA8B,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,IAAI,CAiBzF;AAGD,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,GAAG,UAAU,CA6ExF;AAGD,wBAAgB,YAAY,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAiBvE"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAgB,MAAM,YAAY,CAAC;AAC1F,OAAO,EAAW,iBAAiB,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,EAAE,IAAI,EAAgB,MAAM,QAAQ,CAAC;AAQ5C,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAExD;AAGD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAExD;AAGD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,GAAG,MAAM,CAcxE;AAGD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,GAAG,MAAM,CAevE;AAGD,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,QAAQ,EACf,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GACd,QAAQ,CAmBV;AAGD,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM,CASlE;AAGD,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAiB7D;AAGD,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAmD9D;AAGD,wBAAgB,8BAA8B,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,IAAI,CAiBzF;AAGD,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,GAAG,UAAU,CA6ExF;AAGD,wBAAgB,YAAY,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAiBvE;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAC,QAAQ,EAAE,EAAE,GAAI,OAAO,GAAG,CAAC,CAEpF"}
package/dist/utils.js CHANGED
@@ -4,6 +4,7 @@
4
4
  */
5
5
  import { GeometryType } from './geometry';
6
6
  import { createBBox2D } from './bbox';
7
+ import inside from 'point-in-polygon-hao';
7
8
  // 地球半径(米)
8
9
  const EARTH_RADIUS = 6378137;
9
10
  // 角度转弧度
@@ -222,4 +223,13 @@ export function createBuffer(geometry, distance) {
222
223
  ]]
223
224
  };
224
225
  }
226
+ /**
227
+ * @description: 判断点是否在多边形内/外/边界上
228
+ * @param {Position} point 点坐标
229
+ * @param {Position[][]} polygon 多边形坐标,格式为[[[lon, lat], [lon, lat], ...]]
230
+ * @return {*} 0: 点在多边形边界上,true: 点在多边形内,false: 点在多边形外
231
+ */
232
+ export function isPointInPolygon(point, polygon) {
233
+ return inside(point, polygon);
234
+ }
225
235
  //# sourceMappingURL=utils.js.map
package/dist/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "geo-types-cz",
3
- "version": "1.0.3",
3
+ "version": "1.0.5",
4
4
  "description": "Complete TypeScript type definitions for GeoJSON and extended GIS types",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -36,5 +36,8 @@
36
36
  "repository": {
37
37
  "type": "git",
38
38
  "url": "https://github.com/Thunder7991/geo-types-cz.git"
39
+ },
40
+ "dependencies": {
41
+ "point-in-polygon-hao": "^1.2.4"
39
42
  }
40
43
  }
package/src/bbox.ts CHANGED
@@ -2,7 +2,7 @@
2
2
  * 边界框(BBox)类型定义和工具函数
3
3
  */
4
4
 
5
- import { Position } from './geometry';
5
+ import { GeometryType, Polygon, Position } from './geometry';
6
6
 
7
7
  // 2D边界框 [west, south, east, north]
8
8
  export type BBox2D = [number, number, number, number];
@@ -68,6 +68,20 @@ export function bboxToObject(bbox: BBox): BoundingBox {
68
68
  };
69
69
  }
70
70
  }
71
+ //bbox转换为多边形
72
+ export function bboxToPolygon(bbox: BBox): Polygon {
73
+ const [minX, minY, maxX, maxY] = bbox
74
+ return {
75
+ type: GeometryType.Polygon,
76
+ coordinates: [[
77
+ [minX, minY],
78
+ [maxX, minY],
79
+ [maxX, maxY],
80
+ [minX, maxY],
81
+ [minX, minY]
82
+ ]]
83
+ }
84
+ }
71
85
 
72
86
  // 从对象转换为边界框数组
73
87
  export function objectToBBox(boundingBox: BoundingBox): BBox {
@@ -127,6 +141,25 @@ export function isPositionInBBox(position: Position, bbox: BBox): boolean {
127
141
  return inBounds;
128
142
  }
129
143
 
144
+ /**
145
+ * @description: 验证bbox(2D)是否符合规范
146
+ * @param {any} bbox
147
+ * @return {*} boolean
148
+ */
149
+ export function validateBBox(bbox: any): bbox is BBox {
150
+ if (!Array.isArray(bbox) || bbox.length < 4) {
151
+ return false
152
+ }
153
+
154
+ const [minX, minY, maxX, maxY] = bbox
155
+ return typeof minX === 'number' &&
156
+ typeof minY === 'number' &&
157
+ typeof maxX === 'number' &&
158
+ typeof maxY === 'number' &&
159
+ minX <= maxX &&
160
+ minY <= maxY
161
+ }
162
+
130
163
  // 计算边界框的中心点
131
164
  export function getBBoxCenter(bbox: BBox): Position {
132
165
  const obj = bboxToObject(bbox);
@@ -139,4 +172,35 @@ export function getBBoxCenter(bbox: BBox): Position {
139
172
  }
140
173
 
141
174
  return [centerLon, centerLat];
175
+ }
176
+
177
+ /**
178
+ * @description: 根据paths计算bbox
179
+ * @param {any} Position[]
180
+ * @return {*}
181
+ */
182
+ export function calcGeometryBBox(geometry: Position[]) {
183
+ let minLng = Infinity,
184
+ minLat = Infinity,
185
+ maxLng = -Infinity,
186
+ maxLat = -Infinity;
187
+ for (const [lng, lat] of geometry) {
188
+ if (lng < minLng) minLng = lng;
189
+ if (lat < minLat) minLat = lat;
190
+ if (lng > maxLng) maxLng = lng;
191
+ if (lat > maxLat) maxLat = lat;
192
+ }
193
+
194
+ // 适度留白,避免多边形贴边
195
+ const padLng = 0.001;
196
+ const padLat = 0.001;
197
+
198
+ minLng = minLng - padLng;
199
+ minLat = minLat - padLat;
200
+ maxLng = maxLng + padLng;
201
+ maxLat = maxLat + padLat;
202
+ return {
203
+ southWest: [minLng, minLat],
204
+ northEast: [maxLng, maxLat],
205
+ };
142
206
  }
package/src/extensions.ts CHANGED
@@ -154,37 +154,6 @@ export interface MapConfig {
154
154
  };
155
155
  }
156
156
 
157
- // 空间查询类型
158
- export enum SpatialQueryType {
159
- Intersects = 'intersects',
160
- Contains = 'contains',
161
- Within = 'within',
162
- Touches = 'touches',
163
- Crosses = 'crosses',
164
- Overlaps = 'overlaps'
165
- }
166
-
167
- // 空间查询接口
168
- export interface SpatialQuery {
169
- type: SpatialQueryType;
170
- geometry: Geometry;
171
- buffer?: number; // 缓冲区距离
172
- }
173
-
174
- // 属性查询接口
175
- export interface AttributeQuery {
176
- field: string;
177
- operator: '=' | '!=' | '>' | '<' | '>=' | '<=' | 'like' | 'in' | 'not in';
178
- value: any;
179
- }
180
-
181
- // 复合查询接口
182
- export interface Query {
183
- spatial?: SpatialQuery;
184
- attributes?: AttributeQuery[];
185
- logic?: 'and' | 'or';
186
- }
187
-
188
157
  // 类型守卫函数
189
158
  export function isVectorLayer(layer: Layer): layer is VectorLayer {
190
159
  return layer.type === LayerType.Vector;
package/src/index.ts CHANGED
@@ -44,25 +44,12 @@ export {
44
44
  createCircle
45
45
  } from './feature';
46
46
 
47
- // 导出坐标参考系统类型
48
- export {
49
- CRSType,
50
- BaseCRS,
51
- NamedCRS,
52
- LinkedCRS,
53
- CRS,
54
- CommonCRS,
55
- isNamedCRS,
56
- isLinkedCRS,
57
- createNamedCRS,
58
- createLinkedCRS
59
- } from './crs';
60
-
61
47
  // 导出边界框类型
62
48
  export {
63
49
  BBox2D,
64
50
  BBox3D,
65
51
  BBox,
52
+ validateBBox,
66
53
  BoundingBox,
67
54
  is2DBBox,
68
55
  is3DBBox,
@@ -72,7 +59,8 @@ export {
72
59
  objectToBBox,
73
60
  unionBBox,
74
61
  isPositionInBBox,
75
- getBBoxCenter
62
+ getBBoxCenter,
63
+ calcGeometryBBox
76
64
  } from './bbox';
77
65
 
78
66
  // 导出扩展类型
@@ -89,10 +77,6 @@ export {
89
77
  Layer,
90
78
  MapView,
91
79
  MapConfig,
92
- SpatialQueryType,
93
- SpatialQuery,
94
- AttributeQuery,
95
- Query,
96
80
  isVectorLayer,
97
81
  isRasterLayer,
98
82
  isTileLayer,
@@ -111,16 +95,14 @@ export {
111
95
  calculateGeometryBBox,
112
96
  calculateFeatureCollectionBBox,
113
97
  simplifyLineString,
114
- createBuffer
98
+ createBuffer,
99
+ isPointInPolygon
115
100
  } from './utils';
116
101
 
117
- // 版本信息
118
- export const VERSION = '1.0.0';
119
102
 
120
- // 默认导出
121
- export default {
122
- VERSION
123
- };
103
+ //导出服务函数
104
+ export {getAddressByGeocoder} from "./service"
105
+
124
106
 
125
107
  /**
126
108
  * 使用示例:
package/src/service.ts ADDED
@@ -0,0 +1,29 @@
1
+ import { Position } from "./geometry";
2
+ /**
3
+ * @description: 高德地图,逆地理编码(坐标 -> 地址),获取地址
4
+ * @param {any} geocoder AMap.Geocoder
5
+ * @param {Position} lnglat 经纬度
6
+ * @return {Promise<string>} 地址
7
+ */
8
+ export function getAddressByGeocoder(geocoder: any, lnglat: Position) {
9
+ return new Promise((resolve, reject) => {
10
+ // 坐标与地址插件-逆地理编码(坐标 -> 地址)
11
+ geocoder.getAddress(lnglat, function (status:string, result:any) {
12
+ if (status === 'complete' && result.regeocode) {
13
+ let address = '';
14
+ if (result.regeocode.aois.length > 0) {
15
+ address += result.regeocode.aois[0].name;
16
+ } else if (result.regeocode.pois.length > 0) {
17
+ address += result.regeocode.pois[0].name;
18
+ } else if (result.regeocode.roads.length > 0) {
19
+ address += result.regeocode.roads[0].name;
20
+ } else {
21
+ address = result.regeocode.formattedAddress;
22
+ }
23
+ resolve(address);
24
+ } else {
25
+ reject(result);
26
+ }
27
+ });
28
+ });
29
+ }
package/src/utils.ts CHANGED
@@ -6,6 +6,7 @@
6
6
  import { Position, Geometry, Point, LineString, Polygon, GeometryType } from './geometry';
7
7
  import { Feature, FeatureCollection } from './feature';
8
8
  import { BBox, createBBox2D } from './bbox';
9
+ import inside from 'point-in-polygon-hao'
9
10
 
10
11
  // 地球半径(米)
11
12
  const EARTH_RADIUS = 6378137;
@@ -286,4 +287,17 @@ export function createBuffer(geometry: Point, distance: number): Polygon {
286
287
  [lon - deltaLon, lat - deltaLat]
287
288
  ]]
288
289
  };
289
- }
290
+ }
291
+
292
+ /**
293
+ * @description: 判断点是否在多边形内/外/边界上
294
+ * @param {Position} point 点坐标
295
+ * @param {Position[][]} polygon 多边形坐标,格式为[[[lon, lat], [lon, lat], ...]]
296
+ * @return {*} 0: 点在多边形边界上,true: 点在多边形内,false: 点在多边形外
297
+ */
298
+ export function isPointInPolygon(point: Position, polygon:Position[][] ): boolean | 0 {
299
+ return inside(point, polygon);
300
+ }
301
+
302
+
303
+
package/dist/crs.d.ts DELETED
@@ -1,37 +0,0 @@
1
- /**
2
- * 坐标参考系统(CRS)类型定义
3
- * 虽然GeoJSON RFC 7946不推荐使用CRS,但在实际GIS应用中仍然重要
4
- */
5
- export declare enum CRSType {
6
- Name = "name",
7
- Link = "link"
8
- }
9
- export interface BaseCRS {
10
- type: CRSType;
11
- }
12
- export interface NamedCRS extends BaseCRS {
13
- type: CRSType.Name;
14
- properties: {
15
- name: string;
16
- };
17
- }
18
- export interface LinkedCRS extends BaseCRS {
19
- type: CRSType.Link;
20
- properties: {
21
- href: string;
22
- type?: string;
23
- };
24
- }
25
- export type CRS = NamedCRS | LinkedCRS;
26
- export declare const CommonCRS: {
27
- readonly WGS84: NamedCRS;
28
- readonly WebMercator: NamedCRS;
29
- readonly CGCS2000: NamedCRS;
30
- readonly Beijing54: NamedCRS;
31
- readonly Xian80: NamedCRS;
32
- };
33
- export declare function isNamedCRS(crs: CRS): crs is NamedCRS;
34
- export declare function isLinkedCRS(crs: CRS): crs is LinkedCRS;
35
- export declare function createNamedCRS(name: string): NamedCRS;
36
- export declare function createLinkedCRS(href: string, type?: string): LinkedCRS;
37
- //# sourceMappingURL=crs.d.ts.map
package/dist/crs.d.ts.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"crs.d.ts","sourceRoot":"","sources":["../src/crs.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,oBAAY,OAAO;IACjB,IAAI,SAAS;IACb,IAAI,SAAS;CACd;AAGD,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,OAAO,CAAC;CACf;AAGD,MAAM,WAAW,QAAS,SAAQ,OAAO;IACvC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC;IACnB,UAAU,EAAE;QACV,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACH;AAGD,MAAM,WAAW,SAAU,SAAQ,OAAO;IACxC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC;IACnB,UAAU,EAAE;QACV,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;CACH;AAGD,MAAM,MAAM,GAAG,GAAG,QAAQ,GAAG,SAAS,CAAC;AAGvC,eAAO,MAAM,SAAS;oBAOf,QAAQ;0BAQR,QAAQ;uBAQR,QAAQ;wBAQR,QAAQ;qBAQR,QAAQ;CACL,CAAC;AAGX,wBAAgB,UAAU,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,QAAQ,CAEpD;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,SAAS,CAEtD;AAGD,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,CAOrD;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAQtE"}
package/dist/crs.js DELETED
@@ -1,74 +0,0 @@
1
- /**
2
- * 坐标参考系统(CRS)类型定义
3
- * 虽然GeoJSON RFC 7946不推荐使用CRS,但在实际GIS应用中仍然重要
4
- */
5
- // CRS类型枚举
6
- export var CRSType;
7
- (function (CRSType) {
8
- CRSType["Name"] = "name";
9
- CRSType["Link"] = "link";
10
- })(CRSType || (CRSType = {}));
11
- // 常用的CRS定义
12
- export const CommonCRS = {
13
- // WGS84 地理坐标系
14
- WGS84: {
15
- type: CRSType.Name,
16
- properties: {
17
- name: 'EPSG:4326'
18
- }
19
- },
20
- // Web墨卡托投影
21
- WebMercator: {
22
- type: CRSType.Name,
23
- properties: {
24
- name: 'EPSG:3857'
25
- }
26
- },
27
- // 中国大地坐标系2000
28
- CGCS2000: {
29
- type: CRSType.Name,
30
- properties: {
31
- name: 'EPSG:4490'
32
- }
33
- },
34
- // 北京54坐标系
35
- Beijing54: {
36
- type: CRSType.Name,
37
- properties: {
38
- name: 'EPSG:4214'
39
- }
40
- },
41
- // 西安80坐标系
42
- Xian80: {
43
- type: CRSType.Name,
44
- properties: {
45
- name: 'EPSG:4610'
46
- }
47
- }
48
- };
49
- // 类型守卫函数
50
- export function isNamedCRS(crs) {
51
- return crs.type === CRSType.Name;
52
- }
53
- export function isLinkedCRS(crs) {
54
- return crs.type === CRSType.Link;
55
- }
56
- // 工具函数
57
- export function createNamedCRS(name) {
58
- return {
59
- type: CRSType.Name,
60
- properties: {
61
- name
62
- }
63
- };
64
- }
65
- export function createLinkedCRS(href, type) {
66
- return {
67
- type: CRSType.Link,
68
- properties: {
69
- href,
70
- ...(type && { type })
71
- }
72
- };
73
- }
74
- //# sourceMappingURL=crs.js.map
package/dist/crs.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"crs.js","sourceRoot":"","sources":["../src/crs.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,UAAU;AACV,MAAM,CAAN,IAAY,OAGX;AAHD,WAAY,OAAO;IACjB,wBAAa,CAAA;IACb,wBAAa,CAAA;AACf,CAAC,EAHW,OAAO,KAAP,OAAO,QAGlB;AA2BD,WAAW;AACX,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,cAAc;IACd,KAAK,EAAE;QACL,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,UAAU,EAAE;YACV,IAAI,EAAE,WAAW;SAClB;KACU;IAEb,WAAW;IACX,WAAW,EAAE;QACX,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,UAAU,EAAE;YACV,IAAI,EAAE,WAAW;SAClB;KACU;IAEb,cAAc;IACd,QAAQ,EAAE;QACR,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,UAAU,EAAE;YACV,IAAI,EAAE,WAAW;SAClB;KACU;IAEb,UAAU;IACV,SAAS,EAAE;QACT,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,UAAU,EAAE;YACV,IAAI,EAAE,WAAW;SAClB;KACU;IAEb,UAAU;IACV,MAAM,EAAE;QACN,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,UAAU,EAAE;YACV,IAAI,EAAE,WAAW;SAClB;KACU;CACL,CAAC;AAEX,SAAS;AACT,MAAM,UAAU,UAAU,CAAC,GAAQ;IACjC,OAAO,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,GAAQ;IAClC,OAAO,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC;AACnC,CAAC;AAED,OAAO;AACP,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,UAAU,EAAE;YACV,IAAI;SACL;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAY,EAAE,IAAa;IACzD,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,UAAU,EAAE;YACV,IAAI;YACJ,GAAG,CAAC,IAAI,IAAI,EAAE,IAAI,EAAE,CAAC;SACtB;KACF,CAAC;AACJ,CAAC"}
package/src/crs.ts DELETED
@@ -1,107 +0,0 @@
1
- /**
2
- * 坐标参考系统(CRS)类型定义
3
- * 虽然GeoJSON RFC 7946不推荐使用CRS,但在实际GIS应用中仍然重要
4
- */
5
-
6
- // CRS类型枚举
7
- export enum CRSType {
8
- Name = 'name',
9
- Link = 'link'
10
- }
11
-
12
- // 基础CRS接口
13
- export interface BaseCRS {
14
- type: CRSType;
15
- }
16
-
17
- // 命名CRS
18
- export interface NamedCRS extends BaseCRS {
19
- type: CRSType.Name;
20
- properties: {
21
- name: string;
22
- };
23
- }
24
-
25
- // 链接CRS
26
- export interface LinkedCRS extends BaseCRS {
27
- type: CRSType.Link;
28
- properties: {
29
- href: string;
30
- type?: string;
31
- };
32
- }
33
-
34
- // CRS联合类型
35
- export type CRS = NamedCRS | LinkedCRS;
36
-
37
- // 常用的CRS定义
38
- export const CommonCRS = {
39
- // WGS84 地理坐标系
40
- WGS84: {
41
- type: CRSType.Name,
42
- properties: {
43
- name: 'EPSG:4326'
44
- }
45
- } as NamedCRS,
46
-
47
- // Web墨卡托投影
48
- WebMercator: {
49
- type: CRSType.Name,
50
- properties: {
51
- name: 'EPSG:3857'
52
- }
53
- } as NamedCRS,
54
-
55
- // 中国大地坐标系2000
56
- CGCS2000: {
57
- type: CRSType.Name,
58
- properties: {
59
- name: 'EPSG:4490'
60
- }
61
- } as NamedCRS,
62
-
63
- // 北京54坐标系
64
- Beijing54: {
65
- type: CRSType.Name,
66
- properties: {
67
- name: 'EPSG:4214'
68
- }
69
- } as NamedCRS,
70
-
71
- // 西安80坐标系
72
- Xian80: {
73
- type: CRSType.Name,
74
- properties: {
75
- name: 'EPSG:4610'
76
- }
77
- } as NamedCRS
78
- } as const;
79
-
80
- // 类型守卫函数
81
- export function isNamedCRS(crs: CRS): crs is NamedCRS {
82
- return crs.type === CRSType.Name;
83
- }
84
-
85
- export function isLinkedCRS(crs: CRS): crs is LinkedCRS {
86
- return crs.type === CRSType.Link;
87
- }
88
-
89
- // 工具函数
90
- export function createNamedCRS(name: string): NamedCRS {
91
- return {
92
- type: CRSType.Name,
93
- properties: {
94
- name
95
- }
96
- };
97
- }
98
-
99
- export function createLinkedCRS(href: string, type?: string): LinkedCRS {
100
- return {
101
- type: CRSType.Link,
102
- properties: {
103
- href,
104
- ...(type && { type })
105
- }
106
- };
107
- }