sketchup-api-stubs 0.7.9 → 0.7.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (160) hide show
  1. checksums.yaml +4 -4
  2. data/lib/sketchup-api-stubs/sketchup.rb +157 -151
  3. data/lib/sketchup-api-stubs/stubs/Array.rb +741 -741
  4. data/lib/sketchup-api-stubs/stubs/Geom/BoundingBox.rb +322 -322
  5. data/lib/sketchup-api-stubs/stubs/Geom/Bounds2d.rb +182 -172
  6. data/lib/sketchup-api-stubs/stubs/Geom/LatLong.rb +111 -126
  7. data/lib/sketchup-api-stubs/stubs/Geom/OrientedBounds2d.rb +102 -102
  8. data/lib/sketchup-api-stubs/stubs/Geom/Point2d.rb +423 -400
  9. data/lib/sketchup-api-stubs/stubs/Geom/Point3d.rb +693 -661
  10. data/lib/sketchup-api-stubs/stubs/Geom/PolygonMesh.rb +535 -509
  11. data/lib/sketchup-api-stubs/stubs/Geom/Transformation.rb +500 -476
  12. data/lib/sketchup-api-stubs/stubs/Geom/Transformation2d.rb +267 -263
  13. data/lib/sketchup-api-stubs/stubs/Geom/UTM.rb +133 -141
  14. data/lib/sketchup-api-stubs/stubs/Geom/Vector2d.rb +547 -522
  15. data/lib/sketchup-api-stubs/stubs/Geom/Vector3d.rb +678 -693
  16. data/lib/sketchup-api-stubs/stubs/Geom.rb +351 -351
  17. data/lib/sketchup-api-stubs/stubs/LanguageHandler.rb +93 -93
  18. data/lib/sketchup-api-stubs/stubs/Layout/AngularDimension.rb +595 -595
  19. data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinition.rb +751 -747
  20. data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinitions.rb +183 -183
  21. data/lib/sketchup-api-stubs/stubs/Layout/ConnectionPoint.rb +70 -70
  22. data/lib/sketchup-api-stubs/stubs/Layout/Dictionary.rb +234 -0
  23. data/lib/sketchup-api-stubs/stubs/Layout/Document.rb +683 -517
  24. data/lib/sketchup-api-stubs/stubs/Layout/Ellipse.rb +29 -29
  25. data/lib/sketchup-api-stubs/stubs/Layout/Entities.rb +148 -148
  26. data/lib/sketchup-api-stubs/stubs/Layout/Entity.rb +464 -353
  27. data/lib/sketchup-api-stubs/stubs/Layout/FormattedText.rb +354 -354
  28. data/lib/sketchup-api-stubs/stubs/Layout/Grid.rb +311 -311
  29. data/lib/sketchup-api-stubs/stubs/Layout/Group.rb +261 -261
  30. data/lib/sketchup-api-stubs/stubs/Layout/Image.rb +91 -91
  31. data/lib/sketchup-api-stubs/stubs/Layout/Label.rb +370 -370
  32. data/lib/sketchup-api-stubs/stubs/Layout/Layer.rb +218 -218
  33. data/lib/sketchup-api-stubs/stubs/Layout/LayerInstance.rb +128 -128
  34. data/lib/sketchup-api-stubs/stubs/Layout/Layers.rb +225 -225
  35. data/lib/sketchup-api-stubs/stubs/Layout/LinearDimension.rb +614 -567
  36. data/lib/sketchup-api-stubs/stubs/Layout/LockedEntityError.rb +10 -10
  37. data/lib/sketchup-api-stubs/stubs/Layout/LockedLayerError.rb +11 -11
  38. data/lib/sketchup-api-stubs/stubs/Layout/Page.rb +282 -183
  39. data/lib/sketchup-api-stubs/stubs/Layout/PageInfo.rb +458 -387
  40. data/lib/sketchup-api-stubs/stubs/Layout/Pages.rb +209 -209
  41. data/lib/sketchup-api-stubs/stubs/Layout/Path.rb +346 -344
  42. data/lib/sketchup-api-stubs/stubs/Layout/Rectangle.rb +174 -174
  43. data/lib/sketchup-api-stubs/stubs/Layout/ReferenceEntity.rb +82 -82
  44. data/lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb +714 -692
  45. data/lib/sketchup-api-stubs/stubs/Layout/Style.rb +1565 -1519
  46. data/lib/sketchup-api-stubs/stubs/Layout/Table.rb +290 -290
  47. data/lib/sketchup-api-stubs/stubs/Layout/TableCell.rb +149 -149
  48. data/lib/sketchup-api-stubs/stubs/Layout/TableColumn.rb +139 -139
  49. data/lib/sketchup-api-stubs/stubs/Layout/TableRow.rb +135 -135
  50. data/lib/sketchup-api-stubs/stubs/Layout.rb +25 -25
  51. data/lib/sketchup-api-stubs/stubs/Length.rb +286 -278
  52. data/lib/sketchup-api-stubs/stubs/Numeric.rb +249 -249
  53. data/lib/sketchup-api-stubs/stubs/Sketchup/Animation.rb +196 -144
  54. data/lib/sketchup-api-stubs/stubs/Sketchup/AppObserver.rb +169 -169
  55. data/lib/sketchup-api-stubs/stubs/Sketchup/ArcCurve.rb +226 -209
  56. data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionaries.rb +145 -150
  57. data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionary.rb +294 -281
  58. data/lib/sketchup-api-stubs/stubs/Sketchup/Axes.rb +149 -149
  59. data/lib/sketchup-api-stubs/stubs/Sketchup/Behavior.rb +296 -302
  60. data/lib/sketchup-api-stubs/stubs/Sketchup/Camera.rb +473 -478
  61. data/lib/sketchup-api-stubs/stubs/Sketchup/ClassificationSchema.rb +63 -63
  62. data/lib/sketchup-api-stubs/stubs/Sketchup/Classifications.rb +121 -121
  63. data/lib/sketchup-api-stubs/stubs/Sketchup/Color.rb +294 -294
  64. data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentDefinition.rb +673 -659
  65. data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentInstance.rb +600 -593
  66. data/lib/sketchup-api-stubs/stubs/Sketchup/Console.rb +76 -76
  67. data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionLine.rb +252 -257
  68. data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionPoint.rb +32 -32
  69. data/lib/sketchup-api-stubs/stubs/Sketchup/Curve.rb +201 -201
  70. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionList.rb +443 -449
  71. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionObserver.rb +74 -74
  72. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionsObserver.rb +104 -104
  73. data/lib/sketchup-api-stubs/stubs/Sketchup/Dimension.rb +167 -165
  74. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionLinear.rb +306 -306
  75. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionObserver.rb +42 -42
  76. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionRadial.rb +87 -87
  77. data/lib/sketchup-api-stubs/stubs/Sketchup/Drawingelement.rb +403 -406
  78. data/lib/sketchup-api-stubs/stubs/Sketchup/Edge.rb +397 -397
  79. data/lib/sketchup-api-stubs/stubs/Sketchup/EdgeUse.rb +211 -211
  80. data/lib/sketchup-api-stubs/stubs/Sketchup/Entities.rb +1282 -1239
  81. data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesBuilder.rb +261 -261
  82. data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesObserver.rb +127 -127
  83. data/lib/sketchup-api-stubs/stubs/Sketchup/Entity.rb +519 -545
  84. data/lib/sketchup-api-stubs/stubs/Sketchup/EntityObserver.rb +60 -60
  85. data/lib/sketchup-api-stubs/stubs/Sketchup/Environment.rb +406 -0
  86. data/lib/sketchup-api-stubs/stubs/Sketchup/Environments.rb +185 -0
  87. data/lib/sketchup-api-stubs/stubs/Sketchup/EnvironmentsObserver.rb +113 -0
  88. data/lib/sketchup-api-stubs/stubs/Sketchup/ExtensionsManager.rb +122 -125
  89. data/lib/sketchup-api-stubs/stubs/Sketchup/Face.rb +1006 -937
  90. data/lib/sketchup-api-stubs/stubs/Sketchup/FrameChangeObserver.rb +102 -102
  91. data/lib/sketchup-api-stubs/stubs/Sketchup/Group.rb +740 -750
  92. data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Request.rb +289 -282
  93. data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Response.rb +64 -62
  94. data/lib/sketchup-api-stubs/stubs/Sketchup/Http.rb +27 -27
  95. data/lib/sketchup-api-stubs/stubs/Sketchup/Image.rb +405 -468
  96. data/lib/sketchup-api-stubs/stubs/Sketchup/ImageRep.rb +266 -266
  97. data/lib/sketchup-api-stubs/stubs/Sketchup/Importer.rb +189 -189
  98. data/lib/sketchup-api-stubs/stubs/Sketchup/InputPoint.rb +432 -406
  99. data/lib/sketchup-api-stubs/stubs/Sketchup/InstanceObserver.rb +84 -84
  100. data/lib/sketchup-api-stubs/stubs/Sketchup/InstancePath.rb +307 -306
  101. data/lib/sketchup-api-stubs/stubs/Sketchup/Layer.rb +332 -326
  102. data/lib/sketchup-api-stubs/stubs/Sketchup/LayerFolder.rb +380 -422
  103. data/lib/sketchup-api-stubs/stubs/Sketchup/Layers.rb +409 -427
  104. data/lib/sketchup-api-stubs/stubs/Sketchup/LayersObserver.rb +241 -249
  105. data/lib/sketchup-api-stubs/stubs/Sketchup/Licensing/ExtensionLicense.rb +86 -86
  106. data/lib/sketchup-api-stubs/stubs/Sketchup/Licensing.rb +55 -48
  107. data/lib/sketchup-api-stubs/stubs/Sketchup/LineStyle.rb +24 -24
  108. data/lib/sketchup-api-stubs/stubs/Sketchup/LineStyles.rb +114 -114
  109. data/lib/sketchup-api-stubs/stubs/Sketchup/LoadHandler.rb +70 -0
  110. data/lib/sketchup-api-stubs/stubs/Sketchup/Loop.rb +137 -137
  111. data/lib/sketchup-api-stubs/stubs/Sketchup/Material.rb +1115 -414
  112. data/lib/sketchup-api-stubs/stubs/Sketchup/Materials.rb +330 -317
  113. data/lib/sketchup-api-stubs/stubs/Sketchup/MaterialsObserver.rb +142 -142
  114. data/lib/sketchup-api-stubs/stubs/Sketchup/Menu.rb +93 -93
  115. data/lib/sketchup-api-stubs/stubs/Sketchup/Model.rb +1714 -1652
  116. data/lib/sketchup-api-stubs/stubs/Sketchup/ModelObserver.rb +372 -357
  117. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsManager.rb +133 -130
  118. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProvider.rb +271 -271
  119. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProviderObserver.rb +58 -58
  120. data/lib/sketchup-api-stubs/stubs/Sketchup/Overlay.rb +463 -490
  121. data/lib/sketchup-api-stubs/stubs/Sketchup/OverlaysManager.rb +104 -116
  122. data/lib/sketchup-api-stubs/stubs/Sketchup/Page.rb +939 -797
  123. data/lib/sketchup-api-stubs/stubs/Sketchup/Pages.rb +388 -361
  124. data/lib/sketchup-api-stubs/stubs/Sketchup/PagesObserver.rb +77 -77
  125. data/lib/sketchup-api-stubs/stubs/Sketchup/PickHelper.rb +501 -478
  126. data/lib/sketchup-api-stubs/stubs/Sketchup/RegionalSettings.rb +43 -43
  127. data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptions.rb +385 -361
  128. data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptionsObserver.rb +45 -45
  129. data/lib/sketchup-api-stubs/stubs/Sketchup/SectionPlane.rb +150 -150
  130. data/lib/sketchup-api-stubs/stubs/Sketchup/Selection.rb +451 -458
  131. data/lib/sketchup-api-stubs/stubs/Sketchup/SelectionObserver.rb +115 -115
  132. data/lib/sketchup-api-stubs/stubs/Sketchup/Set.rb +211 -212
  133. data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfo.rb +259 -255
  134. data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfoObserver.rb +59 -59
  135. data/lib/sketchup-api-stubs/stubs/Sketchup/Skp.rb +40 -40
  136. data/lib/sketchup-api-stubs/stubs/Sketchup/Snap.rb +125 -0
  137. data/lib/sketchup-api-stubs/stubs/Sketchup/Style.rb +88 -69
  138. data/lib/sketchup-api-stubs/stubs/Sketchup/Styles.rb +263 -217
  139. data/lib/sketchup-api-stubs/stubs/Sketchup/Text.rb +283 -262
  140. data/lib/sketchup-api-stubs/stubs/Sketchup/Texture.rb +199 -217
  141. data/lib/sketchup-api-stubs/stubs/Sketchup/TextureWriter.rb +237 -237
  142. data/lib/sketchup-api-stubs/stubs/Sketchup/Tool.rb +924 -834
  143. data/lib/sketchup-api-stubs/stubs/Sketchup/Tools.rb +132 -132
  144. data/lib/sketchup-api-stubs/stubs/Sketchup/ToolsObserver.rb +156 -156
  145. data/lib/sketchup-api-stubs/stubs/Sketchup/UVHelper.rb +75 -75
  146. data/lib/sketchup-api-stubs/stubs/Sketchup/Vertex.rb +143 -142
  147. data/lib/sketchup-api-stubs/stubs/Sketchup/View.rb +1566 -1311
  148. data/lib/sketchup-api-stubs/stubs/Sketchup/ViewObserver.rb +71 -45
  149. data/lib/sketchup-api-stubs/stubs/Sketchup.rb +1429 -1377
  150. data/lib/sketchup-api-stubs/stubs/SketchupExtension.rb +353 -353
  151. data/lib/sketchup-api-stubs/stubs/String.rb +24 -24
  152. data/lib/sketchup-api-stubs/stubs/UI/Command.rb +399 -389
  153. data/lib/sketchup-api-stubs/stubs/UI/HtmlDialog.rb +580 -494
  154. data/lib/sketchup-api-stubs/stubs/UI/Notification.rb +280 -269
  155. data/lib/sketchup-api-stubs/stubs/UI/Toolbar.rb +258 -241
  156. data/lib/sketchup-api-stubs/stubs/UI/WebDialog.rb +636 -635
  157. data/lib/sketchup-api-stubs/stubs/UI.rb +791 -683
  158. data/lib/sketchup-api-stubs/stubs/_top_level.rb +303 -303
  159. data/lib/sketchup-api-stubs.rb +1 -1
  160. metadata +10 -24
