We have a customer from the building industry. He wants to see boreholes visualized in 3D with the ArcGIS Runtime .NET.
So, I made some tests with a single subsurface geometry, prepared in a scene layer package.
I used the following code, by the way.
var scene = new Scene(BasemapType.Topographic);
var arcGisSceneLayer = new ArcGISSceneLayer(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"\data\Baugrube_WGS84.slpk"));
var elevationSource =
var sceneSurface = new Surface();
scene.BaseSurface = sceneSurface;
var targetGeometry = arcGisSceneLayer.FullExtent;
var camera = new Camera(targetGeometry.GetCenter(), 354.0970719164464, 67.441317295290986, 0);
scene.InitialViewpoint = new Viewpoint(targetGeometry, camera);
MySceneView.Scene = scene;
The problem is, that I have no chance to see the data in subsurface. The ground is not transparent, the camera could not be rotated below the surface.
Only the top of the geometry is visible, which is above the ground. (that's the situation the customer will have later, too. The boreholes are filled up with cement and will have an overlap of a few centimeters above surface).
With setting the
sceneSurface.ElevationExaggeration = 0.9;
I could see the full geometry:
But then I will not get a feeling of how deep the geometry is below surface.
(by the way - this seems not to be a solution for geometries which are located in oceans as I did not succeed in making data visible this way)
- Am I right or did I make any mistakes? Is there a solution for my scenario?
- If it is not possible so far: how is the roadmap, when will this be possible?