Class: Length

Inherits:
Float
  • Object
show all

Overview

Note:

Prior to SketchUp 2015, Length used to be derived from Float. This is no longer the case.

Because length units are used so often in SketchUp, a special class has been added to make it easier to work with length values. You can use a Length object any place that you would use a Float.

Internally, all lengths in SketchUp are stored in inches. The Length class stores values in inches as well. A number of methods have been added to the Ruby Numeric class to do units conversions.

Constants: Length Format:

  • Length::Decimal

  • Length::Architectural

  • Length::Engineering

  • Length::Fractional

Length Unit:

  • Length::Inches

  • Length::Feet

  • Length::Millimeter

  • Length::Centimeter

  • Length::Meter

The setting for the Length format and Length unit can be retrieved from the model options by querying the “UnitsOptions” OptionsProvider for “LengthFormat” and “LengthUnit” respectively.

Version:

  • SketchUp 6.0

Instance Method Summary # collapse

Instance Method Details

#<(length2) ⇒ Object

The < method is used to see if one length is less than another length.

For example, if l1 = 1.0.inch and l2 = 1.000001.inch then l1 == l2 so l1 < l2 should return false.

Examples:

length1 = 12.to_l
length2 = 11.to_l
if length1 < length2
  puts "length1 is less than length2"
else
  puts "length1 is not less than length2"
end

Returns status - true if length1 is < length2; false if length1 is not < length2

Parameters:

  • length2

    A length value.

Returns:

  • status - true if length1 is < length2; false if length1 is not < length2

Version:

  • SketchUp 6.0

#<=(length2) ⇒ Object

The <= method is used to see if one length is less than or equal to another length.

Examples:

length1 = 11.to_l
length2 = 12.to_l
if length1 <= length2
  puts "length1 is less than or equal length2"
else
  puts "length1 is greater than length2"
end

Returns status - true if length1 is <= length2; false if length1 is not <= length2

Parameters:

  • length2

    A length value.

Returns:

  • status - true if length1 is <= length2; false if length1 is not <= length2

Version:

  • SketchUp 6.0

#<=>(length2) ⇒ Object

The <=> method is used to see if one length is less than equal or greater than another length. Because we change == for Length to do a test based on a tolerance, we also need to change <=> to also take tolerance into account.

Examples:

length1 = 20.to_l
length2 = 30.to_l
result = length1 <=> length2

Returns result - the result of the comparison

Parameters:

  • length2

    A length value.

Returns:

  • result - the result of the comparison

Version:

  • SketchUp 6.0

#==(length2) ⇒ Object

The == method is used to see if one length is equal to another length.

The equality comparison on Length values uses the default tolerance that SketchUp uses for comparing lengths.

Examples:

length1 = 20.to_l
length2 = 30.to_l
is_equal = length1 == length2

Returns status - true if length1 is == length2; false if length1 is not == length2

Parameters:

  • length2

    A length value.

Returns:

  • status - true if length1 is == length2; false if length1 is not == length2

Version:

  • SketchUp 6.0

#>(length2) ⇒ Object

The > method is used to see if one length is greater than another length.

For example, if l1 = 1.0.inch and l2 = 1.000001.inch then l1 == l2 so l1 > l2 should return false.

Examples:

length1 = 11.to_l
length2 = 12.to_l
if length1 > length2
  puts "length1 is greater than length2"
else
  puts "length1 is not greater than length2"
end

Returns status - true if length1 is > length2; false if length1 is not > length2

Parameters:

  • length2

    A length value.

Returns:

  • status - true if length1 is > length2; false if length1 is not > length2

Version:

  • SketchUp 6.0

#>=(length2) ⇒ Object

The >= method is used to see if one length is greater than or equal to another length.

For example, if l1 = 1.0.inch and l2 = 1.000001.inch then l1 == l2 so l1 >= l2 should return true. Also L1 <= l2 would return true.

Examples:

length1 = 11.to_l
length2 = 12.to_l
if length1 >= length2
  puts "length1 is greater than or equal length2"
else
  puts "length1 is less than length2"
end

Returns status - true if length1 is >= length2; false if length1 is not >= length2

Parameters:

  • length2

    A length value.

Returns:

  • status - true if length1 is >= length2; false if length1 is not >= length2

Version:

  • SketchUp 6.0

#inspectObject

The inspect method is used to retrieve an unformatted string for the length, which is the length in inches, regardless of the user's model unit settings. See Length.to_s for a way automatically format your Length to the user's model units.

Examples:

length = 55.to_l
str = length.inspect

Returns:

  • length - an unformatted length string

Version:

  • SketchUp 6.0

#to_fObject

The to_f method is used to convert a length to a normal float.

Examples:

length = 45.to_l
f = length.to_f

Returns:

  • value - the float length value

Version:

  • SketchUp 6.0

#to_sObject

Format a length as a String using the current units formatting settings for the model. (So if the user's model is set to feet, this method will return a nicely formatted length in feet.)

Examples:

length = 55.to_l
str = length.to_s

Returns:

  • value - the float length value

Version:

  • SketchUp 6.0