This document is archived and information here might be outdated. Recommended version. |
Generalizes this polycurve using the Douglas-Peucker algorithm.
[Visual Basic .NET]
Public Sub Generalize3D ( _
ByVal maxAllowableOffset As Double _
)
[C#]
public void Generalize3D (
double maxAllowableOffset
);
[C++]
HRESULT Generalize3D(
double maxAllowableOffset
);
[C++] Parameters maxAllowableOffset
maxAllowableOffset is a parameter of type double
Generalizes each part of a Polycurve into a generalized collection of Line segments. Generalize3D performs a Douglas-Peucker Generalization algorithm, extended to operate in 3D space, with a specified maximum offset tolerance, given in 3D, 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 Generalize3D()
{
const double GeneralizeMaxAllowableOffset = 2.229;
IGeometry polylineGeometry = GetPolylineGeometry();
IPolycurve3D polycurve3D = polylineGeometry as IPolycurve3D;
polycurve3D.Generalize3D(GeneralizeMaxAllowableOffset);
ITopologicalOperator topologicalOperator = polylineGeometry as ITopologicalOperator;
topologicalOperator.Simplify();
}