This handles provider can create handles to edit PolylineRing geometries.
More...
This handles provider can create handles to edit PolylineRing geometries.
It offers the following handles:
Note: the handle to translate the entire feature is typically created by the IFeatureHandlesProvider. FeatureHandlesProvider does this by default.
- Since
- 2020.1
◆ PolylineRingHandlesProvider()
| Luciad.Edit.Geometries.PolylineRingHandlesProvider.PolylineRingHandlesProvider |
( |
| ) |
|
|
inline |
Creates a new handles provider that can create handles for a PolylineRing geometry.
◆ CanProvide()
Indicates if this handles provider can create handles for the given geometry.
- Parameters
-
| geometry | an observable geometry, cannot be null |
| context | the context. Contains additional information about the edited feature, cannot be null. |
- Returns
- if this handles provider can provide handles and a translate action for the given
Feature
Implements Luciad.Edit.Geometries.IGeometryHandlesProvider.
◆ Dispose()
| void Luciad.Edit.Geometries.PolylineRingHandlesProvider.Dispose |
( |
| ) |
|
|
inline |
◆ Equals()
| override bool Luciad.Edit.Geometries.PolylineRingHandlesProvider.Equals |
( |
object | obj | ) |
|
|
inline |
◆ GetHashCode()
| override int Luciad.Edit.Geometries.PolylineRingHandlesProvider.GetHashCode |
( |
| ) |
|
|
inline |
◆ Provide()
Returns the handles for the given feature.
Note: translation of features is handled by IFeatureHandlesProvider. So geometry handles providers should not provide handles to translate a geometry.
- Parameters
-
| geometry | the observable geometry for which to provide handles, cannot be null. |
| context | the context. Contains additional information about the edited feature, cannot be null. |
| geometryEditCallback | a callback that notifies the caller when the Feature has changed, cannot be null. |
- Returns
- handles for the given feature. Never null.
Implements Luciad.Edit.Geometries.IGeometryHandlesProvider.
◆ ProvideTranslateAction()
Provides a translate action that can be used by the caller to add translation behavior.
A translation handle is typically added by an IFeatureHandlesProvider, for example the FeatureHandlesProvider implementation. It calls this method to retrieve a translate action, and uses it to create a TranslateEditHandle.
When ITranslateEditAction.Translate is called, the returned implementation must:
- Parameters
-
| geometry | the observable geometry for which to provide a translate action, cannot be null |
| context | the context, cannot be null |
| geometryEditCallback | a callback that notifies the caller of this method when a translation has occurred, cannot be null |
- Returns
- a translate action. Never null.
Implements Luciad.Edit.Geometries.IGeometryHandlesProvider.
◆ Constraint
The constraint that is applied on the handles' edit actions.
[get]
Returns the constraint that is applied on the handles' edit actions. Can be null if no constraint is set.
[set]
Sets the constraint that is applied on the handles' edit actions. They always call this constraint with a PolylineChange, describing a single change. More specifically:
◆ HandleFactory
The handle factory used by the handles provider.
[get]
Returns the handle factory used by the handles provider.
[set]
Sets the handle factory used by the handles provider. If this method is not called, a default handle factory is used. You can change the behavior of this default handle factory by:
-
wrapping it with your own
IHandleFactory implementation, by delegating to the default factory
-
omitting/replacing one or more handles that are returned
- Exceptions
-
| System.ArgumentNullException | when null is passed. |
◆ MaxPointCount
| uint Luciad.Edit.Geometries.PolylineRingHandlesProvider.MaxPointCount |
|
getset |
The maximum number of points a polyline ring can have.
[get]
Returns the maximum number of points a polyline ring can have.
[set]
Sets the maximum number of points a polyline ring can have. If a polyline's point count is higher than or equal to this value, this handles provider will not provide handles to insert new points for that polyline ring. By default, this value is the maximum value of size_t, which realistically corresponds to "no maximum".
- Exceptions
-
| System.ArgumentException | if maxPointCount is lower than the current min point count. |
- See also
MaxPointCount
◆ MinPointCount
| uint Luciad.Edit.Geometries.PolylineRingHandlesProvider.MinPointCount |
|
getset |
The minimum number of points a polyline ring can have.
[get]
Returns the minimum number of points a polyline ring can have.
[set]
Sets the minimum number of points a polyline ring can have. If a polyline ring's point count is lower than or equal to this value, this handles provider will not provide handles to remove points from that polyline ring. By default, this value is 3.
- Exceptions
-
| System.ArgumentException | if minPointCount is lower than 2, or higher than the current maximum point count. |
- See also
MinPointCount