sketchup-api-stubs 0.6.1 → 0.7.4

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 (149) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +2 -0
  3. data/lib/sketchup-api-stubs.rb +1 -1
  4. data/lib/sketchup-api-stubs/sketchup.rb +145 -145
  5. data/lib/sketchup-api-stubs/stubs/Geom/BoundingBox.rb +318 -318
  6. data/lib/sketchup-api-stubs/stubs/Geom/Bounds2d.rb +172 -172
  7. data/lib/sketchup-api-stubs/stubs/Geom/LatLong.rb +126 -126
  8. data/lib/sketchup-api-stubs/stubs/Geom/OrientedBounds2d.rb +102 -102
  9. data/lib/sketchup-api-stubs/stubs/Geom/Point2d.rb +400 -401
  10. data/lib/sketchup-api-stubs/stubs/Geom/Point3d.rb +661 -661
  11. data/lib/sketchup-api-stubs/stubs/Geom/PolygonMesh.rb +492 -492
  12. data/lib/sketchup-api-stubs/stubs/Geom/Transformation.rb +478 -478
  13. data/lib/sketchup-api-stubs/stubs/Geom/Transformation2d.rb +263 -263
  14. data/lib/sketchup-api-stubs/stubs/Geom/UTM.rb +141 -141
  15. data/lib/sketchup-api-stubs/stubs/Geom/Vector2d.rb +522 -523
  16. data/lib/sketchup-api-stubs/stubs/Geom/Vector3d.rb +691 -691
  17. data/lib/sketchup-api-stubs/stubs/Layout.rb +25 -25
  18. data/lib/sketchup-api-stubs/stubs/Layout/AngularDimension.rb +573 -569
  19. data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinition.rb +411 -411
  20. data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinitions.rb +174 -186
  21. data/lib/sketchup-api-stubs/stubs/Layout/ConnectionPoint.rb +70 -70
  22. data/lib/sketchup-api-stubs/stubs/Layout/Document.rb +514 -455
  23. data/lib/sketchup-api-stubs/stubs/Layout/Ellipse.rb +29 -29
  24. data/lib/sketchup-api-stubs/stubs/Layout/Entities.rb +143 -155
  25. data/lib/sketchup-api-stubs/stubs/Layout/Entity.rb +353 -359
  26. data/lib/sketchup-api-stubs/stubs/Layout/FormattedText.rb +349 -349
  27. data/lib/sketchup-api-stubs/stubs/Layout/Grid.rb +311 -123
  28. data/lib/sketchup-api-stubs/stubs/Layout/Group.rb +261 -261
  29. data/lib/sketchup-api-stubs/stubs/Layout/Image.rb +91 -86
  30. data/lib/sketchup-api-stubs/stubs/Layout/Label.rb +371 -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 +220 -232
  34. data/lib/sketchup-api-stubs/stubs/Layout/LinearDimension.rb +567 -563
  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 +204 -216
  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 +694 -547
  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/Sketchup/Animation.rb +140 -140
  49. data/lib/sketchup-api-stubs/stubs/Sketchup/AppObserver.rb +157 -157
  50. data/lib/sketchup-api-stubs/stubs/Sketchup/ArcCurve.rb +209 -209
  51. data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionaries.rb +152 -152
  52. data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionary.rb +281 -281
  53. data/lib/sketchup-api-stubs/stubs/Sketchup/Axes.rb +149 -149
  54. data/lib/sketchup-api-stubs/stubs/Sketchup/Behavior.rb +328 -328
  55. data/lib/sketchup-api-stubs/stubs/Sketchup/Camera.rb +577 -577
  56. data/lib/sketchup-api-stubs/stubs/Sketchup/ClassificationSchema.rb +63 -63
  57. data/lib/sketchup-api-stubs/stubs/Sketchup/Classifications.rb +122 -122
  58. data/lib/sketchup-api-stubs/stubs/Sketchup/Color.rb +281 -281
  59. data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentDefinition.rb +562 -554
  60. data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentInstance.rb +593 -593
  61. data/lib/sketchup-api-stubs/stubs/Sketchup/Console.rb +76 -76
  62. data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionLine.rb +257 -257
  63. data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionPoint.rb +32 -32
  64. data/lib/sketchup-api-stubs/stubs/Sketchup/Curve.rb +194 -194
  65. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionList.rb +329 -329
  66. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionObserver.rb +72 -72
  67. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionsObserver.rb +102 -102
  68. data/lib/sketchup-api-stubs/stubs/Sketchup/Dimension.rb +165 -165
  69. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionLinear.rb +312 -312
  70. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionObserver.rb +38 -38
  71. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionRadial.rb +87 -87
  72. data/lib/sketchup-api-stubs/stubs/Sketchup/Drawingelement.rb +390 -390
  73. data/lib/sketchup-api-stubs/stubs/Sketchup/Edge.rb +508 -508
  74. data/lib/sketchup-api-stubs/stubs/Sketchup/EdgeUse.rb +211 -211
  75. data/lib/sketchup-api-stubs/stubs/Sketchup/Entities.rb +1119 -1097
  76. data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesObserver.rb +125 -125
  77. data/lib/sketchup-api-stubs/stubs/Sketchup/Entity.rb +544 -537
  78. data/lib/sketchup-api-stubs/stubs/Sketchup/EntityObserver.rb +59 -59
  79. data/lib/sketchup-api-stubs/stubs/Sketchup/ExtensionsManager.rb +125 -125
  80. data/lib/sketchup-api-stubs/stubs/Sketchup/Face.rb +750 -750
  81. data/lib/sketchup-api-stubs/stubs/Sketchup/FrameChangeObserver.rb +104 -104
  82. data/lib/sketchup-api-stubs/stubs/Sketchup/Group.rb +697 -697
  83. data/lib/sketchup-api-stubs/stubs/Sketchup/Http.rb +27 -27
  84. data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Request.rb +285 -285
  85. data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Response.rb +62 -62
  86. data/lib/sketchup-api-stubs/stubs/Sketchup/Image.rb +409 -409
  87. data/lib/sketchup-api-stubs/stubs/Sketchup/ImageRep.rb +226 -226
  88. data/lib/sketchup-api-stubs/stubs/Sketchup/Importer.rb +190 -190
  89. data/lib/sketchup-api-stubs/stubs/Sketchup/InputPoint.rb +393 -393
  90. data/lib/sketchup-api-stubs/stubs/Sketchup/InstanceObserver.rb +82 -82
  91. data/lib/sketchup-api-stubs/stubs/Sketchup/InstancePath.rb +303 -303
  92. data/lib/sketchup-api-stubs/stubs/Sketchup/Layer.rb +285 -262
  93. data/lib/sketchup-api-stubs/stubs/Sketchup/Layers.rb +244 -231
  94. data/lib/sketchup-api-stubs/stubs/Sketchup/LayersObserver.rb +136 -136
  95. data/lib/sketchup-api-stubs/stubs/Sketchup/Licensing.rb +48 -48
  96. data/lib/sketchup-api-stubs/stubs/Sketchup/Licensing/ExtensionLicense.rb +86 -86
  97. data/lib/sketchup-api-stubs/stubs/Sketchup/LineStyle.rb +24 -24
  98. data/lib/sketchup-api-stubs/stubs/Sketchup/LineStyles.rb +112 -123
  99. data/lib/sketchup-api-stubs/stubs/Sketchup/Loop.rb +137 -137
  100. data/lib/sketchup-api-stubs/stubs/Sketchup/Material.rb +416 -416
  101. data/lib/sketchup-api-stubs/stubs/Sketchup/Materials.rb +311 -311
  102. data/lib/sketchup-api-stubs/stubs/Sketchup/MaterialsObserver.rb +141 -141
  103. data/lib/sketchup-api-stubs/stubs/Sketchup/Menu.rb +95 -95
  104. data/lib/sketchup-api-stubs/stubs/Sketchup/Model.rb +1638 -1483
  105. data/lib/sketchup-api-stubs/stubs/Sketchup/ModelObserver.rb +356 -356
  106. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsManager.rb +132 -132
  107. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProvider.rb +284 -282
  108. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProviderObserver.rb +58 -58
  109. data/lib/sketchup-api-stubs/stubs/Sketchup/Page.rb +770 -650
  110. data/lib/sketchup-api-stubs/stubs/Sketchup/Pages.rb +353 -353
  111. data/lib/sketchup-api-stubs/stubs/Sketchup/PagesObserver.rb +76 -76
  112. data/lib/sketchup-api-stubs/stubs/Sketchup/PickHelper.rb +456 -456
  113. data/lib/sketchup-api-stubs/stubs/Sketchup/RegionalSettings.rb +43 -43
  114. data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptions.rb +364 -356
  115. data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptionsObserver.rb +44 -44
  116. data/lib/sketchup-api-stubs/stubs/Sketchup/SectionPlane.rb +150 -150
  117. data/lib/sketchup-api-stubs/stubs/Sketchup/Selection.rb +454 -454
  118. data/lib/sketchup-api-stubs/stubs/Sketchup/SelectionObserver.rb +115 -115
  119. data/lib/sketchup-api-stubs/stubs/Sketchup/Set.rb +212 -212
  120. data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfo.rb +257 -257
  121. data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfoObserver.rb +57 -57
  122. data/lib/sketchup-api-stubs/stubs/Sketchup/Style.rb +69 -69
  123. data/lib/sketchup-api-stubs/stubs/Sketchup/Styles.rb +211 -211
  124. data/lib/sketchup-api-stubs/stubs/Sketchup/Text.rb +262 -262
  125. data/lib/sketchup-api-stubs/stubs/Sketchup/Texture.rb +225 -225
  126. data/lib/sketchup-api-stubs/stubs/Sketchup/TextureWriter.rb +237 -237
  127. data/lib/sketchup-api-stubs/stubs/Sketchup/Tool.rb +829 -829
  128. data/lib/sketchup-api-stubs/stubs/Sketchup/Tools.rb +132 -132
  129. data/lib/sketchup-api-stubs/stubs/Sketchup/ToolsObserver.rb +154 -154
  130. data/lib/sketchup-api-stubs/stubs/Sketchup/UVHelper.rb +61 -61
  131. data/lib/sketchup-api-stubs/stubs/Sketchup/Vertex.rb +142 -142
  132. data/lib/sketchup-api-stubs/stubs/Sketchup/View.rb +1301 -995
  133. data/lib/sketchup-api-stubs/stubs/Sketchup/ViewObserver.rb +43 -43
  134. data/lib/sketchup-api-stubs/stubs/UI/Command.rb +310 -310
  135. data/lib/sketchup-api-stubs/stubs/UI/HtmlDialog.rb +356 -356
  136. data/lib/sketchup-api-stubs/stubs/UI/Notification.rb +229 -229
  137. data/lib/sketchup-api-stubs/stubs/UI/Toolbar.rb +240 -240
  138. data/lib/sketchup-api-stubs/stubs/UI/WebDialog.rb +633 -633
  139. data/lib/sketchup-api-stubs/stubs/_top_level.rb +311 -303
  140. data/lib/sketchup-api-stubs/stubs/array.rb +741 -741
  141. data/lib/sketchup-api-stubs/stubs/geom.rb +348 -233
  142. data/lib/sketchup-api-stubs/stubs/languagehandler.rb +92 -92
  143. data/lib/sketchup-api-stubs/stubs/length.rb +278 -262
  144. data/lib/sketchup-api-stubs/stubs/numeric.rb +249 -249
  145. data/lib/sketchup-api-stubs/stubs/sketchup.rb +1310 -1310
  146. data/lib/sketchup-api-stubs/stubs/sketchupextension.rb +353 -353
  147. data/lib/sketchup-api-stubs/stubs/string.rb +24 -24
  148. data/lib/sketchup-api-stubs/stubs/ui.rb +667 -660
  149. metadata +2 -16
