Class MergeWithOptionalDistanceConstraint

All Implemented Interfaces:
Provider<ObjectCollection>
Direct Known Subclasses:
MergeGreedyToIncreaseObjectFeature, MergeWithFeature

public abstract class MergeWithOptionalDistanceConstraint extends MergeBase
Expands MergeBase by optionally imposing a maximum-distance requirement between objects that are possibly merged.
Author:
Owen Feehan
  • Constructor Details

    • MergeWithOptionalDistanceConstraint

      public MergeWithOptionalDistanceConstraint()
  • Method Details

    • maybeDistanceCondition

      protected BeforeCondition maybeDistanceCondition()
      Creates a BeforeCondition that checks the distance between objects before merging.
      Returns:
      a BeforeCondition that enforces the distance constraint if maxDistance is set, otherwise a condition that always returns true
    • isSuppressZ

      public boolean isSuppressZ()
      If true, suppresses the Z-dimension when calculating distances between objects.
    • setSuppressZ

      public void setSuppressZ(boolean suppressZ)
      If true, suppresses the Z-dimension when calculating distances between objects.
    • getMaxDistance

      public UnitValueDistance getMaxDistance()
      An optional maximum distance between objects that can be merged.
    • setMaxDistance

      public void setMaxDistance(UnitValueDistance maxDistance)
      An optional maximum distance between objects that can be merged.