TerraLib and TerraView Wiki Page

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
wiki:documentation:devguide [2016/01/14 06:54]
gribeiro [Core Modules]
wiki:documentation:devguide [2016/09/29 16:10] (current)
gribeiro [Modules]
Line 1: Line 1:
 ====== TerraLib Developer'​s Guide ====== ====== TerraLib Developer'​s Guide ======
- 
-===== Overview ===== 
- 
 TerraLib is an open source GIS software library to support the development of customized geographical applications. It is written in C++ language and uses third-party libraries to provide typical GIS functions (e.g. geometry handling, image processing, spatial reference systems) and innovative functions and algorithms (e.g. spatio-temporal data processing). TerraLib is an open source GIS software library to support the development of customized geographical applications. It is written in C++ language and uses third-party libraries to provide typical GIS functions (e.g. geometry handling, image processing, spatial reference systems) and innovative functions and algorithms (e.g. spatio-temporal data processing).
  
-This guide is aimed at GIS developers, who can understand and program in C++ language and are interested in building their own GIS applications using TerraLib. ​ +In this page you can find a set of resources useful to GIS developers, who can understand and program in C++ language and are interested in building their own GIS applications using TerraLib. ​
 ===== Downloading the Source Code and Building Instructions===== ​ ===== Downloading the Source Code and Building Instructions===== ​
  
 In this section you will find the instructions to obtain TerraLib source code, its organization and how to build the library in different programming environments,​ in order to start developing your applications. In this section you will find the instructions to obtain TerraLib source code, its organization and how to build the library in different programming environments,​ in order to start developing your applications.
  
 +  - [[:​wiki:​documentation:​devguide:​working_environment|Working Environment]]
   - [[:​wiki:​documentation:​devguide:​cloning|Cloning TerraLib/​TerraView Repository]]   - [[:​wiki:​documentation:​devguide:​cloning|Cloning TerraLib/​TerraView Repository]]
   - [[:​wiki:​documentation:​devguide:​branches_and_tags|Branches and Tags]]   - [[:​wiki:​documentation:​devguide:​branches_and_tags|Branches and Tags]]
Line 17: Line 14:
   - [[:​wiki:​documentation:​devguide:​dependencies|Dependencies]]   - [[:​wiki:​documentation:​devguide:​dependencies|Dependencies]]
   - [[:​wiki:​documentation:​devguide:​build|Build Instructions]]   - [[:​wiki:​documentation:​devguide:​build|Build Instructions]]
 +  - [[:​wiki:​documentation:​devguide:​gitlab|Using GitLab]]
   - [[:​wiki:​documentation:​devguide:​fromwheretoget|Summary:​ From Where to Get What You Need]]   - [[:​wiki:​documentation:​devguide:​fromwheretoget|Summary:​ From Where to Get What You Need]]
  
-===== Modules ​===== +===== Libraries ​===== 
  
-TerraLib is organized in **modules** such that each contains everything necessary to execute only one aspect of the desired ​functionality. This organization is expressed ​on the source code ((as shown in [[:​wiki:​documentation:​devguide:​src_organization|Source Code Organization]])). However, a module might be dependent on other TerraLib module and/or third-party libraries. The building tools ((as decribed in [[:​wiki:​documentation:​devguide:​build|Build Instructions]])) reflect the modules dependencies. This section will introduce you to the main core modules of TerraLib.+TerraLib is organized in **modules** such that each contains everything necessary to execute only one aspect of a given functionality. This organization is expressed ​in the source code organization ​((as shown in [[:​wiki:​documentation:​devguide:​src_organization|Source Code Organization]])). However, a module might be dependent on other TerraLib module and/or third-party libraries. The building tools ((as decribed in [[:​wiki:​documentation:​devguide:​build|Build Instructions]])) reflect the modules dependencies. This section will introduce you to the main core modules of TerraLib.
  
-==== Core Modules ​ ====+==== Core  ==== 
 +  * [[:​wiki:​documentation:​devguide:​core|Core]]
   * [[:​wiki:​documentation:​devguide:​srs_module|SRS]]   * [[:​wiki:​documentation:​devguide:​srs_module|SRS]]
   * [[:​wiki:​documentation:​devguide:​geometry_module|Geometry]]   * [[:​wiki:​documentation:​devguide:​geometry_module|Geometry]]
Line 30: Line 29:
   * Raster   * Raster
   * Raster Processing   * Raster Processing
 +==== Data Access Drivers ====
 +
 +  * [[:​wiki:​documentation:​devguide:​data_access_module:​drivers:​postgis|PostGIS]]
  
 The link [[:​wiki:​documentation:​devguide:​overview|Modules]] gives you a general overview of all TerraLib modules and its dependencies. ​ The link [[:​wiki:​documentation:​devguide:​overview|Modules]] gives you a general overview of all TerraLib modules and its dependencies. ​
-===== Data Access Drivers ===== 
  
-This section presents some data access drivers provided by TerraLib. ​+===== Versioning =====
  
-  * [[:​wiki:​documentation:​devguide:​dataaccess:​drivers:​postgis|PostGIS]]+This topic discuss the [[:​wiki:​documentation:​devguide:​versioning|TerraLib'​s change management and control]].
  
-===== Plugin System =====  
- 
-TerraLib funcionalities can be extended and used as plugins to other applications. 
-===== Developing Qt Applications with TerraLib Application Framework =====  
- 
-===== Language Bindings =====  
  
 +===== FAQ =====
 +  * [[:​wiki:​documentation:​devguide:​terraview_faq|TerraView FAQ]]
 +  * [[:​wiki:​documentation:​devguide:​terralib_faq|TerraLib Programming FAQ]] 
 ===== Other resources ===== ===== Other resources =====
   * [[:​wiki:​documentation:​devguide:​tips|General Tips for Developers]]   * [[:​wiki:​documentation:​devguide:​tips|General Tips for Developers]]
   * [[:​wiki:​documentation:​devguide:​bugs|Reporting Bugs]] ​   * [[:​wiki:​documentation:​devguide:​bugs|Reporting Bugs]] ​
 +  * [[:​wiki:​documentation:​devguide:​gitlab_ci|GitLab-CI]] ​
 +  * [[:​wiki:​documentation:​devguide:​jenkins|Jenkins]] ​
 +