public final class OffsetUnit extends Unit implements Serializable
Constructor and Description |
---|
OffsetUnit(double offset)
Construct an offset, dimensionless unit.
|
OffsetUnit(double offset,
String identifier)
Construct an offset, dimensionless unit with an identifier.
|
OffsetUnit(double offset,
Unit unit)
Construct an offset unit from another unit.
|
OffsetUnit(double offset,
Unit unit,
String identifier)
Construct an offset unit from another unit and an identifier.
|
Modifier and Type | Method and Description |
---|---|
Unit |
divide(Unit that)
Divide an offset unit by another unit.
|
protected Unit |
divideInto(Unit that)
Divide an offset unit into another unit.
|
boolean |
equals(Unit unit)
Indicates if this instance equals a unit.
|
Unit |
getAbsoluteUnit()
Gets the absolute unit of this unit.
|
String |
getDefinition()
Return the definition of this unit.
|
DerivedUnit |
getDerivedUnit()
Returns the derived unit that underlies this unit.
|
int |
hashCode()
Returns the hash code of this instance.
|
boolean |
isConvertible(Unit unit)
Indicate whether this unit is convertible with another unit.
|
boolean |
isDimensionless()
Indicates if this instance is dimensionless.
|
protected boolean |
isTime()
Indicates if this instance is a unit of time.
|
Unit |
log(double base)
Returns the logarithmic unit that has this unit as its reference level.
|
static void |
main(String[] args)
Test this class.
|
Unit |
multiply(Unit that)
Multiply an offset unit by another unit.
|
Unit |
pow(double power)
Raises an offset unit to a power.
|
Unit |
pow(int power)
Raises an offset unit to a power.
|
protected Unit |
protectedClone(String identifier)
Clones this unit, changing the identifier.
|
Unit |
root(int root)
Returns the N-th root of this unit.
|
Unit |
scale(double amount)
Scale this unit by an amount.
|
Unit |
shift(double offset)
Shift this unit by an amount.
|
double[] |
toThat(double[] values,
Unit that)
Convert values from this unit to another unit.
|
double[] |
toThat(double[] values,
Unit that,
boolean copy)
Convert values from this unit to another unit.
|
float[] |
toThat(float[] values,
Unit that)
Convert values from this unit to another unit.
|
float[] |
toThat(float[] values,
Unit that,
boolean copy)
Convert values from this unit to another unit.
|
double[] |
toThis(double[] values,
Unit that)
Convert values to this unit from another unit.
|
double[] |
toThis(double[] values,
Unit that,
boolean copy)
Convert values to this unit from another unit.
|
float[] |
toThis(float[] values,
Unit that)
Convert values to this unit from another unit.
|
float[] |
toThis(float[] values,
Unit that,
boolean copy)
Convert values to this unit from another unit.
|
adjustCheckAndCache, canConvert, canConvertArray, clone, convertTuple, convertTuple, convertTuple, convertTuple, copyUnitsArray, equals, getIdentifier, sqrt, toString, toThat, toThis, transformUnits, transformUnits, transformUnits, transformUnits
public OffsetUnit(double offset)
offset
- The amount of offset.public OffsetUnit(double offset, String identifier)
offset
- The amount of offset.identifier
- The name or abbreviation for the cloned unit. May be
null
or empty.public OffsetUnit(double offset, Unit unit)
null
.offset
- The amount of offset.unit
- The other unit.public boolean isDimensionless()
Indicates if this instance is dimensionless. A unit is dimensionless if it is a measure of a dimensionless quantity like angle or concentration. Examples of dimensionless units include radian, degree, steradian, and "g/kg".
isDimensionless
in class Unit
protected boolean isTime()
true
if and only if this instance is a unit of time.protected Unit protectedClone(String identifier)
protectedClone
in class Unit
identifier
- The name or abbreviation for the cloned unit. May be
null
or empty.public Unit scale(double amount) throws UnitException
Unit
scale
in class Unit
amount
- The amount by which to scale this unit. E.g. Unit yard =
meter.scale(0.9144);UnitException
- This unit cannot be scaled.public Unit shift(double offset) throws UnitException
Unit
shift
in class Unit
offset
- The amount by which to shift this unit. E.g. Unit celsius =
kelvin.shift(273.15);UnitException
- The unit subclass is unknown.public Unit log(double base) throws UnitException
Unit
log
in class Unit
base
- The logarithmic base: one of 2
, Math.E
, or
10
.UnitException
- if this unit can't be used as a reference level for a
logarithmic unit.public Unit pow(int power) throws UnitException
pow
in class Unit
power
- The power to raise this unit by.UnitException
- if the underlying unit can't be raised to the given power.public Unit pow(double power) throws UnitException
pow
in class Unit
power
- The power to raise this unit by.UnitException
- if the underlying unit can't be raised to the given power.public Unit root(int root) throws IllegalArgumentException, UnitException
root
in class Unit
root
- The root to take (e.g. 2 means square root). May not be zero.root
-th root of this
unit.IllegalArgumentException
- The root value is zero or the resulting unit would have a
non-integral unit dimension.UnitException
- if the underlying unit can't have the given root taken.public String getDefinition()
getDefinition
in class Unit
public Unit multiply(Unit that) throws UnitException
multiply
in class Unit
that
- The unit with which to multiply this unit.UnitException
- Can't multiply units.public Unit divide(Unit that) throws UnitException
divide
in class Unit
that
- The unit to divide into this unit.UnitException
- Can't divide units.protected Unit divideInto(Unit that) throws UnitException
divideInto
in class Unit
that
- The unit to be divide by this unit.UnitException
- Meaningless operation.public double[] toThis(double[] values, Unit that) throws UnitException
toThis
in class Unit
values
- The values to be converted.that
- The unit of values
.UnitException
- The units are not convertible.public float[] toThis(float[] values, Unit that) throws UnitException
toThis
in class Unit
values
- The values to be converted.that
- The unit of values
.UnitException
- The units are not convertible.public double[] toThis(double[] values, Unit that, boolean copy) throws UnitException
toThis
in class Unit
values
- The values to be converted.that
- The unit of values
.copy
- if false and that
equals this, return
values
, else return a new arrayUnitException
- The units are not convertible.public float[] toThis(float[] values, Unit that, boolean copy) throws UnitException
toThis
in class Unit
values
- The values to be converted.that
- The unit of values
.copy
- if false, convert values in place.UnitException
- The units are not convertible.public double[] toThat(double[] values, Unit that) throws UnitException
toThat
in class Unit
values
- The values to be converted in units of this unit.that
- The unit to which to convert the values.UnitException
- The units are not convertible.public float[] toThat(float[] values, Unit that) throws UnitException
toThat
in class Unit
values
- The values to be converted in units of this unit.that
- The unit to which to convert the values.UnitException
- The units are not convertible.public double[] toThat(double[] values, Unit that, boolean copy) throws UnitException
toThat
in class Unit
values
- The values to be converted in units of this unit.that
- The unit to which to convert the values.copy
- if false and that
equals this, return a
values
, else return a new arrayUnitException
- The units are not convertible.public float[] toThat(float[] values, Unit that, boolean copy) throws UnitException
toThat
in class Unit
values
- The values to be converted in units of this unit.that
- The unit to which to convert the values.copy
- if false and that
equals this, return a
values
, else return a new arrayUnitException
- The units are not convertible.public Unit getAbsoluteUnit()
getAbsoluteUnit
in class Unit
public boolean isConvertible(Unit unit)
toThis(...)
/ and
toThat(...)
methods will not throw a UnitException. Unit A
is convertible with unit B if and only if unit B is convertible with unit
A; hence, calling-order is irrelevant.isConvertible
in class Unit
unit
- The other unit.public static void main(String[] args) throws UnitException
args
- Arguments (ignored).UnitException
- A problem occurred.public boolean equals(Unit unit)
public int hashCode()
Object.hashCode()
should
be overridden whenever Object.equals(Object)
is.public DerivedUnit getDerivedUnit()
Unit
getDerivedUnit
in class Unit
Copyright © 1996–2023 The SSEC Visualization Project. All rights reserved.