Dear Reader, GeoSolutions is proud to announce that Andrea Aime, our technical lead on GeoServer will attend this year FOSS4G North America in San Francisco to give a workshop and presentation on GeoServer itself. The conference will take place at the Hyatt Regency San Francisco Airport between 9th and 12th of Marc2015. Specifically the 9th will be dedicated to workshops (here is the workshop schedule) while presentations will be given on 10th, 11th and 12th.The schedule for our workshop is as follows:
- GeoServer, an introdutction for beginners with Andre Aime, 9th of March 2015 from 9 to 12 - The workshop will provide the attendees with an in-depth introduction to the GeoServer Open Source server useful for those who are (still??) not familiar with it but also for those who already using it as they will have the chance to ask questions directly to one of the main developers behind the software.
- Status of GeoServer WPS with Andrea Aime, 12th of March 2015 from 12 to 12:35 - This presentation will provide the attendee with an introduction to the GeoServer WPS functionalities, and will highlight the recent improvements in the area. The presentation will finally show some real world examples of applications using GeoServer WPS.
http://cesiumjs.org/2015/01/27/Migrating-from-Earth-to-Cesium/ - Cesium and OpenLayers3 Cesium has a real focus on (OGC) standards and integrating with software implementing OGC standards. I heard that the Cesium-folks are even proposing additions to OGC 3D standards (CZML? or the very compact terrain tiling using quantized mesh?). That would be great in concert with/as payload for the upcoming 3DPS (3D Portrayal Service) standard. http://openlayers.org/ol3-cesium/
- My Cesium experiments with Dutch OpenTopo tiles and Top10NL-3D Vector http://app.nlextract.nl/3d/ - My Cesium experiments with Cesium-OpenLayers3 Integration using Dutch Topo Top10NL-3D Vector http://app.nlextract.nl/3d/
- Kind of 3D with D3 – Maps for the Web http://www.web-maps.com/gisblog/?p=1370 - Creating Charts and Legends for 3D Atlas Maps – A Mashup of D3.js, osgEarth, and the Chromium Embedded Framework — Raimu
http://vimeo.com/106234276 PostGIS PostGIS has many 3D facilities. Check these out. - Lidar/Pointclouds in PostGIS: https://github.com/pgpointcloud/pointcloud http://workshops.boundlessgeo.com/tutorial-lidar/ (tutorial) http://s3.cleverelephant.ca/foss4gna2013-pointcloud.pdf (paul ramsey slides) http://boundlessgeo.com/2013/11/manage-lidar-postgis - TIN Support https://smathermather.wordpress.com/2013/12/18/2-5d-tins-in-postgis/ and https://github.com/smathermather/postgis-etc/blob/master/3D/AsTin.sql – create TINs with ST_DelaunayTriangles http://www.oslandia.com/full-spatial-database-power-in-2-lines-en.html
also check: GRASS: http://grass.osgeo.org/grass70/manuals/addons/v.delaunay3d.html - X3D Generation http://postgis.net/docs/ST_AsX3D.html - 3ddb for PostGIS (CityGML) http://www.3dcitydb.org/ https://github.com/3dcitydb GitHub http://www.3dcitydb.org/3dcitydb/fileadmin/downloaddata/3dcitydb-v2_0_6-postgis-tutorial.pdf - A New Dimension To PostGIS : 3D – Olivier Courtin (Oslandia) with Hugo Mercier (Oslandia) http://2013.foss4g.org/conf/programme/presentations/7/index.html http://www.slideshare.net/SimeonNedkov/postgis-3d-implementation https://www.youtube.com/watch?v=tQbE6B8JaHI - PostGIS and CGAL and CGAL https://www.cgal.org and https://smathermather.wordpress.com/2013/12/05/postgis-with-sfcgal-videos-how-did-i-miss-these-videos/ SFCGAL http://www.sfcgal.org/ “SFCGAL is a C++ wrapper library around CGAL with the aim of supporting ISO 19107:2013 andOGC Simple Features Access 1.2 for 3D operations.” - Other PostGIS 3D Stuff “This post explains how to setup a powerful spatial data store (PostGIS) with a wide range of features (SFCGAL, PgRouting, PostgreSQL PointCloud, PDAL“ http://www.oslandia.com/full-spatial-database-power-in-2-lines-en.html http://postgis3d.blogspot.nl/ (Camp2Camp – 2007 – by Mathieu ..?) XNavigator “XNavigator is an interactive 3D viewer and integrated client for exploring virtual city and landscape models. Instead of defining its own proprietary communication protocols, open OGC standards are used. The Open Geospatial Consortium (OGC) defines standards for accessing spatial information over the internet. The main 3D content is downloaded from a Web 3D Service (W3DS). Additional OGC services which can be accessed include:
- Web Map Service (WMS)
- Open Location Services (OpenLS) including Route Service, Directory Service, and Geocoder
- Catalog Service for Web (CSW) ebRIM profile
- Web Feature Service (WFS) serving GML3 and CityGML content’“
ThreeJS “The aim of the project is to create a lightweight 3D library with a very low level of complexity — in other words, for dummies. The library provides <canvas>, <svg>, CSS3D and WebGL renderers.” http://threejs.org W3DS W3DS (Web 3D Service) is a portrayal service for 3D scenes. Early OGC discussion documents. Now superseded by the 3DPS, the 3D Portrayal Service, now (jan 2015) out for public comment in OGC. This is an early W3DS implementation in GeoServer that started from the dissertation work by Nuno Miguel Carvalho Oliveira (professor: Jorge Gustavo Rocha) at the University of Minho (Portugal). http://mei.di.uminho.pt/sites/default/files/dissertacoes//eeum_di_dissertacao_pg18391.pdf – Dissertation https://github.com/geoserver/geoserver/tree/master/src/community/w3ds (GeoServer community module) http://osgeo-org.1560.x6.nabble.com/W3DS-Implementation-up-and-running-td4665127.html (email on GeoServer list)
QGIS/Horao By OSLandia. “A simple viewer built around OpenSceneGraph … designed to listen to commands on its standard input. …
The other piece is a Python plugin that is used to connect QGIS signals to the viewer (in another process) to allow loading of QGIS layers with 3D geometries.”https://github.com/Oslandia/horao http://www.openscenegraph.org/ Cuardo Again By OSLandia, watch these guys! “Cuardo is an OpenSource WebGL 3D data viewer, focusing on urban data analysis and visualization….a 3D GIS web framework based on Three.js and WebGL, oriented toward urban visualization.“ https://github.com/Oslandia/cuardo
One of the features that can be found in gvSIG 2.1 is advanced labelling, that includes many possibilities and tools to customize label according to user need. The advanced labeling has been migrated from gvSIG 1.x to gvSIG 2.1, keeping all the existing customization options and adding some of the most required options by the user community, like the halo option.
Here are a couple of videos that show some ( of the many ) labelling options .
In this first video we focus on the possibility of labelling with halo or adding a background image for tags.
In the second video we illustrate the possibility to display labels only for selected features.
English translation of Etiquetado avanzado en gvSIG 2.1.
Filed under: gvSIG Desktop, spanish Tagged: etiquetado, etiquetar, gvSIG 2.1, halo
Otra de las funcionalidades que podemos encontrar en gvSIG 2.1 es la de etiquetado avanzado, que a su vez contiene distintas posibilidades y herramientas para confeccionar un etiquetado al gusto del usuario. El etiquetado avanzado ha sido migrado de gvSIG 1.x a gvSIG 2.1, manteniendo todas las opciones de personalización del etiquetado e incorporando al mismo tiempo alguna novedad de las más solicitadas por la comunidad de usuarios, como es la opción de halo.
A continuación un par de vídeos que muestran algunas (de las muchas) opciones de etiquetado.
En este primer vídeo nos centramos en la posibilidad de etiquetar con halo o añadiendo alguna imagen de fondo que acompañe a las etiquetas.
En el segundo vídeo vemos la posibilidad de que las etiquetas se muestren sólo cuando seleccionemos un elemento.
Filed under: gvSIG Desktop, spanish Tagged: etiquetado, etiquetar, gvSIG 2.1, halo
In this post, you will find the examples made in the workshop for beginners about Programming with Scripting Module in gvSIG 2.1 at the 10th International gvSIG Conference in December at Valencia.
During the workshop, we saw a few examples of geoprocessing, starting with the calculation of a buffer area and little by little, adding functionalities according to our needs.
Here the cartography to follow the scripts.We only need a polygone layer and a point layer. You can use your own layers if you want.S
If you don´t know the Scripting Module, we explain how to load the scripts, step by step, at this video. In the code, you only should change the part as ‘initial data’, writing the path where the new lawyer will be recorded. These scripts will not modify the layers already loaded. For the correct running, we should have the View on and one layer selected.
In the first two examples, we can see first, the creation of a buffer area and secondly, adding a new field showing the distance between those points to a reference point.
Also, in the third example, we add a spatial condition. This condition is just that it creates the buffer in those points intersecting with some polygon from the selected layer. In the example, referred to ‘manzanas’, but it can be replaced for any polygon layer. We can see in the symbology how this variable evolves, thinking that the reference point from the example it would be at the left bottom side. We also see that there are points where the buffer has not been generated.
Another function is, from a point layer, to create a new line layer containing (in this case, a single entity to help us) a geometry with the union of all the points with all the vertices of the line.
In the first example, passing the vertices using the order of an ID field which would be random, and in the second one, using the buffer layer created in the 3rd script and taking as an order, the distance field to create the vertices of the line geometry.
Finally, an example not explained during the workshop is the generation of lines projecting to that reference point, taking into account the type of layer: points, lines or polygons.
You can watch the workshop videos on the following links (Spanish/English):
- Spanish: 10as Jornadas Internacionales gvSIG: Taller 5, Scripting en gvSIG 2.1:
- English: 10th Int. gvSIG Conference: Workshop 5, Scripting on gvSIG 2.1:
Any doubt, you can ask here, at gvSIG user list or if it is a more specific one, you can contact me: email@example.com
If you are interested in the rest of the presentations of the Conference, you can check them out at this listing.
I hope these examples were useful.
Greetings to all and thank you,
Filed under: development, english, events, gvSIG Desktop, scripting
Slashgeo (FOSS Articles): Batch Geonews: QField, IndoorGML Standard, Focus on Google Maps for Work, 30m SRTM-DEM, and much more
The first 2015 batch-mode edition of the geonews.
On the open source / open data front:
- There’s a new free course Introduction to Geospatial Technology Using QGIS (from Feb 23 – Mar 29) which also has content on GitHub
- Beautiful and simple, How to: watercolor pastel style in QGIS
- Announced is the FOSS4G-Europe 2015 conference, this time in Como, Italy, on July 14-17th
- Recent updates, GeoTools 12.2 Released, GeoServer 2.6.2 released,
- The mobile Android app Geopaparazzi 4.1.0 is out (4.1.1 actually), and there’s a new similar tool in development, QField (formerly QGIS Mobile) described as “A simplified touch optimized interface for QGIS. Perfect for field work on portable touch devices” over GitHub
- We can help map the Amazonia on OpenStreetMap, with mapazonia.org and on a similar topic, a new tool named To-fix: improving OpenStreetMap through micro tasking, see OSM’s progress in Japan, OpenStreetMap in Japan, 2007-2014
- There’s also progress in terms of open addresses, OpenAddresses Hits 100 Million
On the Esri front:
- Very nicely presented, ArcGIS Open Data – 2014 Year in Review (direct link to the review presentation)
- A useful review, Esri’s Living Atlas of the World and Community Maps 2014 Year-End Review
- A USGS-Esri partnership, The most detailed ecological map of the World “raster data of a resolution 250m and it’s fully interactive”
On the Google front:
- TechCrunch reports that Google is shutting down Maps Coordinate, its Mobile Workforce Management Service, focus is now on Google Maps for Work, and Google Maps Engine is now deprecated
- Now in Street View, the aurora borealis lights up Google Maps
- Two entries for developers, Transit Directions Improvements and easy Maps API integration from Java and Python
- A short GEB article on Google’s Processing of 3D imagery, it apparently takes them a year
- Interesting list that can be interpreted in many ways, Google Earth wish list for 2015
Discussed over Slashdot:
- Still around the corner, Google Glass Is Dead, Long Live Google Glass and What Will Google Glass 2.0 Need To Actually Succeed?
- Another player, Ford Touts Self-driving Car, Launches Global Mobility Experiments
- Acquire pictures in 3D directly, 3D Cameras Are About To Go Mainstream
- Trying to be nicer, Uber Will Provide Transit Data To Cities
- See also the related entry above, First Crowdsourced, Open Data Address List Launches In the UK
- There too, Moscow To Track Cell-phone Users In 2015 For Traffic Analysis
In the miscellaneous category:
- MapBox started integrating the new free 30m SRTM-DEM data and it’s a major improvement, see Australia terrain update and Asia terrain update and South America terrain update and Africa terrain update
- GeoAwesomeness agrees with James, Evolution of the Geospatial Industry: From GIS to Spatial Computing
- OGC has a 3-parts article on engaging the geoscience research community in standards development
- We mentioned it a year ago, and now it matured, IndoorGML standard for positioning inside buildings is finally out there, there’s also InfraGML being worked on, not a bad thing that W3C and Open Geospatial Consortium announce new collaboration
- Thanks Russia, Russia declassifies Earth-sensing data from its civilian satellites
- More free imagery, Free Data from Indian Resourcesat-2 Satellite via INPE
- It’s easier than ever to get on-site 3D data, Hand held scanners closer to revolutionizing the construction industry
- Hiding crime trends, City Catches Heat Over Crime-Map Change
- Interesting Electronic Frontier Foundation (EFF) article on Oakland’s automatic license plate readers
- That’s why we get tracked, How wireless carriers are making money on selling your location?
- On the other side of the fence, tracking employees, This app will let you track location of your Comcast technician
- Drones can fly after all, FAA issues grants of exemption for commercial UAV operations for construction monitoring, agriculture, and real estate
- Nokia’s HERE app getting attention, HERE app for Android downloaded 2.5M times
- If you’re in the mood to test your geo-geekiness, a series of quiz, #GeoawesomeQuiz 4
In the maps category:
- Nice maps and data, Our World in Data, with ‘visual history’ themes such as war and violence, world poverty and world hunger & food provision
- Looking for nice pictures? Wired published NASA’s Best Images of Earth From Space in 2014 and more nice imagery, Digital Globe’s top satellite images of 2014
- We already saw something similar, Windyty – weather forecast map reinvented
- A map of worldwide industries using forced labor and/or child labor
- That’s a lot of holes, Mapping a Fracking Boom in North Dakota
- People density in Europe, The True Heart of Europe – the Blue Banana
- Via this tweet, a map of our rich-poor walled world
- A funny map of bros, dudes, buddies, fellas and pals in the U.S., The Heart of Dudeness
The post Batch Geonews: QField, IndoorGML Standard, Focus on Google Maps for Work, 30m SRTM-DEM, and much more appeared first on Slashgeo.org.
My first impressions are simply that I am so happy to see the return of the Start Menu!
The other pleasant surprise was to see that the command prompt was finally resizable!
But my main motivation for giving Windows 10 a spin was to see if MapGuide will run on it. So I downloaded the 3.0 preview release.
I ran the installer and got this.
Okay, this normally means I have to manually "unblock" the executable in the file properties before retrying, so I did exactly that.
Except unblock does nothing! Is this a bug?
So before I chew out Microsoft for their "UAC v2.0" over-zealousness with this SmartScreen feature, I decided to click the "More Information" link on the SmartScreen dialog to see if it does anything and lo and behold, it gives me the options to finally run the thing!
Terrible UX there Microsoft. The "Run Anyway" option should be visible IMO and not concealed in the "More Information" link.
Nevertheless, after negotiating this little obstacle the installer ran after the UAC prompt. I decided to try the IIS/.net install option since:
- PHP and its MapGuide API bindings is installed regardless (it's why mapguide-rest will/should just work out of the box on any supported version of MapGuide), so we can also verify the PHP bits are working by loading a package through the Site Administrator
- This is the configuration that we always want to confirm and verify when testing support for newer versions of windows. The Apache/PHP/Java configurations are mostly self contained and can be generally trusted to work on any windows platform where there is a matching Visual C++ runtime library and a working Java SDK/RE for it.
The Site Administrator runs without issues, allowing me to load my sample data package. Firing up the AJAX viewer (that is bound to the .net implementation due to my installation choice), shows that it is indeed functional
So there you have it. MapGuide 3.0 works on Windows 10.
Given its current Technical Preview status, we cannot realistically have Windows 10 as a supported platform for MapGuide 3.0, but should you want to try, chances are MapGuide should work as evidenced by this post.
Numpy and SciPy binaries for OS X have been up on PyPI for a few months and I’ve recently figured out how to do the same for Fiona, Rasterio, and Shapely. As the SciPy developers do, I’ve used delocate-wheel to (see its README):
- find dynamic libraries imported from python extensions
- copy needed dynamic libraries to directory within package
- update OSX install_names and rpath to cause code to load from copies of libraries
The new Fiona and Rasterio binaries are beefy (14MB) because they include the non-standard libraries that enable format translation, cartographic projection, and computational geometry operations:$ delocate-listdeps ~/code/frs-wheel-builds/dist/rasterio-0.17.1-cp27-none-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl @loader_path/.dylibs/libgdal.1.dylib @loader_path/libgeos-3.4.2.dylib @loader_path/libgeos_c.1.dylib @loader_path/libjasper.1.0.0.dylib @loader_path/libjson-c.2.dylib @loader_path/libproj.0.dylib
For the small price of a larger download, Mac users now get batteries-included binaries that work immediately. No XCode required. Just pip install rasterio and start using it.
The new binaries are built on 10.9 using Python 2.7.9 and 3.4.2 downloaded from python.org. These Pythons were compiled using the 10.6 SDK for both i386 and x86_64 architectures and I’ve similarly set MACOSX_DEPLOYMENT_TARGET=10.6 and -arch i386 -arch x86_64 in my own builds. In practice they are intended for 10.9 and 10.10, but will probably work on 10.7 and 10.8. They should work for just about any OS X Python, whether from the system, Homebrew, MacPorts, or python.org.
If you’d rather continue to compile, e.g, Rasterio’s modules using your own GDAL installation, you’ve got an out in pip’s --no-use-wheel option:$ GDAL_CONFIG=/path/to/gdal-config pip install --no-use-wheel rasterio
To contribute to development of these binaries or report installation bugs, please head over to https://github.com/sgillies/frs-wheel-builds. Most importantly, help me spread the word that installation of Fiona, Rasterio, and Shapely on OS X is easier than ever.
Quite often, I’ll run across a large or complex shapefile that causes issues (crashing, very poor performance, etc) in QGIS or other desktop GIS.
However, sometimes you have to find a way to deal with these files, and not spend a lot of time worrying about them. Often, the best way is to head back to the mysterious black box that is the command line, and use the ultra-stable suite of tools available there. My favourite for spatial work is GDAL/OGR
I was recently struggling to do a simple dissolve on a large and complex shapefile. I didn’t want to bring it into a database, but QGIS would crash trying to dissolve the shapefile. Of course, OGR had no problem with the file!
Here’s how to turn this (nine features with three different attributes):
Into this (three attributes, three multi-part features!):
Simply use this command (substituting your file names and field names as appropriate) into ogr, and you’re all set!
ogr2ogr outputfile.shp inputfile.shp -dialect sqlite -sql “SELECT dissolvefield,ST_Union(geometry) as geometry FROM inputfile GROUP BY dissolvefield”
You may already know that there is a great lineup for the geospatial devroom at FOSDEM on synday: yes, we actually have 22 presenters from a large number of different countries (even outside Europe!).
Intro geospatial devroomJohan Van de Wauw09:0009:05Use of OSS in the Lifewatch biodiversity research projectJulien Radoux09:0509:15QGIS Tool for Landslide Hazard AssessmentDarya Golovko09:1509:25Opensource Desktop GIS at Regional and Local goverments in Flanders
Integrating Govermental webservices into QGISKay Warrie09:2509:35Bridging the gap between simulation and GISVincent Mora09:4010:05GRASS GIS 7: Efficiently processing big geospatial dataMarkus Neteler10:1010:30GRASS Development APIs
Lifting the fog on the different ways to develop for GRASSMoritz Lennert10:3010:45Open Standards for Big Geo DataPeter Baumann10:5011:15Scotty, I need a data in three minutes! (Or we're all dead!!)
Just the right data at just the right timeAndrew Ross11:2011:45Distributed tile processing with GeoTrellis and SparkRob Emanuele11:5012:15GeoTrellis and the GeoTiff File FormatJohan Stenberg12:1512:25Habitat - a programmable personal geospatial datatoreRichard Pope12:3012:40Daybed
spatial backend as a service !Mathieu Leplatre12:4513:10Taking Web GIS beyond Google Maps with the Geomajas Client and Spatial Application Server
Developing Mobile Multiplatform 3d mapsManuel de la Calle Alonso13:4514:10Potree - Rendering Large Point Clouds in Web BrowsersMarkus Schütz14:1514:25OpenLayers 3: A unique web-mapping libraryÉric Lemoine14:3014:55Ol3-Cesium : 3D for OpenLayers map
An exciting library for automatically bringing 3D to your mapGuillaume Beraudo14:5515:10Overpass API
A service to query OpenStreetMap dataRoland Olbricht15:1515:40Tempus: a framework for multimodal trip planningHugo Mercier15:4516:10Douglas-Peucker updated
or do you want to reduce your dataStephane Winnepenninckx16:1516:40PicoTCP on Mobile Ad Hoc networksBrecht Van Cauwenberghe16:4516:55Full schedule here.
But apart from the lineup on Sunday, also Saterday actually has a number of interesting geo-related talks as well:
10:35 - 10:55 (distributions devroom)
- From Debian-GIS to OSGeo live and back (yep shameless self-promotion)
14:00 - 14:25 (graph devroom)
550 lectures. So hope to see many of you at FOSDEM!
I noted there is another geo-related talk on Sunday, unfortunately in parallel with the program for the geospatial devroom:
- Web mapping with MySQL
An introduction to MySQL GIS
The GeoServer team is excited to announce the release of GeoServer 2.7-beta with some great new features. The download page for 2.7-beta provides links for zip, war, dmg and exe bundles. As a development release, 2.7-beta is considered experimental and is provided for testing purposes. This release is not recommended for production (even if you are enthusiastic by the new features).
This release is made in conjunction with GeoTools 13-beta. Thanks Jody (and Boundless Victoria) for making this release, Kevin for GeoWebCache 1.7-beta, and a big thanks to Andrea for gathering up the contents (and pictures) for this blog post.
A complete change log is available from the issue tracker.Please Download and Test
The committers have a great release for you to look forward to, we would like to ask you to download and test. By trying GeoServer out on a wide range of platforms and datasets we can all help the next release be great.
Testing is a key part of the open source social contract. This is your best chance to identify issues early while we still have time to do something about it. If you make use commercial support ask your vendor about their plans for 2.7-beta testing.
When testing Geoserver 2.7-beta please let us know on the user list how it works for you. We will be sure to thank you in the final release announcement and product presentations.New Features Color composition and blending
Color composition and blending are two new extensions to SLD allowing the web map styler to control how overlapping layers in a map are merged together. Beyond the simple stacking and translucency control a wide range of effects are now possible by allowing masking and specific color operations for blending layers together in new ways.
A common well known example is a polygon thematic map on top of a DEM, which tends to provide under-par results using only transparency control, but generates very appealing ones when using the “multiply” blending mode:
Alpha masking also allows for neat cartographic tricks, like the one below, where the polygon fill has been cut at the border of the states generating a “inner line” effect:
First of, GSIP 119 added support for asynchronous requests over a cluster of GeoServer instances. In WPS an asynchronous request starts by returning the client a URL that can be polled in order to know about the execution progress, and eventually to retrieve the final results. Previous to 2.7-beta the status information was kept in memory, thus only the GeoServer instance running the process could meaningfully respond to a poll from the client. With GeoServer 2.7-beta a new extension point allows the programmer to create a process status repository that can be shared among the GeoServer instances.
The first default implementation of the shared repository is a Hazelcast based one, leveraging in-memory, replicated and distributed maps to share the state information, while the results (which can be pretty large) are stored in a shared file system. The community is welcomed to develop other variants that could store the information in other places, for example, a relational database, a nosql one, or in the clould (e.g., S3 storage).WPS Security
GSIP 121 added the ability to provide fine grained access control to processes based on our usual role based authentication system: each process or group of processes can be associated to a list of roles that can access them, while other users will be disallowed seeing or accessing the same processes.
Integrating with the security, GSIP 123 added support for process execution limits, bringing WPS up to par with the other OGC services in terms of limiting the resources used by a single request. In the main WPS panel one can now configure how much processing time to give synchronous and asynchronous requests:
Also, in the new process security page one can configure a global limit for the size of complex inputs (see above), it is also possible to configure limits on a process by process basis, in order to restrict the size of inputs, the range of numerical values, and the multiplicity of repeatable inputs, to constrain the effort of a WPS process call. All these limits will be dutifully reflected in the DescribeProcess output.
If you’re not satisfied with the above limits and would like to develop new ones, no worries, the current code is setup on a pluggable WPSInputValidator extesion point that will allow you to create new types of input validators.WPS Dismiss
The final Finally, GSIP 122 added the ability to dismiss an ongoing process from the client that requested the execution, or as an administrator. The new Dismiss operation comes from the WPS 2.0 specification, which GeoServer does not support yet, so it has to be seen as a vendor extension to WPS 1.0, which leverages the executionId parameter returned in the asynch status links to allow execution cancellation, you can read more about it in the user documentation. The administrator instead gets a new user interface panel showing the currently running operations, allowing selection and forceful dismissal of processes that are running:
The initial CSS extension (responsible for using CSS to generate SLD styles) was written in Scala. Although wildly popular, and featured up until GeoServer 2.6, the module has not been maintained to the level expected of a GeoServer extension.
Andrea has taken it unto himself to address this gap, rewriting the functionality in Java and making the result available to the GeoTools library.
The new CSS engine performs the same function as the Scala original and has managed to make a few key improvements. In particular the Java implementation can efficiently handle large CSS files without bogging down with minutes of translation time.
The user interface for the CSS editor has also been revamped a bit, making better usage of available screen space, and sporting syntax highlighting and formatting thanks to CodeMirror. This change addresses a common gripes correctly supporting relative images (the generated SLD preserves the relative path) and polygon with strokes are now translated to a single polygon symbolizer (to the benefit of GetLegendGraphic calls). Finally, you’ll notice that the download size have been significantly trimmed, as we don’t need anymore the Scala runtime.
The new translator has been tested against a few hundreds CSS styles already, but of course it’s new, so it’s of paramount importance that you test your own styles, and let us know if you notice any regression.
We take the occasion to thank David Window for creating the initial CSS module, and Andrea Aime for porting it to java and acting as the new maintainer.Relative time support in WMS/WCS
As you probably knows GeoServer supports time based filtering in both WMS (aka WMS-T) and WCS (as part of WCS-EO). Up until now you had to specify the desired time either as an absolute value, e.g. &time=2011-05-02, or as an absolute range of values, e.g. &time=2011-05-02/2011-05-05.
The work done in GSIP 124 adds support for a vendor specific extension to the time syntax which allows the specification of relative times, e.g., the last 36 hours, “PT36H/PRESENT”, or the day after Decembre 25 2012, “2010-12-25T00:00:00.0Z/P1D”.
This allows for more compact requests, but more importantly, it allows to generate stable, publishable links to instants or intervals relative to the present server time, e.g., the wheather forecast for tomorrow, two days and three days in the future, or the temperature maps for the last three days, maybe in a KML document generated with animations over time.Miscellaneous
In addition a wide range of improvements have been made:
- For those into printed-maps, we added a new vendor parameter forcing GeoServer to ignore the WMS simple scale computation algorithm, and run a local and accurate one instead, resulting in better integration between printing requirements and maps with scale dependencies.
- The flow-control module now also supports rate based rules, with the ability to slow down, or simply reject, requests that are incoming from a specific client at an excessive rate.
- For those working at the dateline, you’ll be pleased to know that the WCS 2.0 GetCoverage requests can now handle bounding boxes crossing the dateline, and they will take the two halves of your coverage from the antipodes, merge them together in a single output file that will be returned to you (much like the same support for WMS, introduced in 2.6.0).
- For people playing with configuration in the database, the JDBCConfig module and core modules have seen a number of changes to increase scalability and push down into the database as much filtering as possible in a larger number of commonly used code paths.
- The DDS module, allowing extraction of DEM portions using the WMS protocol in order to feed Nasa Worldwind, has seen a number of fixes and now allows the specification of a texture compression format.
- Finally, the map preview has been switched to OpenLayers 3, although the nostalgic can get back the OL2 based one by adding the “-DENABLE_OL3=false” parameter to the JVM startup options. Thanks to Bart for helping add this to GeoServer.
This concludes the most visible changes, if you are missing some please check the full changelog for details, there is quite a bit more stuff in there.Community modules
In addition to the core GeoServer and extensions we have an active community area for experiments and new volunteers. This release comes with a number of new community modules that you might find useful.Clustering modules
The community section now holds two clustering modules allowing a cluster of GeoServer instances to work against a shared vision of the data directory.
The first one, contributed by GeoSolutions, works using J2EE JMS messages to share the state against the various nodes, and allows the usage of the normal file based configuration, either in a shared data dir mode, or data dir per node mode. This is know as the “JMS clustering”, see the documentation for more details. The module is ready for testing as it’s part of the nightly builds.
The second one, contributed by Boundless, works by using Hazelcast distributed messages, and it’s designed to work best against the JDBConfig module. At this time there are no released artifacts or documentation, but the adventurous user will find it pretty easy to figure out.GeoFence
The GeoFence advanced security subsystem has been donated to the GeoServer project by GeoSolutions earlier this year, this module is the plugin connecting a GeoServer instance to the GeoFence rule engine.
GeoFence allows to setup complex security rules and leverage the full power of the underlying GeoServer security subsystem, for example, it’s possible to establish security rules mixing in the same condition data and service being used, limit attributes available to certain users/operations, filter data so that certain records are not visible to the public, force certain default style to given user roles, and so on. The GeoFence wiki contains documentation on how to use and configure the system.
SOLR data store
The SOLR data store makes GeoServer connect to a SOLR server and publish its spatial document via the OGC protocols, efficiently making maps, serving them via the WFS service, and allowing spatial analysis via WPS. The user interface allows to classify sets of documents as layers, and map the document variable structure into the fixed structure of simple feature types served by GeoServer.
The gs-gpx and gs-kml modules offer two new PPIO to translate feature collection resulting off WPS processes in the respective formats. The KML one, in particular, also supports limited input parsing, allowing to send KML documents as inputs to the WPS services.The WPS download process
The wps-download community module forms the basis of an “advanced clip and ship” tool that allows a client to ask for data in a specific area, eventually reprojecting it, estimate the download size, and allow the preparazion of a zip package with the desired data, all via asynchronous calls, providing a good replacement for WFS/WCS when the amount of data to be extracted is too large to be delivered via synchronous HTTP calls.About GeoServer 2.7
Articles and resources for GeoServer 2.7 series:
Hace unas semanas se celebraron las 10as Jornadas Internacionales gvSIG en Valencia (España), en las que se presentaron una gran cantidad de ponencias de temáticas distintas. En ellas hubo una sesión dedicada especialmente a arquitectura, en la que se presentaron varias ponencias con temas distintos como Sistemas de Información Geográfica en un despacho de arquitectura, licencias urbanísticas, o certificados de eficiencia energética, todos ellos proyectos muy interesantes.
Están disponibles tanto las presentaciones como la grabación de las mismas. Las ponencias que se presentaron relativas a arquitectura fueron concretamente:
- Los SIG aplicados a la gestión de proyectos en un despacho de arquitectura (PDF: 8.0 MB); VICENTE J. VALERO (Grado en Arquitectura Técnica)
- Sistemas de Información Geográfica para el Control de Licencias Urbanísticas (PDF: 4.7 MB); PABLO PERUCHO (Grado en Arquitectura Técnica)
- Aplicación de los SIG a los certificados de eficiencia energética en la localidad de Llíria (PDF: 5.4 MB); MIGUEL ÁNGEL SIMEÓ (Grado en Arquitectura Técnica)
- Ruegos y preguntas de dicha sesión:
¡Esperamos que os sea útil esta información!
Filed under: events, gvSIG Desktop, spanish
Dear Readers, in this post we will show a practical use case taking advantages from the GeoServer CAS authentication provider extension. A small introduction first. As you may already know, GeoServer ships with an highly configurable security subsystem based on Spring Security. This has been completely re-engineered, providing a more secure and flexible authentication framework. We are not going to provide techincal details of the security framework in this blog, but it is worth to highlight few features which are quite interesting. Multiple authentication mechanisms can be active within GeoServer at a given time. The following figure illustrates the flow of a generic request. [caption id="attachment_1932" align="aligncenter" width="578"] Authentication Chain in GeoServer[/caption] Each GeoServer request is filtered through the authentication chain. The request is processed by each mechanism in the chain in order. If one of the mechanisms in the chain is able to successfully authenticate, the request moves to normal processing, otherwise the request is not routed any further and an authorization error (usually a HTTP 401) is returned to the user. In the case of GeoServer , the authentication chain is actually made up of two chains: a filter chain, which determines if further authentication of a request is required, and a provider chain, which performs the actual authentication. [caption id="attachment_1933" align="aligncenter" width="529"] Authentication Chain in detail: filters and providers[/caption] The filter chain performs a variety of tasks, including:
- Gathering user credentials from a request, for example from Basic and Digest Authentication headers
- Handling events such as ending the session (logging out), or setting the “Remember Me” browser cookie
- Performing session integration, detecting existing sessions and creating new sessions if necessary
- Invoking the authentication provider chain to perform actual authentication
- run complex geoprocessing algorithms on demand
- store the results on a cluster of GeoServer instance with a complete lifecycle management
- manage the outcomes with the ability to visualize them on a map.
Stace and I would like to welcome Matilda Anne Woodrow, born 5/1/15 at 10:36am.
She is a nice way to start 2015.
After the pretty crappy year that was 2014 it was finally nice to see Matilda in the flesh. The relief of seeing her alive and well is hard to put in words after losing Ellie in 2013.
People always ask about the lack of sleep, but it feels like we have more energy now then we did before. The emotional and physical toll that the pregancy took on our family had pretty much run us into the ground and it felt like it was never ending.
The toll of the pregancy had lead me to massive lack of motivation towards QGIS and pretty much everything else in life, which isn't healthy when you have a family to look after. Pro Tip: Get help if you find yourself in this spot, it be hard to recover if you go over the edge.
Anyway. Here is to a new year. A better year.
A partir del 16 de febrero comienzan unos cursos online gratuitos de gvSIG Desktop, ofrecidos por la Fundación Fessia en colaboración con la Asociación gvSIG.
Con dichos cursos se obtiene la certificación de usuario y la certificación usuario experto en gvSIG Desktop de manera gratuita. El colectivo al que va dirigido es únicamente a trabajadores en activo del sector agrario, forestal y pecuario.
Para este curso hay disponibles 175 plazas para la certificación de usuario y 50 plazas para la certificación de usuario experto. ¡No dejéis pasar la oportunidad!
Para más información se puede consultar la web www.gvsig-fessia.com o remitid las dudas vía email a firstname.lastname@example.org o a través del teléfono 644979959 (en horario de 09.00 h. a 14.00 h.).
Más información sobre fechas, en http://www.gvsig-fessia.com/wordpress/wp-content/uploads/2015/01/NOTA-DE-PRENSA.pdf
Filed under: gvSIG Desktop, spanish, training
This is a release of the GeoTools 12 Stable series recommended for production systems. The release schedule now offers 6 months of stable releases followed by six months of maintenance releases.
A few highlights from the GeoTools 12.2-Release Notes:
- A new process, FootprintExtractionProcess, uses the marching squares algorithm to extract the footprint of an image (the non black portion of it)
- Allow disabling advanced projection handling support in grid covearge renderer
- XML date parsing now allows some slightly off ISO standard dates too (as in, with the time non fully specified)
- Minor fixes in SLD 1.1 parsing to support the Priority GeoTools extension in labelling
- Some GeoPackage module fixes
- Some improvements in reprojection handling, providing better results when reprojecting data towards north polar stereographic, or Lambert azimuthal equal area over polar areas
- Improved robustness of the Decimator class against locations where the math transform return NaN values (improves map rendering in difficult areas while reprojecting)
- A number of other fixes, check the release notes for full details
About GeoTools 12
GeoServer 2.6.2 is the next the stable release of GeoServer and is recommended for production deployment. Thanks to everyone taking part, submitting fixes and new functionality:
- The issue with GZIP encoding breaking CSS download in some browsers has been fixed
- Have the pre-generalized store use again the simplified geometries against the PostGIS store (regressed in 2.6.0)
- Relative paths in SLD using a “file://image.png” syntax are supported again (regressed in 2.6.0)
- Removing also layer groups and styles contained in the workspace when the workspace is deleted
- Make WCS 2.0 / WCS EO more lenient when the workspace is not specified in requests, or when a single mosaic granule is requested in EO requests
- Allow disabling “advanced projection handling” for raster data via a system variable (for the few cases in which it misbehaves, fixes are underway, please do report if you see issues)
- A number of minor fixes to WCS capabilities and GetCoverage handling
- Added icelandic language support in the INSPIRE plugin
- Check the release notes for more details
- This release is made in conjunction with GeoTools 12.2
Thanks to Andrea (GeoSolutions), Jody and Kevin (Boundless) for this releaseAbout GeoServer 2.6
Articles and resources for GeoServer 2.6 series:
- GeoServer at FOSS4G
- Raster Views in GeoServer via the CoverageView concept (GeoSolutions)
- Advanced Raster Projection in GeoServer (GeoSolutions)
- Supporting Wind Barbs In GeoServer and GeoTools (GeoSolutions)
- GeoServer now supports Vector Footprints for ImageMosaic (GeoSolutions)
- 2.6.0 announcement and change log
- 2.6-RC1 announcement and change log
- 2.6-beta announcement and change log
English translation of the article by Joaquin del Cerro.
I´m back to explain to you, how download the sources of one of the gvSIG project´s example and how compile it and debug it.
In this article, I will use as IDE Netbeans 8, which is the IDE that normally I use for developing with gvSIG long time ago. In the future, I will install an Eclipse and in another post I will tell you how to work with it. Anyway, if you are a developer used to Eclipse, it would not be difficult to take the explained ideas.
Keep in mind that this post doesn´t want to be a NetBeans tutorial, just to explain the steps to follow for being able to download and compile gvSIG plugin with it.
Once you have already followed the steps described in the post “Como descargar y compilar gvSIG 2.1.0 en Linux y Windows“ and we have all the basic tools installed and set up, we can carry on.
To follow this post, we need internet access. In general, for compiling gvSIG we need internet access. And also:
- An Installable of gvSIG, in my case “gvSIG-desktop-2.1.0-2262-testing-win-x86-standard-withjre.exe”
- An Installable of NetBeans
First of all, we install IDE, NetBeans.
I´ve downloaded it from the NetBeans official website, in downloads:
We will find a few distributions availables for downloading:
- Java SE
- Java EE
- HTML5 & PHP
With the distribution “Java SE” will be enough for compiling the majority of gvSIG projects (excluding the ones requiring natives, because they are out of this post´s scope)
Simply we will download it and proceed to install it.
Through the initial set up, it will ask us for two things, where are we going to install it and where is the JDK to use. In this case, we will choose the JDK which we have already installed like it was explained in “Como descargar y compilar gvSIG 2.1.0 en Linux y Windows“.
Once we have installed NetBeans, we will install gvSIG. It will be a standard setup but we will not install it in “Program Files”;, I advise you to install it inside c:/devel, folder, where we have already downloaded the gvSIG sources. I have installed in :
The reason of installing it out of “Program Files” is because in my Windows installation, the user doesn´t have administrator privileges and if I do it in there, I will have problems later when I try to deploy the plugin binaries over that installation. Writing on c:/devel folder (created by me), I will not have any privilege problems at all.
Once we have these two things installed, we change the pathfile on “.gvsig-devel.properties” for pointing to the installation of gvSIG which we have just done in “c:/devel”.
Well, one more thing to do. The actual distribution for Windows of gvSIG-desktop doesn´t include a launcher in gvSIG.sh of gvSIG. The launcher is only included in Linux distribution( in future distributions we will include it as well for Windows). Well, for the moment is not present, so we have two options, if we have alredy compiled “org.gvsig.desktop”, we can take it from “org.gvsig.desktop/target/product” folder or if we don´t have it on hand, we can download it from:
We will leave it in the folder where we have installed gvSIG, along with the “gvsig-desktop.exe”.
Once we have these three things, we will boot NetBeans, then, downwnload the project “org.gvsig.landregistryviewer” and we will compile it. We will download it from the url:
To do it, we will go to menu:
Then, we will write in the field “Repository url” the value of the url (previously indicated) in where is the example project “org.gvsig.landregistryviewer”. We click on “Next”. It will show us the next page of the assistant, in which we should introduce the folder where we want to download the project. In our case, we will introduce “c:/devel”, and click on “Finish”.
When the project´s download finish, it will tell us about the maven projects presents in the donloaded project and it will ask us if we want to open any of them. The screen dialogue will be something like:
When we try to load the project for the first time, probably some error will appear due to the fact that some dependencies are not downloaded, showing us a message like:
Now, we will compile the downloaded project. To do that, we select it in the “proyectos” view and click on “Build project” of the toolbar.
So far, we have seen how to prepare our work environment, download and compile the plugin. If we want to see our plugin in action, simply we will boot Console2, go to gvSIG installation folder, c:/devel/gvsig/2.1.0-2262, and run gvSIG.sh.
$ cd c:/devel/gvsig/2.1.0-2262
Let´s see how to debug our plugin.
We will open the subproject “org.gvsig.landregistryviewer.app.mainplugin”.
Now, we will load the class LandRegistryViewerExtension and put a breaking point at method´s start CreateViewWindow. To do this, we click twice in the line´s number.
Then, we will back to NetBeans, and connect to gvSIG in debug mode.
If we need to see the code of gvSIG, we click on Ctrl-O and type the class name which we want to locate.For instance, if wew want to put a breaking point in the proect creation, we will type Ctrl-O y “DefaultProject” …
All I have talked about is related to Windows 7. For Linux developers, it´s quite easy to follow and you just need to change the path c:/devel for the one that you use to leave the sources.
For Eclipse developers, the steps to follow are similars, the most complicated issue could be the support setting of maven which has already NetBeans.
It´s a post quite long (a lot of screenshots), but I think that they could be helpful to follow up the article.
I hope it was useful,
Greetings to all and thank you!
Filed under: development, english, gvSIG Desktop, gvSIG development