ArcGIS Pro 3.4 API Reference Guide
ArcGIS.Core.Data.Analyst3D Namespace / TinFilterType Enumeration
Example Example

In This Topic
    TinFilterType Enumeration
    In This Topic
    Filter types. Used in TinFilter.FilterType.
    Syntax
    Members
    MemberDescription
    All Filter for all elements in the TIN.
    InsideDataAreaFilter for all elements inside the TIN data area only. See TinDataset.GetDataArea.
    InsideTin Filter for all elements in the TIN except those associated to super nodes.
    Example
    Search for TIN Nodes
    // search all nodes
    using (ArcGIS.Core.Data.Analyst3D.TinNodeCursor nodeCursor = tinDataset.SearchNodes(null))
    {
      while (nodeCursor.MoveNext())
      {
        using (ArcGIS.Core.Data.Analyst3D.TinNode node = nodeCursor.Current)
        {
    
        }
      }
    }
    
    // search within an extent
    ArcGIS.Core.Data.Analyst3D.TinNodeFilter nodeFilter = new ArcGIS.Core.Data.Analyst3D.TinNodeFilter();
    nodeFilter.FilterEnvelope = envelope;
    using (ArcGIS.Core.Data.Analyst3D.TinNodeCursor nodeCursor = tinDataset.SearchNodes(nodeFilter))
    {
      while (nodeCursor.MoveNext())
      {
        using (ArcGIS.Core.Data.Analyst3D.TinNode node = nodeCursor.Current)
        {
    
        }
      }
    }
    
    // search all "inside" nodes
    nodeFilter = new ArcGIS.Core.Data.Analyst3D.TinNodeFilter();
    nodeFilter.FilterType = ArcGIS.Core.Data.Analyst3D.TinFilterType.InsideDataArea;
    using (ArcGIS.Core.Data.Analyst3D.TinNodeCursor nodeCursor = tinDataset.SearchNodes(nodeFilter))
    {
      while (nodeCursor.MoveNext())
      {
        using (ArcGIS.Core.Data.Analyst3D.TinNode node = nodeCursor.Current)
        {
    
        }
      }
    }
    
    // search for super nodes only
    nodeFilter = new ArcGIS.Core.Data.Analyst3D.TinNodeFilter();
    nodeFilter.FilterEnvelope = tinDataset.GetSuperNodeExtent();
    nodeFilter.SuperNode = true;
    using (ArcGIS.Core.Data.Analyst3D.TinNodeCursor nodeCursor = tinDataset.SearchNodes(nodeFilter))
    {
      while (nodeCursor.MoveNext())
      {
        using (ArcGIS.Core.Data.Analyst3D.TinNode node = nodeCursor.Current)
        {
    
        }
      }
    }
    
    Search for TIN Edges
    // search all edges
    using (ArcGIS.Core.Data.Analyst3D.TinEdgeCursor edgeCursor = tinDataset.SearchEdges(null))
    {
      while (edgeCursor.MoveNext())
      {
        using (ArcGIS.Core.Data.Analyst3D.TinEdge edge = edgeCursor.Current)
        {
    
        }
      }
    }
    
    // search within an extent
    ArcGIS.Core.Data.Analyst3D.TinEdgeFilter edgeFilter = new ArcGIS.Core.Data.Analyst3D.TinEdgeFilter();
    edgeFilter.FilterEnvelope = envelope;
    using (ArcGIS.Core.Data.Analyst3D.TinEdgeCursor edgeCursor = tinDataset.SearchEdges(edgeFilter))
    {
      while (edgeCursor.MoveNext())
      {
        using (ArcGIS.Core.Data.Analyst3D.TinEdge edge = edgeCursor.Current)
        {
    
        }
      }
    }
    
    // search all "inside" edges
    edgeFilter = new ArcGIS.Core.Data.Analyst3D.TinEdgeFilter();
    edgeFilter.FilterType = ArcGIS.Core.Data.Analyst3D.TinFilterType.InsideDataArea;
    using (ArcGIS.Core.Data.Analyst3D.TinEdgeCursor edgeCursor = tinDataset.SearchEdges(edgeFilter))
    {
      while (edgeCursor.MoveNext())
      {
        using (ArcGIS.Core.Data.Analyst3D.TinEdge edge = edgeCursor.Current)
        {
    
        }
      }
    }
    
    // search for hard edges
    edgeFilter = new ArcGIS.Core.Data.Analyst3D.TinEdgeFilter();
    edgeFilter.FilterByEdgeType = true;
    edgeFilter.EdgeType = ArcGIS.Core.Data.Analyst3D.TinEdgeType.HardEdge;
    using (ArcGIS.Core.Data.Analyst3D.TinEdgeCursor edgeCursor = tinDataset.SearchEdges(edgeFilter))
    {
      while (edgeCursor.MoveNext())
      {
        using (ArcGIS.Core.Data.Analyst3D.TinEdge edge = edgeCursor.Current)
        {
    
        }
      }
    }
    Search for TIN Triangles
    // search all triangles
    using (ArcGIS.Core.Data.Analyst3D.TinTriangleCursor triangleCursor = tinDataset.SearchTriangles(null))
    {
      while (triangleCursor.MoveNext())
      {
        using (ArcGIS.Core.Data.Analyst3D.TinTriangle triangle = triangleCursor.Current)
        {
    
        }
      }
    }
    
    // search within an extent
    ArcGIS.Core.Data.Analyst3D.TinTriangleFilter triangleFilter = new ArcGIS.Core.Data.Analyst3D.TinTriangleFilter();
    triangleFilter.FilterEnvelope = envelope;
    using (ArcGIS.Core.Data.Analyst3D.TinTriangleCursor triangleCursor = tinDataset.SearchTriangles(triangleFilter))
    {
      while (triangleCursor.MoveNext())
      {
        using (ArcGIS.Core.Data.Analyst3D.TinTriangle triangle = triangleCursor.Current)
        {
    
        }
      }
    }
    
    // search all "inside" triangles
    triangleFilter = new ArcGIS.Core.Data.Analyst3D.TinTriangleFilter();
    triangleFilter.FilterType = ArcGIS.Core.Data.Analyst3D.TinFilterType.InsideDataArea;
    using (ArcGIS.Core.Data.Analyst3D.TinTriangleCursor triangleCursor = tinDataset.SearchTriangles(triangleFilter))
    {
      while (triangleCursor.MoveNext())
      {
        using (ArcGIS.Core.Data.Analyst3D.TinTriangle triangle = triangleCursor.Current)
        {
    
        }
      }
    }
    
    Inheritance Hierarchy

    System.Object
       System.ValueType
          System.Enum
             ArcGIS.Core.Data.Analyst3D.TinFilterType

    Requirements

    Target Platforms: Windows 11, Windows 10

    ArcGIS Pro version: 3.2 or higher.
    See Also