@tmlmobilidade/ui 20250628.1802.3 → 20250628.2017.41
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/node_modules/@turf/bbox/dist/esm/index.js +27 -0
- package/dist/node_modules/@turf/bbox/dist/esm/index.js.map +1 -0
- package/dist/node_modules/@turf/bbox-polygon/dist/esm/index.js +26 -0
- package/dist/node_modules/@turf/bbox-polygon/dist/esm/index.js.map +1 -0
- package/dist/node_modules/@turf/boolean-disjoint/dist/esm/index.js +141 -0
- package/dist/node_modules/@turf/boolean-disjoint/dist/esm/index.js.map +1 -0
- package/dist/node_modules/@turf/boolean-intersects/dist/esm/index.js +23 -0
- package/dist/node_modules/@turf/boolean-intersects/dist/esm/index.js.map +1 -0
- package/dist/node_modules/@turf/boolean-point-in-polygon/dist/esm/index.js +36 -0
- package/dist/node_modules/@turf/boolean-point-in-polygon/dist/esm/index.js.map +1 -0
- package/dist/node_modules/@turf/combine/dist/esm/index.js +63 -0
- package/dist/node_modules/@turf/combine/dist/esm/index.js.map +1 -0
- package/dist/node_modules/@turf/envelope/dist/esm/index.js +10 -0
- package/dist/node_modules/@turf/envelope/dist/esm/index.js.map +1 -0
- package/dist/node_modules/@turf/helpers/dist/esm/index.js +41 -2
- package/dist/node_modules/@turf/helpers/dist/esm/index.js.map +1 -1
- package/dist/node_modules/@turf/invariant/dist/esm/index.js +27 -0
- package/dist/node_modules/@turf/invariant/dist/esm/index.js.map +1 -0
- package/dist/node_modules/@turf/line-intersect/dist/esm/index.js +44 -0
- package/dist/node_modules/@turf/line-intersect/dist/esm/index.js.map +1 -0
- package/dist/node_modules/@turf/meta/dist/esm/index.js +209 -0
- package/dist/node_modules/@turf/meta/dist/esm/index.js.map +1 -0
- package/dist/node_modules/@turf/polygon-to-line/dist/esm/index.js +43 -0
- package/dist/node_modules/@turf/polygon-to-line/dist/esm/index.js.map +1 -0
- package/dist/node_modules/point-in-polygon-hao/dist/esm/index.js +57 -0
- package/dist/node_modules/point-in-polygon-hao/dist/esm/index.js.map +1 -0
- package/dist/node_modules/point-in-polygon-hao/node_modules/robust-predicates/esm/orient2d.js +183 -0
- package/dist/node_modules/point-in-polygon-hao/node_modules/robust-predicates/esm/orient2d.js.map +1 -0
- package/dist/node_modules/point-in-polygon-hao/node_modules/robust-predicates/esm/util.js +89 -0
- package/dist/node_modules/point-in-polygon-hao/node_modules/robust-predicates/esm/util.js.map +1 -0
- package/dist/node_modules/sweepline-intersections/dist/sweeplineIntersections.esm.js +254 -0
- package/dist/node_modules/sweepline-intersections/dist/sweeplineIntersections.esm.js.map +1 -0
- package/dist/src/contexts/MapOptions.context.js +3 -3
- package/dist/src/contexts/MapOptions.context.js.map +1 -1
- package/dist/src/lib/map.utils.js +5 -3
- package/dist/src/lib/map.utils.js.map +1 -1
- package/package.json +2 -4
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
import { feature } from '../../../helpers/dist/esm/index.js';
|
|
2
|
+
|
|
3
|
+
// index.js
|
|
4
|
+
function coordEach(geojson, callback, excludeWrapCoord) {
|
|
5
|
+
if (geojson === null) return;
|
|
6
|
+
var j, k, l, geometry, stopG, coords, geometryMaybeCollection, wrapShrink = 0, coordIndex = 0, isGeometryCollection, type = geojson.type, isFeatureCollection = type === "FeatureCollection", isFeature = type === "Feature", stop = isFeatureCollection ? geojson.features.length : 1;
|
|
7
|
+
for (var featureIndex = 0; featureIndex < stop; featureIndex++) {
|
|
8
|
+
geometryMaybeCollection = isFeatureCollection ? geojson.features[featureIndex].geometry : isFeature ? geojson.geometry : geojson;
|
|
9
|
+
isGeometryCollection = geometryMaybeCollection ? geometryMaybeCollection.type === "GeometryCollection" : false;
|
|
10
|
+
stopG = isGeometryCollection ? geometryMaybeCollection.geometries.length : 1;
|
|
11
|
+
for (var geomIndex = 0; geomIndex < stopG; geomIndex++) {
|
|
12
|
+
var multiFeatureIndex = 0;
|
|
13
|
+
var geometryIndex = 0;
|
|
14
|
+
geometry = isGeometryCollection ? geometryMaybeCollection.geometries[geomIndex] : geometryMaybeCollection;
|
|
15
|
+
if (geometry === null) continue;
|
|
16
|
+
coords = geometry.coordinates;
|
|
17
|
+
var geomType = geometry.type;
|
|
18
|
+
wrapShrink = 0;
|
|
19
|
+
switch (geomType) {
|
|
20
|
+
case null:
|
|
21
|
+
break;
|
|
22
|
+
case "Point":
|
|
23
|
+
if (callback(
|
|
24
|
+
coords,
|
|
25
|
+
coordIndex,
|
|
26
|
+
featureIndex,
|
|
27
|
+
multiFeatureIndex,
|
|
28
|
+
geometryIndex
|
|
29
|
+
) === false)
|
|
30
|
+
return false;
|
|
31
|
+
coordIndex++;
|
|
32
|
+
multiFeatureIndex++;
|
|
33
|
+
break;
|
|
34
|
+
case "LineString":
|
|
35
|
+
case "MultiPoint":
|
|
36
|
+
for (j = 0; j < coords.length; j++) {
|
|
37
|
+
if (callback(
|
|
38
|
+
coords[j],
|
|
39
|
+
coordIndex,
|
|
40
|
+
featureIndex,
|
|
41
|
+
multiFeatureIndex,
|
|
42
|
+
geometryIndex
|
|
43
|
+
) === false)
|
|
44
|
+
return false;
|
|
45
|
+
coordIndex++;
|
|
46
|
+
if (geomType === "MultiPoint") multiFeatureIndex++;
|
|
47
|
+
}
|
|
48
|
+
if (geomType === "LineString") multiFeatureIndex++;
|
|
49
|
+
break;
|
|
50
|
+
case "Polygon":
|
|
51
|
+
case "MultiLineString":
|
|
52
|
+
for (j = 0; j < coords.length; j++) {
|
|
53
|
+
for (k = 0; k < coords[j].length - wrapShrink; k++) {
|
|
54
|
+
if (callback(
|
|
55
|
+
coords[j][k],
|
|
56
|
+
coordIndex,
|
|
57
|
+
featureIndex,
|
|
58
|
+
multiFeatureIndex,
|
|
59
|
+
geometryIndex
|
|
60
|
+
) === false)
|
|
61
|
+
return false;
|
|
62
|
+
coordIndex++;
|
|
63
|
+
}
|
|
64
|
+
if (geomType === "MultiLineString") multiFeatureIndex++;
|
|
65
|
+
if (geomType === "Polygon") geometryIndex++;
|
|
66
|
+
}
|
|
67
|
+
if (geomType === "Polygon") multiFeatureIndex++;
|
|
68
|
+
break;
|
|
69
|
+
case "MultiPolygon":
|
|
70
|
+
for (j = 0; j < coords.length; j++) {
|
|
71
|
+
geometryIndex = 0;
|
|
72
|
+
for (k = 0; k < coords[j].length; k++) {
|
|
73
|
+
for (l = 0; l < coords[j][k].length - wrapShrink; l++) {
|
|
74
|
+
if (callback(
|
|
75
|
+
coords[j][k][l],
|
|
76
|
+
coordIndex,
|
|
77
|
+
featureIndex,
|
|
78
|
+
multiFeatureIndex,
|
|
79
|
+
geometryIndex
|
|
80
|
+
) === false)
|
|
81
|
+
return false;
|
|
82
|
+
coordIndex++;
|
|
83
|
+
}
|
|
84
|
+
geometryIndex++;
|
|
85
|
+
}
|
|
86
|
+
multiFeatureIndex++;
|
|
87
|
+
}
|
|
88
|
+
break;
|
|
89
|
+
case "GeometryCollection":
|
|
90
|
+
for (j = 0; j < geometry.geometries.length; j++)
|
|
91
|
+
if (coordEach(geometry.geometries[j], callback) === false)
|
|
92
|
+
return false;
|
|
93
|
+
break;
|
|
94
|
+
default:
|
|
95
|
+
throw new Error("Unknown Geometry Type");
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
function featureEach(geojson, callback) {
|
|
101
|
+
if (geojson.type === "Feature") {
|
|
102
|
+
callback(geojson, 0);
|
|
103
|
+
} else if (geojson.type === "FeatureCollection") {
|
|
104
|
+
for (var i = 0; i < geojson.features.length; i++) {
|
|
105
|
+
if (callback(geojson.features[i], i) === false) break;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
function geomEach(geojson, callback) {
|
|
110
|
+
var i, j, g, geometry, stopG, geometryMaybeCollection, isGeometryCollection, featureProperties, featureBBox, featureId, featureIndex = 0, isFeatureCollection = geojson.type === "FeatureCollection", isFeature = geojson.type === "Feature", stop = isFeatureCollection ? geojson.features.length : 1;
|
|
111
|
+
for (i = 0; i < stop; i++) {
|
|
112
|
+
geometryMaybeCollection = isFeatureCollection ? geojson.features[i].geometry : isFeature ? geojson.geometry : geojson;
|
|
113
|
+
featureProperties = isFeatureCollection ? geojson.features[i].properties : isFeature ? geojson.properties : {};
|
|
114
|
+
featureBBox = isFeatureCollection ? geojson.features[i].bbox : isFeature ? geojson.bbox : void 0;
|
|
115
|
+
featureId = isFeatureCollection ? geojson.features[i].id : isFeature ? geojson.id : void 0;
|
|
116
|
+
isGeometryCollection = geometryMaybeCollection ? geometryMaybeCollection.type === "GeometryCollection" : false;
|
|
117
|
+
stopG = isGeometryCollection ? geometryMaybeCollection.geometries.length : 1;
|
|
118
|
+
for (g = 0; g < stopG; g++) {
|
|
119
|
+
geometry = isGeometryCollection ? geometryMaybeCollection.geometries[g] : geometryMaybeCollection;
|
|
120
|
+
if (geometry === null) {
|
|
121
|
+
if (callback(
|
|
122
|
+
null,
|
|
123
|
+
featureIndex,
|
|
124
|
+
featureProperties,
|
|
125
|
+
featureBBox,
|
|
126
|
+
featureId
|
|
127
|
+
) === false)
|
|
128
|
+
return false;
|
|
129
|
+
continue;
|
|
130
|
+
}
|
|
131
|
+
switch (geometry.type) {
|
|
132
|
+
case "Point":
|
|
133
|
+
case "LineString":
|
|
134
|
+
case "MultiPoint":
|
|
135
|
+
case "Polygon":
|
|
136
|
+
case "MultiLineString":
|
|
137
|
+
case "MultiPolygon": {
|
|
138
|
+
if (callback(
|
|
139
|
+
geometry,
|
|
140
|
+
featureIndex,
|
|
141
|
+
featureProperties,
|
|
142
|
+
featureBBox,
|
|
143
|
+
featureId
|
|
144
|
+
) === false)
|
|
145
|
+
return false;
|
|
146
|
+
break;
|
|
147
|
+
}
|
|
148
|
+
case "GeometryCollection": {
|
|
149
|
+
for (j = 0; j < geometry.geometries.length; j++) {
|
|
150
|
+
if (callback(
|
|
151
|
+
geometry.geometries[j],
|
|
152
|
+
featureIndex,
|
|
153
|
+
featureProperties,
|
|
154
|
+
featureBBox,
|
|
155
|
+
featureId
|
|
156
|
+
) === false)
|
|
157
|
+
return false;
|
|
158
|
+
}
|
|
159
|
+
break;
|
|
160
|
+
}
|
|
161
|
+
default:
|
|
162
|
+
throw new Error("Unknown Geometry Type");
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
featureIndex++;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
function flattenEach(geojson, callback) {
|
|
169
|
+
geomEach(geojson, function(geometry, featureIndex, properties, bbox, id) {
|
|
170
|
+
var type = geometry === null ? null : geometry.type;
|
|
171
|
+
switch (type) {
|
|
172
|
+
case null:
|
|
173
|
+
case "Point":
|
|
174
|
+
case "LineString":
|
|
175
|
+
case "Polygon":
|
|
176
|
+
if (callback(
|
|
177
|
+
feature(geometry, properties, { bbox, id }),
|
|
178
|
+
featureIndex,
|
|
179
|
+
0
|
|
180
|
+
) === false)
|
|
181
|
+
return false;
|
|
182
|
+
return;
|
|
183
|
+
}
|
|
184
|
+
var geomType;
|
|
185
|
+
switch (type) {
|
|
186
|
+
case "MultiPoint":
|
|
187
|
+
geomType = "Point";
|
|
188
|
+
break;
|
|
189
|
+
case "MultiLineString":
|
|
190
|
+
geomType = "LineString";
|
|
191
|
+
break;
|
|
192
|
+
case "MultiPolygon":
|
|
193
|
+
geomType = "Polygon";
|
|
194
|
+
break;
|
|
195
|
+
}
|
|
196
|
+
for (var multiFeatureIndex = 0; multiFeatureIndex < geometry.coordinates.length; multiFeatureIndex++) {
|
|
197
|
+
var coordinate = geometry.coordinates[multiFeatureIndex];
|
|
198
|
+
var geom = {
|
|
199
|
+
type: geomType,
|
|
200
|
+
coordinates: coordinate
|
|
201
|
+
};
|
|
202
|
+
if (callback(feature(geom, properties), featureIndex, multiFeatureIndex) === false)
|
|
203
|
+
return false;
|
|
204
|
+
}
|
|
205
|
+
});
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
export { coordEach, featureEach, flattenEach, geomEach };
|
|
209
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../../../../node_modules/@turf/meta/dist/esm/index.js"],"sourcesContent":["// index.js\nimport { feature, point, lineString, isObject } from \"@turf/helpers\";\nfunction coordEach(geojson, callback, excludeWrapCoord) {\n if (geojson === null) return;\n var j, k, l, geometry, stopG, coords, geometryMaybeCollection, wrapShrink = 0, coordIndex = 0, isGeometryCollection, type = geojson.type, isFeatureCollection = type === \"FeatureCollection\", isFeature = type === \"Feature\", stop = isFeatureCollection ? geojson.features.length : 1;\n for (var featureIndex = 0; featureIndex < stop; featureIndex++) {\n geometryMaybeCollection = isFeatureCollection ? geojson.features[featureIndex].geometry : isFeature ? geojson.geometry : geojson;\n isGeometryCollection = geometryMaybeCollection ? geometryMaybeCollection.type === \"GeometryCollection\" : false;\n stopG = isGeometryCollection ? geometryMaybeCollection.geometries.length : 1;\n for (var geomIndex = 0; geomIndex < stopG; geomIndex++) {\n var multiFeatureIndex = 0;\n var geometryIndex = 0;\n geometry = isGeometryCollection ? geometryMaybeCollection.geometries[geomIndex] : geometryMaybeCollection;\n if (geometry === null) continue;\n coords = geometry.coordinates;\n var geomType = geometry.type;\n wrapShrink = excludeWrapCoord && (geomType === \"Polygon\" || geomType === \"MultiPolygon\") ? 1 : 0;\n switch (geomType) {\n case null:\n break;\n case \"Point\":\n if (callback(\n coords,\n coordIndex,\n featureIndex,\n multiFeatureIndex,\n geometryIndex\n ) === false)\n return false;\n coordIndex++;\n multiFeatureIndex++;\n break;\n case \"LineString\":\n case \"MultiPoint\":\n for (j = 0; j < coords.length; j++) {\n if (callback(\n coords[j],\n coordIndex,\n featureIndex,\n multiFeatureIndex,\n geometryIndex\n ) === false)\n return false;\n coordIndex++;\n if (geomType === \"MultiPoint\") multiFeatureIndex++;\n }\n if (geomType === \"LineString\") multiFeatureIndex++;\n break;\n case \"Polygon\":\n case \"MultiLineString\":\n for (j = 0; j < coords.length; j++) {\n for (k = 0; k < coords[j].length - wrapShrink; k++) {\n if (callback(\n coords[j][k],\n coordIndex,\n featureIndex,\n multiFeatureIndex,\n geometryIndex\n ) === false)\n return false;\n coordIndex++;\n }\n if (geomType === \"MultiLineString\") multiFeatureIndex++;\n if (geomType === \"Polygon\") geometryIndex++;\n }\n if (geomType === \"Polygon\") multiFeatureIndex++;\n break;\n case \"MultiPolygon\":\n for (j = 0; j < coords.length; j++) {\n geometryIndex = 0;\n for (k = 0; k < coords[j].length; k++) {\n for (l = 0; l < coords[j][k].length - wrapShrink; l++) {\n if (callback(\n coords[j][k][l],\n coordIndex,\n featureIndex,\n multiFeatureIndex,\n geometryIndex\n ) === false)\n return false;\n coordIndex++;\n }\n geometryIndex++;\n }\n multiFeatureIndex++;\n }\n break;\n case \"GeometryCollection\":\n for (j = 0; j < geometry.geometries.length; j++)\n if (coordEach(geometry.geometries[j], callback, excludeWrapCoord) === false)\n return false;\n break;\n default:\n throw new Error(\"Unknown Geometry Type\");\n }\n }\n }\n}\nfunction coordReduce(geojson, callback, initialValue, excludeWrapCoord) {\n var previousValue = initialValue;\n coordEach(\n geojson,\n function(currentCoord, coordIndex, featureIndex, multiFeatureIndex, geometryIndex) {\n if (coordIndex === 0 && initialValue === void 0)\n previousValue = currentCoord;\n else\n previousValue = callback(\n previousValue,\n currentCoord,\n coordIndex,\n featureIndex,\n multiFeatureIndex,\n geometryIndex\n );\n },\n excludeWrapCoord\n );\n return previousValue;\n}\nfunction propEach(geojson, callback) {\n var i;\n switch (geojson.type) {\n case \"FeatureCollection\":\n for (i = 0; i < geojson.features.length; i++) {\n if (callback(geojson.features[i].properties, i) === false) break;\n }\n break;\n case \"Feature\":\n callback(geojson.properties, 0);\n break;\n }\n}\nfunction propReduce(geojson, callback, initialValue) {\n var previousValue = initialValue;\n propEach(geojson, function(currentProperties, featureIndex) {\n if (featureIndex === 0 && initialValue === void 0)\n previousValue = currentProperties;\n else\n previousValue = callback(previousValue, currentProperties, featureIndex);\n });\n return previousValue;\n}\nfunction featureEach(geojson, callback) {\n if (geojson.type === \"Feature\") {\n callback(geojson, 0);\n } else if (geojson.type === \"FeatureCollection\") {\n for (var i = 0; i < geojson.features.length; i++) {\n if (callback(geojson.features[i], i) === false) break;\n }\n }\n}\nfunction featureReduce(geojson, callback, initialValue) {\n var previousValue = initialValue;\n featureEach(geojson, function(currentFeature, featureIndex) {\n if (featureIndex === 0 && initialValue === void 0)\n previousValue = currentFeature;\n else previousValue = callback(previousValue, currentFeature, featureIndex);\n });\n return previousValue;\n}\nfunction coordAll(geojson) {\n var coords = [];\n coordEach(geojson, function(coord) {\n coords.push(coord);\n });\n return coords;\n}\nfunction geomEach(geojson, callback) {\n var i, j, g, geometry, stopG, geometryMaybeCollection, isGeometryCollection, featureProperties, featureBBox, featureId, featureIndex = 0, isFeatureCollection = geojson.type === \"FeatureCollection\", isFeature = geojson.type === \"Feature\", stop = isFeatureCollection ? geojson.features.length : 1;\n for (i = 0; i < stop; i++) {\n geometryMaybeCollection = isFeatureCollection ? geojson.features[i].geometry : isFeature ? geojson.geometry : geojson;\n featureProperties = isFeatureCollection ? geojson.features[i].properties : isFeature ? geojson.properties : {};\n featureBBox = isFeatureCollection ? geojson.features[i].bbox : isFeature ? geojson.bbox : void 0;\n featureId = isFeatureCollection ? geojson.features[i].id : isFeature ? geojson.id : void 0;\n isGeometryCollection = geometryMaybeCollection ? geometryMaybeCollection.type === \"GeometryCollection\" : false;\n stopG = isGeometryCollection ? geometryMaybeCollection.geometries.length : 1;\n for (g = 0; g < stopG; g++) {\n geometry = isGeometryCollection ? geometryMaybeCollection.geometries[g] : geometryMaybeCollection;\n if (geometry === null) {\n if (callback(\n null,\n featureIndex,\n featureProperties,\n featureBBox,\n featureId\n ) === false)\n return false;\n continue;\n }\n switch (geometry.type) {\n case \"Point\":\n case \"LineString\":\n case \"MultiPoint\":\n case \"Polygon\":\n case \"MultiLineString\":\n case \"MultiPolygon\": {\n if (callback(\n geometry,\n featureIndex,\n featureProperties,\n featureBBox,\n featureId\n ) === false)\n return false;\n break;\n }\n case \"GeometryCollection\": {\n for (j = 0; j < geometry.geometries.length; j++) {\n if (callback(\n geometry.geometries[j],\n featureIndex,\n featureProperties,\n featureBBox,\n featureId\n ) === false)\n return false;\n }\n break;\n }\n default:\n throw new Error(\"Unknown Geometry Type\");\n }\n }\n featureIndex++;\n }\n}\nfunction geomReduce(geojson, callback, initialValue) {\n var previousValue = initialValue;\n geomEach(\n geojson,\n function(currentGeometry, featureIndex, featureProperties, featureBBox, featureId) {\n if (featureIndex === 0 && initialValue === void 0)\n previousValue = currentGeometry;\n else\n previousValue = callback(\n previousValue,\n currentGeometry,\n featureIndex,\n featureProperties,\n featureBBox,\n featureId\n );\n }\n );\n return previousValue;\n}\nfunction flattenEach(geojson, callback) {\n geomEach(geojson, function(geometry, featureIndex, properties, bbox, id) {\n var type = geometry === null ? null : geometry.type;\n switch (type) {\n case null:\n case \"Point\":\n case \"LineString\":\n case \"Polygon\":\n if (callback(\n feature(geometry, properties, { bbox, id }),\n featureIndex,\n 0\n ) === false)\n return false;\n return;\n }\n var geomType;\n switch (type) {\n case \"MultiPoint\":\n geomType = \"Point\";\n break;\n case \"MultiLineString\":\n geomType = \"LineString\";\n break;\n case \"MultiPolygon\":\n geomType = \"Polygon\";\n break;\n }\n for (var multiFeatureIndex = 0; multiFeatureIndex < geometry.coordinates.length; multiFeatureIndex++) {\n var coordinate = geometry.coordinates[multiFeatureIndex];\n var geom = {\n type: geomType,\n coordinates: coordinate\n };\n if (callback(feature(geom, properties), featureIndex, multiFeatureIndex) === false)\n return false;\n }\n });\n}\nfunction flattenReduce(geojson, callback, initialValue) {\n var previousValue = initialValue;\n flattenEach(\n geojson,\n function(currentFeature, featureIndex, multiFeatureIndex) {\n if (featureIndex === 0 && multiFeatureIndex === 0 && initialValue === void 0)\n previousValue = currentFeature;\n else\n previousValue = callback(\n previousValue,\n currentFeature,\n featureIndex,\n multiFeatureIndex\n );\n }\n );\n return previousValue;\n}\nfunction segmentEach(geojson, callback) {\n flattenEach(geojson, function(feature2, featureIndex, multiFeatureIndex) {\n var segmentIndex = 0;\n if (!feature2.geometry) return;\n var type = feature2.geometry.type;\n if (type === \"Point\" || type === \"MultiPoint\") return;\n var previousCoords;\n var previousFeatureIndex = 0;\n var previousMultiIndex = 0;\n var prevGeomIndex = 0;\n if (coordEach(\n feature2,\n function(currentCoord, coordIndex, featureIndexCoord, multiPartIndexCoord, geometryIndex) {\n if (previousCoords === void 0 || featureIndex > previousFeatureIndex || multiPartIndexCoord > previousMultiIndex || geometryIndex > prevGeomIndex) {\n previousCoords = currentCoord;\n previousFeatureIndex = featureIndex;\n previousMultiIndex = multiPartIndexCoord;\n prevGeomIndex = geometryIndex;\n segmentIndex = 0;\n return;\n }\n var currentSegment = lineString(\n [previousCoords, currentCoord],\n feature2.properties\n );\n if (callback(\n currentSegment,\n featureIndex,\n multiFeatureIndex,\n geometryIndex,\n segmentIndex\n ) === false)\n return false;\n segmentIndex++;\n previousCoords = currentCoord;\n }\n ) === false)\n return false;\n });\n}\nfunction segmentReduce(geojson, callback, initialValue) {\n var previousValue = initialValue;\n var started = false;\n segmentEach(\n geojson,\n function(currentSegment, featureIndex, multiFeatureIndex, geometryIndex, segmentIndex) {\n if (started === false && initialValue === void 0)\n previousValue = currentSegment;\n else\n previousValue = callback(\n previousValue,\n currentSegment,\n featureIndex,\n multiFeatureIndex,\n geometryIndex,\n segmentIndex\n );\n started = true;\n }\n );\n return previousValue;\n}\nfunction lineEach(geojson, callback) {\n if (!geojson) throw new Error(\"geojson is required\");\n flattenEach(geojson, function(feature2, featureIndex, multiFeatureIndex) {\n if (feature2.geometry === null) return;\n var type = feature2.geometry.type;\n var coords = feature2.geometry.coordinates;\n switch (type) {\n case \"LineString\":\n if (callback(feature2, featureIndex, multiFeatureIndex, 0, 0) === false)\n return false;\n break;\n case \"Polygon\":\n for (var geometryIndex = 0; geometryIndex < coords.length; geometryIndex++) {\n if (callback(\n lineString(coords[geometryIndex], feature2.properties),\n featureIndex,\n multiFeatureIndex,\n geometryIndex\n ) === false)\n return false;\n }\n break;\n }\n });\n}\nfunction lineReduce(geojson, callback, initialValue) {\n var previousValue = initialValue;\n lineEach(\n geojson,\n function(currentLine, featureIndex, multiFeatureIndex, geometryIndex) {\n if (featureIndex === 0 && initialValue === void 0)\n previousValue = currentLine;\n else\n previousValue = callback(\n previousValue,\n currentLine,\n featureIndex,\n multiFeatureIndex,\n geometryIndex\n );\n }\n );\n return previousValue;\n}\nfunction findSegment(geojson, options) {\n options = options || {};\n if (!isObject(options)) throw new Error(\"options is invalid\");\n var featureIndex = options.featureIndex || 0;\n var multiFeatureIndex = options.multiFeatureIndex || 0;\n var geometryIndex = options.geometryIndex || 0;\n var segmentIndex = options.segmentIndex || 0;\n var properties = options.properties;\n var geometry;\n switch (geojson.type) {\n case \"FeatureCollection\":\n if (featureIndex < 0)\n featureIndex = geojson.features.length + featureIndex;\n properties = properties || geojson.features[featureIndex].properties;\n geometry = geojson.features[featureIndex].geometry;\n break;\n case \"Feature\":\n properties = properties || geojson.properties;\n geometry = geojson.geometry;\n break;\n case \"Point\":\n case \"MultiPoint\":\n return null;\n case \"LineString\":\n case \"Polygon\":\n case \"MultiLineString\":\n case \"MultiPolygon\":\n geometry = geojson;\n break;\n default:\n throw new Error(\"geojson is invalid\");\n }\n if (geometry === null) return null;\n var coords = geometry.coordinates;\n switch (geometry.type) {\n case \"Point\":\n case \"MultiPoint\":\n return null;\n case \"LineString\":\n if (segmentIndex < 0) segmentIndex = coords.length + segmentIndex - 1;\n return lineString(\n [coords[segmentIndex], coords[segmentIndex + 1]],\n properties,\n options\n );\n case \"Polygon\":\n if (geometryIndex < 0) geometryIndex = coords.length + geometryIndex;\n if (segmentIndex < 0)\n segmentIndex = coords[geometryIndex].length + segmentIndex - 1;\n return lineString(\n [\n coords[geometryIndex][segmentIndex],\n coords[geometryIndex][segmentIndex + 1]\n ],\n properties,\n options\n );\n case \"MultiLineString\":\n if (multiFeatureIndex < 0)\n multiFeatureIndex = coords.length + multiFeatureIndex;\n if (segmentIndex < 0)\n segmentIndex = coords[multiFeatureIndex].length + segmentIndex - 1;\n return lineString(\n [\n coords[multiFeatureIndex][segmentIndex],\n coords[multiFeatureIndex][segmentIndex + 1]\n ],\n properties,\n options\n );\n case \"MultiPolygon\":\n if (multiFeatureIndex < 0)\n multiFeatureIndex = coords.length + multiFeatureIndex;\n if (geometryIndex < 0)\n geometryIndex = coords[multiFeatureIndex].length + geometryIndex;\n if (segmentIndex < 0)\n segmentIndex = coords[multiFeatureIndex][geometryIndex].length - segmentIndex - 1;\n return lineString(\n [\n coords[multiFeatureIndex][geometryIndex][segmentIndex],\n coords[multiFeatureIndex][geometryIndex][segmentIndex + 1]\n ],\n properties,\n options\n );\n }\n throw new Error(\"geojson is invalid\");\n}\nfunction findPoint(geojson, options) {\n options = options || {};\n if (!isObject(options)) throw new Error(\"options is invalid\");\n var featureIndex = options.featureIndex || 0;\n var multiFeatureIndex = options.multiFeatureIndex || 0;\n var geometryIndex = options.geometryIndex || 0;\n var coordIndex = options.coordIndex || 0;\n var properties = options.properties;\n var geometry;\n switch (geojson.type) {\n case \"FeatureCollection\":\n if (featureIndex < 0)\n featureIndex = geojson.features.length + featureIndex;\n properties = properties || geojson.features[featureIndex].properties;\n geometry = geojson.features[featureIndex].geometry;\n break;\n case \"Feature\":\n properties = properties || geojson.properties;\n geometry = geojson.geometry;\n break;\n case \"Point\":\n case \"MultiPoint\":\n return null;\n case \"LineString\":\n case \"Polygon\":\n case \"MultiLineString\":\n case \"MultiPolygon\":\n geometry = geojson;\n break;\n default:\n throw new Error(\"geojson is invalid\");\n }\n if (geometry === null) return null;\n var coords = geometry.coordinates;\n switch (geometry.type) {\n case \"Point\":\n return point(coords, properties, options);\n case \"MultiPoint\":\n if (multiFeatureIndex < 0)\n multiFeatureIndex = coords.length + multiFeatureIndex;\n return point(coords[multiFeatureIndex], properties, options);\n case \"LineString\":\n if (coordIndex < 0) coordIndex = coords.length + coordIndex;\n return point(coords[coordIndex], properties, options);\n case \"Polygon\":\n if (geometryIndex < 0) geometryIndex = coords.length + geometryIndex;\n if (coordIndex < 0)\n coordIndex = coords[geometryIndex].length + coordIndex;\n return point(coords[geometryIndex][coordIndex], properties, options);\n case \"MultiLineString\":\n if (multiFeatureIndex < 0)\n multiFeatureIndex = coords.length + multiFeatureIndex;\n if (coordIndex < 0)\n coordIndex = coords[multiFeatureIndex].length + coordIndex;\n return point(coords[multiFeatureIndex][coordIndex], properties, options);\n case \"MultiPolygon\":\n if (multiFeatureIndex < 0)\n multiFeatureIndex = coords.length + multiFeatureIndex;\n if (geometryIndex < 0)\n geometryIndex = coords[multiFeatureIndex].length + geometryIndex;\n if (coordIndex < 0)\n coordIndex = coords[multiFeatureIndex][geometryIndex].length - coordIndex;\n return point(\n coords[multiFeatureIndex][geometryIndex][coordIndex],\n properties,\n options\n );\n }\n throw new Error(\"geojson is invalid\");\n}\nexport {\n coordAll,\n coordEach,\n coordReduce,\n featureEach,\n featureReduce,\n findPoint,\n findSegment,\n flattenEach,\n flattenReduce,\n geomEach,\n geomReduce,\n lineEach,\n lineReduce,\n propEach,\n propReduce,\n segmentEach,\n segmentReduce\n};\n//# sourceMappingURL=index.js.map"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { featureCollection, multiLineString, lineString } from '../../../helpers/dist/esm/index.js';
|
|
2
|
+
import { getGeom } from '../../../invariant/dist/esm/index.js';
|
|
3
|
+
|
|
4
|
+
// index.ts
|
|
5
|
+
function polygonToLine(poly, options = {}) {
|
|
6
|
+
const geom = getGeom(poly);
|
|
7
|
+
if (!options.properties && poly.type === "Feature") {
|
|
8
|
+
options.properties = poly.properties;
|
|
9
|
+
}
|
|
10
|
+
switch (geom.type) {
|
|
11
|
+
case "Polygon":
|
|
12
|
+
return singlePolygonToLine(geom, options);
|
|
13
|
+
case "MultiPolygon":
|
|
14
|
+
return multiPolygonToLine(geom, options);
|
|
15
|
+
default:
|
|
16
|
+
throw new Error("invalid poly");
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
function singlePolygonToLine(poly, options = {}) {
|
|
20
|
+
const geom = getGeom(poly);
|
|
21
|
+
const coords = geom.coordinates;
|
|
22
|
+
const properties = options.properties ? options.properties : poly.type === "Feature" ? poly.properties : {};
|
|
23
|
+
return coordsToLine(coords, properties);
|
|
24
|
+
}
|
|
25
|
+
function multiPolygonToLine(multiPoly, options = {}) {
|
|
26
|
+
const geom = getGeom(multiPoly);
|
|
27
|
+
const coords = geom.coordinates;
|
|
28
|
+
const properties = options.properties ? options.properties : multiPoly.type === "Feature" ? multiPoly.properties : {};
|
|
29
|
+
const lines = [];
|
|
30
|
+
coords.forEach((coord) => {
|
|
31
|
+
lines.push(coordsToLine(coord, properties));
|
|
32
|
+
});
|
|
33
|
+
return featureCollection(lines);
|
|
34
|
+
}
|
|
35
|
+
function coordsToLine(coords, properties) {
|
|
36
|
+
if (coords.length > 1) {
|
|
37
|
+
return multiLineString(coords, properties);
|
|
38
|
+
}
|
|
39
|
+
return lineString(coords[0], properties);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
export { coordsToLine, multiPolygonToLine, polygonToLine, singlePolygonToLine };
|
|
43
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../../../../node_modules/@turf/polygon-to-line/dist/esm/index.js"],"sourcesContent":["// index.ts\nimport { featureCollection, lineString, multiLineString } from \"@turf/helpers\";\nimport { getGeom } from \"@turf/invariant\";\nfunction polygonToLine(poly, options = {}) {\n const geom = getGeom(poly);\n if (!options.properties && poly.type === \"Feature\") {\n options.properties = poly.properties;\n }\n switch (geom.type) {\n case \"Polygon\":\n return singlePolygonToLine(geom, options);\n case \"MultiPolygon\":\n return multiPolygonToLine(geom, options);\n default:\n throw new Error(\"invalid poly\");\n }\n}\nfunction singlePolygonToLine(poly, options = {}) {\n const geom = getGeom(poly);\n const coords = geom.coordinates;\n const properties = options.properties ? options.properties : poly.type === \"Feature\" ? poly.properties : {};\n return coordsToLine(coords, properties);\n}\nfunction multiPolygonToLine(multiPoly, options = {}) {\n const geom = getGeom(multiPoly);\n const coords = geom.coordinates;\n const properties = options.properties ? options.properties : multiPoly.type === \"Feature\" ? multiPoly.properties : {};\n const lines = [];\n coords.forEach((coord) => {\n lines.push(coordsToLine(coord, properties));\n });\n return featureCollection(lines);\n}\nfunction coordsToLine(coords, properties) {\n if (coords.length > 1) {\n return multiLineString(coords, properties);\n }\n return lineString(coords[0], properties);\n}\nvar turf_polygon_to_line_default = polygonToLine;\nexport {\n coordsToLine,\n turf_polygon_to_line_default as default,\n multiPolygonToLine,\n polygonToLine,\n singlePolygonToLine\n};\n//# sourceMappingURL=index.js.map"],"names":[],"mappings":";;;AAAA;AAGA,SAAS,aAAa,CAAC,IAAI,EAAE,OAAO,GAAG,EAAE,EAAE;AAC3C,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;AAC5B,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE;AACtD,IAAI,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU;AACxC;AACA,EAAE,QAAQ,IAAI,CAAC,IAAI;AACnB,IAAI,KAAK,SAAS;AAClB,MAAM,OAAO,mBAAmB,CAAC,IAAI,EAAE,OAAO,CAAC;AAC/C,IAAI,KAAK,cAAc;AACvB,MAAM,OAAO,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC;AAC9C,IAAI;AACJ,MAAM,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC;AACrC;AACA;AACA,SAAS,mBAAmB,CAAC,IAAI,EAAE,OAAO,GAAG,EAAE,EAAE;AACjD,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;AAC5B,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW;AACjC,EAAE,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS,GAAG,IAAI,CAAC,UAAU,GAAG,EAAE;AAC7G,EAAE,OAAO,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC;AACzC;AACA,SAAS,kBAAkB,CAAC,SAAS,EAAE,OAAO,GAAG,EAAE,EAAE;AACrD,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC;AACjC,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW;AACjC,EAAE,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,IAAI,KAAK,SAAS,GAAG,SAAS,CAAC,UAAU,GAAG,EAAE;AACvH,EAAE,MAAM,KAAK,GAAG,EAAE;AAClB,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,KAAK;AAC5B,IAAI,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;AAC/C,GAAG,CAAC;AACJ,EAAE,OAAO,iBAAiB,CAAC,KAAK,CAAC;AACjC;AACA,SAAS,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE;AAC1C,EAAE,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;AACzB,IAAI,OAAO,eAAe,CAAC,MAAM,EAAE,UAAU,CAAC;AAC9C;AACA,EAAE,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC;AAC1C;;;;","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { orient2d } from '../../node_modules/robust-predicates/esm/orient2d.js';
|
|
2
|
+
|
|
3
|
+
function pointInPolygon(p, polygon) {
|
|
4
|
+
var i;
|
|
5
|
+
var ii;
|
|
6
|
+
var k = 0;
|
|
7
|
+
var f;
|
|
8
|
+
var u1;
|
|
9
|
+
var v1;
|
|
10
|
+
var u2;
|
|
11
|
+
var v2;
|
|
12
|
+
var currentP;
|
|
13
|
+
var nextP;
|
|
14
|
+
|
|
15
|
+
var x = p[0];
|
|
16
|
+
var y = p[1];
|
|
17
|
+
|
|
18
|
+
var numContours = polygon.length;
|
|
19
|
+
for (i = 0; i < numContours; i++) {
|
|
20
|
+
ii = 0;
|
|
21
|
+
var contour = polygon[i];
|
|
22
|
+
var contourLen = contour.length - 1;
|
|
23
|
+
|
|
24
|
+
currentP = contour[0];
|
|
25
|
+
if (currentP[0] !== contour[contourLen][0] &&
|
|
26
|
+
currentP[1] !== contour[contourLen][1]) {
|
|
27
|
+
throw new Error('First and last coordinates in a ring must be the same')
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
u1 = currentP[0] - x;
|
|
31
|
+
v1 = currentP[1] - y;
|
|
32
|
+
|
|
33
|
+
for (ii; ii < contourLen; ii++) {
|
|
34
|
+
nextP = contour[ii + 1];
|
|
35
|
+
|
|
36
|
+
u2 = nextP[0] - x;
|
|
37
|
+
v2 = nextP[1] - y;
|
|
38
|
+
|
|
39
|
+
if (v1 === 0 && v2 === 0) {
|
|
40
|
+
if ((u2 <= 0 && u1 >= 0) || (u1 <= 0 && u2 >= 0)) { return 0 }
|
|
41
|
+
} else if ((v2 >= 0 && v1 <= 0) || (v2 <= 0 && v1 >= 0)) {
|
|
42
|
+
f = orient2d(u1, u2, v1, v2, 0, 0);
|
|
43
|
+
if (f === 0) { return 0 }
|
|
44
|
+
if ((f > 0 && v2 > 0 && v1 <= 0) || (f < 0 && v2 <= 0 && v1 > 0)) { k++; }
|
|
45
|
+
}
|
|
46
|
+
currentP = nextP;
|
|
47
|
+
v1 = v2;
|
|
48
|
+
u1 = u2;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
if (k % 2 === 0) { return false }
|
|
53
|
+
return true
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
export { pointInPolygon as default };
|
|
57
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../../../node_modules/point-in-polygon-hao/dist/esm/index.js"],"sourcesContent":["import { orient2d } from 'robust-predicates';\n\nfunction pointInPolygon(p, polygon) {\n var i;\n var ii;\n var k = 0;\n var f;\n var u1;\n var v1;\n var u2;\n var v2;\n var currentP;\n var nextP;\n\n var x = p[0];\n var y = p[1];\n\n var numContours = polygon.length;\n for (i = 0; i < numContours; i++) {\n ii = 0;\n var contour = polygon[i];\n var contourLen = contour.length - 1;\n\n currentP = contour[0];\n if (currentP[0] !== contour[contourLen][0] &&\n currentP[1] !== contour[contourLen][1]) {\n throw new Error('First and last coordinates in a ring must be the same')\n }\n\n u1 = currentP[0] - x;\n v1 = currentP[1] - y;\n\n for (ii; ii < contourLen; ii++) {\n nextP = contour[ii + 1];\n\n u2 = nextP[0] - x;\n v2 = nextP[1] - y;\n\n if (v1 === 0 && v2 === 0) {\n if ((u2 <= 0 && u1 >= 0) || (u1 <= 0 && u2 >= 0)) { return 0 }\n } else if ((v2 >= 0 && v1 <= 0) || (v2 <= 0 && v1 >= 0)) {\n f = orient2d(u1, u2, v1, v2, 0, 0);\n if (f === 0) { return 0 }\n if ((f > 0 && v2 > 0 && v1 <= 0) || (f < 0 && v2 <= 0 && v1 > 0)) { k++; }\n }\n currentP = nextP;\n v1 = v2;\n u1 = u2;\n }\n }\n\n if (k % 2 === 0) { return false }\n return true\n}\n\nexport { pointInPolygon as default };\n"],"names":[],"mappings":";;AAEA,SAAS,cAAc,CAAC,CAAC,EAAE,OAAO,EAAE;AACpC,IAAI,IAAI,CAAC;AACT,IAAI,IAAI,EAAE;AACV,IAAI,IAAI,CAAC,GAAG,CAAC;AACb,IAAI,IAAI,CAAC;AACT,IAAI,IAAI,EAAE;AACV,IAAI,IAAI,EAAE;AACV,IAAI,IAAI,EAAE;AACV,IAAI,IAAI,EAAE;AACV,IAAI,IAAI,QAAQ;AAChB,IAAI,IAAI,KAAK;;AAEb,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAChB,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;;AAEhB,IAAI,IAAI,WAAW,GAAG,OAAO,CAAC,MAAM;AACpC,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE;AACtC,QAAQ,EAAE,GAAG,CAAC;AACd,QAAQ,IAAI,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;AAChC,QAAQ,IAAI,UAAU,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC;;AAE3C,QAAQ,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC;AAC7B,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;AAClD,YAAY,QAAQ,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE;AACpD,YAAY,MAAM,IAAI,KAAK,CAAC,uDAAuD;AACnF;;AAEA,QAAQ,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC;AAC5B,QAAQ,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC;;AAE5B,QAAQ,KAAK,EAAE,EAAE,EAAE,GAAG,UAAU,EAAE,EAAE,EAAE,EAAE;AACxC,YAAY,KAAK,GAAG,OAAO,CAAC,EAAE,GAAG,CAAC,CAAC;;AAEnC,YAAY,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC;AAC7B,YAAY,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC;;AAE7B,YAAY,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE;AACtC,gBAAgB,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC;AAC5E,aAAa,MAAM,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE;AACrE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;AAClD,gBAAgB,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,OAAO,CAAC;AACvC,gBAAgB,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;AACxF;AACA,YAAY,QAAQ,GAAG,KAAK;AAC5B,YAAY,EAAE,GAAG,EAAE;AACnB,YAAY,EAAE,GAAG,EAAE;AACnB;AACA;;AAEA,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,OAAO,KAAK;AACnC,IAAI,OAAO;AACX;;;;","x_google_ignoreList":[0]}
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
import { epsilon, vec, estimate, resulterrbound, splitter, sum } from './util.js';
|
|
2
|
+
|
|
3
|
+
const ccwerrboundA = (3 + 16 * epsilon) * epsilon;
|
|
4
|
+
const ccwerrboundB = (2 + 12 * epsilon) * epsilon;
|
|
5
|
+
const ccwerrboundC = (9 + 64 * epsilon) * epsilon * epsilon;
|
|
6
|
+
|
|
7
|
+
const B = vec(4);
|
|
8
|
+
const C1 = vec(8);
|
|
9
|
+
const C2 = vec(12);
|
|
10
|
+
const D = vec(16);
|
|
11
|
+
const u = vec(4);
|
|
12
|
+
|
|
13
|
+
function orient2dadapt(ax, ay, bx, by, cx, cy, detsum) {
|
|
14
|
+
let acxtail, acytail, bcxtail, bcytail;
|
|
15
|
+
let bvirt, c, ahi, alo, bhi, blo, _i, _j, _0, s1, s0, t1, t0, u3;
|
|
16
|
+
|
|
17
|
+
const acx = ax - cx;
|
|
18
|
+
const bcx = bx - cx;
|
|
19
|
+
const acy = ay - cy;
|
|
20
|
+
const bcy = by - cy;
|
|
21
|
+
|
|
22
|
+
s1 = acx * bcy;
|
|
23
|
+
c = splitter * acx;
|
|
24
|
+
ahi = c - (c - acx);
|
|
25
|
+
alo = acx - ahi;
|
|
26
|
+
c = splitter * bcy;
|
|
27
|
+
bhi = c - (c - bcy);
|
|
28
|
+
blo = bcy - bhi;
|
|
29
|
+
s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);
|
|
30
|
+
t1 = acy * bcx;
|
|
31
|
+
c = splitter * acy;
|
|
32
|
+
ahi = c - (c - acy);
|
|
33
|
+
alo = acy - ahi;
|
|
34
|
+
c = splitter * bcx;
|
|
35
|
+
bhi = c - (c - bcx);
|
|
36
|
+
blo = bcx - bhi;
|
|
37
|
+
t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);
|
|
38
|
+
_i = s0 - t0;
|
|
39
|
+
bvirt = s0 - _i;
|
|
40
|
+
B[0] = s0 - (_i + bvirt) + (bvirt - t0);
|
|
41
|
+
_j = s1 + _i;
|
|
42
|
+
bvirt = _j - s1;
|
|
43
|
+
_0 = s1 - (_j - bvirt) + (_i - bvirt);
|
|
44
|
+
_i = _0 - t1;
|
|
45
|
+
bvirt = _0 - _i;
|
|
46
|
+
B[1] = _0 - (_i + bvirt) + (bvirt - t1);
|
|
47
|
+
u3 = _j + _i;
|
|
48
|
+
bvirt = u3 - _j;
|
|
49
|
+
B[2] = _j - (u3 - bvirt) + (_i - bvirt);
|
|
50
|
+
B[3] = u3;
|
|
51
|
+
|
|
52
|
+
let det = estimate(4, B);
|
|
53
|
+
let errbound = ccwerrboundB * detsum;
|
|
54
|
+
if (det >= errbound || -det >= errbound) {
|
|
55
|
+
return det;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
bvirt = ax - acx;
|
|
59
|
+
acxtail = ax - (acx + bvirt) + (bvirt - cx);
|
|
60
|
+
bvirt = bx - bcx;
|
|
61
|
+
bcxtail = bx - (bcx + bvirt) + (bvirt - cx);
|
|
62
|
+
bvirt = ay - acy;
|
|
63
|
+
acytail = ay - (acy + bvirt) + (bvirt - cy);
|
|
64
|
+
bvirt = by - bcy;
|
|
65
|
+
bcytail = by - (bcy + bvirt) + (bvirt - cy);
|
|
66
|
+
|
|
67
|
+
if (acxtail === 0 && acytail === 0 && bcxtail === 0 && bcytail === 0) {
|
|
68
|
+
return det;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
errbound = ccwerrboundC * detsum + resulterrbound * Math.abs(det);
|
|
72
|
+
det += (acx * bcytail + bcy * acxtail) - (acy * bcxtail + bcx * acytail);
|
|
73
|
+
if (det >= errbound || -det >= errbound) return det;
|
|
74
|
+
|
|
75
|
+
s1 = acxtail * bcy;
|
|
76
|
+
c = splitter * acxtail;
|
|
77
|
+
ahi = c - (c - acxtail);
|
|
78
|
+
alo = acxtail - ahi;
|
|
79
|
+
c = splitter * bcy;
|
|
80
|
+
bhi = c - (c - bcy);
|
|
81
|
+
blo = bcy - bhi;
|
|
82
|
+
s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);
|
|
83
|
+
t1 = acytail * bcx;
|
|
84
|
+
c = splitter * acytail;
|
|
85
|
+
ahi = c - (c - acytail);
|
|
86
|
+
alo = acytail - ahi;
|
|
87
|
+
c = splitter * bcx;
|
|
88
|
+
bhi = c - (c - bcx);
|
|
89
|
+
blo = bcx - bhi;
|
|
90
|
+
t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);
|
|
91
|
+
_i = s0 - t0;
|
|
92
|
+
bvirt = s0 - _i;
|
|
93
|
+
u[0] = s0 - (_i + bvirt) + (bvirt - t0);
|
|
94
|
+
_j = s1 + _i;
|
|
95
|
+
bvirt = _j - s1;
|
|
96
|
+
_0 = s1 - (_j - bvirt) + (_i - bvirt);
|
|
97
|
+
_i = _0 - t1;
|
|
98
|
+
bvirt = _0 - _i;
|
|
99
|
+
u[1] = _0 - (_i + bvirt) + (bvirt - t1);
|
|
100
|
+
u3 = _j + _i;
|
|
101
|
+
bvirt = u3 - _j;
|
|
102
|
+
u[2] = _j - (u3 - bvirt) + (_i - bvirt);
|
|
103
|
+
u[3] = u3;
|
|
104
|
+
const C1len = sum(4, B, 4, u, C1);
|
|
105
|
+
|
|
106
|
+
s1 = acx * bcytail;
|
|
107
|
+
c = splitter * acx;
|
|
108
|
+
ahi = c - (c - acx);
|
|
109
|
+
alo = acx - ahi;
|
|
110
|
+
c = splitter * bcytail;
|
|
111
|
+
bhi = c - (c - bcytail);
|
|
112
|
+
blo = bcytail - bhi;
|
|
113
|
+
s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);
|
|
114
|
+
t1 = acy * bcxtail;
|
|
115
|
+
c = splitter * acy;
|
|
116
|
+
ahi = c - (c - acy);
|
|
117
|
+
alo = acy - ahi;
|
|
118
|
+
c = splitter * bcxtail;
|
|
119
|
+
bhi = c - (c - bcxtail);
|
|
120
|
+
blo = bcxtail - bhi;
|
|
121
|
+
t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);
|
|
122
|
+
_i = s0 - t0;
|
|
123
|
+
bvirt = s0 - _i;
|
|
124
|
+
u[0] = s0 - (_i + bvirt) + (bvirt - t0);
|
|
125
|
+
_j = s1 + _i;
|
|
126
|
+
bvirt = _j - s1;
|
|
127
|
+
_0 = s1 - (_j - bvirt) + (_i - bvirt);
|
|
128
|
+
_i = _0 - t1;
|
|
129
|
+
bvirt = _0 - _i;
|
|
130
|
+
u[1] = _0 - (_i + bvirt) + (bvirt - t1);
|
|
131
|
+
u3 = _j + _i;
|
|
132
|
+
bvirt = u3 - _j;
|
|
133
|
+
u[2] = _j - (u3 - bvirt) + (_i - bvirt);
|
|
134
|
+
u[3] = u3;
|
|
135
|
+
const C2len = sum(C1len, C1, 4, u, C2);
|
|
136
|
+
|
|
137
|
+
s1 = acxtail * bcytail;
|
|
138
|
+
c = splitter * acxtail;
|
|
139
|
+
ahi = c - (c - acxtail);
|
|
140
|
+
alo = acxtail - ahi;
|
|
141
|
+
c = splitter * bcytail;
|
|
142
|
+
bhi = c - (c - bcytail);
|
|
143
|
+
blo = bcytail - bhi;
|
|
144
|
+
s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);
|
|
145
|
+
t1 = acytail * bcxtail;
|
|
146
|
+
c = splitter * acytail;
|
|
147
|
+
ahi = c - (c - acytail);
|
|
148
|
+
alo = acytail - ahi;
|
|
149
|
+
c = splitter * bcxtail;
|
|
150
|
+
bhi = c - (c - bcxtail);
|
|
151
|
+
blo = bcxtail - bhi;
|
|
152
|
+
t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);
|
|
153
|
+
_i = s0 - t0;
|
|
154
|
+
bvirt = s0 - _i;
|
|
155
|
+
u[0] = s0 - (_i + bvirt) + (bvirt - t0);
|
|
156
|
+
_j = s1 + _i;
|
|
157
|
+
bvirt = _j - s1;
|
|
158
|
+
_0 = s1 - (_j - bvirt) + (_i - bvirt);
|
|
159
|
+
_i = _0 - t1;
|
|
160
|
+
bvirt = _0 - _i;
|
|
161
|
+
u[1] = _0 - (_i + bvirt) + (bvirt - t1);
|
|
162
|
+
u3 = _j + _i;
|
|
163
|
+
bvirt = u3 - _j;
|
|
164
|
+
u[2] = _j - (u3 - bvirt) + (_i - bvirt);
|
|
165
|
+
u[3] = u3;
|
|
166
|
+
const Dlen = sum(C2len, C2, 4, u, D);
|
|
167
|
+
|
|
168
|
+
return D[Dlen - 1];
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
function orient2d(ax, ay, bx, by, cx, cy) {
|
|
172
|
+
const detleft = (ay - cy) * (bx - cx);
|
|
173
|
+
const detright = (ax - cx) * (by - cy);
|
|
174
|
+
const det = detleft - detright;
|
|
175
|
+
|
|
176
|
+
const detsum = Math.abs(detleft + detright);
|
|
177
|
+
if (Math.abs(det) >= ccwerrboundA * detsum) return det;
|
|
178
|
+
|
|
179
|
+
return -orient2dadapt(ax, ay, bx, by, cx, cy, detsum);
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
export { orient2d };
|
|
183
|
+
//# sourceMappingURL=orient2d.js.map
|
package/dist/node_modules/point-in-polygon-hao/node_modules/robust-predicates/esm/orient2d.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orient2d.js","sources":["../../../../../../../../node_modules/point-in-polygon-hao/node_modules/robust-predicates/esm/orient2d.js"],"sourcesContent":["import {epsilon, splitter, resulterrbound, estimate, vec, sum} from './util.js';\n\nconst ccwerrboundA = (3 + 16 * epsilon) * epsilon;\nconst ccwerrboundB = (2 + 12 * epsilon) * epsilon;\nconst ccwerrboundC = (9 + 64 * epsilon) * epsilon * epsilon;\n\nconst B = vec(4);\nconst C1 = vec(8);\nconst C2 = vec(12);\nconst D = vec(16);\nconst u = vec(4);\n\nfunction orient2dadapt(ax, ay, bx, by, cx, cy, detsum) {\n let acxtail, acytail, bcxtail, bcytail;\n let bvirt, c, ahi, alo, bhi, blo, _i, _j, _0, s1, s0, t1, t0, u3;\n\n const acx = ax - cx;\n const bcx = bx - cx;\n const acy = ay - cy;\n const bcy = by - cy;\n\n s1 = acx * bcy;\n c = splitter * acx;\n ahi = c - (c - acx);\n alo = acx - ahi;\n c = splitter * bcy;\n bhi = c - (c - bcy);\n blo = bcy - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = acy * bcx;\n c = splitter * acy;\n ahi = c - (c - acy);\n alo = acy - ahi;\n c = splitter * bcx;\n bhi = c - (c - bcx);\n blo = bcx - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n B[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n B[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n B[2] = _j - (u3 - bvirt) + (_i - bvirt);\n B[3] = u3;\n\n let det = estimate(4, B);\n let errbound = ccwerrboundB * detsum;\n if (det >= errbound || -det >= errbound) {\n return det;\n }\n\n bvirt = ax - acx;\n acxtail = ax - (acx + bvirt) + (bvirt - cx);\n bvirt = bx - bcx;\n bcxtail = bx - (bcx + bvirt) + (bvirt - cx);\n bvirt = ay - acy;\n acytail = ay - (acy + bvirt) + (bvirt - cy);\n bvirt = by - bcy;\n bcytail = by - (bcy + bvirt) + (bvirt - cy);\n\n if (acxtail === 0 && acytail === 0 && bcxtail === 0 && bcytail === 0) {\n return det;\n }\n\n errbound = ccwerrboundC * detsum + resulterrbound * Math.abs(det);\n det += (acx * bcytail + bcy * acxtail) - (acy * bcxtail + bcx * acytail);\n if (det >= errbound || -det >= errbound) return det;\n\n s1 = acxtail * bcy;\n c = splitter * acxtail;\n ahi = c - (c - acxtail);\n alo = acxtail - ahi;\n c = splitter * bcy;\n bhi = c - (c - bcy);\n blo = bcy - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = acytail * bcx;\n c = splitter * acytail;\n ahi = c - (c - acytail);\n alo = acytail - ahi;\n c = splitter * bcx;\n bhi = c - (c - bcx);\n blo = bcx - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n u[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n u[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n u[2] = _j - (u3 - bvirt) + (_i - bvirt);\n u[3] = u3;\n const C1len = sum(4, B, 4, u, C1);\n\n s1 = acx * bcytail;\n c = splitter * acx;\n ahi = c - (c - acx);\n alo = acx - ahi;\n c = splitter * bcytail;\n bhi = c - (c - bcytail);\n blo = bcytail - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = acy * bcxtail;\n c = splitter * acy;\n ahi = c - (c - acy);\n alo = acy - ahi;\n c = splitter * bcxtail;\n bhi = c - (c - bcxtail);\n blo = bcxtail - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n u[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n u[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n u[2] = _j - (u3 - bvirt) + (_i - bvirt);\n u[3] = u3;\n const C2len = sum(C1len, C1, 4, u, C2);\n\n s1 = acxtail * bcytail;\n c = splitter * acxtail;\n ahi = c - (c - acxtail);\n alo = acxtail - ahi;\n c = splitter * bcytail;\n bhi = c - (c - bcytail);\n blo = bcytail - bhi;\n s0 = alo * blo - (s1 - ahi * bhi - alo * bhi - ahi * blo);\n t1 = acytail * bcxtail;\n c = splitter * acytail;\n ahi = c - (c - acytail);\n alo = acytail - ahi;\n c = splitter * bcxtail;\n bhi = c - (c - bcxtail);\n blo = bcxtail - bhi;\n t0 = alo * blo - (t1 - ahi * bhi - alo * bhi - ahi * blo);\n _i = s0 - t0;\n bvirt = s0 - _i;\n u[0] = s0 - (_i + bvirt) + (bvirt - t0);\n _j = s1 + _i;\n bvirt = _j - s1;\n _0 = s1 - (_j - bvirt) + (_i - bvirt);\n _i = _0 - t1;\n bvirt = _0 - _i;\n u[1] = _0 - (_i + bvirt) + (bvirt - t1);\n u3 = _j + _i;\n bvirt = u3 - _j;\n u[2] = _j - (u3 - bvirt) + (_i - bvirt);\n u[3] = u3;\n const Dlen = sum(C2len, C2, 4, u, D);\n\n return D[Dlen - 1];\n}\n\nexport function orient2d(ax, ay, bx, by, cx, cy) {\n const detleft = (ay - cy) * (bx - cx);\n const detright = (ax - cx) * (by - cy);\n const det = detleft - detright;\n\n const detsum = Math.abs(detleft + detright);\n if (Math.abs(det) >= ccwerrboundA * detsum) return det;\n\n return -orient2dadapt(ax, ay, bx, by, cx, cy, detsum);\n}\n\nexport function orient2dfast(ax, ay, bx, by, cx, cy) {\n return (ay - cy) * (bx - cx) - (ax - cx) * (by - cy);\n}\n"],"names":[],"mappings":"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","x_google_ignoreList":[0]}
|