# orbisdata **Repository Path**: mirrors_orbisgis/orbisdata ## Basic Information - **Project Name**: orbisdata - **Description**: Providing a common access point to data - **Primary Language**: Unknown - **License**: LGPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-08-18 - **Last Updated**: 2026-05-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # OrbisData [![GitHub](https://img.shields.io/github/license/orbisgis/orbisdata.svg)](https://github.com/orbisgis/orbisdata/blob/master/docs/LICENSE.md) [![Codacy Badge](https://img.shields.io/codacy/grade/93899ea0675d43a2a3787ce5dd3c5595.svg)](https://www.codacy.com/app/orbisgis/orbisdata?utm_source=github.com&utm_medium=referral&utm_content=orbisgis/orbisdata&utm_campaign=Badge_Grade) OrbisData is a library that offers a unique access point to query, manage and retrieve data. It is based on Groovy specific syntax and aims to provide a simple and fluent framework to work with geospatial data. ## Getting Started OrbisData need at least Java 11 to work. ### Architecture OrbisData is organized around two modules : Data and Process. #### Data The Data module are dedicated to the creation, the access and the requesting of databases. Currently, two spatial database are supported `H2/H2GIS` and `Postgresql/Postgis`. It provides also a module to manage dataframe as R language proposes, thanks to the Smile (Statistical Machine Intelligence and Learning Engine) library (https://haifengl.github.io/). #### Process The Process module are dedicated to the creation of processes with the definition of the in/output. Processes can be executed with input values and can also be chained. ### How to add OrbisData #### Maven To add OrbisData to a Maven project, add the nexus repository to the pom : ``` xml ... Central Portal Snapshots central-portal-snapshots https://central.sonatype.com/repository/maven-snapshots/ false true ... ``` and add the desired module : ``` xml ... ... ... org.orbisgis data 2.1.1 ... ... ... ``` #### Groovy Using Grab annotation : ``` groovy @Grab(group='org.orbisgis.data', module='h2gis', version='2.1.1') @Grab(group='org.orbisgis.data', module='postgis', version='2.1.1') ``` OrbisData encapsulates rows,columns from a database to a table or spatial table. The following code shows how to get the column names from an H2GIS table. ``` groovy def h2GIS = H2GIS.open('/tmp/myh2gis_db') println h2GIS.getTable("myTableName").columns ``` The next code shows how to iterate over the geometry stored in a table and apply a buffer on them. the_geom refers to the column name and the object returned is a JTS geometry object (https://github.com/locationtech/jts). ``` groovy def h2GIS = H2GIS.open('/tmp/myh2gis_db') h2GIS.getSpatialTable("myTableName").each(it -> println it.the_geom.buffer(10) ) ``` ## Contributing Please read [CONTRIBUTING.md](CONTRIBUTING.md) for details on our code of conduct, and the process for submitting pull requests. ## License This project is licensed under the LGPL v3 License - see the [LICENSE.md](../LICENSE.md) file for details ## Funding OrbisData has been developed within the following frameworks : * PAENDORA (Planification, Adaptation et Energie des DOnnées territoriales et Accompagnement, 2017-2020), ADEME Programme: MODEVAL-URBA 2017 * URCLIM (URban CLIMate services, 2017-2020), [JPI Climate Programme](http://www.jpi-climate.eu/nl/25223460-URCLIM.html) * ANR [CENSE](http://www.agence-nationale-recherche.fr/Projet-ANR-16-CE22-0012) (Caractérisation des environnements sonores urbains : vers une approche globale associant données libres, mesures et modélisations, 2016 -2020)