- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试简化在 Google map (API v3 Javascript)上绘制的复杂多边形。我的目标是接收一组简单的多边形。问题是我画的图有的可以分析,有的不能分析。
例如:
1) 图 8-垂直 - 对于具有坐标的多边形 (var areaPolygon):
{42.15093256154524, 24.746017456054687}
{42.149087174176515, 24.740352630615234}
{42.14049586965896, 24.754257202148437}
{42.1333673840616, 24.747648239135742}
{42.13795007405907, 24.73846435546875}
{42.145841707270215, 24.74867820739746}
{42.15093256154524, 24.749107360839843}
{42.15093256154524, 24.746017456054687}
它工作正常 - SimplifyPolygon 返回 2 个简单的多边形
2) 图 8-水平 - 对于具有坐标的多边形 (var areaPolygon):
{42.145523515284395, 24.744129180908203}
{42.15016895950386, 24.749279022216797}
{42.14603262169405, 24.7646427154541}
{42.14978715502878, 24.769277572631836}
{42.15055076167604, 24.758892059326172}
{42.14393253136682, 24.75193977355957}
{42.141705086714666, 24.747648239135742}
{42.14348704870535, 24.74472999572754}
{42.145523515284395, 24.744129180908203}
这是我的代码:
function analyzePolygon(areaPolygon) {
//areaPolygon is google.maps.Polygon
var subj_polygon = new ClipperLib.Polygon();
var result_polygons = new ClipperLib.Polygons();
//LatLng coordinates to integer coordinates
for(var i = 0; i < areaPolygon.getPath().getArray().length ; i++) {
subj_polygon.push(new ClipperLib.IntPoint(Math.round(areaPolygon.getPath().getArray()[i].lat()*100000000000000), Math.round(areaPolygon.getPath().getArray()[i].lng()*100000000000000)));
}
var cpr = new ClipperLib.Clipper();
result_polygons = cpr.SimplifyPolygon(subj_polygon, ClipperLib.PolyFillType.pftNonZero);
//for each simple polygon - make a request and populate markers of the objects which are in these bounds
for(var j=0; j < result_polygons.length; j++) {
var rpStringify = JSON.stringify(eval(result_polygons[j]));
var rpJSON = JSON.parse(rpStringify);
var arrayPolygon = [];
for (var i = 0; i < rpJSON.length; i++) {
var tempObject = JSON.stringify(eval(rpJSON[i]));
var objectJSON = JSON.parse(tempObject);
var tempArr = [2];
tempArr[0] = objectJSON.X/100000000000000;
tempArr[1] = objectJSON.Y/100000000000000;
arrayPolygon[i]= tempArr;
}
loadPinsPolygon(arrayPolygon);
}
最佳答案
埃琳娜。
it's not working - the SimplifyPolygon returns the same complex polygon
我不确定您所说的“复杂多边形”是什么意思,但如果您指的是自相交多边形(请参阅 http://en.wikipedia.org/wiki/Complex_polygon ),那么 SimplifyPolygon 函数确实会按预期删除自相交。您得到的是一个简单的多边形,尽管在先前的交点处有 2 个顶点位于相同的坐标。
但是,如果您真的想要两个离散的多边形,那么您将不得不修改库中的底层代码(参见讨论 here。)
关于javascript - 简化多边形 - Clipper Library Angus Johnson,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15130305/
我可以使用 Clipper 检查我的多边形轮廓是否与自身相交(如果它是复杂的或简单的多边形)? 我知道它不会使多边形无效,但就我而言,我想避免自相交多边形。 最佳答案 不,图书馆没有这个功能。 关于i
我正在尝试调整 clipper.js 库中的“简化多边形”功能。我不确定我是否理解以下脚本有什么问题: var five_pointed_star = [{ "X": 114.1115262
我使用 clipper library .图中红色和黑色是夹子,绿色是多边形。下面列出了代码。但是,我不明白为什么生成的联合多边形是 (7 3 4 14 9 1 2 6)。 我认为它应该是 (1 4
在Clipper ,给定一个开放路径(黑色)和一个闭合多边形(蓝色),我如何剪裁开放路径,以便使用多边形轮廓完成剪裁部分,并且在可能的情况下,保留一条路径而不是不相交的线段? 哪些 Clipper 操
我正在使用 Clipper 并想确定两个(多个)多边形是否相交。 我的期望是图书馆有一个很好的、抽象的方式来问这个问题,但它似乎没有。 我认为 Area() 方法可能有用,但它只适用于 Path 并且
我有一组彼此不重叠或相交的多边形,但它们彼此紧挨着放置。我想将它们合并为 1 个多边形,只包含周边路径。我玩过 Clipper Library,试图将它们联合起来 - 但当它们不重叠时,它就无法正常工
我正在使用 CLIPPER库偏移线并尝试制作平行线。 ClipperOffset co = new ClipperOffset(); co.AddPath (s, JoinType.jtRound,
Bottom Shadow 您好,我是 Flutter 的新手,并试图从 Dribble 的 Shakuro 创建这个设计。我在尝试为剪裁器创建高程时遇到了麻烦,因为整个矩形正在获取阴影而不是仅剪裁器
Clipper 是否有一些 Python 绑定(bind)?图书馆? 我需要 OffsetPolygons 函数。我曾尝试将 C++ Clipper 代码转换为 Python,并且在某种程度上我设法做
当我尝试使用 Evernote clipper extension 时,我看到一个非常有用的功能。当我点击“文章”时,它给了我一个真正正确的页面主要内容。让我们看看我在页面 https://devel
我目前无法绘制贝塞尔曲线。 我现在的输出是: 我需要的输出是: 我应该在这里添加什么作为贝塞尔值来获得曲线? 自定义裁剪器的代码片段是: class OnBoardingClipper ext
有 DOS、Windows 或 Linux 上的后续产品吗? 最佳答案 有很多可用的 Clipper 编译器:Harbour , CLIP ,和xHarbour ,仅举几个免费的例子。 关于foxpr
我正在尝试简化在 Google map (API v3 Javascript)上绘制的复杂多边形。我的目标是接收一组简单的多边形。问题是我画的图有的可以分析,有的不能分析。 例如: 1) 图 8-垂直
我有一个 2D 粒子系统,其中粒子表示为椭圆。我需要计算椭圆 - 椭圆重叠区域,但这是一个很难分析的问题 Ellipse-Ellipse Overlap .我现在将我的椭圆表示为 20 边形,以便它们
我想使用 Clipper 库 ( http://www.angusj.com/delphi/clipper.php ) 在闭合多边形中产生偏移量。 因为我使用的是 python 2.7,所以我使用 p
我正在尝试使用 Clipper 库按线分割多边形。执行裁剪后,返回空路径。有人可以建议正确的方法来做同样的事情吗? Paths clip(2),soln; clip[0] << IntPoint(-2
我正在尝试使用 clipper.js 合并 Google map (API v3 Javascript)上的 2 个多边形(绿色)。 之前:http://jsfiddle.net/kevdiho/tc
我正在将一个好的旧 Clipper xbase 程序转换/迁移到 Java。由于旧程序仍在运行,因此在用Java将数据写入数据库时需要兼容。到目前为止,它运行得非常好。 为此,我需要 Clippe
我们正在使用 CLIPPER 创建 POC。该部署在本地环境中使用 Docker 运行良好,但我们需要使用 kubernetes 进行 POC。我们尝试通过两种方式部署它: Minikube 部署 G
我正在尝试使用 JS Clipper 对 SVG 路径(包含二次和三次贝塞尔曲线)执行 bool 运算. JS Clipper从多边形开始然后执行操作,然后似乎将它们转换回 SVG 路径。 下面的函数
我是一名优秀的程序员,十分优秀!