本文整理汇总了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);
}
示例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: 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;
}
示例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;
}
示例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;
}
示例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);
}
}
示例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;
}
示例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;
}
示例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;
}
示例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);
}
示例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;
}
示例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);
}
}
示例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;
}
示例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;
}