sketchup-api-stubs 0.7.9 → 0.7.11

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 (160) hide show
  1. checksums.yaml +4 -4
  2. data/lib/sketchup-api-stubs/sketchup.rb +157 -151
  3. data/lib/sketchup-api-stubs/stubs/Array.rb +741 -741
  4. data/lib/sketchup-api-stubs/stubs/Geom/BoundingBox.rb +322 -322
  5. data/lib/sketchup-api-stubs/stubs/Geom/Bounds2d.rb +182 -172
  6. data/lib/sketchup-api-stubs/stubs/Geom/LatLong.rb +111 -126
  7. data/lib/sketchup-api-stubs/stubs/Geom/OrientedBounds2d.rb +102 -102
  8. data/lib/sketchup-api-stubs/stubs/Geom/Point2d.rb +423 -400
  9. data/lib/sketchup-api-stubs/stubs/Geom/Point3d.rb +693 -661
  10. data/lib/sketchup-api-stubs/stubs/Geom/PolygonMesh.rb +535 -509
  11. data/lib/sketchup-api-stubs/stubs/Geom/Transformation.rb +500 -476
  12. data/lib/sketchup-api-stubs/stubs/Geom/Transformation2d.rb +267 -263
  13. data/lib/sketchup-api-stubs/stubs/Geom/UTM.rb +133 -141
  14. data/lib/sketchup-api-stubs/stubs/Geom/Vector2d.rb +547 -522
  15. data/lib/sketchup-api-stubs/stubs/Geom/Vector3d.rb +678 -693
  16. data/lib/sketchup-api-stubs/stubs/Geom.rb +351 -351
  17. data/lib/sketchup-api-stubs/stubs/LanguageHandler.rb +93 -93
  18. data/lib/sketchup-api-stubs/stubs/Layout/AngularDimension.rb +595 -595
  19. data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinition.rb +751 -747
  20. data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinitions.rb +183 -183
  21. data/lib/sketchup-api-stubs/stubs/Layout/ConnectionPoint.rb +70 -70
  22. data/lib/sketchup-api-stubs/stubs/Layout/Dictionary.rb +234 -0
  23. data/lib/sketchup-api-stubs/stubs/Layout/Document.rb +683 -517
  24. data/lib/sketchup-api-stubs/stubs/Layout/Ellipse.rb +29 -29
  25. data/lib/sketchup-api-stubs/stubs/Layout/Entities.rb +148 -148
  26. data/lib/sketchup-api-stubs/stubs/Layout/Entity.rb +464 -353
  27. data/lib/sketchup-api-stubs/stubs/Layout/FormattedText.rb +354 -354
  28. data/lib/sketchup-api-stubs/stubs/Layout/Grid.rb +311 -311
  29. data/lib/sketchup-api-stubs/stubs/Layout/Group.rb +261 -261
  30. data/lib/sketchup-api-stubs/stubs/Layout/Image.rb +91 -91
  31. data/lib/sketchup-api-stubs/stubs/Layout/Label.rb +370 -370
  32. data/lib/sketchup-api-stubs/stubs/Layout/Layer.rb +218 -218
  33. data/lib/sketchup-api-stubs/stubs/Layout/LayerInstance.rb +128 -128
  34. data/lib/sketchup-api-stubs/stubs/Layout/Layers.rb +225 -225
  35. data/lib/sketchup-api-stubs/stubs/Layout/LinearDimension.rb +614 -567
  36. data/lib/sketchup-api-stubs/stubs/Layout/LockedEntityError.rb +10 -10
  37. data/lib/sketchup-api-stubs/stubs/Layout/LockedLayerError.rb +11 -11
  38. data/lib/sketchup-api-stubs/stubs/Layout/Page.rb +282 -183
  39. data/lib/sketchup-api-stubs/stubs/Layout/PageInfo.rb +458 -387
  40. data/lib/sketchup-api-stubs/stubs/Layout/Pages.rb +209 -209
  41. data/lib/sketchup-api-stubs/stubs/Layout/Path.rb +346 -344
  42. data/lib/sketchup-api-stubs/stubs/Layout/Rectangle.rb +174 -174
  43. data/lib/sketchup-api-stubs/stubs/Layout/ReferenceEntity.rb +82 -82
  44. data/lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb +714 -692
  45. data/lib/sketchup-api-stubs/stubs/Layout/Style.rb +1565 -1519
  46. data/lib/sketchup-api-stubs/stubs/Layout/Table.rb +290 -290
  47. data/lib/sketchup-api-stubs/stubs/Layout/TableCell.rb +149 -149
  48. data/lib/sketchup-api-stubs/stubs/Layout/TableColumn.rb +139 -139
  49. data/lib/sketchup-api-stubs/stubs/Layout/TableRow.rb +135 -135
  50. data/lib/sketchup-api-stubs/stubs/Layout.rb +25 -25
  51. data/lib/sketchup-api-stubs/stubs/Length.rb +286 -278
  52. data/lib/sketchup-api-stubs/stubs/Numeric.rb +249 -249
  53. data/lib/sketchup-api-stubs/stubs/Sketchup/Animation.rb +196 -144
  54. data/lib/sketchup-api-stubs/stubs/Sketchup/AppObserver.rb +169 -169
  55. data/lib/sketchup-api-stubs/stubs/Sketchup/ArcCurve.rb +226 -209
  56. data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionaries.rb +145 -150
  57. data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionary.rb +294 -281
  58. data/lib/sketchup-api-stubs/stubs/Sketchup/Axes.rb +149 -149
  59. data/lib/sketchup-api-stubs/stubs/Sketchup/Behavior.rb +296 -302
  60. data/lib/sketchup-api-stubs/stubs/Sketchup/Camera.rb +473 -478
  61. data/lib/sketchup-api-stubs/stubs/Sketchup/ClassificationSchema.rb +63 -63
  62. data/lib/sketchup-api-stubs/stubs/Sketchup/Classifications.rb +121 -121
  63. data/lib/sketchup-api-stubs/stubs/Sketchup/Color.rb +294 -294
  64. data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentDefinition.rb +673 -659
  65. data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentInstance.rb +600 -593
  66. data/lib/sketchup-api-stubs/stubs/Sketchup/Console.rb +76 -76
  67. data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionLine.rb +252 -257
  68. data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionPoint.rb +32 -32
  69. data/lib/sketchup-api-stubs/stubs/Sketchup/Curve.rb +201 -201
  70. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionList.rb +443 -449
  71. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionObserver.rb +74 -74
  72. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionsObserver.rb +104 -104
  73. data/lib/sketchup-api-stubs/stubs/Sketchup/Dimension.rb +167 -165
  74. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionLinear.rb +306 -306
  75. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionObserver.rb +42 -42
  76. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionRadial.rb +87 -87
  77. data/lib/sketchup-api-stubs/stubs/Sketchup/Drawingelement.rb +403 -406
  78. data/lib/sketchup-api-stubs/stubs/Sketchup/Edge.rb +397 -397
  79. data/lib/sketchup-api-stubs/stubs/Sketchup/EdgeUse.rb +211 -211
  80. data/lib/sketchup-api-stubs/stubs/Sketchup/Entities.rb +1282 -1239
  81. data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesBuilder.rb +261 -261
  82. data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesObserver.rb +127 -127
  83. data/lib/sketchup-api-stubs/stubs/Sketchup/Entity.rb +519 -545
  84. data/lib/sketchup-api-stubs/stubs/Sketchup/EntityObserver.rb +60 -60
  85. data/lib/sketchup-api-stubs/stubs/Sketchup/Environment.rb +406 -0
  86. data/lib/sketchup-api-stubs/stubs/Sketchup/Environments.rb +185 -0
  87. data/lib/sketchup-api-stubs/stubs/Sketchup/EnvironmentsObserver.rb +113 -0
  88. data/lib/sketchup-api-stubs/stubs/Sketchup/ExtensionsManager.rb +122 -125
  89. data/lib/sketchup-api-stubs/stubs/Sketchup/Face.rb +1006 -937
  90. data/lib/sketchup-api-stubs/stubs/Sketchup/FrameChangeObserver.rb +102 -102
  91. data/lib/sketchup-api-stubs/stubs/Sketchup/Group.rb +740 -750
  92. data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Request.rb +289 -282
  93. data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Response.rb +64 -62
  94. data/lib/sketchup-api-stubs/stubs/Sketchup/Http.rb +27 -27
  95. data/lib/sketchup-api-stubs/stubs/Sketchup/Image.rb +405 -468
  96. data/lib/sketchup-api-stubs/stubs/Sketchup/ImageRep.rb +266 -266
  97. data/lib/sketchup-api-stubs/stubs/Sketchup/Importer.rb +189 -189
  98. data/lib/sketchup-api-stubs/stubs/Sketchup/InputPoint.rb +432 -406
  99. data/lib/sketchup-api-stubs/stubs/Sketchup/InstanceObserver.rb +84 -84
  100. data/lib/sketchup-api-stubs/stubs/Sketchup/InstancePath.rb +307 -306
  101. data/lib/sketchup-api-stubs/stubs/Sketchup/Layer.rb +332 -326
  102. data/lib/sketchup-api-stubs/stubs/Sketchup/LayerFolder.rb +380 -422
  103. data/lib/sketchup-api-stubs/stubs/Sketchup/Layers.rb +409 -427
  104. data/lib/sketchup-api-stubs/stubs/Sketchup/LayersObserver.rb +241 -249
  105. data/lib/sketchup-api-stubs/stubs/Sketchup/Licensing/ExtensionLicense.rb +86 -86
  106. data/lib/sketchup-api-stubs/stubs/Sketchup/Licensing.rb +55 -48
  107. data/lib/sketchup-api-stubs/stubs/Sketchup/LineStyle.rb +24 -24
  108. data/lib/sketchup-api-stubs/stubs/Sketchup/LineStyles.rb +114 -114
  109. data/lib/sketchup-api-stubs/stubs/Sketchup/LoadHandler.rb +70 -0
  110. data/lib/sketchup-api-stubs/stubs/Sketchup/Loop.rb +137 -137
  111. data/lib/sketchup-api-stubs/stubs/Sketchup/Material.rb +1115 -414
  112. data/lib/sketchup-api-stubs/stubs/Sketchup/Materials.rb +330 -317
  113. data/lib/sketchup-api-stubs/stubs/Sketchup/MaterialsObserver.rb +142 -142
  114. data/lib/sketchup-api-stubs/stubs/Sketchup/Menu.rb +93 -93
  115. data/lib/sketchup-api-stubs/stubs/Sketchup/Model.rb +1714 -1652
  116. data/lib/sketchup-api-stubs/stubs/Sketchup/ModelObserver.rb +372 -357
  117. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsManager.rb +133 -130
  118. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProvider.rb +271 -271
  119. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProviderObserver.rb +58 -58
  120. data/lib/sketchup-api-stubs/stubs/Sketchup/Overlay.rb +463 -490
  121. data/lib/sketchup-api-stubs/stubs/Sketchup/OverlaysManager.rb +104 -116
  122. data/lib/sketchup-api-stubs/stubs/Sketchup/Page.rb +939 -797
  123. data/lib/sketchup-api-stubs/stubs/Sketchup/Pages.rb +388 -361
  124. data/lib/sketchup-api-stubs/stubs/Sketchup/PagesObserver.rb +77 -77
  125. data/lib/sketchup-api-stubs/stubs/Sketchup/PickHelper.rb +501 -478
  126. data/lib/sketchup-api-stubs/stubs/Sketchup/RegionalSettings.rb +43 -43
  127. data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptions.rb +385 -361
  128. data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptionsObserver.rb +45 -45
  129. data/lib/sketchup-api-stubs/stubs/Sketchup/SectionPlane.rb +150 -150
  130. data/lib/sketchup-api-stubs/stubs/Sketchup/Selection.rb +451 -458
  131. data/lib/sketchup-api-stubs/stubs/Sketchup/SelectionObserver.rb +115 -115
  132. data/lib/sketchup-api-stubs/stubs/Sketchup/Set.rb +211 -212
  133. data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfo.rb +259 -255
  134. data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfoObserver.rb +59 -59
  135. data/lib/sketchup-api-stubs/stubs/Sketchup/Skp.rb +40 -40
  136. data/lib/sketchup-api-stubs/stubs/Sketchup/Snap.rb +125 -0
  137. data/lib/sketchup-api-stubs/stubs/Sketchup/Style.rb +88 -69
  138. data/lib/sketchup-api-stubs/stubs/Sketchup/Styles.rb +263 -217
  139. data/lib/sketchup-api-stubs/stubs/Sketchup/Text.rb +283 -262
  140. data/lib/sketchup-api-stubs/stubs/Sketchup/Texture.rb +199 -217
  141. data/lib/sketchup-api-stubs/stubs/Sketchup/TextureWriter.rb +237 -237
  142. data/lib/sketchup-api-stubs/stubs/Sketchup/Tool.rb +924 -834
  143. data/lib/sketchup-api-stubs/stubs/Sketchup/Tools.rb +132 -132
  144. data/lib/sketchup-api-stubs/stubs/Sketchup/ToolsObserver.rb +156 -156
  145. data/lib/sketchup-api-stubs/stubs/Sketchup/UVHelper.rb +75 -75
  146. data/lib/sketchup-api-stubs/stubs/Sketchup/Vertex.rb +143 -142
  147. data/lib/sketchup-api-stubs/stubs/Sketchup/View.rb +1566 -1311
  148. data/lib/sketchup-api-stubs/stubs/Sketchup/ViewObserver.rb +71 -45
  149. data/lib/sketchup-api-stubs/stubs/Sketchup.rb +1429 -1377
  150. data/lib/sketchup-api-stubs/stubs/SketchupExtension.rb +353 -353
  151. data/lib/sketchup-api-stubs/stubs/String.rb +24 -24
  152. data/lib/sketchup-api-stubs/stubs/UI/Command.rb +399 -389
  153. data/lib/sketchup-api-stubs/stubs/UI/HtmlDialog.rb +580 -494
  154. data/lib/sketchup-api-stubs/stubs/UI/Notification.rb +280 -269
  155. data/lib/sketchup-api-stubs/stubs/UI/Toolbar.rb +258 -241
  156. data/lib/sketchup-api-stubs/stubs/UI/WebDialog.rb +636 -635
  157. data/lib/sketchup-api-stubs/stubs/UI.rb +791 -683
  158. data/lib/sketchup-api-stubs/stubs/_top_level.rb +303 -303
  159. data/lib/sketchup-api-stubs.rb +1 -1
  160. metadata +10 -24
