当前位置: 首页>>代码示例>>Java>>正文


Java LinearComponentExtracter.getLines方法代码示例

本文整理汇总了Java中com.vividsolutions.jts.geom.util.LinearComponentExtracter.getLines方法的典型用法代码示例。如果您正苦于以下问题:Java LinearComponentExtracter.getLines方法的具体用法?Java LinearComponentExtracter.getLines怎么用?Java LinearComponentExtracter.getLines使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.vividsolutions.jts.geom.util.LinearComponentExtracter的用法示例。


在下文中一共展示了LinearComponentExtracter.getLines方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: visit

import com.vividsolutions.jts.geom.util.LinearComponentExtracter; //导入方法依赖的package包/类
@Override
protected void visit(Geometry geom) {
    /**
     * It may be the case that the rectangle and the
     * envelope of the geometry component are disjoint,
     * so it is worth checking this simple condition.
     */
    Envelope elementEnv = geom.getEnvelopeInternal();
    if (!this.rectEnv.intersects(elementEnv)) {
        return;
    }

    // check segment intersections
    // get all lines from geometry component
    // (there may be more than one if it's a multi-ring polygon)
    List lines = LinearComponentExtracter.getLines(geom);
    this.checkIntersectionWithLineStrings(lines);
}
 
开发者ID:gegy1000,项目名称:Earth,代码行数:19,代码来源:RectangleIntersects.java

示例2: visit

import com.vividsolutions.jts.geom.util.LinearComponentExtracter; //导入方法依赖的package包/类
protected void visit(Geometry geom) {
    /**
     * It may be the case that the rectangle and the
     * envelope of the geometry component are disjoint,
     * so it is worth checking this simple condition.
     */
    Envelope elementEnv = geom.getEnvelopeInternal();
    if (!rectEnv.intersects(elementEnv))
        return;

    // check segment intersections
    // get all lines from geometry component
    // (there may be more than one if it's a multi-ring polygon)
    List lines = LinearComponentExtracter.getLines(geom);
    checkIntersectionWithLineStrings(lines);
}
 
开发者ID:Semantive,项目名称:jts,代码行数:17,代码来源:RectangleIntersects.java

示例3: splitBySegment

import com.vividsolutions.jts.geom.util.LinearComponentExtracter; //导入方法依赖的package包/类
public static List<Geometry> splitBySegment(Geometry geom) {
  List<Geometry> items = new ArrayList<Geometry>();
  List lines = new ArrayList();

  LinearComponentExtracter.getLines(geom, lines);
  for (int icomp = 0; icomp < lines.size(); icomp++) {
    
    Coordinate[] pts = ((LineString) lines.get(icomp)).getCoordinates();
    for (int i = 0; i < pts.length - 1; i++) {
      LineString line = geomFactory.createLineString(
          new Coordinate[] { new Coordinate(pts[i]), new Coordinate(pts[i+1]) });
      items.add(line);
    }
  }
  return items;
}
 
开发者ID:dr-jts,项目名称:jeql,代码行数:17,代码来源:GeomFunction.java

示例4: getPoints

import com.vividsolutions.jts.geom.util.LinearComponentExtracter; //导入方法依赖的package包/类
/**
 * Gets the computed offset points.
 *
 * @return List<Coordinate>
 */
public List getPoints(double offsetDistance) {
    List offsetPts = new ArrayList();
    List lines = LinearComponentExtracter.getLines(this.g);
    for (Object line1 : lines) {
        LineString line = (LineString) line1;
        this.extractPoints(line, offsetDistance, offsetPts);
    }
    //System.out.println(toMultiPoint(offsetPts));
    return offsetPts;
}
 
开发者ID:gegy1000,项目名称:Earth,代码行数:16,代码来源:OffsetPointGenerator.java

示例5: isSimplePolygonal

import com.vividsolutions.jts.geom.util.LinearComponentExtracter; //导入方法依赖的package包/类
/**
 * Computes simplicity for polygonal geometries.
 * Polygonal geometries are simple if and only if
 * all of their component rings are simple.
 *
 * @param geom a Polygonal geometry
 * @return true if the geometry is simple
 */