@@ -1,144 +1,196 @@
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
+ # Copyright:: Copyright 2026 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 example demonstrates a simple animation with implementation of
10
+ # # the optional callback method stop, which is invoked
11
+ # # by SketchUp during specific animation events.
12
+ # class SimpleFloatAnimation
13
+ # def initialize
14
+ # @speed = 1.0 # Camera movement speed
15
+ # puts "Animation initialized"
16
+ # end
17
+ #
18
+ # # Required method - called for each animation frame
19
+ # def nextFrame(view)
20
+ # # Move camera upward
21
+ # new_eye = view.camera.eye
22
+ # new_eye.z = new_eye.z + @speed
23
+ # view.camera.set(new_eye, view.camera.target, view.camera.up)
24
+ # view.show_frame
25
+ #
26
+ # # Continue animation until reaching maximum height
27
+ # return new_eye.z < 500.0
28
+ # end
29
+ #
30
+ # # Optional callback - called by SketchUp when animation is stopped
31
+ # # Note: This method is called automatically by SketchUp and cannot
32
+ # # be called directly to stop an animation
33
+ # def stop
34
+ # puts "Animation was stopped by SketchUp"
35
+ # # Cleanup code when animation ends
36
+ # end
37
+ # end
38
+ #
39
+ # # Add menu item to start the animation
40
+ # UI.menu("Camera").add_item("Start Animation") {
41
+ # animation = SimpleFloatAnimation.new
42
+ # Sketchup.active_model.active_view.animation = animation
43
+ # }
44
+ #
45
+ # # To stop the animation programmatically:
46
+ # UI.menu("Camera").add_item("Stop Animation") {
47
+ # # Setting animation to nil will trigger the stop method in our animation class
48
+ # Sketchup.active_model.active_view.animation = nil
49
+ # }
50
+ #
51
+ # {Sketchup::Animation} objects are activated by using the
52
+ # {Sketchup::View#animation=} method on a {Sketchup::View}
53
+ # object. To stop an animation set the view's animation object to +nil+, like
54
+ # so:
55
+ #
56
+ # Sketchup.active_model.active_view.animation = nil
57
+ #
58
+ #
59
+ # ==Managing Multiple Animations:
60
+ #
61
+ # While only one animation object can be active on a {Sketchup::View} at any
62
+ # given time, you can create a composite animation class to manage multiple
63
+ # animations simultaneously. This approach allows you to animate different
64
+ # elements, such as objects and the camera, within a single animation framework.
65
+ #
66
+ # Example: Combining Animations
67
+ #
68
+ # class CombinedAnimation
69
+ # def initialize(object_animation, camera_animation)
70
+ # @object_animation = object_animation
71
+ # @camera_animation = camera_animation
72
+ # end
73
+ #
74
+ # def nextFrame(view)
75
+ # @object_animation.nextFrame(view)
76
+ # @camera_animation.nextFrame(view)
77
+ # true
78
+ # end
79
+ # end
80
+ #
81
+ # # Usage
82
+ # object_animation = RotateAnimation.new
83
+ # camera_animation = RotateCamera.new(0.01)
84
+ # combined_animation = CombinedAnimation.new(object_animation, camera_animation)
85
+ # Sketchup.active_model.active_view.animation = combined_animation
86
+ #
87
+ # @abstract Implement the methods described in this class to create a an
88
+ # animation. You can not sub-class this class because it is not defined by
89
+ # the API.
90
+ #
91
+ # @version SketchUp 6.0
92
+ class Sketchup::Animation
93
+
94
+ # Instance Methods
95
+
96
+ # The {#nextFrame} method is invoked by SketchUp to tell the animation to
97
+ # display its next frame. This method should set up the camera and then call
98
+ # {Sketchup::View#show_frame}.
99
+ #
100
+ # The {#nextFrame} method is the only required method of the
101
+ # {Sketchup::Animation} interface that you must implement.
102
+ #
103
+ # @example
104
+ # def nextFrame(view)
105
+ # # Insert your handler code for updating the camera or other entities.
106
+ # view.show_frame
107
+ # return true
108
+ # end
109
+ #
110
+ # @param [Sketchup::View] view
111
+ # The view for the animation.
112
+ #
113
+ # @return [Boolean] continue - +true+ if you want the animation to continue
114
+ # on to the next frame, +false+ if you want the animation
115
+ # to stop after this frame.
116
+ #
117
+ # @version SketchUp 6.0
118
+ #
119
+ # @version SketchUp 6.0
120
+ def nextFrame(view)
121
+ end
122
+
123
+ # The {#pause} method is invoked by SketchUp when the animation is paused.
124
+ #
125
+ # This method is optional (you do not need to implement this method unless you
126
+ # want to perform some specialized function when the animation is paused). You
127
+ # cannot call this method in your code explicitly and expect an animation to
128
+ # pause, only certain SketchUp events cause the method to be called.
129
+ #
130
+ # @example
131
+ # def pause
132
+ # # Insert handler code for whatever you need to do when it is paused.
133
+ # end
134
+ #
135
+ # @note The user interface for pausing and resuming animations isn't integrated
136
+ # with the Ruby API in the current version, so this method is probably not
137
+ # useful to you.
138
+ #
139
+ # @return [nil]
140
+ #
141
+ # @version SketchUp 6.0
142
+ def pause
143
+ end
144
+
145
+ # The {#resume} method is invoked by SketchUp when the animation is resumed
146
+ # after being paused.
147
+ #
148
+ # This method is optional (you do not need to implement this method unless you
149
+ # want to perform some specialized function when the animation is resumed).
150
+ # You cannot call this method in your code explicitly and expect an animation
151
+ # to stop, only certain SketchUp events cause the method to be called.
152
+ #
153
+ # @example
154
+ # def resume
155
+ # # Insert your handler code for whatever you need to do as you resume.
156
+ # end
157
+ #
158
+ # @note The user interface for pausing and resuming animations isn't integrated
159
+ # with the Ruby API in the current version, so this method is probably not
160
+ # useful to you.
161
+ #
162
+ # @return [nil]
163
+ #
164
+ # @version SketchUp 6.0
165
+ def resume
166
+ end
167
+
168
+ # The {#stop} method is invoked by SketchUp when the animation is stopped.
169
+ #
170
+ # This method is optional (you do not need to implement this method unless you
171
+ # want to perform some specialized function when the animation is stopped). You
172
+ # cannot call this method in your code explicitly and expect an animation to
173
+ # stop, only certain SketchUp events cause the method to be called.
174
+ #
175
+ # Perhaps the most common way for this method to be called is when your Ruby
176
+ # code sets {Sketchup::View#animation=} to +nil+. See the class comments for
177
+ # an example of this.
178
+ #
179
+ # @example
180
+ # class MyAnimation
181
+ # def stop
182
+ # # Insert your handler code for cleaning up after your animation.
183
+ # end
184
+ # end
185
+ #
186
+ # @note Do not call {Sketchup::View#animation=} from this method. This will
187
+ # cause a recursive loop and crash SketchUp 2017 and earlier versions.
188
+ # As of SketchUp 2018 this will raise a +RunTimeError+.
189
+ #
190
+ # @return [nil]
191
+ #
192
+ # @version SketchUp 6.0
193
+ def stop
194
+ end
195
+
196
+ end