sketchup-api-stubs 0.7.4 → 0.7.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/sketchup-api-stubs/sketchup.rb +148 -145
- data/lib/sketchup-api-stubs/stubs/{array.rb → Array.rb} +741 -741
- data/lib/sketchup-api-stubs/stubs/Geom/BoundingBox.rb +322 -318
- data/lib/sketchup-api-stubs/stubs/Geom/Bounds2d.rb +172 -172
- data/lib/sketchup-api-stubs/stubs/Geom/LatLong.rb +126 -126
- data/lib/sketchup-api-stubs/stubs/Geom/OrientedBounds2d.rb +102 -102
- data/lib/sketchup-api-stubs/stubs/Geom/Point2d.rb +400 -400
- data/lib/sketchup-api-stubs/stubs/Geom/Point3d.rb +661 -661
- data/lib/sketchup-api-stubs/stubs/Geom/PolygonMesh.rb +523 -492
- data/lib/sketchup-api-stubs/stubs/Geom/Transformation.rb +478 -478
- data/lib/sketchup-api-stubs/stubs/Geom/Transformation2d.rb +263 -263
- data/lib/sketchup-api-stubs/stubs/Geom/UTM.rb +141 -141
- data/lib/sketchup-api-stubs/stubs/Geom/Vector2d.rb +522 -522
- data/lib/sketchup-api-stubs/stubs/Geom/Vector3d.rb +693 -691
- data/lib/sketchup-api-stubs/stubs/{geom.rb → Geom.rb} +351 -348
- data/lib/sketchup-api-stubs/stubs/{languagehandler.rb → LanguageHandler.rb} +93 -92
- data/lib/sketchup-api-stubs/stubs/Layout/AngularDimension.rb +595 -573
- data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinition.rb +698 -411
- data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinitions.rb +183 -174
- data/lib/sketchup-api-stubs/stubs/Layout/ConnectionPoint.rb +70 -70
- data/lib/sketchup-api-stubs/stubs/Layout/Document.rb +516 -514
- data/lib/sketchup-api-stubs/stubs/Layout/Ellipse.rb +29 -29
- data/lib/sketchup-api-stubs/stubs/Layout/Entities.rb +148 -143
- data/lib/sketchup-api-stubs/stubs/Layout/Entity.rb +353 -353
- data/lib/sketchup-api-stubs/stubs/Layout/FormattedText.rb +354 -349
- data/lib/sketchup-api-stubs/stubs/Layout/Grid.rb +311 -311
- data/lib/sketchup-api-stubs/stubs/Layout/Group.rb +261 -261
- data/lib/sketchup-api-stubs/stubs/Layout/Image.rb +91 -91
- data/lib/sketchup-api-stubs/stubs/Layout/Label.rb +370 -371
- data/lib/sketchup-api-stubs/stubs/Layout/Layer.rb +218 -218
- data/lib/sketchup-api-stubs/stubs/Layout/LayerInstance.rb +128 -128
- data/lib/sketchup-api-stubs/stubs/Layout/Layers.rb +225 -220
- data/lib/sketchup-api-stubs/stubs/Layout/LinearDimension.rb +567 -567
- data/lib/sketchup-api-stubs/stubs/Layout/LockedEntityError.rb +10 -10
- data/lib/sketchup-api-stubs/stubs/Layout/LockedLayerError.rb +11 -11
- data/lib/sketchup-api-stubs/stubs/Layout/Page.rb +183 -183
- data/lib/sketchup-api-stubs/stubs/Layout/PageInfo.rb +387 -387
- data/lib/sketchup-api-stubs/stubs/Layout/Pages.rb +209 -204
- data/lib/sketchup-api-stubs/stubs/Layout/Path.rb +344 -344
- data/lib/sketchup-api-stubs/stubs/Layout/Rectangle.rb +174 -174
- data/lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb +692 -694
- data/lib/sketchup-api-stubs/stubs/Layout/Style.rb +1519 -1519
- data/lib/sketchup-api-stubs/stubs/Layout/Table.rb +290 -290
- data/lib/sketchup-api-stubs/stubs/Layout/TableCell.rb +149 -149
- data/lib/sketchup-api-stubs/stubs/Layout/TableColumn.rb +139 -139
- data/lib/sketchup-api-stubs/stubs/Layout/TableRow.rb +135 -135
- data/lib/sketchup-api-stubs/stubs/Layout.rb +25 -25
- data/lib/sketchup-api-stubs/stubs/{length.rb → Length.rb} +278 -278
- data/lib/sketchup-api-stubs/stubs/{numeric.rb → Numeric.rb} +249 -249
- data/lib/sketchup-api-stubs/stubs/Sketchup/Animation.rb +144 -140
- data/lib/sketchup-api-stubs/stubs/Sketchup/AppObserver.rb +169 -157
- data/lib/sketchup-api-stubs/stubs/Sketchup/ArcCurve.rb +209 -209
- data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionaries.rb +152 -152
- data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionary.rb +286 -281
- data/lib/sketchup-api-stubs/stubs/Sketchup/Axes.rb +149 -149
- data/lib/sketchup-api-stubs/stubs/Sketchup/Behavior.rb +302 -328
- data/lib/sketchup-api-stubs/stubs/Sketchup/Camera.rb +478 -577
- data/lib/sketchup-api-stubs/stubs/Sketchup/ClassificationSchema.rb +63 -63
- data/lib/sketchup-api-stubs/stubs/Sketchup/Classifications.rb +122 -122
- data/lib/sketchup-api-stubs/stubs/Sketchup/Color.rb +294 -281
- data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentDefinition.rb +619 -562
- data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentInstance.rb +593 -593
- data/lib/sketchup-api-stubs/stubs/Sketchup/Console.rb +76 -76
- data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionLine.rb +257 -257
- data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionPoint.rb +32 -32
- data/lib/sketchup-api-stubs/stubs/Sketchup/Curve.rb +201 -194
- data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionList.rb +426 -329
- data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionObserver.rb +74 -72
- data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionsObserver.rb +104 -102
- data/lib/sketchup-api-stubs/stubs/Sketchup/Dimension.rb +165 -165
- data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionLinear.rb +306 -312
- data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionObserver.rb +42 -38
- data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionRadial.rb +87 -87
- data/lib/sketchup-api-stubs/stubs/Sketchup/Drawingelement.rb +396 -390
- data/lib/sketchup-api-stubs/stubs/Sketchup/Edge.rb +502 -508
- data/lib/sketchup-api-stubs/stubs/Sketchup/EdgeUse.rb +211 -211
- data/lib/sketchup-api-stubs/stubs/Sketchup/Entities.rb +1205 -1119
- data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesBuilder.rb +272 -0
- data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesObserver.rb +127 -125
- data/lib/sketchup-api-stubs/stubs/Sketchup/Entity.rb +545 -544
- data/lib/sketchup-api-stubs/stubs/Sketchup/EntityObserver.rb +60 -59
- data/lib/sketchup-api-stubs/stubs/Sketchup/ExtensionsManager.rb +126 -125
- data/lib/sketchup-api-stubs/stubs/Sketchup/Face.rb +937 -750
- data/lib/sketchup-api-stubs/stubs/Sketchup/FrameChangeObserver.rb +104 -104
- data/lib/sketchup-api-stubs/stubs/Sketchup/Group.rb +750 -697
- data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Request.rb +292 -285
- data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Response.rb +62 -62
- data/lib/sketchup-api-stubs/stubs/Sketchup/Http.rb +27 -27
- data/lib/sketchup-api-stubs/stubs/Sketchup/Image.rb +468 -409
- data/lib/sketchup-api-stubs/stubs/Sketchup/ImageRep.rb +266 -226
- data/lib/sketchup-api-stubs/stubs/Sketchup/Importer.rb +189 -190
- data/lib/sketchup-api-stubs/stubs/Sketchup/InputPoint.rb +407 -393
- data/lib/sketchup-api-stubs/stubs/Sketchup/InstanceObserver.rb +84 -82
- data/lib/sketchup-api-stubs/stubs/Sketchup/InstancePath.rb +306 -303
- data/lib/sketchup-api-stubs/stubs/Sketchup/Layer.rb +326 -285
- data/lib/sketchup-api-stubs/stubs/Sketchup/LayerFolder.rb +422 -0
- data/lib/sketchup-api-stubs/stubs/Sketchup/Layers.rb +427 -244
- data/lib/sketchup-api-stubs/stubs/Sketchup/LayersObserver.rb +249 -136
- data/lib/sketchup-api-stubs/stubs/Sketchup/Licensing/ExtensionLicense.rb +86 -86
- data/lib/sketchup-api-stubs/stubs/Sketchup/Licensing.rb +48 -48
- data/lib/sketchup-api-stubs/stubs/Sketchup/LineStyle.rb +24 -24
- data/lib/sketchup-api-stubs/stubs/Sketchup/LineStyles.rb +112 -112
- data/lib/sketchup-api-stubs/stubs/Sketchup/Loop.rb +137 -137
- data/lib/sketchup-api-stubs/stubs/Sketchup/Material.rb +414 -416
- data/lib/sketchup-api-stubs/stubs/Sketchup/Materials.rb +318 -311
- data/lib/sketchup-api-stubs/stubs/Sketchup/MaterialsObserver.rb +142 -141
- data/lib/sketchup-api-stubs/stubs/Sketchup/Menu.rb +93 -95
- data/lib/sketchup-api-stubs/stubs/Sketchup/Model.rb +1651 -1638
- data/lib/sketchup-api-stubs/stubs/Sketchup/ModelObserver.rb +357 -356
- data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsManager.rb +131 -132
- data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProvider.rb +284 -284
- data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProviderObserver.rb +58 -58
- data/lib/sketchup-api-stubs/stubs/Sketchup/Page.rb +797 -770
- data/lib/sketchup-api-stubs/stubs/Sketchup/Pages.rb +363 -353
- data/lib/sketchup-api-stubs/stubs/Sketchup/PagesObserver.rb +77 -76
- data/lib/sketchup-api-stubs/stubs/Sketchup/PickHelper.rb +477 -456
- data/lib/sketchup-api-stubs/stubs/Sketchup/RegionalSettings.rb +43 -43
- data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptions.rb +364 -364
- data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptionsObserver.rb +45 -44
- data/lib/sketchup-api-stubs/stubs/Sketchup/SectionPlane.rb +150 -150
- data/lib/sketchup-api-stubs/stubs/Sketchup/Selection.rb +459 -454
- data/lib/sketchup-api-stubs/stubs/Sketchup/SelectionObserver.rb +115 -115
- data/lib/sketchup-api-stubs/stubs/Sketchup/Set.rb +212 -212
- data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfo.rb +260 -257
- data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfoObserver.rb +59 -57
- data/lib/sketchup-api-stubs/stubs/Sketchup/Skp.rb +40 -0
- data/lib/sketchup-api-stubs/stubs/Sketchup/Style.rb +69 -69
- data/lib/sketchup-api-stubs/stubs/Sketchup/Styles.rb +217 -211
- data/lib/sketchup-api-stubs/stubs/Sketchup/Text.rb +262 -262
- data/lib/sketchup-api-stubs/stubs/Sketchup/Texture.rb +217 -225
- data/lib/sketchup-api-stubs/stubs/Sketchup/TextureWriter.rb +237 -237
- data/lib/sketchup-api-stubs/stubs/Sketchup/Tool.rb +837 -829
- data/lib/sketchup-api-stubs/stubs/Sketchup/Tools.rb +132 -132
- data/lib/sketchup-api-stubs/stubs/Sketchup/ToolsObserver.rb +156 -154
- data/lib/sketchup-api-stubs/stubs/Sketchup/UVHelper.rb +75 -61
- data/lib/sketchup-api-stubs/stubs/Sketchup/Vertex.rb +142 -142
- data/lib/sketchup-api-stubs/stubs/Sketchup/View.rb +1317 -1301
- data/lib/sketchup-api-stubs/stubs/Sketchup/ViewObserver.rb +45 -43
- data/lib/sketchup-api-stubs/stubs/{sketchup.rb → Sketchup.rb} +1360 -1310
- data/lib/sketchup-api-stubs/stubs/{sketchupextension.rb → SketchupExtension.rb} +353 -353
- data/lib/sketchup-api-stubs/stubs/{string.rb → String.rb} +24 -24
- data/lib/sketchup-api-stubs/stubs/UI/Command.rb +389 -310
- data/lib/sketchup-api-stubs/stubs/UI/HtmlDialog.rb +496 -356
- data/lib/sketchup-api-stubs/stubs/UI/Notification.rb +269 -229
- data/lib/sketchup-api-stubs/stubs/UI/Toolbar.rb +240 -240
- data/lib/sketchup-api-stubs/stubs/UI/WebDialog.rb +635 -633
- data/lib/sketchup-api-stubs/stubs/{ui.rb → UI.rb} +683 -667
- data/lib/sketchup-api-stubs/stubs/_top_level.rb +311 -311
- data/lib/sketchup-api-stubs.rb +1 -1
- metadata +15 -12
@@ -1,278 +1,278 @@
|
|
1
|
-
# Copyright:: Copyright
|
2
|
-
# License:: The MIT License (MIT)
|
3
|
-
|
4
|
-
# Because length units are used so often in SketchUp, a special class has been
|
5
|
-
# added to make it easier to work with length values. You can use a Length
|
6
|
-
# object any place that you would use a Float.
|
7
|
-
#
|
8
|
-
# Internally, all lengths in SketchUp are stored in inches. The Length class
|
9
|
-
# stores values in inches as well. A number of methods have been added to the
|
10
|
-
# Ruby Numeric class to do units conversions.
|
11
|
-
#
|
12
|
-
# The setting for the Length Format and Length Unit can be retrieved from the
|
13
|
-
# {Sketchup::Model#options} by querying the +"UnitsOptions"+
|
14
|
-
# {Sketchup::OptionsProvider} for +"LengthFormat"+ and +"LengthUnit"+
|
15
|
-
# respectively.
|
16
|
-
#
|
17
|
-
# *Constants:*
|
18
|
-
#
|
19
|
-
# [Length Format]
|
20
|
-
# - +Length::Decimal+
|
21
|
-
# - +Length::Architectural+
|
22
|
-
# - +Length::Engineering+
|
23
|
-
# - +Length::Fractional+
|
24
|
-
#
|
25
|
-
# [Length Unit]
|
26
|
-
# - +Length::Inches+
|
27
|
-
# - +Length::Feet+
|
28
|
-
# - +Length::Millimeter+
|
29
|
-
# - +Length::Centimeter+
|
30
|
-
# - +Length::Meter+
|
31
|
-
# (Added in SketchUp 2020.0)
|
32
|
-
# - +Length::Yard+
|
33
|
-
#
|
34
|
-
# [Area Unit]
|
35
|
-
# (Added in SketchUp 2019.2)
|
36
|
-
# - +Length::SquareInches+
|
37
|
-
# - +Length::SquareFeet+
|
38
|
-
# - +Length::SquareMillimeter+
|
39
|
-
# - +Length::SquareCentimeter+
|
40
|
-
# - +Length::SquareMeter+
|
41
|
-
# (Added in SketchUp 2020.0)
|
42
|
-
# - +Length::SquareYard+
|
43
|
-
#
|
44
|
-
# [Volume Unit]
|
45
|
-
# (Added in SketchUp 2019.2)
|
46
|
-
# - +Length::CubicInches+
|
47
|
-
# - +Length::CubicFeet+
|
48
|
-
# - +Length::CubicMillimeter+
|
49
|
-
# - +Length::CubicCentimeter+
|
50
|
-
# - +Length::CubicMeter+
|
51
|
-
# (Added in SketchUp 2020.0)
|
52
|
-
# - +Length::CubicYard+
|
53
|
-
# - +Length::Liter+
|
54
|
-
# - +Length::USGallon+
|
55
|
-
#
|
56
|
-
# @note Prior to SketchUp 2015, +Length+ used to be derived from +Float+. This
|
57
|
-
# is no longer the case.
|
58
|
-
#
|
59
|
-
# @version SketchUp 6.0
|
60
|
-
class Length < Float
|
61
|
-
|
62
|
-
# Constants
|
63
|
-
|
64
|
-
Architectural = nil # Stub value.
|
65
|
-
|
66
|
-
Centimeter = nil # Stub value.
|
67
|
-
|
68
|
-
CubicCentimeter = nil # Stub value.
|
69
|
-
CubicFeet = nil # Stub value.
|
70
|
-
CubicInches = nil # Stub value.
|
71
|
-
CubicMeter = nil # Stub value.
|
72
|
-
CubicMillimeter = nil # Stub value.
|
73
|
-
CubicYard = nil # Stub value.
|
74
|
-
|
75
|
-
Decimal = nil # Stub value.
|
76
|
-
|
77
|
-
Engineering = nil # Stub value.
|
78
|
-
|
79
|
-
Fractional = nil # Stub value.
|
80
|
-
|
81
|
-
Feet = nil # Stub value.
|
82
|
-
|
83
|
-
Inches = nil # Stub value.
|
84
|
-
|
85
|
-
Liter = nil # Stub value.
|
86
|
-
|
87
|
-
Millimeter = nil # Stub value.
|
88
|
-
|
89
|
-
Meter = nil # Stub value.
|
90
|
-
|
91
|
-
SquareCentimeter = nil # Stub value.
|
92
|
-
SquareFeet = nil # Stub value.
|
93
|
-
SquareInches = nil # Stub value.
|
94
|
-
SquareMeter = nil # Stub value.
|
95
|
-
SquareMillimeter = nil # Stub value.
|
96
|
-
SquareYard = nil # Stub value.
|
97
|
-
|
98
|
-
USGallon = nil # Stub value.
|
99
|
-
|
100
|
-
Yard = nil # Stub value.
|
101
|
-
|
102
|
-
# Instance Methods
|
103
|
-
|
104
|
-
# The < method is used to see if one length is less than another length.
|
105
|
-
#
|
106
|
-
# For example, if l1 = 1.0.inch and l2 = 1.000001.inch then l1 == l2 so l1
|
107
|
-
# < l2 should return false.
|
108
|
-
#
|
109
|
-
# @example
|
110
|
-
# length1 = 12.to_l
|
111
|
-
# length2 = 11.to_l
|
112
|
-
# if length1 < length2
|
113
|
-
# puts "length1 is less than length2"
|
114
|
-
# else
|
115
|
-
# puts "length1 is not less than length2"
|
116
|
-
# end
|
117
|
-
#
|
118
|
-
# @param [Length] length2
|
119
|
-
# A length value.
|
120
|
-
#
|
121
|
-
# @return [Boolean] true if length1 is < length2; false if
|
122
|
-
# length1 is not < length2
|
123
|
-
#
|
124
|
-
# @version SketchUp 6.0
|
125
|
-
def <(length2)
|
126
|
-
end
|
127
|
-
|
128
|
-
# The <= method is used to see if one length is less than or equal to
|
129
|
-
# another length.
|
130
|
-
#
|
131
|
-
# @example
|
132
|
-
# length1 = 11.to_l
|
133
|
-
# length2 = 12.to_l
|
134
|
-
# if length1 <= length2
|
135
|
-
# puts "length1 is less than or equal length2"
|
136
|
-
# else
|
137
|
-
# puts "length1 is greater than length2"
|
138
|
-
# end
|
139
|
-
#
|
140
|
-
# @param [Length] length2
|
141
|
-
# A length value.
|
142
|
-
#
|
143
|
-
# @return [Boolean] true if length1 is <= length2; false if
|
144
|
-
# length1 is not <= length2
|
145
|
-
#
|
146
|
-
# @version SketchUp 6.0
|
147
|
-
def <=(length2)
|
148
|
-
end
|
149
|
-
|
150
|
-
# The <=> method is used to see if one length is less than equal or greater
|
151
|
-
# than another length. Because we change == for Length to do a test based on
|
152
|
-
# a tolerance, we also need to change <=> to also take tolerance into account.
|
153
|
-
#
|
154
|
-
# @example
|
155
|
-
# length1 = 20.to_l
|
156
|
-
# length2 = 30.to_l
|
157
|
-
# result = length1 <=> length2
|
158
|
-
#
|
159
|
-
# @param [Length] length2
|
160
|
-
# A length value.
|
161
|
-
#
|
162
|
-
# @return [Integer] the result of the comparison
|
163
|
-
#
|
164
|
-
# @version SketchUp 6.0
|
165
|
-
def <=>(length2)
|
166
|
-
end
|
167
|
-
|
168
|
-
# The == method is used to see if one length is equal to another length.
|
169
|
-
#
|
170
|
-
# The equality comparison on Length values uses the default tolerance that
|
171
|
-
# SketchUp uses for comparing lengths.
|
172
|
-
#
|
173
|
-
# @example
|
174
|
-
# length1 = 20.to_l
|
175
|
-
# length2 = 30.to_l
|
176
|
-
# is_equal = length1 == length2
|
177
|
-
#
|
178
|
-
# @param [Length] length2
|
179
|
-
# A length value.
|
180
|
-
#
|
181
|
-
# @return [Boolean] true if length1 is == length2; false if
|
182
|
-
# length1 is not == length2
|
183
|
-
#
|
184
|
-
# @version SketchUp 6.0
|
185
|
-
def ==(length2)
|
186
|
-
end
|
187
|
-
|
188
|
-
# The > method is used to see if one length is greater than another length.
|
189
|
-
#
|
190
|
-
# For example, if l1 = 1.0.inch and l2 = 1.000001.inch then l1 == l2 so l1 >
|
191
|
-
# l2 should return false.
|
192
|
-
#
|
193
|
-
# @example
|
194
|
-
# length1 = 11.to_l
|
195
|
-
# length2 = 12.to_l
|
196
|
-
# if length1 > length2
|
197
|
-
# puts "length1 is greater than length2"
|
198
|
-
# else
|
199
|
-
# puts "length1 is not greater than length2"
|
200
|
-
# end
|
201
|
-
#
|
202
|
-
# @param [Length] length2
|
203
|
-
# A length value.
|
204
|
-
#
|
205
|
-
# @return [Boolean] true if length1 is > length2; false if length1
|
206
|
-
# is not > length2
|
207
|
-
#
|
208
|
-
# @version SketchUp 6.0
|
209
|
-
def >(length2)
|
210
|
-
end
|
211
|
-
|
212
|
-
# The >= method is used to see if one length is greater than or equal to
|
213
|
-
# another length.
|
214
|
-
#
|
215
|
-
# For example, if l1 = 1.0.inch and l2 = 1.000001.inch then l1 == l2 so l1 >=
|
216
|
-
# l2 should return true. Also L1 <= l2 would return true.
|
217
|
-
#
|
218
|
-
# @example
|
219
|
-
# length1 = 11.to_l
|
220
|
-
# length2 = 12.to_l
|
221
|
-
# if length1 >= length2
|
222
|
-
# puts "length1 is greater than or equal length2"
|
223
|
-
# else
|
224
|
-
# puts "length1 is less than length2"
|
225
|
-
# end
|
226
|
-
#
|
227
|
-
# @param [Length] length2
|
228
|
-
# A length value.
|
229
|
-
#
|
230
|
-
# @return [Boolean] true if length1 is >= length2; false if
|
231
|
-
# length1 is not >= length2
|
232
|
-
#
|
233
|
-
# @version SketchUp 6.0
|
234
|
-
def >=(length2)
|
235
|
-
end
|
236
|
-
|
237
|
-
# The inspect method is used to retrieve an unformatted string for the length,
|
238
|
-
# which is the length in inches, regardless of the user's model unit settings.
|
239
|
-
# See Length.to_s for a way automatically format your Length to the user's
|
240
|
-
# model units.
|
241
|
-
#
|
242
|
-
# @example
|
243
|
-
# length = 55.to_l
|
244
|
-
# str = length.inspect
|
245
|
-
#
|
246
|
-
# @return [String] an unformatted length string
|
247
|
-
#
|
248
|
-
# @version SketchUp 6.0
|
249
|
-
def inspect
|
250
|
-
end
|
251
|
-
|
252
|
-
# The to_f method is used to convert a length to a normal float.
|
253
|
-
#
|
254
|
-
# @example
|
255
|
-
# length = 45.to_l
|
256
|
-
# f = length.to_f
|
257
|
-
#
|
258
|
-
# @return [Float] the float length value
|
259
|
-
#
|
260
|
-
# @version SketchUp 6.0
|
261
|
-
def to_f
|
262
|
-
end
|
263
|
-
|
264
|
-
# Format a length as a String using the current units formatting settings
|
265
|
-
# for the model. (So if the user's model is set to feet, this method will
|
266
|
-
# return a nicely formatted length in feet.)
|
267
|
-
#
|
268
|
-
# @example
|
269
|
-
# length = 55.to_l
|
270
|
-
# str = length.to_s
|
271
|
-
#
|
272
|
-
# @return [String] the float length value
|
273
|
-
#
|
274
|
-
# @version SketchUp 6.0
|
275
|
-
def to_s
|
276
|
-
end
|
277
|
-
|
278
|
-
end
|
1
|
+
# Copyright:: Copyright 2022 Trimble Inc.
|
2
|
+
# License:: The MIT License (MIT)
|
3
|
+
|
4
|
+
# Because length units are used so often in SketchUp, a special class has been
|
5
|
+
# added to make it easier to work with length values. You can use a Length
|
6
|
+
# object any place that you would use a Float.
|
7
|
+
#
|
8
|
+
# Internally, all lengths in SketchUp are stored in inches. The Length class
|
9
|
+
# stores values in inches as well. A number of methods have been added to the
|
10
|
+
# Ruby Numeric class to do units conversions.
|
11
|
+
#
|
12
|
+
# The setting for the Length Format and Length Unit can be retrieved from the
|
13
|
+
# {Sketchup::Model#options} by querying the +"UnitsOptions"+
|
14
|
+
# {Sketchup::OptionsProvider} for +"LengthFormat"+ and +"LengthUnit"+
|
15
|
+
# respectively.
|
16
|
+
#
|
17
|
+
# *Constants:*
|
18
|
+
#
|
19
|
+
# [Length Format]
|
20
|
+
# - +Length::Decimal+
|
21
|
+
# - +Length::Architectural+
|
22
|
+
# - +Length::Engineering+
|
23
|
+
# - +Length::Fractional+
|
24
|
+
#
|
25
|
+
# [Length Unit]
|
26
|
+
# - +Length::Inches+
|
27
|
+
# - +Length::Feet+
|
28
|
+
# - +Length::Millimeter+
|
29
|
+
# - +Length::Centimeter+
|
30
|
+
# - +Length::Meter+
|
31
|
+
# (Added in SketchUp 2020.0)
|
32
|
+
# - +Length::Yard+
|
33
|
+
#
|
34
|
+
# [Area Unit]
|
35
|
+
# (Added in SketchUp 2019.2)
|
36
|
+
# - +Length::SquareInches+
|
37
|
+
# - +Length::SquareFeet+
|
38
|
+
# - +Length::SquareMillimeter+
|
39
|
+
# - +Length::SquareCentimeter+
|
40
|
+
# - +Length::SquareMeter+
|
41
|
+
# (Added in SketchUp 2020.0)
|
42
|
+
# - +Length::SquareYard+
|
43
|
+
#
|
44
|
+
# [Volume Unit]
|
45
|
+
# (Added in SketchUp 2019.2)
|
46
|
+
# - +Length::CubicInches+
|
47
|
+
# - +Length::CubicFeet+
|
48
|
+
# - +Length::CubicMillimeter+
|
49
|
+
# - +Length::CubicCentimeter+
|
50
|
+
# - +Length::CubicMeter+
|
51
|
+
# (Added in SketchUp 2020.0)
|
52
|
+
# - +Length::CubicYard+
|
53
|
+
# - +Length::Liter+
|
54
|
+
# - +Length::USGallon+
|
55
|
+
#
|
56
|
+
# @note Prior to SketchUp 2015, +Length+ used to be derived from +Float+. This
|
57
|
+
# is no longer the case.
|
58
|
+
#
|
59
|
+
# @version SketchUp 6.0
|
60
|
+
class Length < Float
|
61
|
+
|
62
|
+
# Constants
|
63
|
+
|
64
|
+
Architectural = nil # Stub value.
|
65
|
+
|
66
|
+
Centimeter = nil # Stub value.
|
67
|
+
|
68
|
+
CubicCentimeter = nil # Stub value.
|
69
|
+
CubicFeet = nil # Stub value.
|
70
|
+
CubicInches = nil # Stub value.
|
71
|
+
CubicMeter = nil # Stub value.
|
72
|
+
CubicMillimeter = nil # Stub value.
|
73
|
+
CubicYard = nil # Stub value.
|
74
|
+
|
75
|
+
Decimal = nil # Stub value.
|
76
|
+
|
77
|
+
Engineering = nil # Stub value.
|
78
|
+
|
79
|
+
Fractional = nil # Stub value.
|
80
|
+
|
81
|
+
Feet = nil # Stub value.
|
82
|
+
|
83
|
+
Inches = nil # Stub value.
|
84
|
+
|
85
|
+
Liter = nil # Stub value.
|
86
|
+
|
87
|
+
Millimeter = nil # Stub value.
|
88
|
+
|
89
|
+
Meter = nil # Stub value.
|
90
|
+
|
91
|
+
SquareCentimeter = nil # Stub value.
|
92
|
+
SquareFeet = nil # Stub value.
|
93
|
+
SquareInches = nil # Stub value.
|
94
|
+
SquareMeter = nil # Stub value.
|
95
|
+
SquareMillimeter = nil # Stub value.
|
96
|
+
SquareYard = nil # Stub value.
|
97
|
+
|
98
|
+
USGallon = nil # Stub value.
|
99
|
+
|
100
|
+
Yard = nil # Stub value.
|
101
|
+
|
102
|
+
# Instance Methods
|
103
|
+
|
104
|
+
# The < method is used to see if one length is less than another length.
|
105
|
+
#
|
106
|
+
# For example, if l1 = 1.0.inch and l2 = 1.000001.inch then l1 == l2 so l1
|
107
|
+
# < l2 should return false.
|
108
|
+
#
|
109
|
+
# @example
|
110
|
+
# length1 = 12.to_l
|
111
|
+
# length2 = 11.to_l
|
112
|
+
# if length1 < length2
|
113
|
+
# puts "length1 is less than length2"
|
114
|
+
# else
|
115
|
+
# puts "length1 is not less than length2"
|
116
|
+
# end
|
117
|
+
#
|
118
|
+
# @param [Length] length2
|
119
|
+
# A length value.
|
120
|
+
#
|
121
|
+
# @return [Boolean] true if length1 is < length2; false if
|
122
|
+
# length1 is not < length2
|
123
|
+
#
|
124
|
+
# @version SketchUp 6.0
|
125
|
+
def <(length2)
|
126
|
+
end
|
127
|
+
|
128
|
+
# The <= method is used to see if one length is less than or equal to
|
129
|
+
# another length.
|
130
|
+
#
|
131
|
+
# @example
|
132
|
+
# length1 = 11.to_l
|
133
|
+
# length2 = 12.to_l
|
134
|
+
# if length1 <= length2
|
135
|
+
# puts "length1 is less than or equal length2"
|
136
|
+
# else
|
137
|
+
# puts "length1 is greater than length2"
|
138
|
+
# end
|
139
|
+
#
|
140
|
+
# @param [Length] length2
|
141
|
+
# A length value.
|
142
|
+
#
|
143
|
+
# @return [Boolean] true if length1 is <= length2; false if
|
144
|
+
# length1 is not <= length2
|
145
|
+
#
|
146
|
+
# @version SketchUp 6.0
|
147
|
+
def <=(length2)
|
148
|
+
end
|
149
|
+
|
150
|
+
# The <=> method is used to see if one length is less than equal or greater
|
151
|
+
# than another length. Because we change == for Length to do a test based on
|
152
|
+
# a tolerance, we also need to change <=> to also take tolerance into account.
|
153
|
+
#
|
154
|
+
# @example
|
155
|
+
# length1 = 20.to_l
|
156
|
+
# length2 = 30.to_l
|
157
|
+
# result = length1 <=> length2
|
158
|
+
#
|
159
|
+
# @param [Length] length2
|
160
|
+
# A length value.
|
161
|
+
#
|
162
|
+
# @return [Integer] the result of the comparison
|
163
|
+
#
|
164
|
+
# @version SketchUp 6.0
|
165
|
+
def <=>(length2)
|
166
|
+
end
|
167
|
+
|
168
|
+
# The == method is used to see if one length is equal to another length.
|
169
|
+
#
|
170
|
+
# The equality comparison on Length values uses the default tolerance that
|
171
|
+
# SketchUp uses for comparing lengths.
|
172
|
+
#
|
173
|
+
# @example
|
174
|
+
# length1 = 20.to_l
|
175
|
+
# length2 = 30.to_l
|
176
|
+
# is_equal = length1 == length2
|
177
|
+
#
|
178
|
+
# @param [Length] length2
|
179
|
+
# A length value.
|
180
|
+
#
|
181
|
+
# @return [Boolean] true if length1 is == length2; false if
|
182
|
+
# length1 is not == length2
|
183
|
+
#
|
184
|
+
# @version SketchUp 6.0
|
185
|
+
def ==(length2)
|
186
|
+
end
|
187
|
+
|
188
|
+
# The > method is used to see if one length is greater than another length.
|
189
|
+
#
|
190
|
+
# For example, if l1 = 1.0.inch and l2 = 1.000001.inch then l1 == l2 so l1 >
|
191
|
+
# l2 should return false.
|
192
|
+
#
|
193
|
+
# @example
|
194
|
+
# length1 = 11.to_l
|
195
|
+
# length2 = 12.to_l
|
196
|
+
# if length1 > length2
|
197
|
+
# puts "length1 is greater than length2"
|
198
|
+
# else
|
199
|
+
# puts "length1 is not greater than length2"
|
200
|
+
# end
|
201
|
+
#
|
202
|
+
# @param [Length] length2
|
203
|
+
# A length value.
|
204
|
+
#
|
205
|
+
# @return [Boolean] true if length1 is > length2; false if length1
|
206
|
+
# is not > length2
|
207
|
+
#
|
208
|
+
# @version SketchUp 6.0
|
209
|
+
def >(length2)
|
210
|
+
end
|
211
|
+
|
212
|
+
# The >= method is used to see if one length is greater than or equal to
|
213
|
+
# another length.
|
214
|
+
#
|
215
|
+
# For example, if l1 = 1.0.inch and l2 = 1.000001.inch then l1 == l2 so l1 >=
|
216
|
+
# l2 should return true. Also L1 <= l2 would return true.
|
217
|
+
#
|
218
|
+
# @example
|
219
|
+
# length1 = 11.to_l
|
220
|
+
# length2 = 12.to_l
|
221
|
+
# if length1 >= length2
|
222
|
+
# puts "length1 is greater than or equal length2"
|
223
|
+
# else
|
224
|
+
# puts "length1 is less than length2"
|
225
|
+
# end
|
226
|
+
#
|
227
|
+
# @param [Length] length2
|
228
|
+
# A length value.
|
229
|
+
#
|
230
|
+
# @return [Boolean] true if length1 is >= length2; false if
|
231
|
+
# length1 is not >= length2
|
232
|
+
#
|
233
|
+
# @version SketchUp 6.0
|
234
|
+
def >=(length2)
|
235
|
+
end
|
236
|
+
|
237
|
+
# The inspect method is used to retrieve an unformatted string for the length,
|
238
|
+
# which is the length in inches, regardless of the user's model unit settings.
|
239
|
+
# See Length.to_s for a way automatically format your Length to the user's
|
240
|
+
# model units.
|
241
|
+
#
|
242
|
+
# @example
|
243
|
+
# length = 55.to_l
|
244
|
+
# str = length.inspect
|
245
|
+
#
|
246
|
+
# @return [String] an unformatted length string
|
247
|
+
#
|
248
|
+
# @version SketchUp 6.0
|
249
|
+
def inspect
|
250
|
+
end
|
251
|
+
|
252
|
+
# The to_f method is used to convert a length to a normal float.
|
253
|
+
#
|
254
|
+
# @example
|
255
|
+
# length = 45.to_l
|
256
|
+
# f = length.to_f
|
257
|
+
#
|
258
|
+
# @return [Float] the float length value
|
259
|
+
#
|
260
|
+
# @version SketchUp 6.0
|
261
|
+
def to_f
|
262
|
+
end
|
263
|
+
|
264
|
+
# Format a length as a String using the current units formatting settings
|
265
|
+
# for the model. (So if the user's model is set to feet, this method will
|
266
|
+
# return a nicely formatted length in feet.)
|
267
|
+
#
|
268
|
+
# @example
|
269
|
+
# length = 55.to_l
|
270
|
+
# str = length.to_s
|
271
|
+
#
|
272
|
+
# @return [String] the float length value
|
273
|
+
#
|
274
|
+
# @version SketchUp 6.0
|
275
|
+
def to_s
|
276
|
+
end
|
277
|
+
|
278
|
+
end
|