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,406 +1,403 @@
1
- # Copyright:: Copyright 2023 Trimble Inc.
2
- # License:: The MIT License (MIT)
3
-
4
- # Drawingelement is a base class for an item in the model that can be
5
- # displayed. These items include edges, construction points, construction
6
- # lines, and images. Arc curves and arcs are not included because they are not
7
- # drawing elements by themselves, but are a composition of edges.
8
- #
9
- # @version SketchUp 6.0
10
- class Sketchup::Drawingelement < Sketchup::Entity
11
-
12
- # Instance Methods
13
-
14
- # The {#bounds} method is used to retrieve the {Geom::BoundingBox} bounding a
15
- # {Sketchup::Drawingelement}.
16
- #
17
- # For a {Sketchup::Edge}, {Sketchup::ComponentInstance} and most other
18
- # {Sketchup::Drawingelement}s, the boundingbox follows the coordinate system
19
- # the drawing element is placed in.
20
- # For {Sketchup::ComponentDefinition}, the box bounds the contents of the
21
- # component and follows the component's own internal coordinate system.
22
- #
23
- # @example
24
- # depth = 100
25
- # width = 100
26
- # model = Sketchup.active_model
27
- # entities = model.active_entities
28
- # pts = []
29
- # pts[0] = [0, 0, 0]
30
- # pts[1] = [width, 0, 0]
31
- # pts[2] = [width, depth, 0]
32
- # pts[3] = [0, depth, 0]
33
- # # Add the face to the entities in the model
34
- # face = entities.add_face pts
35
- # # Remember, anything that can be displayed, such as a face, is also
36
- # # a Drawingelement. So I can call bounds on a face because Face
37
- # # is a sub-class of Drawingelement.
38
- # boundingbox = face.bounds
39
- #
40
- # @return [Geom::BoundingBox]
41
- #
42
- # @version SketchUp 6.0
43
- def bounds
44
- end
45
-
46
- # The casts_shadows= method is used to set the Drawingelement to cast shadows.
47
- #
48
- # @example
49
- # depth = 100
50
- # width = 100
51
- # model = Sketchup.active_model
52
- # entities = model.active_entities
53
- # pts = []
54
- # pts[0] = [0, 0, 100]
55
- # pts[1] = [width, 0, 100]
56
- # pts[2] = [width, depth, 100]
57
- # pts[3] = [0, depth, 100]
58
- # # Add the face to the entities in the model.
59
- # face = entities.add_face pts
60
- #
61
- # # Make the face not cast shadows.
62
- # status = face.casts_shadows = false
63
- # UI.messagebox status.to_s
64
- #
65
- # @param [Boolean] casts
66
- # true if you want the Drawingelement object to cast
67
- # shadows, false if you do not want the Drawingelement
68
- # object to cast shadows.
69
- #
70
- # @return [Boolean] true if successful, false if unsuccessful.
71
- #
72
- # @version SketchUp 6.0
73
- def casts_shadows=(casts)
74
- end
75
-
76
- # The casts_shadows? method is used to determine if the Drawingelement is
77
- # casting shadows.
78
- #
79
- # @example
80
- # depth = 100
81
- # width = 100
82
- # model = Sketchup.active_model
83
- # entities = model.active_entities
84
- # pts = []
85
- # pts[0] = [0, 0, 0]
86
- # pts[1] = [width, 0, 0]
87
- # pts[2] = [width, depth, 0]
88
- # pts[3] = [0, depth, 0]
89
- # # Add the face to the entities in the model
90
- # face = entities.add_face pts
91
- # status = face.casts_shadows?
92
- # UI.messagebox status.to_s
93
- #
94
- # @return [Boolean]
95
- #
96
- # @version SketchUp 6.0
97
- def casts_shadows?
98
- end
99
-
100
- # The {#erase!} method is used to erase an element from the model.
101
- #
102
- # Erasing an Edge also erases all of the Face objects that use the Edge.
103
- #
104
- # @bug Prior to SketchUp 2023.0 this could crash SketchUp if you erased an
105
- # instance used by the active edit path.
106
- #
107
- # @example
108
- # depth = 100
109
- # width = 100
110
- # model = Sketchup.active_model
111
- # entities = model.active_entities
112
- # pts = []
113
- # pts[0] = [0, 0, 0]
114
- # pts[1] = [width, 0, 0]
115
- # pts[2] = [width, depth, 0]
116
- # pts[3] = [0, depth, 0]
117
- # # Add the face to the entities in the model
118
- # face = entities.add_face pts
119
- # status = face.erase!
120
- #
121
- # @note When erasing multiple elements, it's faster to
122
- # use {Sketchup::Entities#erase_entities} and erase in bulk than to iterate
123
- # individual drawing elements calling {Sketchup::Drawingelement#erase!}.
124
- #
125
- # @raise [ArgumentError] if the drawing element is an instance used
126
- # by {Sketchup::Model#active_path}.
127
- #
128
- # @return [nil]
129
- #
130
- # @version SketchUp 6.0
131
- def erase!
132
- end
133
-
134
- # The hidden= method is used to set the hidden status for an element.
135
- #
136
- # @example
137
- # depth = 100
138
- # width = 100
139
- # model = Sketchup.active_model
140
- # entities = model.active_entities
141
- # pts = []
142
- # pts[0] = [0, 0, 0]
143
- # pts[1] = [width, 0, 0]
144
- # pts[2] = [width, depth, 0]
145
- # pts[3] = [0, depth, 0]
146
- # # Add the face to the entities in the model
147
- # face = entities.add_face pts
148
- # UI.messagebox "Click OK to Hide the Box"
149
- # status = face.hidden = true
150
- #
151
- # @param [Boolean] hidden
152
- # true if you want to hide the element, false if you do
153
- # not want to hide the element.
154
- #
155
- # @return [Boolean] true if the element has been hidden, false if
156
- # the element has not been hidden.
157
- #
158
- # @version SketchUp 6.0
159
- def hidden=(hidden)
160
- end
161
-
162
- # The hidden? method is used to determine if the element is hidden.
163
- #
164
- # Hidden elements are still in the model, but they are not displayed.
165
- #
166
- # @example
167
- # depth = 100
168
- # width = 100
169
- # model = Sketchup.active_model
170
- # entities = model.active_entities
171
- # pts = []
172
- # pts[0] = [0, 0, 0]
173
- # pts[1] = [width, 0, 0]
174
- # pts[2] = [width, depth, 0]
175
- # pts[3] = [0, depth, 0]
176
- # # Add the face to the entities in the model
177
- # face = entities.add_face pts
178
- # status = face.hidden?
179
- # UI.messagebox "hidden? " + status.to_s
180
- #
181
- # @return [Boolean]
182
- #
183
- # @version SketchUp 6.0
184
- def hidden?
185
- end
186
-
187
- # The layer method is used to retrieve the Layer object of the drawing
188
- # element.
189
- #
190
- # @example
191
- # depth = 100
192
- # width = 100
193
- # model = Sketchup.active_model
194
- # entities = model.active_entities
195
- # pts = []
196
- # pts[0] = [0, 0, 0]
197
- # pts[1] = [width, 0, 0]
198
- # pts[2] = [width, depth, 0]
199
- # pts[3] = [0, depth, 0]
200
- # # Add the face to the entities in the model
201
- # face = entities.add_face pts
202
- # layer = face.layer
203
- #
204
- # @return [Sketchup::Layer] a layer object if successful
205
- #
206
- # @version SketchUp 6.0
207
- def layer
208
- end
209
-
210
- # The layer= method is used to set the layer for the drawing element.
211
- #
212
- # An exception is raised if you give a string that doesn't match any layer
213
- # name.
214
- #
215
- # @example
216
- # depth = 100
217
- # width = 100
218
- # model = Sketchup.active_model
219
- # entities = model.active_entities
220
- # pts = []
221
- # pts[0] = [0, 0, 0]
222
- # pts[1] = [width, 0, 0]
223
- # pts[2] = [width, depth, 0]
224
- # pts[3] = [0, depth, 0]
225
- # # Add the face to the entities in the model
226
- # face = entities.add_face pts
227
- # # Add a layer
228
- # layer = Sketchup.active_model.layers.add "joe"
229
- # # Put the face on the joe layer (instead of layer 0)
230
- # newlayer = face.layer = layer
231
- #
232
- # @param [Sketchup::Layer, String] layer
233
- # A layer or layer name.
234
- #
235
- # @return [Sketchup::Layer, String] the new Layer object if successful
236
- #
237
- # @version SketchUp 6.0
238
- def layer=(layer)
239
- end
240
-
241
- # The material method is used to retrieve the material for the drawing
242
- # element.
243
- #
244
- # @example
245
- # depth = 100
246
- # width = 100
247
- # model = Sketchup.active_model
248
- # entities = model.active_entities
249
- # pts = []
250
- # pts[0] = [0, 0, 0]
251
- # pts[1] = [width, 0, 0]
252
- # pts[2] = [width, depth, 0]
253
- # pts[3] = [0, depth, 0]
254
- # # Add the face to the entities in the model
255
- # face = entities.add_face pts
256
- # material = face.material
257
- #
258
- # @return [Sketchup::Material] the Material object if successful
259
- #
260
- # @version SketchUp 6.0
261
- def material
262
- end
263
-
264
- # The material= method is used to set the material for the drawing
265
- # element.
266
- #
267
- # @example
268
- # depth = 100
269
- # width = 100
270
- # model = Sketchup.active_model
271
- # entities = model.active_entities
272
- # pts = []
273
- # pts[0] = [0, 0, 0]
274
- # pts[1] = [width, 0, 0]
275
- # pts[2] = [width, depth, 0]
276
- # pts[3] = [0, depth, 0]
277
- # # Add the face to the entities in the model
278
- # face = entities.add_face pts
279
- # m = model.materials.add "Joe"
280
- # begin
281
- # # Returns nil if not successful, path if successful.
282
- # # Should return a texture object.
283
- # m.texture = "c:\\My Textures\\Carpet.jpg"
284
- # rescue
285
- # UI.messagebox $!.message
286
- # end
287
- # # You will see the material applied when you reverse the box's faces
288
- # material = face.material = m
289
- #
290
- # @param [Sketchup::Material, String, Sketchup::Color] material
291
- # A Material, name of a material, Color, or name of a
292
- # color.
293
- #
294
- # @return [Sketchup::Material, String, Sketchup::Color] the new Material object if successful
295
- #
296
- # @version SketchUp 6.0
297
- def material=(material)
298
- end
299
-
300
- # The receive_shadows= method is used to set the Drawingelement to receive
301
- # shadows.
302
- #
303
- # @example
304
- # depth = 100
305
- # width = 100
306
- # model = Sketchup.active_model
307
- # entities = model.active_entities
308
- # pts = []
309
- # pts[0] = [0, 0, 100]
310
- # pts[1] = [width, 0, 100]
311
- # pts[2] = [width, depth, 100]
312
- # pts[3] = [0, depth, 100]
313
- # # Add the face to the entities in the model.
314
- # face = entities.add_face pts
315
- #
316
- # # Make the face not receive shadows.
317
- # status = face.receives_shadows = false
318
- # UI.messagebox status.to_s
319
- #
320
- # @param [Boolean] receive
321
- # true if you want the Drawingelement object to
322
- # receive shadows, false if not.
323
- #
324
- # @return [Boolean] true if successful, false if unsuccessful.
325
- #
326
- # @version SketchUp 6.0
327
- def receives_shadows=(receive)
328
- end
329
-
330
- # The receive_shadows? method is used to determine if the Drawingelement is
331
- # receiving shadows.
332
- #
333
- # @example
334
- # depth = 100
335
- # width = 100
336
- # model = Sketchup.active_model
337
- # entities = model.active_entities
338
- # pts = []
339
- # pts[0] = [0, 0, 0]
340
- # pts[1] = [width, 0, 0]
341
- # pts[2] = [width, depth, 0]
342
- # pts[3] = [0, depth, 0]
343
- # # Add the face to the entities in the model
344
- # face = entities.add_face pts
345
- # status = face.receives_shadows?
346
- # UI.messagebox status.to_s
347
- #
348
- # @return [Boolean]
349
- #
350
- # @version SketchUp 6.0
351
- def receives_shadows?
352
- end
353
-
354
- # The visible= method is used to set the visible status for an element. This
355
- # method performs an opposite function to the hidden= method.
356
- #
357
- # @example
358
- # depth = 100
359
- # width = 100
360
- # model = Sketchup.active_model
361
- # entities = model.active_entities
362
- # pts = []
363
- # pts[0] = [0, 0, 0]
364
- # pts[1] = [width, 0, 0]
365
- # pts[2] = [width, depth, 0]
366
- # pts[3] = [0, depth, 0]
367
- # # Add the face to the entities in the model
368
- # face = entities.add_face pts
369
- # UI.messagebox "Click OK to Hide the Box"
370
- # status = face.visible = false
371
- #
372
- # @param [Boolean] visibility
373
- # true if you want to hide the element, false if not
374
- #
375
- # @return [Boolean] true if the element has been hidden, false if
376
- # the element has not been hidden.
377
- #
378
- # @version SketchUp 6.0
379
- def visible=(visibility)
380
- end
381
-
382
- # The visible? method is used to get the visible status for an element.
383
- #
384
- # @example
385
- # depth = 100
386
- # width = 100
387
- # model = Sketchup.active_model
388
- # entities = model.active_entities
389
- # pts = []
390
- # pts[0] = [0, 0, 0]
391
- # pts[1] = [width, 0, 0]
392
- # pts[2] = [width, depth, 0]
393
- # pts[3] = [0, depth, 0]
394
- # # Add the face to the entities in the model
395
- # face = entities.add_face pts
396
- # UI.messagebox "Click OK to Hide the Box"
397
- # face.visible = false
398
- # UI.messagebox "Is the face visible? " + face.visible?.to_s
399
- #
400
- # @return [Boolean]
401
- #
402
- # @version SketchUp 6.0
403
- def visible?
404
- end
405
-
406
- end
1
+ # Copyright:: Copyright 2026 Trimble Inc.
2
+ # License:: The MIT License (MIT)
3
+
4
+ # Drawingelement is a base class for an item in the model that can be
5
+ # displayed. These items include edges, construction points, construction
6
+ # lines, and images. Arc curves and arcs are not included because they are not
7
+ # drawing elements by themselves, but are a composition of edges.
8
+ #
9
+ # @version SketchUp 6.0
10
+ class Sketchup::Drawingelement < Sketchup::Entity
11
+
12
+ # Instance Methods
13
+
14
+ # The {#bounds} method is used to retrieve the {Geom::BoundingBox} bounding a
15
+ # {Sketchup::Drawingelement}.
16
+ #
17
+ # For a {Sketchup::Edge}, {Sketchup::ComponentInstance} and most other
18
+ # {Sketchup::Drawingelement}s, the boundingbox follows the coordinate system
19
+ # the drawing element is placed in.
20
+ # For {Sketchup::ComponentDefinition}, the box bounds the contents of the
21
+ # component and follows the component's own internal coordinate system.
22
+ #
23
+ # @example
24
+ # depth = 100
25
+ # width = 100
26
+ # model = Sketchup.active_model
27
+ # entities = model.active_entities
28
+ # pts = []
29
+ # pts[0] = [0, 0, 0]
30
+ # pts[1] = [width, 0, 0]
31
+ # pts[2] = [width, depth, 0]
32
+ # pts[3] = [0, depth, 0]
33
+ # # Add the face to the entities in the model
34
+ # face = entities.add_face pts
35
+ # # Remember, anything that can be displayed, such as a face, is also
36
+ # # a Drawingelement. So I can call bounds on a face because Face
37
+ # # is a sub-class of Drawingelement.
38
+ # boundingbox = face.bounds
39
+ #
40
+ # @return [Geom::BoundingBox]
41
+ #
42
+ # @version SketchUp 6.0
43
+ def bounds
44
+ end
45
+
46
+ # The casts_shadows= method is used to set the Drawingelement to cast shadows.
47
+ #
48
+ # @example
49
+ # depth = 100
50
+ # width = 100
51
+ # model = Sketchup.active_model
52
+ # entities = model.active_entities
53
+ # pts = []
54
+ # pts[0] = [0, 0, 100]
55
+ # pts[1] = [width, 0, 100]
56
+ # pts[2] = [width, depth, 100]
57
+ # pts[3] = [0, depth, 100]
58
+ # # Add the face to the entities in the model.
59
+ # face = entities.add_face pts
60
+ #
61
+ # # Make the face not cast shadows.
62
+ # status = face.casts_shadows = false
63
+ #
64
+ # @param [Boolean] casts
65
+ # true if you want the Drawingelement object to cast
66
+ # shadows, false if you do not want the Drawingelement
67
+ # object to cast shadows.
68
+ #
69
+ # @return [Boolean] true if successful, false if unsuccessful.
70
+ #
71
+ # @version SketchUp 6.0
72
+ def casts_shadows=(casts)
73
+ end
74
+
75
+ # The casts_shadows? method is used to determine if the Drawingelement is
76
+ # casting shadows.
77
+ #
78
+ # @example
79
+ # depth = 100
80
+ # width = 100
81
+ # model = Sketchup.active_model
82
+ # entities = model.active_entities
83
+ # pts = []
84
+ # pts[0] = [0, 0, 0]
85
+ # pts[1] = [width, 0, 0]
86
+ # pts[2] = [width, depth, 0]
87
+ # pts[3] = [0, depth, 0]
88
+ # # Add the face to the entities in the model
89
+ # face = entities.add_face pts
90
+ # status = face.casts_shadows?
91
+ #
92
+ # @return [Boolean]
93
+ #
94
+ # @version SketchUp 6.0
95
+ def casts_shadows?
96
+ end
97
+
98
+ # The {#erase!} method is used to erase an element from the model.
99
+ #
100
+ # Erasing an Edge also erases all of the Face objects that use the Edge.
101
+ #
102
+ # @bug Prior to SketchUp 2023.0 this could crash SketchUp if you erased an
103
+ # instance used by the active edit path.
104
+ #
105
+ # @example
106
+ # depth = 100
107
+ # width = 100
108
+ # model = Sketchup.active_model
109
+ # entities = model.active_entities
110
+ # pts = []
111
+ # pts[0] = [0, 0, 0]
112
+ # pts[1] = [width, 0, 0]
113
+ # pts[2] = [width, depth, 0]
114
+ # pts[3] = [0, depth, 0]
115
+ # # Add the face to the entities in the model
116
+ # face = entities.add_face pts
117
+ # status = face.erase!
118
+ #
119
+ # @note When erasing multiple elements, it's faster to
120
+ # use {Sketchup::Entities#erase_entities} and erase in bulk than to iterate
121
+ # individual drawing elements calling {Sketchup::Drawingelement#erase!}.
122
+ #
123
+ # @raise [ArgumentError] if the drawing element is an instance used
124
+ # by {Sketchup::Model#active_path}.
125
+ #
126
+ # @return [nil]
127
+ #
128
+ # @version SketchUp 6.0
129
+ def erase!
130
+ end
131
+
132
+ # The hidden= method is used to set the hidden status for an element.
133
+ #
134
+ # @example
135
+ # depth = 100
136
+ # width = 100
137
+ # model = Sketchup.active_model
138
+ # entities = model.active_entities
139
+ # pts = []
140
+ # pts[0] = [0, 0, 0]
141
+ # pts[1] = [width, 0, 0]
142
+ # pts[2] = [width, depth, 0]
143
+ # pts[3] = [0, depth, 0]
144
+ # # Add the face to the entities in the model
145
+ # face = entities.add_face pts
146
+ # UI.messagebox "Click OK to Hide the Box"
147
+ # status = face.hidden = true
148
+ #
149
+ # @param [Boolean] hidden
150
+ # true if you want to hide the element, false if you do
151
+ # not want to hide the element.
152
+ #
153
+ # @return [Boolean] true if the element has been hidden, false if
154
+ # the element has not been hidden.
155
+ #
156
+ # @version SketchUp 6.0
157
+ def hidden=(hidden)
158
+ end
159
+
160
+ # The hidden? method is used to determine if the element is hidden.
161
+ #
162
+ # Hidden elements are still in the model, but they are not displayed.
163
+ #
164
+ # @example
165
+ # depth = 100
166
+ # width = 100
167
+ # model = Sketchup.active_model
168
+ # entities = model.active_entities
169
+ # pts = []
170
+ # pts[0] = [0, 0, 0]
171
+ # pts[1] = [width, 0, 0]
172
+ # pts[2] = [width, depth, 0]
173
+ # pts[3] = [0, depth, 0]
174
+ # # Add the face to the entities in the model
175
+ # face = entities.add_face pts
176
+ # status = face.hidden?
177
+ #
178
+ # @return [Boolean]
179
+ #
180
+ # @version SketchUp 6.0
181
+ def hidden?
182
+ end
183
+
184
+ # The layer method is used to retrieve the Layer object of the drawing
185
+ # element.
186
+ #
187
+ # @example
188
+ # depth = 100
189
+ # width = 100
190
+ # model = Sketchup.active_model
191
+ # entities = model.active_entities
192
+ # pts = []
193
+ # pts[0] = [0, 0, 0]
194
+ # pts[1] = [width, 0, 0]
195
+ # pts[2] = [width, depth, 0]
196
+ # pts[3] = [0, depth, 0]
197
+ # # Add the face to the entities in the model
198
+ # face = entities.add_face pts
199
+ # layer = face.layer
200
+ #
201
+ # @return [Sketchup::Layer] a layer object if successful
202
+ #
203
+ # @version SketchUp 6.0
204
+ def layer
205
+ end
206
+
207
+ # The layer= method is used to set the layer for the drawing element.
208
+ #
209
+ # An exception is raised if you give a string that doesn't match any layer
210
+ # name.
211
+ #
212
+ # @example
213
+ # depth = 100
214
+ # width = 100
215
+ # model = Sketchup.active_model
216
+ # entities = model.active_entities
217
+ # pts = []
218
+ # pts[0] = [0, 0, 0]
219
+ # pts[1] = [width, 0, 0]
220
+ # pts[2] = [width, depth, 0]
221
+ # pts[3] = [0, depth, 0]
222
+ # # Add the face to the entities in the model
223
+ # face = entities.add_face pts
224
+ # # Add a layer
225
+ # layer = Sketchup.active_model.layers.add "joe"
226
+ # # Put the face on the joe layer (instead of layer 0)
227
+ # newlayer = face.layer = layer
228
+ #
229
+ # @param [Sketchup::Layer, String] layer
230
+ # A layer or layer name.
231
+ #
232
+ # @return [Sketchup::Layer, String] the new Layer object if successful
233
+ #
234
+ # @version SketchUp 6.0
235
+ def layer=(layer)
236
+ end
237
+
238
+ # The material method is used to retrieve the material for the drawing
239
+ # element.
240
+ #
241
+ # @example
242
+ # depth = 100
243
+ # width = 100
244
+ # model = Sketchup.active_model
245
+ # entities = model.active_entities
246
+ # pts = []
247
+ # pts[0] = [0, 0, 0]
248
+ # pts[1] = [width, 0, 0]
249
+ # pts[2] = [width, depth, 0]
250
+ # pts[3] = [0, depth, 0]
251
+ # # Add the face to the entities in the model
252
+ # face = entities.add_face pts
253
+ # material = face.material
254
+ #
255
+ # @return [Sketchup::Material] the Material object if successful
256
+ #
257
+ # @version SketchUp 6.0
258
+ def material
259
+ end
260
+
261
+ # The material= method is used to set the material for the drawing
262
+ # element.
263
+ #
264
+ # @example
265
+ # depth = 100
266
+ # width = 100
267
+ # model = Sketchup.active_model
268
+ # entities = model.active_entities
269
+ # pts = []
270
+ # pts[0] = [0, 0, 0]
271
+ # pts[1] = [width, 0, 0]
272
+ # pts[2] = [width, depth, 0]
273
+ # pts[3] = [0, depth, 0]
274
+ # # Add the face to the entities in the model
275
+ # face = entities.add_face pts
276
+ # m = model.materials.add "Joe"
277
+ # begin
278
+ # # Returns nil if not successful, path if successful.
279
+ # # Should return a texture object.
280
+ # m.texture = "c:\\My Textures\\Carpet.jpg"
281
+ # rescue => exception
282
+ # puts exception.message
283
+ # end
284
+ # # You will see the material applied when you reverse the box's faces
285
+ # material = face.material = m
286
+ #
287
+ # @param [Sketchup::Material, String, Sketchup::Color] material
288
+ # A Material, name of a material, Color, or name of a
289
+ # color.
290
+ #
291
+ # @return [Sketchup::Material, String, Sketchup::Color] the new Material object if successful
292
+ #
293
+ # @version SketchUp 6.0
294
+ def material=(material)
295
+ end
296
+
297
+ # The receive_shadows= method is used to set the Drawingelement to receive
298
+ # shadows.
299
+ #
300
+ # @example
301
+ # depth = 100
302
+ # width = 100
303
+ # model = Sketchup.active_model
304
+ # entities = model.active_entities
305
+ # pts = []
306
+ # pts[0] = [0, 0, 100]
307
+ # pts[1] = [width, 0, 100]
308
+ # pts[2] = [width, depth, 100]
309
+ # pts[3] = [0, depth, 100]
310
+ # # Add the face to the entities in the model.
311
+ # face = entities.add_face pts
312
+ #
313
+ # # Make the face not receive shadows.
314
+ # status = face.receives_shadows = false
315
+ #
316
+ # @param [Boolean] receive
317
+ # true if you want the Drawingelement object to
318
+ # receive shadows, false if not.
319
+ #
320
+ # @return [Boolean] true if successful, false if unsuccessful.
321
+ #
322
+ # @version SketchUp 6.0
323
+ def receives_shadows=(receive)
324
+ end
325
+
326
+ # The receive_shadows? method is used to determine if the Drawingelement is
327
+ # receiving shadows.
328
+ #
329
+ # @example
330
+ # depth = 100
331
+ # width = 100
332
+ # model = Sketchup.active_model
333
+ # entities = model.active_entities
334
+ # pts = []
335
+ # pts[0] = [0, 0, 0]
336
+ # pts[1] = [width, 0, 0]
337
+ # pts[2] = [width, depth, 0]
338
+ # pts[3] = [0, depth, 0]
339
+ # # Add the face to the entities in the model
340
+ # face = entities.add_face pts
341
+ # status = face.receives_shadows?
342
+ #
343
+ # @return [Boolean]
344
+ #
345
+ # @version SketchUp 6.0
346
+ def receives_shadows?
347
+ end
348
+
349
+ # The {#visible=} method is used to set the visible status for an element. This
350
+ # method performs an opposite function to the hidden= method.
351
+ #
352
+ # @example
353
+ # depth = 100
354
+ # width = 100
355
+ # model = Sketchup.active_model
356
+ # entities = model.active_entities
357
+ # pts = []
358
+ # pts[0] = [0, 0, 0]
359
+ # pts[1] = [width, 0, 0]
360
+ # pts[2] = [width, depth, 0]
361
+ # pts[3] = [0, depth, 0]
362
+ # # Add the face to the entities in the model
363
+ # face = entities.add_face pts
364
+ # UI.messagebox "Click OK to Hide the Box"
365
+ # status = face.visible = false
366
+ #
367
+ # @param [Boolean] visibility
368
+ # true if you want to make the element visible, false if not
369
+ #
370
+ # @version SketchUp 6.0
371
+ def visible=(visibility)
372
+ end
373
+
374
+ # The {#visible?} method checks if a Drawingelement object is not explicitly hidden (i.e. its
375
+ # hidden property is false). However, this method's return value alone does not guarantee that the
376
+ # element is visible in the model view. Its tag or parent elements can also be hidden. Some element
377
+ # types can also be hidden by rendering options (Styles).
378
+ #
379
+ # @example
380
+ # depth = 100
381
+ # width = 100
382
+ # model = Sketchup.active_model
383
+ # entities = model.active_entities
384
+ # pts = []
385
+ # pts[0] = [0, 0, 0]
386
+ # pts[1] = [width, 0, 0]
387
+ # pts[2] = [width, depth, 0]
388
+ # pts[3] = [0, depth, 0]
389
+ # # Add the face to the entities in the model
390
+ # face = entities.add_face pts
391
+ # UI.messagebox "Click OK to Hide the Box"
392
+ # face.visible = false
393
+ # UI.messagebox "Is the face visible? " + face.visible?.to_s
394
+ #
395
+ # @return [Boolean]
396
+ #
397
+ # @see Sketchup::Model#drawing_element_visible?
398
+ #
399
+ # @version SketchUp 6.0
400
+ def visible?
401
+ end
402
+
403
+ end