sketchup-api-stubs 0.7.4 → 0.7.8
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 +148 -145
- data/lib/sketchup-api-stubs/stubs/{array.rb → Array.rb} +741 -741
- data/lib/sketchup-api-stubs/stubs/Geom/BoundingBox.rb +322 -318
- 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 +523 -492
- data/lib/sketchup-api-stubs/stubs/Geom/Transformation.rb +478 -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 -348
- 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 +698 -411
- data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinitions.rb +183 -174
- data/lib/sketchup-api-stubs/stubs/Layout/ConnectionPoint.rb +70 -70
- data/lib/sketchup-api-stubs/stubs/Layout/Document.rb +516 -514
- data/lib/sketchup-api-stubs/stubs/Layout/Ellipse.rb +29 -29
- data/lib/sketchup-api-stubs/stubs/Layout/Entities.rb +148 -143
- 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 -371
- 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 -220
- 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 -204
- 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/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 -140
- 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 +152 -152
- data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionary.rb +286 -281
- data/lib/sketchup-api-stubs/stubs/Sketchup/Axes.rb +149 -149
- data/lib/sketchup-api-stubs/stubs/Sketchup/Behavior.rb +302 -328
- data/lib/sketchup-api-stubs/stubs/Sketchup/Camera.rb +478 -577
- data/lib/sketchup-api-stubs/stubs/Sketchup/ClassificationSchema.rb +63 -63
- data/lib/sketchup-api-stubs/stubs/Sketchup/Classifications.rb +122 -122
- data/lib/sketchup-api-stubs/stubs/Sketchup/Color.rb +294 -281
- data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentDefinition.rb +619 -562
- data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentInstance.rb +593 -593
- 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 -194
- data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionList.rb +426 -329
- data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionObserver.rb +74 -72
- data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionsObserver.rb +104 -102
- data/lib/sketchup-api-stubs/stubs/Sketchup/Dimension.rb +165 -165
- data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionLinear.rb +306 -312
- data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionObserver.rb +42 -38
- data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionRadial.rb +87 -87
- data/lib/sketchup-api-stubs/stubs/Sketchup/Drawingelement.rb +396 -390
- data/lib/sketchup-api-stubs/stubs/Sketchup/Edge.rb +502 -508
- data/lib/sketchup-api-stubs/stubs/Sketchup/EdgeUse.rb +211 -211
- data/lib/sketchup-api-stubs/stubs/Sketchup/Entities.rb +1205 -1119
- data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesBuilder.rb +272 -0
- data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesObserver.rb +127 -125
- data/lib/sketchup-api-stubs/stubs/Sketchup/Entity.rb +545 -544
- data/lib/sketchup-api-stubs/stubs/Sketchup/EntityObserver.rb +60 -59
- data/lib/sketchup-api-stubs/stubs/Sketchup/ExtensionsManager.rb +126 -125
- data/lib/sketchup-api-stubs/stubs/Sketchup/Face.rb +937 -750
- data/lib/sketchup-api-stubs/stubs/Sketchup/FrameChangeObserver.rb +104 -104
- data/lib/sketchup-api-stubs/stubs/Sketchup/Group.rb +750 -697
- data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Request.rb +292 -285
- 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 -409
- data/lib/sketchup-api-stubs/stubs/Sketchup/ImageRep.rb +266 -226
- data/lib/sketchup-api-stubs/stubs/Sketchup/Importer.rb +189 -190
- data/lib/sketchup-api-stubs/stubs/Sketchup/InputPoint.rb +407 -393
- data/lib/sketchup-api-stubs/stubs/Sketchup/InstanceObserver.rb +84 -82
- data/lib/sketchup-api-stubs/stubs/Sketchup/InstancePath.rb +306 -303
- data/lib/sketchup-api-stubs/stubs/Sketchup/Layer.rb +326 -285
- data/lib/sketchup-api-stubs/stubs/Sketchup/LayerFolder.rb +422 -0
- data/lib/sketchup-api-stubs/stubs/Sketchup/Layers.rb +427 -244
- data/lib/sketchup-api-stubs/stubs/Sketchup/LayersObserver.rb +249 -136
- 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 +112 -112
- data/lib/sketchup-api-stubs/stubs/Sketchup/Loop.rb +137 -137
- data/lib/sketchup-api-stubs/stubs/Sketchup/Material.rb +414 -416
- data/lib/sketchup-api-stubs/stubs/Sketchup/Materials.rb +318 -311
- data/lib/sketchup-api-stubs/stubs/Sketchup/MaterialsObserver.rb +142 -141
- data/lib/sketchup-api-stubs/stubs/Sketchup/Menu.rb +93 -95
- data/lib/sketchup-api-stubs/stubs/Sketchup/Model.rb +1651 -1638
- data/lib/sketchup-api-stubs/stubs/Sketchup/ModelObserver.rb +357 -356
- data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsManager.rb +131 -132
- data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProvider.rb +284 -284
- data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProviderObserver.rb +58 -58
- data/lib/sketchup-api-stubs/stubs/Sketchup/Page.rb +797 -770
- data/lib/sketchup-api-stubs/stubs/Sketchup/Pages.rb +363 -353
- data/lib/sketchup-api-stubs/stubs/Sketchup/PagesObserver.rb +77 -76
- data/lib/sketchup-api-stubs/stubs/Sketchup/PickHelper.rb +477 -456
- data/lib/sketchup-api-stubs/stubs/Sketchup/RegionalSettings.rb +43 -43
- data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptions.rb +364 -364
- data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptionsObserver.rb +45 -44
- data/lib/sketchup-api-stubs/stubs/Sketchup/SectionPlane.rb +150 -150
- data/lib/sketchup-api-stubs/stubs/Sketchup/Selection.rb +459 -454
- 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 +260 -257
- data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfoObserver.rb +59 -57
- data/lib/sketchup-api-stubs/stubs/Sketchup/Skp.rb +40 -0
- data/lib/sketchup-api-stubs/stubs/Sketchup/Style.rb +69 -69
- data/lib/sketchup-api-stubs/stubs/Sketchup/Styles.rb +217 -211
- data/lib/sketchup-api-stubs/stubs/Sketchup/Text.rb +262 -262
- data/lib/sketchup-api-stubs/stubs/Sketchup/Texture.rb +217 -225
- data/lib/sketchup-api-stubs/stubs/Sketchup/TextureWriter.rb +237 -237
- data/lib/sketchup-api-stubs/stubs/Sketchup/Tool.rb +837 -829
- data/lib/sketchup-api-stubs/stubs/Sketchup/Tools.rb +132 -132
- data/lib/sketchup-api-stubs/stubs/Sketchup/ToolsObserver.rb +156 -154
- data/lib/sketchup-api-stubs/stubs/Sketchup/UVHelper.rb +75 -61
- data/lib/sketchup-api-stubs/stubs/Sketchup/Vertex.rb +142 -142
- data/lib/sketchup-api-stubs/stubs/Sketchup/View.rb +1317 -1301
- data/lib/sketchup-api-stubs/stubs/Sketchup/ViewObserver.rb +45 -43
- data/lib/sketchup-api-stubs/stubs/{sketchup.rb → Sketchup.rb} +1360 -1310
- 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 -310
- data/lib/sketchup-api-stubs/stubs/UI/HtmlDialog.rb +496 -356
- data/lib/sketchup-api-stubs/stubs/UI/Notification.rb +269 -229
- data/lib/sketchup-api-stubs/stubs/UI/Toolbar.rb +240 -240
- data/lib/sketchup-api-stubs/stubs/UI/WebDialog.rb +635 -633
- data/lib/sketchup-api-stubs/stubs/{ui.rb → UI.rb} +683 -667
- data/lib/sketchup-api-stubs/stubs/_top_level.rb +311 -311
- data/lib/sketchup-api-stubs.rb +1 -1
- metadata +15 -12
@@ -1,312 +1,306 @@
|
|
1
|
-
# Copyright:: Copyright
|
2
|
-
# License:: The MIT License (MIT)
|
3
|
-
|
4
|
-
# The DimensionLinear class represents linear dimensions.
|
5
|
-
#
|
6
|
-
# @version SketchUp 2014
|
7
|
-
class Sketchup::DimensionLinear < Sketchup::Dimension
|
8
|
-
|
9
|
-
# Constants
|
10
|
-
|
11
|
-
ALIGNED_TEXT_ABOVE = nil # Stub value.
|
12
|
-
ALIGNED_TEXT_CENTER = nil # Stub value.
|
13
|
-
ALIGNED_TEXT_OUTSIDE = nil # Stub value.
|
14
|
-
|
15
|
-
TEXT_CENTERED = nil # Stub value.
|
16
|
-
TEXT_OUTSIDE_END = nil # Stub value.
|
17
|
-
TEXT_OUTSIDE_START = nil # Stub value.
|
18
|
-
|
19
|
-
# Instance Methods
|
20
|
-
|
21
|
-
# The aligned_text_position method returns the text position for dimensions
|
22
|
-
# with aligned text (i.e. has_aligned_text? returns true).
|
23
|
-
# Valid values are class constants:
|
24
|
-
# - DimensionLinear::ALIGNED_TEXT_ABOVE
|
25
|
-
# - DimensionLinear::ALIGNED_TEXT_CENTER
|
26
|
-
# - DimensionLinear::ALIGNED_TEXT_OUTSIDE
|
27
|
-
#
|
28
|
-
# @example
|
29
|
-
# pos = dim.aligned_text_position
|
30
|
-
# if pos == Sketchup::DimensionLinear::ALIGNED_TEXT_ABOVE
|
31
|
-
# puts 'Text is above'
|
32
|
-
# elsif pos == Sketchup::DimensionLinear::ALIGNED_TEXT_CENTER
|
33
|
-
# puts 'Text is centered'
|
34
|
-
# elsif pos == Sketchup::DimensionLinear::ALIGNED_TEXT_OUTSIDE
|
35
|
-
# puts 'Text is outside'
|
36
|
-
# end
|
37
|
-
#
|
38
|
-
# @return an integer specifying the text position
|
39
|
-
#
|
40
|
-
# @version SketchUp 2014
|
41
|
-
def aligned_text_position
|
42
|
-
end
|
43
|
-
|
44
|
-
# The aligned_text_position= method is used to set the text position for
|
45
|
-
# dimensions with aligned text (i.e. has_aligned_text? returns true).
|
46
|
-
# Valid values are class constants:
|
47
|
-
# - DimensionLinear::ALIGNED_TEXT_ABOVE
|
48
|
-
# - DimensionLinear::ALIGNED_TEXT_CENTER
|
49
|
-
# - DimensionLinear::ALIGNED_TEXT_OUTSIDE
|
50
|
-
#
|
51
|
-
# @example
|
52
|
-
# dim.aligned_text_position = Sketchup::DimensionLinear::ALIGNED_TEXT_CENTER
|
53
|
-
#
|
54
|
-
# @param pos
|
55
|
-
# an integer specifying the text position
|
56
|
-
#
|
57
|
-
# @return the text position that was set.
|
58
|
-
#
|
59
|
-
# @version SketchUp 2014
|
60
|
-
def aligned_text_position=(pos)
|
61
|
-
end
|
62
|
-
|
63
|
-
# The end method returns the point or entity the dimension is referencing at
|
64
|
-
# its end.
|
65
|
-
#
|
66
|
-
# @example
|
67
|
-
# arr = dim.end
|
68
|
-
# if arr[0].nil?
|
69
|
-
# puts "No attached entity. Point is #{arr[1]}"
|
70
|
-
# else
|
71
|
-
# puts "Attached entity: #{arr[0]}, at point #{arr[1]}"
|
72
|
-
# end
|
73
|
-
#
|
74
|
-
# @return Array - An array of size 2:
|
75
|
-
# - Entity being referenced or nil if not associated.
|
76
|
-
# - Point3d that contains the referenced location.
|
77
|
-
#
|
78
|
-
# @version SketchUp 2014
|
79
|
-
def end
|
80
|
-
end
|
81
|
-
|
82
|
-
# The end= method is used to set the end point of the dimension and/or the
|
83
|
-
# entity it is referencing.
|
84
|
-
#
|
85
|
-
# @example
|
86
|
-
# # Reference a point
|
87
|
-
# dim.end = [50, 10, 0]
|
88
|
-
# # Reference end vertex of an edge
|
89
|
-
# dim.end = edge.end
|
90
|
-
# # Attach to an edge's midpoint
|
91
|
-
# p0 = edge.start.position
|
92
|
-
# p1 = edge.end.position
|
93
|
-
# mp = Geom::Point3d.new((p0.x+p1.x)/2.0, (p0.y+p1.y)/2.0, (p0.z+p1.z)/2.0)
|
94
|
-
# dim.end = [edge, mp]
|
95
|
-
#
|
96
|
-
# @param pt_or_entity
|
97
|
-
# This parameter can take several forms:
|
98
|
-
# - an InputPoint
|
99
|
-
# - a Point3d
|
100
|
-
# - a Vertex
|
101
|
-
# - a ConstructionPoint
|
102
|
-
# - an array of size 2: [Edge, Point3d along the edge]
|
103
|
-
# - an array of size 2: [ConstructionLine, Point3d along the line]
|
104
|
-
#
|
105
|
-
# @return self
|
106
|
-
#
|
107
|
-
# @version SketchUp 2014
|
108
|
-
def end=(pt_or_entity)
|
109
|
-
end
|
110
|
-
|
111
|
-
# The {#end_attached_to} method will return the attached end point via an array
|
112
|
-
# containing the {Sketchup::InstancePath} and {Geom::Point3d}.
|
113
|
-
#
|
114
|
-
# @example
|
115
|
-
# # Assuming you have a valid dimension selected that is attached to a
|
116
|
-
# # component instance
|
117
|
-
# dim = Sketchup.active_model.selection[0]
|
118
|
-
# dim.end_attached_to
|
119
|
-
#
|
120
|
-
# @return [Array(Sketchup::InstancePath, Geom::Point3d), nil]
|
121
|
-
#
|
122
|
-
# @version SketchUp 2019
|
123
|
-
def end_attached_to
|
124
|
-
end
|
125
|
-
|
126
|
-
# The {#end_attached_to=} method will attach the ending point to the
|
127
|
-
# {Sketchup::InstancePath} and {Geom::Point3d}.
|
128
|
-
#
|
129
|
-
# @example
|
130
|
-
# # Assuming you have a valid dimension selected that is attached to a
|
131
|
-
# # component instance
|
132
|
-
# dim = Sketchup.active_model.selection[0]
|
133
|
-
# # get the path (instance_path, point)
|
134
|
-
# path = dim.end_attached_to
|
135
|
-
# instance_path = path[0]
|
136
|
-
# instance = instance_path.to_a[0]
|
137
|
-
# point1 = Geom::Point3d.new(0, 0, 0)
|
138
|
-
# point2 = Geom::Point3d.new(20, 20, 20)
|
139
|
-
# instance.definition.entities.add_edges(point1, point2)
|
140
|
-
# edge = instance.definition.entities.grep(Sketchup::Edge).first
|
141
|
-
# new_instance_path = Sketchup::InstancePath.new([instance, edge])
|
142
|
-
# point2 = point2.transform(new_instance_path.transformation.inverse)
|
143
|
-
# dim.end_attached_to = [new_instance_path, point2]
|
144
|
-
#
|
145
|
-
# @param [Array(Sketchup::InstancePath, Geom::Point3d)] path
|
146
|
-
#
|
147
|
-
# @version SketchUp 2019
|
148
|
-
def end_attached_to=(path)
|
149
|
-
end
|
150
|
-
|
151
|
-
# The offset_vector method returns the parallel offset vector from the
|
152
|
-
# reference line to the dimension line measured from the 'start' reference
|
153
|
-
# point.
|
154
|
-
#
|
155
|
-
# @example
|
156
|
-
# vec = dim.offset_vector
|
157
|
-
# puts "Offset vector is #{vec.to_s}"
|
158
|
-
#
|
159
|
-
# @return offset vector as a Vector3d
|
160
|
-
#
|
161
|
-
# @version SketchUp 2014
|
162
|
-
def offset_vector
|
163
|
-
end
|
164
|
-
|
165
|
-
# The offset_vector= method is used to set the parallel offset vector from the
|
166
|
-
# reference line to the dimension line measured from the 'start' reference
|
167
|
-
# point.
|
168
|
-
#
|
169
|
-
# @example
|
170
|
-
# dim.offset_vector = Geom::Vector3d.new(0, 0, 10)
|
171
|
-
#
|
172
|
-
#
|
173
|
-
#
|
174
|
-
# @
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
#
|
179
|
-
#
|
180
|
-
#
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
#
|
185
|
-
#
|
186
|
-
#
|
187
|
-
#
|
188
|
-
#
|
189
|
-
#
|
190
|
-
#
|
191
|
-
#
|
192
|
-
#
|
193
|
-
#
|
194
|
-
|
195
|
-
|
196
|
-
|
197
|
-
#
|
198
|
-
#
|
199
|
-
#
|
200
|
-
|
201
|
-
|
202
|
-
|
203
|
-
#
|
204
|
-
#
|
205
|
-
#
|
206
|
-
#
|
207
|
-
#
|
208
|
-
#
|
209
|
-
#
|
210
|
-
#
|
211
|
-
#
|
212
|
-
#
|
213
|
-
#
|
214
|
-
#
|
215
|
-
#
|
216
|
-
#
|
217
|
-
#
|
218
|
-
#
|
219
|
-
#
|
220
|
-
#
|
221
|
-
#
|
222
|
-
#
|
223
|
-
|
224
|
-
|
225
|
-
|
226
|
-
#
|
227
|
-
#
|
228
|
-
#
|
229
|
-
|
230
|
-
|
231
|
-
|
232
|
-
#
|
233
|
-
#
|
234
|
-
#
|
235
|
-
# @
|
236
|
-
#
|
237
|
-
#
|
238
|
-
|
239
|
-
|
240
|
-
|
241
|
-
#
|
242
|
-
#
|
243
|
-
#
|
244
|
-
|
245
|
-
|
246
|
-
|
247
|
-
#
|
248
|
-
#
|
249
|
-
#
|
250
|
-
#
|
251
|
-
#
|
252
|
-
#
|
253
|
-
#
|
254
|
-
#
|
255
|
-
#
|
256
|
-
#
|
257
|
-
#
|
258
|
-
#
|
259
|
-
#
|
260
|
-
#
|
261
|
-
#
|
262
|
-
#
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
#
|
267
|
-
#
|
268
|
-
#
|
269
|
-
|
270
|
-
|
271
|
-
|
272
|
-
#
|
273
|
-
#
|
274
|
-
#
|
275
|
-
#
|
276
|
-
#
|
277
|
-
#
|
278
|
-
#
|
279
|
-
#
|
280
|
-
#
|
281
|
-
#
|
282
|
-
#
|
283
|
-
#
|
284
|
-
#
|
285
|
-
|
286
|
-
|
287
|
-
|
288
|
-
#
|
289
|
-
#
|
290
|
-
#
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
#
|
295
|
-
#
|
296
|
-
#
|
297
|
-
#
|
298
|
-
#
|
299
|
-
#
|
300
|
-
# @
|
301
|
-
#
|
302
|
-
#
|
303
|
-
|
304
|
-
|
305
|
-
|
306
|
-
|
307
|
-
#
|
308
|
-
# @version SketchUp 2014
|
309
|
-
def text_position=(pos)
|
310
|
-
end
|
311
|
-
|
312
|
-
end
|
1
|
+
# Copyright:: Copyright 2022 Trimble Inc.
|
2
|
+
# License:: The MIT License (MIT)
|
3
|
+
|
4
|
+
# The DimensionLinear class represents linear dimensions.
|
5
|
+
#
|
6
|
+
# @version SketchUp 2014
|
7
|
+
class Sketchup::DimensionLinear < Sketchup::Dimension
|
8
|
+
|
9
|
+
# Constants
|
10
|
+
|
11
|
+
ALIGNED_TEXT_ABOVE = nil # Stub value.
|
12
|
+
ALIGNED_TEXT_CENTER = nil # Stub value.
|
13
|
+
ALIGNED_TEXT_OUTSIDE = nil # Stub value.
|
14
|
+
|
15
|
+
TEXT_CENTERED = nil # Stub value.
|
16
|
+
TEXT_OUTSIDE_END = nil # Stub value.
|
17
|
+
TEXT_OUTSIDE_START = nil # Stub value.
|
18
|
+
|
19
|
+
# Instance Methods
|
20
|
+
|
21
|
+
# The aligned_text_position method returns the text position for dimensions
|
22
|
+
# with aligned text (i.e. has_aligned_text? returns true).
|
23
|
+
# Valid values are class constants:
|
24
|
+
# - DimensionLinear::ALIGNED_TEXT_ABOVE
|
25
|
+
# - DimensionLinear::ALIGNED_TEXT_CENTER
|
26
|
+
# - DimensionLinear::ALIGNED_TEXT_OUTSIDE
|
27
|
+
#
|
28
|
+
# @example
|
29
|
+
# pos = dim.aligned_text_position
|
30
|
+
# if pos == Sketchup::DimensionLinear::ALIGNED_TEXT_ABOVE
|
31
|
+
# puts 'Text is above'
|
32
|
+
# elsif pos == Sketchup::DimensionLinear::ALIGNED_TEXT_CENTER
|
33
|
+
# puts 'Text is centered'
|
34
|
+
# elsif pos == Sketchup::DimensionLinear::ALIGNED_TEXT_OUTSIDE
|
35
|
+
# puts 'Text is outside'
|
36
|
+
# end
|
37
|
+
#
|
38
|
+
# @return an integer specifying the text position
|
39
|
+
#
|
40
|
+
# @version SketchUp 2014
|
41
|
+
def aligned_text_position
|
42
|
+
end
|
43
|
+
|
44
|
+
# The aligned_text_position= method is used to set the text position for
|
45
|
+
# dimensions with aligned text (i.e. has_aligned_text? returns true).
|
46
|
+
# Valid values are class constants:
|
47
|
+
# - DimensionLinear::ALIGNED_TEXT_ABOVE
|
48
|
+
# - DimensionLinear::ALIGNED_TEXT_CENTER
|
49
|
+
# - DimensionLinear::ALIGNED_TEXT_OUTSIDE
|
50
|
+
#
|
51
|
+
# @example
|
52
|
+
# dim.aligned_text_position = Sketchup::DimensionLinear::ALIGNED_TEXT_CENTER
|
53
|
+
#
|
54
|
+
# @param pos
|
55
|
+
# an integer specifying the text position
|
56
|
+
#
|
57
|
+
# @return the text position that was set.
|
58
|
+
#
|
59
|
+
# @version SketchUp 2014
|
60
|
+
def aligned_text_position=(pos)
|
61
|
+
end
|
62
|
+
|
63
|
+
# The end method returns the point or entity the dimension is referencing at
|
64
|
+
# its end.
|
65
|
+
#
|
66
|
+
# @example
|
67
|
+
# arr = dim.end
|
68
|
+
# if arr[0].nil?
|
69
|
+
# puts "No attached entity. Point is #{arr[1]}"
|
70
|
+
# else
|
71
|
+
# puts "Attached entity: #{arr[0]}, at point #{arr[1]}"
|
72
|
+
# end
|
73
|
+
#
|
74
|
+
# @return Array - An array of size 2:
|
75
|
+
# - Entity being referenced or nil if not associated.
|
76
|
+
# - Point3d that contains the referenced location.
|
77
|
+
#
|
78
|
+
# @version SketchUp 2014
|
79
|
+
def end
|
80
|
+
end
|
81
|
+
|
82
|
+
# The end= method is used to set the end point of the dimension and/or the
|
83
|
+
# entity it is referencing.
|
84
|
+
#
|
85
|
+
# @example
|
86
|
+
# # Reference a point
|
87
|
+
# dim.end = [50, 10, 0]
|
88
|
+
# # Reference end vertex of an edge
|
89
|
+
# dim.end = edge.end
|
90
|
+
# # Attach to an edge's midpoint
|
91
|
+
# p0 = edge.start.position
|
92
|
+
# p1 = edge.end.position
|
93
|
+
# mp = Geom::Point3d.new((p0.x+p1.x)/2.0, (p0.y+p1.y)/2.0, (p0.z+p1.z)/2.0)
|
94
|
+
# dim.end = [edge, mp]
|
95
|
+
#
|
96
|
+
# @param pt_or_entity
|
97
|
+
# This parameter can take several forms:
|
98
|
+
# - an InputPoint
|
99
|
+
# - a Point3d
|
100
|
+
# - a Vertex
|
101
|
+
# - a ConstructionPoint
|
102
|
+
# - an array of size 2: [Edge, Point3d along the edge]
|
103
|
+
# - an array of size 2: [ConstructionLine, Point3d along the line]
|
104
|
+
#
|
105
|
+
# @return self
|
106
|
+
#
|
107
|
+
# @version SketchUp 2014
|
108
|
+
def end=(pt_or_entity)
|
109
|
+
end
|
110
|
+
|
111
|
+
# The {#end_attached_to} method will return the attached end point via an array
|
112
|
+
# containing the {Sketchup::InstancePath} and {Geom::Point3d}.
|
113
|
+
#
|
114
|
+
# @example
|
115
|
+
# # Assuming you have a valid dimension selected that is attached to a
|
116
|
+
# # component instance
|
117
|
+
# dim = Sketchup.active_model.selection[0]
|
118
|
+
# dim.end_attached_to
|
119
|
+
#
|
120
|
+
# @return [Array(Sketchup::InstancePath, Geom::Point3d), nil]
|
121
|
+
#
|
122
|
+
# @version SketchUp 2019
|
123
|
+
def end_attached_to
|
124
|
+
end
|
125
|
+
|
126
|
+
# The {#end_attached_to=} method will attach the ending point to the
|
127
|
+
# {Sketchup::InstancePath} and {Geom::Point3d}.
|
128
|
+
#
|
129
|
+
# @example
|
130
|
+
# # Assuming you have a valid dimension selected that is attached to a
|
131
|
+
# # component instance
|
132
|
+
# dim = Sketchup.active_model.selection[0]
|
133
|
+
# # get the path (instance_path, point)
|
134
|
+
# path = dim.end_attached_to
|
135
|
+
# instance_path = path[0]
|
136
|
+
# instance = instance_path.to_a[0]
|
137
|
+
# point1 = Geom::Point3d.new(0, 0, 0)
|
138
|
+
# point2 = Geom::Point3d.new(20, 20, 20)
|
139
|
+
# instance.definition.entities.add_edges(point1, point2)
|
140
|
+
# edge = instance.definition.entities.grep(Sketchup::Edge).first
|
141
|
+
# new_instance_path = Sketchup::InstancePath.new([instance, edge])
|
142
|
+
# point2 = point2.transform(new_instance_path.transformation.inverse)
|
143
|
+
# dim.end_attached_to = [new_instance_path, point2]
|
144
|
+
#
|
145
|
+
# @param [Array(Sketchup::InstancePath, Geom::Point3d)] path
|
146
|
+
#
|
147
|
+
# @version SketchUp 2019
|
148
|
+
def end_attached_to=(path)
|
149
|
+
end
|
150
|
+
|
151
|
+
# The offset_vector method returns the parallel offset vector from the
|
152
|
+
# reference line to the dimension line measured from the 'start' reference
|
153
|
+
# point.
|
154
|
+
#
|
155
|
+
# @example
|
156
|
+
# vec = dim.offset_vector
|
157
|
+
# puts "Offset vector is #{vec.to_s}"
|
158
|
+
#
|
159
|
+
# @return offset vector as a Vector3d
|
160
|
+
#
|
161
|
+
# @version SketchUp 2014
|
162
|
+
def offset_vector
|
163
|
+
end
|
164
|
+
|
165
|
+
# The offset_vector= method is used to set the parallel offset vector from the
|
166
|
+
# reference line to the dimension line measured from the 'start' reference
|
167
|
+
# point.
|
168
|
+
#
|
169
|
+
# @example
|
170
|
+
# dim.offset_vector = Geom::Vector3d.new(0, 0, 10)
|
171
|
+
#
|
172
|
+
# @param [Geom::Vector3d] offset_vector
|
173
|
+
#
|
174
|
+
# @version SketchUp 2014
|
175
|
+
def offset_vector=(offset_vector)
|
176
|
+
end
|
177
|
+
|
178
|
+
# The start method returns the point or entity the dimension is referencing at
|
179
|
+
# its start.
|
180
|
+
#
|
181
|
+
# @example
|
182
|
+
# arr = dim.start
|
183
|
+
# if arr[0].nil?
|
184
|
+
# puts "No attached entity. Point is #{arr[1]}"
|
185
|
+
# else
|
186
|
+
# puts "Attached entity: #{arr[0]}, at point #{arr[1]}"
|
187
|
+
# end
|
188
|
+
#
|
189
|
+
# @return Array - An array of size 2:
|
190
|
+
# - Entity being referenced or nil if not associated.
|
191
|
+
# - Point3d that contains the referenced location.
|
192
|
+
#
|
193
|
+
# @version SketchUp 2014
|
194
|
+
def start
|
195
|
+
end
|
196
|
+
|
197
|
+
# The start= method is used to set the start point of the dimension and/or
|
198
|
+
# the entity it is referencing.
|
199
|
+
#
|
200
|
+
# @example
|
201
|
+
# # Reference a point
|
202
|
+
# dim.start = [50, 10, 0]
|
203
|
+
# # Reference end vertex of an edge
|
204
|
+
# dim.start = edge.end
|
205
|
+
# # Attach to an edge's midpoint
|
206
|
+
# p0 = edge.start.position
|
207
|
+
# p1 = edge.end.position
|
208
|
+
# mp = Geom::Point3d.new((p0.x+p1.x)/2.0, (p0.y+p1.y)/2.0, (p0.z+p1.z)/2.0)
|
209
|
+
# dim.start = [edge, mp]
|
210
|
+
#
|
211
|
+
# @param pt_or_entity
|
212
|
+
# This parameter can take several forms:
|
213
|
+
# - an InputPoint
|
214
|
+
# - a Point3d
|
215
|
+
# - a Vertex
|
216
|
+
# - a ConstructionPoint
|
217
|
+
# - an array of size 2: [Edge, Point3d along the edge]
|
218
|
+
# - an array of size 2: [ConstructionLine, Point3d along the line]
|
219
|
+
#
|
220
|
+
# @return self
|
221
|
+
#
|
222
|
+
# @version SketchUp 2014
|
223
|
+
def start=(pt_or_entity)
|
224
|
+
end
|
225
|
+
|
226
|
+
# The {#start_attached_to} method will return the attached start point via an
|
227
|
+
# array containing the {Sketchup::InstancePath} and {Geom::Point3d}.
|
228
|
+
#
|
229
|
+
# @example
|
230
|
+
# # Assuming you have a valid dimension selected that is attached to a
|
231
|
+
# # component instance
|
232
|
+
# dim = Sketchup.active_model.selection[0]
|
233
|
+
# dim.start_attached_to
|
234
|
+
#
|
235
|
+
# @return [Array(Sketchup::InstancePath, Geom::Point3d), nil]
|
236
|
+
#
|
237
|
+
# @version SketchUp 2019
|
238
|
+
def start_attached_to
|
239
|
+
end
|
240
|
+
|
241
|
+
# The {#start_attached_to=} method will attach the starting point to the
|
242
|
+
# {Sketchup::InstancePath} and {Geom::Point3d}.
|
243
|
+
#
|
244
|
+
# @example
|
245
|
+
# # Assuming you have a valid dimension selected that is attached to a
|
246
|
+
# # component instance
|
247
|
+
# dim = Sketchup.active_model.selection[0]
|
248
|
+
# # get the path (instance_path, point)
|
249
|
+
# path = dim.start_attached_to
|
250
|
+
# instance_path = path[0]
|
251
|
+
# instance = instance_path.to_a[0]
|
252
|
+
# point1 = Geom::Point3d.new(0, 0, 0)
|
253
|
+
# point2 = Geom::Point3d.new(20, 20, 20)
|
254
|
+
# instance.definition.entities.add_edges(point1, point2)
|
255
|
+
# edge = instance.definition.entities.grep(Sketchup::Edge).first
|
256
|
+
# new_instance_path = Sketchup::InstancePath.new([instance, edge])
|
257
|
+
# point2 = point2.transform(new_instance_path.transformation.inverse)
|
258
|
+
# dim.start_attached_to = [new_instance_path, point2]
|
259
|
+
#
|
260
|
+
# @param [Array(Sketchup::InstancePath, Geom::Point3d)] path
|
261
|
+
#
|
262
|
+
# @version SketchUp 2019
|
263
|
+
def start_attached_to=(path)
|
264
|
+
end
|
265
|
+
|
266
|
+
# The text_position method returns the position of the text along the dimension
|
267
|
+
# line. Valid values are class constants:
|
268
|
+
# - DimensionLinear::TEXT_OUTSIDE_START
|
269
|
+
# - DimensionLinear::TEXT_CENTERED
|
270
|
+
# - DimensionLinear::TEXT_OUTSIDE_END
|
271
|
+
#
|
272
|
+
# @example
|
273
|
+
# pos = dim.text_position
|
274
|
+
# if pos == Sketchup::DimensionLinear::TEXT_OUTSIDE_START
|
275
|
+
# puts 'Text position is Outside start'
|
276
|
+
# elsif pos == Sketchup::DimensionLinear::TEXT_CENTERED
|
277
|
+
# puts 'Text position is Centered'
|
278
|
+
# elsif pos == Sketchup::DimensionLinear::TEXT_OUTSIDE_END
|
279
|
+
# puts 'Text position is Outside end'
|
280
|
+
# end
|
281
|
+
#
|
282
|
+
# @return an integer specifying the text position
|
283
|
+
#
|
284
|
+
# @version SketchUp 2014
|
285
|
+
def text_position
|
286
|
+
end
|
287
|
+
|
288
|
+
# The text_position= method is used to set the position of the text along the
|
289
|
+
# dimension line. Valid values are class constants:
|
290
|
+
# - DimensionLinear::TEXT_OUTSIDE_START
|
291
|
+
# - DimensionLinear::TEXT_CENTERED
|
292
|
+
# - DimensionLinear::TEXT_OUTSIDE_END
|
293
|
+
#
|
294
|
+
# @example
|
295
|
+
# dim.text_position = Sketchup::DimensionLinear::TEXT_CENTERED
|
296
|
+
#
|
297
|
+
# @param pos
|
298
|
+
# an integer specifying the text position
|
299
|
+
#
|
300
|
+
# @return the text position that was set.
|
301
|
+
#
|
302
|
+
# @version SketchUp 2014
|
303
|
+
def text_position=(pos)
|
304
|
+
end
|
305
|
+
|
306
|
+
end
|