ArcGIS Pro 3.7 API Reference Guide
ArcGIS.Core.Data.Analyst3D Namespace / TinDataset Class / SearchNodes Method
Filter by parameters. See TinNodeFilter. If null, then all data nodes are retrieved.
Example

In This Topic
    SearchNodes Method (TinDataset)
    In This Topic
    Retrieves the nodes in the TIN that satisfy the criteria set in the filter. If no filter is set, all nodes that intersect the data extent will be retrieved. This method must be called on the MCT. Use QueuedTask.Run.
    Syntax
    Public Function SearchNodes( _
       ByVal filter As TinNodeFilter _
    ) As TinNodeCursor
    public TinNodeCursor SearchNodes( 
       TinNodeFilter filter
    )

    Parameters

    filter
    Filter by parameters. See TinNodeFilter. If null, then all data nodes are retrieved.

    Return Value

    Exceptions
    ExceptionDescription
    This method or property must be called within the lambda passed to QueuedTask.Run
    Remarks
    To ensure maximum robustness, callers should explicitly dispose of the returned TinNodeCursor in either a using statement or a finally block.
    Example
    Search for TIN Nodes
    {
      // search all nodes that intersect the data extent
      using (ArcGIS.Core.Data.Analyst3D.TinNodeCursor nodeCursorsearch = tinDataset.SearchNodes(null))
      {
        while (nodeCursor.MoveNext())
        {
          using (ArcGIS.Core.Data.Analyst3D.TinNode nodeCurrent = nodeCursor.Current)
          {
            // do something with the node
          }
        }
      }
    
      // search within an extent
      ArcGIS.Core.Data.Analyst3D.TinNodeFilter nodeFilter = new ArcGIS.Core.Data.Analyst3D.TinNodeFilter();
      nodeFilter.FilterEnvelope = envelope; //or use any other appropriate envelope
      using (ArcGIS.Core.Data.Analyst3D.TinNodeCursor nodeCursorSearch = tinDataset.SearchNodes(nodeFilter))
      {
        while (nodeCursor.MoveNext())
        {
          using (ArcGIS.Core.Data.Analyst3D.TinNode nodeCurrent = nodeCursor.Current)
          {
            // do something with the node
          }
        }
      }
    
      // 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 nodeCursorSearch = tinDataset.SearchNodes(nodeFilter))
      {
        while (nodeCursor.MoveNext())
        {
          using (ArcGIS.Core.Data.Analyst3D.TinNode nodeCurrent = nodeCursor.Current)
          {
            // do something with the node
          }
        }
      }
    
      // 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 nodeCursorSearch = tinDataset.SearchNodes(nodeFilter))
      {
        while (nodeCursor.MoveNext())
        {
          using (ArcGIS.Core.Data.Analyst3D.TinNode nodeCurrent = nodeCursor.Current)
          {
            // do something with the node
          }
        }
      }
    }
    Requirements

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

    ArcGIS Pro version: 3.2 or higher.
    See Also