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 the following is true: 単位変換に対する一次方程式は、以下が当てはまるような、形式y = mx + bをとります:

  • y is the value in terms of the base unit of the dimension. yは、その次元の基本単位の表現での値です。

  • m is the known coefficient to use for this unit's conversion. mは、この単位の変換に使う既知の係数です。

  • x is the value in terms of the unit on which you call this method. xは、それの上であなたがこのメソッドを呼び出す単位の表現での値です。

  • b is the known constant to use for this unit's conversion. bは、この単位の変換に使う既知の定数です。

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. baseUnitValueFromValue:メソッドは、y = mx + bの形式で変換を実行します、そこでxは渡される値を表します、そしてyは返される値を表します。valueFromBaseUnitValue:メソッドは、x = (y - b) / mの形式で逆変換を実行します、そこでyは渡される値を表します、そしてxは返される値を返します。

For example, consider the fahrenheit unit that NSUnitTemperature defines. The baseUnitValueFromValue: method calculates the value in the base unit, kelvin, using the formula K = (0.55555555555556) × °F + 255.37222222222427. 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. たとえば、fahrenheit単位を考えてください、それはNSUnitTemperatureを定義します。baseUnitValueFromValue:メソッドは、値を基本単位、kelvinにおいて、公式K = (0.55555555555556) × °F + 255.37222222222427を使って算出します。valueFromBaseUnitValue:メソッドは、値をfahrenheitにおいて公式°F = (K — 255.37222222222427) / (0.55555555555556)を使って算出します、そこでcoefficient(0.55555555555556)です、そしてconstant255.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 to 0. For example, consider the kilometers unit NSUnitLength defines. The baseUnitValueFromValue: method calculates the value in meters using the formula valueInMeters = 1000 * valueInKilometers + 0. The valueFromBaseUnitValue: calculates the value in kilometers using the formula valueInKilometers = (valueInMeters - 0) / 1000, where the coefficient is 1000 and the constant is 0. スケール(縮尺)因子のみを使って変換を実行する単位は、スケール因子に等しいcoefficientを持ちます、そしてconstant0に等しいです。例えば、kilometers単位を考えてください、それはNSUnitLengthが定義します。baseUnitValueFromValue:メソッドは値をメートルにおいて公式valueInMeters = 1000 * valueInKilometers + 0を使って算出します。valueFromBaseUnitValue:は、値をキロメートルにおいて公式valueInKilometers = (valueInMeters - 0) / 1000を使って算出します、そこで係数は1000です、そして定数は0です。


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

Topics 話題

Accessing Linear Parameters 線形パラメータにアクセスする

Creating Unit Converters 単位コンバータを作成する

Relationships 関係

Inherits From 継承元

Conforms To 次に準拠

See Also 参照

Conversion 変換