LineThinningOperator Class
Removes unnecessary points in line and polygon features.
NuGet/Assembly: Carmenta.Engine.5.16.2.nupkg (in the CEOperators assembly)
Syntax
public class LineThinningOperator : UnaryOperator
Remarks
A LineThinningOperator removes unnecessary points in lines and polygons. The new lines deviate from the original lines by a maximum distance that can be specified in either pixels or meters, and the deviations can be calculated in either 2D or 3D. This operator is surprisingly fast, and can increase performance when lines and polygons are too detailed for the view scale.
During thinning, the operator measures distances naively in the coordinate reference system of the incoming feature, although the operator will convert the horizontal length unit automatically. For example, the operator will treat features expressed in LongLat as being in a Plate Carrée (flat square) map projection where the horizontal length unit, degree, equals 111 120 meters. Altitudes expressed by z coordinates are always assumed to be in meters.
![]() |
When the max error is several pixels as above, the result will often be jagged, so the default max error is only 0.5 pixels.
Inheritance Hierarchy
System.Object (not available in C#)
EngineObject
Operator
UnaryOperator
LineThinningOperator
Platforms
Windows, Linux, Android
LineThinningOperator Members
The LineThinningOperator type has the following members.
Constructors
Name | Description |
---|---|
LineThinningOperator | Initializes a new instance of the LineThinningOperator class. |
Properties
Name | Description |
---|---|
Description | Gets or sets a short description of the operator. Inherited from Operator |
DisplayName | Gets or sets a display name for the operator. Inherited from Operator |
Input | Gets or sets the input operator, from which this operator reads features. Inherited from UnaryOperator |
IsDisposed | Gets a value that tells whether the current LineThinningOperator has been disposed. Inherited from EngineObject |
IsoMetadataDocument | Gets or sets the path to an ISO 19139 metadata document for the operator. Inherited from Operator |
MaxError | Gets or sets the maximum allowed deviation of the new geometry from the original. |
MaxErrorLengthUnit | Gets or sets the unit that the MaxError is specified in. |
Name | Gets or sets the name of the operator. Inherited from Operator |
NativeHandle | Gets the native Carmenta Engine kernel object the current LineThinningOperator represents. Inherited from EngineObject |
ThinningMethod | Gets or sets the thinning method that controls how errors are measured (horizontal or three-dimensional). |
IUserProperties.UserProperties | Gets the AttributeSet that contains the user properties. Inherited from IUserProperties |
Methods
Name | Description |
---|---|
Clone | Creates a copy of an object. Inherited from EngineObject |
Dispose | Releases the reference to the native Carmenta Engine kernel instance the EngineObject represents. Inherited from EngineObject |
Equals | Determines whether this instance is equal to another. Inherited from EngineObject |
FindChildObject | Overloaded. Finds the child object with the specified name. Inherited from Operator |
FlushCache | Marks the layer as flushed which will release cached resources during the next update. Inherited from Operator |
GetChildObjects | Overloaded. Gets the child objects of the current object. Inherited from Operator |
GetFeatures | Overloaded. Gets features from the operator chain. Inherited from Operator |
GetLocalizedDescription | Gets a localized version of the operator description in a specific language. Inherited from Operator |
GetLocalizedDisplayName | Gets a localized version of the operator display name in a specific language. Inherited from Operator |
GetLocalizedIsoMetadataDocument | Gets the path to an ISO 19139 metadata document for a specific language. Inherited from Operator |
GetRasterFeature | Overloaded. Gets raster features from the operator chain and merges them into a single raster. Inherited from Operator |
HasLocalizedDescription | Checks if a localized version of the operator description is available in a specific language. Inherited from Operator |
HasLocalizedDisplayName | Checks if a localized version of the operator display name is available in a specific language. Inherited from Operator |
HasLocalizedIsoMetadataDocument | Checks if an ISO 19139 metadata document is available for a specific language. Inherited from Operator |
SetLocalizedDescription | Sets a operator description in a specific language. Inherited from Operator |
SetLocalizedDisplayName | Sets a operator display name in a specific language. Inherited from Operator |
SetLocalizedIsoMetadataDocument | Sets the path to an ISO 19139 metadata document for the operator, for a specific language. Inherited from Operator |