问题标签 [polygons]
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.
r - rgeos R中的gIntersects TopologyException
我有一个代表世界生态区域的 shapefile。我正在尝试确定哪些生态区域与我感兴趣的物种的分布相交。我正在使用最新版本的 R 以及 rgdal 和 rgeos 包。
我加载了一个名为“rangelist”的物种范围列表。
我在我的生态区域 shapefile (eco) 中加载,并创建一个名为“区域”的列表,其中包含每个生态区域的 SpatialPolygonsDataFrame 对象:
然后我运行一个循环函数,检查来自'rangelist'的每个范围与来自'regions'的每个生态区域。这工作正常,直到:
我将原始的 ecoregions shapefile 加载到 arcMap 10 中并运行“检查几何”工具,但没有发现任何问题。
数据的原始来源是: 物种范围: http: //www.natureserve.org/getData/birdMaps.jsp 生态区: http ://www.worldwildlife.org/science/data/item1875.html
我在这里临时发布了一个包含 2 个 Rdata 文件和一个 R 脚本的 zip 文件,以便您重现错误(文件大小为 33mb)。
有谁知道我如何解决或解决这个问题?
python - 生成 PDF 文件,绘制圆角多边形
如果我想编写一个以 PDF 格式生成矢量图形的 Python 脚本,那么适合这项工作的工具是什么?特别是,我需要绘制带有圆角的填充多边形(即由直线和圆弧组成的平面图形)。
似乎matplotlib使得绘制圆角矩形和尖角一般多边形变得相当容易。但是,要绘制圆角的多边形,似乎我必须首先计算一个近似形状的贝塞尔曲线。
有没有更直接的方法?或者是否有另一个库可以用来计算近似于我想要生成的形状的贝塞尔曲线?理想情况下,我会简单地为每个顶点指定(位置,角半径)对。
这是一个示例:我想指定红色多边形(+每个角的半径),库将输出灰色图形:
(对于凸多边形,我可以作弊并使用粗笔绘制多边形的轮廓。但是,这在非凸的情况下不起作用。)
r - R中栅格和多边形的坐标参考系
我有几个多边形,我喜欢从这些多边形中的几个栅格层中提取平均值。当我将这些添加到 ArcMap 时,我意识到这两种数据类型的投影不匹配。我可以通过使用投影工具(数据管理工具箱 > 投影和变换工具集 > 栅格)来解决 ArcGIS 中的显示问题。因此,我尝试通过以下方式(部分代码)将数据加载到 R 中来标准化投影:
光栅:
多边形:
我可以分别绘制多边形和栅格,但是当我尝试在栅格上绘制其中一个多边形时,不显示多边形:
似乎它们仍然没有“重叠”。我认为,不同的边界框也表明了这一点:
因为我想提取多边形内的栅格值,所以我必须确保以正确的方式引用它们。有人知道问题可能是什么吗?
c++ - 一个强大的多边形“命中测试”
我们有一组多边形,我们可以假设一个点在其中一个多边形中。我需要一个可靠的算法来告诉我该点在哪个多边形中。我已经尝试了一些东西,但是浮点精度在边缘是一个问题,我需要一些可以正常工作的东西,可能是一个健壮的 c /c++ 库来完成这项工作,有什么想法吗?或者,使用“无限精度”库来实现已知算法可能会更好?
css - 替代在复杂多边形上使用 Image-Maps
我必须创建一个非常复杂的地图,它被分成几块,它们本身都是非常复杂的多边形结构。这些以透明 PNG 的形式提供给我。显然我不能只使用矩形 PNG 本身来定义每个鼠标敏感区域。
我想到的第一件事也是最后一件事是使用 Image-Maps。
但在我走这条路之前,我想问是否有人能想到一个更现代的解决方案?
浏览器支持要求为 IE >= 7、FF >= 3、较新的 Chrome 和 Opera。所以使用 CANVAS 可能不是一种选择。
ruby-on-rails - 给定点和多边形的集合,确定哪个点位于哪个多边形中(或不在哪个多边形中)
我的问题几乎与此类似。但就我而言,多边形不一定相互接触/重叠。它们遍布整个空间。
我有一大堆这样的多边形。同样,我有很多点。我目前正在运行一个 RoR 模块,它一次需要 1 个点,并一次检查相对于 1 个多边形的交集。数据库是 PostGIS。性能相当缓慢。
有没有更快或最佳的方法来做到这一点?
ios - 使用 3D 管道查找附近的三角形?
假设你有一个网格。考虑其中一个三角形。假设您想知道哪些三角形是该三角形的邻居。
实际上:
OpenGL(或 3D 管道的其他方面)是否以某种方式“知道”这些信息?
我知道找到相邻三角形的唯一方法是简单地查看网格的所有顶点。
我的问题:
在实际的 3D 管道级别,“硬件”是否知道哪些三角形是相邻的?
或者是否有某种魔法,也许是着色器级别的方法可以立即给出这些答案?
或者,也许,物理层以某种方式快速知道碰撞网格的哪些 tris 是相邻的?
或者,您是否可以通过编写自定义着色器来获得此信息,着色器级别是否“知道”此信息?
怎么了,低级高手??谢谢
PS当然,如果“从硬件”无法获得此信息,最好的办法是维护网格的某种空间数据库。很容易,但如果信息已经从管道/硬件的某些方面可用,那就很傻了。谢谢!
稍后为未来的读者注意,我现在已经与致力于硬件的 coupla folx 广泛讨论了这个问题。
这是答案:
事实上,总而言之,3D 管道不知道相邻的三角形:就这么简单。正如 Anteru 解释的那样,一个顶点仅针对同一个三角形中的其他两个顶点进行渲染,仅此而已。希望它可以帮助某人。
ruby - Gmaps4rails多边形不显示
可能重复:
使用 gmaps4rails 显示多边形
嗨,我也是 gmap4rails 和 ruby 的菜鸟。我已经成功地用我的模型生成标记,但无法用它生成多边形。我希望apneadiving或任何人都可以帮助我解决这个问题。请感谢任何帮助。
控制器(版本 1):
控制器(我尝试过但也没有工作的第 2 版):
模型:
看法:
我也尝试过这种观点,但没有奏效。
只有更改为“标记”,它才能正常工作,但我想显示“多边形”
javascript - BingMap 在视图中获取多边形
我的地图上有 30-50 个多边形。每个多边形中大约有 4000 个点,但它们在开始时是隐藏的。我只想在缩放 <=6 时显示该点,但不是所有点,而是仅与当前显示的多边形相关的点。所以我需要看到多边形(此时显示在屏幕上)。
你知道如何让多边形出现吗?ps.Im 使用 javascript
algorithm - 如何相交多个多边形?
我正在寻找具有以下输入和输出的算法:
输入:平面中的一组多边形。例如 P1...Pn 和 S。(P1...Pn 可能是凹的,S 是凸的。)
输出:这个平面上多边形集合的面积等于 S 的差和 P1...Pn 的并集。
我找到了相交或合并两个多边形的算法。但是由于这些操作中的每一个都可能产生几个多边形,如果我天真地做的话,我会创建大量的多边形。
那么:如何处理多个多边形的交集?
没关系,如果所有多边形都连接在一起,因为只有该区域是我所追求的。我的想法是使用有向多边形来模拟孔,但后来我又遇到了一个问题,即我是否有一个“最小表示”,因为 n 可能会爆炸。【你明白我在说什么吗?真是奇怪……)