Difference between revisions of "TerraHS"

From HaskellWiki
Jump to navigation Jump to search
Line 4: Line 4:
   
 
We have developed TerraHS, a software component that enables the development of geographical applications in a functional language, using the data handling capabilities of [http://www.terralib.org/ TerraLib]. TerraLib is a C++ library that supports different spatial database management systems, and that includes a large number of spatial algorithms. As a result, we get a combination of the good features of both programming paradigms.
 
We have developed TerraHS, a software component that enables the development of geographical applications in a functional language, using the data handling capabilities of [http://www.terralib.org/ TerraLib]. TerraLib is a C++ library that supports different spatial database management systems, and that includes a large number of spatial algorithms. As a result, we get a combination of the good features of both programming paradigms.
== Documentation ==
 
   
  +
=== Features ===
+
== Features ==
 
The major features are:
 
The major features are:
   
Line 14: Line 14:
 
*'''Geometric operations:''' intersection, union, difference, rotation.
 
*'''Geometric operations:''' intersection, union, difference, rotation.
 
*'''Metrical operations:''' perimeter, area, distance, centroid, shapeindex, compacity, fractal
 
*'''Metrical operations:''' perimeter, area, distance, centroid, shapeindex, compacity, fractal
  +
  +
 
=== Demos ===
  +
 
== Download and Installation ==
  +
  +
 
TerraHS is available as [http://hackage.haskell.org/package/terrahs cabal package from Hackage]. See [http://www.haskell.org/haskellwiki/Cabal/How_to_install_a_Cabal_package How to install a Cabal package in Linux or Windows].
   
 
=== Installation notes for Linux ===
 
=== Installation notes for Linux ===
Line 41: Line 49:
 
sudo make uninstall
 
sudo make uninstall
 
=== Installation notes for Windows ===
 
=== Installation notes for Windows ===
=== Papers and Thesis ===
 
Some papers and thesis that use TerraHS:
 
* Sérgio Costa, Gilberto Câmara, et.al. '''Prototyping GIS Application in Functional Programming'''. In: GeoPantanal, 2009, Corumbá. Anais do II Geopantanal, 2009. [http://www.dpi.inpe.br/~scosta/papers/GeoPantanal2009-TerraHSv4.pdf download]
 
 
*Sergio Costa, Gilberto Câmara, Danilo Palomo. '''TerraHS: Integration of Functional Programming and Spatial Databases for GIS Application Development'''. VIII Brazilian Symposium in Geoinformatics, GeoInfo 2006, Campos do Jordão, 2006. [http://www.dpi.inpe.br/gilberto/papers/costa_geoinfo2006.pdf download]
 
 
*Olga Bittencourt, Gilberto Câmara, Lúbia Vinhas, Joice Mota.''' Rule-based Evolution of Typed Spatio-temporal Objects'''. IX Brazilian Symposium in Geoinformatics, GeoInfo 2007, Campos do Jordão, 2007.[http://www.dpi.inpe.br/gilberto/papers/olga_geoinfo2007.pdf download]
 
 
*Sérgio Rosim. '''Estrutura baseada em grafos para representação unificada de fluxos locais para modelagem hidrológica distribuída'''. PhD Thesis in Computer Science at INPE, 2008.[http://mtc-m18.sid.inpe.br/col/sid.inpe.br/mtc-m18@80/2008/07.14.18.25/doc/publicacao.pdf download]
 
 
=== Reports ===
 
 
=== Demos ===
 
 
== Download and Installation ==
 
   
 
=== Software dependencies ===
 
=== Software dependencies ===
Line 87: Line 80:
 
*[https://sourceforge.net/projects/terralib4c/files/Source/terralib4c-0.1.tar.gz/download Source, generic Linux]
 
*[https://sourceforge.net/projects/terralib4c/files/Source/terralib4c-0.1.tar.gz/download Source, generic Linux]
   
=== TerraHS ===
 
   
 
== Papers, thesis and Reports ==
TerraHS is available as [http://hackage.haskell.org/package/terrahs cabal package from Hackage]. See [http://www.haskell.org/haskellwiki/Cabal/How_to_install_a_Cabal_package How to install a Cabal package in Linux or Windows].
 
 
Some papers and thesis that use TerraHS:
 
* Sérgio Costa, Gilberto Câmara, et.al. '''Prototyping GIS Application in Functional Programming'''. In: GeoPantanal, 2009, Corumbá. Anais do II Geopantanal, 2009. [http://www.dpi.inpe.br/~scosta/papers/GeoPantanal2009-TerraHSv4.pdf download]
  +
 
*Sergio Costa, Gilberto Câmara, Danilo Palomo. '''TerraHS: Integration of Functional Programming and Spatial Databases for GIS Application Development'''. VIII Brazilian Symposium in Geoinformatics, GeoInfo 2006, Campos do Jordão, 2006. [http://www.dpi.inpe.br/gilberto/papers/costa_geoinfo2006.pdf download]
  +
 
*Olga Bittencourt, Gilberto Câmara, Lúbia Vinhas, Joice Mota.''' Rule-based Evolution of Typed Spatio-temporal Objects'''. IX Brazilian Symposium in Geoinformatics, GeoInfo 2007, Campos do Jordão, 2007.[http://www.dpi.inpe.br/gilberto/papers/olga_geoinfo2007.pdf download]
  +
 
*Sérgio Rosim. '''Estrutura baseada em grafos para representação unificada de fluxos locais para modelagem hidrológica distribuída'''. PhD Thesis in Computer Science at INPE, 2008.[http://mtc-m18.sid.inpe.br/col/sid.inpe.br/mtc-m18@80/2008/07.14.18.25/doc/publicacao.pdf download]

Revision as of 03:07, 24 November 2009


What is it ?

We have developed TerraHS, a software component that enables the development of geographical applications in a functional language, using the data handling capabilities of TerraLib. TerraLib is a C++ library that supports different spatial database management systems, and that includes a large number of spatial algorithms. As a result, we get a combination of the good features of both programming paradigms.


Features

The major features are:

  • Input and output formats: Layers or themes from TerraLib databases (just MySQL), Esri Shape File (*.shp), TIFF file.
  • Data types: Raster, Vectors (Point, Line, Polygon and Cell), Temporal (DateTime, Interval)
  • Topological operators: intersects, within, touches, crosses ...
  • Geometric operations: intersection, union, difference, rotation.
  • Metrical operations: perimeter, area, distance, centroid, shapeindex, compacity, fractal


Demos

Download and Installation

TerraHS is available as cabal package from Hackage. See How to install a Cabal package in Linux or Windows.

Installation notes for Linux

Software dependencies in debian package

The installation procedure:

 sudo dpkg -i package.deb

The uninstallation procedure:

 sudo dpkg -r package

Software dependencies in source file

The installation procedure:

tar xvzf package.tar.gz
cd package
./configure
make
sudo make install

The uninstallation procedure:

 cd package
 sudo make uninstall

Installation notes for Windows

Software dependencies

TerraHS is a Haskell GIS application built using the TerraLib GIS library. In below, is available a debian packages for TerraLib. TerraHS-0.8 uses the TerraLib-3.3.0 version.

Optional, but is recommended to install the TerraView application.TerraView is a GIS application based on TerraLib, a GIS library to handle vector and raster data in geographical DBMS such as Access, PostgreSQL, MySQL and Oracle Spatial.

The source files to TerraLib and TerraView can be downloaded from official sites:

We have developed some specific libraries to support some functionalities for TerraHS. The libraries can be installed from an unique package (TerraLib4c+Translib)

Or can be download in separated way:

Translib, a library for translation among different geographic format files (no database connection), based in the TerraLib library. This library is required for TerraHS to deal whith shape files (*.shp).

Terralib4c, a library that maps c++ Terralib functions and classes to C functions. Required by Haskell to do binding with TerraLib api.


Papers, thesis and Reports

Some papers and thesis that use TerraHS:

  • Sérgio Costa, Gilberto Câmara, et.al. Prototyping GIS Application in Functional Programming. In: GeoPantanal, 2009, Corumbá. Anais do II Geopantanal, 2009. download
  • Sergio Costa, Gilberto Câmara, Danilo Palomo. TerraHS: Integration of Functional Programming and Spatial Databases for GIS Application Development. VIII Brazilian Symposium in Geoinformatics, GeoInfo 2006, Campos do Jordão, 2006. download
  • Olga Bittencourt, Gilberto Câmara, Lúbia Vinhas, Joice Mota. Rule-based Evolution of Typed Spatio-temporal Objects. IX Brazilian Symposium in Geoinformatics, GeoInfo 2007, Campos do Jordão, 2007.download
  • Sérgio Rosim. Estrutura baseada em grafos para representação unificada de fluxos locais para modelagem hidrológica distribuída. PhD Thesis in Computer Science at INPE, 2008.download