﻿RhinoMath Class

# RhinoMath Class

Provides constants and static methods that are additional to Math.
Inheritance Hierarchy
SystemObject
RhinoRhinoMath

Namespace:  Rhino
Assembly:  RhinoCommon (in RhinoCommon.dll) Version: Rhino 6.0
Syntax
`public static class RhinoMath`

The RhinoMath type exposes the following members.

Methods
NameDescription
Clamp(Double, Double, Double)
Restricts a Double to be specified within an interval of two numbers.
Clamp(Int32, Int32, Int32)
Restricts a Int32 to be specified within an interval of two integers.
CRC32(UInt32, Byte)
Advances the cyclic redundancy check value remainder given a byte array. http://en.wikipedia.org/wiki/Cyclic_redundancy_check.
CRC32(UInt32, Double)
Advances the cyclic redundancy check value remainder given a Double. http://en.wikipedia.org/wiki/Cyclic_redundancy_check.
CRC32(UInt32, Int32)
Advances the cyclic redundancy check value remainder given a Int32. http://en.wikipedia.org/wiki/Cyclic_redundancy_check.
EpsilonEquals(Double, Double, Double)
Compare two doubles for equality within some "epsilon" range
EpsilonEquals(Single, Single, Single)
Compare to floats for equality within some "epsilon" range
IntIndexToString
Portrays an Int32 index in text.
IsValidDouble
Determines whether a Double value is valid within the RhinoCommon context.

Rhino does not use Double.NaN by convention, so this test evaluates to true if:

x is not equal to RhinoMath.UnsetValue

System.Double.IsNaN(x) evaluates to false

System.Double.IsInfinity(x) evaluates to false

IsValidSingle
Determines whether a Single value is valid within the RhinoCommon context.

Rhino does not use Single.NaN by convention, so this test evaluates to true if:

x is not equal to RhinoMath.UnsetValue,

System.Single.IsNaN(x) evaluates to false

System.Single.IsInfinity(x) evaluates to false

ParseNumber
Evaluates command line math expression.
ToDegrees
Convert an angle from radians to degrees.
Convert an angle from degrees to radians.
TryParseNumber
Evaluates command line math expression.
UnitScale
Computes the scale factor for changing the measurements unit systems.
Top
Fields
NameDescription
DefaultAngleTolerance
Represents the default angle tolerance, used when no other values are provided.

This is one degree, expressed in radians.

SqrtEpsilon
Represents a default value that is used when comparing square roots.

This value is several orders of magnitude larger than ZeroTolerance.

UnsetIntIndex
When signed int values are used in a context where 0 and small negative values are valid indices and there needs to be a value that indicates the index is not set, OpenNURBS uses this index. This value is -2147483647, or Int32.MinValue + 1. This value paralles ON_UNSET_INT_INDEX.
UnsetSingle
Gets the single precision floating point number that is considered 'unset' in Rhino.
UnsetValue
Gets the Rhino standard Unset value. Use this value rather than Double.NaN when a bogus floating point value is required.
ZeroTolerance
Gets the Zero Tolerance constant (1.0e-12).
Top