Class BoxAligner
Object
org.anchoranalysis.bean.AnchorBean<BoxAligner>
org.anchoranalysis.image.bean.spatial.arrange.align.BoxAligner
public abstract class BoxAligner extends AnchorBean<BoxAligner>
Aligns a smaller
BoundingBox to fit inside a larger BoundingBox.
The smaller box may also be identically sized as the larger.
This is useful for implementing different methods for aligning / growing a smaller image to occupy a larger space. But it is not specific to images, and can be applied to any bounding-boxes.
Growth never occurs in the z-dimension, and the size in this dimension should be equal for
both smaller and larger.
- Author:
- Owen Feehan
-
Constructor Summary
Constructors Constructor Description BoxAligner() -
Method Summary
Modifier and Type Method Description org.anchoranalysis.spatial.box.BoundingBoxalign(org.anchoranalysis.spatial.box.BoundingBox smaller, org.anchoranalysis.spatial.box.BoundingBox larger)Determines aBoundingBoxto use forsmallerBoundingBoxso that it fits insidelargerBoundingBox.org.anchoranalysis.spatial.box.BoundingBoxalign(org.anchoranalysis.spatial.box.Extent smaller, org.anchoranalysis.spatial.box.BoundingBox larger)Determines aBoundingBoxto use for asmallerExtentso that it fits insidelargerBoundingBox.org.anchoranalysis.spatial.box.BoundingBoxalign(org.anchoranalysis.spatial.box.Extent smaller, org.anchoranalysis.spatial.box.Extent larger)Determines aBoundingBoxto use for asmallerExtentso that it fits insidelargerExtent.protected abstract org.anchoranalysis.spatial.box.BoundingBoxalignAfterCheck(org.anchoranalysis.spatial.box.BoundingBox smaller, org.anchoranalysis.spatial.box.BoundingBox larger)Determines aBoundingBoxto use forsmallerBoundingBoxso that it fits insidelargerBoundingBox.protected abstract org.anchoranalysis.spatial.box.BoundingBoxalignAfterCheck(org.anchoranalysis.spatial.box.Extent smaller, org.anchoranalysis.spatial.box.BoundingBox larger)Determines aBoundingBoxto use forsmallerExtentso that it fits insidelargerBoundingBox.protected abstract org.anchoranalysis.spatial.box.BoundingBoxalignAfterCheck(org.anchoranalysis.spatial.box.Extent smaller, org.anchoranalysis.spatial.box.Extent larger)Determines aBoundingBoxto use forsmallerExtentso that it fits insidelargerExtent.Methods inherited from class org.anchoranalysis.bean.AnchorBean
checkMisconfigured, describeBean, describeChildren, duplicateBean, fields, findFieldsOfClass, getBeanName, getLocalPath, localise, toString
-
Constructor Details
-
BoxAligner
public BoxAligner()
-
-
Method Details
-
align
public org.anchoranalysis.spatial.box.BoundingBox align(org.anchoranalysis.spatial.box.BoundingBox smaller, org.anchoranalysis.spatial.box.BoundingBox larger) throws OperationFailedExceptionDetermines aBoundingBoxto use forsmallerBoundingBoxso that it fits insidelargerBoundingBox.The position and size of
smallerandlargermust be identical in the z-dimension.- Parameters:
smaller- the smaller bounding-box, relative to the minimum-corner oflarger. Often this is(0, 0, 0)if it sits at the minimum corner oflarger.larger- the larger bounding-box absolute coordinates.- Returns:
- absolute coordinates for
smaller, while remaining insidelarger. - Throws:
OperationFailedException- if the z-dimensions are not equal, or if an unrecognized parameter or illegal state exists preventing successful alignment.
-
align
public org.anchoranalysis.spatial.box.BoundingBox align(org.anchoranalysis.spatial.box.Extent smaller, org.anchoranalysis.spatial.box.Extent larger) throws OperationFailedExceptionDetermines aBoundingBoxto use for asmallerExtentso that it fits insidelargerExtent.The position and size of
smallerandlargermust be identical in the z-dimension.- Parameters:
smaller- the smaller bounding-box, relative to the minimum-corner oflarger. Often this is(0, 0, 0)if it sits at the minimum corner oflarger.larger- the larger bounding-box absolute coordinates.- Returns:
- absolute coordinates for
smaller, while remaining insidelarger. - Throws:
OperationFailedException- if the z-dimensions are not equal, or if an unrecognized parameter or illegal state exists preventing successful alignment.
-
align
public org.anchoranalysis.spatial.box.BoundingBox align(org.anchoranalysis.spatial.box.Extent smaller, org.anchoranalysis.spatial.box.BoundingBox larger) throws OperationFailedExceptionDetermines aBoundingBoxto use for asmallerExtentso that it fits insidelargerBoundingBox.The position and size of
smallerandlargermust be identical in the z-dimension.- Parameters:
smaller- the smaller bounding-box, relative to the minimum-corner oflarger. Often this is(0, 0, 0)if it sits at the minimum corner oflarger.larger- the larger bounding-box absolute coordinates.- Returns:
- absolute coordinates for
smaller, while remaining insidelarger. - Throws:
OperationFailedException- if the z-dimensions are not equal, or if an unrecognized parameter or illegal state exists preventing successful alignment.
-
alignAfterCheck
protected abstract org.anchoranalysis.spatial.box.BoundingBox alignAfterCheck(org.anchoranalysis.spatial.box.BoundingBox smaller, org.anchoranalysis.spatial.box.BoundingBox larger) throws OperationFailedExceptionDetermines aBoundingBoxto use forsmallerBoundingBoxso that it fits insidelargerBoundingBox.- Parameters:
smaller- the smaller bounding-box, relative to the minimum-corner oflarger. Often this is(0, 0, 0)if it sits at the minimum corner oflarger.larger- the larger bounding-box absolute coordinates.- Returns:
- absolute coordinates for
smaller, while remaining insidelarger. - Throws:
OperationFailedException- if an unrecognized parameter or illegal state exists preventing successful alignment.
-
alignAfterCheck
protected abstract org.anchoranalysis.spatial.box.BoundingBox alignAfterCheck(org.anchoranalysis.spatial.box.Extent smaller, org.anchoranalysis.spatial.box.Extent larger) throws OperationFailedExceptionDetermines aBoundingBoxto use forsmallerExtentso that it fits insidelargerExtent.- Parameters:
smaller- the smaller bounding-box, relative to the minimum-corner oflarger. Often this is(0, 0, 0)if it sits at the minimum corner oflarger.larger- the larger bounding-box absolute coordinates.- Returns:
- absolute coordinates for
smaller, while remaining insidelarger. - Throws:
OperationFailedException- if an unrecognized parameter or illegal state exists preventing successful alignment.
-
alignAfterCheck
protected abstract org.anchoranalysis.spatial.box.BoundingBox alignAfterCheck(org.anchoranalysis.spatial.box.Extent smaller, org.anchoranalysis.spatial.box.BoundingBox larger) throws OperationFailedExceptionDetermines aBoundingBoxto use forsmallerExtentso that it fits insidelargerBoundingBox.- Parameters:
smaller- the smaller bounding-box, relative to the minimum-corner oflarger. Often this is(0, 0, 0)if it sits at the minimum corner oflarger.larger- the larger bounding-box absolute coordinates.- Returns:
- absolute coordinates for
smaller, while remaining insidelarger. - Throws:
OperationFailedException- if an unrecognized parameter or illegal state exists preventing successful alignment.
-