private boolean isSimplePolygonal(Geometry geom) {
    List rings = LinearComponentExtracter.getLines(geom);
    for (Object ring1 : rings) {
        LinearRing ring = (LinearRing) ring1;
        if (!this.isSimpleLinearGeometry(ring)) {
            return false;
        }
    }
    return true;
}
 
开发者ID:gegy1000,项目名称:Earth,代码行数:19,代码来源:IsSimpleOp.java

示例6: createConstraintSegments

import com.vividsolutions.jts.geom.util.LinearComponentExtracter; //导入方法依赖的package包/类
private static List createConstraintSegments(Geometry geom) {
    List lines = LinearComponentExtracter.getLines(geom);
    List constraintSegs = new ArrayList();
    for (Object line1 : lines) {
        LineString line = (LineString) line1;
        createConstraintSegments(line, constraintSegs);
    }
    return constraintSegs;
}
 
开发者ID:gegy1000,项目名称:Earth,代码行数:10,代码来源:ConformingDelaunayTriangulationBuilder.java

示例7: init

import com.vividsolutions.jts.geom.util.LinearComponentExtracter; //导入方法依赖的package包/类
private void init(Geometry geom) {
    List lines = LinearComponentExtracter.getLines(geom);
    for (Object line1 : lines) {
        LineString line = (LineString) line1;
        Coordinate[] pts = line.getCoordinates();
        this.addLine(pts);
    }
}
 
开发者ID:gegy1000,项目名称:Earth,代码行数:9,代码来源:IndexedPointInAreaLocator.java

示例8: extractSegmentStrings

import com.vividsolutions.jts.geom.util.LinearComponentExtracter; //导入方法依赖的package包/类
/**
 * Extracts all linear components from a given {@link Geometry}
 * to {@link SegmentString}s.
 * The SegmentString data item is set to be the source Geometry.
 *
 * @param geom the geometry to extract from
 * @return a List of SegmentStrings
 */
public static List extractSegmentStrings(Geometry geom) {
    List segStr = new ArrayList();
    List lines = LinearComponentExtracter.getLines(geom);
    for (Object line1 : lines) {
        LineString line = (LineString) line1;
        Coordinate[] pts = line.getCoordinates();
        segStr.add(new NodedSegmentString(pts, geom));
    }
    return segStr;
}
 
开发者ID:gegy1000,项目名称:Earth,代码行数:19,代码来源:SegmentStringUtil.java

示例9: getPoints

import com.vividsolutions.jts.geom.util.LinearComponentExtracter; //导入方法依赖的package包/类
/**
 * Gets the computed offset points.
 *
 * @return List<Coordinate>
 */
public List getPoints(double offsetDistance) {
    List offsetPts = new ArrayList();
    List lines = LinearComponentExtracter.getLines(g);
    for (Iterator i = lines.iterator(); i.hasNext(); ) {
        LineString line = (LineString) i.next();
        extractPoints(line, offsetDistance, offsetPts);
    }
    //System.out.println(toMultiPoint(offsetPts));
    return offsetPts;
}
 
开发者ID:Semantive,项目名称:jts,代码行数:16,代码来源:OffsetPointGenerator.java

示例10: isSimplePolygonal

import com.vividsolutions.jts.geom.util.LinearComponentExtracter; //导入方法依赖的package包/类
/**
 * Computes simplicity for polygonal geometries.
 * Polygonal geometries are simple if and only if
 * all of their component rings are simple.
 *
 * @param geom a Polygonal geometry
 * @return true if the geometry is simple
 */
private boolean isSimplePolygonal(Geometry geom) {
    List rings = LinearComponentExtracter.getLines(geom);
    for (Iterator i = rings.iterator(); i.hasNext(); ) {
        LinearRing ring = (LinearRing) i.next();
        if (!isSimpleLinearGeometry(ring))
            return false;
    }
    return true;
}
 
开发者ID:Semantive,项目名称:jts,代码行数:18,代码来源:IsSimpleOp.java

示例11: computeFacetDistance

import com.vividsolutions.jts.geom.util.LinearComponentExtracter; //导入方法依赖的package包/类
/**
 * Computes distance between facets (lines and points)
 * of input geometries.
 */
