问题标签 [turfjs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 计算两个旋转矩形/多边形的碰撞和相交面积
- 我想计算两个多边形(旋转矩形)的碰撞面积。
- 我想计算
polyA
碰撞区域中的区域(%)。
leaflet - Turf.js 擦除会产生投影错误的多边形
我将turfjs erase 与传单绘制插件一起使用,以从正在绘制的新多边形中减去现有多边形。但是,结果多边形无法在地图上正确显示,这似乎是一个投影问题。
将我的传单地图投影 CRS 更改为 L.CRS.EPSG4326 时,多边形显示正确,但这会产生其他问题。
有没有办法从 turf.js 更改结果多边形的投影,以便在传单使用的默认 L.CRS.EPSG3857 投影上正确显示?
显示行为的 jsfiddle https://jsfiddle.net/pdjo/s5v19es0/3/
javascript - 查找嵌套数组中的每个第一个数组
我有一个有时会生成嵌套数组的函数(用于 multiPolygon 目的)。它可能看起来像这样:
所以它可以返回一个嵌套数组,里面有多个嵌套数组。但我想让舒尔只得到第一个嵌套数组,如下所示:
我在 NodeJS 中开发。
leaflet - Turf.js 中的“未捕获拓扑错误:未找到传出 dirEdge”是什么?
我正在尝试使用turf.concave
来获取多边形。它适用于我输入的大多数点,但是对于一组点,它会冒犯并引发以下错误:
Uncaught TopologyError: no outgoing dirEdge found [ (-121.9717867, 47.73397465) ]
包含我尝试使用的数据的文件位于此处。
功能很简单:
turf.concave(<mygeojson>, 1, 'miles')
而且,正如我所说,它适用于所有其他 FeatureCollections。知道为什么它不适用于这个吗?
javascript - Openlayers 2.12 JSON 层颜色与 TURF 算法
我有不同的草坪操作,现在我想要一些风格。我的所有操作结果都在 ee9900 中,我认为这是 openlayers 2.12 的默认颜色
所以我想我有一个函数来获取结果,现在我希望它有一些风格。
我建立:
我只是简单地添加vector_layer.style = {fillColor: 'red'};
并将多边形特征更改为红色,但点和颜色不起作用。然后我有:
结果是一个变量,我在这里有不同操作的结果。然后 getData 是一个获得结果的函数。
知道什么进行吗?谢谢!
turfjs - TurfJS沿着方法没有按预期工作
我对 turfJS 的 along() 方法有疑问。看来 turfJS 我的坐标有问题。
代码运行后,这是我得到的控制台日志:
如您所见,坐标为-37。和 35。但是当沿着这条线走 1 英里(即 -37 和 145)时,我不明白为什么它这么远(它就像这条线的地球的一半!)。
当使用 TurfJS 文档中的测试坐标时,它似乎工作正常,但我的坐标破坏了。怎么会这样 ?
您可以在此处找到带有示例的文档:http: //turfjs.org/static/docs/module-turf_along.html
使用他们的示例坐标时
结果是(即使只使用 2 个点并且使用不到一英里:它总是返回正确的点):
json - 使用 TurfJS“合并”功能在 OpenLayers 3 中添加 GeoJSON 层
我正在使用 Openlayers 3 并想添加一个图层,其中 TurfJS 函数“合并”的答案应该是源。直接在 OpenLayers 3 中添加 GeoJSON-Layer 没有问题并且工作正常。但是当我将 GeoJSON-File 加载到变量中并使用 turf.merge(source) 时,不能再将其添加到图层中。我已经尝试将 turf.merge 的答案转换为 FeatureCollection 并将其添加为图层源,但这也不起作用
我看到的问题是,在加载页面时,GeoJSON-File 没有加载,尽管它应该加载。
但只需加载和显示文件即可:
使用草皮合并时,GeoJSON-Fomat 可能有问题?我为每一次帮助感到高兴!
leaflet - 在 turfjs 中查找 LineString 与多边形边界相交的坐标
Turfjs 中有没有办法确定 LineString 与多边形边界相交的坐标?
有很多方法可以找出一个点是否在多边形内,还有很多方法可以找出一个点是否在一条线上等等,但我似乎无法找到一种方法来询问“在什么位置点这条线是否与这个多边形的边界相交"。
我可以使用线相交算法枚举多边形中的点以找到该点,但我想知道是否有更“草皮”的方式来做到这一点。
对于上下文,我已经加载了 GPX 轨道,并希望估计轨道进入/离开定义区域的位置/时间。
由于 GPX 轨道仅以特定间隔记录位置,因此通常情况下,在时间 tN 记录的 pN 在区域外,而在时间 tN+1 记录的 pN+1 在区域内。如果我能得到线 (pN, pN+1) 与多边形边界相交的点,我可以估计轨道穿过多边形的确切时间。
gis - Turfjs 内部和相交
我正在尝试使用TurfJS确定一个点是否在多边形内。但我得到了意想不到的结果。
首先,我测试了这个简单的代码并且运行良好。交点为真,因为点 pt0 是多边形中的点之一。
接下来的代码非常相似,但是交集返回 undefined,而测试点也属于多边形。
这是一个JSFiddle。
node.js - Turf JS(节点)缓冲多个点
我正在尝试使用草皮缓冲geojson文件中的所有点。有50分。我的脚本按预期生成和输出 geojson 文件,但 QGIS 不会显示生成的 geojson 文件。任何想法我做错了什么?
感谢您的任何见解!