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,144 +1,144 @@
|
|
1
|
-
# Copyright:: Copyright
|
2
|
-
# License:: The MIT License (MIT)
|
3
|
-
|
4
|
-
# The {Sketchup::Animation} interface is implemented to create animations
|
5
|
-
# inside SketchUp. At any given time, a single animation can be active on a
|
6
|
-
# {Sketchup::View}. To make your own, build a Ruby class that contains the
|
7
|
-
# methods described below:
|
8
|
-
#
|
9
|
-
# # This is an example of a simple animation that floats the camera up to
|
10
|
-
# # a z position of 200". The only required method for an animation is
|
11
|
-
# # nextFrame. It is called whenever you need to show the next frame of
|
12
|
-
# # the animation. If nextFrame returns false, the animation will stop.
|
13
|
-
# class FloatUpAnimation
|
14
|
-
# def nextFrame(view)
|
15
|
-
# new_eye = view.camera.eye
|
16
|
-
# new_eye.z = new_eye.z + 1.0
|
17
|
-
# view.camera.set(new_eye, view.camera.target, view.camera.up)
|
18
|
-
# view.show_frame
|
19
|
-
# return new_eye.z < 500.0
|
20
|
-
# end
|
21
|
-
# end
|
22
|
-
#
|
23
|
-
# # This adds an item to the Camera menu to activate our custom animation.
|
24
|
-
# UI.menu("Camera").add_item("Run Float Up Animation") {
|
25
|
-
# Sketchup.active_model.active_view.animation = FloatUpAnimation.new
|
26
|
-
# }
|
27
|
-
#
|
28
|
-
# {Sketchup::Animation} objects are activated by using the
|
29
|
-
# {Sketchup::View#animation=} method on a {Sketchup::View}
|
30
|
-
# object. To stop an animation set the view's animation object to +nil+, like
|
31
|
-
# so:
|
32
|
-
#
|
33
|
-
# Sketchup.active_model.active_view.animation = nil
|
34
|
-
#
|
35
|
-
# @abstract Implement the methods described in this class to create a an
|
36
|
-
# animation. You can not sub-class this class because it is not defined by
|
37
|
-
# the API.
|
38
|
-
#
|
39
|
-
# @version SketchUp 6.0
|
40
|
-
class Sketchup::Animation
|
41
|
-
|
42
|
-
# Instance Methods
|
43
|
-
|
44
|
-
# The {#nextFrame} method is invoked by SketchUp to tell the animation to
|
45
|
-
# display its next frame. This method should set up the camera and then call
|
46
|
-
# {Sketchup::View#show_frame}.
|
47
|
-
#
|
48
|
-
# The {#nextFrame} method is the only required method of the
|
49
|
-
# {Sketchup::Animation} interface that you must implement.
|
50
|
-
#
|
51
|
-
# @example
|
52
|
-
# def nextFrame(view)
|
53
|
-
# # Insert your handler code for updating the camera or other entities.
|
54
|
-
# view.show_frame
|
55
|
-
# return true
|
56
|
-
# end
|
57
|
-
#
|
58
|
-
# @param [Sketchup::View] view
|
59
|
-
# The view for the animation.
|
60
|
-
#
|
61
|
-
# @return [Boolean] continue - +true+ if you want the animation to continue
|
62
|
-
# on to the next frame, +false+ if you want the animation
|
63
|
-
# to stop after this frame.
|
64
|
-
#
|
65
|
-
# @version SketchUp 6.0
|
66
|
-
#
|
67
|
-
# @version SketchUp 6.0
|
68
|
-
def nextFrame(view)
|
69
|
-
end
|
70
|
-
|
71
|
-
# The {#pause} method is invoked by SketchUp when the animation is paused.
|
72
|
-
#
|
73
|
-
# This method is optional (you do not need to implement this method unless you
|
74
|
-
# want to perform some specialized function when the animation is paused). You
|
75
|
-
# cannot call this method in your code explicitly and expect an animation to
|
76
|
-
# pause, only certain SketchUp events cause the method to be called.
|
77
|
-
#
|
78
|
-
# @example
|
79
|
-
# def pause
|
80
|
-
# # Insert handler code for whatever you need to do when it is paused.
|
81
|
-
# end
|
82
|
-
#
|
83
|
-
# @note The user interface for pausing and resuming animations isn't integrated
|
84
|
-
# with the Ruby API in the current version, so this method is probably not
|
85
|
-
# useful to you.
|
86
|
-
#
|
87
|
-
# @return [nil]
|
88
|
-
#
|
89
|
-
# @version SketchUp 6.0
|
90
|
-
def pause
|
91
|
-
end
|
92
|
-
|
93
|
-
# The {#resume} method is invoked by SketchUp when the animation is resumed
|
94
|
-
# after being paused.
|
95
|
-
#
|
96
|
-
# This method is optional (you do not need to implement this method unless you
|
97
|
-
# want to perform some specialized function when the animation is resumed).
|
98
|
-
# You cannot call this method in your code explicitly and expect an animation
|
99
|
-
# to stop, only certain SketchUp events cause the method to be called.
|
100
|
-
#
|
101
|
-
# @example
|
102
|
-
# def resume
|
103
|
-
# # Insert your handler code for whatever you need to do as you resume.
|
104
|
-
# end
|
105
|
-
#
|
106
|
-
# @note The user interface for pausing and resuming animations isn't integrated
|
107
|
-
# with the Ruby API in the current version, so this method is probably not
|
108
|
-
# useful to you.
|
109
|
-
#
|
110
|
-
# @return [nil]
|
111
|
-
#
|
112
|
-
# @version SketchUp 6.0
|
113
|
-
def resume
|
114
|
-
end
|
115
|
-
|
116
|
-
# The {#stop} method is invoked by SketchUp when the animation is stopped.
|
117
|
-
#
|
118
|
-
# This method is optional (you do not need to implement this method unless you
|
119
|
-
# want to perform some specialized function when the animation is stopped). You
|
120
|
-
# cannot call this method in your code explicitly and expect an animation to
|
121
|
-
# stop, only certain SketchUp events cause the method to be called.
|
122
|
-
#
|
123
|
-
# Perhaps the most common way for this method to be called is when your Ruby
|
124
|
-
# code sets {Sketchup::View#animation=} to +nil+. See the class comments for
|
125
|
-
# an example of this.
|
126
|
-
#
|
127
|
-
# @example
|
128
|
-
# class MyAnimation
|
129
|
-
# def stop
|
130
|
-
# # Insert your handler code for cleaning up after your animation.
|
131
|
-
# end
|
132
|
-
# end
|
133
|
-
#
|
134
|
-
# @note Do not call {#Sketchup::View#animation=} from this method. This will
|
135
|
-
# cause a recursive loop and crash SketchUp 2017 and earlier versions.
|
136
|
-
# As of SketchUp 2018 this will raise a +RunTimeError+.
|
137
|
-
#
|
138
|
-
# @return [nil]
|
139
|
-
#
|
140
|
-
# @version SketchUp 6.0
|
141
|
-
def stop
|
142
|
-
end
|
143
|
-
|
144
|
-
end
|
1
|
+
# Copyright:: Copyright 2023 Trimble Inc.
|
2
|
+
# License:: The MIT License (MIT)
|
3
|
+
|
4
|
+
# The {Sketchup::Animation} interface is implemented to create animations
|
5
|
+
# inside SketchUp. At any given time, a single animation can be active on a
|
6
|
+
# {Sketchup::View}. To make your own, build a Ruby class that contains the
|
7
|
+
# methods described below:
|
8
|
+
#
|
9
|
+
# # This is an example of a simple animation that floats the camera up to
|
10
|
+
# # a z position of 200". The only required method for an animation is
|
11
|
+
# # nextFrame. It is called whenever you need to show the next frame of
|
12
|
+
# # the animation. If nextFrame returns false, the animation will stop.
|
13
|
+
# class FloatUpAnimation
|
14
|
+
# def nextFrame(view)
|
15
|
+
# new_eye = view.camera.eye
|
16
|
+
# new_eye.z = new_eye.z + 1.0
|
17
|
+
# view.camera.set(new_eye, view.camera.target, view.camera.up)
|
18
|
+
# view.show_frame
|
19
|
+
# return new_eye.z < 500.0
|
20
|
+
# end
|
21
|
+
# end
|
22
|
+
#
|
23
|
+
# # This adds an item to the Camera menu to activate our custom animation.
|
24
|
+
# UI.menu("Camera").add_item("Run Float Up Animation") {
|
25
|
+
# Sketchup.active_model.active_view.animation = FloatUpAnimation.new
|
26
|
+
# }
|
27
|
+
#
|
28
|
+
# {Sketchup::Animation} objects are activated by using the
|
29
|
+
# {Sketchup::View#animation=} method on a {Sketchup::View}
|
30
|
+
# object. To stop an animation set the view's animation object to +nil+, like
|
31
|
+
# so:
|
32
|
+
#
|
33
|
+
# Sketchup.active_model.active_view.animation = nil
|
34
|
+
#
|
35
|
+
# @abstract Implement the methods described in this class to create a an
|
36
|
+
# animation. You can not sub-class this class because it is not defined by
|
37
|
+
# the API.
|
38
|
+
#
|
39
|
+
# @version SketchUp 6.0
|
40
|
+
class Sketchup::Animation
|
41
|
+
|
42
|
+
# Instance Methods
|
43
|
+
|
44
|
+
# The {#nextFrame} method is invoked by SketchUp to tell the animation to
|
45
|
+
# display its next frame. This method should set up the camera and then call
|
46
|
+
# {Sketchup::View#show_frame}.
|
47
|
+
#
|
48
|
+
# The {#nextFrame} method is the only required method of the
|
49
|
+
# {Sketchup::Animation} interface that you must implement.
|
50
|
+
#
|
51
|
+
# @example
|
52
|
+
# def nextFrame(view)
|
53
|
+
# # Insert your handler code for updating the camera or other entities.
|
54
|
+
# view.show_frame
|
55
|
+
# return true
|
56
|
+
# end
|
57
|
+
#
|
58
|
+
# @param [Sketchup::View] view
|
59
|
+
# The view for the animation.
|
60
|
+
#
|
61
|
+
# @return [Boolean] continue - +true+ if you want the animation to continue
|
62
|
+
# on to the next frame, +false+ if you want the animation
|
63
|
+
# to stop after this frame.
|
64
|
+
#
|
65
|
+
# @version SketchUp 6.0
|
66
|
+
#
|
67
|
+
# @version SketchUp 6.0
|
68
|
+
def nextFrame(view)
|
69
|
+
end
|
70
|
+
|
71
|
+
# The {#pause} method is invoked by SketchUp when the animation is paused.
|
72
|
+
#
|
73
|
+
# This method is optional (you do not need to implement this method unless you
|
74
|
+
# want to perform some specialized function when the animation is paused). You
|
75
|
+
# cannot call this method in your code explicitly and expect an animation to
|
76
|
+
# pause, only certain SketchUp events cause the method to be called.
|
77
|
+
#
|
78
|
+
# @example
|
79
|
+
# def pause
|
80
|
+
# # Insert handler code for whatever you need to do when it is paused.
|
81
|
+
# end
|
82
|
+
#
|
83
|
+
# @note The user interface for pausing and resuming animations isn't integrated
|
84
|
+
# with the Ruby API in the current version, so this method is probably not
|
85
|
+
# useful to you.
|
86
|
+
#
|
87
|
+
# @return [nil]
|
88
|
+
#
|
89
|
+
# @version SketchUp 6.0
|
90
|
+
def pause
|
91
|
+
end
|
92
|
+
|
93
|
+
# The {#resume} method is invoked by SketchUp when the animation is resumed
|
94
|
+
# after being paused.
|
95
|
+
#
|
96
|
+
# This method is optional (you do not need to implement this method unless you
|
97
|
+
# want to perform some specialized function when the animation is resumed).
|
98
|
+
# You cannot call this method in your code explicitly and expect an animation
|
99
|
+
# to stop, only certain SketchUp events cause the method to be called.
|
100
|
+
#
|
101
|
+
# @example
|
102
|
+
# def resume
|
103
|
+
# # Insert your handler code for whatever you need to do as you resume.
|
104
|
+
# end
|
105
|
+
#
|
106
|
+
# @note The user interface for pausing and resuming animations isn't integrated
|
107
|
+
# with the Ruby API in the current version, so this method is probably not
|
108
|
+
# useful to you.
|
109
|
+
#
|
110
|
+
# @return [nil]
|
111
|
+
#
|
112
|
+
# @version SketchUp 6.0
|
113
|
+
def resume
|
114
|
+
end
|
115
|
+
|
116
|
+
# The {#stop} method is invoked by SketchUp when the animation is stopped.
|
117
|
+
#
|
118
|
+
# This method is optional (you do not need to implement this method unless you
|
119
|
+
# want to perform some specialized function when the animation is stopped). You
|
120
|
+
# cannot call this method in your code explicitly and expect an animation to
|
121
|
+
# stop, only certain SketchUp events cause the method to be called.
|
122
|
+
#
|
123
|
+
# Perhaps the most common way for this method to be called is when your Ruby
|
124
|
+
# code sets {Sketchup::View#animation=} to +nil+. See the class comments for
|
125
|
+
# an example of this.
|
126
|
+
#
|
127
|
+
# @example
|
128
|
+
# class MyAnimation
|
129
|
+
# def stop
|
130
|
+
# # Insert your handler code for cleaning up after your animation.
|
131
|
+
# end
|
132
|
+
# end
|
133
|
+
#
|
134
|
+
# @note Do not call {#Sketchup::View#animation=} from this method. This will
|
135
|
+
# cause a recursive loop and crash SketchUp 2017 and earlier versions.
|
136
|
+
# As of SketchUp 2018 this will raise a +RunTimeError+.
|
137
|
+
#
|
138
|
+
# @return [nil]
|
139
|
+
#
|
140
|
+
# @version SketchUp 6.0
|
141
|
+
def stop
|
142
|
+
end
|
143
|
+
|
144
|
+
end
|
@@ -1,157 +1,169 @@
|
|
1
|
-
# Copyright:: Copyright
|
2
|
-
# License:: The MIT License (MIT)
|
3
|
-
|
4
|
-
# This observer interface is implemented to react to application events.
|
5
|
-
# This interface is often used to attach other observers to models as they
|
6
|
-
# are opened or started.
|
7
|
-
# This ensures that your observers are watching all open models.
|
8
|
-
#
|
9
|
-
# For example, when one attaches a {Sketchup::SelectionObserver}, it is only
|
10
|
-
# attached to the {Sketchup::Selection} collection of a given model. If a 2nd
|
11
|
-
# model is opened, the new model's selection changes will not fire selection
|
12
|
-
# callbacks unless you've attached a {Sketchup::SelectionObserver} to the new
|
13
|
-
# model as well. By watching for {#onNewModel}, you can be sure to do so.
|
14
|
-
#
|
15
|
-
# @abstract To implement this observer, create a Ruby class of this type, override the
|
16
|
-
# desired methods, and add an instance of the observer to the
|
17
|
-
# application class.
|
18
|
-
#
|
19
|
-
# @example
|
20
|
-
# # This is an example of an observer that watches the application for
|
21
|
-
# # new models and shows a messagebox.
|
22
|
-
# class MyAppObserver < Sketchup::AppObserver
|
23
|
-
# def onNewModel(model)
|
24
|
-
# puts "onNewModel: #{model}"
|
25
|
-
#
|
26
|
-
# # Here is where one might attach other observers to the new model.
|
27
|
-
# model.selection.add_observer(MySelectionObserver.new)
|
28
|
-
# end
|
29
|
-
# end
|
30
|
-
#
|
31
|
-
# # Attach the observer
|
32
|
-
# Sketchup.add_observer(MyAppObserver.new)
|
33
|
-
#
|
34
|
-
# @version SketchUp 6.0
|
35
|
-
class Sketchup::AppObserver
|
36
|
-
|
37
|
-
# Instance Methods
|
38
|
-
|
39
|
-
# The {#expectsStartupModelNotifications} method is called to determine if the
|
40
|
-
# observer expects to receive {#onNewModel} and {#onOpenModel} calls for the
|
41
|
-
# models that are created or opened at SketchUp startup. This includes the
|
42
|
-
# empty initial model, a model opened via command line arguments, or
|
43
|
-
# auto-restored models on Mac OS X.
|
44
|
-
#
|
45
|
-
# @example
|
46
|
-
# def expectsStartupModelNotifications
|
47
|
-
# return true
|
48
|
-
# end
|
49
|
-
#
|
50
|
-
# @note Prior to SketchUp 2014, {#onNewModel} and {#onOpenModel} were
|
51
|
-
# not being called for the startup models. This issue is now fixed but
|
52
|
-
# observers still need to express their intent to receive these calls. This is
|
53
|
-
# for back-compatibility with existing scripts which worked around these
|
54
|
-
# missing calls by other means. For new code, this method should be implemented
|
55
|
-
# and should return +true+.
|
56
|
-
#
|
57
|
-
# @return [Boolean] +true+ to receive {#onNewModel} and {#onOpenModel} calls
|
58
|
-
# for startup models. Return +false+ or simply not
|
59
|
-
# implement the method in order to not receive these calls
|
60
|
-
# (which was the behavior prior to SketchUp 2014).
|
61
|
-
#
|
62
|
-
# @version SketchUp 2014
|
63
|
-
def expectsStartupModelNotifications
|
64
|
-
end
|
65
|
-
|
66
|
-
# The {#onActivateModel} method is called when an open model is activated. This
|
67
|
-
# is relevant on Mac only which supports multiple documents to be opened
|
68
|
-
# simultaneously.
|
69
|
-
#
|
70
|
-
# @example
|
71
|
-
# def onActivateModel(model)
|
72
|
-
# puts "onActivateModel: #{model}"
|
73
|
-
# end
|
74
|
-
#
|
75
|
-
# @param [Sketchup::Model] model
|
76
|
-
# The newly-activated model object.
|
77
|
-
#
|
78
|
-
# @return [nil]
|
79
|
-
#
|
80
|
-
# @version SketchUp 2015
|
81
|
-
def onActivateModel(model)
|
82
|
-
end
|
83
|
-
|
84
|
-
# The {#
|
85
|
-
#
|
86
|
-
#
|
87
|
-
# @example
|
88
|
-
# def
|
89
|
-
# puts "
|
90
|
-
# end
|
91
|
-
#
|
92
|
-
# @
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
#
|
97
|
-
#
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
#
|
102
|
-
#
|
103
|
-
#
|
104
|
-
# @
|
105
|
-
#
|
106
|
-
#
|
107
|
-
#
|
108
|
-
#
|
109
|
-
# @
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
#
|
114
|
-
#
|
115
|
-
#
|
116
|
-
#
|
117
|
-
#
|
118
|
-
#
|
119
|
-
#
|
120
|
-
#
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
#
|
125
|
-
#
|
126
|
-
#
|
127
|
-
# @
|
128
|
-
#
|
129
|
-
#
|
130
|
-
#
|
131
|
-
#
|
132
|
-
# @
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
#
|
139
|
-
#
|
140
|
-
#
|
141
|
-
#
|
142
|
-
#
|
143
|
-
#
|
144
|
-
#
|
145
|
-
#
|
146
|
-
#
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
#
|
151
|
-
#
|
152
|
-
#
|
153
|
-
#
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
1
|
+
# Copyright:: Copyright 2023 Trimble Inc.
|
2
|
+
# License:: The MIT License (MIT)
|
3
|
+
|
4
|
+
# This observer interface is implemented to react to application events.
|
5
|
+
# This interface is often used to attach other observers to models as they
|
6
|
+
# are opened or started.
|
7
|
+
# This ensures that your observers are watching all open models.
|
8
|
+
#
|
9
|
+
# For example, when one attaches a {Sketchup::SelectionObserver}, it is only
|
10
|
+
# attached to the {Sketchup::Selection} collection of a given model. If a 2nd
|
11
|
+
# model is opened, the new model's selection changes will not fire selection
|
12
|
+
# callbacks unless you've attached a {Sketchup::SelectionObserver} to the new
|
13
|
+
# model as well. By watching for {#onNewModel}, you can be sure to do so.
|
14
|
+
#
|
15
|
+
# @abstract To implement this observer, create a Ruby class of this type, override the
|
16
|
+
# desired methods, and add an instance of the observer to the
|
17
|
+
# application class.
|
18
|
+
#
|
19
|
+
# @example
|
20
|
+
# # This is an example of an observer that watches the application for
|
21
|
+
# # new models and shows a messagebox.
|
22
|
+
# class MyAppObserver < Sketchup::AppObserver
|
23
|
+
# def onNewModel(model)
|
24
|
+
# puts "onNewModel: #{model}"
|
25
|
+
#
|
26
|
+
# # Here is where one might attach other observers to the new model.
|
27
|
+
# model.selection.add_observer(MySelectionObserver.new)
|
28
|
+
# end
|
29
|
+
# end
|
30
|
+
#
|
31
|
+
# # Attach the observer
|
32
|
+
# Sketchup.add_observer(MyAppObserver.new)
|
33
|
+
#
|
34
|
+
# @version SketchUp 6.0
|
35
|
+
class Sketchup::AppObserver
|
36
|
+
|
37
|
+
# Instance Methods
|
38
|
+
|
39
|
+
# The {#expectsStartupModelNotifications} method is called to determine if the
|
40
|
+
# observer expects to receive {#onNewModel} and {#onOpenModel} calls for the
|
41
|
+
# models that are created or opened at SketchUp startup. This includes the
|
42
|
+
# empty initial model, a model opened via command line arguments, or
|
43
|
+
# auto-restored models on Mac OS X.
|
44
|
+
#
|
45
|
+
# @example
|
46
|
+
# def expectsStartupModelNotifications
|
47
|
+
# return true
|
48
|
+
# end
|
49
|
+
#
|
50
|
+
# @note Prior to SketchUp 2014, {#onNewModel} and {#onOpenModel} were
|
51
|
+
# not being called for the startup models. This issue is now fixed but
|
52
|
+
# observers still need to express their intent to receive these calls. This is
|
53
|
+
# for back-compatibility with existing scripts which worked around these
|
54
|
+
# missing calls by other means. For new code, this method should be implemented
|
55
|
+
# and should return +true+.
|
56
|
+
#
|
57
|
+
# @return [Boolean] +true+ to receive {#onNewModel} and {#onOpenModel} calls
|
58
|
+
# for startup models. Return +false+ or simply not
|
59
|
+
# implement the method in order to not receive these calls
|
60
|
+
# (which was the behavior prior to SketchUp 2014).
|
61
|
+
#
|
62
|
+
# @version SketchUp 2014
|
63
|
+
def expectsStartupModelNotifications
|
64
|
+
end
|
65
|
+
|
66
|
+
# The {#onActivateModel} method is called when an open model is activated. This
|
67
|
+
# is relevant on Mac only which supports multiple documents to be opened
|
68
|
+
# simultaneously.
|
69
|
+
#
|
70
|
+
# @example
|
71
|
+
# def onActivateModel(model)
|
72
|
+
# puts "onActivateModel: #{model}"
|
73
|
+
# end
|
74
|
+
#
|
75
|
+
# @param [Sketchup::Model] model
|
76
|
+
# The newly-activated model object.
|
77
|
+
#
|
78
|
+
# @return [nil]
|
79
|
+
#
|
80
|
+
# @version SketchUp 2015
|
81
|
+
def onActivateModel(model)
|
82
|
+
end
|
83
|
+
|
84
|
+
# The {#onExtensionsLoaded} method is called when SketchUp has finished loading
|
85
|
+
# all extensions when the application starts.
|
86
|
+
#
|
87
|
+
# @example
|
88
|
+
# def onExtensionsLoaded
|
89
|
+
# puts "onExtensionsLoaded"
|
90
|
+
# end
|
91
|
+
#
|
92
|
+
# @version SketchUp 2022.0
|
93
|
+
def onExtensionsLoaded
|
94
|
+
end
|
95
|
+
|
96
|
+
# The {#onNewModel} method is called when the application creates a new, empty
|
97
|
+
# model.
|
98
|
+
#
|
99
|
+
# @example
|
100
|
+
# def onNewModel(model)
|
101
|
+
# puts "onNewModel: #{model}"
|
102
|
+
# end
|
103
|
+
#
|
104
|
+
# @param [Sketchup::Model] model
|
105
|
+
# The active model object.
|
106
|
+
#
|
107
|
+
# @return [nil]
|
108
|
+
#
|
109
|
+
# @version SketchUp 6.0
|
110
|
+
def onNewModel(model)
|
111
|
+
end
|
112
|
+
|
113
|
+
# The {#onOpenModel} method is called when the application opens an existing
|
114
|
+
# model.
|
115
|
+
#
|
116
|
+
# @example
|
117
|
+
# def onOpenModel(model)
|
118
|
+
# puts "onOpenModel: #{model}"
|
119
|
+
# end
|
120
|
+
#
|
121
|
+
# @note If a skp file is loaded via the command line or double-clicking on
|
122
|
+
# a skp in explorer (which is also is the command line) then this
|
123
|
+
# observer will not be called. The Ruby interpreter in SketchUp is
|
124
|
+
# initialized after command line processing so the observer won't
|
125
|
+
# be added in time to get the notification.
|
126
|
+
#
|
127
|
+
# @param [Sketchup::Model] model
|
128
|
+
# The active model object.
|
129
|
+
#
|
130
|
+
# @return [nil]
|
131
|
+
#
|
132
|
+
# @version SketchUp 6.0
|
133
|
+
def onOpenModel(model)
|
134
|
+
end
|
135
|
+
|
136
|
+
# The {#onQuit} method is called when SketchUp closes. This is useful if you
|
137
|
+
# need to clean up anything or store your application state upon close.
|
138
|
+
#
|
139
|
+
# @example
|
140
|
+
# def onQuit()
|
141
|
+
# puts "onQuit"
|
142
|
+
# end
|
143
|
+
#
|
144
|
+
# @return [nil]
|
145
|
+
#
|
146
|
+
# @version SketchUp 6.0
|
147
|
+
def onQuit
|
148
|
+
end
|
149
|
+
|
150
|
+
# The {#onUnloadExtension} method is called when the user turns off a Ruby
|
151
|
+
# extension. This is useful for detecting if the user is deactivating
|
152
|
+
# some critical set of observers, for example, so you can warn them
|
153
|
+
# or cache your extension state.
|
154
|
+
#
|
155
|
+
# @example
|
156
|
+
# def onUnloadExtension(extension_name)
|
157
|
+
# puts "onUnloadExtension: #{extension_name}"
|
158
|
+
# end
|
159
|
+
#
|
160
|
+
# @param [String] extension_name
|
161
|
+
# The name of the extension just unloaded.
|
162
|
+
#
|
163
|
+
# @return [nil]
|
164
|
+
#
|
165
|
+
# @version SketchUp 7.0
|
166
|
+
def onUnloadExtension(extension_name)
|
167
|
+
end
|
168
|
+
|
169
|
+
end
|