在使用GPC计算多边形的交的时候,出现问题
//1.2. 另一种方法,判断新的多边形是否和老多边形相交
Poly cross = (PolyDefault) Clip.intersection( filed, polyNig );
若filed 为两个分离的多边形,则出现计算问题:
catch (Exception exception) {
exception.printStackTrace();
}
不知道如何解决!!!
后记:
没办法,只能修改掉,使用遍历方式
// 对一个复合多边形判断交 public static Poly intersection(Poly poly, Poly p2) { Poly p0 = new PolyDefault(); List<Poly> p1 = new ArrayList<>(); int num = poly.getNumInnerPoly(); if (num > 1) { for (int i = 0; i < num; ++i) { Poly psin = (PolyDefault) poly.getInnerPoly(i); p1.add(psin); } p0 = intersection(p1, p2); } else { p0 = (PolyDefault) Clip.intersection(poly, p2); } return p0; }