Class MultiplyConverter

java.lang.Object
javax.measure.converter.UnitConverter
javax.measure.converter.MultiplyConverter
All Implemented Interfaces:
Serializable

public final class MultiplyConverter extends UnitConverter

This class represents a converter multiplying numeric values by a constant scaling factor (approximated as a double). For exact scaling conversions RationalConverter is preferred.

Instances of this class are immutable.

See Also:
  • Constructor Details

    • MultiplyConverter

      public MultiplyConverter(double factor)
      Creates a multiply converter with the specified scale factor.
      Parameters:
      factor - the scale factor.
      Throws:
      IllegalArgumentException - if offset is one (or close to one).
  • Method Details

    • getFactor

      public double getFactor()
      Returns the scale factor.
      Returns:
      the scale factor.
    • inverse

      public UnitConverter inverse()
      Description copied from class: UnitConverter
      Returns the inverse of this converter. If x is a valid value, then x == inverse().convert(convert(x)) to within the accuracy of computer arithmetic.
      Specified by:
      inverse in class UnitConverter
      Returns:
      the inverse of this converter.
    • convert

      public double convert(double amount)
      Description copied from class: UnitConverter
      Converts a double value.
      Specified by:
      convert in class UnitConverter
      Parameters:
      amount - the numeric value to convert.
      Returns:
      the converted numeric value.
    • isLinear

      public boolean isLinear()
      Description copied from class: UnitConverter
      Indicates if this converter is linear. A converter is linear if convert(u + v) == convert(u) + convert(v) and convert(r * u) == r * convert(u). For linear converters the following property always hold:[code] y1 = c1.convert(x1); y2 = c2.convert(x2); then y1*y2 = c1.concatenate(c2).convert(x1*x2)[/code]
      Specified by:
      isLinear in class UnitConverter
      Returns:
      true if this converter is linear; false otherwise.
    • concatenate

      public UnitConverter concatenate(UnitConverter converter)
      Description copied from class: UnitConverter
      Concatenates this converter with another converter. The resulting converter is equivalent to first converting by the specified converter, and then converting by this converter.

      Note: Implementations must ensure that the UnitConverter.IDENTITY instance is returned if the resulting converter is an identity converter.

      Overrides:
      concatenate in class UnitConverter
      Parameters:
      converter - the other converter.
      Returns:
      the concatenation of this converter with the other converter.