草庐IT

多边形

全部标签

java - 将相邻的矩形合并为一个多边形

我有一组矩形,它们具有相同的宽度和高度,并且总是相邻的。我知道所有顶点的位置,每个顶点只有4个。(因为是一个正方形)。这张图片可以解释这一点:如果有任何差距,算法将“填补”差距是可以的。我找了很多,没找到什么好东西..我需要一个简单的算法,它不必那么高效..假设我们从图像的第二个多边形示例中得到了7个矩形。如果我先将1与2合并,然后将我们的新多边形与3合并,这样就可以了,它不必那么快,因为最多会有50个矩形。 最佳答案 因为您的形状仅由矩形组成,而且它们总是相邻的,所以合并的算法比没有这些假设时要简单得多。从您的矩形中创建所有边的列

java - 多边形顶点作为 UV 坐标

我正在使用Graphics类在Java中开发3D渲染器,它现在能够绘制任何带有彩色面孔的形状,但是我想知道是否可以对面孔进行纹理处理?我见过很多人用Javascript创建软件渲染器,所以肯定有一个等效的功能/方法,但是他们在Java中做的......到目前为止,我环顾四周,但我能找到的只有Graphics.setClip(Shape),我认为它不合适,因为它只是设置背景纹理,如果顶点移动则不会拉伸(stretch)纹理-这只是在2D中,它还需要在纹理与相机成一定角度时拉伸(stretch)/倾斜纹理(想想旋转立方体的侧面)。我真的不知道从哪里开始,我不能使用XOR模式,因为没有倾斜,

Java:查找凸多边形的最外层顶点

原帖:我试图找到凸多边形的最外层顶点(与多边形外的点P相关)。目前,我只关心矩形(但是,我想要一种适用于任何凸多边形的算法)。我的计划是构建一条从外部点P到中心点C的直线。根据这条引用线,我将构建从点P到点1、2、的线3和4。由于点2和4与引用线的夹角最大(最正)和最小(最负),因此它们将是标识为最外层的顶点。这是这项工作的最佳算法吗?如何从引用角度计算角度(最好在Java中)?澄清更新:我画了线(引用线为红色)。如您所见,从P到2的线在引用线的一侧形成最大角度,而从strong>P到4创造另一边的最大角度。因此,这些是最外层的顶点。 最佳答案

java - 共享四边形基的方形/矩形(具有约束不变量)之间的继承问题

我有一个接口(interface)Polygon,然后我有一个类Quadrilateral。然后,我有两个类,Square和Rectangle,它们扩展了Quadrilateral。四边形由实例变量sideA、sideB、sideC和sideD组成。它包含方法area()和perimeter()来计算任何四边形的面积和周长。考虑到这一点,Square类有一个实例变量lengthOfSides,而Rectangle类有两个实例变量,length和width。由于Quadrilateral中的方法area和perimeter可以用于计算任何四边形的面积和周长,包括正方形和矩形,我认为最好只

java - 如何找到两个任意多边形之间的重叠区域

我正在尝试创建一个方法,该方法将接受两个任意节点列表,一个主题和一个剪裁多边形,并输出:a)theareaoftheoverlapb)alistofnodesfortheresulting(clipped)polygonsothatIcancalculatethearea我发现了很多使用矩形窗口(这在图形中相当标准)裁剪任意多边形的示例,但这不是我需要的。我知道它相当复杂,特别是当你有洞、凸多边形等时。我可以做的唯一简化假设是任意多边形不包含任何孔。我根本不是这个领域的专家,那么像Sutherland-Hodgman算法这样的算法行得通吗?是否有任何图书馆已经这样做了,或者我最好的选择

Unity绘制六边形体

现在steam上面有很多下棋类/经营类的游戏都是用六边形的地形,比较美观而且实用,去年在版本末期我也自己尝试做了一个绘制六边体的demo,一年没接触unity竟然都要忘光了,赶紧在这边记录一下。想cv代码可以直接拉到代码章节功能能够动态生成一系列可以“挖空中心”的六边形。指定innerWidth为0也可以生成实心的六边体。能够生成平铺/直铺的六边形群,调整之间距离绘制思路将绘制一个六边形看成六个下面这种等腰体,绕中心旋转60度之后合并成一个。一个这种等腰体又可以看成绘制四个面:上面的等腰梯形,内测的长方形,下面的等腰梯形,外侧的长方形,两边无需绘制,因为合并之后不会显示出来。所以只需要通过三角

在Leaflet中使用Turf.js生成范围多边形的两种实现方式

目录前言一、场景需求1、Leaflet.js的不足2、Turf.js二、原始数据展示1、点位数据展示 2、定义样式3、定位数据初始化三、Turfjs中bbox生成 1、官网讲解2、轨迹bbox生成四、Turfjs生成外包多边形1、官网例子2、凸多边形生成总结前言        在一些共享出行的应用地图中,以美团共享骑行为例,在城市的重要地方会设置电子围栏。防止由于共享单车无序停放而导致影响交通出行的障碍。比如在星城,湘江一桥及橘子洲景区就是设置了禁停区。可以看一下下面的地图:        这里的禁停区就是一个非常明显的电子围栏的应用。 于此同时在面向GIS的安防领域,这方面的应用同样层出不穷

java - 使用 libGDX 绘制填充的多边形

我想用libGDX绘制一些(填充的)多边形。它不应该填充图形/纹理。我只有多边形的顶点(闭合路径)并尝试使用网格进行可视化,但我认为在某些时候这不是最佳解决方案。我的矩形代码是:privateMeshmesh;@Overridepublicvoidcreate(){if(mesh==null){mesh=newMesh(true,4,0,newVertexAttribute(Usage.Position,3,"a_position"));mesh.setVertices(newfloat[]{-0.5f,-0.5f,00.5f,-0.5f,0,-0.5f,0.5f,0,0.5f,0.5

java - 基于多边形的寻路

我已经用Java实现了一个基于网格的基本A*寻路器。我想制作一个基于导航网格/多边形的探路者,但我遇到的问题是:如果我找到橙色路线,那么我可以使用类似afunnelalgorithm的东西拉直它以获得所需的路线(蓝色)。但是,如果程序计算每条路线(红色和橙色)的成本,那么它会说红色路线最便宜。我该如何编写我的A*算法和/或创建我的网格,以免发生这种情况。 最佳答案 第15章ComputationalGeometry:AlgorithmsandApplications正是描述并解决了这个问题:自由空间可以用梯形图来描述,但是使用梯形图

Googlemapsapi-初始化后更改多边形的strokecolor

我正在创建一个使用GoogleMapsapi在Google地图上渲染多个多边形的Web应用程序。varpolyCoords=[];functioninitMap(){varloc={lat:23,lng:90};varpolyArr=[{coords:coordsofP1,weight:weightofP1},.....,{coordsofPn}];map=newgoogle.maps.Map(document.getElementById('map'),{zoom:11,center:loc});for(varpolyinpolyArr){vargridPoly=newgoogle.maps