ArcGIS Pro 3.0 API Reference Guide
ArcGIS.Desktop.Mapping Namespace / VoxelLayer Class / SetSliceContainerExpanded Method
Toggle expanded.
Example

In This Topic
    SetSliceContainerExpanded Method
    In This Topic
    Sets the slice container expanded or collapsed. This method must be called on the MCT. Use QueuedTask.Run.
    Syntax
    public void SetSliceContainerExpanded( 
       bool isExpanded
    )
    Public Sub SetSliceContainerExpanded( _
       ByVal isExpanded As Boolean _
    ) 

    Parameters

    isExpanded
    Toggle expanded.
    Exceptions
    ExceptionDescription
    This method or property must be called within the lambda passed to QueuedTask.Run
    Example
    Manipulate the Voxel Layer TOC Group
    //var voxelLayer = ...
    //Must be on the QueuedTask.Run()
    
    //Toggle containers and visibility in the TOC
    voxelLayer.SetExpanded(!voxelLayer.IsExpanded);
    voxelLayer.SetVisibility(!voxelLayer.IsVisible);
    voxelLayer.SetIsosurfaceContainerExpanded(!voxelLayer.IsIsosurfaceContainerExpanded);
    voxelLayer.SetIsosurfaceContainerVisibility(!voxelLayer.IsIsosurfaceContainerVisible);
    voxelLayer.SetSliceContainerExpanded(voxelLayer.IsSliceContainerExpanded);
    voxelLayer.SetSliceContainerVisibility(!voxelLayer.IsSliceContainerVisible);
    voxelLayer.SetSectionContainerExpanded(!voxelLayer.IsSectionContainerExpanded);
    voxelLayer.SetSectionContainerVisibility(!voxelLayer.IsSectionContainerVisible);
    voxelLayer.SetLockedSectionContainerExpanded(!voxelLayer.IsLockedSectionContainerExpanded);
    voxelLayer.SetLockedSectionContainerVisibility(!voxelLayer.IsLockedSectionContainerVisible);
    
    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);
    
    Create a Slice
    //var voxelLayer = ... ;
    //Must be on the QueuedTask.Run()
    
    if (voxelLayer.Visualization != VoxelVisualization.Volume)
        voxelLayer.SetVisualization(VoxelVisualization.Volume);
    voxelLayer.SetSliceContainerExpanded(true);
    voxelLayer.SetSliceContainerVisibility(true);
    
    //To stop the Voxel Exploration Dockpane activating use:
    voxelLayer.AutoShowExploreDockPane = false;
    //This is useful if u have your own dockpane currently activated...
    
    //At 2.x - var volumeSize = voxelLayer.GetVolumeSize();
    
    //Use the SelectedVariableProfile to get the slices currently in the TOC
    //via its associated volume
    var volume = voxelLayer.SelectedVariableProfile.Volume;
    var volumeSize = volume.GetVolumeSize();
    
    //Orientation 90 degrees (West), Tilt 0.0 (vertical)
    //Convert to a normal
    var normal = voxelLayer.GetNormal(90, 0.0);
    
    //Create the slice at the voxel mid-point. VoxelPosition
    //is specified in voxel-space coordinates
    
    //At 2.x - 
    //voxelLayer.CreateSlice(new SliceDefinition()
    //{
    //    Name = "Middle Slice",
    //    VoxelPosition = new Coordinate3D(volume.Item1 / 2, volume.Item2 / 2, volume.Item3 / 2),
    //    Normal = normal,
    //    IsVisible = true
    //});
    
    //Create the slice on the respective volume
    volume.CreateSlice(new SliceDefinition()
    {
        Name = "Middle Slice",
        VoxelPosition = new Coordinate3D(volumeSize.X / 2, volumeSize.Y / 2, volumeSize.Z / 2),
        Normal = normal,
        IsVisible = true
    });
    
    //reset if needed...
    voxelLayer.AutoShowExploreDockPane = true;
    
    Requirements

    Target Platforms: Windows 11, Windows 10, Windows 8.1

    See Also