sketchup-api-stubs 0.7.7 → 0.7.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/sketchup-api-stubs/sketchup.rb +151 -147
- data/lib/sketchup-api-stubs/stubs/{array.rb → Array.rb} +741 -741
- data/lib/sketchup-api-stubs/stubs/Geom/BoundingBox.rb +322 -322
- data/lib/sketchup-api-stubs/stubs/Geom/Bounds2d.rb +172 -172
- data/lib/sketchup-api-stubs/stubs/Geom/LatLong.rb +126 -126
- data/lib/sketchup-api-stubs/stubs/Geom/OrientedBounds2d.rb +102 -102
- data/lib/sketchup-api-stubs/stubs/Geom/Point2d.rb +400 -400
- data/lib/sketchup-api-stubs/stubs/Geom/Point3d.rb +661 -661
- data/lib/sketchup-api-stubs/stubs/Geom/PolygonMesh.rb +509 -509
- data/lib/sketchup-api-stubs/stubs/Geom/Transformation.rb +476 -478
- data/lib/sketchup-api-stubs/stubs/Geom/Transformation2d.rb +263 -263
- data/lib/sketchup-api-stubs/stubs/Geom/UTM.rb +141 -141
- data/lib/sketchup-api-stubs/stubs/Geom/Vector2d.rb +522 -522
- data/lib/sketchup-api-stubs/stubs/Geom/Vector3d.rb +693 -691
- data/lib/sketchup-api-stubs/stubs/{geom.rb → Geom.rb} +351 -351
- data/lib/sketchup-api-stubs/stubs/{languagehandler.rb → LanguageHandler.rb} +93 -92
- data/lib/sketchup-api-stubs/stubs/Layout/AngularDimension.rb +595 -573
- data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinition.rb +747 -411
- data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinitions.rb +183 -179
- data/lib/sketchup-api-stubs/stubs/Layout/ConnectionPoint.rb +70 -70
- data/lib/sketchup-api-stubs/stubs/Layout/Document.rb +517 -515
- data/lib/sketchup-api-stubs/stubs/Layout/Ellipse.rb +29 -29
- data/lib/sketchup-api-stubs/stubs/Layout/Entities.rb +148 -148
- data/lib/sketchup-api-stubs/stubs/Layout/Entity.rb +353 -353
- data/lib/sketchup-api-stubs/stubs/Layout/FormattedText.rb +354 -349
- data/lib/sketchup-api-stubs/stubs/Layout/Grid.rb +311 -311
- data/lib/sketchup-api-stubs/stubs/Layout/Group.rb +261 -261
- data/lib/sketchup-api-stubs/stubs/Layout/Image.rb +91 -91
- data/lib/sketchup-api-stubs/stubs/Layout/Label.rb +370 -370
- data/lib/sketchup-api-stubs/stubs/Layout/Layer.rb +218 -218
- data/lib/sketchup-api-stubs/stubs/Layout/LayerInstance.rb +128 -128
- data/lib/sketchup-api-stubs/stubs/Layout/Layers.rb +225 -225
- data/lib/sketchup-api-stubs/stubs/Layout/LinearDimension.rb +567 -567
- data/lib/sketchup-api-stubs/stubs/Layout/LockedEntityError.rb +10 -10
- data/lib/sketchup-api-stubs/stubs/Layout/LockedLayerError.rb +11 -11
- data/lib/sketchup-api-stubs/stubs/Layout/Page.rb +183 -183
- data/lib/sketchup-api-stubs/stubs/Layout/PageInfo.rb +387 -387
- data/lib/sketchup-api-stubs/stubs/Layout/Pages.rb +209 -209
- data/lib/sketchup-api-stubs/stubs/Layout/Path.rb +344 -344
- data/lib/sketchup-api-stubs/stubs/Layout/Rectangle.rb +174 -174
- data/lib/sketchup-api-stubs/stubs/Layout/ReferenceEntity.rb +82 -0
- data/lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb +692 -694
- data/lib/sketchup-api-stubs/stubs/Layout/Style.rb +1519 -1519
- data/lib/sketchup-api-stubs/stubs/Layout/Table.rb +290 -290
- data/lib/sketchup-api-stubs/stubs/Layout/TableCell.rb +149 -149
- data/lib/sketchup-api-stubs/stubs/Layout/TableColumn.rb +139 -139
- data/lib/sketchup-api-stubs/stubs/Layout/TableRow.rb +135 -135
- data/lib/sketchup-api-stubs/stubs/Layout.rb +25 -25
- data/lib/sketchup-api-stubs/stubs/{length.rb → Length.rb} +278 -278
- data/lib/sketchup-api-stubs/stubs/{numeric.rb → Numeric.rb} +249 -249
- data/lib/sketchup-api-stubs/stubs/Sketchup/Animation.rb +144 -144
- data/lib/sketchup-api-stubs/stubs/Sketchup/AppObserver.rb +169 -157
- data/lib/sketchup-api-stubs/stubs/Sketchup/ArcCurve.rb +209 -209
- data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionaries.rb +150 -152
- data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionary.rb +281 -286
- data/lib/sketchup-api-stubs/stubs/Sketchup/Axes.rb +149 -149
- data/lib/sketchup-api-stubs/stubs/Sketchup/Behavior.rb +302 -302
- data/lib/sketchup-api-stubs/stubs/Sketchup/Camera.rb +478 -478
- data/lib/sketchup-api-stubs/stubs/Sketchup/ClassificationSchema.rb +63 -63
- data/lib/sketchup-api-stubs/stubs/Sketchup/Classifications.rb +121 -122
- data/lib/sketchup-api-stubs/stubs/Sketchup/Color.rb +294 -294
- data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentDefinition.rb +659 -577
- data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentInstance.rb +593 -594
- data/lib/sketchup-api-stubs/stubs/Sketchup/Console.rb +76 -76
- data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionLine.rb +257 -257
- data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionPoint.rb +32 -32
- data/lib/sketchup-api-stubs/stubs/Sketchup/Curve.rb +201 -201
- data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionList.rb +449 -425
- data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionObserver.rb +74 -74
- data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionsObserver.rb +104 -104
- data/lib/sketchup-api-stubs/stubs/Sketchup/Dimension.rb +165 -165
- data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionLinear.rb +306 -306
- data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionObserver.rb +42 -42
- data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionRadial.rb +87 -87
- data/lib/sketchup-api-stubs/stubs/Sketchup/Drawingelement.rb +406 -396
- data/lib/sketchup-api-stubs/stubs/Sketchup/Edge.rb +397 -502
- data/lib/sketchup-api-stubs/stubs/Sketchup/EdgeUse.rb +211 -211
- data/lib/sketchup-api-stubs/stubs/Sketchup/Entities.rb +1239 -1126
- data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesBuilder.rb +261 -0
- data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesObserver.rb +127 -127
- data/lib/sketchup-api-stubs/stubs/Sketchup/Entity.rb +545 -545
- data/lib/sketchup-api-stubs/stubs/Sketchup/EntityObserver.rb +60 -60
- data/lib/sketchup-api-stubs/stubs/Sketchup/ExtensionsManager.rb +125 -126
- data/lib/sketchup-api-stubs/stubs/Sketchup/Face.rb +937 -917
- data/lib/sketchup-api-stubs/stubs/Sketchup/FrameChangeObserver.rb +102 -104
- data/lib/sketchup-api-stubs/stubs/Sketchup/Group.rb +750 -750
- data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Request.rb +282 -292
- data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Response.rb +62 -62
- data/lib/sketchup-api-stubs/stubs/Sketchup/Http.rb +27 -27
- data/lib/sketchup-api-stubs/stubs/Sketchup/Image.rb +468 -468
- data/lib/sketchup-api-stubs/stubs/Sketchup/ImageRep.rb +266 -266
- data/lib/sketchup-api-stubs/stubs/Sketchup/Importer.rb +189 -189
- data/lib/sketchup-api-stubs/stubs/Sketchup/InputPoint.rb +406 -405
- data/lib/sketchup-api-stubs/stubs/Sketchup/InstanceObserver.rb +84 -84
- data/lib/sketchup-api-stubs/stubs/Sketchup/InstancePath.rb +306 -306
- data/lib/sketchup-api-stubs/stubs/Sketchup/Layer.rb +326 -327
- data/lib/sketchup-api-stubs/stubs/Sketchup/LayerFolder.rb +422 -422
- data/lib/sketchup-api-stubs/stubs/Sketchup/Layers.rb +427 -427
- data/lib/sketchup-api-stubs/stubs/Sketchup/LayersObserver.rb +249 -249
- data/lib/sketchup-api-stubs/stubs/Sketchup/Licensing/ExtensionLicense.rb +86 -86
- data/lib/sketchup-api-stubs/stubs/Sketchup/Licensing.rb +48 -48
- data/lib/sketchup-api-stubs/stubs/Sketchup/LineStyle.rb +24 -24
- data/lib/sketchup-api-stubs/stubs/Sketchup/LineStyles.rb +114 -112
- data/lib/sketchup-api-stubs/stubs/Sketchup/Loop.rb +137 -137
- data/lib/sketchup-api-stubs/stubs/Sketchup/Material.rb +414 -414
- data/lib/sketchup-api-stubs/stubs/Sketchup/Materials.rb +317 -318
- data/lib/sketchup-api-stubs/stubs/Sketchup/MaterialsObserver.rb +142 -142
- data/lib/sketchup-api-stubs/stubs/Sketchup/Menu.rb +93 -93
- data/lib/sketchup-api-stubs/stubs/Sketchup/Model.rb +1652 -1654
- data/lib/sketchup-api-stubs/stubs/Sketchup/ModelObserver.rb +357 -357
- data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsManager.rb +130 -131
- data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProvider.rb +271 -284
- data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProviderObserver.rb +58 -58
- data/lib/sketchup-api-stubs/stubs/Sketchup/Overlay.rb +490 -0
- data/lib/sketchup-api-stubs/stubs/Sketchup/OverlaysManager.rb +116 -0
- data/lib/sketchup-api-stubs/stubs/Sketchup/Page.rb +797 -797
- data/lib/sketchup-api-stubs/stubs/Sketchup/Pages.rb +361 -363
- data/lib/sketchup-api-stubs/stubs/Sketchup/PagesObserver.rb +77 -77
- data/lib/sketchup-api-stubs/stubs/Sketchup/PickHelper.rb +478 -478
- data/lib/sketchup-api-stubs/stubs/Sketchup/RegionalSettings.rb +43 -43
- data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptions.rb +361 -364
- data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptionsObserver.rb +45 -45
- data/lib/sketchup-api-stubs/stubs/Sketchup/SectionPlane.rb +150 -150
- data/lib/sketchup-api-stubs/stubs/Sketchup/Selection.rb +458 -459
- data/lib/sketchup-api-stubs/stubs/Sketchup/SelectionObserver.rb +115 -115
- data/lib/sketchup-api-stubs/stubs/Sketchup/Set.rb +212 -212
- data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfo.rb +255 -257
- data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfoObserver.rb +59 -59
- data/lib/sketchup-api-stubs/stubs/Sketchup/Skp.rb +40 -40
- data/lib/sketchup-api-stubs/stubs/Sketchup/Style.rb +69 -69
- data/lib/sketchup-api-stubs/stubs/Sketchup/Styles.rb +217 -217
- data/lib/sketchup-api-stubs/stubs/Sketchup/Text.rb +262 -262
- data/lib/sketchup-api-stubs/stubs/Sketchup/Texture.rb +217 -217
- data/lib/sketchup-api-stubs/stubs/Sketchup/TextureWriter.rb +237 -237
- data/lib/sketchup-api-stubs/stubs/Sketchup/Tool.rb +834 -835
- data/lib/sketchup-api-stubs/stubs/Sketchup/Tools.rb +132 -132
- data/lib/sketchup-api-stubs/stubs/Sketchup/ToolsObserver.rb +156 -156
- data/lib/sketchup-api-stubs/stubs/Sketchup/UVHelper.rb +75 -71
- data/lib/sketchup-api-stubs/stubs/Sketchup/Vertex.rb +142 -142
- data/lib/sketchup-api-stubs/stubs/Sketchup/View.rb +1311 -1307
- data/lib/sketchup-api-stubs/stubs/Sketchup/ViewObserver.rb +45 -45
- data/lib/sketchup-api-stubs/stubs/{sketchup.rb → Sketchup.rb} +1377 -1353
- data/lib/sketchup-api-stubs/stubs/{sketchupextension.rb → SketchupExtension.rb} +353 -353
- data/lib/sketchup-api-stubs/stubs/{string.rb → String.rb} +24 -24
- data/lib/sketchup-api-stubs/stubs/UI/Command.rb +389 -317
- data/lib/sketchup-api-stubs/stubs/UI/HtmlDialog.rb +494 -478
- data/lib/sketchup-api-stubs/stubs/UI/Notification.rb +269 -269
- data/lib/sketchup-api-stubs/stubs/UI/Toolbar.rb +241 -240
- data/lib/sketchup-api-stubs/stubs/UI/WebDialog.rb +635 -633
- data/lib/sketchup-api-stubs/stubs/{ui.rb → UI.rb} +683 -672
- data/lib/sketchup-api-stubs/stubs/_top_level.rb +303 -311
- data/lib/sketchup-api-stubs.rb +1 -1
- metadata +20 -16
@@ -1,427 +1,427 @@
|
|
1
|
-
# Copyright:: Copyright
|
2
|
-
# License:: The MIT License (MIT)
|
3
|
-
|
4
|
-
# The Layers collection allows you to see and manage all of the layers in a
|
5
|
-
# model. You get a pointer to the Layers object from within the Model.
|
6
|
-
#
|
7
|
-
# @example
|
8
|
-
# model = Sketchup.active_model
|
9
|
-
# layers = model.layers
|
10
|
-
#
|
11
|
-
# @note As of SketchUp 2020 "Layers" were renamed to "Tags" in the UI.
|
12
|
-
# The API retains the use of "Layer" for compatibility and is synonymous with
|
13
|
-
# "Tag".
|
14
|
-
#
|
15
|
-
# @version SketchUp 6.0
|
16
|
-
class Sketchup::Layers < Sketchup::Entity
|
17
|
-
|
18
|
-
# Includes
|
19
|
-
|
20
|
-
include Enumerable
|
21
|
-
|
22
|
-
# Instance Methods
|
23
|
-
|
24
|
-
# The {#[]} method is used to retrieve a layer by index or name.
|
25
|
-
#
|
26
|
-
# @example
|
27
|
-
# model = Sketchup.active_model
|
28
|
-
# layers = model.layers
|
29
|
-
# new_layer = layers.add "test layer"
|
30
|
-
# layer_by_number = layers[1]
|
31
|
-
# layer_by_name = layers["test layer"]
|
32
|
-
#
|
33
|
-
# @param [Integer, String] index_or_name
|
34
|
-
# A number representing the layer's
|
35
|
-
# index in an array of Layer objects, or the name of the layer.
|
36
|
-
#
|
37
|
-
# @return [Sketchup::Layer, nil]
|
38
|
-
#
|
39
|
-
# @see #at
|
40
|
-
#
|
41
|
-
# @version SketchUp 6.0
|
42
|
-
def [](index_or_name)
|
43
|
-
end
|
44
|
-
|
45
|
-
# The {#add} method is used to add a new layer.
|
46
|
-
#
|
47
|
-
# If you give the name of a Layer that is already defined, it will return the
|
48
|
-
# existing Layer rather than adding a new one.
|
49
|
-
#
|
50
|
-
# @example
|
51
|
-
# layers = Sketchup.active_model.layers
|
52
|
-
# layer = layers.add("Test Layer")
|
53
|
-
#
|
54
|
-
# @param [String] layer_name
|
55
|
-
# The name of the added layer.
|
56
|
-
#
|
57
|
-
# @return [Sketchup::Layer]
|
58
|
-
#
|
59
|
-
# @version SketchUp 6.0
|
60
|
-
def add(layer_name)
|
61
|
-
end
|
62
|
-
alias_method :add_layer, :add
|
63
|
-
|
64
|
-
# The {#add_folder} method adds or moves a layer folder.
|
65
|
-
#
|
66
|
-
# @api TagFolder
|
67
|
-
#
|
68
|
-
# @example
|
69
|
-
# manager = Sketchup.active_model.layers
|
70
|
-
# folder = manager.add_folder('Doors')
|
71
|
-
#
|
72
|
-
# @overload add_folder(name)
|
73
|
-
#
|
74
|
-
# Adds a new folder with the given name. Unlike layers, folders do not
|
75
|
-
# need to have a unique name. But the name does have to be non-empty.
|
76
|
-
# @param [String] name
|
77
|
-
#
|
78
|
-
# @overload add_folder(folder)
|
79
|
-
#
|
80
|
-
# Moves an existing {Sketchup::LayerFolder} to the receiver. This will
|
81
|
-
# include any children in the given folder.
|
82
|
-
# @param [Sketchup::LayerFolder] folder
|
83
|
-
# @see Sketchup::LayerFolder#folder= Information on how which notifications
|
84
|
-
# trigger when reparenting an existing folder.
|
85
|
-
#
|
86
|
-
# @return [Sketchup::LayerFolder]
|
87
|
-
#
|
88
|
-
# @see #count_layers
|
89
|
-
#
|
90
|
-
# @version SketchUp 2021.0
|
91
|
-
def add_folder(arg)
|
92
|
-
end
|
93
|
-
|
94
|
-
# The {#add_observer} method is used to add an observer to the layers
|
95
|
-
# collection.
|
96
|
-
#
|
97
|
-
# @example
|
98
|
-
# layers = Sketchup.active_model.layers
|
99
|
-
# status = layers.add_observer observer
|
100
|
-
#
|
101
|
-
# @param [Sketchup::LayersObserver] observer
|
102
|
-
#
|
103
|
-
# @return [Boolean] true if successful, false if unsuccessful.
|
104
|
-
#
|
105
|
-
# @version SketchUp 6.0
|
106
|
-
def add_observer(observer)
|
107
|
-
end
|
108
|
-
|
109
|
-
# The {#at} method is an alias for {#[]}.
|
110
|
-
#
|
111
|
-
# @example
|
112
|
-
# model = Sketchup.active_model
|
113
|
-
# layers = model.layers
|
114
|
-
# new_layer = layers.add "test layer"
|
115
|
-
# layer_by_number = layers.at(1)
|
116
|
-
# layer_by_name = layers.at("test layer")
|
117
|
-
#
|
118
|
-
# @return [Sketchup::Layer, nil]
|
119
|
-
#
|
120
|
-
# @see #[]
|
121
|
-
#
|
122
|
-
# @version SketchUp 6.0
|
123
|
-
def at(index_or_name)
|
124
|
-
end
|
125
|
-
|
126
|
-
#
|
127
|
-
# @example
|
128
|
-
# layers = Sketchup.active_model.layers
|
129
|
-
# number = layers.count
|
130
|
-
#
|
131
|
-
# @note Since SketchUp 2014 the count method is inherited from Ruby's
|
132
|
-
# +
|
133
|
-
# for {#length}.
|
134
|
-
#
|
135
|
-
# @return integer - the number of layers in the collection
|
136
|
-
#
|
137
|
-
# @see #length
|
138
|
-
#
|
139
|
-
# @version SketchUp 6.0
|
140
|
-
def count
|
141
|
-
end
|
142
|
-
|
143
|
-
# The {#count_folders} method counts the number of folders which are direct
|
144
|
-
# children of the layer manager.
|
145
|
-
#
|
146
|
-
# @api TagFolder
|
147
|
-
#
|
148
|
-
# @example
|
149
|
-
# manager = Sketchup.active_model.layers
|
150
|
-
# folder = manager.add_folder('Doors')
|
151
|
-
# num_folders = manager.count_folders
|
152
|
-
#
|
153
|
-
# @return [Integer]
|
154
|
-
#
|
155
|
-
# @version SketchUp 2021.0
|
156
|
-
def count_folders
|
157
|
-
end
|
158
|
-
|
159
|
-
# The {#count_layers} method retrieves the number of layers not in a folder.
|
160
|
-
#
|
161
|
-
# @api TagFolder
|
162
|
-
#
|
163
|
-
# @example
|
164
|
-
# layers = Sketchup.active_model.layers
|
165
|
-
# number = layers.count_layers
|
166
|
-
#
|
167
|
-
# @return [Integer]
|
168
|
-
#
|
169
|
-
# @see #size
|
170
|
-
#
|
171
|
-
# @see #length
|
172
|
-
#
|
173
|
-
# @version SketchUp 2021.0
|
174
|
-
def count_layers
|
175
|
-
end
|
176
|
-
|
177
|
-
# The {#each} method is used to iterate through all of the layers in the model.
|
178
|
-
# This include layers that are nested inside folders.
|
179
|
-
#
|
180
|
-
# @example
|
181
|
-
# model = Sketchup.active_model
|
182
|
-
# layers = model.layers
|
183
|
-
# layers.add("Test layer")
|
184
|
-
# layers.each { | layer | puts layer.name }
|
185
|
-
#
|
186
|
-
# @note Don't remove content from this collection while iterating over it with
|
187
|
-
# {#each}. This would change the size of the collection and cause elements to
|
188
|
-
# be skipped as the indices change. Instead copy the current collection to an
|
189
|
-
# array using +to_a+ and then use +each+ on the array, when removing content.
|
190
|
-
#
|
191
|
-
# @version SketchUp 6.0
|
192
|
-
#
|
193
|
-
# @yield [layer]
|
194
|
-
#
|
195
|
-
# @yieldparam [Sketchup::Layer] layer
|
196
|
-
def each
|
197
|
-
end
|
198
|
-
|
199
|
-
# The {#each_folder} method is used to iterate through the folders that are
|
200
|
-
# direct children to the layer manager.
|
201
|
-
#
|
202
|
-
# @api TagFolder
|
203
|
-
#
|
204
|
-
# @example
|
205
|
-
# manager = Sketchup.active_model.layers
|
206
|
-
# folder = manager.add_folder('Doors')
|
207
|
-
# folder = manager.add_folder('Windows')
|
208
|
-
# manager.each_folder { |folder|
|
209
|
-
# puts folder.name
|
210
|
-
# }
|
211
|
-
#
|
212
|
-
# @version SketchUp 2021.0
|
213
|
-
#
|
214
|
-
# @yield [folder]
|
215
|
-
#
|
216
|
-
# @yieldparam [Sketchup::LayerFolder] folder
|
217
|
-
def each_folder
|
218
|
-
end
|
219
|
-
|
220
|
-
# The {#each_layer} method is used to iterate through the layers that are not
|
221
|
-
# inside a layer folder.
|
222
|
-
#
|
223
|
-
# @api TagFolder
|
224
|
-
#
|
225
|
-
# @example
|
226
|
-
# model = Sketchup.active_model
|
227
|
-
# layers = model.layers
|
228
|
-
# layers.add('Test layer')
|
229
|
-
# layers.each_layer { | layer | puts layer.name }
|
230
|
-
#
|
231
|
-
# @version SketchUp 2021.0
|
232
|
-
#
|
233
|
-
# @yield [layer]
|
234
|
-
#
|
235
|
-
# @yieldparam [Sketchup::Layer] layer
|
236
|
-
def each_layer
|
237
|
-
end
|
238
|
-
|
239
|
-
# The {#folders} method returns the folders of the layer manager.
|
240
|
-
#
|
241
|
-
# @api TagFolder
|
242
|
-
#
|
243
|
-
# @example
|
244
|
-
# manager = Sketchup.active_model.layers
|
245
|
-
# manager.add_folder('Doors')
|
246
|
-
# manager.add_folder('Windows')
|
247
|
-
# folders = manager.folders
|
248
|
-
#
|
249
|
-
# @note This does not return all the folders in the model, only those that are
|
250
|
-
# direct children of the layer manager.
|
251
|
-
#
|
252
|
-
# @return [Array<Sketchup::LayerFolder>]
|
253
|
-
#
|
254
|
-
# @version SketchUp 2021.0
|
255
|
-
def folders
|
256
|
-
end
|
257
|
-
|
258
|
-
# The {#layers} method retrieves the layers not in a folder.
|
259
|
-
#
|
260
|
-
# @api TagFolder
|
261
|
-
#
|
262
|
-
# @example
|
263
|
-
# manager = Sketchup.active_model.layers
|
264
|
-
# layers = manager.layers
|
265
|
-
#
|
266
|
-
# @return [Array<Sketchup::Layer>]
|
267
|
-
#
|
268
|
-
# @version SketchUp 2021.0
|
269
|
-
def layers
|
270
|
-
end
|
271
|
-
|
272
|
-
# The {#length} method retrieves the number of layers.
|
273
|
-
#
|
274
|
-
# @example
|
275
|
-
# layers = Sketchup.active_model.layers
|
276
|
-
# number = layers.length
|
277
|
-
#
|
278
|
-
# @return [Integer]
|
279
|
-
#
|
280
|
-
# @see #size
|
281
|
-
#
|
282
|
-
# @version SketchUp 6.0
|
283
|
-
def length
|
284
|
-
end
|
285
|
-
|
286
|
-
# The {#purge_unused} method is used to remove unused layers.
|
287
|
-
#
|
288
|
-
# @example
|
289
|
-
# layers = Sketchup.active_model.layers
|
290
|
-
# num_layers_removed = layers.purge_unused
|
291
|
-
#
|
292
|
-
# @return [Integer] Number of unused layers removed
|
293
|
-
#
|
294
|
-
# @see #purge_unused_folders
|
295
|
-
#
|
296
|
-
# @version SketchUp 6.0
|
297
|
-
def purge_unused
|
298
|
-
end
|
299
|
-
alias_method :purge_unused_layers, :purge_unused
|
300
|
-
|
301
|
-
# The {#purge_unused_folders} method is used to remove all layer folder with
|
302
|
-
# no children.
|
303
|
-
#
|
304
|
-
# @api TagFolder
|
305
|
-
#
|
306
|
-
# @example
|
307
|
-
# manager = Sketchup.active_model.layers
|
308
|
-
# folder = manager.add_folder('Doors')
|
309
|
-
# folder = manager.add_folder('Windows')
|
310
|
-
# manager.purge_unused_folders
|
311
|
-
#
|
312
|
-
# @version SketchUp 2021.0
|
313
|
-
#
|
314
|
-
# @yield [folder]
|
315
|
-
#
|
316
|
-
# @yieldparam [Sketchup::LayerFolder] folder
|
317
|
-
def purge_unused_folders
|
318
|
-
end
|
319
|
-
|
320
|
-
# Remove the given layer from the model, optionally removing the geometry.
|
321
|
-
#
|
322
|
-
# @example
|
323
|
-
# # Remove layer by layer reference.
|
324
|
-
# layer = Sketchup.active_model.layers.add("MyLayer")
|
325
|
-
# Sketchup.active_model.layers.remove(layer)
|
326
|
-
#
|
327
|
-
# # Remove layer by name.
|
328
|
-
# Sketchup.active_model.layers.add("MyLayer")
|
329
|
-
# Sketchup.active_model.layers.remove("MyLayer")
|
330
|
-
#
|
331
|
-
# # Remove layer by index.
|
332
|
-
# Sketchup.active_model.layers.remove(1)
|
333
|
-
#
|
334
|
-
# # Remove layer and the entities on the layer.
|
335
|
-
# edge = Sketchup.active_model.entities.add_line([0, 0, 0], [9, 9, 9])
|
336
|
-
# edge.layer = Sketchup.active_model.layers.add("MyLayer")
|
337
|
-
# Sketchup.active_model.layers.remove("MyLayer", true)
|
338
|
-
#
|
339
|
-
# @param [Sketchup::Layer, Integer, String] layer
|
340
|
-
#
|
341
|
-
# @param [Boolean] remove_geometry
|
342
|
-
# If true, geometry in the removed layer will
|
343
|
-
# be removed as well. If false (which is the default),
|
344
|
-
# this geometry will be placed on Layer 0.
|
345
|
-
#
|
346
|
-
# @return [Boolean] true if successful, false if unsuccessful.
|
347
|
-
#
|
348
|
-
# @version SketchUp 2015
|
349
|
-
def remove(layer, remove_geometry = false)
|
350
|
-
end
|
351
|
-
alias_method :remove_layer, :remove
|
352
|
-
|
353
|
-
# The {#remove_folder} method removes the folder from the model. All children are
|
354
|
-
# preserved, but moved up one level.
|
355
|
-
#
|
356
|
-
# @api TagFolder
|
357
|
-
#
|
358
|
-
# @example
|
359
|
-
# manager = Sketchup.active_model.layers
|
360
|
-
# folder = manager.add_folder('Doors')
|
361
|
-
# manager.remove_folder(folder)
|
362
|
-
#
|
363
|
-
# @param [Sketchup::LayerFolder] folder
|
364
|
-
#
|
365
|
-
# @raise [ArgumentError] if the +folder+ is not a direct child of the receiver.
|
366
|
-
#
|
367
|
-
# @return [nil]
|
368
|
-
#
|
369
|
-
# @version SketchUp 2021.0
|
370
|
-
def remove_folder(folder)
|
371
|
-
end
|
372
|
-
|
373
|
-
# The {#remove_observer} method is used to remove an observer from the current
|
374
|
-
# object.
|
375
|
-
#
|
376
|
-
# @example
|
377
|
-
# layers = Sketchup.active_model.layers
|
378
|
-
# status = layers.remove_observer observer
|
379
|
-
#
|
380
|
-
# @param [Sketchup::LayersObserver] observer
|
381
|
-
#
|
382
|
-
# @return [Boolean] true if successful, false if unsuccessful.
|
383
|
-
#
|
384
|
-
# @version SketchUp 6.0
|
385
|
-
def remove_observer(observer)
|
386
|
-
end
|
387
|
-
|
388
|
-
# The {#size} method is an alias of {#length}.
|
389
|
-
#
|
390
|
-
# @example
|
391
|
-
# layers = Sketchup.active_model.layers
|
392
|
-
# number = layers.size
|
393
|
-
#
|
394
|
-
# @return [Integer]
|
395
|
-
#
|
396
|
-
# @see #length
|
397
|
-
#
|
398
|
-
# @version SketchUp 2014
|
399
|
-
def size
|
400
|
-
end
|
401
|
-
|
402
|
-
# The {#unique_name} method can be used to get a string that will be a unique
|
403
|
-
# layer name inside this collection.
|
404
|
-
#
|
405
|
-
# @example
|
406
|
-
# model = Sketchup.active_model
|
407
|
-
# layers = model.layers
|
408
|
-
# # Will return "Joe" since there are probably no other layers named that.
|
409
|
-
# # Or might return something like "Joe #2" if there is already a layer
|
410
|
-
# # named Joe.
|
411
|
-
# good_name = layers.unique_name("Joe")
|
412
|
-
#
|
413
|
-
# @overload unique_name
|
414
|
-
#
|
415
|
-
# @return [String] Will default to using "Layer" (SketchUp2019 and older)
|
416
|
-
# or "Tag" as basename for a unique name.
|
417
|
-
#
|
418
|
-
# @overload unique_name(base_name)
|
419
|
-
#
|
420
|
-
# @param [String] base_name The base name to build the unique name from.
|
421
|
-
# @return [String]
|
422
|
-
#
|
423
|
-
# @version SketchUp 6.0
|
424
|
-
def unique_name(*args)
|
425
|
-
end
|
426
|
-
|
427
|
-
end
|
1
|
+
# Copyright:: Copyright 2023 Trimble Inc.
|
2
|
+
# License:: The MIT License (MIT)
|
3
|
+
|
4
|
+
# The Layers collection allows you to see and manage all of the layers in a
|
5
|
+
# model. You get a pointer to the Layers object from within the Model.
|
6
|
+
#
|
7
|
+
# @example
|
8
|
+
# model = Sketchup.active_model
|
9
|
+
# layers = model.layers
|
10
|
+
#
|
11
|
+
# @note As of SketchUp 2020 "Layers" were renamed to "Tags" in the UI.
|
12
|
+
# The API retains the use of "Layer" for compatibility and is synonymous with
|
13
|
+
# "Tag".
|
14
|
+
#
|
15
|
+
# @version SketchUp 6.0
|
16
|
+
class Sketchup::Layers < Sketchup::Entity
|
17
|
+
|
18
|
+
# Includes
|
19
|
+
|
20
|
+
include Enumerable
|
21
|
+
|
22
|
+
# Instance Methods
|
23
|
+
|
24
|
+
# The {#[]} method is used to retrieve a layer by index or name.
|
25
|
+
#
|
26
|
+
# @example
|
27
|
+
# model = Sketchup.active_model
|
28
|
+
# layers = model.layers
|
29
|
+
# new_layer = layers.add "test layer"
|
30
|
+
# layer_by_number = layers[1]
|
31
|
+
# layer_by_name = layers["test layer"]
|
32
|
+
#
|
33
|
+
# @param [Integer, String] index_or_name
|
34
|
+
# A number representing the layer's
|
35
|
+
# index in an array of Layer objects, or the name of the layer.
|
36
|
+
#
|
37
|
+
# @return [Sketchup::Layer, nil]
|
38
|
+
#
|
39
|
+
# @see #at
|
40
|
+
#
|
41
|
+
# @version SketchUp 6.0
|
42
|
+
def [](index_or_name)
|
43
|
+
end
|
44
|
+
|
45
|
+
# The {#add} method is used to add a new layer.
|
46
|
+
#
|
47
|
+
# If you give the name of a Layer that is already defined, it will return the
|
48
|
+
# existing Layer rather than adding a new one.
|
49
|
+
#
|
50
|
+
# @example
|
51
|
+
# layers = Sketchup.active_model.layers
|
52
|
+
# layer = layers.add("Test Layer")
|
53
|
+
#
|
54
|
+
# @param [String] layer_name
|
55
|
+
# The name of the added layer.
|
56
|
+
#
|
57
|
+
# @return [Sketchup::Layer]
|
58
|
+
#
|
59
|
+
# @version SketchUp 6.0
|
60
|
+
def add(layer_name)
|
61
|
+
end
|
62
|
+
alias_method :add_layer, :add
|
63
|
+
|
64
|
+
# The {#add_folder} method adds or moves a layer folder.
|
65
|
+
#
|
66
|
+
# @api TagFolder
|
67
|
+
#
|
68
|
+
# @example
|
69
|
+
# manager = Sketchup.active_model.layers
|
70
|
+
# folder = manager.add_folder('Doors')
|
71
|
+
#
|
72
|
+
# @overload add_folder(name)
|
73
|
+
#
|
74
|
+
# Adds a new folder with the given name. Unlike layers, folders do not
|
75
|
+
# need to have a unique name. But the name does have to be non-empty.
|
76
|
+
# @param [String] name
|
77
|
+
#
|
78
|
+
# @overload add_folder(folder)
|
79
|
+
#
|
80
|
+
# Moves an existing {Sketchup::LayerFolder} to the receiver. This will
|
81
|
+
# include any children in the given folder.
|
82
|
+
# @param [Sketchup::LayerFolder] folder
|
83
|
+
# @see Sketchup::LayerFolder#folder= Information on how which notifications
|
84
|
+
# trigger when reparenting an existing folder.
|
85
|
+
#
|
86
|
+
# @return [Sketchup::LayerFolder]
|
87
|
+
#
|
88
|
+
# @see #count_layers
|
89
|
+
#
|
90
|
+
# @version SketchUp 2021.0
|
91
|
+
def add_folder(arg)
|
92
|
+
end
|
93
|
+
|
94
|
+
# The {#add_observer} method is used to add an observer to the layers
|
95
|
+
# collection.
|
96
|
+
#
|
97
|
+
# @example
|
98
|
+
# layers = Sketchup.active_model.layers
|
99
|
+
# status = layers.add_observer observer
|
100
|
+
#
|
101
|
+
# @param [Sketchup::LayersObserver] observer
|
102
|
+
#
|
103
|
+
# @return [Boolean] true if successful, false if unsuccessful.
|
104
|
+
#
|
105
|
+
# @version SketchUp 6.0
|
106
|
+
def add_observer(observer)
|
107
|
+
end
|
108
|
+
|
109
|
+
# The {#at} method is an alias for {#[]}.
|
110
|
+
#
|
111
|
+
# @example
|
112
|
+
# model = Sketchup.active_model
|
113
|
+
# layers = model.layers
|
114
|
+
# new_layer = layers.add "test layer"
|
115
|
+
# layer_by_number = layers.at(1)
|
116
|
+
# layer_by_name = layers.at("test layer")
|
117
|
+
#
|
118
|
+
# @return [Sketchup::Layer, nil]
|
119
|
+
#
|
120
|
+
# @see #[]
|
121
|
+
#
|
122
|
+
# @version SketchUp 6.0
|
123
|
+
def at(index_or_name)
|
124
|
+
end
|
125
|
+
|
126
|
+
#
|
127
|
+
# @example
|
128
|
+
# layers = Sketchup.active_model.layers
|
129
|
+
# number = layers.count
|
130
|
+
#
|
131
|
+
# @note Since SketchUp 2014 the count method is inherited from Ruby's
|
132
|
+
# +Enumerable+ mix-in module. Prior to that the {#count} method is an alias
|
133
|
+
# for {#length}.
|
134
|
+
#
|
135
|
+
# @return integer - the number of layers in the collection
|
136
|
+
#
|
137
|
+
# @see #length
|
138
|
+
#
|
139
|
+
# @version SketchUp 6.0
|
140
|
+
def count
|
141
|
+
end
|
142
|
+
|
143
|
+
# The {#count_folders} method counts the number of folders which are direct
|
144
|
+
# children of the layer manager.
|
145
|
+
#
|
146
|
+
# @api TagFolder
|
147
|
+
#
|
148
|
+
# @example
|
149
|
+
# manager = Sketchup.active_model.layers
|
150
|
+
# folder = manager.add_folder('Doors')
|
151
|
+
# num_folders = manager.count_folders
|
152
|
+
#
|
153
|
+
# @return [Integer]
|
154
|
+
#
|
155
|
+
# @version SketchUp 2021.0
|
156
|
+
def count_folders
|
157
|
+
end
|
158
|
+
|
159
|
+
# The {#count_layers} method retrieves the number of layers not in a folder.
|
160
|
+
#
|
161
|
+
# @api TagFolder
|
162
|
+
#
|
163
|
+
# @example
|
164
|
+
# layers = Sketchup.active_model.layers
|
165
|
+
# number = layers.count_layers
|
166
|
+
#
|
167
|
+
# @return [Integer]
|
168
|
+
#
|
169
|
+
# @see #size
|
170
|
+
#
|
171
|
+
# @see #length
|
172
|
+
#
|
173
|
+
# @version SketchUp 2021.0
|
174
|
+
def count_layers
|
175
|
+
end
|
176
|
+
|
177
|
+
# The {#each} method is used to iterate through all of the layers in the model.
|
178
|
+
# This include layers that are nested inside folders.
|
179
|
+
#
|
180
|
+
# @example
|
181
|
+
# model = Sketchup.active_model
|
182
|
+
# layers = model.layers
|
183
|
+
# layers.add("Test layer")
|
184
|
+
# layers.each { | layer | puts layer.name }
|
185
|
+
#
|
186
|
+
# @note Don't remove content from this collection while iterating over it with
|
187
|
+
# {#each}. This would change the size of the collection and cause elements to
|
188
|
+
# be skipped as the indices change. Instead copy the current collection to an
|
189
|
+
# array using +to_a+ and then use +each+ on the array, when removing content.
|
190
|
+
#
|
191
|
+
# @version SketchUp 6.0
|
192
|
+
#
|
193
|
+
# @yield [layer]
|
194
|
+
#
|
195
|
+
# @yieldparam [Sketchup::Layer] layer
|
196
|
+
def each
|
197
|
+
end
|
198
|
+
|
199
|
+
# The {#each_folder} method is used to iterate through the folders that are
|
200
|
+
# direct children to the layer manager.
|
201
|
+
#
|
202
|
+
# @api TagFolder
|
203
|
+
#
|
204
|
+
# @example
|
205
|
+
# manager = Sketchup.active_model.layers
|
206
|
+
# folder = manager.add_folder('Doors')
|
207
|
+
# folder = manager.add_folder('Windows')
|
208
|
+
# manager.each_folder { |folder|
|
209
|
+
# puts folder.name
|
210
|
+
# }
|
211
|
+
#
|
212
|
+
# @version SketchUp 2021.0
|
213
|
+
#
|
214
|
+
# @yield [folder]
|
215
|
+
#
|
216
|
+
# @yieldparam [Sketchup::LayerFolder] folder
|
217
|
+
def each_folder
|
218
|
+
end
|
219
|
+
|
220
|
+
# The {#each_layer} method is used to iterate through the layers that are not
|
221
|
+
# inside a layer folder.
|
222
|
+
#
|
223
|
+
# @api TagFolder
|
224
|
+
#
|
225
|
+
# @example
|
226
|
+
# model = Sketchup.active_model
|
227
|
+
# layers = model.layers
|
228
|
+
# layers.add('Test layer')
|
229
|
+
# layers.each_layer { | layer | puts layer.name }
|
230
|
+
#
|
231
|
+
# @version SketchUp 2021.0
|
232
|
+
#
|
233
|
+
# @yield [layer]
|
234
|
+
#
|
235
|
+
# @yieldparam [Sketchup::Layer] layer
|
236
|
+
def each_layer
|
237
|
+
end
|
238
|
+
|
239
|
+
# The {#folders} method returns the folders of the layer manager.
|
240
|
+
#
|
241
|
+
# @api TagFolder
|
242
|
+
#
|
243
|
+
# @example
|
244
|
+
# manager = Sketchup.active_model.layers
|
245
|
+
# manager.add_folder('Doors')
|
246
|
+
# manager.add_folder('Windows')
|
247
|
+
# folders = manager.folders
|
248
|
+
#
|
249
|
+
# @note This does not return all the folders in the model, only those that are
|
250
|
+
# direct children of the layer manager.
|
251
|
+
#
|
252
|
+
# @return [Array<Sketchup::LayerFolder>]
|
253
|
+
#
|
254
|
+
# @version SketchUp 2021.0
|
255
|
+
def folders
|
256
|
+
end
|
257
|
+
|
258
|
+
# The {#layers} method retrieves the layers not in a folder.
|
259
|
+
#
|
260
|
+
# @api TagFolder
|
261
|
+
#
|
262
|
+
# @example
|
263
|
+
# manager = Sketchup.active_model.layers
|
264
|
+
# layers = manager.layers
|
265
|
+
#
|
266
|
+
# @return [Array<Sketchup::Layer>]
|
267
|
+
#
|
268
|
+
# @version SketchUp 2021.0
|
269
|
+
def layers
|
270
|
+
end
|
271
|
+
|
272
|
+
# The {#length} method retrieves the number of layers.
|
273
|
+
#
|
274
|
+
# @example
|
275
|
+
# layers = Sketchup.active_model.layers
|
276
|
+
# number = layers.length
|
277
|
+
#
|
278
|
+
# @return [Integer]
|
279
|
+
#
|
280
|
+
# @see #size
|
281
|
+
#
|
282
|
+
# @version SketchUp 6.0
|
283
|
+
def length
|
284
|
+
end
|
285
|
+
|
286
|
+
# The {#purge_unused} method is used to remove unused layers.
|
287
|
+
#
|
288
|
+
# @example
|
289
|
+
# layers = Sketchup.active_model.layers
|
290
|
+
# num_layers_removed = layers.purge_unused
|
291
|
+
#
|
292
|
+
# @return [Integer] Number of unused layers removed
|
293
|
+
#
|
294
|
+
# @see #purge_unused_folders
|
295
|
+
#
|
296
|
+
# @version SketchUp 6.0
|
297
|
+
def purge_unused
|
298
|
+
end
|
299
|
+
alias_method :purge_unused_layers, :purge_unused
|
300
|
+
|
301
|
+
# The {#purge_unused_folders} method is used to remove all layer folder with
|
302
|
+
# no children.
|
303
|
+
#
|
304
|
+
# @api TagFolder
|
305
|
+
#
|
306
|
+
# @example
|
307
|
+
# manager = Sketchup.active_model.layers
|
308
|
+
# folder = manager.add_folder('Doors')
|
309
|
+
# folder = manager.add_folder('Windows')
|
310
|
+
# manager.purge_unused_folders
|
311
|
+
#
|
312
|
+
# @version SketchUp 2021.0
|
313
|
+
#
|
314
|
+
# @yield [folder]
|
315
|
+
#
|
316
|
+
# @yieldparam [Sketchup::LayerFolder] folder
|
317
|
+
def purge_unused_folders
|
318
|
+
end
|
319
|
+
|
320
|
+
# Remove the given layer from the model, optionally removing the geometry.
|
321
|
+
#
|
322
|
+
# @example
|
323
|
+
# # Remove layer by layer reference.
|
324
|
+
# layer = Sketchup.active_model.layers.add("MyLayer")
|
325
|
+
# Sketchup.active_model.layers.remove(layer)
|
326
|
+
#
|
327
|
+
# # Remove layer by name.
|
328
|
+
# Sketchup.active_model.layers.add("MyLayer")
|
329
|
+
# Sketchup.active_model.layers.remove("MyLayer")
|
330
|
+
#
|
331
|
+
# # Remove layer by index.
|
332
|
+
# Sketchup.active_model.layers.remove(1)
|
333
|
+
#
|
334
|
+
# # Remove layer and the entities on the layer.
|
335
|
+
# edge = Sketchup.active_model.entities.add_line([0, 0, 0], [9, 9, 9])
|
336
|
+
# edge.layer = Sketchup.active_model.layers.add("MyLayer")
|
337
|
+
# Sketchup.active_model.layers.remove("MyLayer", true)
|
338
|
+
#
|
339
|
+
# @param [Sketchup::Layer, Integer, String] layer
|
340
|
+
#
|
341
|
+
# @param [Boolean] remove_geometry
|
342
|
+
# If true, geometry in the removed layer will
|
343
|
+
# be removed as well. If false (which is the default),
|
344
|
+
# this geometry will be placed on Layer 0.
|
345
|
+
#
|
346
|
+
# @return [Boolean] true if successful, false if unsuccessful.
|
347
|
+
#
|
348
|
+
# @version SketchUp 2015
|
349
|
+
def remove(layer, remove_geometry = false)
|
350
|
+
end
|
351
|
+
alias_method :remove_layer, :remove
|
352
|
+
|
353
|
+
# The {#remove_folder} method removes the folder from the model. All children are
|
354
|
+
# preserved, but moved up one level.
|
355
|
+
#
|
356
|
+
# @api TagFolder
|
357
|
+
#
|
358
|
+
# @example
|
359
|
+
# manager = Sketchup.active_model.layers
|
360
|
+
# folder = manager.add_folder('Doors')
|
361
|
+
# manager.remove_folder(folder)
|
362
|
+
#
|
363
|
+
# @param [Sketchup::LayerFolder] folder
|
364
|
+
#
|
365
|
+
# @raise [ArgumentError] if the +folder+ is not a direct child of the receiver.
|
366
|
+
#
|
367
|
+
# @return [nil]
|
368
|
+
#
|
369
|
+
# @version SketchUp 2021.0
|
370
|
+
def remove_folder(folder)
|
371
|
+
end
|
372
|
+
|
373
|
+
# The {#remove_observer} method is used to remove an observer from the current
|
374
|
+
# object.
|
375
|
+
#
|
376
|
+
# @example
|
377
|
+
# layers = Sketchup.active_model.layers
|
378
|
+
# status = layers.remove_observer observer
|
379
|
+
#
|
380
|
+
# @param [Sketchup::LayersObserver] observer
|
381
|
+
#
|
382
|
+
# @return [Boolean] true if successful, false if unsuccessful.
|
383
|
+
#
|
384
|
+
# @version SketchUp 6.0
|
385
|
+
def remove_observer(observer)
|
386
|
+
end
|
387
|
+
|
388
|
+
# The {#size} method is an alias of {#length}.
|
389
|
+
#
|
390
|
+
# @example
|
391
|
+
# layers = Sketchup.active_model.layers
|
392
|
+
# number = layers.size
|
393
|
+
#
|
394
|
+
# @return [Integer]
|
395
|
+
#
|
396
|
+
# @see #length
|
397
|
+
#
|
398
|
+
# @version SketchUp 2014
|
399
|
+
def size
|
400
|
+
end
|
401
|
+
|
402
|
+
# The {#unique_name} method can be used to get a string that will be a unique
|
403
|
+
# layer name inside this collection.
|
404
|
+
#
|
405
|
+
# @example
|
406
|
+
# model = Sketchup.active_model
|
407
|
+
# layers = model.layers
|
408
|
+
# # Will return "Joe" since there are probably no other layers named that.
|
409
|
+
# # Or might return something like "Joe #2" if there is already a layer
|
410
|
+
# # named Joe.
|
411
|
+
# good_name = layers.unique_name("Joe")
|
412
|
+
#
|
413
|
+
# @overload unique_name
|
414
|
+
#
|
415
|
+
# @return [String] Will default to using "Layer" (SketchUp2019 and older)
|
416
|
+
# or "Tag" as basename for a unique name.
|
417
|
+
#
|
418
|
+
# @overload unique_name(base_name)
|
419
|
+
#
|
420
|
+
# @param [String] base_name The base name to build the unique name from.
|
421
|
+
# @return [String]
|
422
|
+
#
|
423
|
+
# @version SketchUp 6.0
|
424
|
+
def unique_name(*args)
|
425
|
+
end
|
426
|
+
|
427
|
+
end
|