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.
Files changed (151) hide show
  1. checksums.yaml +4 -4
  2. data/lib/sketchup-api-stubs/sketchup.rb +148 -145
  3. data/lib/sketchup-api-stubs/stubs/{array.rb → Array.rb} +741 -741
  4. data/lib/sketchup-api-stubs/stubs/Geom/BoundingBox.rb +322 -318
  5. data/lib/sketchup-api-stubs/stubs/Geom/Bounds2d.rb +172 -172
  6. data/lib/sketchup-api-stubs/stubs/Geom/LatLong.rb +126 -126
  7. data/lib/sketchup-api-stubs/stubs/Geom/OrientedBounds2d.rb +102 -102
  8. data/lib/sketchup-api-stubs/stubs/Geom/Point2d.rb +400 -400
  9. data/lib/sketchup-api-stubs/stubs/Geom/Point3d.rb +661 -661
  10. data/lib/sketchup-api-stubs/stubs/Geom/PolygonMesh.rb +523 -492
  11. data/lib/sketchup-api-stubs/stubs/Geom/Transformation.rb +478 -478
  12. data/lib/sketchup-api-stubs/stubs/Geom/Transformation2d.rb +263 -263
  13. data/lib/sketchup-api-stubs/stubs/Geom/UTM.rb +141 -141
  14. data/lib/sketchup-api-stubs/stubs/Geom/Vector2d.rb +522 -522
  15. data/lib/sketchup-api-stubs/stubs/Geom/Vector3d.rb +693 -691
  16. data/lib/sketchup-api-stubs/stubs/{geom.rb → Geom.rb} +351 -348
  17. data/lib/sketchup-api-stubs/stubs/{languagehandler.rb → LanguageHandler.rb} +93 -92
  18. data/lib/sketchup-api-stubs/stubs/Layout/AngularDimension.rb +595 -573
  19. data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinition.rb +698 -411
  20. data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinitions.rb +183 -174
  21. data/lib/sketchup-api-stubs/stubs/Layout/ConnectionPoint.rb +70 -70
  22. data/lib/sketchup-api-stubs/stubs/Layout/Document.rb +516 -514
  23. data/lib/sketchup-api-stubs/stubs/Layout/Ellipse.rb +29 -29
  24. data/lib/sketchup-api-stubs/stubs/Layout/Entities.rb +148 -143
  25. data/lib/sketchup-api-stubs/stubs/Layout/Entity.rb +353 -353
  26. data/lib/sketchup-api-stubs/stubs/Layout/FormattedText.rb +354 -349
  27. data/lib/sketchup-api-stubs/stubs/Layout/Grid.rb +311 -311
  28. data/lib/sketchup-api-stubs/stubs/Layout/Group.rb +261 -261
  29. data/lib/sketchup-api-stubs/stubs/Layout/Image.rb +91 -91
  30. data/lib/sketchup-api-stubs/stubs/Layout/Label.rb +370 -371
  31. data/lib/sketchup-api-stubs/stubs/Layout/Layer.rb +218 -218
  32. data/lib/sketchup-api-stubs/stubs/Layout/LayerInstance.rb +128 -128
  33. data/lib/sketchup-api-stubs/stubs/Layout/Layers.rb +225 -220
  34. data/lib/sketchup-api-stubs/stubs/Layout/LinearDimension.rb +567 -567
  35. data/lib/sketchup-api-stubs/stubs/Layout/LockedEntityError.rb +10 -10
  36. data/lib/sketchup-api-stubs/stubs/Layout/LockedLayerError.rb +11 -11
  37. data/lib/sketchup-api-stubs/stubs/Layout/Page.rb +183 -183
  38. data/lib/sketchup-api-stubs/stubs/Layout/PageInfo.rb +387 -387
  39. data/lib/sketchup-api-stubs/stubs/Layout/Pages.rb +209 -204
  40. data/lib/sketchup-api-stubs/stubs/Layout/Path.rb +344 -344
  41. data/lib/sketchup-api-stubs/stubs/Layout/Rectangle.rb +174 -174
  42. data/lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb +692 -694
  43. data/lib/sketchup-api-stubs/stubs/Layout/Style.rb +1519 -1519
  44. data/lib/sketchup-api-stubs/stubs/Layout/Table.rb +290 -290
  45. data/lib/sketchup-api-stubs/stubs/Layout/TableCell.rb +149 -149
  46. data/lib/sketchup-api-stubs/stubs/Layout/TableColumn.rb +139 -139
  47. data/lib/sketchup-api-stubs/stubs/Layout/TableRow.rb +135 -135
  48. data/lib/sketchup-api-stubs/stubs/Layout.rb +25 -25
  49. data/lib/sketchup-api-stubs/stubs/{length.rb → Length.rb} +278 -278
  50. data/lib/sketchup-api-stubs/stubs/{numeric.rb → Numeric.rb} +249 -249
  51. data/lib/sketchup-api-stubs/stubs/Sketchup/Animation.rb +144 -140
  52. data/lib/sketchup-api-stubs/stubs/Sketchup/AppObserver.rb +169 -157
  53. data/lib/sketchup-api-stubs/stubs/Sketchup/ArcCurve.rb +209 -209
  54. data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionaries.rb +152 -152
  55. data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionary.rb +286 -281
  56. data/lib/sketchup-api-stubs/stubs/Sketchup/Axes.rb +149 -149
  57. data/lib/sketchup-api-stubs/stubs/Sketchup/Behavior.rb +302 -328
  58. data/lib/sketchup-api-stubs/stubs/Sketchup/Camera.rb +478 -577
  59. data/lib/sketchup-api-stubs/stubs/Sketchup/ClassificationSchema.rb +63 -63
  60. data/lib/sketchup-api-stubs/stubs/Sketchup/Classifications.rb +122 -122
  61. data/lib/sketchup-api-stubs/stubs/Sketchup/Color.rb +294 -281
  62. data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentDefinition.rb +619 -562
  63. data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentInstance.rb +593 -593
  64. data/lib/sketchup-api-stubs/stubs/Sketchup/Console.rb +76 -76
  65. data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionLine.rb +257 -257
  66. data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionPoint.rb +32 -32
  67. data/lib/sketchup-api-stubs/stubs/Sketchup/Curve.rb +201 -194
  68. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionList.rb +426 -329
  69. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionObserver.rb +74 -72
  70. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionsObserver.rb +104 -102
  71. data/lib/sketchup-api-stubs/stubs/Sketchup/Dimension.rb +165 -165
  72. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionLinear.rb +306 -312
  73. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionObserver.rb +42 -38
  74. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionRadial.rb +87 -87
  75. data/lib/sketchup-api-stubs/stubs/Sketchup/Drawingelement.rb +396 -390
  76. data/lib/sketchup-api-stubs/stubs/Sketchup/Edge.rb +502 -508
  77. data/lib/sketchup-api-stubs/stubs/Sketchup/EdgeUse.rb +211 -211
  78. data/lib/sketchup-api-stubs/stubs/Sketchup/Entities.rb +1205 -1119
  79. data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesBuilder.rb +272 -0
  80. data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesObserver.rb +127 -125
  81. data/lib/sketchup-api-stubs/stubs/Sketchup/Entity.rb +545 -544
  82. data/lib/sketchup-api-stubs/stubs/Sketchup/EntityObserver.rb +60 -59
  83. data/lib/sketchup-api-stubs/stubs/Sketchup/ExtensionsManager.rb +126 -125
  84. data/lib/sketchup-api-stubs/stubs/Sketchup/Face.rb +937 -750
  85. data/lib/sketchup-api-stubs/stubs/Sketchup/FrameChangeObserver.rb +104 -104
  86. data/lib/sketchup-api-stubs/stubs/Sketchup/Group.rb +750 -697
  87. data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Request.rb +292 -285
  88. data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Response.rb +62 -62
  89. data/lib/sketchup-api-stubs/stubs/Sketchup/Http.rb +27 -27
  90. data/lib/sketchup-api-stubs/stubs/Sketchup/Image.rb +468 -409
  91. data/lib/sketchup-api-stubs/stubs/Sketchup/ImageRep.rb +266 -226
  92. data/lib/sketchup-api-stubs/stubs/Sketchup/Importer.rb +189 -190
  93. data/lib/sketchup-api-stubs/stubs/Sketchup/InputPoint.rb +407 -393
  94. data/lib/sketchup-api-stubs/stubs/Sketchup/InstanceObserver.rb +84 -82
  95. data/lib/sketchup-api-stubs/stubs/Sketchup/InstancePath.rb +306 -303
  96. data/lib/sketchup-api-stubs/stubs/Sketchup/Layer.rb +326 -285
  97. data/lib/sketchup-api-stubs/stubs/Sketchup/LayerFolder.rb +422 -0
  98. data/lib/sketchup-api-stubs/stubs/Sketchup/Layers.rb +427 -244
  99. data/lib/sketchup-api-stubs/stubs/Sketchup/LayersObserver.rb +249 -136
  100. data/lib/sketchup-api-stubs/stubs/Sketchup/Licensing/ExtensionLicense.rb +86 -86
  101. data/lib/sketchup-api-stubs/stubs/Sketchup/Licensing.rb +48 -48
  102. data/lib/sketchup-api-stubs/stubs/Sketchup/LineStyle.rb +24 -24
  103. data/lib/sketchup-api-stubs/stubs/Sketchup/LineStyles.rb +112 -112
  104. data/lib/sketchup-api-stubs/stubs/Sketchup/Loop.rb +137 -137
  105. data/lib/sketchup-api-stubs/stubs/Sketchup/Material.rb +414 -416
  106. data/lib/sketchup-api-stubs/stubs/Sketchup/Materials.rb +318 -311
  107. data/lib/sketchup-api-stubs/stubs/Sketchup/MaterialsObserver.rb +142 -141
  108. data/lib/sketchup-api-stubs/stubs/Sketchup/Menu.rb +93 -95
  109. data/lib/sketchup-api-stubs/stubs/Sketchup/Model.rb +1651 -1638
  110. data/lib/sketchup-api-stubs/stubs/Sketchup/ModelObserver.rb +357 -356
  111. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsManager.rb +131 -132
  112. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProvider.rb +284 -284
  113. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProviderObserver.rb +58 -58
  114. data/lib/sketchup-api-stubs/stubs/Sketchup/Page.rb +797 -770
  115. data/lib/sketchup-api-stubs/stubs/Sketchup/Pages.rb +363 -353
  116. data/lib/sketchup-api-stubs/stubs/Sketchup/PagesObserver.rb +77 -76
  117. data/lib/sketchup-api-stubs/stubs/Sketchup/PickHelper.rb +477 -456
  118. data/lib/sketchup-api-stubs/stubs/Sketchup/RegionalSettings.rb +43 -43
  119. data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptions.rb +364 -364
  120. data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptionsObserver.rb +45 -44
  121. data/lib/sketchup-api-stubs/stubs/Sketchup/SectionPlane.rb +150 -150
  122. data/lib/sketchup-api-stubs/stubs/Sketchup/Selection.rb +459 -454
  123. data/lib/sketchup-api-stubs/stubs/Sketchup/SelectionObserver.rb +115 -115
  124. data/lib/sketchup-api-stubs/stubs/Sketchup/Set.rb +212 -212
  125. data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfo.rb +260 -257
  126. data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfoObserver.rb +59 -57
  127. data/lib/sketchup-api-stubs/stubs/Sketchup/Skp.rb +40 -0
  128. data/lib/sketchup-api-stubs/stubs/Sketchup/Style.rb +69 -69
  129. data/lib/sketchup-api-stubs/stubs/Sketchup/Styles.rb +217 -211
  130. data/lib/sketchup-api-stubs/stubs/Sketchup/Text.rb +262 -262
  131. data/lib/sketchup-api-stubs/stubs/Sketchup/Texture.rb +217 -225
  132. data/lib/sketchup-api-stubs/stubs/Sketchup/TextureWriter.rb +237 -237
  133. data/lib/sketchup-api-stubs/stubs/Sketchup/Tool.rb +837 -829
  134. data/lib/sketchup-api-stubs/stubs/Sketchup/Tools.rb +132 -132
  135. data/lib/sketchup-api-stubs/stubs/Sketchup/ToolsObserver.rb +156 -154
  136. data/lib/sketchup-api-stubs/stubs/Sketchup/UVHelper.rb +75 -61
  137. data/lib/sketchup-api-stubs/stubs/Sketchup/Vertex.rb +142 -142
  138. data/lib/sketchup-api-stubs/stubs/Sketchup/View.rb +1317 -1301
  139. data/lib/sketchup-api-stubs/stubs/Sketchup/ViewObserver.rb +45 -43
  140. data/lib/sketchup-api-stubs/stubs/{sketchup.rb → Sketchup.rb} +1360 -1310
  141. data/lib/sketchup-api-stubs/stubs/{sketchupextension.rb → SketchupExtension.rb} +353 -353
  142. data/lib/sketchup-api-stubs/stubs/{string.rb → String.rb} +24 -24
  143. data/lib/sketchup-api-stubs/stubs/UI/Command.rb +389 -310
  144. data/lib/sketchup-api-stubs/stubs/UI/HtmlDialog.rb +496 -356
  145. data/lib/sketchup-api-stubs/stubs/UI/Notification.rb +269 -229
  146. data/lib/sketchup-api-stubs/stubs/UI/Toolbar.rb +240 -240
  147. data/lib/sketchup-api-stubs/stubs/UI/WebDialog.rb +635 -633
  148. data/lib/sketchup-api-stubs/stubs/{ui.rb → UI.rb} +683 -667
  149. data/lib/sketchup-api-stubs/stubs/_top_level.rb +311 -311
  150. data/lib/sketchup-api-stubs.rb +1 -1
  151. metadata +15 -12
