Skip to content

Commit

Permalink
formatter, added rst_setsrid to docs
Browse files Browse the repository at this point in the history
  • Loading branch information
sllynn committed Sep 24, 2024
1 parent 3964d7a commit bee2b5d
Show file tree
Hide file tree
Showing 4 changed files with 70 additions and 21 deletions.
49 changes: 46 additions & 3 deletions docs/source/api/raster-functions.rst
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ rst_avg

Returns an array containing mean values for each band.

:param tile: A column containing the raster tile.
:param tile: A column containing the raster tile.
:type tile: Column (RasterTileType)
:rtype: Column: ArrayType(DoubleType)

Expand Down Expand Up @@ -92,7 +92,7 @@ rst_bandmetadata
Extract the metadata describing the raster band.
Metadata is return as a map of key value pairs.

:param tile: A column containing the raster tile.
:param tile: A column containing the raster tile.
:type tile: Column (RasterTileType)
:param band: The band number to extract metadata for.
:type band: Column (IntegerType)
Expand Down Expand Up @@ -2616,7 +2616,7 @@ rst_separatebands
+--------------------------------------------------------------------------------------------------------------------------------+

rst_setnodata
**********************
*************

.. function:: rst_setnodata(tile, nodata)

Expand Down Expand Up @@ -2668,6 +2668,49 @@ rst_setnodata
| {index_id: 593308294097928192, raster: [00 01 10 ... 00], parentPath: "dbfs:/path_to_file", driver: "GTiff" } |
+------------------------------------------------------------------------------------------------------------------+

rst_setsrid
***********

.. function:: rst_setsrid(tile, srid)

Set the SRID of the raster tile as an EPSG code.

:param tile: A column containing the raster tile.
:type tile: Column (RasterTileType)
:param srid: The SRID to set
:type srid: Column (IntegerType)
:rtype: Column: (RasterTileType)

:example:

.. tabs::
.. code-tab:: py

df.select(mos.rst_setsrid('tile', F.lit(9122))).display()
+------------------------------------------------------------------------------------------------------------------+
| rst_setsrid(tile, 9122) |
+------------------------------------------------------------------------------------------------------------------+
| {index_id: 593308294097928191, tile: [00 01 10 ... 00], parentPath: "dbfs:/path_to_file", driver: "GTiff" } |
+------------------------------------------------------------------------------------------------------------------+

.. code-tab:: scala

df.select(rst_setsrid(col("tile"), lit(9122))).show
+------------------------------------------------------------------------------------------------------------------+
| rst_setsrid(tile, 9122) |
+------------------------------------------------------------------------------------------------------------------+
| {index_id: 593308294097928191, tile: [00 01 10 ... 00], parentPath: "dbfs:/path_to_file", driver: "GTiff" } |
+------------------------------------------------------------------------------------------------------------------+

.. code-tab:: sql

SELECT rst_setsrid(tile, 9122) FROM table
+------------------------------------------------------------------------------------------------------------------+
| rst_setsrid(tile, 9122) |
+------------------------------------------------------------------------------------------------------------------+
| {index_id: 593308294097928191, tile: [00 01 10 ... 00], parentPath: "dbfs:/path_to_file", driver: "GTiff" } |
+------------------------------------------------------------------------------------------------------------------+

rst_skewx
*********

Expand Down
30 changes: 15 additions & 15 deletions python/mosaic/api/raster.py
Original file line number Diff line number Diff line change
Expand Up @@ -95,8 +95,7 @@ def rst_avg(raster_tile: ColumnOrName) -> Column:
"""
return config.mosaic_context.invoke_function(
"rst_avg",
pyspark_to_java_column(raster_tile)
"rst_avg", pyspark_to_java_column(raster_tile)
)


Expand Down Expand Up @@ -355,8 +354,9 @@ def rst_frombands(bands: ColumnOrName) -> Column:
"rst_frombands", pyspark_to_java_column(bands)
)


def rst_fromcontent(
raster_bin: ColumnOrName, driver: ColumnOrName, size_in_mb: Any = -1
raster_bin: ColumnOrName, driver: ColumnOrName, size_in_mb: Any = -1
) -> Column:
"""
Tiles the raster binary into tiles of the given size.
Expand Down Expand Up @@ -579,7 +579,9 @@ def rst_mapalgebra(raster_tile: ColumnOrName, json_spec: ColumnOrName) -> Column
"""
return config.mosaic_context.invoke_function(
"rst_mapalgebra", pyspark_to_java_column(raster_tile), pyspark_to_java_column(json_spec)
"rst_mapalgebra",
pyspark_to_java_column(raster_tile),
pyspark_to_java_column(json_spec),
)


Expand All @@ -599,8 +601,7 @@ def rst_max(raster_tile: ColumnOrName) -> Column:
"""
return config.mosaic_context.invoke_function(
"rst_max",
pyspark_to_java_column(raster_tile)
"rst_max", pyspark_to_java_column(raster_tile)
)