private void computeFacetDistance() {
    GeometryLocation[] locGeom = new GeometryLocation[2];

    /**
     * Geometries are not wholely inside, so compute distance from lines and points
     * of one to lines and points of the other
     */
    List lines0 = LinearComponentExtracter.getLines(geom[0]);
    List lines1 = LinearComponentExtracter.getLines(geom[1]);

    List pts0 = PointExtracter.getPoints(geom[0]);
    List pts1 = PointExtracter.getPoints(geom[1]);

    // exit whenever minDistance goes LE than terminateDistance
    computeMinDistanceLines(lines0, lines1, locGeom);
    updateMinDistance(locGeom, false);
    if (minDistance <= terminateDistance) return;

    locGeom[0] = null;
    locGeom[1] = null;
    computeMinDistanceLinesPoints(lines0, pts1, locGeom);
    updateMinDistance(locGeom, false);
    if (minDistance <= terminateDistance) return;

    locGeom[0] = null;
    locGeom[1] = null;
    computeMinDistanceLinesPoints(lines1, pts0, locGeom);
    updateMinDistance(locGeom, true);
    if (minDistance <= terminateDistance) return;

    locGeom[0] = null;
    locGeom[1] = null;
    computeMinDistancePoints(pts0, pts1, locGeom);
    updateMinDistance(locGeom, false);
}
 
开发者ID:Semantive,项目名称:jts,代码行数:40,代码来源:DistanceOp.java

示例12: createConstraintSegments

import com.vividsolutions.jts.geom.util.LinearComponentExtracter; //导入方法依赖的package包/类
private static List createConstraintSegments(Geometry geom) {
    List lines = LinearComponentExtracter.getLines(geom);
    List constraintSegs = new ArrayList();
    for (Iterator i = lines.iterator(); i.hasNext(); ) {
        LineString line = (LineString) i.next();
        createConstraintSegments(line, constraintSegs);
    }
    return constraintSegs;
}
 
开发者ID:Semantive,项目名称:jts,代码行数:10,代码来源:ConformingDelaunayTriangulationBuilder.java

示例13: init

import com.vividsolutions.jts.geom.util.LinearComponentExtracter; //导入方法依赖的package包/类
private void init(Geometry geom) {
    List lines = LinearComponentExtracter.getLines(geom);
    for (Iterator i = lines.iterator(); i.hasNext(); ) {
        LineString line = (LineString) i.next();
        Coordinate[] pts = line.getCoordinates();
        addLine(pts);
    }
}
 
开发者ID:Semantive,项目名称:jts,代码行数:9,代码来源:IndexedPointInAreaLocator.java

示例14: extractSegmentStrings

import com.vividsolutions.jts.geom.util.LinearComponentExtracter; //导入方法依赖的package包/类
/**
 * Extracts all linear components from a given {@link Geometry}
 * to {@link SegmentString}s.
 * The SegmentString data item is set to be the source Geometry.
 *
 * @param geom the geometry to extract from
 * @return a List of SegmentStrings
 */
public static List extractSegmentStrings(Geometry geom) {
    List segStr = new ArrayList();
    List lines = LinearComponentExtracter.getLines(geom);
    for (Iterator i = lines.iterator(); i.hasNext(); ) {
        LineString line = (LineString) i.next();
        Coordinate[] pts = line.getCoordinates();
        segStr.add(new NodedSegmentString(pts, geom));
    }
    return segStr;
}
 
开发者ID:Semantive,项目名称:jts,代码行数:19,代码来源:SegmentStringUtil.java

示例15: isSimplePolygonal

import com.vividsolutions.jts.geom.util.LinearComponentExtracter; //导入方法依赖的package包/类
/**
 * Computes simplicity for polygonal geometries.
 * Polygonal geometries are simple if and only if
 * all of their component rings are simple.
 * 
 * @param geom a Polygonal geometry
 * @return true if the geometry is simple
 */
private boolean isSimplePolygonal(Geometry geom)
{
  List rings = LinearComponentExtracter.getLines(geom);
  for (Iterator i = rings.iterator(); i.hasNext(); ) {
    LinearRing ring = (LinearRing) i.next();
    if (! isSimpleLinearGeometry(ring))
      return false;
  }
  return true;
}
 
开发者ID:GitHubDroid,项目名称:geodroid_master_update,代码行数:19,代码来源:IsSimpleOp.java


注:本文中的com.vividsolutions.jts.geom.util.LinearComponentExtracter.getLines方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。