public class GeoUtils
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
static int |
emptyBit |
static int |
lineBit |
static int |
pointBit |
static int |
polyBit |
Constructor and Description |
---|
GeoUtils() |
Modifier and Type | Method and Description |
---|---|
static com.vividsolutions.jts.geom.Coordinate |
along(double d,
com.vividsolutions.jts.geom.Coordinate q,
com.vividsolutions.jts.geom.Coordinate r) |
static boolean |
clockwise(com.vividsolutions.jts.geom.Geometry geo) |
static com.vividsolutions.jts.geom.CoordinateList |
ConvexHullWrap(com.vividsolutions.jts.geom.CoordinateList coords) |
static com.vividsolutions.jts.geom.Geometry |
createPlume(com.vividsolutions.jts.geom.Coordinate[] coords,
double radius1,
double radius2)
Generate a plume Polygon using Coordinate[] bounded on each end by circles of radius1 and radius2.
|
static double |
distance(com.vividsolutions.jts.geom.Coordinate p1,
com.vividsolutions.jts.geom.Coordinate p2) |
static double |
dot(com.vividsolutions.jts.geom.Coordinate p,
com.vividsolutions.jts.geom.Coordinate q) |
static boolean |
geometriesEqual(com.vividsolutions.jts.geom.Geometry geo1,
com.vividsolutions.jts.geom.Geometry geo2) |
static boolean |
geometryIsSegmentOf(com.vividsolutions.jts.geom.Geometry geo1,
com.vividsolutions.jts.geom.Geometry geo2) |
static double |
getBearing180(com.vividsolutions.jts.geom.Coordinate startPt,
com.vividsolutions.jts.geom.Coordinate endPt) |
static double |
getBearing360(com.vividsolutions.jts.geom.Coordinate startPt,
com.vividsolutions.jts.geom.Coordinate endPt) |
static double |
getBearingRadians(com.vividsolutions.jts.geom.Coordinate startPt,
com.vividsolutions.jts.geom.Coordinate endPt) |
static com.vividsolutions.jts.geom.Coordinate |
getCenter(com.vividsolutions.jts.geom.Coordinate p1,
com.vividsolutions.jts.geom.Coordinate p2,
com.vividsolutions.jts.geom.Coordinate p3) |
static com.vividsolutions.jts.geom.Coordinate |
getClosestPointOnLine(com.vividsolutions.jts.geom.Coordinate pt,
com.vividsolutions.jts.geom.Coordinate p0,
com.vividsolutions.jts.geom.Coordinate p1) |
static com.vividsolutions.jts.geom.Coordinate |
getClosestPointOnSegment(com.vividsolutions.jts.geom.Coordinate pt,
com.vividsolutions.jts.geom.Coordinate p0,
com.vividsolutions.jts.geom.Coordinate p1) |
static double |
getDistance(com.vividsolutions.jts.geom.Coordinate pt,
com.vividsolutions.jts.geom.Coordinate p0,
com.vividsolutions.jts.geom.Coordinate p1) |
static com.vividsolutions.jts.geom.Coordinate[] |
getDistanceAngleArray(com.vividsolutions.jts.geom.LineString ring) |
static com.vividsolutions.jts.geom.Coordinate[] |
getDistanceBearingArray(com.vividsolutions.jts.geom.LineString ring) |
static double |
getDistanceFromPointToGeometry(com.vividsolutions.jts.geom.Coordinate coord,
com.vividsolutions.jts.geom.Geometry geo) |
static com.vividsolutions.jts.geom.Coordinate |
getIntersection(com.vividsolutions.jts.geom.Coordinate p1,
com.vividsolutions.jts.geom.Coordinate p2,
com.vividsolutions.jts.geom.Coordinate p3,
com.vividsolutions.jts.geom.Coordinate p4) |
static double |
interiorAngle(com.vividsolutions.jts.geom.Coordinate p1,
com.vividsolutions.jts.geom.Coordinate p2,
com.vividsolutions.jts.geom.Coordinate p3) |
static com.vividsolutions.jts.geom.Coordinate |
intersect(com.vividsolutions.jts.geom.Coordinate P1,
com.vividsolutions.jts.geom.Coordinate P2,
com.vividsolutions.jts.geom.Coordinate P3,
com.vividsolutions.jts.geom.Coordinate P4) |
static com.vividsolutions.jts.geom.Coordinate |
intersectSegments(com.vividsolutions.jts.geom.Coordinate P1,
com.vividsolutions.jts.geom.Coordinate P2,
com.vividsolutions.jts.geom.Coordinate P3,
com.vividsolutions.jts.geom.Coordinate P4) |
static double |
mag(com.vividsolutions.jts.geom.Coordinate q) |
static com.vividsolutions.jts.geom.LineString |
MakeRoundCorner(com.vividsolutions.jts.geom.Coordinate A,
com.vividsolutions.jts.geom.Coordinate B,
com.vividsolutions.jts.geom.Coordinate C,
com.vividsolutions.jts.geom.Coordinate D,
double r,
boolean arcOnly) |
static com.vividsolutions.jts.geom.Coordinate |
perpendicularVector(com.vividsolutions.jts.geom.Coordinate v1,
com.vividsolutions.jts.geom.Coordinate v2,
double dist,
boolean toLeft) |
static boolean |
pointToRight(com.vividsolutions.jts.geom.Coordinate pt,
com.vividsolutions.jts.geom.Coordinate p1,
com.vividsolutions.jts.geom.Coordinate p2) |
static com.vividsolutions.jts.geom.Geometry |
reducePoints(com.vividsolutions.jts.geom.Geometry geo,
double tolerance) |
static com.vividsolutions.jts.geom.LinearRing |
removeRedundantPoints(com.vividsolutions.jts.geom.LineString ring) |
static com.vividsolutions.jts.geom.Coordinate |
rotPt(com.vividsolutions.jts.geom.Coordinate inpt,
com.vividsolutions.jts.geom.Coordinate rpt,
double theta) |
static java.util.BitSet |
setBit(java.util.BitSet bitSet,
com.vividsolutions.jts.geom.Geometry geometry) |
static com.vividsolutions.jts.geom.Polygon |
taperedBufferSegment(com.vividsolutions.jts.geom.Coordinate p0,
com.vividsolutions.jts.geom.Coordinate p1,
double d1,
double d2) |
static double |
theta(com.vividsolutions.jts.geom.Coordinate p1,
com.vividsolutions.jts.geom.Coordinate p2) |
static com.vividsolutions.jts.geom.Coordinate |
unitVec(com.vividsolutions.jts.geom.Coordinate q) |
static com.vividsolutions.jts.geom.Coordinate |
vectorAdd(com.vividsolutions.jts.geom.Coordinate q,
com.vividsolutions.jts.geom.Coordinate r) |
static com.vividsolutions.jts.geom.Coordinate |
vectorBetween(com.vividsolutions.jts.geom.Coordinate q,
com.vividsolutions.jts.geom.Coordinate r) |
static com.vividsolutions.jts.geom.Coordinate |
vectorTimesScalar(com.vividsolutions.jts.geom.Coordinate q,
double m) |
public static final int emptyBit
public static final int pointBit
public static final int lineBit
public static final int polyBit
public static double mag(com.vividsolutions.jts.geom.Coordinate q)
public static double distance(com.vividsolutions.jts.geom.Coordinate p1, com.vividsolutions.jts.geom.Coordinate p2)
public static com.vividsolutions.jts.geom.Coordinate unitVec(com.vividsolutions.jts.geom.Coordinate q)
public static com.vividsolutions.jts.geom.Coordinate vectorAdd(com.vividsolutions.jts.geom.Coordinate q, com.vividsolutions.jts.geom.Coordinate r)
public static com.vividsolutions.jts.geom.Coordinate vectorBetween(com.vividsolutions.jts.geom.Coordinate q, com.vividsolutions.jts.geom.Coordinate r)
public static com.vividsolutions.jts.geom.Coordinate vectorTimesScalar(com.vividsolutions.jts.geom.Coordinate q, double m)
public static double dot(com.vividsolutions.jts.geom.Coordinate p, com.vividsolutions.jts.geom.Coordinate q)
public static com.vividsolutions.jts.geom.Coordinate rotPt(com.vividsolutions.jts.geom.Coordinate inpt, com.vividsolutions.jts.geom.Coordinate rpt, double theta)
public static boolean pointToRight(com.vividsolutions.jts.geom.Coordinate pt, com.vividsolutions.jts.geom.Coordinate p1, com.vividsolutions.jts.geom.Coordinate p2)
public static com.vividsolutions.jts.geom.Coordinate perpendicularVector(com.vividsolutions.jts.geom.Coordinate v1, com.vividsolutions.jts.geom.Coordinate v2, double dist, boolean toLeft)
public static double getBearing180(com.vividsolutions.jts.geom.Coordinate startPt, com.vividsolutions.jts.geom.Coordinate endPt)
public static double getBearingRadians(com.vividsolutions.jts.geom.Coordinate startPt, com.vividsolutions.jts.geom.Coordinate endPt)
public static double getBearing360(com.vividsolutions.jts.geom.Coordinate startPt, com.vividsolutions.jts.geom.Coordinate endPt)
public static double theta(com.vividsolutions.jts.geom.Coordinate p1, com.vividsolutions.jts.geom.Coordinate p2)
public static com.vividsolutions.jts.geom.CoordinateList ConvexHullWrap(com.vividsolutions.jts.geom.CoordinateList coords)
public static double getDistance(com.vividsolutions.jts.geom.Coordinate pt, com.vividsolutions.jts.geom.Coordinate p0, com.vividsolutions.jts.geom.Coordinate p1)
public static com.vividsolutions.jts.geom.Coordinate getClosestPointOnSegment(com.vividsolutions.jts.geom.Coordinate pt, com.vividsolutions.jts.geom.Coordinate p0, com.vividsolutions.jts.geom.Coordinate p1)
public static com.vividsolutions.jts.geom.Coordinate getClosestPointOnLine(com.vividsolutions.jts.geom.Coordinate pt, com.vividsolutions.jts.geom.Coordinate p0, com.vividsolutions.jts.geom.Coordinate p1)
public static com.vividsolutions.jts.geom.Coordinate along(double d, com.vividsolutions.jts.geom.Coordinate q, com.vividsolutions.jts.geom.Coordinate r)
public static double interiorAngle(com.vividsolutions.jts.geom.Coordinate p1, com.vividsolutions.jts.geom.Coordinate p2, com.vividsolutions.jts.geom.Coordinate p3)
public static com.vividsolutions.jts.geom.Coordinate[] getDistanceBearingArray(com.vividsolutions.jts.geom.LineString ring)
ring
- - LinearRing represented as LineString to analyzepublic static com.vividsolutions.jts.geom.Coordinate[] getDistanceAngleArray(com.vividsolutions.jts.geom.LineString ring)
ring
- - LinearRing represented as LineString to analyzepublic static com.vividsolutions.jts.geom.LinearRing removeRedundantPoints(com.vividsolutions.jts.geom.LineString ring)
ring
- - a LineString representing a linear ringpublic static com.vividsolutions.jts.geom.Geometry reducePoints(com.vividsolutions.jts.geom.Geometry geo, double tolerance)
public static boolean clockwise(com.vividsolutions.jts.geom.Geometry geo)
public static com.vividsolutions.jts.geom.Coordinate intersect(com.vividsolutions.jts.geom.Coordinate P1, com.vividsolutions.jts.geom.Coordinate P2, com.vividsolutions.jts.geom.Coordinate P3, com.vividsolutions.jts.geom.Coordinate P4)
public static com.vividsolutions.jts.geom.Coordinate getIntersection(com.vividsolutions.jts.geom.Coordinate p1, com.vividsolutions.jts.geom.Coordinate p2, com.vividsolutions.jts.geom.Coordinate p3, com.vividsolutions.jts.geom.Coordinate p4)
public static com.vividsolutions.jts.geom.Coordinate intersectSegments(com.vividsolutions.jts.geom.Coordinate P1, com.vividsolutions.jts.geom.Coordinate P2, com.vividsolutions.jts.geom.Coordinate P3, com.vividsolutions.jts.geom.Coordinate P4)
public static com.vividsolutions.jts.geom.Coordinate getCenter(com.vividsolutions.jts.geom.Coordinate p1, com.vividsolutions.jts.geom.Coordinate p2, com.vividsolutions.jts.geom.Coordinate p3)
public static java.util.BitSet setBit(java.util.BitSet bitSet, com.vividsolutions.jts.geom.Geometry geometry)
public static com.vividsolutions.jts.geom.LineString MakeRoundCorner(com.vividsolutions.jts.geom.Coordinate A, com.vividsolutions.jts.geom.Coordinate B, com.vividsolutions.jts.geom.Coordinate C, com.vividsolutions.jts.geom.Coordinate D, double r, boolean arcOnly)
public static boolean geometriesEqual(com.vividsolutions.jts.geom.Geometry geo1, com.vividsolutions.jts.geom.Geometry geo2)
public static double getDistanceFromPointToGeometry(com.vividsolutions.jts.geom.Coordinate coord, com.vividsolutions.jts.geom.Geometry geo)
public static boolean geometryIsSegmentOf(com.vividsolutions.jts.geom.Geometry geo1, com.vividsolutions.jts.geom.Geometry geo2)
public static com.vividsolutions.jts.geom.Geometry createPlume(com.vividsolutions.jts.geom.Coordinate[] coords, double radius1, double radius2)
coords
- - Coordinate[] sequence of points derived from a LineString.radius1
- - the radius around the first point in coords.radius2
- - the radius around the last point in coords.public static com.vividsolutions.jts.geom.Polygon taperedBufferSegment(com.vividsolutions.jts.geom.Coordinate p0, com.vividsolutions.jts.geom.Coordinate p1, double d1, double d2)