|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectcom.esri.adf.web.data.geometry.GeometryUtil
public final class GeometryUtil
GeometryUtil is a utility class that helps to determine spatial relations between two
WebGeometries. A WebGeometry submitted to any of GeometryUtil methods
must be an instance of WebPoint, WebMultiPoint, WebPolyline,
WebPolygon, or WebExtent classes. GeometryUtil methods are not defined
for other WebGeometry classes and UnsupportedOperationException is thrown if an
instance of other WebGeometry class is submitted. GeometryUtil permits to check for
presence of the following spatial relations: touch, inside, cross,
overlap, and disjoint. The relations are defined as described in the "A Small Set of
Formal Topological Relationships Suitable for End-User Interaction" paper by Eliseo Clementini et all. The JavaDoc
for each particular relation method includes a table illustrating topological situations when the relation holds
between the given geometries. Note that that GeometryUtil works with multipart geometries, i.e. with
WebPolygons that have several WebRings and with WebPolylines that
have several WebPaths. Note also that a WebPolyline is considered to be continuous
only if coinciding WebPaths are sharing end points. In other words, precision parameter is not taken
into account when checking for coincidence of WebPaths in a WebPolyline.
| Field Summary | |
|---|---|
static double |
DEFAULT_EPSILON
|
| Method Summary | |
|---|---|
static WebExtent |
computeWebExtent(WebGeometry geom)
Given a WebPoint, WebMultiPoint, WebPolyline, WebPolygon computes a minimal WebExtent that contains this WebGeometry. |
static boolean |
cross(WebGeometry geom1,
WebGeometry geom2)
|
static boolean |
cross(WebGeometry geometry1,
WebGeometry geometry2,
double precision)
Determines if "cross" relation holds between given geometries. |
static boolean |
disjoint(WebGeometry geom1,
WebGeometry geom2)
|
static boolean |
disjoint(WebGeometry geometry1,
WebGeometry geometry2,
double precision)
Determines if "disjoint" relation holds between given geometries. |
static java.util.List<WebRing> |
getExteriorRings(WebPolygon polygon)
|
static java.util.List<WebRing> |
getInteriorRings(WebPolygon polygon,
WebRing exteriorRing)
|
static boolean |
inside(WebGeometry geom1,
WebGeometry geom2)
|
static boolean |
inside(WebGeometry geometry1,
WebGeometry geometry2,
double precision)
Determines if "inside" relation holds between given geometries. |
static WebGeometry |
intersect(WebGeometry geometry1,
WebGeometry geometry2)
Returns an intersections of the given WebGeometries. |
static WebGeometry |
intersect(WebGeometry geometry1,
WebGeometry geometry2,
WebExtent extent)
Returns an intersections of the given WebGeometries. |
static boolean |
overlap(WebGeometry geom1,
WebGeometry geom2)
|
static boolean |
overlap(WebGeometry geometry1,
WebGeometry geometry2,
double precision)
Determines if "overlap" relation holds between given geometries. |
static boolean |
touch(WebGeometry geom1,
WebGeometry geom2)
|
static boolean |
touch(WebGeometry geometry1,
WebGeometry geometry2,
double precision)
Determines if "touch" relation holds between given geometries. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static double DEFAULT_EPSILON
| Method Detail |
|---|
public static boolean touch(WebGeometry geom1,
WebGeometry geom2)
public static boolean touch(WebGeometry geometry1,
WebGeometry geometry2,
double precision)
public static boolean inside(WebGeometry geom1,
WebGeometry geom2)
public static boolean inside(WebGeometry geometry1,
WebGeometry geometry2,
double precision)
public static boolean cross(WebGeometry geom1,
WebGeometry geom2)
public static boolean cross(WebGeometry geometry1,
WebGeometry geometry2,
double precision)
public static boolean overlap(WebGeometry geom1,
WebGeometry geom2)
public static boolean overlap(WebGeometry geometry1,
WebGeometry geometry2,
double precision)
public static boolean disjoint(WebGeometry geom1,
WebGeometry geom2)
public static boolean disjoint(WebGeometry geometry1,
WebGeometry geometry2,
double precision)
public static WebExtent computeWebExtent(WebGeometry geom)
geom - - a geometry whose WebExtent is calculated
public static WebGeometry intersect(WebGeometry geometry1,
WebGeometry geometry2)
public static WebGeometry intersect(WebGeometry geometry1,
WebGeometry geometry2,
WebExtent extent)
extent - the passed geometries must be inside this extentpublic static java.util.List<WebRing> getExteriorRings(WebPolygon polygon)
public static java.util.List<WebRing> getInteriorRings(WebPolygon polygon,
WebRing exteriorRing)
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||