@vaadin/bundles 25.0.0-alpha3 → 25.0.0-alpha5
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/node_modules_ol_ImageCanvas_js.js +76 -83
- package/node_modules_ol_ImageCanvas_js.js.map +1 -1
- package/node_modules_ol_TileRange_js.js +128 -110
- package/node_modules_ol_TileRange_js.js.map +1 -1
- package/node_modules_ol_Tile_js.js +279 -0
- package/node_modules_ol_Tile_js.js.map +1 -0
- package/node_modules_ol_VectorRenderTile_js.js +428 -143
- package/node_modules_ol_VectorRenderTile_js.js.map +1 -1
- package/node_modules_ol_VectorTile_js.js +405 -119
- package/node_modules_ol_VectorTile_js.js.map +1 -1
- package/node_modules_ol_control_MousePosition_js.js +327 -0
- package/node_modules_ol_control_MousePosition_js.js.map +1 -0
- package/node_modules_ol_control_ZoomToExtent_js.js +118 -0
- package/node_modules_ol_control_ZoomToExtent_js.js.map +1 -0
- package/node_modules_ol_events_SnapEvent_js.js +79 -0
- package/node_modules_ol_events_SnapEvent_js.js.map +1 -0
- package/node_modules_ol_featureloader_js.js +205 -0
- package/node_modules_ol_featureloader_js.js.map +1 -0
- package/node_modules_ol_geom_Circle_js.js +300 -0
- package/node_modules_ol_geom_Circle_js.js.map +1 -0
- package/node_modules_ol_geom_GeometryCollection_js.js +369 -0
- package/node_modules_ol_geom_GeometryCollection_js.js.map +1 -0
- package/node_modules_ol_geom_MultiPoint_js.js +228 -0
- package/node_modules_ol_geom_MultiPoint_js.js.map +1 -0
- package/node_modules_ol_geom_flat_center_js.js +47 -0
- package/node_modules_ol_geom_flat_center_js.js.map +1 -0
- package/node_modules_ol_geom_flat_geodesic_js.js +123 -88
- package/node_modules_ol_geom_flat_geodesic_js.js.map +1 -1
- package/node_modules_ol_geom_flat_interpolate_js.js +230 -0
- package/node_modules_ol_geom_flat_interpolate_js.js.map +1 -0
- package/node_modules_ol_geom_flat_length_js-_375a0.js +58 -0
- package/node_modules_ol_geom_flat_length_js-_375a0.js.map +1 -0
- package/node_modules_ol_geom_flat_length_js-_375a1.js +58 -0
- package/node_modules_ol_geom_flat_length_js-_375a1.js.map +1 -0
- package/node_modules_ol_geom_flat_length_js-_375a2.js +58 -0
- package/node_modules_ol_geom_flat_length_js-_375a2.js.map +1 -0
- package/node_modules_ol_geom_flat_length_js-_375a3.js +58 -0
- package/node_modules_ol_geom_flat_length_js-_375a3.js.map +1 -0
- package/node_modules_ol_geom_flat_length_js-_375a4.js +58 -0
- package/node_modules_ol_geom_flat_length_js-_375a4.js.map +1 -0
- package/node_modules_ol_geom_flat_linechunk_js.js +76 -0
- package/node_modules_ol_geom_flat_linechunk_js.js.map +1 -0
- package/node_modules_ol_geom_flat_straightchunk_js.js +68 -0
- package/node_modules_ol_geom_flat_straightchunk_js.js.map +1 -0
- package/node_modules_ol_geom_flat_textpath_js.js +178 -0
- package/node_modules_ol_geom_flat_textpath_js.js.map +1 -0
- package/node_modules_ol_interaction_DblClickDragZoom_js.js +285 -0
- package/node_modules_ol_interaction_DblClickDragZoom_js.js.map +1 -0
- package/node_modules_ol_interaction_DragAndDrop_js.js +351 -0
- package/node_modules_ol_interaction_DragAndDrop_js.js.map +1 -0
- package/node_modules_ol_interaction_DragRotateAndZoom_js.js +159 -0
- package/node_modules_ol_interaction_DragRotateAndZoom_js.js.map +1 -0
- package/node_modules_ol_layer_Vector_js-_49290.js +110 -0
- package/node_modules_ol_layer_Vector_js-_49290.js.map +1 -0
- package/node_modules_ol_layer_Vector_js-_49291.js +110 -0
- package/node_modules_ol_layer_Vector_js-_49291.js.map +1 -0
- package/node_modules_ol_layer_Vector_js-_49292.js +110 -0
- package/node_modules_ol_layer_Vector_js-_49292.js.map +1 -0
- package/node_modules_ol_layer_Vector_js-_49293.js +110 -0
- package/node_modules_ol_layer_Vector_js-_49293.js.map +1 -0
- package/node_modules_ol_loadingstrategy_js.js +95 -0
- package/node_modules_ol_loadingstrategy_js.js.map +1 -0
- package/node_modules_ol_render_VectorContext_js-_3ad60.js +144 -0
- package/node_modules_ol_render_VectorContext_js-_3ad60.js.map +1 -0
- package/node_modules_ol_render_VectorContext_js-_3ad61.js +144 -0
- package/node_modules_ol_render_VectorContext_js-_3ad61.js.map +1 -0
- package/node_modules_ol_render_VectorContext_js-node_modules_ol_render_canvas_hitdetect_js.js +372 -0
- package/node_modules_ol_render_VectorContext_js-node_modules_ol_render_canvas_hitdetect_js.js.map +1 -0
- package/node_modules_ol_render_canvas_ImageBuilder_js.js +318 -0
- package/node_modules_ol_render_canvas_ImageBuilder_js.js.map +1 -0
- package/node_modules_ol_render_canvas_Instruction_js.js +66 -0
- package/node_modules_ol_render_canvas_Instruction_js.js.map +1 -0
- package/node_modules_ol_render_canvas_LineStringBuilder_js.js +187 -0
- package/node_modules_ol_render_canvas_LineStringBuilder_js.js.map +1 -0
- package/node_modules_ol_render_canvas_PolygonBuilder_js.js +276 -0
- package/node_modules_ol_render_canvas_PolygonBuilder_js.js.map +1 -0
- package/node_modules_ol_render_canvas_ZIndexContext_js-_fab20.js +156 -0
- package/node_modules_ol_render_canvas_ZIndexContext_js-_fab20.js.map +1 -0
- package/node_modules_ol_render_canvas_ZIndexContext_js-_fab21.js +156 -0
- package/node_modules_ol_render_canvas_ZIndexContext_js-_fab21.js.map +1 -0
- package/node_modules_ol_render_js-node_modules_ol_render_VectorContext_js.js +301 -0
- package/node_modules_ol_render_js-node_modules_ol_render_VectorContext_js.js.map +1 -0
- package/node_modules_ol_renderer_Layer_js.js +219 -0
- package/node_modules_ol_renderer_Layer_js.js.map +1 -0
- package/node_modules_ol_source_Source_js.js +256 -0
- package/node_modules_ol_source_Source_js.js.map +1 -0
- package/node_modules_ol_source_VectorEventType_js-node_modules_ol_structs_RBush_js.js +318 -0
- package/node_modules_ol_source_VectorEventType_js-node_modules_ol_structs_RBush_js.js.map +1 -0
- package/node_modules_ol_source_VectorEventType_js.js +80 -0
- package/node_modules_ol_source_VectorEventType_js.js.map +1 -0
- package/node_modules_ol_structs_RBush_js.js +242 -0
- package/node_modules_ol_structs_RBush_js.js.map +1 -0
- package/node_modules_ol_style_js.js +2 -1
- package/node_modules_ol_style_js.js.map +1 -1
- package/node_modules_rbush_rbush_min_js.js +16 -0
- package/node_modules_rbush_rbush_min_js.js.map +1 -0
- package/package.json +142 -146
- package/vaadin-bundle.json +2447 -2352
- package/vaadin.js +52246 -63791
- package/vaadin.js.map +1 -1
- package/vendors-node_modules_dompurify_dist_purify_es_mjs.js +1364 -0
- package/vendors-node_modules_dompurify_dist_purify_es_mjs.js.map +1 -0
- package/vendors-node_modules_dompurify_dist_purify_js.js +26 -21
- package/vendors-node_modules_dompurify_dist_purify_js.js.map +1 -1
- package/vendors-node_modules_marked_lib_marked_esm_js.js +2205 -0
- package/vendors-node_modules_marked_lib_marked_esm_js.js.map +1 -0
- package/vendors-node_modules_marked_lib_marked_umd_js.js +2164 -2556
- package/vendors-node_modules_marked_lib_marked_umd_js.js.map +1 -1
- package/vendors-node_modules_ol_Feature_js.js +360 -0
- package/vendors-node_modules_ol_Feature_js.js.map +1 -0
- package/vendors-node_modules_ol_Geolocation_js.js +352 -293
- package/vendors-node_modules_ol_Geolocation_js.js.map +1 -1
- package/vendors-node_modules_ol_ImageTile_js.js +494 -0
- package/vendors-node_modules_ol_ImageTile_js.js.map +1 -0
- package/vendors-node_modules_ol_Overlay_js.js +606 -0
- package/vendors-node_modules_ol_Overlay_js.js.map +1 -0
- package/vendors-node_modules_ol_control_FullScreen_js.js +417 -0
- package/vendors-node_modules_ol_control_FullScreen_js.js.map +1 -0
- package/vendors-node_modules_ol_control_OverviewMap_js.js +711 -0
- package/vendors-node_modules_ol_control_OverviewMap_js.js.map +1 -0
- package/vendors-node_modules_ol_control_ScaleLine_js.js +509 -0
- package/vendors-node_modules_ol_control_ScaleLine_js.js.map +1 -0
- package/vendors-node_modules_ol_control_ZoomSlider_js.js +418 -0
- package/vendors-node_modules_ol_control_ZoomSlider_js.js.map +1 -0
- package/vendors-node_modules_ol_control_js.js +490 -0
- package/vendors-node_modules_ol_control_js.js.map +1 -0
- package/vendors-node_modules_ol_geom_LineString_js.js +574 -0
- package/vendors-node_modules_ol_geom_LineString_js.js.map +1 -0
- package/vendors-node_modules_ol_geom_MultiLineString_js.js +405 -0
- package/vendors-node_modules_ol_geom_MultiLineString_js.js.map +1 -0
- package/vendors-node_modules_ol_geom_MultiPolygon_js.js +773 -0
- package/vendors-node_modules_ol_geom_MultiPolygon_js.js.map +1 -0
- package/vendors-node_modules_ol_geom_js-node_modules_ol_geom_flat_length_js.js +769 -0
- package/vendors-node_modules_ol_geom_js-node_modules_ol_geom_flat_length_js.js.map +1 -0
- package/vendors-node_modules_ol_index_js.js +526 -675
- package/vendors-node_modules_ol_index_js.js.map +1 -1
- package/vendors-node_modules_ol_interaction_Draw_js.js +2777 -0
- package/vendors-node_modules_ol_interaction_Draw_js.js.map +1 -0
- package/vendors-node_modules_ol_interaction_Extent_js.js +586 -0
- package/vendors-node_modules_ol_interaction_Extent_js.js.map +1 -0
- package/vendors-node_modules_ol_interaction_Link_js.js +489 -0
- package/vendors-node_modules_ol_interaction_Link_js.js.map +1 -0
- package/vendors-node_modules_ol_interaction_Modify_js.js +1841 -0
- package/vendors-node_modules_ol_interaction_Modify_js.js.map +1 -0
- package/vendors-node_modules_ol_interaction_Select_js.js +623 -0
- package/vendors-node_modules_ol_interaction_Select_js.js.map +1 -0
- package/vendors-node_modules_ol_interaction_Snap_js.js +982 -0
- package/vendors-node_modules_ol_interaction_Snap_js.js.map +1 -0
- package/vendors-node_modules_ol_interaction_Translate_js.js +466 -0
- package/vendors-node_modules_ol_interaction_Translate_js.js.map +1 -0
- package/vendors-node_modules_ol_interaction_js.js +872 -0
- package/vendors-node_modules_ol_interaction_js.js.map +1 -0
- package/vendors-node_modules_ol_layer_Graticule_js.js +1374 -989
- package/vendors-node_modules_ol_layer_Graticule_js.js.map +1 -1
- package/vendors-node_modules_ol_render_Feature_js.js +546 -0
- package/vendors-node_modules_ol_render_Feature_js.js.map +1 -0
- package/vendors-node_modules_ol_render_canvas_BuilderGroup_js.js +897 -0
- package/vendors-node_modules_ol_render_canvas_BuilderGroup_js.js.map +1 -0
- package/vendors-node_modules_ol_render_canvas_Builder_js.js +907 -0
- package/vendors-node_modules_ol_render_canvas_Builder_js.js.map +1 -0
- package/vendors-node_modules_ol_render_canvas_ExecutorGroup_js.js +539 -0
- package/vendors-node_modules_ol_render_canvas_ExecutorGroup_js.js.map +1 -0
- package/vendors-node_modules_ol_render_canvas_Executor_js.js +1715 -0
- package/vendors-node_modules_ol_render_canvas_Executor_js.js.map +1 -0
- package/vendors-node_modules_ol_render_canvas_Immediate_js.js +1208 -0
- package/vendors-node_modules_ol_render_canvas_Immediate_js.js.map +1 -0
- package/vendors-node_modules_ol_render_canvas_TextBuilder_js.js +825 -0
- package/vendors-node_modules_ol_render_canvas_TextBuilder_js.js.map +1 -0
- package/vendors-node_modules_ol_renderer_canvas_Layer_js.js +654 -0
- package/vendors-node_modules_ol_renderer_canvas_Layer_js.js.map +1 -0
- package/vendors-node_modules_ol_renderer_canvas_VectorLayer_js.js +1044 -0
- package/vendors-node_modules_ol_renderer_canvas_VectorLayer_js.js.map +1 -0
- package/vendors-node_modules_ol_renderer_vector_js.js +460 -0
- package/vendors-node_modules_ol_renderer_vector_js.js.map +1 -0
- package/vendors-node_modules_ol_source_Vector_js.js +2091 -0
- package/vendors-node_modules_ol_source_Vector_js.js.map +1 -0
- package/node_modules_ol_ImageTile_js.js +0 -177
- package/node_modules_ol_ImageTile_js.js.map +0 -1
- package/node_modules_ol_render_js.js +0 -131
- package/node_modules_ol_render_js.js.map +0 -1
- package/node_modules_ol_structs_LRUCache_js.js +0 -275
- package/node_modules_ol_structs_LRUCache_js.js.map +0 -1
- package/node_modules_ol_tilecoord_js.js +0 -115
- package/node_modules_ol_tilecoord_js.js.map +0 -1
- package/vendors-node_modules_ol_TileCache_js.js +0 -461
- package/vendors-node_modules_ol_TileCache_js.js.map +0 -1
- package/vendors-node_modules_ol_Tile_js.js +0 -330
- package/vendors-node_modules_ol_Tile_js.js.map +0 -1
- package/vendors-node_modules_ol_style_Text_js.js +0 -509
- package/vendors-node_modules_ol_style_Text_js.js.map +0 -1
- package/vendors-node_modules_rbush_index_js.js +0 -531
- package/vendors-node_modules_rbush_index_js.js.map +0 -1
|
@@ -0,0 +1,773 @@
|
|
|
1
|
+
(self["webpackChunk_vaadin_bundles"] = self["webpackChunk_vaadin_bundles"] || []).push([["vendors-node_modules_ol_geom_MultiPolygon_js"],{
|
|
2
|
+
|
|
3
|
+
/***/ "./node_modules/ol/geom/MultiPoint.js":
|
|
4
|
+
/*!********************************************!*\
|
|
5
|
+
!*** ./node_modules/ol/geom/MultiPoint.js ***!
|
|
6
|
+
\********************************************/
|
|
7
|
+
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
8
|
+
|
|
9
|
+
__webpack_require__.r(__webpack_exports__);
|
|
10
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
11
|
+
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
12
|
+
/* harmony export */ });
|
|
13
|
+
/* harmony import */ var _array_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../array.js */ "./node_modules/ol/array.js");
|
|
14
|
+
/* harmony import */ var _extent_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../extent.js */ "./node_modules/ol/extent.js");
|
|
15
|
+
/* harmony import */ var _math_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../math.js */ "./node_modules/ol/math.js");
|
|
16
|
+
/* harmony import */ var _Point_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Point.js */ "./node_modules/ol/geom/Point.js");
|
|
17
|
+
/* harmony import */ var _SimpleGeometry_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./SimpleGeometry.js */ "./node_modules/ol/geom/SimpleGeometry.js");
|
|
18
|
+
/* harmony import */ var _flat_deflate_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./flat/deflate.js */ "./node_modules/ol/geom/flat/deflate.js");
|
|
19
|
+
/* harmony import */ var _flat_inflate_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./flat/inflate.js */ "./node_modules/ol/geom/flat/inflate.js");
|
|
20
|
+
/**
|
|
21
|
+
* @module ol/geom/MultiPoint
|
|
22
|
+
*/
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* @classdesc
|
|
33
|
+
* Multi-point geometry.
|
|
34
|
+
*
|
|
35
|
+
* @api
|
|
36
|
+
*/
|
|
37
|
+
class MultiPoint extends _SimpleGeometry_js__WEBPACK_IMPORTED_MODULE_0__["default"] {
|
|
38
|
+
/**
|
|
39
|
+
* @param {Array<import("../coordinate.js").Coordinate>|Array<number>} coordinates Coordinates.
|
|
40
|
+
* For internal use, flat coordinates in combination with `layout` are also accepted.
|
|
41
|
+
* @param {import("./Geometry.js").GeometryLayout} [layout] Layout.
|
|
42
|
+
*/
|
|
43
|
+
constructor(coordinates, layout) {
|
|
44
|
+
super();
|
|
45
|
+
if (layout && !Array.isArray(coordinates[0])) {
|
|
46
|
+
this.setFlatCoordinates(
|
|
47
|
+
layout,
|
|
48
|
+
/** @type {Array<number>} */ (coordinates),
|
|
49
|
+
);
|
|
50
|
+
} else {
|
|
51
|
+
this.setCoordinates(
|
|
52
|
+
/** @type {Array<import("../coordinate.js").Coordinate>} */ (
|
|
53
|
+
coordinates
|
|
54
|
+
),
|
|
55
|
+
layout,
|
|
56
|
+
);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* Append the passed point to this multipoint.
|
|
62
|
+
* @param {Point} point Point.
|
|
63
|
+
* @api
|
|
64
|
+
*/
|
|
65
|
+
appendPoint(point) {
|
|
66
|
+
(0,_array_js__WEBPACK_IMPORTED_MODULE_1__.extend)(this.flatCoordinates, point.getFlatCoordinates());
|
|
67
|
+
this.changed();
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* Make a complete copy of the geometry.
|
|
72
|
+
* @return {!MultiPoint} Clone.
|
|
73
|
+
* @api
|
|
74
|
+
* @override
|
|
75
|
+
*/
|
|
76
|
+
clone() {
|
|
77
|
+
const multiPoint = new MultiPoint(
|
|
78
|
+
this.flatCoordinates.slice(),
|
|
79
|
+
this.layout,
|
|
80
|
+
);
|
|
81
|
+
multiPoint.applyProperties(this);
|
|
82
|
+
return multiPoint;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
/**
|
|
86
|
+
* @param {number} x X.
|
|
87
|
+
* @param {number} y Y.
|
|
88
|
+
* @param {import("../coordinate.js").Coordinate} closestPoint Closest point.
|
|
89
|
+
* @param {number} minSquaredDistance Minimum squared distance.
|
|
90
|
+
* @return {number} Minimum squared distance.
|
|
91
|
+
* @override
|
|
92
|
+
*/
|
|
93
|
+
closestPointXY(x, y, closestPoint, minSquaredDistance) {
|
|
94
|
+
if (minSquaredDistance < (0,_extent_js__WEBPACK_IMPORTED_MODULE_2__.closestSquaredDistanceXY)(this.getExtent(), x, y)) {
|
|
95
|
+
return minSquaredDistance;
|
|
96
|
+
}
|
|
97
|
+
const flatCoordinates = this.flatCoordinates;
|
|
98
|
+
const stride = this.stride;
|
|
99
|
+
for (let i = 0, ii = flatCoordinates.length; i < ii; i += stride) {
|
|
100
|
+
const squaredDistance = (0,_math_js__WEBPACK_IMPORTED_MODULE_3__.squaredDistance)(
|
|
101
|
+
x,
|
|
102
|
+
y,
|
|
103
|
+
flatCoordinates[i],
|
|
104
|
+
flatCoordinates[i + 1],
|
|
105
|
+
);
|
|
106
|
+
if (squaredDistance < minSquaredDistance) {
|
|
107
|
+
minSquaredDistance = squaredDistance;
|
|
108
|
+
for (let j = 0; j < stride; ++j) {
|
|
109
|
+
closestPoint[j] = flatCoordinates[i + j];
|
|
110
|
+
}
|
|
111
|
+
closestPoint.length = stride;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
return minSquaredDistance;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
/**
|
|
118
|
+
* Return the coordinates of the multipoint.
|
|
119
|
+
* @return {Array<import("../coordinate.js").Coordinate>} Coordinates.
|
|
120
|
+
* @api
|
|
121
|
+
* @override
|
|
122
|
+
*/
|
|
123
|
+
getCoordinates() {
|
|
124
|
+
return (0,_flat_inflate_js__WEBPACK_IMPORTED_MODULE_4__.inflateCoordinates)(
|
|
125
|
+
this.flatCoordinates,
|
|
126
|
+
0,
|
|
127
|
+
this.flatCoordinates.length,
|
|
128
|
+
this.stride,
|
|
129
|
+
);
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
/**
|
|
133
|
+
* Return the point at the specified index.
|
|
134
|
+
* @param {number} index Index.
|
|
135
|
+
* @return {Point} Point.
|
|
136
|
+
* @api
|
|
137
|
+
*/
|
|
138
|
+
getPoint(index) {
|
|
139
|
+
const n = this.flatCoordinates.length / this.stride;
|
|
140
|
+
if (index < 0 || n <= index) {
|
|
141
|
+
return null;
|
|
142
|
+
}
|
|
143
|
+
return new _Point_js__WEBPACK_IMPORTED_MODULE_5__["default"](
|
|
144
|
+
this.flatCoordinates.slice(
|
|
145
|
+
index * this.stride,
|
|
146
|
+
(index + 1) * this.stride,
|
|
147
|
+
),
|
|
148
|
+
this.layout,
|
|
149
|
+
);
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
/**
|
|
153
|
+
* Return the points of this multipoint.
|
|
154
|
+
* @return {Array<Point>} Points.
|
|
155
|
+
* @api
|
|
156
|
+
*/
|
|
157
|
+
getPoints() {
|
|
158
|
+
const flatCoordinates = this.flatCoordinates;
|
|
159
|
+
const layout = this.layout;
|
|
160
|
+
const stride = this.stride;
|
|
161
|
+
/** @type {Array<Point>} */
|
|
162
|
+
const points = [];
|
|
163
|
+
for (let i = 0, ii = flatCoordinates.length; i < ii; i += stride) {
|
|
164
|
+
const point = new _Point_js__WEBPACK_IMPORTED_MODULE_5__["default"](flatCoordinates.slice(i, i + stride), layout);
|
|
165
|
+
points.push(point);
|
|
166
|
+
}
|
|
167
|
+
return points;
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
/**
|
|
171
|
+
* Get the type of this geometry.
|
|
172
|
+
* @return {import("./Geometry.js").Type} Geometry type.
|
|
173
|
+
* @api
|
|
174
|
+
* @override
|
|
175
|
+
*/
|
|
176
|
+
getType() {
|
|
177
|
+
return 'MultiPoint';
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
/**
|
|
181
|
+
* Test if the geometry and the passed extent intersect.
|
|
182
|
+
* @param {import("../extent.js").Extent} extent Extent.
|
|
183
|
+
* @return {boolean} `true` if the geometry and the extent intersect.
|
|
184
|
+
* @api
|
|
185
|
+
* @override
|
|
186
|
+
*/
|
|
187
|
+
intersectsExtent(extent) {
|
|
188
|
+
const flatCoordinates = this.flatCoordinates;
|
|
189
|
+
const stride = this.stride;
|
|
190
|
+
for (let i = 0, ii = flatCoordinates.length; i < ii; i += stride) {
|
|
191
|
+
const x = flatCoordinates[i];
|
|
192
|
+
const y = flatCoordinates[i + 1];
|
|
193
|
+
if ((0,_extent_js__WEBPACK_IMPORTED_MODULE_2__.containsXY)(extent, x, y)) {
|
|
194
|
+
return true;
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
return false;
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
/**
|
|
201
|
+
* Set the coordinates of the multipoint.
|
|
202
|
+
* @param {!Array<import("../coordinate.js").Coordinate>} coordinates Coordinates.
|
|
203
|
+
* @param {import("./Geometry.js").GeometryLayout} [layout] Layout.
|
|
204
|
+
* @api
|
|
205
|
+
* @override
|
|
206
|
+
*/
|
|
207
|
+
setCoordinates(coordinates, layout) {
|
|
208
|
+
this.setLayout(layout, coordinates, 1);
|
|
209
|
+
if (!this.flatCoordinates) {
|
|
210
|
+
this.flatCoordinates = [];
|
|
211
|
+
}
|
|
212
|
+
this.flatCoordinates.length = (0,_flat_deflate_js__WEBPACK_IMPORTED_MODULE_6__.deflateCoordinates)(
|
|
213
|
+
this.flatCoordinates,
|
|
214
|
+
0,
|
|
215
|
+
coordinates,
|
|
216
|
+
this.stride,
|
|
217
|
+
);
|
|
218
|
+
this.changed();
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (MultiPoint);
|
|
223
|
+
|
|
224
|
+
|
|
225
|
+
/***/ }),
|
|
226
|
+
|
|
227
|
+
/***/ "./node_modules/ol/geom/MultiPolygon.js":
|
|
228
|
+
/*!**********************************************!*\
|
|
229
|
+
!*** ./node_modules/ol/geom/MultiPolygon.js ***!
|
|
230
|
+
\**********************************************/
|
|
231
|
+
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
232
|
+
|
|
233
|
+
__webpack_require__.r(__webpack_exports__);
|
|
234
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
235
|
+
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
236
|
+
/* harmony export */ });
|
|
237
|
+
/* harmony import */ var _array_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../array.js */ "./node_modules/ol/array.js");
|
|
238
|
+
/* harmony import */ var _extent_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../extent.js */ "./node_modules/ol/extent.js");
|
|
239
|
+
/* harmony import */ var _MultiPoint_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./MultiPoint.js */ "./node_modules/ol/geom/MultiPoint.js");
|
|
240
|
+
/* harmony import */ var _Polygon_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./Polygon.js */ "./node_modules/ol/geom/Polygon.js");
|
|
241
|
+
/* harmony import */ var _SimpleGeometry_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./SimpleGeometry.js */ "./node_modules/ol/geom/SimpleGeometry.js");
|
|
242
|
+
/* harmony import */ var _flat_area_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./flat/area.js */ "./node_modules/ol/geom/flat/area.js");
|
|
243
|
+
/* harmony import */ var _flat_center_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./flat/center.js */ "./node_modules/ol/geom/flat/center.js");
|
|
244
|
+
/* harmony import */ var _flat_closest_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./flat/closest.js */ "./node_modules/ol/geom/flat/closest.js");
|
|
245
|
+
/* harmony import */ var _flat_contains_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./flat/contains.js */ "./node_modules/ol/geom/flat/contains.js");
|
|
246
|
+
/* harmony import */ var _flat_deflate_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./flat/deflate.js */ "./node_modules/ol/geom/flat/deflate.js");
|
|
247
|
+
/* harmony import */ var _flat_inflate_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./flat/inflate.js */ "./node_modules/ol/geom/flat/inflate.js");
|
|
248
|
+
/* harmony import */ var _flat_interiorpoint_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./flat/interiorpoint.js */ "./node_modules/ol/geom/flat/interiorpoint.js");
|
|
249
|
+
/* harmony import */ var _flat_intersectsextent_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./flat/intersectsextent.js */ "./node_modules/ol/geom/flat/intersectsextent.js");
|
|
250
|
+
/* harmony import */ var _flat_orient_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./flat/orient.js */ "./node_modules/ol/geom/flat/orient.js");
|
|
251
|
+
/* harmony import */ var _flat_simplify_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./flat/simplify.js */ "./node_modules/ol/geom/flat/simplify.js");
|
|
252
|
+
/**
|
|
253
|
+
* @module ol/geom/MultiPolygon
|
|
254
|
+
*/
|
|
255
|
+
|
|
256
|
+
|
|
257
|
+
|
|
258
|
+
|
|
259
|
+
|
|
260
|
+
|
|
261
|
+
|
|
262
|
+
|
|
263
|
+
|
|
264
|
+
|
|
265
|
+
|
|
266
|
+
|
|
267
|
+
|
|
268
|
+
|
|
269
|
+
|
|
270
|
+
|
|
271
|
+
/**
|
|
272
|
+
* @classdesc
|
|
273
|
+
* Multi-polygon geometry.
|
|
274
|
+
*
|
|
275
|
+
* @api
|
|
276
|
+
*/
|
|
277
|
+
class MultiPolygon extends _SimpleGeometry_js__WEBPACK_IMPORTED_MODULE_0__["default"] {
|
|
278
|
+
/**
|
|
279
|
+
* @param {Array<Array<Array<import("../coordinate.js").Coordinate>>|Polygon>|Array<number>} coordinates Coordinates.
|
|
280
|
+
* For internal use, flat coordinates in combination with `layout` and `endss` are also accepted.
|
|
281
|
+
* @param {import("./Geometry.js").GeometryLayout} [layout] Layout.
|
|
282
|
+
* @param {Array<Array<number>>} [endss] Array of ends for internal use with flat coordinates.
|
|
283
|
+
*/
|
|
284
|
+
constructor(coordinates, layout, endss) {
|
|
285
|
+
super();
|
|
286
|
+
|
|
287
|
+
/**
|
|
288
|
+
* @type {Array<Array<number>>}
|
|
289
|
+
* @private
|
|
290
|
+
*/
|
|
291
|
+
this.endss_ = [];
|
|
292
|
+
|
|
293
|
+
/**
|
|
294
|
+
* @private
|
|
295
|
+
* @type {number}
|
|
296
|
+
*/
|
|
297
|
+
this.flatInteriorPointsRevision_ = -1;
|
|
298
|
+
|
|
299
|
+
/**
|
|
300
|
+
* @private
|
|
301
|
+
* @type {Array<number>|null}
|
|
302
|
+
*/
|
|
303
|
+
this.flatInteriorPoints_ = null;
|
|
304
|
+
|
|
305
|
+
/**
|
|
306
|
+
* @private
|
|
307
|
+
* @type {number}
|
|
308
|
+
*/
|
|
309
|
+
this.maxDelta_ = -1;
|
|
310
|
+
|
|
311
|
+
/**
|
|
312
|
+
* @private
|
|
313
|
+
* @type {number}
|
|
314
|
+
*/
|
|
315
|
+
this.maxDeltaRevision_ = -1;
|
|
316
|
+
|
|
317
|
+
/**
|
|
318
|
+
* @private
|
|
319
|
+
* @type {number}
|
|
320
|
+
*/
|
|
321
|
+
this.orientedRevision_ = -1;
|
|
322
|
+
|
|
323
|
+
/**
|
|
324
|
+
* @private
|
|
325
|
+
* @type {Array<number>|null}
|
|
326
|
+
*/
|
|
327
|
+
this.orientedFlatCoordinates_ = null;
|
|
328
|
+
|
|
329
|
+
if (!endss && !Array.isArray(coordinates[0])) {
|
|
330
|
+
const polygons = /** @type {Array<Polygon>} */ (coordinates);
|
|
331
|
+
/** @type {Array<number>} */
|
|
332
|
+
const flatCoordinates = [];
|
|
333
|
+
const thisEndss = [];
|
|
334
|
+
for (let i = 0, ii = polygons.length; i < ii; ++i) {
|
|
335
|
+
const polygon = polygons[i];
|
|
336
|
+
const offset = flatCoordinates.length;
|
|
337
|
+
const ends = polygon.getEnds();
|
|
338
|
+
for (let j = 0, jj = ends.length; j < jj; ++j) {
|
|
339
|
+
ends[j] += offset;
|
|
340
|
+
}
|
|
341
|
+
(0,_array_js__WEBPACK_IMPORTED_MODULE_1__.extend)(flatCoordinates, polygon.getFlatCoordinates());
|
|
342
|
+
thisEndss.push(ends);
|
|
343
|
+
}
|
|
344
|
+
layout =
|
|
345
|
+
polygons.length === 0 ? this.getLayout() : polygons[0].getLayout();
|
|
346
|
+
coordinates = flatCoordinates;
|
|
347
|
+
endss = thisEndss;
|
|
348
|
+
}
|
|
349
|
+
if (layout !== undefined && endss) {
|
|
350
|
+
this.setFlatCoordinates(
|
|
351
|
+
layout,
|
|
352
|
+
/** @type {Array<number>} */ (coordinates),
|
|
353
|
+
);
|
|
354
|
+
this.endss_ = endss;
|
|
355
|
+
} else {
|
|
356
|
+
this.setCoordinates(
|
|
357
|
+
/** @type {Array<Array<Array<import("../coordinate.js").Coordinate>>>} */ (
|
|
358
|
+
coordinates
|
|
359
|
+
),
|
|
360
|
+
layout,
|
|
361
|
+
);
|
|
362
|
+
}
|
|
363
|
+
}
|
|
364
|
+
|
|
365
|
+
/**
|
|
366
|
+
* Append the passed polygon to this multipolygon.
|
|
367
|
+
* @param {Polygon} polygon Polygon.
|
|
368
|
+
* @api
|
|
369
|
+
*/
|
|
370
|
+
appendPolygon(polygon) {
|
|
371
|
+
/** @type {Array<number>} */
|
|
372
|
+
let ends;
|
|
373
|
+
if (!this.flatCoordinates) {
|
|
374
|
+
this.flatCoordinates = polygon.getFlatCoordinates().slice();
|
|
375
|
+
ends = polygon.getEnds().slice();
|
|
376
|
+
this.endss_.push();
|
|
377
|
+
} else {
|
|
378
|
+
const offset = this.flatCoordinates.length;
|
|
379
|
+
(0,_array_js__WEBPACK_IMPORTED_MODULE_1__.extend)(this.flatCoordinates, polygon.getFlatCoordinates());
|
|
380
|
+
ends = polygon.getEnds().slice();
|
|
381
|
+
for (let i = 0, ii = ends.length; i < ii; ++i) {
|
|
382
|
+
ends[i] += offset;
|
|
383
|
+
}
|
|
384
|
+
}
|
|
385
|
+
this.endss_.push(ends);
|
|
386
|
+
this.changed();
|
|
387
|
+
}
|
|
388
|
+
|
|
389
|
+
/**
|
|
390
|
+
* Make a complete copy of the geometry.
|
|
391
|
+
* @return {!MultiPolygon} Clone.
|
|
392
|
+
* @api
|
|
393
|
+
* @override
|
|
394
|
+
*/
|
|
395
|
+
clone() {
|
|
396
|
+
const len = this.endss_.length;
|
|
397
|
+
const newEndss = new Array(len);
|
|
398
|
+
for (let i = 0; i < len; ++i) {
|
|
399
|
+
newEndss[i] = this.endss_[i].slice();
|
|
400
|
+
}
|
|
401
|
+
|
|
402
|
+
const multiPolygon = new MultiPolygon(
|
|
403
|
+
this.flatCoordinates.slice(),
|
|
404
|
+
this.layout,
|
|
405
|
+
newEndss,
|
|
406
|
+
);
|
|
407
|
+
multiPolygon.applyProperties(this);
|
|
408
|
+
|
|
409
|
+
return multiPolygon;
|
|
410
|
+
}
|
|
411
|
+
|
|
412
|
+
/**
|
|
413
|
+
* @param {number} x X.
|
|
414
|
+
* @param {number} y Y.
|
|
415
|
+
* @param {import("../coordinate.js").Coordinate} closestPoint Closest point.
|
|
416
|
+
* @param {number} minSquaredDistance Minimum squared distance.
|
|
417
|
+
* @return {number} Minimum squared distance.
|
|
418
|
+
* @override
|
|
419
|
+
*/
|
|
420
|
+
closestPointXY(x, y, closestPoint, minSquaredDistance) {
|
|
421
|
+
if (minSquaredDistance < (0,_extent_js__WEBPACK_IMPORTED_MODULE_2__.closestSquaredDistanceXY)(this.getExtent(), x, y)) {
|
|
422
|
+
return minSquaredDistance;
|
|
423
|
+
}
|
|
424
|
+
if (this.maxDeltaRevision_ != this.getRevision()) {
|
|
425
|
+
this.maxDelta_ = Math.sqrt(
|
|
426
|
+
(0,_flat_closest_js__WEBPACK_IMPORTED_MODULE_3__.multiArrayMaxSquaredDelta)(
|
|
427
|
+
this.flatCoordinates,
|
|
428
|
+
0,
|
|
429
|
+
this.endss_,
|
|
430
|
+
this.stride,
|
|
431
|
+
0,
|
|
432
|
+
),
|
|
433
|
+
);
|
|
434
|
+
this.maxDeltaRevision_ = this.getRevision();
|
|
435
|
+
}
|
|
436
|
+
return (0,_flat_closest_js__WEBPACK_IMPORTED_MODULE_3__.assignClosestMultiArrayPoint)(
|
|
437
|
+
this.getOrientedFlatCoordinates(),
|
|
438
|
+
0,
|
|
439
|
+
this.endss_,
|
|
440
|
+
this.stride,
|
|
441
|
+
this.maxDelta_,
|
|
442
|
+
true,
|
|
443
|
+
x,
|
|
444
|
+
y,
|
|
445
|
+
closestPoint,
|
|
446
|
+
minSquaredDistance,
|
|
447
|
+
);
|
|
448
|
+
}
|
|
449
|
+
|
|
450
|
+
/**
|
|
451
|
+
* @param {number} x X.
|
|
452
|
+
* @param {number} y Y.
|
|
453
|
+
* @return {boolean} Contains (x, y).
|
|
454
|
+
* @override
|
|
455
|
+
*/
|
|
456
|
+
containsXY(x, y) {
|
|
457
|
+
return (0,_flat_contains_js__WEBPACK_IMPORTED_MODULE_4__.linearRingssContainsXY)(
|
|
458
|
+
this.getOrientedFlatCoordinates(),
|
|
459
|
+
0,
|
|
460
|
+
this.endss_,
|
|
461
|
+
this.stride,
|
|
462
|
+
x,
|
|
463
|
+
y,
|
|
464
|
+
);
|
|
465
|
+
}
|
|
466
|
+
|
|
467
|
+
/**
|
|
468
|
+
* Return the area of the multipolygon on projected plane.
|
|
469
|
+
* @return {number} Area (on projected plane).
|
|
470
|
+
* @api
|
|
471
|
+
*/
|
|
472
|
+
getArea() {
|
|
473
|
+
return (0,_flat_area_js__WEBPACK_IMPORTED_MODULE_5__.linearRingss)(
|
|
474
|
+
this.getOrientedFlatCoordinates(),
|
|
475
|
+
0,
|
|
476
|
+
this.endss_,
|
|
477
|
+
this.stride,
|
|
478
|
+
);
|
|
479
|
+
}
|
|
480
|
+
|
|
481
|
+
/**
|
|
482
|
+
* Get the coordinate array for this geometry. This array has the structure
|
|
483
|
+
* of a GeoJSON coordinate array for multi-polygons.
|
|
484
|
+
*
|
|
485
|
+
* @param {boolean} [right] Orient coordinates according to the right-hand
|
|
486
|
+
* rule (counter-clockwise for exterior and clockwise for interior rings).
|
|
487
|
+
* If `false`, coordinates will be oriented according to the left-hand rule
|
|
488
|
+
* (clockwise for exterior and counter-clockwise for interior rings).
|
|
489
|
+
* By default, coordinate orientation will depend on how the geometry was
|
|
490
|
+
* constructed.
|
|
491
|
+
* @return {Array<Array<Array<import("../coordinate.js").Coordinate>>>} Coordinates.
|
|
492
|
+
* @api
|
|
493
|
+
* @override
|
|
494
|
+
*/
|
|
495
|
+
getCoordinates(right) {
|
|
496
|
+
let flatCoordinates;
|
|
497
|
+
if (right !== undefined) {
|
|
498
|
+
flatCoordinates = this.getOrientedFlatCoordinates().slice();
|
|
499
|
+
(0,_flat_orient_js__WEBPACK_IMPORTED_MODULE_6__.orientLinearRingsArray)(
|
|
500
|
+
flatCoordinates,
|
|
501
|
+
0,
|
|
502
|
+
this.endss_,
|
|
503
|
+
this.stride,
|
|
504
|
+
right,
|
|
505
|
+
);
|
|
506
|
+
} else {
|
|
507
|
+
flatCoordinates = this.flatCoordinates;
|
|
508
|
+
}
|
|
509
|
+
|
|
510
|
+
return (0,_flat_inflate_js__WEBPACK_IMPORTED_MODULE_7__.inflateMultiCoordinatesArray)(
|
|
511
|
+
flatCoordinates,
|
|
512
|
+
0,
|
|
513
|
+
this.endss_,
|
|
514
|
+
this.stride,
|
|
515
|
+
);
|
|
516
|
+
}
|
|
517
|
+
|
|
518
|
+
/**
|
|
519
|
+
* @return {Array<Array<number>>} Endss.
|
|
520
|
+
*/
|
|
521
|
+
getEndss() {
|
|
522
|
+
return this.endss_;
|
|
523
|
+
}
|
|
524
|
+
|
|
525
|
+
/**
|
|
526
|
+
* @return {Array<number>} Flat interior points.
|
|
527
|
+
*/
|
|
528
|
+
getFlatInteriorPoints() {
|
|
529
|
+
if (this.flatInteriorPointsRevision_ != this.getRevision()) {
|
|
530
|
+
const flatCenters = (0,_flat_center_js__WEBPACK_IMPORTED_MODULE_8__.linearRingss)(
|
|
531
|
+
this.flatCoordinates,
|
|
532
|
+
0,
|
|
533
|
+
this.endss_,
|
|
534
|
+
this.stride,
|
|
535
|
+
);
|
|
536
|
+
this.flatInteriorPoints_ = (0,_flat_interiorpoint_js__WEBPACK_IMPORTED_MODULE_9__.getInteriorPointsOfMultiArray)(
|
|
537
|
+
this.getOrientedFlatCoordinates(),
|
|
538
|
+
0,
|
|
539
|
+
this.endss_,
|
|
540
|
+
this.stride,
|
|
541
|
+
flatCenters,
|
|
542
|
+
);
|
|
543
|
+
this.flatInteriorPointsRevision_ = this.getRevision();
|
|
544
|
+
}
|
|
545
|
+
return /** @type {Array<number>} */ (this.flatInteriorPoints_);
|
|
546
|
+
}
|
|
547
|
+
|
|
548
|
+
/**
|
|
549
|
+
* Return the interior points as {@link module:ol/geom/MultiPoint~MultiPoint multipoint}.
|
|
550
|
+
* @return {MultiPoint} Interior points as XYM coordinates, where M is
|
|
551
|
+
* the length of the horizontal intersection that the point belongs to.
|
|
552
|
+
* @api
|
|
553
|
+
*/
|
|
554
|
+
getInteriorPoints() {
|
|
555
|
+
return new _MultiPoint_js__WEBPACK_IMPORTED_MODULE_10__["default"](this.getFlatInteriorPoints().slice(), 'XYM');
|
|
556
|
+
}
|
|
557
|
+
|
|
558
|
+
/**
|
|
559
|
+
* @return {Array<number>} Oriented flat coordinates.
|
|
560
|
+
*/
|
|
561
|
+
getOrientedFlatCoordinates() {
|
|
562
|
+
if (this.orientedRevision_ != this.getRevision()) {
|
|
563
|
+
const flatCoordinates = this.flatCoordinates;
|
|
564
|
+
if (
|
|
565
|
+
(0,_flat_orient_js__WEBPACK_IMPORTED_MODULE_6__.linearRingssAreOriented)(flatCoordinates, 0, this.endss_, this.stride)
|
|
566
|
+
) {
|
|
567
|
+
this.orientedFlatCoordinates_ = flatCoordinates;
|
|
568
|
+
} else {
|
|
569
|
+
this.orientedFlatCoordinates_ = flatCoordinates.slice();
|
|
570
|
+
this.orientedFlatCoordinates_.length = (0,_flat_orient_js__WEBPACK_IMPORTED_MODULE_6__.orientLinearRingsArray)(
|
|
571
|
+
this.orientedFlatCoordinates_,
|
|
572
|
+
0,
|
|
573
|
+
this.endss_,
|
|
574
|
+
this.stride,
|
|
575
|
+
);
|
|
576
|
+
}
|
|
577
|
+
this.orientedRevision_ = this.getRevision();
|
|
578
|
+
}
|
|
579
|
+
return /** @type {Array<number>} */ (this.orientedFlatCoordinates_);
|
|
580
|
+
}
|
|
581
|
+
|
|
582
|
+
/**
|
|
583
|
+
* @param {number} squaredTolerance Squared tolerance.
|
|
584
|
+
* @return {MultiPolygon} Simplified MultiPolygon.
|
|
585
|
+
* @protected
|
|
586
|
+
* @override
|
|
587
|
+
*/
|
|
588
|
+
getSimplifiedGeometryInternal(squaredTolerance) {
|
|
589
|
+
/** @type {Array<number>} */
|
|
590
|
+
const simplifiedFlatCoordinates = [];
|
|
591
|
+
/** @type {Array<Array<number>>} */
|
|
592
|
+
const simplifiedEndss = [];
|
|
593
|
+
simplifiedFlatCoordinates.length = (0,_flat_simplify_js__WEBPACK_IMPORTED_MODULE_11__.quantizeMultiArray)(
|
|
594
|
+
this.flatCoordinates,
|
|
595
|
+
0,
|
|
596
|
+
this.endss_,
|
|
597
|
+
this.stride,
|
|
598
|
+
Math.sqrt(squaredTolerance),
|
|
599
|
+
simplifiedFlatCoordinates,
|
|
600
|
+
0,
|
|
601
|
+
simplifiedEndss,
|
|
602
|
+
);
|
|
603
|
+
return new MultiPolygon(simplifiedFlatCoordinates, 'XY', simplifiedEndss);
|
|
604
|
+
}
|
|
605
|
+
|
|
606
|
+
/**
|
|
607
|
+
* Return the polygon at the specified index.
|
|
608
|
+
* @param {number} index Index.
|
|
609
|
+
* @return {Polygon} Polygon.
|
|
610
|
+
* @api
|
|
611
|
+
*/
|
|
612
|
+
getPolygon(index) {
|
|
613
|
+
if (index < 0 || this.endss_.length <= index) {
|
|
614
|
+
return null;
|
|
615
|
+
}
|
|
616
|
+
let offset;
|
|
617
|
+
if (index === 0) {
|
|
618
|
+
offset = 0;
|
|
619
|
+
} else {
|
|
620
|
+
const prevEnds = this.endss_[index - 1];
|
|
621
|
+
offset = prevEnds[prevEnds.length - 1];
|
|
622
|
+
}
|
|
623
|
+
const ends = this.endss_[index].slice();
|
|
624
|
+
const end = ends[ends.length - 1];
|
|
625
|
+
if (offset !== 0) {
|
|
626
|
+
for (let i = 0, ii = ends.length; i < ii; ++i) {
|
|
627
|
+
ends[i] -= offset;
|
|
628
|
+
}
|
|
629
|
+
}
|
|
630
|
+
return new _Polygon_js__WEBPACK_IMPORTED_MODULE_12__["default"](
|
|
631
|
+
this.flatCoordinates.slice(offset, end),
|
|
632
|
+
this.layout,
|
|
633
|
+
ends,
|
|
634
|
+
);
|
|
635
|
+
}
|
|
636
|
+
|
|
637
|
+
/**
|
|
638
|
+
* Return the polygons of this multipolygon.
|
|
639
|
+
* @return {Array<Polygon>} Polygons.
|
|
640
|
+
* @api
|
|
641
|
+
*/
|
|
642
|
+
getPolygons() {
|
|
643
|
+
const layout = this.layout;
|
|
644
|
+
const flatCoordinates = this.flatCoordinates;
|
|
645
|
+
const endss = this.endss_;
|
|
646
|
+
const polygons = [];
|
|
647
|
+
let offset = 0;
|
|
648
|
+
for (let i = 0, ii = endss.length; i < ii; ++i) {
|
|
649
|
+
const ends = endss[i].slice();
|
|
650
|
+
const end = ends[ends.length - 1];
|
|
651
|
+
if (offset !== 0) {
|
|
652
|
+
for (let j = 0, jj = ends.length; j < jj; ++j) {
|
|
653
|
+
ends[j] -= offset;
|
|
654
|
+
}
|
|
655
|
+
}
|
|
656
|
+
const polygon = new _Polygon_js__WEBPACK_IMPORTED_MODULE_12__["default"](
|
|
657
|
+
flatCoordinates.slice(offset, end),
|
|
658
|
+
layout,
|
|
659
|
+
ends,
|
|
660
|
+
);
|
|
661
|
+
polygons.push(polygon);
|
|
662
|
+
offset = end;
|
|
663
|
+
}
|
|
664
|
+
return polygons;
|
|
665
|
+
}
|
|
666
|
+
|
|
667
|
+
/**
|
|
668
|
+
* Get the type of this geometry.
|
|
669
|
+
* @return {import("./Geometry.js").Type} Geometry type.
|
|
670
|
+
* @api
|
|
671
|
+
* @override
|
|
672
|
+
*/
|
|
673
|
+
getType() {
|
|
674
|
+
return 'MultiPolygon';
|
|
675
|
+
}
|
|
676
|
+
|
|
677
|
+
/**
|
|
678
|
+
* Test if the geometry and the passed extent intersect.
|
|
679
|
+
* @param {import("../extent.js").Extent} extent Extent.
|
|
680
|
+
* @return {boolean} `true` if the geometry and the extent intersect.
|
|
681
|
+
* @api
|
|
682
|
+
* @override
|
|
683
|
+
*/
|
|
684
|
+
intersectsExtent(extent) {
|
|
685
|
+
return (0,_flat_intersectsextent_js__WEBPACK_IMPORTED_MODULE_13__.intersectsLinearRingMultiArray)(
|
|
686
|
+
this.getOrientedFlatCoordinates(),
|
|
687
|
+
0,
|
|
688
|
+
this.endss_,
|
|
689
|
+
this.stride,
|
|
690
|
+
extent,
|
|
691
|
+
);
|
|
692
|
+
}
|
|
693
|
+
|
|
694
|
+
/**
|
|
695
|
+
* Set the coordinates of the multipolygon.
|
|
696
|
+
* @param {!Array<Array<Array<import("../coordinate.js").Coordinate>>>} coordinates Coordinates.
|
|
697
|
+
* @param {import("./Geometry.js").GeometryLayout} [layout] Layout.
|
|
698
|
+
* @api
|
|
699
|
+
* @override
|
|
700
|
+
*/
|
|
701
|
+
setCoordinates(coordinates, layout) {
|
|
702
|
+
this.setLayout(layout, coordinates, 3);
|
|
703
|
+
if (!this.flatCoordinates) {
|
|
704
|
+
this.flatCoordinates = [];
|
|
705
|
+
}
|
|
706
|
+
const endss = (0,_flat_deflate_js__WEBPACK_IMPORTED_MODULE_14__.deflateMultiCoordinatesArray)(
|
|
707
|
+
this.flatCoordinates,
|
|
708
|
+
0,
|
|
709
|
+
coordinates,
|
|
710
|
+
this.stride,
|
|
711
|
+
this.endss_,
|
|
712
|
+
);
|
|
713
|
+
if (endss.length === 0) {
|
|
714
|
+
this.flatCoordinates.length = 0;
|
|
715
|
+
} else {
|
|
716
|
+
const lastEnds = endss[endss.length - 1];
|
|
717
|
+
this.flatCoordinates.length =
|
|
718
|
+
lastEnds.length === 0 ? 0 : lastEnds[lastEnds.length - 1];
|
|
719
|
+
}
|
|
720
|
+
this.changed();
|
|
721
|
+
}
|
|
722
|
+
}
|
|
723
|
+
|
|
724
|
+
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (MultiPolygon);
|
|
725
|
+
|
|
726
|
+
|
|
727
|
+
/***/ }),
|
|
728
|
+
|
|
729
|
+
/***/ "./node_modules/ol/geom/flat/center.js":
|
|
730
|
+
/*!*********************************************!*\
|
|
731
|
+
!*** ./node_modules/ol/geom/flat/center.js ***!
|
|
732
|
+
\*********************************************/
|
|
733
|
+
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
734
|
+
|
|
735
|
+
__webpack_require__.r(__webpack_exports__);
|
|
736
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
737
|
+
/* harmony export */ "linearRingss": () => (/* binding */ linearRingss)
|
|
738
|
+
/* harmony export */ });
|
|
739
|
+
/* harmony import */ var _extent_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../extent.js */ "./node_modules/ol/extent.js");
|
|
740
|
+
/**
|
|
741
|
+
* @module ol/geom/flat/center
|
|
742
|
+
*/
|
|
743
|
+
|
|
744
|
+
|
|
745
|
+
/**
|
|
746
|
+
* @param {Array<number>} flatCoordinates Flat coordinates.
|
|
747
|
+
* @param {number} offset Offset.
|
|
748
|
+
* @param {Array<Array<number>>} endss Endss.
|
|
749
|
+
* @param {number} stride Stride.
|
|
750
|
+
* @return {Array<number>} Flat centers.
|
|
751
|
+
*/
|
|
752
|
+
function linearRingss(flatCoordinates, offset, endss, stride) {
|
|
753
|
+
const flatCenters = [];
|
|
754
|
+
let extent = (0,_extent_js__WEBPACK_IMPORTED_MODULE_0__.createEmpty)();
|
|
755
|
+
for (let i = 0, ii = endss.length; i < ii; ++i) {
|
|
756
|
+
const ends = endss[i];
|
|
757
|
+
extent = (0,_extent_js__WEBPACK_IMPORTED_MODULE_0__.createOrUpdateFromFlatCoordinates)(
|
|
758
|
+
flatCoordinates,
|
|
759
|
+
offset,
|
|
760
|
+
ends[0],
|
|
761
|
+
stride,
|
|
762
|
+
);
|
|
763
|
+
flatCenters.push((extent[0] + extent[2]) / 2, (extent[1] + extent[3]) / 2);
|
|
764
|
+
offset = ends[ends.length - 1];
|
|
765
|
+
}
|
|
766
|
+
return flatCenters;
|
|
767
|
+
}
|
|
768
|
+
|
|
769
|
+
|
|
770
|
+
/***/ })
|
|
771
|
+
|
|
772
|
+
}])
|
|
773
|
+
//# sourceMappingURL=vendors-node_modules_ol_geom_MultiPolygon_js.js.map
|