org.geotools.data.shapefile.shp
Class JTSUtilities

Object
  extended by JTSUtilities

public class JTSUtilities
extends Object

A collection of utility methods for use with JTS and the shapefile package.

Author:
aaime, Ian Schneider

Method Summary
static Geometry convertToCollection(Geometry geom, ShapeType type)
           
static Class findBestGeometryClass(ShapeType type)
           
static ShapeType findBestGeometryType(Geometry geom)
          Determine the best ShapeType for a given Geometry.
static ShapeType getShapeType(Class featureClass)
          Determine the default ShapeType for a featureClass.
static ShapeType getShapeType(GeometryDescriptor gd)
          Determine the default ShapeType using the descriptor and eventually the geometry to guess the coordinate dimensions if not reported in the descriptor hints
static ShapeType getShapeType(Geometry geom, int shapeFileDimentions)
          Determine the best ShapeType for a geometry with the given dimension.
static int guessCoorinateDims(Coordinate[] cs)
          Returns:
2 for 2d (default)
4 for 3d - one of the oordinates has a non-NaN z value
(3 is for x,y,m but thats not supported yet)
static MultiPolygon makeGoodShapeMultiPolygon(MultiPolygon mp)
          Like makeGoodShapePolygon, but applied towards a multi polygon.
static Polygon makeGoodShapePolygon(Polygon p)
          Create a nice Polygon from the given Polygon.
static LinearRing reverseRing(LinearRing lr)
          Does what it says, reverses the order of the Coordinates in the ring.
static double[] zMinMax(Coordinate[] cs)
          Deprecated. use zMinMax(CoordinateSequence)
static void zMinMax(CoordinateSequence cs, double[] target)
          Determine the min and max "z" values in an array of Coordinates.
 
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

zMinMax

public static final double[] zMinMax(Coordinate[] cs)
Deprecated. use zMinMax(CoordinateSequence)

Determine the min and max "z" values in an array of Coordinates.

Parameters:
cs - The array to search.
Returns:
An array of size 2, index 0 is min, index 1 is max.

zMinMax

public static final void zMinMax(CoordinateSequence cs,
                                 double[] target)
Determine the min and max "z" values in an array of Coordinates.

Parameters:
cs - The array to search.
target - array with at least two elements where to hold the min and max zvalues. target[0] will be filled with the minimum zvalue, target[1] with the maximum. The array current values, if not NaN, will be taken into acount in the computation.

findBestGeometryType

public static final ShapeType findBestGeometryType(Geometry geom)
Determine the best ShapeType for a given Geometry.

Parameters:
geom - The Geometry to analyze.
Returns:
The best ShapeType for the Geometry.

findBestGeometryClass

public static final Class findBestGeometryClass(ShapeType type)

reverseRing

public static final LinearRing reverseRing(LinearRing lr)
Does what it says, reverses the order of the Coordinates in the ring.

This is different then lr.reverses() in that a copy is produced using a new coordinate sequence.

Parameters:
lr - The ring to reverse.
Returns:
A new ring with the reversed Coordinates.

makeGoodShapePolygon

public static final Polygon makeGoodShapePolygon(Polygon p)
Create a nice Polygon from the given Polygon. Will ensure that shells are clockwise and holes are counter-clockwise. Capiche?

Parameters:
p - The Polygon to make "nice".
Returns:
The "nice" Polygon.

makeGoodShapeMultiPolygon

public static final MultiPolygon makeGoodShapeMultiPolygon(MultiPolygon mp)
Like makeGoodShapePolygon, but applied towards a multi polygon.

Parameters:
mp - The MultiPolygon to "niceify".
Returns:
The "nicified" MultiPolygon.

guessCoorinateDims

public static final int guessCoorinateDims(Coordinate[] cs)
Returns:
2 for 2d (default)
4 for 3d - one of the oordinates has a non-NaN z value
(3 is for x,y,m but thats not supported yet)

Parameters:
cs - The array of Coordinates to search.
Returns:
The dimension.

convertToCollection

public static Geometry convertToCollection(Geometry geom,
                                           ShapeType type)

getShapeType

public static final ShapeType getShapeType(Geometry geom,
                                           int shapeFileDimentions)
                                    throws ShapefileException
Determine the best ShapeType for a geometry with the given dimension.

Parameters:
geom - The Geometry to examine.
shapeFileDimentions - The dimension 2,3 or 4.
Returns:
The best ShapeType.
Throws:
ShapefileException - If theres a problem, like a bogus Geometry.

getShapeType

public static final ShapeType getShapeType(Class featureClass)
                                    throws ShapefileException
Determine the default ShapeType for a featureClass. Shapetype will be the 2D shapetype.

Parameters:
featureClass - The Geometry to examine.
Returns:
The best ShapeType.
Throws:
ShapefileException - If theres a problem, like a bogus feature class.

getShapeType

public static final ShapeType getShapeType(GeometryDescriptor gd)
                                    throws ShapefileException
Determine the default ShapeType using the descriptor and eventually the geometry to guess the coordinate dimensions if not reported in the descriptor hints

Parameters:
gd -
g -
Returns:
Throws:
ShapefileException


Copyright © 1996-2014 Geotools. All Rights Reserved.