This document is archived and information here might be outdated. Recommended version. |
ArcObjects Help for .NET developers > ArcObjects namespaces > Geometry > ESRI.ArcGIS.Geometry > Interfaces > IP > IPolycurve3D Interface > IPolycurve3D.Weed3D Method (ArcObjects .NET 10.5 SDK) |
Generalizes using a small tolerance based upon either the system units of the geometry's spatial reference, or the geometry's bounding box.
[Visual Basic .NET] Public Sub Weed3D ( _ ByVal maxAllowableOffsetFactor As Double _ )
[C#] public void Weed3D ( double maxAllowableOffsetFactor );
[C++]
HRESULT Weed3D(
double maxAllowableOffsetFactor
);
[C++]
Parameters maxAllowableOffsetFactor maxAllowableOffsetFactor is a parameter of type double
Weed generalizes each part of a Polycurve into a generalized collection of z aware Line segments. Weed performs a Douglas-Poiker Generalization algorithm, extended to operate in 3D space, with a specified multiple of the internal tolerance given as input. For Line segments, the Generalized output is a subset of the original input vertices. For non-Linear segments, the Generalized output contains points along all parts of the curve, not necessarily only the vertices.
public static void Weed3D()
{
const double WeedMaxAllowableOffset=64129865400;
IGeometry polylineGeometry=GetPolylineGeometry();
IPolycurve3D polycurve3D = polylineGeometry as IPolycurve3D;
polycurve3D.Weed3D(WeedMaxAllowableOffset);
ITopologicalOperator topologicalOperator=polylineGeometry as ITopologicalOperator;
topologicalOperator.Simplify();
}