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,32 +1,32 @@
1
- # Copyright:: Copyright 2023 Trimble Inc.
2
- # License:: The MIT License (MIT)
3
-
4
- # A construction point represents a point in the model that can be used to aid
5
- # in other modeling operations. For example, you may put a construction point
6
- # at the center of a circle to make it easier to locate that point for
7
- # performing other operations.
8
- #
9
- # @version SketchUp 6.0
10
- class Sketchup::ConstructionPoint < Sketchup::Drawingelement
11
-
12
- # Instance Methods
13
-
14
- # The position method is used to retrieve a Point3d used to create a
15
- # construction point.
16
- #
17
- # @example
18
- # model = Sketchup.active_model
19
- # entities = model.active_entities
20
- # point1 = Geom::Point3d.new(10,0,0)
21
- # constpoint = entities.add_cpoint point1
22
- # # Returns 10,0,0
23
- # position = constpoint.position
24
- #
25
- # @return point - the Point3d object used to create the
26
- # ConstructionPoint
27
- #
28
- # @version SketchUp 6.0
29
- def position
30
- end
31
-
32
- end
1
+ # Copyright:: Copyright 2026 Trimble Inc.
2
+ # License:: The MIT License (MIT)
3
+
4
+ # A construction point represents a point in the model that can be used to aid
5
+ # in other modeling operations. For example, you may put a construction point
6
+ # at the center of a circle to make it easier to locate that point for
7
+ # performing other operations.
8
+ #
9
+ # @version SketchUp 6.0
10
+ class Sketchup::ConstructionPoint < Sketchup::Drawingelement
11
+
12
+ # Instance Methods
13
+
14
+ # The position method is used to retrieve a Point3d used to create a
15
+ # construction point.
16
+ #
17
+ # @example
18
+ # model = Sketchup.active_model
19
+ # entities = model.active_entities
20
+ # point1 = Geom::Point3d.new(10,0,0)
21
+ # constpoint = entities.add_cpoint point1
22
+ # # Returns 10,0,0
23
+ # position = constpoint.position
24
+ #
25
+ # @return point - the Point3d object used to create the
26
+ # ConstructionPoint
27
+ #
28
+ # @version SketchUp 6.0
29
+ def position
30
+ end
31
+
32
+ end
@@ -1,201 +1,201 @@
1
- # Copyright:: Copyright 2023 Trimble Inc.
2
- # License:: The MIT License (MIT)
3
-
4
- # The Curve class is used by SketchUp to unite a series of Edge objects into
5
- # one conceptual entity. Since SketchUp is a surface modeler, all circles,
6
- # arcs, and arbitrary curves are really just edges that are bound together in
7
- # sequence.
8
- #
9
- # There is a subclass of Curve called ArcCurve, which is any curve that makes
10
- # up part of a circle. You can think of ArcCurves as entities that were created
11
- # with SketchUp's Arc or Circle drawing tools and Curves as entities that were
12
- # created with the Freehand drawing tool.
13
- #
14
- # @version SketchUp 6.0
15
- class Sketchup::Curve < Sketchup::Entity
16
-
17
- # Instance Methods
18
-
19
- # The count_edges method is used to retrieve the number of Edge objects that
20
- # make up the Curve.
21
- #
22
- # @example
23
- # centerpoint = Geom::Point3d.new
24
- # # Create a circle perpendicular to the normal or Z axis
25
- # vector = Geom::Vector3d.new 0,0,1
26
- # vector2 = vector.normalize!
27
- # model = Sketchup.active_model
28
- # entities = model.entities
29
- # edgearray = entities.add_circle centerpoint, vector2, 10
30
- # edge = edgearray[0]
31
- # curve = edge.curve
32
- # number = curve.count_edges
33
- #
34
- # @return num_edges - the number of edges in the curve
35
- #
36
- # @version SketchUp 6.0
37
- def count_edges
38
- end
39
-
40
- # The each_edge method is used to iterate through all of the Edge objects in
41
- # the curve.
42
- #
43
- # @example
44
- # centerpoint = Geom::Point3d.new
45
- # # Create a circle perpendicular to the normal or Z axis
46
- # vector = Geom::Vector3d.new 0,0,1
47
- # vector2 = vector.normalize!
48
- # model = Sketchup.active_model
49
- # entities = model.entities
50
- # edgearray = entities.add_circle centerpoint, vector2, 10
51
- # edge = edgearray[0]
52
- # curve = edge.curve
53
- # curve.each_edge {|edge| puts "Edge {edge.entityID}: {edge.length}" }
54
- #
55
- # @return edge - a variable that will hold each Edge object as
56
- # they are found.
57
- #
58
- # @version SketchUp 6.0
59
- def each_edge
60
- end
61
-
62
- # The edges method is used to retrieve an array of Edge objects that make up
63
- # the Curve.
64
- #
65
- # @example
66
- # centerpoint = Geom::Point3d.new
67
- # # Create a circle perpendicular to the normal or Z axis
68
- # vector = Geom::Vector3d.new 0,0,1
69
- # vector2 = vector.normalize!
70
- # model = Sketchup.active_model
71
- # entities = model.entities
72
- # edgearray = entities.add_circle centerpoint, vector2, 10
73
- # edge = edgearray[0]
74
- # curve = edge.curve
75
- # edges = curve.edges
76
- #
77
- # @return edges - an array of Edge objects if successful
78
- #
79
- # @version SketchUp 6.0
80
- def edges
81
- end
82
-
83
- # The first_edge method is used to retrieve the first edge of the curve.
84
- #
85
- # @example
86
- # centerpoint = Geom::Point3d.new
87
- # # Create a circle perpendicular to the normal or Z axis
88
- # vector = Geom::Vector3d.new 0,0,1
89
- # vector2 = vector.normalize!
90
- # model = Sketchup.active_model
91
- # entities = model.entities
92
- # edgearray = entities.add_circle centerpoint, vector2, 10
93
- # edge = edgearray[0]
94
- # curve = edge.curve
95
- # firstedge = curve.first_edge
96
- #
97
- # @return edge - the first Edge object in the curve if successful
98
- #
99
- # @version SketchUp 6.0
100
- def first_edge
101
- end
102
-
103
- #
104
- # @example
105
- # # Create a polygon and check its edge
106
- # ents = Sketchup.active_model.entities
107
- # ents.add_ngon [0, 0, 0], [0, 0, 1], 10, 6
108
- # curve = nil
109
- # ents.each { |e| curve = e.curve if e.is_a? Sketchup::Edge }
110
- # is_poly = curve.is_polygon?
111
- #
112
- # @return [Boolean] True if this edge was originally created by the polygon
113
- # tool, otherwise false.
114
- #
115
- # @version SketchUp 7.1 M1
116
- def is_polygon?
117
- end
118
-
119
- # The last_edge method is used to retrieve the last edge of the curve.
120
- #
121
- # @example
122
- # centerpoint = Geom::Point3d.new
123
- # # Create a circle perpendicular to the normal or Z axis
124
- # vector = Geom::Vector3d.new 0,0,1
125
- # vector2 = vector.normalize!
126
- # model = Sketchup.active_model
127
- # entities = model.entities
128
- # edgearray = entities.add_circle centerpoint, vector2, 10
129
- # edge = edgearray[7]
130
- # curve = edge.curve
131
- # lastedge = curve.last_edge
132
- #
133
- # @return edge - the last Edge object in the curve if successful
134
- #
135
- # @version SketchUp 6.0
136
- def last_edge
137
- end
138
-
139
- # The length method retrieves the length of the curve.
140
- #
141
- # @example
142
- # centerpoint = Geom::Point3d.new
143
- # # Create a circle perpendicular to the normal or Z axis
144
- # vector = Geom::Vector3d.new 0,0,1
145
- # vector2 = vector.normalize!
146
- # model = Sketchup.active_model
147
- # entities = model.entities
148
- # edgearray = entities.add_circle centerpoint, vector2, 10
149
- # edge = edgearray[7]
150
- # curve = edge.curve
151
- # length = curve.length
152
- #
153
- # @return [Length]
154
- #
155
- # @version SketchUp 6.0
156
- def length
157
- end
158
-
159
- # The {#move_vertices} method moves the vertices in the curve to points.
160
- #
161
- # @example
162
- # model = Sketchup.active_model
163
- # entities = model.entities
164
- # new_edges = entities.add_arc(ORIGIN, X_AXIS, Z_AXIS, 20.cm, 0, 270.degrees, 32)
165
- # curve = new_edges.first.curve
166
- # points = curve.vertices.map(&:position)
167
- # points.each_with_index { |pt, i| pt.z = i * 1.cm }
168
- # curve.move_vertices(points)
169
- #
170
- # @param [Array<Geom::Point3d>] point_array
171
- #
172
- # @raise ArgumentError if the number of points doesn't match number of vertices
173
- # in curve
174
- #
175
- # @return [Boolean]
176
- #
177
- # @version SketchUp 6.0
178
- def move_vertices(point_array)
179
- end
180
-
181
- # The vertices method retrieves a collection of all vertices in a curve.
182
- #
183
- # @example
184
- # centerpoint = Geom::Point3d.new
185
- # # Create a circle perpendicular to the normal or Z axis
186
- # vector = Geom::Vector3d.new 0,0,1
187
- # vector2 = vector.normalize!
188
- # model = Sketchup.active_model
189
- # entities = model.entities
190
- # edgearray = entities.add_circle centerpoint, vector2, 10
191
- # edge = edgearray[7]
192
- # curve = edge.curve
193
- # vertices = curve.vertices
194
- #
195
- # @return vertices - a collection of the vertices
196
- #
197
- # @version SketchUp 6.0
198
- def vertices
199
- end
200
-
201
- end
1
+ # Copyright:: Copyright 2026 Trimble Inc.
2
+ # License:: The MIT License (MIT)
3
+
4
+ # The Curve class is used by SketchUp to unite a series of Edge objects into
5
+ # one conceptual entity. Since SketchUp is a surface modeler, all circles,
6
+ # arcs, and arbitrary curves are really just edges that are bound together in
7
+ # sequence.
8
+ #
9
+ # There is a subclass of Curve called ArcCurve, which is any curve that makes
10
+ # up part of a circle. You can think of ArcCurves as entities that were created
11
+ # with SketchUp's Arc or Circle drawing tools and Curves as entities that were
12
+ # created with the Freehand drawing tool.
13
+ #
14
+ # @version SketchUp 6.0
15
+ class Sketchup::Curve < Sketchup::Entity
16
+
17
+ # Instance Methods
18
+
19
+ # The count_edges method is used to retrieve the number of Edge objects that
20
+ # make up the Curve.
21
+ #
22
+ # @example
23
+ # centerpoint = Geom::Point3d.new
24
+ # # Create a circle perpendicular to the normal or Z axis
25
+ # vector = Geom::Vector3d.new 0,0,1
26
+ # vector2 = vector.normalize!
27
+ # model = Sketchup.active_model
28
+ # entities = model.entities
29
+ # edgearray = entities.add_circle centerpoint, vector2, 10
30
+ # edge = edgearray[0]
31
+ # curve = edge.curve
32
+ # number = curve.count_edges
33
+ #
34
+ # @return num_edges - the number of edges in the curve
35
+ #
36
+ # @version SketchUp 6.0
37
+ def count_edges
38
+ end
39
+
40
+ # The each_edge method is used to iterate through all of the Edge objects in
41
+ # the curve.
42
+ #
43
+ # @example
44
+ # centerpoint = Geom::Point3d.new
45
+ # # Create a circle perpendicular to the normal or Z axis
46
+ # vector = Geom::Vector3d.new 0,0,1
47
+ # vector2 = vector.normalize!
48
+ # model = Sketchup.active_model
49
+ # entities = model.entities
50
+ # edgearray = entities.add_circle centerpoint, vector2, 10
51
+ # edge = edgearray[0]
52
+ # curve = edge.curve
53
+ # curve.each_edge {|edge| puts "Edge {edge.entityID}: {edge.length}" }
54
+ #
55
+ # @return edge - a variable that will hold each Edge object as
56
+ # they are found.
57
+ #
58
+ # @version SketchUp 6.0
59
+ def each_edge
60
+ end
61
+
62
+ # The edges method is used to retrieve an array of Edge objects that make up
63
+ # the Curve.
64
+ #
65
+ # @example
66
+ # centerpoint = Geom::Point3d.new
67
+ # # Create a circle perpendicular to the normal or Z axis
68
+ # vector = Geom::Vector3d.new 0,0,1
69
+ # vector2 = vector.normalize!
70
+ # model = Sketchup.active_model
71
+ # entities = model.entities
72
+ # edgearray = entities.add_circle centerpoint, vector2, 10
73
+ # edge = edgearray[0]
74
+ # curve = edge.curve
75
+ # edges = curve.edges
76
+ #
77
+ # @return edges - an array of Edge objects if successful
78
+ #
79
+ # @version SketchUp 6.0
80
+ def edges
81
+ end
82
+
83
+ # The first_edge method is used to retrieve the first edge of the curve.
84
+ #
85
+ # @example
86
+ # centerpoint = Geom::Point3d.new
87
+ # # Create a circle perpendicular to the normal or Z axis
88
+ # vector = Geom::Vector3d.new 0,0,1
89
+ # vector2 = vector.normalize!
90
+ # model = Sketchup.active_model
91
+ # entities = model.entities
92
+ # edgearray = entities.add_circle centerpoint, vector2, 10
93
+ # edge = edgearray[0]
94
+ # curve = edge.curve
95
+ # firstedge = curve.first_edge
96
+ #
97
+ # @return edge - the first Edge object in the curve if successful
98
+ #
99
+ # @version SketchUp 6.0
100
+ def first_edge
101
+ end
102
+
103
+ #
104
+ # @example
105
+ # # Create a polygon and check its edge
106
+ # ents = Sketchup.active_model.entities
107
+ # ents.add_ngon [0, 0, 0], [0, 0, 1], 10, 6
108
+ # curve = nil
109
+ # ents.each { |e| curve = e.curve if e.is_a? Sketchup::Edge }
110
+ # is_poly = curve.is_polygon?
111
+ #
112
+ # @return [Boolean] True if this edge was originally created by the polygon
113
+ # tool, otherwise false.
114
+ #
115
+ # @version SketchUp 7.1 M1
116
+ def is_polygon?
117
+ end
118
+
119
+ # The last_edge method is used to retrieve the last edge of the curve.
120
+ #
121
+ # @example
122
+ # centerpoint = Geom::Point3d.new
123
+ # # Create a circle perpendicular to the normal or Z axis
124
+ # vector = Geom::Vector3d.new 0,0,1
125
+ # vector2 = vector.normalize!
126
+ # model = Sketchup.active_model
127
+ # entities = model.entities
128
+ # edgearray = entities.add_circle centerpoint, vector2, 10
129
+ # edge = edgearray[7]
130
+ # curve = edge.curve
131
+ # lastedge = curve.last_edge
132
+ #
133
+ # @return edge - the last Edge object in the curve if successful
134
+ #
135
+ # @version SketchUp 6.0
136
+ def last_edge
137
+ end
138
+
139
+ # The length method retrieves the length of the curve.
140
+ #
141
+ # @example
142
+ # centerpoint = Geom::Point3d.new
143
+ # # Create a circle perpendicular to the normal or Z axis
144
+ # vector = Geom::Vector3d.new 0,0,1
145
+ # vector2 = vector.normalize!
146
+ # model = Sketchup.active_model
147
+ # entities = model.entities
148
+ # edgearray = entities.add_circle centerpoint, vector2, 10
149
+ # edge = edgearray[7]
150
+ # curve = edge.curve
151
+ # length = curve.length
152
+ #
153
+ # @return [Length]
154
+ #
155
+ # @version SketchUp 6.0
156
+ def length
157
+ end
158
+
159
+ # The {#move_vertices} method moves the vertices in the curve to points.
160
+ #
161
+ # @example
162
+ # model = Sketchup.active_model
163
+ # entities = model.entities
164
+ # new_edges = entities.add_arc(ORIGIN, X_AXIS, Z_AXIS, 20.cm, 0, 270.degrees, 32)
165
+ # curve = new_edges.first.curve
166
+ # points = curve.vertices.map(&:position)
167
+ # points.each_with_index { |pt, i| pt.z = i * 1.cm }
168
+ # curve.move_vertices(points)
169
+ #
170
+ # @param [Array<Geom::Point3d>] point_array
171
+ #
172
+ # @raise ArgumentError if the number of points doesn't match number of vertices
173
+ # in curve
174
+ #
175
+ # @return [Boolean]
176
+ #
177
+ # @version SketchUp 6.0
178
+ def move_vertices(point_array)
179
+ end
180
+
181
+ # The vertices method retrieves a collection of all vertices in a curve.
182
+ #
183
+ # @example
184
+ # centerpoint = Geom::Point3d.new
185
+ # # Create a circle perpendicular to the normal or Z axis
186
+ # vector = Geom::Vector3d.new 0,0,1
187
+ # vector2 = vector.normalize!
188
+ # model = Sketchup.active_model
189
+ # entities = model.entities
190
+ # edgearray = entities.add_circle centerpoint, vector2, 10
191
+ # edge = edgearray[7]
192
+ # curve = edge.curve
193
+ # vertices = curve.vertices
194
+ #
195
+ # @return vertices - a collection of the vertices
196
+ #
197
+ # @version SketchUp 6.0
198
+ def vertices
199
+ end
200
+
201
+ end