@@ -1,262 +1,285 @@
1
- # Copyright:: Copyright 2019 Trimble Inc.
2
- # License:: The MIT License (MIT)
3
-
4
- # The Layer class contains methods modifying and extracting information for a
5
- # layer.
6
- #
7
- # By default, a SketchUp model has one layer, Layer 0 (zero), which is the base
8
- # layer. You can't delete or rename Layer 0. Unlike certain other CAD software
9
- # packages, entities associated with different layers in SketchUp still
10
- # intersect with each other. (If you want collections of entities to not
11
- # intersect, place them in Groups instead.)
12
- #
13
- # Layers are commonly used to organize your model and control the visibility
14
- # of related groups and components. For example, you could make all of your
15
- # wall and roof entities different groups, associate layers with those groups,
16
- # and then hide those layers so as to display just the floor plan in the model.
17
- #
18
- # You can programatically create a new layer by calling the Layers.add method.
19
- #
20
- # @example
21
- # model = Sketchup.active_model
22
- # layers = model.layers
23
- # new_layer = layers.add "test layer"
24
- #
25
- # @version SketchUp 6.0
26
- class Sketchup::Layer < Sketchup::Entity
27
-
28
- # Includes
29
-
30
- include Comparable
31
-
32
- # Instance Methods
33
-
34
- # The <=> method is used to compare two layers based on their names. You could
35
- # use this for sorting if you're building a list of layer names.
36
- #
37
- # @example
38
- # model = Sketchup.active_model
39
- # layers = model.layers
40
- # new_layer = layers.add "test layer"
41
- # layer1 = layers[0]
42
- # layer2 = layers[1]
43
- # status = layer1 <=> layer2
44
- #
45
- # @param layer2
46
- # A Layer object.
47
- #
48
- # @return status - -1 if layer1 is less than layer2. 1 if layer2
49
- # is less than layer1. 0 if layer1 and layer2 are
50
- # equal.
51
- #
52
- # @version SketchUp 6.0
53
- def <=>(layer2)
54
- end
55
-
56
- # The == method is used to determine if two layers are the same.
57
- #
58
- # @example
59
- # model = Sketchup.active_model
60
- # layers = model.layers
61
- # layer1 = layers.add "test layer 1"
62
- # layer2 = layers.add "test layer 2"
63
- # status = layer1 == layer2
64
- #
65
- # @param layer2
66
- # A Layer object.
67
- #
68
- # @return status - true if layer1 and layer2 are equal. false if
69
- # layer1 and layer2 are not equal.
70
- #
71
- # @version SketchUp 6.0
72
- def ==(layer2)
73
- end
74
-
75
- # The color method is used to retrieve the color of the layer.
76
- #
77
- # @example
78
- # model = Sketchup.active_model
79
- # layers = model.layers
80
- # new_layer = layers.add('Test layer')
81
- # color = new_layer.color
82
- #
83
- # @return color - the color of the Layer object
84
- #
85
- # @version SketchUp 2014
86
- def color
87
- end
88
-
89
- # The color= method is used to set the name of a layer.
90
- #
91
- # @example
92
- # model = Sketchup.active_model
93
- # layers = model.layers
94
- # new_layer = layers.add('Test layer')
95
- # new_layer.color = Sketchup::Color.new(192, 0, 0)
96
- #
97
- # @param color
98
- # The new color for the Layer object.
99
- #
100
- # @return color
101
- #
102
- # @version SketchUp 2014
103
- def color=(color)
104
- end
105
-
106
- # The {#line_style} method retrieves the line style on this layer.
107
- #
108
- # @example
109
- # line_style = Sketchup.active_model.layers[0].line_style
110
- #
111
- # @return [Sketchup::LineStyle, nil] The line style retrieved.
112
- #
113
- # @version SketchUp 2019
114
- def line_style
115
- end
116
-
117
- # The {#line_style=} method lets you set a specific line style to a layer
118
- #
119
- # @example
120
- # line_style = Sketchup.active_model.line_styles["Dot"]
121
- # Sketchup.active_model.layers[0].line_style = line_style
122
- #
123
- # @param [Sketchup::LineStyle, nil] line_style
124
- # The line style to set on this layer.
125
- #
126
- # @return [Sketchup::Layer] The layer that the line style was applied on.
127
- #
128
- # @version SketchUp 2019
129
- def line_style=(line_style)
130
- end
131
-
132
- # The name method is used to retrieve the name of the layer.
133
- #
134
- # @example
135
- # model = Sketchup.active_model
136
- # layers = model.layers
137
- # new_layer = layers.add "test layer"
138
- # name = new_layer.name
139
- #
140
- # @return name - the name of the Layer object
141
- #
142
- # @version SketchUp 6.0
143
- def name
144
- end
145
-
146
- # The name= method is used to set the name of a layer.
147
- #
148
- # @example
149
- # model = Sketchup.active_model
150
- # layers = model.layers
151
- # new_layer = layers.add "test layer"
152
- # name = new_layer.name = "new test layer"
153
- #
154
- # @param name
155
- # The new name for the Layer object.
156
- #
157
- # @return name - the newly set name
158
- #
159
- # @version SketchUp 6.0
160
- def name=(name)
161
- end
162
-
163
- # The page_behavior method is used to retrieve the visibility behavior of the
164
- # layer for new pages and existing pages. For example, you may want your layer
165
- # to be visible or hidden by default in any new pages (aka Scenes) created by
166
- # the user.
167
- #
168
- # A page keeps a list of layers that do not have their default behavior.
169
- # If a layer is not in that list, then it is set to its default visibility
170
- # determined by one of these values:
171
- #
172
- # The behaviour is composed of a combination of these flags:
173
- # - LAYER_VISIBLE_BY_DEFAULT: 0x0000
174
- # - LAYER_HIDDEN_BY_DEFAULT: 0x0001
175
- # - LAYER_USES_DEFAULT_VISIBILITY_ON_NEW_PAGES: 0x0000
176
- # - LAYER_IS_VISIBLE_ON_NEW_PAGES: 0x0010
177
- # - LAYER_IS_HIDDEN_ON_NEW_PAGES: 0x0020
178
- #
179
- # The default visibility for a layer is set by either
180
- # <code>LAYER_VISIBLE_BY_DEFAULT</code> or
181
- # <code>LAYER_HIDDEN_BY_DEFAULT</code>. This is what will be used when a page
182
- # does not contain the visibility state of a layer.
183
- #
184
- # The remaining flags control the visibility of the layer for new pages.
185
- #
186
- # @example
187
- # model = Sketchup.active_model
188
- # layers = model.layers
189
- # layer = layers.add('Test Layer')
190
- # hidden_by_default = (layer.page_behavior & LAYER_HIDDEN_BY_DEFAULT) ==
191
- # LAYER_HIDDEN_BY_DEFAULT
192
- #
193
- # @return pagebehavior - an integer representing the current
194
- # behavior of the layer.
195
- #
196
- # @version SketchUp 6.0
197
- def page_behavior
198
- end
199
-
200
- # The {#page_behavior=} method is used to control the layer's visibility
201
- # behavior on existing and new pages.
202
- #
203
- # When you Update a page (as opposed to creating a new page) the current
204
- # visibility of the layer is used.
205
- #
206
- # The behavior is composed of a combination of these flags:
207
- # [+LAYER_VISIBLE_BY_DEFAULT: 0x0000+]
208
- # [+LAYER_HIDDEN_BY_DEFAULT: 0x0001+]
209
- # [+LAYER_USES_DEFAULT_VISIBILITY_ON_NEW_PAGES: 0x0000+]
210
- # [+LAYER_IS_VISIBLE_ON_NEW_PAGES: 0x0010+]
211
- # [+LAYER_IS_HIDDEN_ON_NEW_PAGES: 0x0020+]
212
- #
213
- # @example
214
- # layers = Sketchup.active_model.layers
215
- # layer = layers.add('Test Layer')
216
- # behavior = LAYER_HIDDEN_BY_DEFAULT | LAYER_IS_HIDDEN_ON_NEW_PAGES
217
- # layer.page_behavior = behavior
218
- #
219
- # @note Prior to SketchUp 2014 the +LAYER_HIDDEN_BY_DEFAULT+ flag
220
- # would trigger the validation check in SketchUp that would reset the
221
- # {#page_behavior} of the layer.
222
- #
223
- # @param [Integer] page_behavior
224
- #
225
- # @return [Integer]
226
- #
227
- # @version SketchUp 6.0
228
- def page_behavior=(page_behavior)
229
- end
230
-
231
- # The visible= method is used to set if the layer is visible.
232
- #
233
- # @example
234
- # model = Sketchup.active_model
235
- # layers = model.layers
236
- # new_layer = layers.add "test layer"
237
- #
238
- # # Hide the layer.
239
- # new_layer.visible = false
240
- #
241
- # @param is_visible
242
- # The new visibility setting.
243
- #
244
- # @version SketchUp 6.0
245
- def visible=(is_visible)
246
- end
247
-
248
- # The visible? method is used to determine if the layer is visible.
249
- #
250
- # @example
251
- # model = Sketchup.active_model
252
- # layers = model.layers
253
- # new_layer = layers.add "test layer"
254
- # UI.messagebox(new_layer.visible?)
255
- #
256
- # @return [Boolean] true if the layer is visible
257
- #
258
- # @version SketchUp 6.0
259
- def visible?
260
- end
261
-
262
- end
1
+ # Copyright:: Copyright 2020 Trimble Inc.
2
+ # License:: The MIT License (MIT)
3
+
4
+ # The Layer class contains methods modifying and extracting information for a
5
+ # layer.
6
+ #
7
+ # By default, a SketchUp model has one layer, Layer 0 (Named "Untagged" in the
8
+ # UI since SketchUp 2020), which is the base
9
+ # layer. You can't delete or rename Layer 0. Unlike certain other CAD software
10
+ # packages, entities associated with different layers in SketchUp still
11
+ # intersect with each other. (If you want collections of entities to not
12
+ # intersect, place them in Groups instead.)
13
+ #
14
+ # Layers are commonly used to organize your model and control the visibility
15
+ # of related groups and components. For example, you could make all of your
16
+ # wall and roof entities different groups, associate layers with those groups,
17
+ # and then hide those layers so as to display just the floor plan in the model.
18
+ #
19
+ # @example
20
+ # model = Sketchup.active_model
21
+ # layers = model.layers
22
+ # new_layer = layers.add('Doors')
23
+ #
24
+ # @note As of SketchUp 2020 "Layers" were renamed to "Tags" in the UI.
25
+ # The API retains the use of "Layer" for compatibility and is synonymous with
26
+ # "Tag".
27
+ #
28
+ # @version SketchUp 6.0
29
+ class Sketchup::Layer < Sketchup::Entity
30
+
31
+ # Includes
32
+
33
+ include Comparable
34
+
35
+ # Instance Methods
36
+
37
+ # The {#<=>} method is used to compare two layers based on their names. You
38
+ # could use this for sorting if you're building a list of layer names.
39
+ #
40
+ # @example
41
+ # model = Sketchup.active_model
42
+ # layers = model.layers
43
+ # new_layer = layers.add "test layer"
44
+ # layer1 = layers[0]
45
+ # layer2 = layers[1]
46
+ # status = layer1 <=> layer2
47
+ #
48
+ # @param [Sketchup::Layer] layer2
49
+ #
50
+ # @return [Integer] -1 if layer1 is less than layer2. 1 if layer2
51
+ # is less than layer1. 0 if layer1 and layer2 are equal.
52
+ #
53
+ # @version SketchUp 6.0
54
+ def <=>(layer2)
55
+ end
56
+
57
+ # The {#==} method is used to determine if two layers are the same.
58
+ #
59
+ # @example
60
+ # model = Sketchup.active_model
61
+ # layers = model.layers
62
+ # layer1 = layers.add("Test layer 1")
63
+ # layer2 = layers.add("Test layer 2")
64
+ # equal = layer1 == layer2
65
+ #
66
+ # @param [Object] other
67
+ #
68
+ # @version SketchUp 6.0
69
+ def ==(other)
70
+ end
71
+
72
+ # The {#color} method is used to retrieve the color of the layer.
73
+ #
74
+ # @example
75
+ # model = Sketchup.active_model
76
+ # layers = model.layers
77
+ # new_layer = layers.add('Test layer')
78
+ # color = new_layer.color
79
+ #
80
+ # @return [Sketchup::Color]
81
+ #
82
+ # @version SketchUp 2014
83
+ def color
84
+ end
85
+
86
+ # The {#color=} method is used to set the name of a layer.
87
+ #
88
+ # @example
89
+ # model = Sketchup.active_model
90
+ # layers = model.layers
91
+ # new_layer = layers.add('Test layer')
92
+ # new_layer.color = Sketchup::Color.new(192, 0, 0)
93
+ #
94
+ # @param [Sketchup::Color] color
95
+ #
96
+ # @version SketchUp 2014
97
+ def color=(color)
98
+ end
99
+
100
+ # The {#display_name} method is used to retrieve the display name of the layer.
101
+ #
102
+ # @example
103
+ # model = Sketchup.active_model
104
+ # layers = model.layers
105
+ # new_layer = layers.add ("test layer")
106
+ # name = new_layer.display_name
107
+ #
108
+ # @return [String]
109
+ #
110
+ # @see #name
111
+ #
112
+ # @version SketchUp 2020.0
113
+ def display_name
114
+ end
115
+
116
+ # The {#line_style} method retrieves the line style on this layer.
117
+ #
118
+ # @example
119
+ # line_style = Sketchup.active_model.layers[0].line_style
120
+ #
121
+ # @return [Sketchup::LineStyle, nil] The line style retrieved.
122
+ #
123
+ # @version SketchUp 2019
124
+ def line_style
125
+ end
126
+
127
+ # The {#line_style=} method lets you set a specific line style to a layer
128
+ #
129
+ # @example
130
+ # line_style = Sketchup.active_model.line_styles["Dot"]
131
+ # Sketchup.active_model.layers[0].line_style = line_style
132
+ #
133
+ # @param [Sketchup::LineStyle, nil] line_style
134
+ # The line style to set on this layer.
135
+ #
136
+ # @return [Sketchup::Layer] The layer that the line style was applied on.
137
+ #
138
+ # @version SketchUp 2019
139
+ def line_style=(line_style)
140
+ end
141
+
142
+ # The {#name} method is used to retrieve the name of the layer.
143
+ #
144
+ # @example
145
+ # model = Sketchup.active_model
146
+ # layers = model.layers
147
+ # new_layer = layers.add "test layer"
148
+ # name = new_layer.name
149
+ #
150
+ # @return [String]
151
+ #
152
+ # @see #display_name
153
+ #
154
+ # @version SketchUp 6.0
155
+ def name
156
+ end
157
+
158
+ # The {#name=} method is used to set the name of a layer.
159
+ #
160
+ # @example
161
+ # model = Sketchup.active_model
162
+ # layers = model.layers
163
+ # new_layer = layers.add "test layer"
164
+ # name = new_layer.name = "new test layer"
165
+ #
166
+ # @param [String] name
167
+ #
168
+ # @version SketchUp 6.0
169
+ def name=(name)
170
+ end
171
+
172
+ # The {#page_behavior} method is used to retrieve the visibility behavior of the
173
+ # layer for new pages and existing pages. For example, you may want your layer
174
+ # to be visible or hidden by default in any new pages (aka Scenes) created by
175
+ # the user.
176
+ #
177
+ # A page keeps a list of layers that do not have their default behavior.
178
+ # If a layer is not in that list, then it is set to its default visibility
179
+ # determined by one of these values:
180
+ #
181
+ # The behaviour is composed of a combination of these flags:
182
+ #
183
+ # [Default visibility]
184
+ # These flags are used to set the value of {#page_behavior}. A page keeps
185
+ # a list of layers that do not have their default behavior. If a layer
186
+ # is not in that list, then it is set to its default visibility which
187
+ # is determined by one of these flags.
188
+ # - {LAYER_VISIBLE_BY_DEFAULT}: +0x0000+
189
+ # - {LAYER_HIDDEN_BY_DEFAULT}: +0x0001+
190
+ #
191
+ # [Visibility on new pages]
192
+ # You can also set this addition flag that controls the visibility of
193
+ # a layer on newly created pages.
194
+ # - {LAYER_USES_DEFAULT_VISIBILITY_ON_NEW_PAGES}: +0x0000+
195
+ # - {LAYER_IS_VISIBLE_ON_NEW_PAGES}: +0x0010+
196
+ # - {LAYER_IS_HIDDEN_ON_NEW_PAGES}: +0x0020+
197
+ #
198
+ # The default visibility for a layer is set by either
199
+ # {LAYER_VISIBLE_BY_DEFAULT} or
200
+ # {LAYER_HIDDEN_BY_DEFAULT}. This is what will be used when a page
201
+ # does not contain the visibility state of a layer.
202
+ #
203
+ # The remaining flags control the visibility of the layer for new pages.
204
+ #
205
+ # @example
206
+ # model = Sketchup.active_model
207
+ # layers = model.layers
208
+ # layer = layers.add('Test Layer')
209
+ # hidden_by_default = (layer.page_behavior & LAYER_HIDDEN_BY_DEFAULT) ==
210
+ # LAYER_HIDDEN_BY_DEFAULT
211
+ #
212
+ # @return [Integer] an integer representing the current behavior of the layer.
213
+ #
214
+ # @version SketchUp 6.0
215
+ def page_behavior
216
+ end
217
+
218
+ # The {#page_behavior=} method is used to control the layer's visibility
219
+ # behavior on existing and new pages.
220
+ #
221
+ # When you Update a page (as opposed to creating a new page) the current
222
+ # visibility of the layer is used.
223
+ #
224
+ # The behavior is composed of a combination of these flags:
225
+ #
226
+ # [Default visibility]
227
+ # These flags are used to set the value of {#page_behavior}. A page keeps
228
+ # a list of layers that do not have their default behavior. If a layer
229
+ # is not in that list, then it is set to its default visibility which
230
+ # is determined by one of these flags.
231
+ # - {LAYER_VISIBLE_BY_DEFAULT}: +0x0000+
232
+ # - {LAYER_HIDDEN_BY_DEFAULT}: +0x0001+
233
+ #
234
+ # [Visibility on new pages]
235
+ # You can also set this addition flag that controls the visibility of
236
+ # a layer on newly created pages.
237
+ # - {LAYER_USES_DEFAULT_VISIBILITY_ON_NEW_PAGES}: +0x0000+
238
+ # - {LAYER_IS_VISIBLE_ON_NEW_PAGES}: +0x0010+
239
+ # - {LAYER_IS_HIDDEN_ON_NEW_PAGES}: +0x0020+
240
+ #
241
+ # @bug Prior to SketchUp 2014 the +LAYER_HIDDEN_BY_DEFAULT+ flag
242
+ # would trigger the validation check in SketchUp that would reset the
243
+ # {#page_behavior} of the layer.
244
+ #
245
+ # @example
246
+ # layers = Sketchup.active_model.layers
247
+ # layer = layers.add('Test Layer')
248
+ # behavior = LAYER_HIDDEN_BY_DEFAULT | LAYER_IS_HIDDEN_ON_NEW_PAGES
249
+ # layer.page_behavior = behavior
250
+ #
251
+ # @param [Integer] page_behavior
252
+ #
253
+ # @version SketchUp 6.0
254
+ def page_behavior=(page_behavior)
255
+ end
256
+
257
+ # The {#visible=} method is used to set if the layer is visible.
258
+ #
259
+ # @example
260
+ # model = Sketchup.active_model
261
+ # layers = model.layers
262
+ # layer = layers.add('Hello World')
263
+ # layer.visible = false
264
+ #
265
+ # @param [Boolean] visible
266
+ #
267
+ # @version SketchUp 6.0
268
+ def visible=(visible)
269
+ end
270
+
271
+ # The {#visible?} method is used to determine if the layer is visible.
272
+ #
273
+ # @example
274
+ # model = Sketchup.active_model
275
+ # layers = model.layers
276
+ # layer = layers.add('Hello World')
277
+ # layer.visible? # Returns: true
278
+ #
279
+ # @return [Boolean]
280
+ #
281
+ # @version SketchUp 6.0
282
+ def visible?
283
+ end
284
+
285
+ end