I am trying to load a specific ArcGIS MapServer tile layer in Cesium using Cesium.ArcGisMapServerImageryProvider, but I am unable to get it to display correctly.
Here are the details:
-
MapServer URL:
http://27.101.20.35:6080/arcgis/rest/services/airPhoto_intra2/G2025_10/MapServer -
Code used:
my3DMap.gsImageModel = new Cesium.ProviderViewModel({
creationFunction: function () {
return Cesium.ArcGisMapServerImageryProvider.fromUrl(
window.app.arcgisHost+'/arcgis/rest/services/airPhoto_intra2/G2025_10/MapServer',
{
enablePickFeatures: false
}
);
}
});
viewer.baseLayerPicker.viewModel.selectedImagery = my3DMap.gsImageModel;
-
Errors in console:
-
Failed to obtain image tile X: ... Y: ... Level: ...(404 Not Found) -
TypeError: Cannot read properties of undefined (reading 'getDerivedResource') -
TypeError: t[n].queueReprojectionCommands is not a function
-
-
Tile info from ArcGIS REST service:
-
Levels of detail: 0–11
-
Spatial Reference:
102100 (Web Mercator) -
Origin and full extent are defined in meters, but the tiles generated by the service do not seem to match Cesium’s expected row/column scheme.
-
I have successfully loaded other MapServer layers with similar code, so it seems specific to this layer. I suspect it may be related to the tile indexing, spatial reference, or non-standard tiling scheme.
Could you please advise how to properly load this type of ArcGIS tile layer in Cesium?
Thank you very much for your help.