public interface ComponentIntensityRange
A "component" is one scalar channel within a pixel: for a grayscale image there is one component; for an RGB image there are three (red, green, blue).
This interface is a simple min/max pair. It is used as a data-transfer object
when building display settings via
ComponentDisplaySettings.Builder.scalingRange(ComponentIntensityRange),
ChannelIntensityRanges.Builder.componentRange(int, ComponentIntensityRange), and
related methods. It does not carry gamma; for that, use ComponentDisplaySettings
directly.
Instances are immutable. Use builder() or copyBuilder() to
construct one.
Default values: a freshly built instance (no setters called) has
minimum = 0 and maximum = Long.MAX_VALUE.
Long.MAX_VALUE is a sentinel meaning "use the full camera bit-depth range."
ChannelIntensityRanges,
ComponentDisplaySettings| Modifier and Type | Interface and Description |
|---|---|
static interface |
ComponentIntensityRange.Builder
Builder for
ComponentIntensityRange. |
| Modifier and Type | Method and Description |
|---|---|
static ComponentIntensityRange.Builder |
builder()
Returns a new builder with default values (
min=0, max=Long.MAX_VALUE). |
ComponentIntensityRange.Builder |
copyBuilder()
Returns a builder pre-populated with this instance's values.
|
default double |
getFloatMaximum()
Returns the maximum as an actual pixel value, for floating point images.
|
default double |
getFloatMinimum()
Returns the minimum as an actual pixel value, for floating point images.
|
long |
getMaximum()
Returns the maximum intensity (white point).
|
long |
getMinimum()
Returns the minimum intensity (black point).
|
default boolean |
hasFloatRange()
Returns whether a floating point range has been set.
|
static ComponentIntensityRange.Builder builder()
min=0, max=Long.MAX_VALUE).ComponentIntensityRange.Builder copyBuilder()
long getMinimum()
long getMaximum()
Long.MAX_VALUE when not explicitly set,
which means "use the full camera bit-depth range"default double getFloatMinimum()
The default implementation reports no float range, so that implementations written before the float range existed keep compiling.
Double.NaN if no float range has been sethasFloatRange()default double getFloatMaximum()
Double.NaN if no float range has been sethasFloatRange()default boolean hasFloatRange()