com.esri.arcgis.geodatabase
Interface ITinAdvanced3

All Superinterfaces:
Serializable
All Known Implementing Classes:
Tin

public interface ITinAdvanced3
extends Serializable

Provides access to members that control advanced TIN functions.

Product Availability

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


Method Summary
 int getNextCCWEdgeIndex(int edgeIndex)
          Gets next counter clockwise edge index.
 int getNextCWEdgeIndex(int edgeIndex)
          Gets next clockwise edge index.
 int getNextEdgeIndexInTriangle(int edgeIndex)
          Gets next edge index in triangle.
 int getPreviousEdgeIndexInTriangle(int edgeIndex)
          Gets previous edge index in triangle.
 int getTinVersion()
          Returns the version number of the TIN dataset.
 void queryElementIndicesAroundNode(int type, int localNodeIndex, int triangleIndex, ILongArray pIndices)
          Returns the indices of all elements connected to the specified node.
 

Method Detail

getTinVersion

int getTinVersion()
                  throws IOException,
                         AutomationException
Returns the version number of the TIN dataset.

Description

TINs with a version of esriTin70001 can be used with ArcINFO Workstation, ArcView 3.x, and all versions of ArcGIS.

TINs with a version of esriTin80001 can be used with ArcGIS 10 and later.

See also ITinAdvanced2.SaveAsVersion.

Product Availability

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

Returns:
A com.esri.arcgis.geodatabase.esriTinVersion constant
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.

getPreviousEdgeIndexInTriangle

int getPreviousEdgeIndexInTriangle(int edgeIndex)
                                   throws IOException,
                                          AutomationException
Gets previous edge index in triangle.

Description

Returns the index for the previous edge in a triangle relative to a given edge. Since nodes and edges are oriented clockwise in a TIN the previous edge is counter-clockwise to the given edge.

Use this method instead of ITinEdge.GetPreviousInTriangle when inside a loop.

Product Availability

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

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

getNextEdgeIndexInTriangle

int getNextEdgeIndexInTriangle(int edgeIndex)
                               throws IOException,
                                      AutomationException
Gets next edge index in triangle.

Description

Returns the index for the next edge in a triangle relative to a given edge. Since nodes and edges are oriented clockwise in a TIN the next edge is clockwise to the given edge.

Use this method instead of ITinEdge.GetNextInTriangle when inside a loop.

Product Availability

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

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

getNextCWEdgeIndex

int getNextCWEdgeIndex(int edgeIndex)
                       throws IOException,
                              AutomationException
Gets next clockwise edge index.

Product Availability

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

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

getNextCCWEdgeIndex

int getNextCCWEdgeIndex(int edgeIndex)
                        throws IOException,
                               AutomationException
Gets next counter clockwise edge index.

Product Availability

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

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

queryElementIndicesAroundNode

void queryElementIndicesAroundNode(int type,
                                   int localNodeIndex,
                                   int triangleIndex,
                                   ILongArray pIndices)
                                   throws IOException,
                                          AutomationException
Returns the indices of all elements connected to the specified node.

Description

Used to return the indices of nodes, edges, or triangles around a node when the node is referenced by specifying its local position (0, 1, 2) in a triangle.

Type indicates the desired element type for the returned indices: nodes, edges, or triangles.

LocalNodeIndex is the nth position for the node of interest in the triangle. Local indices, that indicate relative position in a triangle, start at base 0. Therefore, the passed value must be 0, 1, or 2.

TriangleIndex is used to indicate which triangle the local node index is relative to. Element indexes that are global, at the TIN level rather than local to a triangle, start at base 1. Therefore the passed value must be 1..NumTriangles.

pIndices is a reference to a LongArray into which the indices will be placed. The LongArray object must already be instantiated. Any values already in the array when it's passed will be removed before the return values get added.

See related methods ITinAdvanced2 QueryEdgeIndicesAroundNodes, ITinAdvanced2.QueryNodeIndicesAroundNode, and ITinAdvanced2.QueryTriangleIndicesAroundNodes.

This method is faster than those related methods. They all require a spatial search to find an incident triangle or edge to start iterating from while this method does not.

Product Availability

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

Parameters:
type - A com.esri.arcgis.geodatabase.esriTinElementType constant (in)
localNodeIndex - The localNodeIndex (in)
triangleIndex - The triangleIndex (in)
pIndices - A reference to a com.esri.arcgis.system.ILongArray (in)
Throws:
IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.