public class Grids extends Object
Oblongs
and Hexagons
utility classes.Constructor and Description 

Grids() 
Modifier and Type  Method and Description 

static SimpleFeatureSource 
createHexagonalGrid(ReferencedEnvelope bounds,
double sideLen)
Creates a vector grid of hexagonal elements.

static SimpleFeatureSource 
createHexagonalGrid(ReferencedEnvelope bounds,
double sideLen,
double vertexSpacing)
Creates a vector grid of hexagonal elements represented by 'densified' polygons.

static SimpleFeatureSource 
createHexagonalGrid(ReferencedEnvelope bounds,
double sideLen,
double vertexSpacing,
GridFeatureBuilder builder)
Creates a vector grid of hexagonal elements represented by 'densified' polygons.

static SimpleFeatureSource 
createOvalGrid(ReferencedEnvelope bounds,
double sideLen)
Creates a vector grid of oval elements.

static SimpleFeatureSource 
createOvalGrid(ReferencedEnvelope bounds,
double sideLen,
GridFeatureBuilder builder)
Creates a vector grid of square elements represented by 'densified' polygons.

static SimpleFeatureSource 
createSquareGrid(ReferencedEnvelope bounds,
double sideLen)
Creates a vector grid of square elements.

static SimpleFeatureSource 
createSquareGrid(ReferencedEnvelope bounds,
double sideLen,
double vertexSpacing)
Creates a vector grid of square elements represented by 'densified' polygons.

static SimpleFeatureSource 
createSquareGrid(ReferencedEnvelope bounds,
double sideLen,
double vertexSpacing,
GridFeatureBuilder builder)
Creates a vector grid of square elements represented by 'densified' polygons.

public static SimpleFeatureSource createSquareGrid(ReferencedEnvelope bounds, double sideLen)
null
coordinate reference system is permitted.
The grid's origin is the minimum X and Y point of the envelope. If the width and/or height of the bounding envelope is not a simple multiple of the requested side length, there will be some unfilled space.
Each square in the returned grid is represented by a SimpleFeature
. The feature
type has two properties:
bounds
 bounds of the gridsideLen
 the side length of grid elementsIllegalArgumentException
 if bounds is null or empty; or if sideLen is <=
0public static SimpleFeatureSource createSquareGrid(ReferencedEnvelope bounds, double sideLen, double vertexSpacing)
vertexSpacing
which specifies the maximum distance between adjacent vertices. Vertices are
added more or less uniformly.
The coordinate reference system is taken from the input bounds. A null
coordinate
reference system is permitted.
The grid's origin is the minimum X and Y point of the envelope. If the width and/or height of the bounding envelope is not a simple multiple of the requested side length, there will be some unfilled space.
Each square in the returned grid is represented by a SimpleFeature
. The feature
type has two properties:
bounds
 bounds of the gridsideLen
 the side length of grid elementsvertexSpacing
 maximum distance between adjacent vertices in a grid element; if <= 0
or >= sideLen / 2.0
it is ignored and the polygons will not be densifiedIllegalArgumentException
 if bounds is null or empty; or if sideLen is <=
0public static SimpleFeatureSource createSquareGrid(ReferencedEnvelope bounds, double sideLen, double vertexSpacing, GridFeatureBuilder builder)
vertexSpacing
which specifies the maximum distance between adjacent vertices. Vertices are
added more or less uniformly.
The coordinate reference system is taken from the GridFeatureBuilder
. A null
coordinate reference system is permitted but if both the builder and bounding envelope
have nonnull
reference systems set they must be the same.
The grid's origin is the minimum X and Y point of the envelope. If the width and/or height of the bounding envelope is not a simple multiple of the requested side length, there will be some unfilled space.
bounds
 bounds of the gridsideLen
 the side length of grid elementsvertexSpacing
 maximum distance between adjacent vertices in a grid element; if <= 0
or >= sideLen / 2.0
the polygons will not be densifiedbuilder
 the GridFeatureBuilder
used to control feature creation and the
setting of feature attribute valuesIllegalArgumentException
 if bounds is null or empty; or if sideLen is <=
