本文整理了Java中com.vividsolutions.jts.geom.GeometryFactory.toGeometry()
方法的一些代码示例,展示了GeometryFactory.toGeometry()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。GeometryFactory.toGeometry()
方法的具体详情如下:
包路径:com.vividsolutions.jts.geom.GeometryFactory
类名称:GeometryFactory
方法名:toGeometry
[英]Creates a Geometry with the same extent as the given envelope. The Geometry returned is guaranteed to be valid. To provide this behaviour, the following cases occur:
If the Envelope
is:
Envelope
为:代码示例来源:origin: opentripplanner/OpenTripPlanner
private Geometry crudeProjectedBuffer(Point pt, double distanceMeters) {
final double mPerDegreeLat = 111111.111111;
double lat = pt.getY();
double lonScale = Math.cos(Math.PI * lat / 180);
double latExpand = distanceMeters / mPerDegreeLat;
double lonExpand = latExpand / lonScale;
Envelope env = pt.getEnvelopeInternal();
env.expandBy(lonExpand, latExpand);
return gf.toGeometry(env);
}
代码示例来源:origin: com.vividsolutions/jts
private static Geometry clipGeometryCollection(Geometry geom, Envelope clipEnv)
{
Geometry clipPoly = geom.getFactory().toGeometry(clipEnv);
List clipped = new ArrayList();
for (int i = 0; i < geom.getNumGeometries(); i++) {
Geometry g = geom.getGeometryN(i);
Geometry result = null;
// don't clip unless necessary
if (clipEnv.contains(g.getEnvelopeInternal()))
result = g;
else if (clipEnv.intersects(g.getEnvelopeInternal())) {
result = clipPoly.intersection(g);
// keep vertex key info
result.setUserData(g.getUserData());
}
if (result != null && ! result.isEmpty()) {
clipped.add(result);
}
}
return geom.getFactory().createGeometryCollection(GeometryFactory.toGeometryArray(clipped));
}
}
代码示例来源:origin: osmandapp/Osmand
IGeometryFilter filter) {
final Geometry tileEnvelopeGeom = geomFactory.toGeometry(tileEnvelope);
代码示例来源:origin: com.vividsolutions/jts
/**
* Gets a Geometry representing the envelope (bounding box) of
* this <code>Geometry</code>.
* <p>
* If this <code>Geometry</code> is:
* <ul>
* <li>empty, returns an empty <code>Point</code>.
* <li>a point, returns a <code>Point</code>.
* <li>a line parallel to an axis, a two-vertex <code>LineString</code>
* <li>otherwise, returns a
* <code>Polygon</code> whose vertices are (minx miny, maxx miny,
* maxx maxy, minx maxy, minx miny).
* </ul>
*
*@return a Geometry representing the envelope of this Geometry
*
* @see GeometryFactory#toGeometry(Envelope)
*/
public Geometry getEnvelope() {
return getFactory().toGeometry(getEnvelopeInternal());
}
代码示例来源:origin: com.vividsolutions/jts
public Geometry getGeometry()
{
int level = recursionLevelForSize(numPts);
LineSegment baseLine = getSquareBaseLine();
Coordinate origin = baseLine.getCoordinate(0);
LinearRing[] holes = getHoles(level, origin.x, origin.y, getDiameter());
LinearRing shell = (LinearRing) ((Polygon) geomFactory.toGeometry(getSquareExtent())).getExteriorRing();
return geomFactory.createPolygon(
shell, holes);
}
代码示例来源:origin: org.opengis.cite/ets-kml2
/**
* Builds a Polygon from the given envelope.
*
* @param env
* A JTS envelope defining some spatial extent.
* @return A rectangular polygon that covers the same extent as the
* envelope.
*/
public Polygon buildPolygon(Envelope env) {
return (Polygon) this.geomFactory.toGeometry(env);
}
代码示例来源:origin: com.vividsolutions/jts
private void checkEnvelope()
{
if (distance < 0.0) return;
double padding = distance * MAX_ENV_DIFF_FRAC;
if (padding == 0.0) padding = 0.001;
Envelope expectedEnv = new Envelope(input.getEnvelopeInternal());
expectedEnv.expandBy(distance);
Envelope bufEnv = new Envelope(result.getEnvelopeInternal());
bufEnv.expandBy(padding);
if (! bufEnv.contains(expectedEnv)) {
isValid = false;
errorMsg = "Buffer envelope is incorrect";
errorIndicator = input.getFactory().toGeometry(bufEnv);
}
report("Envelope");
}
代码示例来源:origin: org.orbisgis/mapeditor
private EnvelopeFilter(Envelope envelope) {
GeometryFactory factory = new GeometryFactory();
this.envelope = factory.toGeometry(envelope);
}
代码示例来源:origin: org.orbisgis/h2gis-functions
@Override
public Geometry getResult() throws SQLException {
if(aggregatedEnvelope.isNull()) {
return null;
} else {
return new GeometryFactory().toGeometry(aggregatedEnvelope);
}
}
}
代码示例来源:origin: org.orbisgis/h2gis
@Override
public Geometry getResult() throws SQLException {
if(aggregatedEnvelope.isNull()) {
return null;
} else {
return new GeometryFactory().toGeometry(aggregatedEnvelope);
}
}
}
代码示例来源:origin: org.geotools/gt-shapefile-renderer
private Envelope intersectionWithNotEnvelope(Envelope bbox) {
Geometry notGeom = factory.toGeometry(notEnvelope);
Geometry andGeom = factory.toGeometry(bbox);
Envelope envelopeInternal = andGeom.difference(notGeom).getEnvelopeInternal();
bbox = envelopeInternal;
return bbox;
}
//
代码示例来源:origin: org.geotools/gt2-shapefile-renderer
private Envelope intersectionWithNotEnvelope(Envelope bbox) {
Geometry notGeom = factory.toGeometry(notEnvelope);
Geometry andGeom = factory.toGeometry(bbox);
Envelope envelopeInternal = andGeom.difference(notGeom).getEnvelopeInternal();
bbox = envelopeInternal;
return bbox;
}
//
代码示例来源:origin: com.conveyal/gtfs-lib
/**
* The Dutch island of Texel. The Netherlands data set includes a crazy all-to-all representation of Texel's
* on-demand transit service.
*/
public static Geometry getTexel() {
return geometryFactory.toGeometry(new Envelope(4.702663, 4.933548, 52.98069, 53.192047));
}
代码示例来源:origin: org.n52.series-api/proxy-dao
protected SpatialFilter createSpatialFilter(Envelope envelope, int srid) {
if (envelope == null) {
return null;
} else {
Geometry geom = new GeometryFactory(new PrecisionModel(PrecisionModel.FLOATING), srid).toGeometry(envelope);
String valueReference = Sos2Constants.VALUE_REFERENCE_SPATIAL_FILTERING_PROFILE;
return new SpatialFilter(SpatialOperator.BBOX, JTSGeometryConverter.convert(geom), valueReference);
}
}
}
代码示例来源:origin: org.orbisgis/core-map
public static Geometry clipToExtent(Geometry theGeom, Envelope extent) {
GeometryFactory geometryFactory = new GeometryFactory();
Envelope incExtent = new Envelope(extent);
incExtent.expandBy(extent.getWidth() / 10, extent.getHeight() / 10);
Geometry geometry = theGeom.intersection(geometryFactory.toGeometry(extent));
if (geometry.isEmpty()) {
return null;
} else {
return geometry;
}
}
}
代码示例来源:origin: com.eventsourcing/h2
/**
* Get the union.
*
* @param r the other geometry
* @return the union of this geometry envelope and another geometry envelope
*/
public Value getEnvelopeUnion(ValueGeometry r) {
GeometryFactory gf = new GeometryFactory();
Envelope mergedEnvelope = new Envelope(getGeometryNoCopy().getEnvelopeInternal());
mergedEnvelope.expandToInclude(r.getGeometryNoCopy().getEnvelopeInternal());
return get(gf.toGeometry(mergedEnvelope));
}
代码示例来源:origin: org.wowtools/h2
/**
* Get the union.
*
* @param r the other geometry
* @return the union of this geometry envelope and another geometry envelope
*/
public Value getEnvelopeUnion(ValueGeometry r) {
GeometryFactory gf = new GeometryFactory();
Envelope mergedEnvelope = new Envelope(getGeometryNoCopy().getEnvelopeInternal());
mergedEnvelope.expandToInclude(r.getGeometryNoCopy().getEnvelopeInternal());
return get(gf.toGeometry(mergedEnvelope));
}
代码示例来源:origin: bcdev/beam
private Geometry getTileGeometry(int tileX, int tileY, Dimension tileSize) {
int tileWidth = tileSize.width;
int tileHeight = tileSize.height;
double x1 = tileXToDegree(tileX, tileWidth);
double x2 = tileXToDegree(tileX + 1, tileWidth);
double y1 = tileYToDegree(tileY, tileHeight);
double y2 = tileYToDegree(tileY + 1, tileHeight);
return geometryFactory.toGeometry(new Envelope(x1, x2, y1, y2));
}
代码示例来源:origin: com.vividsolutions/jts-core
public Geometry getGeometry()
{
int level = recursionLevelForSize(numPts);
LineSegment baseLine = getSquareBaseLine();
Coordinate origin = baseLine.getCoordinate(0);
LinearRing[] holes = getHoles(level, origin.x, origin.y, getDiameter());
LinearRing shell = (LinearRing) ((Polygon) geomFactory.toGeometry(getSquareExtent())).getExteriorRing();
return geomFactory.createPolygon(
shell, holes);
}
代码示例来源:origin: org.integratedmodelling/klab-engine
public Geometry setBounds(IGrid grid, boolean swapAxis) {
xInterval = ((Grid)grid).getEWExtent() / width;
yInterval = ((Grid)grid).getNSExtent() / height;
Envelope env = swapAxis
? new Envelope(((Grid)grid).getSouth(), ((Grid)grid).getNorth(), ((Grid)grid).getWest(), ((Grid)grid).getEast())
: new Envelope(((Grid)grid).getWest(), ((Grid)grid).getEast(), ((Grid)grid).getSouth(), ((Grid)grid).getNorth());
return geoFactory.toGeometry(env);
}
内容来源于网络,如有侵权,请联系作者删除!