Inner Drive Extensible Architecture

## Length Structure |

Represents the quantity of a one-dimensional line in space.

Inheritance Hierarchy

Syntax

C#

[SerializableAttribute] [JsonObjectAttribute(ItemTypeNameHandling = TypeNameHandling.Auto)] public struct Length : IAdditionOperators<Length, Length, Length>, IAdditionOperators<Length, double, Length>, IAdditionOperators<Length, int, Length>, ICloneable, IComparable, IComparable<Length>, IComparisonOperators<Length, Length, bool>, IEqualityOperators<Length, Length, bool>, IComparisonOperators<Length, double, bool>, IEqualityOperators<Length, double, bool>, IConvertible<Length>, IDivisionOperators<Length, double, Length>, IDivisionOperators<Length, int, Length>, IEquatable<Length>, IMeasurable, IFormattable, IMinMaxValue<Length>, IMultiplyOperators<Length, double, Length>, IMultiplyOperators<Length, int, Length>, ISubtractionOperators<Length, Length, Length>, ISubtractionOperators<Length, double, Length>, ISubtractionOperators<Length, int, Length>, IUnaryNegationOperators<Length, Length>, ISpanFormattable

The Length type exposes the following members.

Constructors

Name | Description | |
---|---|---|

Length(Double) | Creates a new instance of Length with a particular value. | |

Length(Double, Type) | Creates a new instance of Length with a particular value and Unit whose Type is specified | |

Length(Double, Unit, MetricExponent) | Creates a new instance of Length with a particular value and Unit assuming that value is already raised or lowered to the power of exponent. |

Properties

Name | Description | |
---|---|---|

Accuracy | Represents the degree confidence that the quantity represented equals the quantity actually measured, controlling how the CompareTo<T> method behaves. | |

DefaultUnit |
Gets the Type of the Unit in which the
IMeasurableclass is denominated.
| |

MaxValue | Gets the maximum value of the current type. | |

MinValue | Gets the minimum value of the current type. | |

Name | Gets the name of the type of measurement. | |

Precision | Represents the range within which the measurement is correct, controlling how the ToString() method behaves. | |

Unit | Gets the Unit in which the IMeasurable object is denominated. | |

Value | Gets or sets the quantity of units represented by the IMeasurable object. |

Methods

Name | Description | |
---|---|---|

Add(Length, Length) | Adds two instances of Length together. | |

Add(Length, Double) | Adds an instance of Length to an instance of Double. | |

Clone | Creates a new object that is a copy of the current instance. | |

CompareTo | Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object. | |

ConvertTo(Type) | Converts the instance into a new IMeasurable instance denominated in the measurement units provided. | |

ConvertTo(Unit) | Converts the instance into a new instance of the same type denominated in the measurement units provided. | |

Divide | Divides an instance of Length by a double-precision value. | |

Equals(Length) | Indicates whether the current object is equal to another object of the same type. | |

Equals(Object) | Indicates whether this instance and a specified object are equal. (Overrides ValueTypeEquals(Object)) | |

Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object) | |

GetHashCode | Returns the hash code for this instance. (Overrides ValueTypeGetHashCode) | |

GetType | Gets the Type of the current instance. (Inherited from Object) | |

IsInfinity | Returns a value indicating whether the specified number evaluates to negative or positive infinity. | |

IsNaN | Returns a value indicating whether the specified number evaluates to a value that is not a number (NaN). | |

IsNegativeInfinity | Returns a value indicating whether the specified number evaluates to negative infinity (NegativeInfinity). | |

IsPositiveInfinity | Returns a value indicating whether the specified number evaluates to positive infinity (PositiveInfinity). | |

MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object) | |

Multiply | Multiplies an instance of Length by a double-precision value. | |

Negate | Negates the value of the specified Length operand. | |

Subtract(Length, Length) | Subtracts one instance of Length from another. | |

Subtract(Length, Double) | Subtracts an instance of Double from an instance of Length. | |