0;
or if builder is null; or if the CoordinateReferenceSystems
set for the bounds
and the GridFeatureBuilder
are both nonnull but differentpublic static SimpleFeatureSource createHexagonalGrid(ReferencedEnvelope bounds, double sideLen)
The hexagons created by this method are orientated with a pair of edges parallel to the
top and bottom of the bounding envelope (org.geotools.grid.hexagon.Hexagon.Orientation#FLAT). The bounding rectangle of each hexagon
has width sideLen * 2.0
and height sideLen * sqrt(3.0)
.
The grid's origin is the minimum X and Y point of the envelope.
The feature type of grid features has two properties:
bounds
 bounds of the gridsideLen
 the lengthIllegalArgumentException
 if bounds is null or empty; or if sideLen is <=
0public static SimpleFeatureSource createHexagonalGrid(ReferencedEnvelope bounds, double sideLen, double vertexSpacing)
vertexSpacing
which specifies the maximum distance between adjacent vertices. Vertices are
added more or less uniformly.
Hexagon size is expressed as side length. To create hexagons of specified area you can use the static Hexagons.areaToSideLength(double) method to calculate the equivalent side length.
The hexagons created by this method are orientated with a pair of edges parallel to the
top and bottom of the bounding envelope (org.geotools.grid.hexagon.Hexagon.Orientation#FLAT). The bounding rectangle of each hexagon
has width sideLen * 2.0
and height sideLen * sqrt(3.0)
.
The grid's origin is the minimum X and Y point of the envelope.
The feature type of grid features has two properties:
bounds
 bounds of the gridsideLen
 the lengthvertexSpacing
 maximum distance between adjacent vertices in a grid element; if <= 0
or >= sideLen / 2.0
the polygons will not be densifiedIllegalArgumentException
 if bounds is null or empty; or if sideLen is <=
0public static SimpleFeatureSource createHexagonalGrid(ReferencedEnvelope bounds, double sideLen, double vertexSpacing, GridFeatureBuilder builder)
vertexSpacing
which specifies the maximum distance between adjacent vertices. Vertices are
added more or less uniformly.
Hexagon size is expressed as side length. To create hexagons of specified area you can use the static Hexagons.areaToSideLength(double) method to calculate the equivalent side length.
The hexagons created by this method are orientated with a pair of edges parallel to the
top and bottom of the bounding envelope (org.geotools.grid.hexagon.Hexagon.Orientation#FLAT). The bounding rectangle of each hexagon
has width sideLen * 2.0
and height sideLen * sqrt(3.0)
.
The grid's origin is the minimum X and Y point of the envelope.
The feature type of grid features has two properties:
bounds
 bounds of the gridsideLen
 the lengthvertexSpacing
 maximum distance between adjacent vertices in a grid element; if <= 0
or >= sideLen / 2.0
the polygons will not be densifiedbuilder
 the GridFeatureBuilder
used to control feature creation and the
setting of feature attribute valuesIllegalArgumentException
 if bounds is null or empty; or if sideLen is <=
0;
or if builder is null; or if the CoordinateReferenceSystems
set for the bounds
and the GridFeatureBuilder
are both nonnull but differentpublic static SimpleFeatureSource createOvalGrid(ReferencedEnvelope bounds, double sideLen)
null
coordinate reference system is permitted.
The grid's origin is the minimum X and Y point of the envelope. If the width and/or height of the bounding envelope is not a simple multiple of the requested side length, there will be some unfilled space.
Each oval in the returned grid is represented by a SimpleFeature
. The feature type
has two properties:
bounds
 bounds of the gridsideLen
 the side length of grid elementsIllegalArgumentException
 if bounds is null or empty; or if sideLen is <=
0public static SimpleFeatureSource createOvalGrid(ReferencedEnvelope bounds, double sideLen, GridFeatureBuilder builder)
vertexSpacing
which specifies the maximum distance between adjacent vertices. Vertices are
added more or less uniformly.
The coordinate reference system is taken from the GridFeatureBuilder
. A null
coordinate reference system is permitted but if both the builder and bounding envelope
have nonnull
reference systems set they must be the same.
The grid's origin is the minimum X and Y point of the envelope. If the width and/or height of the bounding envelope is not a simple multiple of the requested side length, there will be some unfilled space.
bounds
 bounds of the gridsideLen
 the side length of grid elementsbuilder
 the GridFeatureBuilder
used to control feature creation and the
setting of feature attribute valuesIllegalArgumentException
 if bounds is null or empty; or if sideLen is <=
0;
or if builder is null; or if the CoordinateReferenceSystems
set for the bounds
and the GridFeatureBuilder
are both nonnull but differentCopyright © 1996–2023 Geotools. All rights reserved.