Class NeighborhoodCondition
Object
NeighborhoodCondition
- All Implemented Interfaces:
UpdatableBeforeCondition
A condition to determine if two objects are potential neighbors and candidates for merging.
This condition implements UpdatableBeforeCondition to allow efficient updates when the
source object changes.
-
Constructor Summary
ConstructorsConstructorDescriptionNeighborhoodCondition(boolean requireBBoxNeighbors, boolean requireTouching) Creates a newNeighborhoodCondition. -
Method Summary
Modifier and TypeMethodDescriptionbooleanaccept(ObjectMask destination) Checks if the destination object should be merged with the previously set source object.voidupdateSourceObject(ObjectMask source, Optional<UnitConverter> unitConverter) Updates the source object and performs any necessary pre-computations.
-
Constructor Details
-
NeighborhoodCondition
public NeighborhoodCondition(boolean requireBBoxNeighbors, boolean requireTouching) Creates a newNeighborhoodCondition.- Parameters:
requireBBoxNeighbors- whether to require bounding boxes to be neighborsrequireTouching- whether to require objects to be touching
-
-
Method Details
-
updateSourceObject
public void updateSourceObject(ObjectMask source, Optional<UnitConverter> unitConverter) throws OperationFailedException Description copied from interface:UpdatableBeforeConditionUpdates the source object and performs any necessary pre-computations.- Specified by:
updateSourceObjectin interfaceUpdatableBeforeCondition- Parameters:
source- the sourceObjectMaskunitConverter- an optionalUnitConverterfor unit conversions- Throws:
OperationFailedException- if the update operation fails
-
accept
Description copied from interface:UpdatableBeforeConditionChecks if the destination object should be merged with the previously set source object.- Specified by:
acceptin interfaceUpdatableBeforeCondition- Parameters:
destination- the destinationObjectMaskto check against the source- Returns:
- true if the objects should be merged, false otherwise
-