本文整理汇总了Java中com.vividsolutions.jts.geom.util.LinearComponentExtracter类的典型用法代码示例。如果您正苦于以下问题:Java LinearComponentExtracter类的具体用法?Java LinearComponentExtracter怎么用?Java LinearComponentExtracter使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
LinearComponentExtracter类属于com.vividsolutions.jts.geom.util包,在下文中一共展示了LinearComponentExtracter类的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);
}
示例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);
}
示例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;
}
示例4: getLines
import com.vividsolutions.jts.geom.util.LinearComponentExtracter; //导入依赖的package包/类
private Collection<Geometry> getLines(final Geometry geom) {
final List<Geometry> linesList = new ArrayList<Geometry>();
final LinearComponentExtracter lineFilter = new LinearComponentExtracter(
linesList);
geom.apply(lineFilter);
return linesList;
}
示例5: getLines
import com.vividsolutions.jts.geom.util.LinearComponentExtracter; //导入依赖的package包/类
private Collection<Geometry> getLines(final Geometry geom1, final Geometry geom2) {
final List<Geometry> linesList = new ArrayList<Geometry>();
final LinearComponentExtracter lineFilter = new LinearComponentExtracter(
linesList);
geom1.apply(lineFilter);
geom2.apply(lineFilter);
return linesList;
}
示例6: 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;
}
示例7: 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;
}
示例8: getPolygonLines
import com.vividsolutions.jts.geom.util.LinearComponentExtracter; //导入依赖的package包/类
private Geometry getPolygonLines(Geometry g) {
List lines = new ArrayList();
LinearComponentExtracter lineExtracter = new LinearComponentExtracter(lines);
List polys = PolygonExtracter.getPolygons(g);
for (Object poly1 : polys) {
Polygon poly = (Polygon) poly1;
poly.apply(lineExtracter);
}
return g.getFactory().buildGeometry(lines);
}
示例9: 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;
}
示例10: 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);
}
}
示例11: 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;
}
示例12: extractLines
import com.vividsolutions.jts.geom.util.LinearComponentExtracter; //导入依赖的package包/类
private List extractLines(Collection geoms) {
List lines = new ArrayList();
LinearComponentExtracter lce = new LinearComponentExtracter(lines);
for (Object geom1 : geoms) {
Geometry geom = (Geometry) geom1;
geom.apply(lce);
}
return lines;
}
示例13: 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;
}
示例14: 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;
}
示例15: getPolygonLines
import com.vividsolutions.jts.geom.util.LinearComponentExtracter; //导入依赖的package包/类
private Geometry getPolygonLines(Geometry g) {
List lines = new ArrayList();
LinearComponentExtracter lineExtracter = new LinearComponentExtracter(lines);
List polys = PolygonExtracter.getPolygons(g);
for (Iterator i = polys.iterator(); i.hasNext(); ) {
Polygon poly = (Polygon) i.next();
poly.apply(lineExtracter);
}
return g.getFactory().buildGeometry(lines);
}