com.esri.arcgis.geodatabase
Interface ITinNodeCollection

All Superinterfaces:
Serializable
All Known Implementing Classes:
Tin

public interface ITinNodeCollection
extends Serializable

Provides access to members that control TIN nodes.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.


Method Summary
 void convertToVoronoiRegions(IFeatureClass pFeatureClass, ITinFilter pFilter, IPolygon pClippingPolygon, String indexFieldName, String tagFieldName)
          Writes the set of Voronoi polygons for each node to a feature class.
 ITinNode getNode(int index)
          The node referenced by the index.
 int getNodeCount()
          The number of nodes in the TIN.
 int getNodeTagValue(int index)
          Returns the tag value of the TIN node specified by the index.
 double getNodeZ(int index)
          Returns the z value of the node referenced by the index.
 IPolygon getVoronoiRegion(int nodeIndex, IPolygon pClippingPolygon)
          Returns a Voronoi polygon about the node referenced by the index.
 IPolygon getVoronoiRegionNoClip(int nodeIndex)
          Returns a Voronoi polygon about the node referenced by the index.
 boolean isHasNodeTagValues()
          Indicates if TIN nodes have tag values.
 void queryNode(int index, ITinNode pNode)
          Sets the node equal to that specified by the index.
 void queryNodeAsPoint(int index, IPoint pPoint)
          Sets the node equal to a point specified by the index.
 void queryNodeAsWKSPointZ(int index, _WKSPointZ[] pPoint)
          Sets the node equal to a z-value point specified by the index.
 

Method Detail

getNodeCount

int getNodeCount()
                 throws IOException,
                        AutomationException
The number of nodes in the TIN.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Returns:
The pcNodes
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getNode

ITinNode getNode(int index)
                 throws IOException,
                        AutomationException
The node referenced by the index.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Parameters:
index - The index (in)
Returns:
A reference to a com.esri.arcgis.geodatabase.ITinNode
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

queryNode

void queryNode(int index,
               ITinNode pNode)
               throws IOException,
                      AutomationException
Sets the node equal to that specified by the index.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Parameters:
index - The index (in)
pNode - A reference to a com.esri.arcgis.geodatabase.ITinNode (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

queryNodeAsPoint

void queryNodeAsPoint(int index,
                      IPoint pPoint)
                      throws IOException,
                             AutomationException
Sets the node equal to a point specified by the index.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Parameters:
index - The index (in)
pPoint - A reference to a com.esri.arcgis.geometry.IPoint (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

queryNodeAsWKSPointZ

void queryNodeAsWKSPointZ(int index,
                          _WKSPointZ[] pPoint)
                          throws IOException,
                                 AutomationException
Sets the node equal to a z-value point specified by the index.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Parameters:
index - The index (in)
pPoint - A Structure: com.esri.arcgis.system._WKSPointZ (A com.esri.arcgis.system._WKSPointZ COM typedef) (out: use single element array)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getVoronoiRegionNoClip

IPolygon getVoronoiRegionNoClip(int nodeIndex)
                                throws IOException,
                                       AutomationException
Returns a Voronoi polygon about the node referenced by the index.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Parameters:
nodeIndex - The nodeIndex (in)
Returns:
A reference to a com.esri.arcgis.geometry.IPolygon
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getVoronoiRegion

IPolygon getVoronoiRegion(int nodeIndex,
                          IPolygon pClippingPolygon)
                          throws IOException,
                                 AutomationException
Returns a Voronoi polygon about the node referenced by the index.

Description

The Voronoi region (also known as Thiessen or proximal polygon) that is returned encloses an area that is closer to the source node than to any other node in the triangulation.

'Nothing' (a null pointer) can be passed as the clip polygon. In this case, a default rectangle will be used to clip the voronoi region. The rectangle is set to be somewhat larger than the FullExtent of the TIN.

GetVoronoiRegion used on a super node will return Nothing (a null pointer). Super nodes are added by the software when the TIN is initially created and reside far outside the declared data extent.

If you wish to process the entire TIN and write the output to a feature class consider ITinNodeCollection.ConvertToVoronoiRegions.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Parameters:
nodeIndex - The nodeIndex (in)
pClippingPolygon - A reference to a com.esri.arcgis.geometry.IPolygon (in)
Returns:
A reference to a com.esri.arcgis.geometry.IPolygon
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

convertToVoronoiRegions

void convertToVoronoiRegions(IFeatureClass pFeatureClass,
                             ITinFilter pFilter,
                             IPolygon pClippingPolygon,
                             String indexFieldName,
                             String tagFieldName)
                             throws IOException,
                                    AutomationException
Writes the set of Voronoi polygons for each node to a feature class.

Description

The FeatureClass should be an empty 2D polygon feature class. The Voronoi/Thiessen polygons will be written to it.

The Filter is used to determine which nodes to generate Voronoi/Thiessen polygons for. A Null pointer ('Nothing' in VisualBasic) can be passed in which case all nodes will be processed.

Output polygons will be intersected with the specified ClippingPolygon. A Null pointer ('Nothing' in VB) can be passed in which case a default polygon, which is a rectangulat bounding box that is slightly larger than the TINs FullExtent, will be used.

The indexFieldName is the name of the field added to the output feature class that's used to record the source node index for the polygon. If an empty string is passed the name "NodeIndex" is used as a default.

The tagFieldName is the name of the field added to the output feature class that's used to record the source node tag value for the polygon. If an empty string is passed the name "TagValue" is used as a default.

When constructing the TIN from a feature class it can be useful to specify the OIDField as the source of node tags. This way the output Voronoi/Thiessen polygons can be joined to the source features by associating the Thiessen polygon's TagField to the input feature's OIDField.

Since this method added fields to the specified feature class make sure WorkspaceEdit is off as it does not permit this type of schema modification.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Parameters:
pFeatureClass - A reference to a com.esri.arcgis.geodatabase.IFeatureClass (in)
pFilter - A reference to a com.esri.arcgis.geodatabase.ITinFilter (in)
pClippingPolygon - A reference to a com.esri.arcgis.geometry.IPolygon (in)
indexFieldName - The indexFieldName (in)
tagFieldName - The tagFieldName (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getNodeZ

double getNodeZ(int index)
                throws IOException,
                       AutomationException
Returns the z value of the node referenced by the index.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Parameters:
index - The index (in)
Returns:
The pZ
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getNodeTagValue

int getNodeTagValue(int index)
                    throws IOException,
                           AutomationException
Returns the tag value of the TIN node specified by the index.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Parameters:
index - The index (in)
Returns:
The pValue
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

isHasNodeTagValues

boolean isHasNodeTagValues()
                           throws IOException,
                                  AutomationException
Indicates if TIN nodes have tag values.

Product Availability

Available with ArcGIS Engine, ArcGIS Desktop, and ArcGIS Server.

Supported Platforms

Windows, Solaris, Linux

Returns:
The pbHasNodeValues
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.