com.partnersoft.geometry
Class Grid

java.lang.Object
  extended by com.partnersoft.geometry.Grid

public class Grid
extends java.lang.Object

A square grid in space, defined as an origin and rectangular cell size. Coordinates are stored as two UInt16s stored in a single UInt32. x

Author:
Paul Reavis Copyright 2002 Partner Software, Inc.

Field Summary
 double cellHeight
           
 double cellWidth
           
 double minim_height
           
 double minim_width
           
 double originX
           
 double originY
           
 
Constructor Summary
Grid()
           
Grid(double originX, double originY, double cellSize)
           
Grid(double originX, double originY, double cellWidth, double cellHeight)
           
 
Method Summary
 double cellToX(int cellX)
           
 double cellToY(int cellY)
           
 java.util.Map chop(DoubleBuffer coords)
          Chops up a Polyline into multiple cells.
 java.util.Map chop(Polygon shape)
          Chops up a Polygon into multiple cells.
static int packGridCoordinate(int x, int y)
          Converts a grid coordinate (x, y) into a single int.
 void throwInSoup(java.util.Map results, double x1, double y1, double x2, double y2)
          Adds to cell in results.
 java.lang.String toString()
           
static int[] unpackGridCoordinate(int packedCoord)
          Unpacks a grid coordinate into an int array.
 int xToCell(double x)
           
 int yToCell(double y)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

originX

public double originX

originY

public double originY

cellWidth

public double cellWidth

cellHeight

public double cellHeight

minim_width

public double minim_width

minim_height

public double minim_height
Constructor Detail

Grid

public Grid()

Grid

public Grid(double originX,
            double originY,
            double cellSize)

Grid

public Grid(double originX,
            double originY,
            double cellWidth,
            double cellHeight)
Method Detail

packGridCoordinate

public static final int packGridCoordinate(int x,
                                           int y)
Converts a grid coordinate (x, y) into a single int. The first short is x and the second is y. All numbers are unsigned.


unpackGridCoordinate

public static final int[] unpackGridCoordinate(int packedCoord)
Unpacks a grid coordinate into an int array. Order is x, y.


xToCell

public final int xToCell(double x)

yToCell

public final int yToCell(double y)

cellToX

public final double cellToX(int cellX)

cellToY

public final double cellToY(int cellY)

chop

public java.util.Map chop(Polygon shape)
Chops up a Polygon into multiple cells. Returns a Map containing the results; key is the GridCoordinate and the value is a Polygon.


chop

public java.util.Map chop(DoubleBuffer coords)
Chops up a Polyline into multiple cells. Returns a Map containing the results; key is the GridCoordinate and the value is a PolylineArray with one or more polylines.


toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

throwInSoup

public final void throwInSoup(java.util.Map results,
                              double x1,
                              double y1,
                              double x2,
                              double y2)
Adds to cell in results.