- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
将 turf.intersect 与特定多边形一起使用时,出现以下错误:“TopologyException”“发现 LINESTRING(-0.140733 51.505327、-0.141097 51.505689)和 LINESTRING(-0.141136 51.505674、-0.141068 51.5057)之间的非节点交集”
这是导致问题的点所在的多边形:
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"properties": {},
"geometry": {
"type": "Polygon",
"coordinates": [
[
[
-0.144414,
51.5057787
],
[
-0.1444,
51.5057669
],
[
-0.1444174,
51.5057565
],
[
-0.1444375,
51.5057437
],
[
-0.1444486,
51.5057591
],
[
-0.1448395,
51.5055465
],
[
-0.1456195,
51.5051519
],
[
-0.1461211,
51.5048921
],
[
-0.1467341,
51.5045993
],
[
-0.1472694,
51.5042539
],
[
-0.147728,
51.5039184
],
[
-0.1485316,
51.5035408
],
[
-0.1485702,
51.5035234
],
[
-0.1488964,
51.503376
],
[
-0.1489081,
51.5033859
],
[
-0.1491678,
51.503267
],
[
-0.1491573,
51.5032582
],
[
-0.1494585,
51.5031342
],
[
-0.1495505,
51.5031388
],
[
-0.1495754,
51.503085
],
[
-0.1496124,
51.5026853
],
[
-0.1495618,
51.5026316
],
[
-0.1495053,
51.5025839
],
[
-0.1490356,
51.5025596
],
[
-0.1480816,
51.5025194
],
[
-0.1464951,
51.5024587
],
[
-0.1453418,
51.5023882
],
[
-0.1444299,
51.5023513
],
[
-0.1424233,
51.502272
],
[
-0.1420358,
51.5022744
],
[
-0.1416246,
51.5022811
],
[
-0.1414344,
51.5022758
],
[
-0.14113,
51.5023094
],
[
-0.1409441,
51.50233
],
[
-0.1412107,
51.5026049
],
[
-0.1407386,
51.5026799
],
[
-0.1402814,
51.5026536
],
[
-0.1398146,
51.5025228
],
[
-0.1396726,
51.5024475
],
[
-0.1395941,
51.5023923
],
[
-0.1394956,
51.5024312
],
[
-0.1393765,
51.5024829
],
[
-0.1388305,
51.502698
],
[
-0.1387333,
51.5027403
],
[
-0.1387835,
51.5027906
],
[
-0.1392711,
51.5032406
],
[
-0.139465,
51.503466
],
[
-0.1399479,
51.5039078
],
[
-0.1403315,
51.504302
],
[
-0.1407059,
51.5046814
],
[
-0.1402579,
51.5048283
],
[
-0.1407332,
51.5053265
],
[
-0.1410967,
51.5056887
],
[
-0.1410841,
51.5056711
],
[
-0.1411158,
51.5056574
],
[
-0.1411356,
51.5056744
],
[
-0.141068,
51.5057001
],
[
-0.1411549,
51.5058139
],
[
-0.1412316,
51.5057886
],
[
-0.1412437,
51.5058054
],
[
-0.1411693,
51.5058326
],
[
-0.1411811,
51.5058428
],
[
-0.1412021,
51.5058461
],
[
-0.1412326,
51.5058618
],
[
-0.1412584,
51.5058575
],
[
-0.1413349,
51.5059475
],
[
-0.1413677,
51.5059833
],
[
-0.1413704,
51.5060066
],
[
-0.1413538,
51.506016
],
[
-0.1413494,
51.5060451
],
[
-0.1414301,
51.5061301
],
[
-0.1414221,
51.5061562
],
[
-0.1414889,
51.5062259
],
[
-0.1415374,
51.5062089
],
[
-0.1415669,
51.506238
],
[
-0.1415172,
51.5062553
],
[
-0.141583,
51.506326
],
[
-0.1416228,
51.5063353
],
[
-0.1416919,
51.5064173
],
[
-0.1416845,
51.5064298
],
[
-0.1416341,
51.5064488
],
[
-0.1416636,
51.5064833
],
[
-0.1416771,
51.5064797
],
[
-0.1416892,
51.5064881
],
[
-0.1418973,
51.5064092
],
[
-0.1419091,
51.5064204
],
[
-0.141691,
51.5065052
],
[
-0.1417355,
51.5065528
],
[
-0.1417624,
51.5065417
],
[
-0.1417862,
51.506569
],
[
-0.141812,
51.5065727
],
[
-0.141838,
51.5065954
],
[
-0.1418271,
51.5066109
],
[
-0.1418623,
51.5066435
],
[
-0.1418837,
51.5066417
],
[
-0.1419093,
51.5066617
],
[
-0.1419035,
51.5066764
],
[
-0.1419137,
51.5066845
],
[
-0.1419323,
51.506686
],
[
-0.1419469,
51.5067007
],
[
-0.1419413,
51.5067104
],
[
-0.1419583,
51.5067201
],
[
-0.1421823,
51.5066524
],
[
-0.1422288,
51.5066342
],
[
-0.1423373,
51.5067681
],
[
-0.1430385,
51.5064228
],
[
-0.143099,
51.5064704
],
[
-0.1439141,
51.5060467
],
[
-0.144414,
51.5057787
]
]
]
}
},
{
"type": "Feature",
"properties": {},
"geometry": {
"type": "Point",
"coordinates": [
-0.14109693591549397,
51.5056889362676
]
}
}
]
}
我尝试过使用 cleanCoords 并检查与扭结的交集,但它不起作用。
最佳答案
以下是我设法使其发挥作用的方法:
var options = {tolerance: 0.0001, highQuality: true};
poly = turf.cleanCoords(turf.simplify(poly, options));
我还检查了扭结,如果返回 true,则分割多边形:
var kinks = turf.kinks(poly);
if (kinks.features.length){
polys = turf.unkinkPolygon(poly);
...
关于javascript - 使用 turf.intersect 时出现 TopologyException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61926747/
我有这个多边形: const polygon = JSON.parse('{"type":"Feature","properties":{},"geometry":{"type":"Polygon",
我想使用 booleanCrosses和 booleanContains我在客户端的应用程序中使用 Turf.js 库中的方法,但我失败了。我首先尝试只下载 turf.min.js ,但是当我在我的代
我正在制作传单 map 。我正在加载一些 geoJSON 数据。我有 map 的点击功能。当我单击时,我只想提醒离加载的 geoJSON 最近的点。问题是无论我在城市的哪个地方点击,都只返回一个点(下
我在查找两个多边形是否与草皮相交时遇到一些问题。 我的代码的目的是什么? 给定 Assets 的位置(坐标)、视野(-180 到 180 之间,当然是模拟的)和距离(我称之为视野范围;假设为 1 公里
图书馆:http://turfjs.org/ 使用平台:Node.js v8.9.4 Turf 版本:来自 npm 的最新版本 - @turf/turf 代码: var center = [20.65
利用Turf.js版本 3.0.12。下面的函数应该返回两个多边形之间的交点,如果它们不相交则返回 null。多边形确实相交。我尝试了几种不同的多边形并收到相同的错误: “错误:第一个和最后一个位置不
我正在使用 Turf.js在我的应用程序中进行高级地理空间分析,但找不到检查两个多边形是否相互交叉的方法。 Intersect方法不是我想要的,因为如果我有一个小多边形并且想要找到穿过这个小多边形的多
可以使用 turfjs 计算直线路径上两点之间的距离吗?怎么办? 最佳答案 使用 turf.lineSlice 使用您的两个点对线进行切片。这将返回一条新线,其中仅包含两点之间线上的部分。接下来,您可
可以使用 turfjs 计算直线路径上两点之间的距离吗?怎么办? 最佳答案 使用 turf.lineSlice 使用您的两个点对线进行切片。这将返回一条新线,其中仅包含两点之间线上的部分。接下来,您可
我正在使用 OpenLayers3 ol.interaction.Draw让用户在 map 上绘制形状,可以通过单击顶点或通过 Shift+拖动来绘制自由多边形(这对我的应用程序很重要)。绘制形状后,
我有一个featureCollection。每个元素都有 properties,其中又包含条目 arr。 arr 要么包含 [],要么包含 ["a",.... n]。我想从 featureCollec
将 turf.intersect 与特定多边形一起使用时,出现以下错误:“TopologyException”“发现 LINESTRING(-0.140733 51.505327、-0.141097
将 turf.intersect 与特定多边形一起使用时,出现以下错误:“TopologyException”“发现 LINESTRING(-0.140733 51.505327、-0.141097
我正在尝试编写一个脚本,使用 Turf.js 的 inside 方法获取用户提交的坐标并将其与相应的人口普查区相匹配。下面的代码,作为测试,我相信应该返回 true。它没有。 那些坐标肯定是瑞格利球场
如何将坐标的JSON数据传给turf.polygon? 示例: turf.polygon(); var polygon = turf.polygon([[ [-2.275543, 53.464547
我正在尝试构建 turf-buffer 的最新副本这是 turf.js 的模块。我运行了npm install turf-buffer,然后运行browserify turf-buffer/index
方法:我目前使用 turf.js 作为 broader mapping project 的一部分进行地理处理;我的工作流程是这样的: 拉取整个县的人口普查区域的 geojson 从 OSM 中为县域拉
我正在尝试在同一个 map 容器中的标记之间添加多条大圆线。我设法用 greatCircle 展示了一个在 turf.js 中。 for(var i = 0; i < 2 ;i++) { va
我有一个使用 NAD-83 UTM 投影的 GeoJSON 要素集合,因此坐标以米为单位。我想将此特征集合与 Turf.JS 库一起使用来进行一些轮廓绘制。 问题是 Turf.JS 只采用 WGS84
我正在使用 Node.js 构建一个 map 应用程序。我们在 map 上显示了大约 40,000 个多边形,因此我尝试通过尽可能合并它们来提高性能。 Turf.js 有一个看起来像票证的合并功能。但
我是一名优秀的程序员,十分优秀!