Introducing GeoSpeckle
Meet GeoSpeckle (alpha), a new Speckle server that turns any Speckle data into geospatial data.
There is nothing you need to install; instead, feed a new Speckle URL into a browser, GIS app or a web-based map to add Speckle data as a Feature Layer!
Now you can embed a Speckle URL into your Javascript and map your data with Leaflet, OpenLayers and other libraries. You can also add a Web Feature Service connection in QGIS, AutoCAD or Civil3D - no desktop connectors are required.
Now, let's break it down step by step.
The Idea Behind GeoSpeckle
We are making Speckle data even more shareable! As discussed in our post on Geospatial data, this field has a much longer history of data standardisation and exchange options than AEC.
URL-based data sharing protocols are a usual practice, possible due to integrated data “receivers” by most GIS and web apps: they are tuned to communicate with certain types of servers storing and distributing geospatial data commonly.
As such, you can easily add a satellite imagery layer using your area's Google Maps Tile Service URL or Digital Elevation Model using the Server URL provided by your municipality.
There is a limited number of data standards and server communication protocols that any app handling GIS data is familiar with. We want to use it by converting Speckle data on-demand into a compatible form that is shareable by a single URL via the OGC API protocol.
Geo-locating and Sharing Maps Have Never Been Easier
Here is a quick overview of the opportunities this is opening for you.
- Instant geolocated data preview and publishing
- Interactive maps for exploring your data, which you can enrich with custom properties or media (e.g. from field data collection)
- Immediate geolocated preview of any CAD/BIM model
2. Speckle database as a geo-database
- Real-time “basemap” for team projects (e.g. for Civil3D, AutoCAD, QGIS)
- Easy data publishing on web-portals with embedded Speckle URL
3. Collaborative mapping (via Speckle comments)
- Web-editing, no software or expertise required
4. CAD to GIS import
- Assigning all essential parameters via URL
- Automatic units handling
- Preserving original properties
- Easy tracking of updates
How To Use GeoSpeckle?
All the magic happens here: https://geo.speckle.systems.
You can access it from your browser or by using any OGC API client.
The link above doesn’t store any data itself. You need to point to a specific Speckle model so that the data will be fetched and converted for you.
Additionally, parameters like ‘latitude’, and ‘longitude’ can help locate the model if it was stored in a local Cartesial coordinate system, and other optional parameters such as ‘limit’, ‘dataType’ and ‘preserveAttributes’ can make the data request even more specific.
Will GeoSpeckle replace Speckle GIS Connectors?
Short answer: no.
Here’s why:
OGC API Features is a way to share the geospatial data grouped into datasets (layers). In other words, all Points in your model will be mapped into 1 Point Layer, the same with Lines and Polygons. Even though you can choose to preserve all original attributes, all the attributes will be shared between all the objects in the layer.
This is not what you might need if you plan to run data analysis, but is a valid option to have a model imported into your GIS app for a reference purpose.
Connectors, in contrast, import the data into your host app in the most authentic way possible: keeping the nested objects structure, grouping the objects into layers by the data hierarchy, and applying styles and colours.
Connectors intend to bring the closest possible replica of your model into a GIS app, while the Speckle OGC API Features are importing all objects of the requested type with no UI interventions.
Lastly, the Speckle OGC API Features server is designed to accept only Speckle Model links (not individual Versions), ensuring that an added Server Connection, or a URL embedded into a web map, would always reference the latest data version.
In the desktop app connectors, where the data consumer has more control, there is an option to import a specific Model Version.
How GeoSpeckle Works
Pygeoapi - the Python server implementation of the OGC API suite of standards - is the foundation of this project, allowing the storage and distribution of geospatial data to the client.
In our case, instead of converting and saving all Speckle data in a Features-compatible format, we use the Pygeoapi server as an interface, pointing to the data on the existing Speckle server, converting it on-demand, and returning to the client as OGC API Features format.
All you need is to add the model “address” on the Speckle server to the URL parameters so that Pygeoapi can fetch the exact Speckle model. You can discover more details and demo examples on our GitHub page.
If you are still reading...
... We are happy to welcome you to the GIS User Group on our Community Forum and hear about your experience! Sign up to be the first to hear about our GIS-related updates and be notified of the closed beta programs.
Subscribe to Speckle News
Stay updated on the amazing tools coming from the talented Speckle community.