CONICET
Instituto Gulich (CONAE-UNC)
FOSS4G 2024, Belem (Brazil), December 2-8, 2024
Geek open-source command line GIS
Open-source desktop GIS
Processing backend in QGIS
Image source: baharmon.github.io/grass-in-qgisGeovisualization and data analytics tool in R or quarto notebooks
Geovisualization and data analytics tool in Python notebooks
Geoprocessing engine running in an HPC environment
Geospatial platform for developing custom models
Cloud geoprocessing backend
Image source: neteler.gitlab.io/actinia-introduction/Supervised classification with Support Vector Machines
v.fill.holes: Fill holes in areas by keeping only outer boundaries
by Vaclav Petrasr.horizon: Output for multiple points, distances, and many other improvements
Anna Petrasova, funded by NSF Award #2322073, granted to Natrx, Inc.(format="json")
in multiple tools (v.db.select, t.rast.list, …)
v.db.select roadsmajor format=json
With better integration in Python:
import json
import grass.script as gs
data = gs.parse_command("v.db.select", map="roadsmajor", format="json")
for row in data["records"]:
print(row["ROAD_NAME"])
More coming in 8.5 (r.report, r.info, …)
by Anna Petrasova, Vaclav Petras, Huidae Cho, Kriti Birda, Corey White, and othersThe Python API, command line, and GUI are now using project instead of location for the main component of the data hiearchy.
~/data
missouri
(location → project)
interstate_44
(mapset aka sub-project)
--tmp-project
with --exec
--tmp-location
is now --tmp-project
grass --tmp-project EPSG:3358 --exec \
r.viewshed input=elevation \
output=viewshed coordinates=642964,222890
--tmp-location
continues to work
grass.script
Python package:
Creation of new projects greatly simplified in Python without a running session (no more chicken and egg problems)
import grass.script as gs
gs.create_project("cordoba_utm21s", epsg="32721")
gs.setup.init("cordoba_utm21s")
by Vaclav Petras, funded by NSF Award #2322073, granted to Natrx, Inc.
grass.jupyter
Python package:
grass.jupyter.SeriesMap
class for animating series of vectors or rasters
(temporal animations already available)
s = gj.SeriesMap(height = 500)
s.add_rasters(["elevation_shade", "geology", "soils"])
s.add_vectors(["streams", "streets", "viewpoints"])
s.d_barscale()
s.show()
m = InteractiveMap(map_backend="ipyleaflet")
m.add_vector("streams")
m.add_raster("elevation")
m.show()
by Caitlin Haedrich, Riya Saxena, Anna Petrasova
r.windfetch – distance which winds blow without obstruction
by Anna Petrasova, funded by NSF Award #2322073, granted to Natrx, Inc.
i.eodag: Downloads imagery datasets from various providers through the EODAG library.
v.extract input=urbanarea where="NAME = 'Durham'" output=durham
i.eodag -l start=2022-05-25 end=2022-06-01 clouds=30 \
map=durham dataset=S2_MSI_L2A provider=cop_dataspace
Enable users to query attribute values and draw geometries, display and change the computational region, support for custom CRS
r.what map=MOD11B3.A2015001.h11v05.single_LST_Day_6km points=firestations format=json
[
{
"easting": 620856.95858763403,
"northing": 230066.38313210499,
"MOD11B3.A2015001.h11v05.single_LST_Day_6km": {
"value": 14045
}
},
{
"easting": 625331.91859749099,
"northing": 229990.82160762601,
"MOD11B3.A2015001.h11v05.single_LST_Day_6km": {
"value": 14099
}
},
{
"easting": 615797.66547487001,
"northing": 213363.99261982701,
"MOD11B3.A2015001.h11v05.single_LST_Day_6km": {
"value": 14031
}
}
]
https://grasswiki.osgeo.org/wiki/GRASS_Community_Meeting_Prague_2024
Thanks to our sponsors, individual and anonymous contributors!!Note: The NSF program is aiming at sustainability, not adding features, fixing bugs, or ongoing maintenance.