Korisne informacije za programere zainteresovane za GeoNode.
GeoNode je otvorena usluga izgrađena na softveru otvorenog koda. Savetujemo vam da pravite nove aplikacije koristeći komponente i resurse koje pruža. Ova stranica je početna tačka za programere koji žele da u potpunosti iskoriste GeoNode. Takođe uključuje veze do izvornog koda projekta, tako da svako može da izgradi i prilagodi svoj sopstveni GeoNode.
All the code that runs GeoNode is open source. The code is available at http://github.com/GeoNode/geonode/. The issue tracker for the project is at http://github.com/GeoNode/geonode/issues.
GeoNode is built using several open source projects, each with its own community. If you are interested in contributing new features to the GeoNode, we encourage you to do so by contributing to one of the projects on which it is built:
The data in this application is served using open standards endorsed by ISO and the Open Geospatial Consortium; in particular, WMS (Web Map Service) is used for accessing maps, WFS (Web Feature Service) is used for accessing vector data, and WCS (Web Coverage Service) is used for accessing raster data. WMC (Web Map Context Documents) is used for sharing maps. You can use these services in your own applications using libraries such as OpenLayers, GeoTools, and OGR (all of which are open-source software and available at zero cost). Additionally, CSW (Catalog Service for the Web) supports access to collections of descriptive information (metadata) about data and services.
GeoWebCache provides mapping tiles that are compatible with a number of mapping engines, including Google Maps, Bing Maps and OpenLayers. All the data hosted by GeoNode is also available through GeoWebCache. GeoWebCache improves on WMS by caching data and providing more responsive maps.
To interact with GeoNode's CSW you can use any CSW client (QGIS MetaSearch, GRASS, etc.). The following example illustrates a simple invocation using the OWSLib Python package:
from owslib.csw import CatalogueServiceWeb
from owslib.fes import PropertyIsLike
csw = CatalogueServiceWeb('https://gis.sremgas.rs/catalogue/csw')
anytext = PropertyIsLike('csw:AnyText', 'birds')')
csw.getrecords2(constraints=[anytext])
print csw.results
print csw.records
To include a GeoNode map layer in an OpenLayers map, first find the name for that layer. This is found in the layer's name
field (not title
) of the layer list. For this example, we will use the Nicaraguan political boundaries background layer, whose name is risk:nicaragua_admin
. Then, create an instance of OpenLayers.Layer.WMS:
var geonodeLayer = new OpenLayers.Layer.WMS("GeoNode Risk Data", "http://demo.geonode.org/geoserver/wms",{ layers: "risk:nicaragua_admin" });
To include a GeoNode map layer in a Google Map, include the layer namein the URL template.
var tilelayer = new GTileLayer(null, null, null, {tileUrlTemplate: 'http://demo.geonode.org/geoserver/gwc/service/gmaps?layers=risk:nicaragua_admin&zoom={Z}&x={X}&y={Y}', isPng:true, opacity:0.5 } );
To get data from the GeoNode web services use the WFS protocol. For example, to get the full Nicaraguan admin boundaries use:
http://demo.geonode.org/geoserver/wfs?request=GetFeature&typeName=risk:nicaragua_admin&outputformat=SHAPE-ZIP
Changing output format to json
, GML2
, GML3
, or csv
will get data in those formats. The WFS protocol also can handle more precise queries, specifying a bounding box or various spatial and non-spatial filters based on the attributes of the data.
Create a DataStore and extract a FeatureType from it, then run a Query. It is all documented on the wiki at http://geotools.org/
.
GeoNode's Online Servisi su dostupni iz sledećih linkova:
Dinamične pločice putem WMS: | WMS 1.1.1 |
Vektorski podaci putem WFS: | WFS 1.1.0 |
Rasterski podaci putem WCS: | WCS 1.1.1 |
Pretraživanje metapodataka putem CSW: | CSW 2.0.2 |
Pretraživanje metapodataka putem OpenSearch: | OpenSearch 1.0 |
Pretraživanje metapodataka putem OAI-PMH: | OAI-PMH 2.0 |
Keširane pločice preko WMTS: | WMTS 1.0.0 |