Skip to content

Commit

Permalink
Add support for Cesium IonImageryProvider type
Browse files Browse the repository at this point in the history
Relates to #1789
  • Loading branch information
robyngit committed Oct 5, 2021
1 parent 54bed90 commit 703c0c4
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 4 deletions.
2 changes: 1 addition & 1 deletion src/js/collections/maps/MapAssets.js
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ define(
model: Cesium3DTileset
},
{
types: ['BingMapsImageryProvider'],
types: ['BingMapsImageryProvider', 'IonImageryProvider'],
model: CesiumImagery
},
{
Expand Down
5 changes: 4 additions & 1 deletion src/js/models/maps/Map.js
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,10 @@ define(

// For now, filter out types that are not supported before initializing any
// MapAssets collections. TODO: Make this a configurable list somewhere.
var supportedTypes = ['Cesium3DTileset', 'BingMapsImageryProvider', 'CesiumTerrainProvider']
var supportedTypes = [
'Cesium3DTileset', 'BingMapsImageryProvider', 'IonImageryProvider',
'CesiumTerrainProvider'
]

if (attrs.layers && attrs.layers.length && Array.isArray(attrs.layers)) {
var supportedLayers = _.filter(attrs.layers, function (layer) {
Expand Down
6 changes: 6 additions & 0 deletions src/js/models/maps/assets/CesiumImagery.js
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,7 @@ define(
var cesiumOptions = this.get('cesiumOptions');
var type = this.get('type')
var providerFunction = Cesium[type]

var initialAppearance = {
alpha: this.get('opacity'),
show: this.get('visible')
Expand All @@ -117,6 +118,11 @@ define(

if (type === 'BingMapsImageryProvider') {
cesiumOptions.key = cesiumOptions.key || MetacatUI.AppConfig.bingMapsKey
} else if (type === 'IonImageryProvider') {
cesiumOptions.assetId = Number(cesiumOptions.ionAssetId)
delete cesiumOptions.ionAssetId
cesiumOptions.accessToken =
cesiumOptions.cesiumToken || MetacatUI.appModel.get('cesiumToken');
}

if (providerFunction && typeof providerFunction === 'function') {
Expand Down
4 changes: 2 additions & 2 deletions src/js/views/maps/CesiumWidgetView.js
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ define(
renderFunction: 'add3DTileset'
},
{
types: ['BingMapsImageryProvider'],
types: ['BingMapsImageryProvider', 'IonImageryProvider'],
renderFunction: 'addImagery'
},
{
Expand Down Expand Up @@ -371,7 +371,7 @@ define(
* the Feature model that is set on the Map's `selectedFeature` attribute. NOTE:
* This currently only works with 3D tile features.
* @param {Cesium3DTileFeature} feature
*/
*/
updateSelectedFeatureModel: function (feature) {
try {
var view = this
Expand Down

0 comments on commit 703c0c4

Please sign in to comment.