Class FeatureIntersectingObjects
Object
org.anchoranalysis.bean.AnchorBean<B>
org.anchoranalysis.bean.initializable.InitializableBean<org.anchoranalysis.feature.bean.Feature<T>,org.anchoranalysis.feature.initialization.FeatureInitialization>
org.anchoranalysis.feature.bean.Feature<org.anchoranalysis.image.feature.input.FeatureInputSingleObject>
org.anchoranalysis.image.feature.bean.object.single.FeatureSingleObject
org.anchoranalysis.plugin.image.feature.bean.object.single.shared.intersecting.FeatureIntersectingObjects
- Direct Known Subclasses:
FeatureIntersectingObjectsSingleElement,NumberIntersectingObjects
public abstract class FeatureIntersectingObjects
extends org.anchoranalysis.image.feature.bean.object.single.FeatureSingleObject
An abstract base class for features that calculate values based on intersecting objects.
-
Constructor Summary
Constructors Constructor Description FeatureIntersectingObjects() -
Method Summary
Modifier and Type Method Description protected voidbeforeCalc(org.anchoranalysis.feature.initialization.FeatureInitialization initialization)doublecalculate(org.anchoranalysis.feature.calculate.FeatureCalculationInput<org.anchoranalysis.image.feature.input.FeatureInputSingleObject> input)StringgetId()ID for the particular object-collectionprotected org.anchoranalysis.image.voxel.object.ObjectCollectiongetSearchObjects()Gets the collection of objects to search for intersections.doublegetValueNoObjects()The value to return when there are no objects in the search collection.voidsetId(String id)ID for the particular object-collectionvoidsetValueNoObjects(double valueNoObjects)The value to return when there are no objects in the search collection.protected abstract doublevalueFor(org.anchoranalysis.feature.calculate.FeatureCalculationInput<org.anchoranalysis.image.feature.input.FeatureInputSingleObject> input, org.anchoranalysis.feature.calculate.cache.part.ResolvedPart<org.anchoranalysis.image.voxel.object.ObjectCollection,org.anchoranalysis.image.feature.input.FeatureInputSingleObject> intersecting)Calculates a value based on the input and the intersecting objects.Methods inherited from class org.anchoranalysis.image.feature.bean.object.single.FeatureSingleObject
inputTypeMethods inherited from class org.anchoranalysis.feature.bean.Feature
assignTo, calculateCheckInitialized, castAs, createListChildFeatures, describeBean, describeParameters, descriptionLong, duplicateChangeName, getCustomName, getFriendlyName, onInitialization, setCustomName, toStringMethods inherited from class org.anchoranalysis.bean.initializable.InitializableBean
getInitialization, getLogger, getPropertyInitializer, initialize, initializeRecursive, initRecursiveWithInitializer, isInitialized
-
Constructor Details
-
FeatureIntersectingObjects
public FeatureIntersectingObjects()
-
-
Method Details
-
beforeCalc
protected void beforeCalc(org.anchoranalysis.feature.initialization.FeatureInitialization initialization) throws org.anchoranalysis.core.exception.InitializeException- Overrides:
beforeCalcin classorg.anchoranalysis.feature.bean.Feature<org.anchoranalysis.image.feature.input.FeatureInputSingleObject>- Throws:
org.anchoranalysis.core.exception.InitializeException
-
calculate
public double calculate(org.anchoranalysis.feature.calculate.FeatureCalculationInput<org.anchoranalysis.image.feature.input.FeatureInputSingleObject> input) throws org.anchoranalysis.feature.calculate.FeatureCalculationException- Specified by:
calculatein classorg.anchoranalysis.feature.bean.Feature<org.anchoranalysis.image.feature.input.FeatureInputSingleObject>- Throws:
org.anchoranalysis.feature.calculate.FeatureCalculationException
-
valueFor
protected abstract double valueFor(org.anchoranalysis.feature.calculate.FeatureCalculationInput<org.anchoranalysis.image.feature.input.FeatureInputSingleObject> input, org.anchoranalysis.feature.calculate.cache.part.ResolvedPart<org.anchoranalysis.image.voxel.object.ObjectCollection,org.anchoranalysis.image.feature.input.FeatureInputSingleObject> intersecting) throws org.anchoranalysis.feature.calculate.FeatureCalculationExceptionCalculates a value based on the input and the intersecting objects.- Parameters:
input- the input for feature calculationintersecting- the resolved part containing intersecting objects- Returns:
- the calculated feature value
- Throws:
org.anchoranalysis.feature.calculate.FeatureCalculationException- if an error occurs during calculation
-
getSearchObjects
protected org.anchoranalysis.image.voxel.object.ObjectCollection getSearchObjects()Gets the collection of objects to search for intersections.- Returns:
- the
ObjectCollectionused for searching intersections
-
getId
ID for the particular object-collection -
setId
ID for the particular object-collection -
getValueNoObjects
public double getValueNoObjects()The value to return when there are no objects in the search collection. -
setValueNoObjects
public void setValueNoObjects(double valueNoObjects)The value to return when there are no objects in the search collection.
-