Class

NSUnitConverterLinear

A description of how to convert between units using a linear equation.

Declaration

@interface NSUnitConverterLinear : NSUnitConverter

Overview

A linear equation for unit conversion takes the form y = mx + b, such that:

  • y is the value in terms of the base unit of the dimension

  • m is the known coefficient used for this unit's conversion

  • x is the value in terms of the unit on which this method is called

  • b is the known constant used for this unit's conversion

The baseUnitValueFromValue: method performs the conversion in the form of y = mx + b, where x represents the value passed in and y represents the value returned. The valueFromBaseUnitValue: method performs the inverse conversion in the form of x = (y - b) / m, where y represents the value passed in and x represents the value returned.

For example, consider the fahrenheit unit defined by NSUnitTemperature: The baseUnitValueFromValue: method calculates the value in the base unit, kelvin using the formula K = (0.55555555555556) × °F + 255.37222222222427, and the valueFromBaseUnitValue: method calculates the value in fahrenheit using the formula °F = (K — 255.37222222222427) / (0.55555555555556), where the coefficient is (0.55555555555556) and the constant is 255.37222222222427.

NSUnitConverter *kelvinToFahrenheit = [[NSUnitConverterLinear alloc] initWithCoefficient:0.55555555555556 constant:255.37222222222427];

Units that perform conversion using only a scale factor have a coefficient equal to the scale factor and a constant equal 0. For example, consider the kilometers unit defined by NSUnitLength: The baseUnitValueFromValue: method calculates the value in meters using the formula valueInMeters = 1000 * valueInKilometers + 0, and the valueFromBaseUnitValue: calculates the value in kilometers using the formula valueInKilometers = (valueInMeters - 0) / 1000, where the coefficient is 1000 and the constant is 0.

NSUnitConverterLinear *kilometersToMeters = [[NSUnitConverterLinear alloc] initWithCoefficient:1000.0 constant:0.0];

Topics

Accessing Linear Parameters

coefficient

The coefficient used in the linear unit conversion calculation.

constant

The constant used in the linear unit conversion calculation.

Creating Unit Converters

- initWithCoefficient:

Initializes the unit converter with the specified coefficient.

- initWithCoefficient:constant

Initializes the unit converter with the specified coefficient and constant.

Relationships

Inherits From

Conforms To

See Also

Conversion

NSUnitConverter

An abstract class that provides a description of how to convert a unit to and from the base unit of its dimension.