@@ -1,263 +1,267 @@
1
- # Copyright:: Copyright 2023 Trimble Inc.
2
- # License:: The MIT License (MIT)
3
-
4
- #
5
- # @version LayOut 2018
6
- class Geom::Transformation2d
7
-
8
- # Class Methods
9
-
10
- # The {.rotation} method is used to create a transformation that does rotation
11
- # about a point.
12
- #
13
- # @example
14
- # point = Geom::Point2d.new(10, 5)
15
- # angle = 45.degrees # Return 45 degrees in radians.
16
- # transformation = Geom::Transformation2d.rotation(point, angle)
17
- #
18
- # @param [Geom::Point2d] point
19
- #
20
- # @param [Float] angle
21
- # The angle in radians.
22
- #
23
- # @return [Geom::Transformation2d]
24
- #
25
- # @version LayOut 2019
26
- def self.rotation(point, angle)
27
- end
28
-
29
- # The {.scaling} method is used to create a transformation that does scaling.
30
- #
31
- # @example
32
- # point = Geom::Point3d.new(20, 30, 0)
33
- # scale = 10
34
- # tr = Geom::Transformation2d.scaling(point, scale)
35
- #
36
- # @overload scaling(scale)
37
- #
38
- # With one argument, it does a uniform scale about the origin.
39
- # @param [Float] scale The global scale factor for the transform.
40
- # @return [Geom::Transformation2d]
41
- #
42
- # @overload scaling(xscale, yscale)
43
- #
44
- # With two arguments, it does a non-uniform scale about the origin.
45
- # @param [Float] xscale The scale factor in the x direction for the transform.
46
- # @param [Float] yscale The scale factor in the y direction for the transform.
47
- # @return [Geom::Transformation2d]
48
- #
49
- # @overload scaling(point, scale)
50
- #
51
- # With two arguments, it does a uniform scale about an arbitrary point.
52
- # @param [Geom::Point2d] point
53
- # @param [Float] scale The global scale factor for the transform.
54
- # @return [Geom::Transformation2d]
55
- #
56
- # @overload scaling(point, xscale, yscale)
57
- #
58
- # With three arguments it does a non-uniform scale about an arbitrary point.
59
- # @param [Geom::Point2d] point
60
- # @param [Float] xscale The scale factor in the x direction for the transform.
61
- # @param [Float] yscale The scale factor in the y direction for the transform.
62
- # @return [Geom::Transformation2d]
63
- #
64
- # @version LayOut 2019
65
- def self.scaling(*args)
66
- end
67
-
68
- # The {.translation} method is used to create a transformation that does
69
- # translation.
70
- #
71
- # @example
72
- # vector = Geom::Vector2d.new(0, 1)
73
- # tr = Geom::Transformation2d.translation(vector)
74
- #
75
- # @overload translation(vector)
76
- #
77
- # @param [Geom::Vector2d] vector
78
- # @return [Geom::Transformation2d]
79
- #
80
- # @overload translation(point)
81
- #
82
- # @param [Geom::Point2d] point
83
- # @return [Geom::Transformation2d]
84
- #
85
- # @version LayOut 2019
86
- def self.translation(vector)
87
- end
88
-
89
- # Instance Methods
90
-
91
- # The {#*} method is used to do matrix multiplication using the transform.
92
- #
93
- # @example
94
- # point1 = Geom::Point2d.new(5, 10)
95
- # point2 = Geom::Point2d.new(2, 2)
96
- # tr = Geom::Transformation2d.new(point1)
97
- # # Returns Point2d(7, 12)
98
- # point3 = tr * point2
99
- #
100
- # @overload *(point)
101
- #
102
- # @param [Geom::Point2d] point
103
- # @return [Geom::Point2d]
104
- #
105
- # @overload *(vector)
106
- #
107
- # @param [Geom::Vector2d] vector
108
- # @return [Geom::Vector2d]
109
- #
110
- # @overload *(transformation)
111
- #
112
- # @param [Geom::Transformation2d] transformation
113
- # @return [Geom::Transformation2d]
114
- #
115
- # @overload *(point)
116
- #
117
- # @param [Array<Float, Float>] point
118
- # @return [Array<Float, Float>]
119
- #
120
- # @version LayOut 2019
121
- def *(arg)
122
- end
123
-
124
- # The {#==} method checks to see if the two {Geom::Transformation2d}s are equal.
125
- # This checks whether the values of the transformations are the same.
126
- #
127
- # @example
128
- # tr = Geom::Transformation2d.new({1.0, 0.0, 0.0, 1.0, 1.0, 1.0})
129
- # tr == tr.clone
130
- #
131
- # @param [Geom::Transformation2d] other
132
- #
133
- # @return [Boolean]
134
- #
135
- # @version LayOut 2018
136
- def ==(other)
137
- end
138
-
139
- # The {#clone} method creates a copy of the {Geom::Transformation2d}.
140
- #
141
- # @example
142
- # tr1 = Geom::Transformation2d.new
143
- # tr2 = tr1.clone
144
- #
145
- # @return [Geom::Transformation2d]
146
- #
147
- # @version LayOut 2018
148
- def clone
149
- end
150
-
151
- # The {#identity?} method determines if the {Geom::Transformation2d} is the
152
- # {IDENTITY_2D} transform.
153
- #
154
- # @example
155
- # array = {1.0, 0.0, 0.0, 1.0, 1.0, 0.0}
156
- # tr = Geom::Transformation2d.new(array)
157
- # # Returns false.
158
- # status = tr.identity?
159
- #
160
- # @example
161
- # tr = Geom::Transformation2d.new
162
- # # Returns true.
163
- # status = tr.identity?
164
- #
165
- # @example
166
- # # Returns true.
167
- # status = IDENTITY_2D.identity?
168
- #
169
- # @return [Boolean] +true+ if the transform is the identity
170
- #
171
- # @version LayOut 2018
172
- def identity?
173
- end
174
-
175
- # The {#initialize} method creates a new {Geom::Transformation2d}. You can use
176
- # this method or one of the more specific methods for creating specific kinds
177
- # of {Geom::Transformation2d}.
178
- #
179
- # @example
180
- # tr = Geom::Transformation2d.new({1.0, 0.0, 0.0, 1.0, 1.0, 1.0})
181
- #
182
- # @overload initialize
183
- #
184
- # @return [Geom::Transformation2d] identity Transformation2d.
185
- #
186
- # @overload initialize(transformation)
187
- #
188
- # Creates a Transformation2d that is a copy of another Transformation2d.
189
- # This is equivalent to {#clone}.
190
- # @param [Geom::Transformation2d] transform
191
- # @return [Geom::Transformation2d]
192
- #
193
- # @overload initialize(array)
194
- #
195
- # @param [Array<Float>] array A 6 element Array.
196
- # @return [Geom::Transformation2d]
197
- #
198
- # @version LayOut 2018
199
- def initialize(*args)
200
- end
201
-
202
- # The {#inverse} method is used to retrieve the inverse of a transformation.
203
- #
204
- # @example
205
- # point = Geom::Point2d.new(5, 10)
206
- # tr1 = Geom::Transformation2d.new(point)
207
- # tr2 = tr1.inverse
208
- #
209
- # @return [Geom::Transformation2d]
210
- #
211
- # @version LayOut 2019
212
- def inverse
213
- end
214
-
215
- # The {#invert!} method sets the transformation to its inverse.
216
- #
217
- # @example
218
- # point = Geom::Point2d.new(5, 10)
219
- # tr = Geom::Transformation2d.new(point)
220
- # tr.invert!
221
- #
222
- # @return [Geom::Transformation2d]
223
- #
224
- # @version LayOut 2019
225
- def invert!
226
- end
227
-
228
- # The {#set!} method sets the {Geom::Transformation2d} to match another one.
229
- # The argument is anything that can be converted into a {Geom::Transformation2d}.
230
- #
231
- # @example
232
- # tr1 = Geom::Transformation2d.new
233
- # array = {2.0, 0.0, 0.0, 2.0, 0.0, 0.0}
234
- # tr1.set!(array)
235
- #
236
- # @overload set!(transformation)
237
- #
238
- # @param [Geom::Transformation2d] transformation
239
- # @return [Geom::Transformation2d]
240
- #
241
- # @overload set!(matrix)
242
- #
243
- # @param [Array<Float>] matrix An array of 6 floats.
244
- # @return [Geom::Transformation2d]
245
- #
246
- # @version LayOut 2018
247
- def set!(arg)
248
- end
249
-
250
- # The {#to_a} method returns a 6 element array which contains the values that
251
- # define the Transformation2d.
252
- #
253
- # @example
254
- # tr = Geom::Transformation2d.new
255
- # tr.to_a.each_slice(2) {|a| p a}
256
- #
257
- # @return [Array<Float>] an array of 6 elements
258
- #
259
- # @version LayOut 2018
260
- def to_a
261
- end
262
-
263
- end
1
+ # Copyright:: Copyright 2026 Trimble Inc.
2
+ # License:: The MIT License (MIT)
3
+
4
+ #
5
+ # @version LayOut 2018
6
+ class Geom::Transformation2d
7
+
8
+ # Class Methods
9
+
10
+ # The {.rotation} method is used to create a transformation that does rotation
11
+ # about a point.
12
+ #
13
+ # @example
14
+ # point = Geom::Point2d.new(10, 5)
15
+ # angle = 45.degrees # Return 45 degrees in radians.
16
+ # transformation = Geom::Transformation2d.rotation(point, angle)
17
+ #
18
+ # @param [Geom::Point2d] point
19
+ #
20
+ # @param [Float] angle
21
+ # The angle in radians.
22
+ #
23
+ # @return [Geom::Transformation2d]
24
+ #
25
+ # @version LayOut 2019
26
+ def self.rotation(point, angle)
27
+ end
28
+
29
+ # The {.scaling} method is used to create a transformation that does scaling.
30
+ #
31
+ # @example
32
+ # point = Geom::Point2d.new(20, 30)
33
+ # scale = 10
34
+ # transformation = Geom::Transformation2d.scaling(point, scale)
35
+ #
36
+ # @overload scaling(scale)
37
+ #
38
+ # With one argument, it does a uniform scale about the origin.
39
+ # @param [Float] scale The global scale factor for the transform.
40
+ # @return [Geom::Transformation2d]
41
+ #
42
+ # @overload scaling(xscale, yscale)
43
+ #
44
+ # With two arguments, it does a non-uniform scale about the origin.
45
+ # @param [Float] xscale The scale factor in the x direction for the transform.
46
+ # @param [Float] yscale The scale factor in the y direction for the transform.
47
+ # @return [Geom::Transformation2d]
48
+ #
49
+ # @overload scaling(point, scale)
50
+ #
51
+ # With two arguments, it does a uniform scale about an arbitrary point.
52
+ # @param [Geom::Point2d] point
53
+ # @param [Float] scale The global scale factor for the transform.
54
+ # @return [Geom::Transformation2d]
55
+ #
56
+ # @overload scaling(point, xscale, yscale)
57
+ #
58
+ # With three arguments it does a non-uniform scale about an arbitrary point.
59
+ # @param [Geom::Point2d] point
60
+ # @param [Float] xscale The scale factor in the x direction for the transform.
61
+ # @param [Float] yscale The scale factor in the y direction for the transform.
62
+ # @return [Geom::Transformation2d]
63
+ #
64
+ # @version LayOut 2019
65
+ def self.scaling(*args)
66
+ end
67
+
68
+ # The {.translation} method is used to create a transformation that does
69
+ # translation.
70
+ #
71
+ # @example
72
+ # vector = Geom::Vector2d.new(0, 1)
73
+ # transformation = Geom::Transformation2d.translation(vector)
74
+ #
75
+ # @overload translation(vector)
76
+ #
77
+ # @param [Geom::Vector2d] vector
78
+ # @return [Geom::Transformation2d]
79
+ #
80
+ # @overload translation(point)
81
+ #
82
+ # @param [Geom::Point2d] point
83
+ # @return [Geom::Transformation2d]
84
+ #
85
+ # @version LayOut 2019
86
+ def self.translation(vector)
87
+ end
88
+
89
+ # Instance Methods
90
+
91
+ # The {#*} method is used to do matrix multiplication using the transform.
92
+ #
93
+ # @example
94
+ # point1 = Geom::Point2d.new(5, 10)
95
+ # point2 = Geom::Point2d.new(2, 2)
96
+ # transformation = Geom::Transformation2d.translation(point1)
97
+ # # The result is a Point2d(7, 12)
98
+ # new_point = transformation * point2
99
+ #
100
+ # @overload *(point)
101
+ #
102
+ # @param [Geom::Point2d] point
103
+ # @return [Geom::Point2d]
104
+ #
105
+ # @overload *(vector)
106
+ #
107
+ # @param [Geom::Vector2d] vector
108
+ # @return [Geom::Vector2d]
109
+ #
110
+ # @overload *(transformation)
111
+ #
112
+ # @param [Geom::Transformation2d] transformation
113
+ # @return [Geom::Transformation2d]
114
+ #
115
+ # @overload *(point)
116
+ #
117
+ # @param [Array(Float, Float)] point
118
+ # @return [Array(Float, Float)]
119
+ #
120
+ # @version LayOut 2019
121
+ def *(arg)
122
+ end
123
+
124
+ # The {#==} method checks to see if the two {Geom::Transformation2d}s are equal.
125
+ # This checks whether the values of the transformations are the same.
126
+ #
127
+ # @example
128
+ # transformation1 = Geom::Transformation2d.new([1.0, 0.0, 0.0, 1.0, 1.0, 1.0])
129
+ # transformation2 = Geom::Transformation2d.translation([1, 1])
130
+ # # Returns true
131
+ # transformation1 == transformation2
132
+ #
133
+ # @param [Geom::Transformation2d] other
134
+ #
135
+ # @return [Boolean]
136
+ #
137
+ # @version LayOut 2018
138
+ def ==(other)
139
+ end
140
+
141
+ # The {#clone} method creates a copy of the {Geom::Transformation2d}.
142
+ #
143
+ # @example
144
+ # transformation = Geom::Transformation2d.new
145
+ # new_transformation = transformation.clone
146
+ #
147
+ # @return [Geom::Transformation2d]
148
+ #
149
+ # @version LayOut 2018
150
+ def clone
151
+ end
152
+
153
+ # The {#identity?} method determines if the {Geom::Transformation2d} is the
154
+ # {IDENTITY_2D} transform.
155
+ #
156
+ # @example
157
+ # array = [1.0, 0.0, 0.0, 1.0, 1.0, 0.0]
158
+ # transformation = Geom::Transformation2d.new(array)
159
+ # # Returns false
160
+ # status = transformation.identity?
161
+ #
162
+ # @example
163
+ # transformation = Geom::Transformation2d.new
164
+ # # Returns true
165
+ # status = transformation.identity?
166
+ #
167
+ # @example
168
+ # # Returns true
169
+ # status = IDENTITY_2D.identity?
170
+ #
171
+ # @return [Boolean] +true+ if the transform is the identity
172
+ #
173
+ # @version LayOut 2018
174
+ def identity?
175
+ end
176
+
177
+ # The {#initialize} method creates a new {Geom::Transformation2d}. You can use
178
+ # this method or one of the more specific methods for creating specific kinds
179
+ # of {Geom::Transformation2d}.
180
+ #
181
+ # @example
182
+ # transformation1 = Geom::Transformation2d.new
183
+ #
184
+ # transformation2 = Geom::Transformation2d.new([1.0, 0.0, 0.0, 1.0, 1.0, 1.0])
185
+ #
186
+ # @overload initialize
187
+ #
188
+ # @return [Geom::Transformation2d] identity Transformation2d.
189
+ #
190
+ # @overload initialize(transformation)
191
+ #
192
+ # Creates a Transformation2d that is a copy of another Transformation2d.
193
+ # This is equivalent to {#clone}.
194
+ # @param [Geom::Transformation2d] transform
195
+ # @return [Geom::Transformation2d]
196
+ #
197
+ # @overload initialize(array)
198
+ #
199
+ # @param [Array<Float>] array A 6 element Array.
200
+ # @return [Geom::Transformation2d]
201
+ #
202
+ # @version LayOut 2018
203
+ def initialize(*args)
204
+ end
205
+
206
+ # The {#inverse} method is used to retrieve the inverse of a transformation.
207
+ #
208
+ # @example
209
+ # point = Geom::Point2d.new(5, 10)
210
+ # transformation = Geom::Transformation2d.translation(point)
211
+ # new_transformation = transformation.inverse
212
+ #
213
+ # @return [Geom::Transformation2d]
214
+ #
215
+ # @version LayOut 2019
216
+ def inverse
217
+ end
218
+
219
+ # The {#invert!} method sets the transformation to its inverse.
220
+ #
221
+ # @example
222
+ # point = Geom::Point2d.new(5, 10)
223
+ # transformation = Geom::Transformation2d.translation(point)
224
+ # transformation.invert!
225
+ #
226
+ # @return [Geom::Transformation2d]
227
+ #
228
+ # @version LayOut 2019
229
+ def invert!
230
+ end
231
+
232
+ # The {#set!} method sets the {Geom::Transformation2d} to match another one.
233
+ # The argument is anything that can be converted into a {Geom::Transformation2d}.
234
+ #
235
+ # @example
236
+ # transformation = Geom::Transformation2d.new
237
+ # matrix = [2.0, 0.0, 0.0, 2.0, 0.0, 0.0]
238
+ # transformation.set!(matrix)
239
+ #
240
+ # @overload set!(transformation)
241
+ #
242
+ # @param [Geom::Transformation2d] transformation
243
+ # @return [Geom::Transformation2d]
244
+ #
245
+ # @overload set!(matrix)
246
+ #
247
+ # @param [Array<Float>] matrix An array of 6 floats.
248
+ # @return [Geom::Transformation2d]
249
+ #
250
+ # @version LayOut 2018
251
+ def set!(arg)
252
+ end
253
+
254
+ # The {#to_a} method returns a 6 element array which contains the values that
255
+ # define the Transformation2d.
256
+ #
257
+ # @example
258
+ # transformation = Geom::Transformation2d.new
259
+ # transformation.to_a.each_slice(2) {|a| p a}
260
+ #
261
+ # @return [Array<Float>] an array of 6 elements
262
+ #
263
+ # @version LayOut 2018
264
+ def to_a
265
+ end
266
+
267
+ end