File Geodatabase Not Loading Properly on SceneView

405
2
07-13-2022 07:45 AM
AnthonyWalsh3
New Contributor II

Hello,

I have a file geodatabase that contains mosaic datasets and I can load this file geodatabase on MapView by using LocalServer. However, the same file geodatabase is not loading on SceneView properly, only a little part of it shown on the Scene. The interesting thing is that it works properly on a different computer. Everything is same but the results are different. Do you have any ideas about what might be the cause of the problem? 

 

RuntimeHata.png

0 Kudos
2 Replies
MichaelBranscomb
Esri Frequent Contributor

Hi,

Does the rest of data render as you zoom in / navigate around the scene?  

Assuming you're adding the file geodatabase mosaic using a map image layer, the scene view should make image requests to the local server based on the visible extent (viewpoint).

You might also consider running something like Fiddler on each machine and comparing the image responses, but I'd think they'd be consistent with what's being displayed on the view. Note if you want to use fiddler, you'll need to enable access in the Local Server Utility app.

 

0 Kudos
AnthonyWalsh3
New Contributor II

Hi @MichaelBranscomb,

- No, the rest of the data does not render when I navigate or zoom. The loaded section remains the same, only the part thats displayed in the question.

- The mosaics in the file geodatabase were added using ArcGIS PRO. I am using ArcGISMapImageLayer class for adding the layer to the scene.

I do not have access to Fiddler, therefore I cannot test it with Fiddler this at the moment.

I noticed that this problem might not be directly related to the file geodatabase. I tried loading a basemap with .tif extension with two methods: First one is the same method I use for loading the geodatabase (using ArcGISMapImageLayer) and the Second using Raster and RasterLayer classes. With the first method, the basemap image is not displayed properly, same with the file geodatabase situation. But the second method can show it without a problem. However, for filegeodatabase, I have to use the first method. Below is the function I use for the First method, is there anything missing/incorrect here? (Reminder: same code works fine with the mapview.)

 

 

public async static void DisplayImg(Geomodel geomodel, string ecwFolderPath, string ecwFileName)
{
    LocalMapService localMapService = new LocalMapService(EMPTY_MPKX_PATH);
    RasterWorkSpace rasterWorkSpace = new RasterWorkSpace("Raster", ecwFolderPath);
    RasterSublayerSource rasterSublayerSource = new RasterSublayerSource(rasterWorkSpace.Id, ecwFileName);
    ArcGISMapImageSublayer arcGISMapImageSublayer = new ArcGISMapImageSublayer(0, rasterSublayerSource);
    localMapService.SetDynamicWorkspaces( new List<DynamicWorkspace>(){rasterWorkSpace} );
    await localMapService.StartAsync();

    ArcGISMapImageLayer arcGISMapImageLayer = new ArcGISMapImageLayer(localMapService.Url);
    await arcGISMapImageLayer.LoadAsync();
    ArcGISMapImageLayer.Sublayers.Add(arcGISMapImageSublayer);
    geomodel.OperationalLayers.Add(arcGISMapImageLayer);
}

 

 

Note: This is tested on Local Server 100.15.

0 Kudos