This is documentation of an archived release.
For documentation on the current version, please check Knowledge Base.
For documentation on the current version, please check Knowledge Base.
Show Footprints
This page describes how to track Resource updates to render Footprints on the Reference Map.
Listening
You as a developer should listen for changes to the Reference Map extent. When it changes, footprints should be updated.
To listen to resource changes, use these signals :
- onResourceOpened : fired when a resource is opened.
- onResourceClosed : fired when a resource is closed.
When any of these events occur, footprints should be refreshed.
Loading
Use the getStreamingFootprints2D to retrieve footprints for a 2D map.
Depending on your host environment, it may be the case that “map extent” events are fired faster than you can handle them. In such a case, loading footprints should be rate-limited by limiting the calls to the
getStreamingFootprints2D function.
For javascript, see https://www.npmjs.com/package/debounce
/** * Update footprint data. * Assumes reference map scale,crs,minX,minY,maxX and maxY properties are available in this context. */ function updateFootprints() { // Get map extent var bounds = Bounds.fromXY(crs,minX,minY,maxX,maxY); // Get map objects var mapObjects = viewer.getStreamingFootprints2D(null/*resourceIds*/,bounds,scale).then(renderFootprints); // Render map objects renderMapObjects(mapObjects); } // Listen to signals viewer.onResourceOpened.add(updateFootprints); viewer.onResourceClosed.add(updateFootprints);
Rendering
See About MapObjects.
Last modified:: 2019/03/25 11:36