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

In This Topic
    LasDatasetLayer Class
    In This Topic
    Represents a LAS dataset layer.
    Object Model
    LasDatasetLayer ClassCIMTinRenderer ClassCIMDataConnection ClassTimeExtent ClassCIMBaseLayer ClassLasPointDisplayFilter ClassElevationTypeDefinition ClassLasDataset ClassLineOfSightResult ClassSpatialReference ClassTimeParameters ClassSurfaceZsResult ClassMap ClassILayerContainer InterfaceEnvelope ClassLasPointCursor Class
    Syntax
    Example
    Retrieve layers
    {
      // find the first TIN layer
      tinLayer = MapView.Active.Map.GetLayersAsFlattenedList().OfType<TinLayer>().FirstOrDefault();
    
      // find the first Terrain layer
      terrainLayer = MapView.Active.Map.GetLayersAsFlattenedList().OfType<TerrainLayer>().FirstOrDefault();
    
      // find the first LAS dataset layer
      lasDatasetLayer = MapView.Active.Map.GetLayersAsFlattenedList().OfType<LasDatasetLayer>().FirstOrDefault();
    
      // find the first surface layer
      surfaceLayer = MapView.Active.Map.GetLayersAsFlattenedList().OfType<SurfaceLayer>().FirstOrDefault();
    }
    Create a LasDatasetLayer
    {
      string lasPath = @"d:\Data\LASDataset.lasd";
      var lasURI = new Uri(lasPath);
    
      var lasCP = new LasDatasetLayerCreationParams(lasURI);
      lasCP.Name = "My LAS Layer";
      lasCP.IsVisible = false;
      // Note: Needs QueuedTask to run
      {
        //Create the layer to the LAS dataset
        lasDatasetLayer = LayerFactory.Instance.CreateLayer<LasDatasetLayer>(lasCP, map);
      }
    }
    Create a LasDatasetLayer from a LasDataset
    {
      if (lasDataset == null)
        throw new ArgumentNullException(nameof(lasDataset));
    
      var lasCP_ds = new LasDatasetLayerCreationParams(lasDataset);
      lasCP_ds.Name = "My LAS Layer";
      lasCP_ds.IsVisible = false;
      // Note: Needs QueuedTask to run
      {
        //Create the layer to the LAS dataset
        var lasDatasetLayer_ds = LayerFactory.Instance.CreateLayer<LasDatasetLayer>(lasCP_ds, map);
      }
    }
    Create a LasDatasetLayer with renderers
    {
      var lasCP_renderers = new LasDatasetLayerCreationParams(lasDataset);
      lasCP_renderers.Name = "My LAS Layer";
      lasCP_renderers.IsVisible = false;
    
      // create a point elevation renderer
      var ptR = new LasStretchRendererDefinition();
      // accept all defaults
    
      // create a simple edge renderer
      var edgeR = new TinEdgeRendererDefintion();
      // accept all defaults
    
      // add renderers to dictionary
      var l_dict = new Dictionary<SurfaceRendererTarget, TinRendererDefinition>();
      l_dict.Add(SurfaceRendererTarget.Points, ptR);
      l_dict.Add(SurfaceRendererTarget.Edges, edgeR);
    
      // assign dictionary to creation params
      lasCP_renderers.RendererDefinitions = l_dict;
      // Note: Needs QueuedTask to run
      {
        //Create the layer to the LAS dataset
        var lasDatasetLayer_rd = LayerFactory.Instance.CreateLayer<LasDatasetLayer>(lasCP_renderers, map);
      }
    }
    LAS Points Classification Unique Value Renderer
    {
      var lasPointsClassificationRendererDef = new LasUniqueValueRendererDefinition(LasAttributeType.Classification);
      // accept the defaults for color ramp, symbolTemplate, symbol scale factor
    
      if (lasDatasetLayer == null)
        return;
      // Note: Needs QueuedTask to run
      {
        if (lasDatasetLayer.CanCreateRenderer(lasPointsClassificationRendererDef))
        {
          CIMTinRenderer renderer = lasDatasetLayer.CreateRenderer(lasPointsClassificationRendererDef);
          if (lasDatasetLayer.CanSetRenderer(renderer, SurfaceRendererTarget.Points))
            lasDatasetLayer.SetRenderer(renderer, SurfaceRendererTarget.Points);
        }
      }
    }
    Inheritance Hierarchy

    System.Object
       ArcGIS.Desktop.Framework.Contracts.PropertyChangedBase
          ArcGIS.Desktop.Mapping.MapMember
             ArcGIS.Desktop.Mapping.Layer
                ArcGIS.Desktop.Mapping.SurfaceLayer
                   ArcGIS.Desktop.Mapping.LasDatasetLayer

    Requirements

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

    ArcGIS Pro version: 3.2 or higher.
    See Also