Make a grid of polygons, using PIDs and SIDs according to the input arguments.
makeGrid(x, y, byrow=TRUE, addSID=TRUE, projection=NULL, zone =NULL, type="rectangle")
Arguments
x: numeric -- vector of X-coordinates (of length m).
y: numeric -- vector of Y-coordinates (of length n).
byrow: logical -- if TRUEandtype='rectangle', increment PID along X (column-wise);
-- if TRUEandtype='hexagon', create flat-topped hexagons contiguous by column and increment PID by column;
-- if FALSEandtype='hexagon', create pointy-topped hexagons contiguous by row and increment PID by row.
addSID: logical -- if TRUE, include an SID field in the resulting PolySet , incremented by the alternative dimension used by PID.
projection: character -- optional projection attribute to add to the PolySet.
zone: numeric -- optional zone attribute to add to the PolySet.
type: character -- type of regular tesselation; choices: "rectangle" or "hexagon".
Details
This function makes a grid of polygons, labeling them according to byrow and addSID.
For rectangular tesselations (grid cells), the variables i and j
indicate column and row numbers, respectively, where the lower-left cell of the grid is (1, 1):
byrow=TRUE and addSID=
FALSE implies PID=i+(j−1)∗(m−1)
byrow=FALSE and addSID=
FALSE implies PID=j+(i−1)∗(n−1)
byrow=TRUE and addSID=
TRUE implies PID=i, SID=j
byrow=FALSE and addSID=
TRUE implies PID=j, SID=i
For hexagonal tesselations (grid cells), i indicates columns for flat-topped hexagons and rows for pointy-topped hexagons. The reverse is true for j. Stemming from their six-sided nature, hexagons will adjoin along a long-edge by row when their orientation is such that one vertex is higher than all the others. Hexagons will adjoin along a long-edge by column when their orientation shows two uppermost vertices.
Returns
PolySet with columns PID, SID
(ifaddSID=TRUE), POS, X, and Y.
The PolySet is a set of rectangular grid cells when type='rectangle', with vertices: