Class MarkMergeProposer

All Implemented Interfaces:
CompatibleWithMark

public abstract class MarkMergeProposer extends ProposerBean<MarkMergeProposer> implements CompatibleWithMark
An abstract base class for proposing merges between marks.
  • Constructor Details

    • MarkMergeProposer

      public MarkMergeProposer()
  • Method Details

    • propose

      public abstract Optional<Mark> propose(VoxelizedMarkMemo mark1, VoxelizedMarkMemo mark2, ProposerContext context) throws ProposalAbnormalFailureException
      Proposes a merge between two marks.
      Parameters:
      mark1 - the first mark to merge
      mark2 - the second mark to merge
      context - the context for the proposal
      Returns:
      an Optional containing the merged mark, or empty if no merge is proposed
      Throws:
      ProposalAbnormalFailureException - if the proposal fails abnormally
    • getLastPoints1

      public Optional<List<Point3f>> getLastPoints1()
      Gets the points associated with the first mark from the last proposal.
      Returns:
      an Optional containing a list of points, or empty if no points are available
    • getLastPoints2

      public Optional<List<Point3f>> getLastPoints2()
      Gets the points associated with the second mark from the last proposal.
      Returns:
      an Optional containing a list of points, or empty if no points are available