@@ -1,400 +1,400 @@
1
- # Copyright:: Copyright 2020 Trimble Inc.
2
- # License:: The MIT License (MIT)
3
-
4
- # The {Geom::Point2d} class allows you to work with a point in 2D space.
5
- # {Geom::Point2d} is a series of values representing x and y coordinates.
6
- #
7
- # The values are specified as +[x, y]+. For example [1, 1].
8
- # To create a point call +Geom::Point2d.new+, where the creation method
9
- # can take a variety of arguments:
10
- #
11
- # @example
12
- # # No arguments, creates a point at the origin [0, 0]
13
- # pt1 = Geom::Point2d.new
14
- #
15
- # # Creates a point at x of 1, y of 2.
16
- # pt2 = Geom::Point2d.new(1, 2)
17
- #
18
- # # You can also create a point directly by simply assigning the x, and y
19
- # # values to a variable as an array:
20
- # pt3 = [1, 2]
21
- #
22
- # @version LayOut 2018
23
- class Geom::Point2d
24
-
25
- # Instance Methods
26
-
27
- # The {#+} operator is a simple way to add to the current x and y values of the
28
- # {Geom::Point2d}, or to set the values of the {Geom::Point2d} by adding a
29
- # {Geom::Vector2d} to the {Geom::Point2d}.
30
- #
31
- # @example
32
- # pt = [1, 1]
33
- # # the result is a Point2d(2, 3)
34
- # pt2 = pt + [1, 2]
35
- #
36
- # @param [Geom::Vector2d, Array(Numeric, Numeric)] vector
37
- #
38
- # @return [Geom::Point2d]
39
- #
40
- # @version LayOut 2018
41
- def +(vector)
42
- end
43
-
44
- # The {#-} operator is a simple way to subtract from the current x and y values
45
- # of the {Geom::Point2d}.
46
- #
47
- # @example
48
- # vec = Geom::Vector2d.new(1, 2)
49
- # # result is a Point2d(3, 0)
50
- # pt = [4, 2] - vec
51
- # # result is a Vector2d(1, 2)
52
- # vec2 = [4, 2] - pt
53
- #
54
- # @overload -(vector)
55
- #
56
- # @param [Geom::Vector2d, Array(Numeric, Numeric)] vector
57
- # @return [Geom::Point2d]
58
- #
59
- # @overload -(point)
60
- #
61
- # @param [Geom::Point2d] point2d
62
- # @return [Geom::Vector2d] a vector indicating the difference between the two
63
- # points
64
- #
65
- # @version LayOut 2018
66
- def -(arg)
67
- end
68
-
69
- # The {#==} method compares two points for equality. This uses the standard
70
- # SketchUp tolerance to determine if two points are the same.
71
- #
72
- # @example
73
- # point1 = Geom::Point2d.new(1, 1)
74
- # point2 = Geom::Point2d.new(0, 1)
75
- # status = point1 == point2
76
- #
77
- # @param [Geom::Point2d, Array(Numeric, Numeric)] point
78
- #
79
- # @return [Boolean]
80
- #
81
- # @version LayOut 2018
82
- def ==(point)
83
- end
84
-
85
- # The {#[]} method returns the value of the {Geom::Point2d} at the specified
86
- # index.
87
- #
88
- # @example
89
- # point = Geom::Point2d.new(1, 2)
90
- #
91
- # # returns the y value of 2
92
- # yvalue = point[1]
93
- #
94
- # @param [Integer] index
95
- # The index for a specific x or y value in the
96
- # {Geom::Point2d}
97
- #
98
- # @return [Length] The new x or y value if successful
99
- #
100
- # @version LayOut 2018
101
- def [](index)
102
- end
103
-
104
- # The {#[]=} method sets the x or y value of the {Geom::Point2d} based on the
105
- # specific index of the value.
106
- #
107
- # @example
108
- # point = Geom::Point2d.new(1,2)
109
- # point[1] = 4
110
- #
111
- # @param [Integer] index
112
- # The index for a specific x or y value in the
113
- # {Geom::Point2d} to set
114
- #
115
- # @param [Numeric] value
116
- # The value to set for x or y
117
- #
118
- # @return [Numeric] The new x or y value if successful
119
- #
120
- # @version LayOut 2018
121
- def []=(index, value)
122
- end
123
-
124
- # The {#clone} method creates another point identical to the {Geom::Point2d}
125
- # being cloned.
126
- #
127
- # @example
128
- # point = Geom::Point2d.new(1, 2)
129
- # newpoint = point.clone
130
- #
131
- # @return [Geom::Point2d] the cloned {Geom::Point2d} object
132
- #
133
- # @version LayOut 2018
134
- def clone
135
- end
136
-
137
- # The {#distance} method computes the distance from the {Geom::Point2d} to
138
- # another {Geom::Point2d}.
139
- #
140
- # @example
141
- # point1 = Geom::Point2d.new(1, 1)
142
- # point2 = Geom::Point2d.new(1, 4)
143
- # # result is a value of 3
144
- # distance = point1.distance(point2)
145
- #
146
- # @param [Geom::Point2d, Array(Numeric, Numeric)] point
147
- #
148
- # @return [Numeric] the distance between the points in the current units
149
- #
150
- # @version LayOut 2018
151
- def distance(point)
152
- end
153
-
154
- # The {.new} method creates a new {Geom::Point2d}.
155
- #
156
- # @example
157
- # # No arguments, creates a point at the origin [0, 0]
158
- # pt1 = Geom::Point2d.new
159
- #
160
- # # Creates a point at x of 1 and y of 2.
161
- # pt2 = Geom::Point2d.new(1, 2)
162
- #
163
- # # You can also create a point directly by simply assigning the x and y
164
- # # values to a variable as an array:
165
- # pt3 = [1, 2]
166
- #
167
- # @overload initialize
168
- #
169
- # @return [Geom::Point2d]
170
- #
171
- # @overload initialize(x, y)
172
- #
173
- # @param [Numeric] x The location along the x axis
174
- # @param [Numeric] y The location along the y axis
175
- # @return [Geom::Point2d]
176
- #
177
- # @overload initialize(point)
178
- #
179
- # @param [Geom::Point2d, Array(Numeric, Numeric)] point
180
- # @return [Geom::Point2d]
181
- #
182
- # @version LayOut 2018
183
- def initialize(*args)
184
- end
185
-
186
- # The {#inspect} method formats the {Geom::Point2d} as a string.
187
- #
188
- # @example
189
- # point = Geom::Point2d.new(1, 2)
190
- # string = point.inspect
191
- #
192
- # @return [String]
193
- #
194
- # @version LayOut 2018
195
- def inspect
196
- end
197
-
198
- # The {#offset} method offsets the {Geom::Point2d} by a {Geom::Vector2d} and
199
- # returns a new {Geom::Point2d}. If distance is provided, it must be non-zero.
200
- #
201
- # @example
202
- # point = Geom::Point2d.new
203
- # vector = Geom::Vector2d.new(0, 2)
204
- # # result is a Point2d(0, 1)
205
- # point2 = point1.offset(vector, 1)
206
- #
207
- # @overload offset(vector)
208
- #
209
- # @param [Geom::Vector2d, Array(Numeric, Numeric)] vector
210
- # @return [Geom::Point2d]
211
- #
212
- # @overload offset(vector, distance)
213
- #
214
- # @param [Geom::Vector2d, Array(Numeric, Numeric)] vector
215
- # @param [Numeric] distance The how far along the vector to offset
216
- # @return [Geom::Point2d]
217
- #
218
- # @version LayOut 2018
219
- def offset(*args)
220
- end
221
-
222
- # The {#offset!} method offsets the {Geom::Point2d} by a {Geom::Vector2d}.
223
- # The {Geom::Point2d} itself is modified. The length of the vector must not be
224
- # zero.
225
- #
226
- # @example
227
- # point = Geom::Point2d.new
228
- # vector = Geom::Vector2d.new(0, 2)
229
- # # result is a Point2d(0, 1)
230
- # point1.offset!(vector, 1)
231
- #
232
- # @overload offset!(vector)
233
- #
234
- # @param [Geom::Vector2d, Array(Numeric, Numeric)] vector
235
- # @return [Geom::Point2d]
236
- #
237
- # @overload offset!(vector, distance)
238
- #
239
- # @param [Geom::Vector2d, Array(Numeric, Numeric)] vector
240
- # @param [Numeric] distance The distance along the vector to offset
241
- # @return [Geom::Point2d]
242
- #
243
- # @version LayOut 2018
244
- def offset!(*args)
245
- end
246
-
247
- # The {#set!} method sets the values of the {Geom::Point2d}.
248
- #
249
- # @example
250
- # point = Geom::Point2d.new(1, 2)
251
- # point = point.set!([4, 5])
252
- #
253
- # @overload set!(point)
254
- #
255
- # @param [Geom::Point2d, Array(Numeric, Numeric)] point
256
- # @return [Geom::Point2d]
257
- #
258
- # @overload set!(x, y)
259
- #
260
- # @param [Numeric] x
261
- # @param [Numeric] y
262
- # @return [Geom::Point2d]
263
- #
264
- # @version LayOut 2018
265
- def set!(*args)
266
- end
267
-
268
- # The {#to_a} method converts the {Geom::Point2d} to an array of 2 numbers.
269
- #
270
- # @example
271
- # point = Geom::Point2d.new(1, 2)
272
- # array = point.to_a
273
- #
274
- # @return [Array(Numeric, Numeric)] an array of two numbers representing x, y
275
- # of the {Geom::Point2d}
276
- #
277
- # @version LayOut 2018
278
- def to_a
279
- end
280
-
281
- # The {#to_s} method returns a string representation of the {Geom::Point2d}.
282
- #
283
- # @example
284
- # point = Geom::Point2d.new(1, 2)
285
- # str = point.to_s
286
- #
287
- # @return [String]
288
- #
289
- # @version LayOut 2018
290
- def to_s
291
- end
292
-
293
- # The {#transform} method applies a transformation to a point, returning a new
294
- # point. The original point is unchanged by this method.
295
- #
296
- # @example
297
- # point = Geom::Point2d.new(4, 5)
298
- # transformation = Geom::Transformation2d.new([1, 0, 0, 1, 2, 3])
299
- # # pt will be (6, 8)
300
- # pt = point.transform(transformation)
301
- #
302
- # @param [Geom::Transformation2d] transform
303
- # A Transformation object to apply to the point.
304
- #
305
- # @return [Geom::Point2d] the transformed point
306
- #
307
- # @version LayOut 2019
308
- def transform(transform)
309
- end
310
-
311
- # The {#transform!} method applies a transformation to a point. The point
312
- # itself is modified.
313
- #
314
- # @example
315
- # point = Geom::Point2d.new(4, 5)
316
- # transformation = Geom::Transformation2d.new([1, 0, 0, 1, 2, 3])
317
- # # point will be (6, 8)
318
- # point.transform!(transformation)
319
- #
320
- # @param [Geom::Transformation2d] transform
321
- # A Transformation object to apply to the point.
322
- #
323
- # @return [Geom::Point2d] the transformed point
324
- #
325
- # @version LayOut 2019
326
- def transform!(transform)
327
- end
328
-
329
- # The {#vector_to} method returns the vector between points.
330
- #
331
- # @example
332
- # pt1 = Geom::Point2d.new(1, 1)
333
- # pt2 = Geom::Point2d.new(3, 1)
334
- #
335
- # # result is a Vector2d(2, 0)
336
- # vec = pt1.vector_to(pt2) # is equivalent to (pt2 - pt1)
337
- #
338
- # @param [Geom::Point2d] point
339
- #
340
- # @return [Geom::Vector2d]
341
- #
342
- # @version LayOut 2018
343
- def vector_to(point)
344
- end
345
-
346
- # The {#x} method returns the x value of the {Geom::Point2d}.
347
- #
348
- # @example
349
- # point = Geom::Point2d.new(1, 2)
350
- # x = point.x
351
- #
352
- # @return [Length] the x value of the {Geom::Point2d}
353
- #
354
- # @version LayOut 2018
355
- def x
356
- end
357
-
358
- # The {#x=} method sets the x value of the {Geom::Point2d}.
359
- #
360
- # @example
361
- # point = Geom::Point2d.new(1, 2)
362
- # point.x = 7
363
- #
364
- # @param [Numeric] x
365
- # The desired x value of the {Geom::Point2d}
366
- #
367
- # @return [Numeric] The new x value of the {Geom::Point2d}
368
- #
369
- # @version LayOut 2018
370
- def x=(x)
371
- end
372
-
373
- # The {#y} method returns the y value of the {Geom::Point2d}.
374
- #
375
- # @example
376
- # point = Geom::Point2d.new(1, 2)
377
- # y = point.y
378
- #
379
- # @return [Length] The y value of the {Geom::Point2d}
380
- #
381
- # @version LayOut 2018
382
- def y
383
- end
384
-
385
- # The {#y=} method sets the y value of the {Geom::Point2d}.
386
- #
387
- # @example
388
- # point = Geom::Point2d.new(1, 2)
389
- # point.y = 7
390
- #
391
- # @param [Numeric] y
392
- # The desired y value of the {Geom::Point2d}
393
- #
394
- # @return [Numeric] The new y value of the {Geom::Point2d}
395
- #
396
- # @version LayOut 2018
397
- def y=(y)
398
- end
399
-
400
- end
1
+ # Copyright:: Copyright 2022 Trimble Inc.
2
+ # License:: The MIT License (MIT)
3
+
4
+ # The {Geom::Point2d} class allows you to work with a point in 2D space.
5
+ # {Geom::Point2d} is a series of values representing x and y coordinates.
6
+ #
7
+ # The values are specified as +[x, y]+. For example [1, 1].
8
+ # To create a point call +Geom::Point2d.new+, where the creation method
9
+ # can take a variety of arguments:
10
+ #
11
+ # @example
12
+ # # No arguments, creates a point at the origin [0, 0]
13
+ # pt1 = Geom::Point2d.new
14
+ #
15
+ # # Creates a point at x of 1, y of 2.
16
+ # pt2 = Geom::Point2d.new(1, 2)
17
+ #
18
+ # # You can also create a point directly by simply assigning the x, and y
19
+ # # values to a variable as an array:
20
+ # pt3 = [1, 2]
21
+ #
22
+ # @version LayOut 2018
23
+ class Geom::Point2d
24
+
25
+ # Instance Methods
26
+
27
+ # The {#+} operator is a simple way to add to the current x and y values of the
28
+ # {Geom::Point2d}, or to set the values of the {Geom::Point2d} by adding a
29
+ # {Geom::Vector2d} to the {Geom::Point2d}.
30
+ #
31
+ # @example
32
+ # pt = [1, 1]
33
+ # # the result is a Point2d(2, 3)
34
+ # pt2 = pt + [1, 2]
35
+ #
36
+ # @param [Geom::Vector2d, Array(Numeric, Numeric)] vector
37
+ #
38
+ # @return [Geom::Point2d]
39
+ #
40
+ # @version LayOut 2018
41
+ def +(vector)
42
+ end
43
+
44
+ # The {#-} operator is a simple way to subtract from the current x and y values
45
+ # of the {Geom::Point2d}.
46
+ #
47
+ # @example
48
+ # vec = Geom::Vector2d.new(1, 2)
49
+ # # result is a Point2d(3, 0)
50
+ # pt = [4, 2] - vec
51
+ # # result is a Vector2d(1, 2)
52
+ # vec2 = [4, 2] - pt
53
+ #
54
+ # @overload -(vector)
55
+ #
56
+ # @param [Geom::Vector2d, Array(Numeric, Numeric)] vector
57
+ # @return [Geom::Point2d]
58
+ #
59
+ # @overload -(point)
60
+ #
61
+ # @param [Geom::Point2d] point2d
62
+ # @return [Geom::Vector2d] a vector indicating the difference between the two
63
+ # points
64
+ #
65
+ # @version LayOut 2018
66
+ def -(arg)
67
+ end
68
+
69
+ # The {#==} method compares two points for equality. This uses the standard
70
+ # SketchUp tolerance to determine if two points are the same.
71
+ #
72
+ # @example
73
+ # point1 = Geom::Point2d.new(1, 1)
74
+ # point2 = Geom::Point2d.new(0, 1)
75
+ # status = point1 == point2
76
+ #
77
+ # @param [Geom::Point2d, Array(Numeric, Numeric)] point
78
+ #
79
+ # @return [Boolean]
80
+ #
81
+ # @version LayOut 2018
82
+ def ==(point)
83
+ end
84
+
85
+ # The {#[]} method returns the value of the {Geom::Point2d} at the specified
86
+ # index.
87
+ #
88
+ # @example
89
+ # point = Geom::Point2d.new(1, 2)
90
+ #
91
+ # # returns the y value of 2
92
+ # yvalue = point[1]
93
+ #
94
+ # @param [Integer] index
95
+ # The index for a specific x or y value in the
96
+ # {Geom::Point2d}
97
+ #
98
+ # @return [Length] The new x or y value if successful
99
+ #
100
+ # @version LayOut 2018
101
+ def [](index)
102
+ end
103
+
104
+ # The {#[]=} method sets the x or y value of the {Geom::Point2d} based on the
105
+ # specific index of the value.
106
+ #
107
+ # @example
108
+ # point = Geom::Point2d.new(1,2)
109
+ # point[1] = 4
110
+ #
111
+ # @param [Integer] index
112
+ # The index for a specific x or y value in the
113
+ # {Geom::Point2d} to set
114
+ #
115
+ # @param [Numeric] value
116
+ # The value to set for x or y
117
+ #
118
+ # @return [Numeric] The new x or y value if successful
119
+ #
120
+ # @version LayOut 2018
121
+ def []=(index, value)
122
+ end
123
+
124
+ # The {#clone} method creates another point identical to the {Geom::Point2d}
125
+ # being cloned.
126
+ #
127
+ # @example
128
+ # point = Geom::Point2d.new(1, 2)
129
+ # newpoint = point.clone
130
+ #
131
+ # @return [Geom::Point2d] the cloned {Geom::Point2d} object
132
+ #
133
+ # @version LayOut 2018
134
+ def clone
135
+ end
136
+
137
+ # The {#distance} method computes the distance from the {Geom::Point2d} to
138
+ # another {Geom::Point2d}.
139
+ #
140
+ # @example
141
+ # point1 = Geom::Point2d.new(1, 1)
142
+ # point2 = Geom::Point2d.new(1, 4)
143
+ # # result is a value of 3
144
+ # distance = point1.distance(point2)
145
+ #
146
+ # @param [Geom::Point2d, Array(Numeric, Numeric)] point
147
+ #
148
+ # @return [Numeric] the distance between the points in the current units
149
+ #
150
+ # @version LayOut 2018
151
+ def distance(point)
152
+ end
153
+
154
+ # The {.new} method creates a new {Geom::Point2d}.
155
+ #
156
+ # @example
157
+ # # No arguments, creates a point at the origin [0, 0]
158
+ # pt1 = Geom::Point2d.new
159
+ #
160
+ # # Creates a point at x of 1 and y of 2.
161
+ # pt2 = Geom::Point2d.new(1, 2)
162
+ #
163
+ # # You can also create a point directly by simply assigning the x and y
164
+ # # values to a variable as an array:
165
+ # pt3 = [1, 2]
166
+ #
167
+ # @overload initialize
168
+ #
169
+ # @return [Geom::Point2d]
170
+ #
171
+ # @overload initialize(x, y)
172
+ #
173
+ # @param [Numeric] x The location along the x axis
174
+ # @param [Numeric] y The location along the y axis
175
+ # @return [Geom::Point2d]
176
+ #
177
+ # @overload initialize(point)
178
+ #
179
+ # @param [Geom::Point2d, Array(Numeric, Numeric)] point
180
+ # @return [Geom::Point2d]
181
+ #
182
+ # @version LayOut 2018
183
+ def initialize(*args)
184
+ end
185
+
186
+ # The {#inspect} method formats the {Geom::Point2d} as a string.
187
+ #
188
+ # @example
189
+ # point = Geom::Point2d.new(1, 2)
190
+ # string = point.inspect
191
+ #
192
+ # @return [String]
193
+ #
194
+ # @version LayOut 2018
195
+ def inspect
196
+ end
197
+
198
+ # The {#offset} method offsets the {Geom::Point2d} by a {Geom::Vector2d} and
199
+ # returns a new {Geom::Point2d}. If distance is provided, it must be non-zero.
200
+ #
201
+ # @example
202
+ # point = Geom::Point2d.new
203
+ # vector = Geom::Vector2d.new(0, 2)
204
+ # # result is a Point2d(0, 1)
205
+ # point2 = point1.offset(vector, 1)
206
+ #
207
+ # @overload offset(vector)
208
+ #
209
+ # @param [Geom::Vector2d, Array(Numeric, Numeric)] vector
210
+ # @return [Geom::Point2d]
211
+ #
212
+ # @overload offset(vector, distance)
213
+ #
214
+ # @param [Geom::Vector2d, Array(Numeric, Numeric)] vector
215
+ # @param [Numeric] distance The how far along the vector to offset
216
+ # @return [Geom::Point2d]
217
+ #
218
+ # @version LayOut 2018
219
+ def offset(*args)
220
+ end
221
+
222
+ # The {#offset!} method offsets the {Geom::Point2d} by a {Geom::Vector2d}.
223
+ # The {Geom::Point2d} itself is modified. The length of the vector must not be
224
+ # zero.
225
+ #
226
+ # @example
227
+ # point = Geom::Point2d.new
228
+ # vector = Geom::Vector2d.new(0, 2)
229
+ # # result is a Point2d(0, 1)
230
+ # point1.offset!(vector, 1)
231
+ #
232
+ # @overload offset!(vector)
233
+ #
234
+ # @param [Geom::Vector2d, Array(Numeric, Numeric)] vector
235
+ # @return [Geom::Point2d]
236
+ #
237
+ # @overload offset!(vector, distance)
238
+ #
239
+ # @param [Geom::Vector2d, Array(Numeric, Numeric)] vector
240
+ # @param [Numeric] distance The distance along the vector to offset
241
+ # @return [Geom::Point2d]
242
+ #
243
+ # @version LayOut 2018
244
+ def offset!(*args)
245
+ end
246
+
247
+ # The {#set!} method sets the values of the {Geom::Point2d}.
248
+ #
249
+ # @example
250
+ # point = Geom::Point2d.new(1, 2)
251
+ # point = point.set!([4, 5])
252
+ #
253
+ # @overload set!(point)
254
+ #
255
+ # @param [Geom::Point2d, Array(Numeric, Numeric)] point
256
+ # @return [Geom::Point2d]
257
+ #
258
+ # @overload set!(x, y)
259
+ #
260
+ # @param [Numeric] x
261
+ # @param [Numeric] y
262
+ # @return [Geom::Point2d]
263
+ #
264
+ # @version LayOut 2018
265
+ def set!(*args)
266
+ end
267
+
268
+ # The {#to_a} method converts the {Geom::Point2d} to an array of 2 numbers.
269
+ #
270
+ # @example
271
+ # point = Geom::Point2d.new(1, 2)
272
+ # array = point.to_a
273
+ #
274
+ # @return [Array(Numeric, Numeric)] an array of two numbers representing x, y
275
+ # of the {Geom::Point2d}
276
+ #
277
+ # @version LayOut 2018
278
+ def to_a
279
+ end
280
+
281
+ # The {#to_s} method returns a string representation of the {Geom::Point2d}.
282
+ #
283
+ # @example
284
+ # point = Geom::Point2d.new(1, 2)
285
+ # str = point.to_s
286
+ #
287
+ # @return [String]
288
+ #
289
+ # @version LayOut 2018
290
+ def to_s
291
+ end
292
+
293
+ # The {#transform} method applies a transformation to a point, returning a new
294
+ # point. The original point is unchanged by this method.
295
+ #
296
+ # @example
297
+ # point = Geom::Point2d.new(4, 5)
298
+ # transformation = Geom::Transformation2d.new([1, 0, 0, 1, 2, 3])
299
+ # # pt will be (6, 8)
300
+ # pt = point.transform(transformation)
301
+ #
302
+ # @param [Geom::Transformation2d] transform
303
+ # A Transformation object to apply to the point.
304
+ #
305
+ # @return [Geom::Point2d] the transformed point
306
+ #
307
+ # @version LayOut 2019
308
+ def transform(transform)
309
+ end
310
+
311
+ # The {#transform!} method applies a transformation to a point. The point
312
+ # itself is modified.
313
+ #
314
+ # @example
315
+ # point = Geom::Point2d.new(4, 5)
316
+ # transformation = Geom::Transformation2d.new([1, 0, 0, 1, 2, 3])
317
+ # # point will be (6, 8)
318
+ # point.transform!(transformation)
319
+ #
320
+ # @param [Geom::Transformation2d] transform
321
+ # A Transformation object to apply to the point.
322
+ #
323
+ # @return [Geom::Point2d] the transformed point
324
+ #
325
+ # @version LayOut 2019
326
+ def transform!(transform)
327
+ end
328
+
329
+ # The {#vector_to} method returns the vector between points.
330
+ #
331
+ # @example
332
+ # pt1 = Geom::Point2d.new(1, 1)
333
+ # pt2 = Geom::Point2d.new(3, 1)
334
+ #
335
+ # # result is a Vector2d(2, 0)
336
+ # vec = pt1.vector_to(pt2) # is equivalent to (pt2 - pt1)
337
+ #
338
+ # @param [Geom::Point2d] point
339
+ #
340
+ # @return [Geom::Vector2d]
341
+ #
342
+ # @version LayOut 2018
343
+ def vector_to(point)
344
+ end
345
+
346
+ # The {#x} method returns the x value of the {Geom::Point2d}.
347
+ #
348
+ # @example
349
+ # point = Geom::Point2d.new(1, 2)
350
+ # x = point.x
351
+ #
352
+ # @return [Length] the x value of the {Geom::Point2d}
353
+ #
354
+ # @version LayOut 2018
355
+ def x
356
+ end
357
+
358
+ # The {#x=} method sets the x value of the {Geom::Point2d}.
359
+ #
360
+ # @example
361
+ # point = Geom::Point2d.new(1, 2)
362
+ # point.x = 7
363
+ #
364
+ # @param [Numeric] x
365
+ # The desired x value of the {Geom::Point2d}
366
+ #
367
+ # @return [Numeric] The new x value of the {Geom::Point2d}
368
+ #
369
+ # @version LayOut 2018
370
+ def x=(x)
371
+ end
372
+
373
+ # The {#y} method returns the y value of the {Geom::Point2d}.
374
+ #
375
+ # @example
376
+ # point = Geom::Point2d.new(1, 2)
377
+ # y = point.y
378
+ #
379
+ # @return [Length] The y value of the {Geom::Point2d}
380
+ #
381
+ # @version LayOut 2018
382
+ def y
383
+ end
384
+
385
+ # The {#y=} method sets the y value of the {Geom::Point2d}.
386
+ #
387
+ # @example
388
+ # point = Geom::Point2d.new(1, 2)
389
+ # point.y = 7
390
+ #
391
+ # @param [Numeric] y
392
+ # The desired y value of the {Geom::Point2d}
393
+ #
394
+ # @return [Numeric] The new y value of the {Geom::Point2d}
395
+ #
396
+ # @version LayOut 2018
397
+ def y=(y)
398
+ end
399
+
400
+ end