Class ContourJoiner

java.lang.Object
net.algart.contours.ContourJoiner

public final class ContourJoiner extends Object

Joiner of contours.

Note that this class guarantees full 100% joining of only 4-connected contours (external and internal). Contours of 8-connected objects, in some situations, are not joined completely. It allows to use more simple and efficient algorithm with a guarantee that it will not require a lot of memory (more than necessary for storing results and the largest matrix, necessary for "drawing" any source contour).

  • Field Details

  • Method Details

    • newInstance

      public static ContourJoiner newInstance(Contours contours, Integer gridStepLog, int[] joinedLabelsMap)
    • newInstance

      public static ContourJoiner newInstance(Contours contours, Integer gridStepLog, int[] joinedLabelsMap, int defaultJoinedLabel)
    • getJoiningOrder

      public ContourJoiner.JoiningOrder getJoiningOrder()
    • setJoiningOrder

      public ContourJoiner setJoiningOrder(ContourJoiner.JoiningOrder joiningOrder)
    • isPackResultContours

      public boolean isPackResultContours()
    • setPackResultContours

      public ContourJoiner setPackResultContours(boolean packResultContours)
    • getMeasureTimingLevel

      public int getMeasureTimingLevel()
    • setMeasureTimingLevel

      public ContourJoiner setMeasureTimingLevel(int measureTimingLevel)
    • getInterrupter

      public BooleanSupplier getInterrupter()
    • setInterrupter

      public ContourJoiner setInterrupter(BooleanSupplier interrupter)
    • containingRectangle

      public IRectangularArea containingRectangle()
    • joinContours

      public Contours joinContours()
    • needToJoin

      public boolean needToJoin(int objectIndex1, int objectIndex2)
    • hasNeighboursToJoin

      public boolean hasNeighboursToJoin(int objectIndex)
    • timingInfo

      public String timingInfo()