ArcGIS Pro 3.7 API Reference Guide
ArcGIS.Desktop.Mapping.Voxel Namespace / SliceDefinition Class
Members Example

In This Topic
    SliceDefinition Class
    In This Topic
    Represents the definition of a Slice. Refer to ArcGIS.Desktop.Mapping.VoxelLayer
    Object Model
    SliceDefinition ClassSliceDefinition ClassVoxelLayer ClassCoordinate3D StructureCoordinate3D Structure
    Syntax
    Public Class SliceDefinition 
    public class SliceDefinition 
    Remarks
    A slice is a plane that cuts the voxel volume. Use slices to define an area of interest within a voxel.
    Example
    Get/Set Selected Voxel Assets from the TOC
    {
      var surfaces = MapView.Active.GetSelectedIsosurfaces();
      //set selected w/ MapView.Active.SelectVoxelIsosurface(isoSurface)
      var slices = MapView.Active.GetSelectedSlices();
      //set selected w/ MapView.Active.SelectVoxelSlice(slice)
      var sections = MapView.Active.GetSelectedSections();
      //set selected w/ MapView.Active.SelectVoxelSection(section)
      var locked_sections = MapView.Active.GetSelectedLockedSections();
      //set selected w/ MapView.Active.SelectVoxelLockedSection(locked_section)
    }
    Get the Collection of Slices
    {
      // Note: call within QueuedTask.Run()
      {
        //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;
          volume.UpdateSlice(slice);
        }
    
        //expand the slice container and make sure container visibility is true
        voxelLayer.SetSliceContainerExpanded(true);
        voxelLayer.SetSliceContainerVisibility(true);
      }
    }
    Get a Slice
    {
      //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);
    }
    Get Selected Slice in TOC
    {
      // Note: call within QueuedTask.Run()
      {
        var slice = MapView.Active?.GetSelectedSlices()?.FirstOrDefault();
        if (slice != null)
        {
          //Do something with the slice
        }
      }
    }
    Get Voxel Layer for the Selected Slice in TOC
    {
      // Note: call within QueuedTask.Run()
      {
        voxelLayer = null;
        var slice = MapView.Active?.GetSelectedSlices()?.FirstOrDefault();
        if (slice != null)
        {
          voxelLayer = slice.Layer;
          //TODO - use the layer
        }
      }
    }
    Inheritance Hierarchy

    System.Object
       ArcGIS.Desktop.Mapping.Voxel.SliceDefinition

    Requirements

    Target Platforms: Windows 11 Home, Pro, Enterprise (64 bit)

    ArcGIS Pro version: 3.0 or higher.
    See Also