Expand All @@ -620,8 +621,7 @@ def rst_median(raster_tile: ColumnOrName) -> Column:
"""
return config.mosaic_context.invoke_function(
"rst_median",
pyspark_to_java_column(raster_tile)
"rst_median", pyspark_to_java_column(raster_tile)
)


Expand Down Expand Up @@ -699,13 +699,12 @@ def rst_min(raster_tile: ColumnOrName) -> Column:
"""
return config.mosaic_context.invoke_function(
"rst_min",
pyspark_to_java_column(raster_tile)
"rst_min", pyspark_to_java_column(raster_tile)
)


def rst_ndvi(
raster_tile: ColumnOrName, band1: ColumnOrName, band2: ColumnOrName
raster_tile: ColumnOrName, band1: ColumnOrName, band2: ColumnOrName
) -> Column:
"""
Computes the NDVI of the raster.
Expand Down Expand Up @@ -734,6 +733,7 @@ def rst_ndvi(
pyspark_to_java_column(band2),
)


def rst_numbands(raster_tile: ColumnOrName) -> Column:
"""
Parameters
Expand Down Expand Up @@ -1329,10 +1329,10 @@ def rst_tessellate(raster_tile: ColumnOrName, resolution: ColumnOrName) -> Colum


def rst_to_overlapping_tiles(
raster_tile: ColumnOrName,
width: ColumnOrName,
height: ColumnOrName,
overlap: ColumnOrName,
raster_tile: ColumnOrName,
width: ColumnOrName,
height: ColumnOrName,
overlap: ColumnOrName,
) -> Column:
"""
Tiles the raster into tiles of the given size.
Expand Down
9 changes: 7 additions & 2 deletions python/test/test_raster_functions.py
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,13 @@ def test_raster_scalar_functions(self):
.withColumn("rst_height", api.rst_height("tile"))
.withColumn("rst_initnodata", api.rst_initnodata("tile"))
.withColumn("rst_isempty", api.rst_isempty("tile"))
.withColumn("rst_mapalgebra", api.rst_mapalgebra(array("tile", "rst_initnodata"), lit('{"calc": "A+B", "A_index": 0, "B_index": 1}')))
.withColumn(
"rst_mapalgebra",
api.rst_mapalgebra(
array("tile", "rst_initnodata"),
lit('{"calc": "A+B", "A_index": 0, "B_index": 1}'),
),
)
.withColumn("rst_memsize", api.rst_memsize("tile"))
.withColumn("rst_merge", api.rst_merge(array("tile", "tile")))
.withColumn("rst_metadata", api.rst_metadata("tile"))
Expand Down Expand Up @@ -245,7 +251,6 @@ def test_netcdf_load_tessellate_clip_merge(self):
self.assertEqual(merged_precipitation.count(), 1)

def test_dtmfromgeoms(self):

outputRegion = "POLYGON((348000 462000, 348000 461000, 349000 461000, 349000 462000, 348000 462000))"

points_df = (
Expand Down
3 changes: 2 additions & 1 deletion python/test/test_vector_functions.py
Original file line number Diff line number Diff line change
Expand Up @@ -324,7 +324,8 @@ def test_triangulate_interpolate(self):
)

triangulation_df = df.withColumn(
"triangles", api.st_triangulate("masspoints", "breaklines", lit(0.0), lit(0.01))
"triangles",
api.st_triangulate("masspoints", "breaklines", lit(0.0), lit(0.01)),
)
triangulation_df.cache()
self.assertEqual(triangulation_df.count(), 2)
Expand Down

0 comments on commit bee2b5d

Please sign in to comment.