ToSquare | Squares this Length. | |

ToString | Returns the fully qualified type name of this instance. (Overrides ValueTypeToString) | |

ToString(MetricExponent) | Converts the numeric value of this instance to its equivalent String representation, using the metric exponent provided if appropriate to the Unit type. | |

ToString(String) | Converts the numeric value of this instance to its equivalent String representation, using the specified format. | |

ToString(String, MetricExponent) | Converts the numeric value of this instance to its equivalent String representation, using the specified format and metric exponent. | |

ToString(String, IFormatProvider) | Formats the value of the current instance using the specified format. | |

ToString(String, MetricExponent, IFormatProvider) | Formats the value of the current instance using the specified format. | |

TryFormat | Tries to format the value of the current instance into the provided span of characters. |

Operators

Name | Description | |
---|---|---|

Addition(Length, Length) | Adds two values together to compute their sum. | |

Addition(Length, Double) | Adds two values together to compute their sum. | |

Addition(Length, Int32) | Adds two values together to compute their sum. | |

Division(Length, Double) | Divides one value by another to compute their quotient. | |

Division(Length, Int32) | Divides one value by another to compute their quotient. | |

Equality(Double, Length) | Compares an instance of Length with an instance of Double for equality. | |

Equality(Length, Length) | Compares two values to determine equality. | |

Equality(Length, Double) | Compares two values to determine equality. | |

GreaterThan(Double, Length) | Compares an instance of Length to an instance of Double for different values. | |

GreaterThan(Length, Length) | Compares two values to determine which is greater. | |

GreaterThan(Length, Double) | Compares two values to determine which is greater. | |

GreaterThanOrEqual(Double, Length) | Compares an instance of Length to an instance of Double for different values. | |

GreaterThanOrEqual(Length, Length) | Compares two values to determine which is greater or equal. | |

GreaterThanOrEqual(Length, Double) | Compares two values to determine which is greater or equal. | |

(Double to Length) | Creates a new Length object from a Double value. | |

(Length to Double) | Creates a new Double value from a given Length object. | |

Inequality(Double, Length) | Compares an instance of Length with an instance of Double for inequality. | |

Inequality(Length, Length) | Compares two values to determine inequality. | |

Inequality(Length, Double) | Compares two values to determine inequality. | |

LessThan(Double, Length) | Compares an instance of Length to an instance of Double for different values. | |

LessThan(Length, Length) | Compares two values to determine which is less. | |

LessThan(Length, Double) | Compares two values to determine which is less. | |

LessThanOrEqual(Double, Length) | Compares an instance of Length to an instance of Double for different values. | |

LessThanOrEqual(Length, Length) | Compares two values to determine which is less or equal. | |

LessThanOrEqual(Length, Double) | Compares two values to determine which is less or equal. | |

Multiply(Length, Double) | Multiplies two values together to compute their product. | |

Multiply(Length, Int32) | Multiplies two values together to compute their product. | |

Subtraction(Length, Length) | Subtracts two values to compute their difference. | |

Subtraction(Length, Double) | Subtracts two values to compute their difference. | |

Subtraction(Length, Int32) | Subtracts two values to compute their difference. | |

UnaryNegation(Length) | Computes the unary negation of a value. |

Fields

Name | Description | |
---|---|---|

Epsilon | Represents the smallest value of Accuracy that will successfully evaluate equality without boundary condition errors. | |

MaxPrecision | Represents the maximum precision with which a value can be displayed. | |

MinPrecision | Represents the minimum precision with which a value can be displayed. |

Explicit Interface Implementations

Name | Description | |
---|---|---|

IComparableCompareTo | Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object. |

Remarks

Measurable objects are generally immutable structures. Thus,
the properties of measurable objects expose property get methods
only. The exceptions—Accuracy and Precision—do
not change the underlying value of the measurement, only its behavior; therefore
these members may be changed as needed after the measurement is instantiated.

See Also