Adjusts a raster extent so that it can encompass the tile layout.
Adjusts a raster extent so that it can encompass the tile layout. Will resample the extent, but keep the resolution, and preserve north and west borders
This method copies gdalwarp -tap logic:
This method copies gdalwarp -tap logic:
The actual code reference: https://github.com/OSGeo/gdal/blob/v2.3.2/gdal/apps/gdal_rasterize_lib.cpp#L402-L461 The actual part with the -tap logic: https://github.com/OSGeo/gdal/blob/v2.3.2/gdal/apps/gdal_rasterize_lib.cpp#L455-L461
The initial PR that introduced that feature in GDAL 1.8.0: https://trac.osgeo.org/gdal/attachment/ticket/3772/gdal_tap.patch A discussion thread related to it: https://lists.osgeo.org/pipermail/gdal-dev/2010-October/thread.html#26209
Combine two different RasterExtents (which must have the same cellsizes).
Combine two different RasterExtents (which must have the same cellsizes). The result is a new extent at the same resolution.
Combine two different GridExtents (which must have the same cellsizes).
Combine two different GridExtents (which must have the same cellsizes). The result is a new extent at the same resolution.
Returns a GridExtent that with this grid's resolution.
Returns a GridExtent that with this grid's resolution.
This function will generate an extent that lines up with a grid having
an origin at the given point and grid cells of the size given by the
cellSize of the GridExtent. The resulting GridExtent, in general, will
not be equal to
, but will have the smallest extent
that lines up with the grid and also covers targetExtent
.
targetExtent
Returns a GridExtent that lines up with this grid's resolution and grid layout.
Returns a GridExtent that lines up with this grid's resolution and grid layout.
This function will generate an extent that lines up with the grid
indicated by the GridExtent, having an origin at the upper-left corner
of the extent, and grid cells having the size given by cellSize.
The resulting GridExtent, in general, will not be equal to
, but will have the smallest extent that lines up with
the grid and also covers targetExtent
.
targetExtent
Returns a geotrellis.raster.RasterExtent that lines up with this RasterExtent's resolution, and grid layout.
Returns a geotrellis.raster.RasterExtent that lines up with this RasterExtent's resolution, and grid layout.
For example, the resulting RasterExtent will not have the given extent, but will have the smallest extent such that the whole of the given extent is covered, that lines up with the grid.
Gets the Extent that matches the grid bounds passed in, aligned with this GridExtent.
Gets the Extent that matches the grid bounds passed in, aligned with this GridExtent.
The 'clamp' parameter determines whether or not to clamp the Extent to the extent of this GridExtent; defaults to true. If true, the returned extent will be contained by this GridExtent's extent, if false, the Extent returned can be outside of this GridExtent's extent.
The extent to get the grid bounds for
A boolean which controls the clamping behavior
Gets the GridBounds aligned with this GridExtent that is the smallest subgrid containing all points within the extent.
Gets the GridBounds aligned with this GridExtent that is the smallest subgrid containing all points within the extent. The extent is considered inclusive on it's north and west borders, exclusive on it's east and south borders. See geotrellis.raster.RasterExtent for a discussion of grid and extent boundary concepts.
The 'clamp' flag determines whether or not to clamp the GridBounds to the RasterExtent; defaults to true. If false, GridBounds can contain negative values, or values outside of this GridExtent's boundaries.
The extent to get the grid bounds for
A boolean
For a given column, find the corresponding x-coordinate in the grid of the present GridExtent.
For a given column, find the corresponding x-coordinate in the grid of the present GridExtent.
For a given row, find the corresponding y-coordinate in the grid of the present GridExtent.
For a given row, find the corresponding y-coordinate in the grid of the present GridExtent.
The map coordinate of a grid cell is the center point.
The map coordinate of a grid cell is the center point.
Tests if the grid is aligned to the extent.
Tests if the grid is aligned to the extent. This is true when the extent is evenly divided by cellheight and cellwidth.
Convert a point to grid coordinates (col, row).
Convert a point to grid coordinates (col, row).
Convert map coordinate tuple (x, y) to grid coordinates (col, row).
Convert map coordinate tuple (x, y) to grid coordinates (col, row).
Convert map coordinates (x, y) to grid coordinates (col, row).
Convert map coordinates (x, y) to grid coordinates (col, row).
Convert map coordinate x to grid coordinate column.
Convert map coordinate x to grid coordinate column.
Convert map coordinate x to grid coordinate column.
Convert map coordinate x to grid coordinate column.
Convert map coordinate y to grid coordinate row.
Convert map coordinate y to grid coordinate row.
Convert map coordinate y to grid coordinate row.
Convert map coordinate y to grid coordinate row.
Returns a new RasterExtent which represents the GridBounds in relation to this RasterExtent.
Creates a RasterExtent out of this GridExtent.
Creates a RasterExtent out of this GridExtent.
Use with caution: if the number of columns or rows are larger than Int.MaxValue, this will throw an exception. Also, if columns * rows > Int.MaxValue, this will create a RasterExtent for a raster that could not be backed by any of the Array-backed tile types.
Returns a RasterExtent with the same extent and the given number of columns and rows.
Returns a RasterExtent with the same extent and the given number of columns and rows.
Returns a RasterExtent with the same extent, but a modified number of columns and rows based on the given cell height and width.
Returns a RasterExtent with the same extent, but a modified number of columns and rows based on the given cell height and width.
Returns a RasterExtent with the same extent, but a modified number of columns and rows based on the given cell height and width.
Returns a RasterExtent with the same extent, but a modified number of columns and rows based on the given cell height and width.
RasterExtent objects represent the geographic extent (envelope) of a raster.
The Raster extent has two coordinate concepts involved: map coordinates and grid coordinates. Map coordinates are what the Extent class uses, and specifies points using an X coordinate and a Y coordinate. The X coordinate is oriented along west to east such that the larger the X coordinate, the more eastern the point. The Y coordinate is along south to north such that the larger the Y coordinate, the more Northern the point.
This contrasts with the grid coordinate system. The grid coordinate system does not actually reference points on the map, but instead a cell of the raster that represents values for some square area of the map. The column axis is similar in that the number gets larger as one goes from west to east; however, the row axis is inverted from map coordinates: as the row number increases, the cell is heading south. The top row is labeled as 0, and the next 1, so that the highest indexed row is the southern most row of the raster. A cell has a height and a width that is in terms of map units. You can think of it as each cell is itself an extent, with width cellwidth and height cellheight. When a cell needs to be represented or thought of as a point, the center of the cell will be used. So when gridToMap is called, what is returned is the center point, in map coordinates.
Map points are considered to be 'inside' the cell based on these rules:
Note that based on these rules, the eastern and southern borders of an Extent are not actually considered to be part of the RasterExtent.