Package sc.fiji.snt.analysis.sholl.math
Record Class PolarProfileStats.Report
java.lang.Object
java.lang.Record
sc.fiji.snt.analysis.sholl.math.PolarProfileStats.Report
- Record Components:
directionPeaks- unmodifiable list of directional peaks ([0,360[ degrees), sorted by descending heightorientationPeaks- unmodifiable list of orientation peaks ([0,180[ degrees), sorted by descending heightadc- Angular Distribution Coherence (ADC) in [0,1]. Higher values indicate greater concentration of weight around a single direction; 0 indicates a uniform distribution.odc- Orientation Distribution Coherence in [0,1]. This is a variant of ADC that is insensitive to arrow direction. ranging from [0, 1]. High values indicate mass concentrated along a line; low values indicate near-uniform angular. distribution. NB: ODC can capture morphologies that are symmetric across 180° (two opposite lobes) for which ADC can be near 0.pd- Preferred direction angle in [0,360[ degreespo- Preferred orientation angle in [0,180[ degreesvmDirectional- Optional von Mises fit for the directional distribution (non-null only if unimodal)vmAxial- Optional von Mises fit for the axial/orientation distribution (non-null only if unimodal)
- Enclosing class:
PolarProfileStats
public static record PolarProfileStats.Report(List<PolarProfileStats.PolarPeak> directionPeaks, List<PolarProfileStats.PolarPeak> orientationPeaks, double adc, double odc, double pd, double po, CircularModels.VonMisesFit vmDirectional, CircularModels.VonMisesFit vmAxial)
extends Record
Immutable summary of the global polar distribution.
-
Constructor Summary
ConstructorsConstructorDescriptionReport(List<PolarProfileStats.PolarPeak> directionPeaks, List<PolarProfileStats.PolarPeak> orientationPeaks, double adc, double odc, double pd, double po, CircularModels.VonMisesFit vmDirectional, CircularModels.VonMisesFit vmAxial) Creates an instance of aReportrecord class. -
Method Summary
Modifier and TypeMethodDescriptiondoubleadc()Returns the value of theadcrecord component.Returns the value of thedirectionPeaksrecord component.final booleanIndicates whether some other object is "equal to" this one.final inthashCode()Returns a hash code value for this object.doubleodc()Returns the value of theodcrecord component.Returns the value of theorientationPeaksrecord component.doublepd()Returns the value of thepdrecord component.doublepo()Returns the value of theporecord component.toString()Creates an adaptive summary tailored to common regimes: No preferred directions when both ADC and ODC are very low or no peaks are found. Single preferred direction when ADC is strong and exactly one robust peak is detected. Preferred orientation (axis) when ODC is strong but ADC is weak. Multiple preferred directions listing up to three top angles otherwise.vmAxial()Returns the value of thevmAxialrecord component.Returns the value of thevmDirectionalrecord component.
-
Constructor Details
-
Report
public Report(List<PolarProfileStats.PolarPeak> directionPeaks, List<PolarProfileStats.PolarPeak> orientationPeaks, double adc, double odc, double pd, double po, CircularModels.VonMisesFit vmDirectional, CircularModels.VonMisesFit vmAxial) Creates an instance of aReportrecord class.- Parameters:
directionPeaks- the value for thedirectionPeaksrecord componentorientationPeaks- the value for theorientationPeaksrecord componentadc- the value for theadcrecord componentodc- the value for theodcrecord componentpd- the value for thepdrecord componentpo- the value for theporecord componentvmDirectional- the value for thevmDirectionalrecord componentvmAxial- the value for thevmAxialrecord component
-
-
Method Details
-
toString
Creates an adaptive summary tailored to common regimes:- No preferred directions when both ADC and ODC are very low or no peaks are found.
- Single preferred direction when ADC is strong and exactly one robust peak is detected.
- Preferred orientation (axis) when ODC is strong but ADC is weak.
- Multiple preferred directions listing up to three top angles otherwise.
-
hashCode
public final int hashCode()Returns a hash code value for this object. The value is derived from the hash code of each of the record components. -
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. Reference components are compared withObjects::equals(Object,Object); primitive components are compared with '=='. -
directionPeaks
Returns the value of thedirectionPeaksrecord component.- Returns:
- the value of the
directionPeaksrecord component
-
orientationPeaks
Returns the value of theorientationPeaksrecord component.- Returns:
- the value of the
orientationPeaksrecord component
-
adc
public double adc()Returns the value of theadcrecord component.- Returns:
- the value of the
adcrecord component
-
odc
public double odc()Returns the value of theodcrecord component.- Returns:
- the value of the
odcrecord component
-
pd
public double pd()Returns the value of thepdrecord component.- Returns:
- the value of the
pdrecord component
-
po
public double po()Returns the value of theporecord component.- Returns:
- the value of the
porecord component
-
vmDirectional
Returns the value of thevmDirectionalrecord component.- Returns:
- the value of the
vmDirectionalrecord component
-
vmAxial
Returns the value of thevmAxialrecord component.- Returns:
- the value of the
vmAxialrecord component
-