Provides access to members that control TIN editing.
Members
Name | Description | |
---|---|---|
AddFrom3dMultipointFeatureClass | Adds features from a 3D multi-point feature class to the TIN. | |
ResetExtent | Reset TIN's extent. | |
SaveSnapshot | Saves a snapshot of the TIN that is been edited to disk. | |
SetToConstrainedDelaunay | Apply constrained Delaunay from now on. | |
SwapEdge | Swap the specified edge and set the TIN as constrained Delaunay triangulation. |
ITinEdit2.AddFrom3dMultipointFeatureClass Method
Adds features from a 3D multi-point feature class to the TIN.
Public Sub AddFrom3dMultipointFeatureClass ( _
ByVal pFeatureClass As IFeatureClass, _
ByVal pClippingFilter As ISpatialFilter _
)
public void AddFrom3dMultipointFeatureClass (
IFeatureClass pFeatureClass,
ISpatialFilter pClippingFilter
);
Description
Used to add a subset of points from a z-aware multipoint feature class. The benefit of using this method over ITinEdit.AddFromFeatureClass is that the multipoints can be clipped to an area of interest before they get added to the triangulation, excluding vertices that are of no interest.
pFeatureClass must reference a z-aware multipoint feature class.
pClippingFilter is a SpatialFilter that's used to select points from the input feature class. First, the filter will be applied as a search filter on the multipoint feature class. Then, each vertex of each returned multipoint is tested to see if it's within or coincident to the filter's geometry. If so, it's add to the triangulation.
Notes:The most straightforward use of this method would be to set the filter geometry to an envelope or polygon and the spatial relationship test to Intersects. This is the most efficient way to triangulate just those vertices from a multipoint feature class that are inside an area of interest defined by a rectangle or polygon.
ITinEdit2.ResetExtent Method
Reset TIN's extent.
Public Sub ResetExtent ( _
ByVal pExtent As IEnvelope _
)
public void ResetExtent (
IEnvelope pExtent
);
Description
Redefines the declared 2D data area for the TIN using the rectangle defined by pExtent. This is the area into which data added to the TIN should fall.
This method can only be called if the TIN has four super nodes and no other data. An error is returned if that condition is not met.
The typical use case for this method pertains to the editing of TINs created by the Create TIN geoprocessing tool. That tool can create and save 'empty' TINs, where no data was added to the triangulation. When the tool does that the delcared data extent for the TIN is set to the domain of the TIN's spatial reference. It uses that because it doesn't know the data extent since no data was added. That domain is huge. If left unchanged, it can result in both performance and precision issues when data is added. For cases like this ResetExtent should be called right before adding data when the proper extent is known so the TIN's four super nodes can be repositioned before triangulation occurs.
ITinEdit2.SaveSnapshot Method
Saves a snapshot of the TIN that is been edited to disk.
Public Sub SaveSnapshot ( _
ByVal Name As String, _
ByVal bOverWrite As Boolean _
)
public void SaveSnapshot (
string Name,
bool bOverWrite
);
Description
Saves a copy of the TIN, based on its current state in memory, to disk. This differs from ITinAdvanced.SaveAs and ITinEdit.SaveAs because those methods point the TIN object to the saved version of the TIN whereas SaveSnapshot does not.
sName is the full output path to the new TIN.
bOverWrite should be set to FALSE if the output should not be replaced if it already exists. An error will be returned if the output already exists. If it's okay to replace the output then set bOverWrite to TRUE.
ITinEdit2.SetToConstrainedDelaunay Method
Apply constrained Delaunay from now on.
Public Sub SetToConstrainedDelaunay ( _
)
public void SetToConstrainedDelaunay (
);
Description
Once this has been set breaklines will no longer be densified with steiner points in order to ensure the triangulation conforms to Delaunay criteria.
Once a TIN has been placed in this mode it cannot be changed back by any means other than not saving the edit session used to call this method.
ITinEdit2.SwapEdge Method
Swap the specified edge and set the TIN as constrained Delaunay triangulation.
Public Function SwapEdge ( _
ByVal Index As Integer, _
ByVal Type As esriTinEdgeType, _
ByVal Tag As Integer _
) As Integer
public int SwapEdge (
int Index,
esriTinEdgeType Type,
int Tag
);
Description
Alters the triangulation by connecting an edge to the opposite nodes of the triangles sharing the edge. The return value from this method is the index of the resulting edge. The TIN will automatically have the ITin.IsDelaunay property set to FALSE when calling this method.
Index is the index of the TIN edge to swap.
esriTinEdgeType is assigned to the resulting edge. If you want to ensure the edge is not redefined via a subsequent edit operation that's within close proximity to the edge set it to esriTinHardEdge or esriTinSoftEdge.
Tag is the tag value assigned to the resulting edge. Use a value of 0 if you're not concerned about edge tag values.
Classes that implement ITinEdit2
Classes | Description |
---|---|
Tin | The Esri TIN component. |