ArcGIS Pro 3.7 API Reference Guide
ArcGIS.Core.Data.Analyst3D Namespace / TinDataset Class
Members Example

In This Topic
    TinDataset Class
    In This Topic
    Represents a TIN dataset.
    Object Model
    TinDataset ClassPolygon ClassDatastore ClassTinDatasetDefinition ClassTinEdge ClassEnvelope ClassEnvelope ClassTinEdge ClassTinNode ClassTinNode ClassEnvelope ClassTinTriangle ClassTinTriangle ClassTinEdgeCursor ClassTinNodeCursor ClassTinTriangleCursor Class
    Syntax
    Public NotInheritable Class TinDataset 
       Inherits ArcGIS.Core.Data.Dataset
       Implements System.IDisposable 
    public sealed class TinDataset : ArcGIS.Core.Data.Dataset, System.IDisposable  
    Example
    Open a TIN Dataset
    {
      //Note: This snippet requires to be run on the MCT (Main CIM Thread)
      string path = @"d:\Data\Tin";
      var fileConnection = new FileSystemConnectionPath(new Uri(path), FileSystemDatastoreType.Tin);
    
      using (FileSystemDatastore dataStore = new FileSystemDatastore(fileConnection))
      {
        // TIN is in a folder at d:\Data\Tin\TinDataset
    
        string dsName = "TinDataset";
    
        using (var dataset = dataStore.OpenDataset<ArcGIS.Core.Data.Analyst3D.TinDataset>(dsName))
        {
          //Do something with the dataset
        }
      }
    }
    Retrieve dataset objects
    {
      //Note: Needs QueuedTask to run
      {
        using (var tin = tinLayer.GetTinDataset())
        {
          using var tinDef = tin.GetDefinition();
          Envelope extent = tinDef.GetExtent();
          SpatialReference sr = tinDef.GetSpatialReference();
        }
    
        using (terrain = terrainLayer.GetTerrain())
        {
          using var terrainDef = terrain.GetDefinition();
          Envelope extent = terrainDef.GetExtent();
          SpatialReference sr = terrainDef.GetSpatialReference();
        }
    
        using (lasDataset = lasDatasetLayer.GetLasDataset())
        {
          using var lasDatasetDef = lasDataset.GetDefinition();
          Envelope extent = lasDatasetDef.GetExtent();
          SpatialReference sr = lasDatasetDef.GetSpatialReference();
        }
      }
    }
    Create a TinLayer from a dataset
    {
      var tinCP_ds = new TinLayerCreationParams(tinDataset);
      tinCP_ds.Name = "My TIN Layer";
      tinCP_ds.IsVisible = false;
    
      //Create the layer to the TIN
      // Note: Needs QueuedTask to run
      {
        var tinLayer_ds = LayerFactory.Instance.CreateLayer<TinLayer>(tinCP_ds, map);
      }
    }
    Create a TinLayer with renderers
    {
      var tinCP_renderers = new TinLayerCreationParams(tinDataset)
      {
        Name = "My TIN layer",
        IsVisible = true
      };
    
      // define the node renderer - use defaults
      var node_rd = new TinNodeRendererDefinition();
    
      // define the face/surface renderer
      var face_rd = new TinFaceClassBreaksRendererDefinition();
      face_rd.ClassificationMethod = ClassificationMethod.NaturalBreaks;
      // accept default color ramp, breakCount
    
      // set up the renderer dictionary
      var rendererDict = new Dictionary<SurfaceRendererTarget, TinRendererDefinition>
    {
      { SurfaceRendererTarget.Points, node_rd },
      { SurfaceRendererTarget.Surface, face_rd }
    };
    
      // assign the dictionary to the creation params
      tinCP_renderers.RendererDefinitions = rendererDict;
      // Note: Needs QueuedTask to run
      {
        // create the layer
        var tinLayer_rd = LayerFactory.Instance.CreateLayer<TinLayer>(tinCP_renderers, MapView.Active.Map);
      }
    }
    Inheritance Hierarchy

    System.Object
       ArcGIS.Core.CoreObjectsBase
          ArcGIS.Core.Data.Dataset
             ArcGIS.Core.Data.Analyst3D.TinDataset

    Requirements

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

    ArcGIS Pro version: 3.2 or higher.
    See Also