ArcGIS Pro 3.3 API Reference Guide
ArcGIS.Desktop.Mapping.Voxel Namespace / VoxelVolume Class / GetSlices Method
Example

In This Topic
    GetSlices Method
    In This Topic
    Gets the collection of slices
    Syntax
    public IList<SliceDefinition> GetSlices()
    Public Function GetSlices() As IList(Of SliceDefinition)
    Example
    Get the Collection of Slices
    //var voxelLayer = ... ;
    //Must be on the QueuedTask.Run()
    
    //At 2.x - var slices = voxelLayer.GetSlices();
    
    //Use the SelectedVariableProfile to get the slices currently in the TOC
    //via its associated volume
    var volume = voxelLayer.SelectedVariableProfile.Volume;
    var slices = volume.GetSlices();
    
    //Do something... e.g. make them visible
    foreach (var slice in slices)
    {
        slice.IsVisible = true;
        //at 2.x - voxelLayer.UpdateSlice(slice);
        volume.UpdateSlice(slice);
    }
    
    //expand the slice container and make sure container visibility is true
    voxelLayer.SetSliceContainerExpanded(true);
    voxelLayer.SetSliceContainerVisibility(true);
    
    Get a Slice
    //var voxelLayer = ... ;
    //Must be on the QueuedTask.Run()
    
    //At 2.x -
    //var slice = voxelLayer.GetSlices().FirstOrDefault();
    //var slice2 = voxelLayer.GetSlices().First(s => s.Id == my_slice_id);
    
    //Use the SelectedVariableProfile to get the slices currently in the TOC
    //via its associated volume
    var volume = voxelLayer.SelectedVariableProfile.Volume;
    var slice = volume.GetSlices().FirstOrDefault();
    var slice2 = volume.GetSlices().First(s => s.Id == my_slice_id);
    
    Delete Slice
    //var voxelLayer = ... ;
    //Must be on the QueuedTask.Run()
    
    //At 2.x
    //var last_slice = voxelLayer.GetSlices().LastOrDefault();
    //   if (last_slice != null)
    //     voxelLayer.DeleteSlice(last_slice);
    
    //   //Delete all slices
    //   var slices = voxelLayer.GetSlices();
    //   foreach (var slice in slices)
    //     voxelLayer.DeleteSlice(slice);
    
    //Use the SelectedVariableProfile to get the slices currently in the TOC
    //via its associated volume
    var volume = voxelLayer.SelectedVariableProfile.Volume;
    
    var last_slice = volume.GetSlices().LastOrDefault();
    if (last_slice != null)
        volume.DeleteSlice(last_slice);
    
    //Delete all slices
    var slices = volume.GetSlices();
    foreach (var slice in slices)
        volume.DeleteSlice(slice);
    
    Requirements

    Target Platforms: Windows 11, Windows 10

    ArcGIS Pro version: 3 or higher.
    See Also