我有一个由几个Boost.Geometry多边形组成的数组,我需要将它们合并成一个多边形。我已经成功地实现了一些东西,将每个连续的多边形与前两个多边形的并集合并(只需循环通过它们并联合另一个多边形)。
multi_polygon polygons; // an array of initial polygons
multi_polygon border; // the unioned polygons
for (polygon p : polygons) {
// add another polygon each iteration
multi_polygon tmp_p
我有两个postgres表,一个多边形特征和第二个点特征,具有相同的投影。我想做的是只选择在大多边形中包含的点,而不包含在小多边形中,如下图所示,使用空间查询。
下面的查询是,select所有在小多边形(kind=1)中不相交/包含的点,然后从包含在大多边形(kind=2)中的所选特性返回这些点。查询的结果是0 rows。
select
*
from
(
select p.geom as point_geom,sp.geom as polygon_geom
from polygons sp, points p
where st_
我定义了一个Polygon。我想要与这个多边形(这里的白色矩形)的Lines相交和修剪一个其他Edges的列表,这样行的端点被限制在多边形的内部部分。
目前,我将每条青色线与多边形的边缘相交,这给了我交点。但问题是我不知道怎么修剪它们。我知道我需要将每条相交线(青色线)的X1、Y1、X2和Y2更改为交点。但我不知道怎么做。
让我这样解释。一条青色线与多边形的一条边缘相交,现在我需要将青色线的端点移动到交点来模拟修剪,对吗?,我需要移动哪个端点?我有点迷路了。
public class Polygon
{
public List<Line>() Edges;
}
publi
我有Tucson Metropolitan Area的紧急服务区的多边形特征数据集,并且想要将多边形属性复制到补丁中。代码只是创建/着色这些补丁(图片如下所示)。
我想创建一个覆盖整个紧急服务区的补丁(第二张图片如下所示)
这是我的代码。我尝试使用多边形的顶点,但没有成功。我尝试使用多边形的中心,我得到了一个与我想要的不同的输出。
我的代码是:
to setup-gis ;; copy gis features to patches
clear-patches
show "Loading patches..."
gis:apply-coverage ESZs