sketchup-api-stubs 0.7.9 → 0.7.10

Sign up to get free protection for your applications and to get access to all the features.
Files changed (154) hide show
  1. checksums.yaml +4 -4
  2. data/lib/sketchup-api-stubs/sketchup.rb +151 -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 +172 -172
  6. data/lib/sketchup-api-stubs/stubs/Geom/LatLong.rb +126 -126
  7. data/lib/sketchup-api-stubs/stubs/Geom/OrientedBounds2d.rb +102 -102
  8. data/lib/sketchup-api-stubs/stubs/Geom/Point2d.rb +400 -400
  9. data/lib/sketchup-api-stubs/stubs/Geom/Point3d.rb +661 -661
  10. data/lib/sketchup-api-stubs/stubs/Geom/PolygonMesh.rb +509 -509
  11. data/lib/sketchup-api-stubs/stubs/Geom/Transformation.rb +476 -476
  12. data/lib/sketchup-api-stubs/stubs/Geom/Transformation2d.rb +263 -263
  13. data/lib/sketchup-api-stubs/stubs/Geom/UTM.rb +141 -141
  14. data/lib/sketchup-api-stubs/stubs/Geom/Vector2d.rb +522 -522
  15. data/lib/sketchup-api-stubs/stubs/Geom/Vector3d.rb +693 -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 +747 -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/Document.rb +569 -517
  23. data/lib/sketchup-api-stubs/stubs/Layout/Ellipse.rb +29 -29
  24. data/lib/sketchup-api-stubs/stubs/Layout/Entities.rb +148 -148
  25. data/lib/sketchup-api-stubs/stubs/Layout/Entity.rb +356 -353
  26. data/lib/sketchup-api-stubs/stubs/Layout/FormattedText.rb +354 -354
  27. data/lib/sketchup-api-stubs/stubs/Layout/Grid.rb +311 -311
  28. data/lib/sketchup-api-stubs/stubs/Layout/Group.rb +261 -261
  29. data/lib/sketchup-api-stubs/stubs/Layout/Image.rb +91 -91
  30. data/lib/sketchup-api-stubs/stubs/Layout/Label.rb +370 -370
  31. data/lib/sketchup-api-stubs/stubs/Layout/Layer.rb +218 -218
  32. data/lib/sketchup-api-stubs/stubs/Layout/LayerInstance.rb +128 -128
  33. data/lib/sketchup-api-stubs/stubs/Layout/Layers.rb +225 -225
  34. data/lib/sketchup-api-stubs/stubs/Layout/LinearDimension.rb +567 -567
  35. data/lib/sketchup-api-stubs/stubs/Layout/LockedEntityError.rb +10 -10
  36. data/lib/sketchup-api-stubs/stubs/Layout/LockedLayerError.rb +11 -11
  37. data/lib/sketchup-api-stubs/stubs/Layout/Page.rb +183 -183
  38. data/lib/sketchup-api-stubs/stubs/Layout/PageInfo.rb +459 -387
  39. data/lib/sketchup-api-stubs/stubs/Layout/Pages.rb +209 -209
  40. data/lib/sketchup-api-stubs/stubs/Layout/Path.rb +344 -344
  41. data/lib/sketchup-api-stubs/stubs/Layout/Rectangle.rb +174 -174
  42. data/lib/sketchup-api-stubs/stubs/Layout/ReferenceEntity.rb +82 -82
  43. data/lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb +714 -692
  44. data/lib/sketchup-api-stubs/stubs/Layout/Style.rb +1519 -1519
  45. data/lib/sketchup-api-stubs/stubs/Layout/Table.rb +290 -290
  46. data/lib/sketchup-api-stubs/stubs/Layout/TableCell.rb +149 -149
  47. data/lib/sketchup-api-stubs/stubs/Layout/TableColumn.rb +139 -139
  48. data/lib/sketchup-api-stubs/stubs/Layout/TableRow.rb +135 -135
  49. data/lib/sketchup-api-stubs/stubs/Layout.rb +25 -25
  50. data/lib/sketchup-api-stubs/stubs/Length.rb +278 -278
  51. data/lib/sketchup-api-stubs/stubs/Numeric.rb +249 -249
  52. data/lib/sketchup-api-stubs/stubs/Sketchup/Animation.rb +144 -144
  53. data/lib/sketchup-api-stubs/stubs/Sketchup/AppObserver.rb +169 -169
  54. data/lib/sketchup-api-stubs/stubs/Sketchup/ArcCurve.rb +226 -209
  55. data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionaries.rb +150 -150
  56. data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionary.rb +281 -281
  57. data/lib/sketchup-api-stubs/stubs/Sketchup/Axes.rb +149 -149
  58. data/lib/sketchup-api-stubs/stubs/Sketchup/Behavior.rb +302 -302
  59. data/lib/sketchup-api-stubs/stubs/Sketchup/Camera.rb +478 -478
  60. data/lib/sketchup-api-stubs/stubs/Sketchup/ClassificationSchema.rb +63 -63
  61. data/lib/sketchup-api-stubs/stubs/Sketchup/Classifications.rb +121 -121
  62. data/lib/sketchup-api-stubs/stubs/Sketchup/Color.rb +294 -294
  63. data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentDefinition.rb +659 -659
  64. data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentInstance.rb +593 -593
  65. data/lib/sketchup-api-stubs/stubs/Sketchup/Console.rb +76 -76
  66. data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionLine.rb +257 -257
  67. data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionPoint.rb +32 -32
  68. data/lib/sketchup-api-stubs/stubs/Sketchup/Curve.rb +201 -201
  69. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionList.rb +449 -449
  70. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionObserver.rb +74 -74
  71. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionsObserver.rb +104 -104
  72. data/lib/sketchup-api-stubs/stubs/Sketchup/Dimension.rb +165 -165
  73. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionLinear.rb +306 -306
  74. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionObserver.rb +42 -42
  75. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionRadial.rb +87 -87
  76. data/lib/sketchup-api-stubs/stubs/Sketchup/Drawingelement.rb +406 -406
  77. data/lib/sketchup-api-stubs/stubs/Sketchup/Edge.rb +397 -397
  78. data/lib/sketchup-api-stubs/stubs/Sketchup/EdgeUse.rb +211 -211
  79. data/lib/sketchup-api-stubs/stubs/Sketchup/Entities.rb +1242 -1239
  80. data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesBuilder.rb +261 -261
  81. data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesObserver.rb +127 -127
  82. data/lib/sketchup-api-stubs/stubs/Sketchup/Entity.rb +519 -545
  83. data/lib/sketchup-api-stubs/stubs/Sketchup/EntityObserver.rb +60 -60
  84. data/lib/sketchup-api-stubs/stubs/Sketchup/ExtensionsManager.rb +125 -125
  85. data/lib/sketchup-api-stubs/stubs/Sketchup/Face.rb +937 -937
  86. data/lib/sketchup-api-stubs/stubs/Sketchup/FrameChangeObserver.rb +102 -102
  87. data/lib/sketchup-api-stubs/stubs/Sketchup/Group.rb +750 -750
  88. data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Request.rb +282 -282
  89. data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Response.rb +62 -62
  90. data/lib/sketchup-api-stubs/stubs/Sketchup/Http.rb +27 -27
  91. data/lib/sketchup-api-stubs/stubs/Sketchup/Image.rb +468 -468
  92. data/lib/sketchup-api-stubs/stubs/Sketchup/ImageRep.rb +266 -266
  93. data/lib/sketchup-api-stubs/stubs/Sketchup/Importer.rb +189 -189
  94. data/lib/sketchup-api-stubs/stubs/Sketchup/InputPoint.rb +406 -406
  95. data/lib/sketchup-api-stubs/stubs/Sketchup/InstanceObserver.rb +84 -84
  96. data/lib/sketchup-api-stubs/stubs/Sketchup/InstancePath.rb +306 -306
  97. data/lib/sketchup-api-stubs/stubs/Sketchup/Layer.rb +326 -326
  98. data/lib/sketchup-api-stubs/stubs/Sketchup/LayerFolder.rb +422 -422
  99. data/lib/sketchup-api-stubs/stubs/Sketchup/Layers.rb +427 -427
  100. data/lib/sketchup-api-stubs/stubs/Sketchup/LayersObserver.rb +249 -249
  101. data/lib/sketchup-api-stubs/stubs/Sketchup/Licensing/ExtensionLicense.rb +86 -86
  102. data/lib/sketchup-api-stubs/stubs/Sketchup/Licensing.rb +48 -48
  103. data/lib/sketchup-api-stubs/stubs/Sketchup/LineStyle.rb +24 -24
  104. data/lib/sketchup-api-stubs/stubs/Sketchup/LineStyles.rb +114 -114
  105. data/lib/sketchup-api-stubs/stubs/Sketchup/Loop.rb +137 -137
  106. data/lib/sketchup-api-stubs/stubs/Sketchup/Material.rb +414 -414
  107. data/lib/sketchup-api-stubs/stubs/Sketchup/Materials.rb +317 -317
  108. data/lib/sketchup-api-stubs/stubs/Sketchup/MaterialsObserver.rb +142 -142
  109. data/lib/sketchup-api-stubs/stubs/Sketchup/Menu.rb +93 -93
  110. data/lib/sketchup-api-stubs/stubs/Sketchup/Model.rb +1656 -1652
  111. data/lib/sketchup-api-stubs/stubs/Sketchup/ModelObserver.rb +357 -357
  112. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsManager.rb +130 -130
  113. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProvider.rb +271 -271
  114. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProviderObserver.rb +58 -58
  115. data/lib/sketchup-api-stubs/stubs/Sketchup/Overlay.rb +490 -490
  116. data/lib/sketchup-api-stubs/stubs/Sketchup/OverlaysManager.rb +116 -116
  117. data/lib/sketchup-api-stubs/stubs/Sketchup/Page.rb +797 -797
  118. data/lib/sketchup-api-stubs/stubs/Sketchup/Pages.rb +361 -361
  119. data/lib/sketchup-api-stubs/stubs/Sketchup/PagesObserver.rb +77 -77
  120. data/lib/sketchup-api-stubs/stubs/Sketchup/PickHelper.rb +480 -478
  121. data/lib/sketchup-api-stubs/stubs/Sketchup/RegionalSettings.rb +43 -43
  122. data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptions.rb +373 -361
  123. data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptionsObserver.rb +45 -45
  124. data/lib/sketchup-api-stubs/stubs/Sketchup/SectionPlane.rb +150 -150
  125. data/lib/sketchup-api-stubs/stubs/Sketchup/Selection.rb +458 -458
  126. data/lib/sketchup-api-stubs/stubs/Sketchup/SelectionObserver.rb +115 -115
  127. data/lib/sketchup-api-stubs/stubs/Sketchup/Set.rb +212 -212
  128. data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfo.rb +255 -255
  129. data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfoObserver.rb +59 -59
  130. data/lib/sketchup-api-stubs/stubs/Sketchup/Skp.rb +40 -40
  131. data/lib/sketchup-api-stubs/stubs/Sketchup/Style.rb +69 -69
  132. data/lib/sketchup-api-stubs/stubs/Sketchup/Styles.rb +217 -217
  133. data/lib/sketchup-api-stubs/stubs/Sketchup/Text.rb +262 -262
  134. data/lib/sketchup-api-stubs/stubs/Sketchup/Texture.rb +217 -217
  135. data/lib/sketchup-api-stubs/stubs/Sketchup/TextureWriter.rb +237 -237
  136. data/lib/sketchup-api-stubs/stubs/Sketchup/Tool.rb +834 -834
  137. data/lib/sketchup-api-stubs/stubs/Sketchup/Tools.rb +132 -132
  138. data/lib/sketchup-api-stubs/stubs/Sketchup/ToolsObserver.rb +156 -156
  139. data/lib/sketchup-api-stubs/stubs/Sketchup/UVHelper.rb +75 -75
  140. data/lib/sketchup-api-stubs/stubs/Sketchup/Vertex.rb +142 -142
  141. data/lib/sketchup-api-stubs/stubs/Sketchup/View.rb +1329 -1311
  142. data/lib/sketchup-api-stubs/stubs/Sketchup/ViewObserver.rb +45 -45
  143. data/lib/sketchup-api-stubs/stubs/Sketchup.rb +1394 -1377
  144. data/lib/sketchup-api-stubs/stubs/SketchupExtension.rb +353 -353
  145. data/lib/sketchup-api-stubs/stubs/String.rb +24 -24
  146. data/lib/sketchup-api-stubs/stubs/UI/Command.rb +387 -389
  147. data/lib/sketchup-api-stubs/stubs/UI/HtmlDialog.rb +505 -494
  148. data/lib/sketchup-api-stubs/stubs/UI/Notification.rb +269 -269
  149. data/lib/sketchup-api-stubs/stubs/UI/Toolbar.rb +241 -241
  150. data/lib/sketchup-api-stubs/stubs/UI/WebDialog.rb +633 -635
  151. data/lib/sketchup-api-stubs/stubs/UI.rb +728 -683
  152. data/lib/sketchup-api-stubs/stubs/_top_level.rb +303 -303
  153. data/lib/sketchup-api-stubs.rb +1 -1
  154. metadata +3 -3
@@ -1,567 +1,567 @@
1
- # Copyright:: Copyright 2023 Trimble Inc.
2
- # License:: The MIT License (MIT)
3
-
4
- # References a linear dimension entity. A {Layout::LinearDimension} is composed
5
- # of the following sub-entities:
6
- # - two 'extension lines' that connect to the {Layout::Entity} being
7
- # dimensioned.
8
- # - a 'dimension line' connecting the ends of the leaders. This may be
9
- # represented by one or two {Layout::Path}s depending on appearance.
10
- # - an optional 'leader line' that is used for small {Layout::LinearDimension}s.
11
- # - a 'dimension text' that displays the {Layout::LinearDimension}'s text.
12
- #
13
- # There are six points that may be modified for a {Layout::LinearDimension}:
14
- # - two 'connection points' that define the start and end of the
15
- # {Layout::LinearDimension}.
16
- # - two 'extent points' that define the start and end of the dimension line and
17
- # are the ends of the two extension lines.
18
- # - two 'offset points' that define the starting points of the extension lines.
19
- #
20
- # @version LayOut 2018
21
- class Layout::LinearDimension < Layout::Entity
22
-
23
- # Constants
24
-
25
- LEADER_LINE_TYPE_BEZIER = nil # Stub value.
26
- LEADER_LINE_TYPE_HIDDEN = nil # Stub value.
27
- LEADER_LINE_TYPE_SINGLE_SEGMENT = nil # Stub value.
28
- LEADER_LINE_TYPE_TWO_SEGMENT = nil # Stub value.
29
-
30
- # Instance Methods
31
-
32
- # The {#auto_scale=} method sets whether the scale for the
33
- # {Layout::LinearDimension} is set automatically.
34
- #
35
- # @example
36
- # start_point = Geom::Point2d.new(1, 1)
37
- # end_point = Geom::Point2d.new(5, 5)
38
- # height = 1.0
39
- # dim = Layout::LinearDimension.new(start_point, end_point, height)
40
- # dim.auto_scale = true
41
- #
42
- # @param [Boolean] uses_auto_scale
43
- #
44
- # @raise [LockedLayerError] if the {Layout::LinearDimension} is on a locked
45
- # {Layout::Layer}
46
- #
47
- # @raise [LockedEntityError] if the {Layout::LinearDimension} is locked
48
- #
49
- # @version LayOut 2018
50
- def auto_scale=(uses_auto_scale)
51
- end
52
-
53
- # The {#auto_scale?} method returns whether the scale for the
54
- # {Layout::LinearDimension} is set automatically.
55
- #
56
- # @example
57
- # start_point = Geom::Point2d.new(1, 1)
58
- # end_point = Geom::Point2d.new(5, 5)
59
- # height = 1.0
60
- # dim = Layout::LinearDimension.new(start_point, end_point, height)
61
- # uses_auto_scale = dim.auto_scale?
62
- #
63
- # @return [Boolean]
64
- #
65
- # @version LayOut 2018
66
- def auto_scale?
67
- end
68
-
69
- # The {#connect} method connects the {Layout::LinearDimension} to one or two
70
- # {Layout::Entity}s using the provided {Layout::ConnectionPoint}s. The
71
- # {Layout::LinearDimension} must be in the same {Layout::Document} as the
72
- # {Layout::Entity}s, and on the same {Layout::Page} if the {Layout::Entity}s
73
- # are on non-shared {Layout::Layer}s.
74
- #
75
- # @example
76
- # doc = Layout::Document.open("C:/path/to/document.layout")
77
- # point_1 = Geom::Point2d.new(5, 7.5)
78
- # point_2 = Geom::Point2d.new(8.5, 9)
79
- # table = Layout::Rectangle.new([point_1, point_2])
80
- # doc.add_entity(table, doc.layers.first, doc.pages.first)
81
- # start_point = Layout::ConnectionPoint.new(table, point_1)
82
- # end_point = Layout::ConnectionPoint.new(table, point_2)
83
- # height = 1.0
84
- # dim = Layout::LinearDimension.new(Geom::Point2d.new(1, 1),
85
- # Geom::Point2d.new(5, 5), height)
86
- # dim.connect(start_point, end_point)
87
- #
88
- # @param [Layout::ConnectionPoint] start_connection
89
- #
90
- # @param [Layout::ConnectionPoint] end_connection
91
- #
92
- # @raise [LockedLayerError] if the {Layout::LinearDimension} is on a locked
93
- # {Layout::Layer}
94
- #
95
- # @raise [LockedEntityError] if the {Layout::LinearDimension} is locked
96
- #
97
- # @version LayOut 2018
98
- def connect(start_connection, end_connection)
99
- end
100
-
101
- # The {#custom_text=} method sets whether the {Layout::LinearDimension} uses
102
- # custom text. When +true+, the {Layout::LinearDimension} will display a custom
103
- # string that doesn't change. When +false+, it will display the length
104
- # measurement and will update automatically.
105
- #
106
- # @example
107
- # start_point = Geom::Point2d.new(1, 1)
108
- # end_point = Geom::Point2d.new(5, 5)
109
- # height = 1.0
110
- # dim = Layout::LinearDimension.new(start_point, end_point, height)
111
- # dim.custom_text = true
112
- #
113
- # @param [Boolean] uses_custom_text
114
- #
115
- # @raise [LockedLayerError] if the {Layout::LinearDimension} is on a locked
116
- # {Layout::Layer}
117
- #
118
- # @raise [LockedEntityError] if the {Layout::LinearDimension} is locked
119
- #
120
- # @version LayOut 2018
121
- def custom_text=(uses_custom_text)
122
- end
123
-
124
- # The {#custom_text?} method returns whether the {Layout::LinearDimension}
125
- # uses custom text. When +true+, the {Layout::LinearDimension} will display a
126
- # custom string that doesn't change. When +false+, it will display the length
127
- # measurement and will update automatically.
128
- #
129
- # @example
130
- # start_point = Geom::Point2d.new(1, 1)
131
- # end_point = Geom::Point2d.new(5, 5)
132
- # height = 1.0
133
- # dim = Layout::LinearDimension.new(start_point, end_point, height)
134
- # # returns false
135
- # uses_custom_text = dim.custom_text?
136
- #
137
- # @return [Boolean]
138
- #
139
- # @version LayOut 2018
140
- def custom_text?
141
- end
142
-
143
- # The {#disconnect} method disconnects the {Layout::LinearDimension} from its
144
- # {Layout::ConnectionPoint}s. The dimension will not be adjusted by
145
- # disconnecting from its {Layout::ConnectionPoint}s.
146
- #
147
- # @example
148
- # start_point = Geom::Point2d.new(1, 1)
149
- # end_point = Geom::Point2d.new(5, 5)
150
- # height = 1.0
151
- # dim = Layout::LinearDimension.new(start_point, end_point, height)
152
- # dim.disconnect
153
- #
154
- # @raise [LockedLayerError] if the {Layout::LinearDimension} is on a locked
155
- # {Layout::Layer}
156
- #
157
- # @raise [LockedEntityError] if the {Layout::LinearDimension} is locked
158
- #
159
- # @version LayOut 2018
160
- def disconnect
161
- end
162
-
163
- # The {#end_connection_point} method returns the paper space location for the
164
- # second connection.
165
- #
166
- # @example
167
- # start_point = Geom::Point2d.new(1, 1)
168
- # end_point = Geom::Point2d.new(5, 5)
169
- # height = 1.0
170
- # dim = Layout::LinearDimension.new(start_point, end_point, height)
171
- # end_connection = dim.end_connection_point
172
- #
173
- # @return [Geom::Point2d]
174
- #
175
- # @version LayOut 2018
176
- def end_connection_point
177
- end
178
-
179
- # The {#end_connection_point=} method sets the paper space location for the
180
- # second connection.
181
- #
182
- # @example
183
- # start_point = Geom::Point2d.new(1, 1)
184
- # end_point = Geom::Point2d.new(5, 5)
185
- # height = 1.0
186
- # dim = Layout::LinearDimension.new(start_point, end_point, height)
187
- # dim.end_connection_point = Geom::Point2d.new(6, 6)
188
- #
189
- # @param [Geom::Point2d] end_point
190
- #
191
- # @raise [LockedLayerError] if the {Layout::LinearDimension} is on a locked
192
- # {Layout::Layer}
193
- #
194
- # @raise [LockedEntityError] if the {Layout::LinearDimension} is locked
195
- #
196
- # @version LayOut 2018
197
- def end_connection_point=(end_point)
198
- end
199
-
200
- # The {#end_extent_point} method returns the paper space location for the
201
- # end of the dimension line.
202
- #
203
- # @example
204
- # start_point = Geom::Point2d.new(1, 1)
205
- # end_point = Geom::Point2d.new(5, 5)
206
- # height = 1.0
207
- # dim = Layout::LinearDimension.new(start_point, end_point, height)
208
- # end_ext_point = dim.end_extent_point
209
- #
210
- # @return [Geom::Point2d] end_extent
211
- #
212
- # @version LayOut 2018
213
- def end_extent_point
214
- end
215
-
216
- # The {#end_extent_point=} method sets the paper space location for the
217
- # end of the dimension line.
218
- #
219
- # @example
220
- # start_point = Geom::Point2d.new(1, 1)
221
- # end_point = Geom::Point2d.new(5, 5)
222
- # height = 1.0
223
- # dim = Layout::LinearDimension.new(start_point, end_point, height)
224
- # end_ext_point = Geom::Point2d.new(5, 6)
225
- # dim.end_extent_point = end_ext_point
226
- #
227
- # @param [Geom::Point2d] end_extent
228
- #
229
- # @raise [LockedLayerError] if the {Layout::LinearDimension} is on a locked
230
- # {Layout::Layer}
231
- #
232
- # @raise [LockedEntityError] if the {Layout::LinearDimension} is locked
233
- #
234
- # @version LayOut 2018
235
- def end_extent_point=(end_extent)
236
- end
237
-
238
- # The {#end_offset_length=} method sets the length of the offset from the
239
- # second {Layout::ConnectionPoint} to the start of the second extension line.
240
- # The {Layout::ConnectionPoint} and extent point will not move.
241
- #
242
- # @example
243
- # start_point = Geom::Point2d.new(1, 1)
244
- # end_point = Geom::Point2d.new(5, 5)
245
- # height = 1.0
246
- # dim = Layout::LinearDimension.new(start_point, end_point, height)
247
- # end_ext_point = Geom::Point2d.new(5, 6)
248
- # dim.end_offset_length = 0.5
249
- #
250
- # @param [Numeric] offset_length
251
- #
252
- # @raise [LockedLayerError] if the {Layout::LinearDimension} is on a locked
253
- # {Layout::Layer}
254
- #
255
- # @raise [LockedEntityError] if the {Layout::LinearDimension} is locked
256
- #
257
- # @version LayOut 2018
258
- def end_offset_length=(offset_length)
259
- end
260
-
261
- # The {#end_offset_point} method returns the paper space location for the
262
- # end of the first extension line. The first extension line runs from this
263
- # offset point to the end extent point.
264
- #
265
- # @example
266
- # start_point = Geom::Point2d.new(1, 1)
267
- # end_point = Geom::Point2d.new(5, 5)
268
- # height = 1.0
269
- # dim = Layout::LinearDimension.new(start_point, end_point, height)
270
- # end_offset = dim.end_offset_point
271
- #
272
- # @return [Geom::Point2d] end_offset
273
- #
274
- # @version LayOut 2018
275
- def end_offset_point
276
- end
277
-
278
- # The {#entities} method returns the {Layout::Entities} that represent the
279
- # {Layout::LinearDimension} in its exploded form. Depending on the appearance
280
- # of the {Layout::LinearDimension}, this may return anywhere from four to six
281
- # {Layout::Entity}s: start extension line, end extension line, one or two
282
- # dimension lines, dimension text, and optionally the leader line.
283
- #
284
- # @example
285
- # start_point = Geom::Point2d.new(1, 1)
286
- # end_point = Geom::Point2d.new(5, 5)
287
- # height = 1.0
288
- # dim = Layout::LinearDimension.new(start_point, end_point, height)
289
- # entites = dim.entities
290
- #
291
- # @return [Layout::Entities]
292
- #
293
- # @version LayOut 2018
294
- def entities
295
- end
296
-
297
- # The {#initialize} method creates a new disconnected {Layout::LinearDimension}.
298
- #
299
- # @example
300
- # start_point = Geom::Point2d.new(1, 1)
301
- # end_point = Geom::Point2d.new(5, 5)
302
- # height = 1.0
303
- # dim = Layout::LinearDimension.new(start_point, end_point, height)
304
- #
305
- # @param [Geom::Point2d] start_point
306
- #
307
- # @param [Geom::Point2d] end_point
308
- #
309
- # @param [Numeric] height
310
- # Distance from the start and end points to the
311
- # dimension line
312
- #
313
- # @return [Layout::LinearDimension]
314
- #
315
- # @version LayOut 2018
316
- def initialize(start_point, end_point, height)
317
- end
318
-
319
- # The {#leader_line_type} method returns the type of leader line the
320
- # {Layout::LinearDimension} is using.
321
- #
322
- # The leader line type can be one of the following:
323
- # [+Layout::LinearDimension::LEADER_LINE_TYPE_SINGLE_SEGMENT+]
324
- # [+Layout::LinearDimension::LEADER_LINE_TYPE_TWO_SEGMENT+]
325
- # [+Layout::LinearDimension::LEADER_LINE_TYPE_BEZIER+]
326
- # [+Layout::LinearDimension::LEADER_LINE_TYPE_HIDDEN+]
327
- #
328
- # @example
329
- # start_point = Geom::Point2d.new(1, 1)
330
- # end_point = Geom::Point2d.new(5, 5)
331
- # height = 1.0
332
- # dim = Layout::LinearDimension.new(start_point, end_point, height)
333
- # type = dim.leader_line_type
334
- #
335
- # @return [Integer]
336
- #
337
- # @version LayOut 2018
338
- def leader_line_type
339
- end
340
-
341
- # The {#leader_line_type=} method sets the type of leader line the
342
- # {Layout::LinearDimension} is using.
343
- #
344
- # The leader line type can be one of the following:
345
- # [+Layout::LinearDimension::LEADER_LINE_TYPE_SINGLE_SEGMENT+]
346
- # [+Layout::LinearDimension::LEADER_LINE_TYPE_TWO_SEGMENT+]
347
- # [+Layout::LinearDimension::LEADER_LINE_TYPE_BEZIER+]
348
- # [+Layout::LinearDimension::LEADER_LINE_TYPE_HIDDEN+]
349
- #
350
- # @example
351
- # start_point = Geom::Point2d.new(1, 1)
352
- # end_point = Geom::Point2d.new(5, 5)
353
- # height = 1.0
354
- # dim = Layout::LinearDimension.new(start_point, end_point, height)
355
- # dim.leader_line_type = Layout::LinearDimension::LEADER_LINE_TYPE_BEZIER
356
- #
357
- # @param [Integer] type
358
- # The leader line type
359
- #
360
- # @raise [ArgumentError] if leader_line_type is not a valid leader line type
361
- #
362
- # @raise [LockedLayerError] if the {Layout::LinearDimension} is on a locked
363
- # {Layout::Layer}
364
- #
365
- # @raise [LockedEntityError] if the {Layout::LinearDimension} is locked
366
- #
367
- # @version LayOut 2018
368
- def leader_line_type=(type)
369
- end
370
-
371
- # The {#scale} method returns the scale being used for the
372
- # {Layout::LinearDimension}.
373
- #
374
- # @example
375
- # start_point = Geom::Point2d.new(1, 1)
376
- # end_point = Geom::Point2d.new(5, 5)
377
- # height = 1.0
378
- # dim = Layout::LinearDimension.new(start_point, end_point, height)
379
- # scale = dim.scale
380
- #
381
- # @return [Numeric] scale
382
- #
383
- # @version LayOut 2018
384
- def scale
385
- end
386
-
387
- # The {#scale=} method sets the scale being used for the
388
- # {Layout::LinearDimension}.
389
- #
390
- # @example
391
- # start_point = Geom::Point2d.new(1, 1)
392
- # end_point = Geom::Point2d.new(5, 5)
393
- # height = 1.0
394
- # dim = Layout::LinearDimension.new(start_point, end_point, height)
395
- # dim.scale = 1.5
396
- #
397
- # @param [Numeric] scale
398
- #
399
- # @raise [LockedLayerError] if the {Layout::LinearDimension} is on a locked
400
- # {Layout::Layer}
401
- #
402
- # @raise [ArgumentError] if scale is negative, or greater than 1.0
403
- #
404
- # @raise [LockedEntityError] if the {Layout::LinearDimension} is locked
405
- #
406
- # @version LayOut 2018
407
- def scale=(scale)
408
- end
409
-
410
- # The {#start_connection_point} method returns the paper space location for the
411
- # first connection.
412
- #
413
- # @example
414
- # start_point = Geom::Point2d.new(1, 1)
415
- # end_point = Geom::Point2d.new(5, 5)
416
- # height = 1.0
417
- # dim = Layout::LinearDimension.new(start_point, end_point, height)
418
- # start_connection = dim.start_connection_point
419
- #
420
- # @return [Geom::Point2d]
421
- #
422
- # @version LayOut 2018
423
- def start_connection_point
424
- end
425
-
426
- # The {#start_connection_point=} method sets the paper space location for the
427
- # first connection.
428
- #
429
- # @example
430
- # start_point = Geom::Point2d.new(1, 1)
431
- # end_point = Geom::Point2d.new(5, 5)
432
- # height = 1.0
433
- # dim = Layout::LinearDimension.new(start_point, end_point, height)
434
- # dim.start_connection_point = Geom::Point2d.new(2, 2)
435
- #
436
- # @param [Geom::Point2d] start_point
437
- #
438
- # @raise [LockedLayerError] if the {Layout::LinearDimension} is on a locked
439
- # {Layout::Layer}
440
- #
441
- # @raise [LockedEntityError] if the {Layout::LinearDimension} is locked
442
- #
443
- # @version LayOut 2018
444
- def start_connection_point=(start_point)
445
- end
446
-
447
- # The {#start_extent_point} method returns the paper space location for the
448
- # start of the dimension line.
449
- #
450
- # @example
451
- # start_point = Geom::Point2d.new(1, 1)
452
- # end_point = Geom::Point2d.new(5, 5)
453
- # height = 1.0
454
- # dim = Layout::LinearDimension.new(start_point, end_point, height)
455
- # start_ext_point = dim.start_extent_point
456
- #
457
- # @return [Geom::Point2d] start_extent
458
- #
459
- # @version LayOut 2018
460
- def start_extent_point
461
- end
462
-
463
- # The {#start_extent_point=} method sets the paper space location for the
464
- # start of the dimension line.
465
- #
466
- # @example
467
- # start_point = Geom::Point2d.new(1, 1)
468
- # end_point = Geom::Point2d.new(5, 5)
469
- # height = 1.0
470
- # dim = Layout::LinearDimension.new(start_point, end_point, height)
471
- # start_ext_point = Geom::Point2d.new(2, 3)
472
- # dim.start_extent_point = start_ext_point
473
- #
474
- # @param [Geom::Point2d] start_extent
475
- #
476
- # @raise [LockedLayerError] if the {Layout::LinearDimension} is on a locked
477
- # {Layout::Layer}
478
- #
479
- # @raise [LockedEntityError] if the {Layout::LinearDimension} is locked
480
- #
481
- # @version LayOut 2018
482
- def start_extent_point=(start_extent)
483
- end
484
-
485
- # The {#start_offset_length=} method sets the length of the offset from the
486
- # first {Layout::ConnectionPoint} to the start of the first extension line. The
487
- # {Layout::ConnectionPoint} and extent point will not move.
488
- #
489
- # @example
490
- # start_point = Geom::Point2d.new(1, 1)
491
- # end_point = Geom::Point2d.new(5, 5)
492
- # height = 1.0
493
- # dim = Layout::LinearDimension.new(start_point, end_point, height)
494
- # end_ext_point = Geom::Point2d.new(5, 6)
495
- # dim.start_offset_length = 0.5
496
- #
497
- # @param [Numeric] offset_length
498
- #
499
- # @raise [LockedLayerError] if the {Layout::LinearDimension} is on a locked
500
- # {Layout::Layer}
501
- #
502
- # @raise [LockedEntityError] if the {Layout::LinearDimension} is locked
503
- #
504
- # @version LayOut 2018
505
- def start_offset_length=(offset_length)
506
- end
507
-
508
- # The {#start_offset_point} method returns the paper space location for the
509
- # start of the first extension line. The first extension line runs from this
510
- # offset point to the start extent point.
511
- #
512
- # @example
513
- # start_point = Geom::Point2d.new(1, 1)
514
- # end_point = Geom::Point2d.new(5, 5)
515
- # height = 1.0
516
- # dim = Layout::LinearDimension.new(start_point, end_point, height)
517
- # start_offset = dim.start_offset_point
518
- #
519
- # @return [Geom::Point2d] start_offset
520
- #
521
- # @version LayOut 2018
522
- def start_offset_point
523
- end
524
-
525
- # The {#text} method returns a copy of the {Layout::LinearDimension}'s
526
- # {Layout::FormattedText}.
527
- #
528
- # @example
529
- # start_point = Geom::Point2d.new(1, 1)
530
- # end_point = Geom::Point2d.new(5, 5)
531
- # height = 1.0
532
- # dim = Layout::LinearDimension.new(start_point, end_point, height)
533
- # text = dim.text
534
- #
535
- # @note With the addition of auto-text in dimensions for LayOut 2019.2, the
536
- # copy of the dimension text incorrectly provided the plain text when
537
- # requesting the display text. This has been fixed for LayOut 2020.1.
538
- #
539
- # @return [Layout::FormattedText]
540
- #
541
- # @version LayOut 2018
542
- def text
543
- end
544
-
545
- # The {#text=} method sets the {Layout::LinearDimension}'s
546
- # {Layout::FormattedText}.
547
- #
548
- # @example
549
- # start_point = Geom::Point2d.new(1, 1)
550
- # end_point = Geom::Point2d.new(5, 5)
551
- # height = 1.0
552
- # dim = Layout::LinearDimension.new(start_point, end_point, height)
553
- # anchor_type = Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT
554
- # dim.text = Layout::FormattedText.new("Hello LayOut", start_point, anchor_type)
555
- #
556
- # @param [Layout::FormattedText] formatted_text
557
- #
558
- # @raise [LockedLayerError] if the {Layout::LinearDimension} is on a locked
559
- # {Layout::Layer}
560
- #
561
- # @raise [LockedEntityError] if the {Layout::LinearDimension} is locked
562
- #
563
- # @version LayOut 2018
564
- def text=(formatted_text)
565
- end
566
-
567
- end
1
+ # Copyright:: Copyright 2024 Trimble Inc.
2
+ # License:: The MIT License (MIT)
3
+
4
+ # References a linear dimension entity. A {Layout::LinearDimension} is composed
5
+ # of the following sub-entities:
6
+ # - two 'extension lines' that connect to the {Layout::Entity} being
7
+ # dimensioned.
8
+ # - a 'dimension line' connecting the ends of the leaders. This may be
9
+ # represented by one or two {Layout::Path}s depending on appearance.
10
+ # - an optional 'leader line' that is used for small {Layout::LinearDimension}s.
11
+ # - a 'dimension text' that displays the {Layout::LinearDimension}'s text.
12
+ #
13
+ # There are six points that may be modified for a {Layout::LinearDimension}:
14
+ # - two 'connection points' that define the start and end of the
15
+ # {Layout::LinearDimension}.
16
+ # - two 'extent points' that define the start and end of the dimension line and
17
+ # are the ends of the two extension lines.
18
+ # - two 'offset points' that define the starting points of the extension lines.
19
+ #
20
+ # @version LayOut 2018
21
+ class Layout::LinearDimension < Layout::Entity
22
+
23
+ # Constants
24
+
25
+ LEADER_LINE_TYPE_BEZIER = nil # Stub value.
26
+ LEADER_LINE_TYPE_HIDDEN = nil # Stub value.
27
+ LEADER_LINE_TYPE_SINGLE_SEGMENT = nil # Stub value.
28
+ LEADER_LINE_TYPE_TWO_SEGMENT = nil # Stub value.
29
+
30
+ # Instance Methods
31
+
32
+ # The {#auto_scale=} method sets whether the scale for the
33
+ # {Layout::LinearDimension} is set automatically.
34
+ #
35
+ # @example
36
+ # start_point = Geom::Point2d.new(1, 1)
37
+ # end_point = Geom::Point2d.new(5, 5)
38
+ # height = 1.0
39
+ # dim = Layout::LinearDimension.new(start_point, end_point, height)
40
+ # dim.auto_scale = true
41
+ #
42
+ # @param [Boolean] uses_auto_scale
43
+ #
44
+ # @raise [LockedLayerError] if the {Layout::LinearDimension} is on a locked
45
+ # {Layout::Layer}
46
+ #
47
+ # @raise [LockedEntityError] if the {Layout::LinearDimension} is locked
48
+ #
49
+ # @version LayOut 2018
50
+ def auto_scale=(uses_auto_scale)
51
+ end
52
+
53
+ # The {#auto_scale?} method returns whether the scale for the
54
+ # {Layout::LinearDimension} is set automatically.
55
+ #
56
+ # @example
57
+ # start_point = Geom::Point2d.new(1, 1)
58
+ # end_point = Geom::Point2d.new(5, 5)
59
+ # height = 1.0
60
+ # dim = Layout::LinearDimension.new(start_point, end_point, height)
61
+ # uses_auto_scale = dim.auto_scale?
62
+ #
63
+ # @return [Boolean]
64
+ #
65
+ # @version LayOut 2018
66
+ def auto_scale?
67
+ end
68
+
69
+ # The {#connect} method connects the {Layout::LinearDimension} to one or two
70
+ # {Layout::Entity}s using the provided {Layout::ConnectionPoint}s. The
71
+ # {Layout::LinearDimension} must be in the same {Layout::Document} as the
72
+ # {Layout::Entity}s, and on the same {Layout::Page} if the {Layout::Entity}s
73
+ # are on non-shared {Layout::Layer}s.
74
+ #
75
+ # @example
76
+ # doc = Layout::Document.open("C:/path/to/document.layout")
77
+ # point_1 = Geom::Point2d.new(5, 7.5)
78
+ # point_2 = Geom::Point2d.new(8.5, 9)
79
+ # table = Layout::Rectangle.new([point_1, point_2])
80
+ # doc.add_entity(table, doc.layers.first, doc.pages.first)
81
+ # start_point = Layout::ConnectionPoint.new(table, point_1)
82
+ # end_point = Layout::ConnectionPoint.new(table, point_2)
83
+ # height = 1.0
84
+ # dim = Layout::LinearDimension.new(Geom::Point2d.new(1, 1),
85
+ # Geom::Point2d.new(5, 5), height)
86
+ # dim.connect(start_point, end_point)
87
+ #
88
+ # @param [Layout::ConnectionPoint] start_connection
89
+ #
90
+ # @param [Layout::ConnectionPoint] end_connection
91
+ #
92
+ # @raise [LockedLayerError] if the {Layout::LinearDimension} is on a locked
93
+ # {Layout::Layer}
94
+ #
95
+ # @raise [LockedEntityError] if the {Layout::LinearDimension} is locked
96
+ #
97
+ # @version LayOut 2018
98
+ def connect(start_connection, end_connection)
99
+ end
100
+
101
+ # The {#custom_text=} method sets whether the {Layout::LinearDimension} uses
102
+ # custom text. When +true+, the {Layout::LinearDimension} will display a custom
103
+ # string that doesn't change. When +false+, it will display the length
104
+ # measurement and will update automatically.
105
+ #
106
+ # @example
107
+ # start_point = Geom::Point2d.new(1, 1)
108
+ # end_point = Geom::Point2d.new(5, 5)
109
+ # height = 1.0
110
+ # dim = Layout::LinearDimension.new(start_point, end_point, height)
111
+ # dim.custom_text = true
112
+ #
113
+ # @param [Boolean] uses_custom_text
114
+ #
115
+ # @raise [LockedLayerError] if the {Layout::LinearDimension} is on a locked
116
+ # {Layout::Layer}
117
+ #
118
+ # @raise [LockedEntityError] if the {Layout::LinearDimension} is locked
119
+ #
120
+ # @version LayOut 2018
121
+ def custom_text=(uses_custom_text)
122
+ end
123
+
124
+ # The {#custom_text?} method returns whether the {Layout::LinearDimension}
125
+ # uses custom text. When +true+, the {Layout::LinearDimension} will display a
126
+ # custom string that doesn't change. When +false+, it will display the length
127
+ # measurement and will update automatically.
128
+ #
129
+ # @example
130
+ # start_point = Geom::Point2d.new(1, 1)
131
+ # end_point = Geom::Point2d.new(5, 5)
132
+ # height = 1.0
133
+ # dim = Layout::LinearDimension.new(start_point, end_point, height)
134
+ # # returns false
135
+ # uses_custom_text = dim.custom_text?
136
+ #
137
+ # @return [Boolean]
138
+ #
139
+ # @version LayOut 2018
140
+ def custom_text?
141
+ end
142
+
143
+ # The {#disconnect} method disconnects the {Layout::LinearDimension} from its
144
+ # {Layout::ConnectionPoint}s. The dimension will not be adjusted by
145
+ # disconnecting from its {Layout::ConnectionPoint}s.
146
+ #
147
+ # @example
148
+ # start_point = Geom::Point2d.new(1, 1)
149
+ # end_point = Geom::Point2d.new(5, 5)
150
+ # height = 1.0
151
+ # dim = Layout::LinearDimension.new(start_point, end_point, height)
152
+ # dim.disconnect
153
+ #
154
+ # @raise [LockedLayerError] if the {Layout::LinearDimension} is on a locked
155
+ # {Layout::Layer}
156
+ #
157
+ # @raise [LockedEntityError] if the {Layout::LinearDimension} is locked
158
+ #
159
+ # @version LayOut 2018
160
+ def disconnect
161
+ end
162
+
163
+ # The {#end_connection_point} method returns the paper space location for the
164
+ # second connection.
165
+ #
166
+ # @example
167
+ # start_point = Geom::Point2d.new(1, 1)
168
+ # end_point = Geom::Point2d.new(5, 5)
169
+ # height = 1.0
170
+ # dim = Layout::LinearDimension.new(start_point, end_point, height)
171
+ # end_connection = dim.end_connection_point
172
+ #
173
+ # @return [Geom::Point2d]
174
+ #
175
+ # @version LayOut 2018
176
+ def end_connection_point
177
+ end
178
+
179
+ # The {#end_connection_point=} method sets the paper space location for the
180
+ # second connection.
181
+ #
182
+ # @example
183
+ # start_point = Geom::Point2d.new(1, 1)
184
+ # end_point = Geom::Point2d.new(5, 5)
185
+ # height = 1.0
186
+ # dim = Layout::LinearDimension.new(start_point, end_point, height)
187
+ # dim.end_connection_point = Geom::Point2d.new(6, 6)
188
+ #
189
+ # @param [Geom::Point2d] end_point
190
+ #
191
+ # @raise [LockedLayerError] if the {Layout::LinearDimension} is on a locked
192
+ # {Layout::Layer}
193
+ #
194
+ # @raise [LockedEntityError] if the {Layout::LinearDimension} is locked
195
+ #
196
+ # @version LayOut 2018
197
+ def end_connection_point=(end_point)
198
+ end
199
+
200
+ # The {#end_extent_point} method returns the paper space location for the
201
+ # end of the dimension line.
202
+ #
203
+ # @example
204
+ # start_point = Geom::Point2d.new(1, 1)
205
+ # end_point = Geom::Point2d.new(5, 5)
206
+ # height = 1.0
207
+ # dim = Layout::LinearDimension.new(start_point, end_point, height)
208
+ # end_ext_point = dim.end_extent_point
209
+ #
210
+ # @return [Geom::Point2d] end_extent
211
+ #
212
+ # @version LayOut 2018
213
+ def end_extent_point
214
+ end
215
+
216
+ # The {#end_extent_point=} method sets the paper space location for the
217
+ # end of the dimension line.
218
+ #
219
+ # @example
220
+ # start_point = Geom::Point2d.new(1, 1)
221
+ # end_point = Geom::Point2d.new(5, 5)
222
+ # height = 1.0
223
+ # dim = Layout::LinearDimension.new(start_point, end_point, height)
224
+ # end_ext_point = Geom::Point2d.new(5, 6)
225
+ # dim.end_extent_point = end_ext_point
226
+ #
227
+ # @param [Geom::Point2d] end_extent
228
+ #
229
+ # @raise [LockedLayerError] if the {Layout::LinearDimension} is on a locked
230
+ # {Layout::Layer}
231
+ #
232
+ # @raise [LockedEntityError] if the {Layout::LinearDimension} is locked
233
+ #
234
+ # @version LayOut 2018
235
+ def end_extent_point=(end_extent)
236
+ end
237
+
238
+ # The {#end_offset_length=} method sets the length of the offset from the
239
+ # second {Layout::ConnectionPoint} to the start of the second extension line.
240
+ # The {Layout::ConnectionPoint} and extent point will not move.
241
+ #
242
+ # @example
243
+ # start_point = Geom::Point2d.new(1, 1)
244
+ # end_point = Geom::Point2d.new(5, 5)
245
+ # height = 1.0
246
+ # dim = Layout::LinearDimension.new(start_point, end_point, height)
247
+ # end_ext_point = Geom::Point2d.new(5, 6)
248
+ # dim.end_offset_length = 0.5
249
+ #
250
+ # @param [Numeric] offset_length
251
+ #
252
+ # @raise [LockedLayerError] if the {Layout::LinearDimension} is on a locked
253
+ # {Layout::Layer}
254
+ #
255
+ # @raise [LockedEntityError] if the {Layout::LinearDimension} is locked
256
+ #
257
+ # @version LayOut 2018
258
+ def end_offset_length=(offset_length)
259
+ end
260
+
261
+ # The {#end_offset_point} method returns the paper space location for the
262
+ # end of the first extension line. The first extension line runs from this
263
+ # offset point to the end extent point.
264
+ #
265
+ # @example
266
+ # start_point = Geom::Point2d.new(1, 1)
267
+ # end_point = Geom::Point2d.new(5, 5)
268
+ # height = 1.0
269
+ # dim = Layout::LinearDimension.new(start_point, end_point, height)
270
+ # end_offset = dim.end_offset_point
271
+ #
272
+ # @return [Geom::Point2d] end_offset
273
+ #
274
+ # @version LayOut 2018
275
+ def end_offset_point
276
+ end
277
+
278
+ # The {#entities} method returns the {Layout::Entities} that represent the
279
+ # {Layout::LinearDimension} in its exploded form. Depending on the appearance
280
+ # of the {Layout::LinearDimension}, this may return anywhere from four to six
281
+ # {Layout::Entity}s: start extension line, end extension line, one or two
282
+ # dimension lines, dimension text, and optionally the leader line.
283
+ #
284
+ # @example
285
+ # start_point = Geom::Point2d.new(1, 1)
286
+ # end_point = Geom::Point2d.new(5, 5)
287
+ # height = 1.0
288
+ # dim = Layout::LinearDimension.new(start_point, end_point, height)
289
+ # entites = dim.entities
290
+ #
291
+ # @return [Layout::Entities]
292
+ #
293
+ # @version LayOut 2018
294
+ def entities
295
+ end
296
+
297
+ # The {#initialize} method creates a new disconnected {Layout::LinearDimension}.
298
+ #
299
+ # @example
300
+ # start_point = Geom::Point2d.new(1, 1)
301
+ # end_point = Geom::Point2d.new(5, 5)
302
+ # height = 1.0
303
+ # dim = Layout::LinearDimension.new(start_point, end_point, height)
304
+ #
305
+ # @param [Geom::Point2d] start_point
306
+ #
307
+ # @param [Geom::Point2d] end_point
308
+ #
309
+ # @param [Numeric] height
310
+ # Distance from the start and end points to the
311
+ # dimension line
312
+ #
313
+ # @return [Layout::LinearDimension]
314
+ #
315
+ # @version LayOut 2018
316
+ def initialize(start_point, end_point, height)
317
+ end
318
+
319
+ # The {#leader_line_type} method returns the type of leader line the
320
+ # {Layout::LinearDimension} is using.
321
+ #
322
+ # The leader line type can be one of the following:
323
+ # [+Layout::LinearDimension::LEADER_LINE_TYPE_SINGLE_SEGMENT+]
324
+ # [+Layout::LinearDimension::LEADER_LINE_TYPE_TWO_SEGMENT+]
325
+ # [+Layout::LinearDimension::LEADER_LINE_TYPE_BEZIER+]
326
+ # [+Layout::LinearDimension::LEADER_LINE_TYPE_HIDDEN+]
327
+ #
328
+ # @example
329
+ # start_point = Geom::Point2d.new(1, 1)
330
+ # end_point = Geom::Point2d.new(5, 5)
331
+ # height = 1.0
332
+ # dim = Layout::LinearDimension.new(start_point, end_point, height)
333
+ # type = dim.leader_line_type
334
+ #
335
+ # @return [Integer]
336
+ #
337
+ # @version LayOut 2018
338
+ def leader_line_type
339
+ end
340
+
341
+ # The {#leader_line_type=} method sets the type of leader line the
342
+ # {Layout::LinearDimension} is using.
343
+ #
344
+ # The leader line type can be one of the following:
345
+ # [+Layout::LinearDimension::LEADER_LINE_TYPE_SINGLE_SEGMENT+]
346
+ # [+Layout::LinearDimension::LEADER_LINE_TYPE_TWO_SEGMENT+]
347
+ # [+Layout::LinearDimension::LEADER_LINE_TYPE_BEZIER+]
348
+ # [+Layout::LinearDimension::LEADER_LINE_TYPE_HIDDEN+]
349
+ #
350
+ # @example
351
+ # start_point = Geom::Point2d.new(1, 1)
352
+ # end_point = Geom::Point2d.new(5, 5)
353
+ # height = 1.0
354
+ # dim = Layout::LinearDimension.new(start_point, end_point, height)
355
+ # dim.leader_line_type = Layout::LinearDimension::LEADER_LINE_TYPE_BEZIER
356
+ #
357
+ # @param [Integer] type
358
+ # The leader line type
359
+ #
360
+ # @raise [ArgumentError] if leader_line_type is not a valid leader line type
361
+ #
362
+ # @raise [LockedLayerError] if the {Layout::LinearDimension} is on a locked
363
+ # {Layout::Layer}
364
+ #
365
+ # @raise [LockedEntityError] if the {Layout::LinearDimension} is locked
366
+ #
367
+ # @version LayOut 2018
368
+ def leader_line_type=(type)
369
+ end
370
+
371
+ # The {#scale} method returns the scale being used for the
372
+ # {Layout::LinearDimension}.
373
+ #
374
+ # @example
375
+ # start_point = Geom::Point2d.new(1, 1)
376
+ # end_point = Geom::Point2d.new(5, 5)
377
+ # height = 1.0
378
+ # dim = Layout::LinearDimension.new(start_point, end_point, height)
379
+ # scale = dim.scale
380
+ #
381
+ # @return [Numeric] scale
382
+ #
383
+ # @version LayOut 2018
384
+ def scale
385
+ end
386
+
387
+ # The {#scale=} method sets the scale being used for the
388
+ # {Layout::LinearDimension}.
389
+ #
390
+ # @example
391
+ # start_point = Geom::Point2d.new(1, 1)
392
+ # end_point = Geom::Point2d.new(5, 5)
393
+ # height = 1.0
394
+ # dim = Layout::LinearDimension.new(start_point, end_point, height)
395
+ # dim.scale = 1.5
396
+ #
397
+ # @param [Numeric] scale
398
+ #
399
+ # @raise [LockedLayerError] if the {Layout::LinearDimension} is on a locked
400
+ # {Layout::Layer}
401
+ #
402
+ # @raise [ArgumentError] if scale is negative, or greater than 1.0
403
+ #
404
+ # @raise [LockedEntityError] if the {Layout::LinearDimension} is locked
405
+ #
406
+ # @version LayOut 2018
407
+ def scale=(scale)
408
+ end
409
+
410
+ # The {#start_connection_point} method returns the paper space location for the
411
+ # first connection.
412
+ #
413
+ # @example
414
+ # start_point = Geom::Point2d.new(1, 1)
415
+ # end_point = Geom::Point2d.new(5, 5)
416
+ # height = 1.0
417
+ # dim = Layout::LinearDimension.new(start_point, end_point, height)
418
+ # start_connection = dim.start_connection_point
419
+ #
420
+ # @return [Geom::Point2d]
421
+ #
422
+ # @version LayOut 2018
423
+ def start_connection_point
424
+ end
425
+
426
+ # The {#start_connection_point=} method sets the paper space location for the
427
+ # first connection.
428
+ #
429
+ # @example
430
+ # start_point = Geom::Point2d.new(1, 1)
431
+ # end_point = Geom::Point2d.new(5, 5)
432
+ # height = 1.0
433
+ # dim = Layout::LinearDimension.new(start_point, end_point, height)
434
+ # dim.start_connection_point = Geom::Point2d.new(2, 2)
435
+ #
436
+ # @param [Geom::Point2d] start_point
437
+ #
438
+ # @raise [LockedLayerError] if the {Layout::LinearDimension} is on a locked
439
+ # {Layout::Layer}
440
+ #
441
+ # @raise [LockedEntityError] if the {Layout::LinearDimension} is locked
442
+ #
443
+ # @version LayOut 2018
444
+ def start_connection_point=(start_point)
445
+ end
446
+
447
+ # The {#start_extent_point} method returns the paper space location for the
448
+ # start of the dimension line.
449
+ #
450
+ # @example
451
+ # start_point = Geom::Point2d.new(1, 1)
452
+ # end_point = Geom::Point2d.new(5, 5)
453
+ # height = 1.0
454
+ # dim = Layout::LinearDimension.new(start_point, end_point, height)
455
+ # start_ext_point = dim.start_extent_point
456
+ #
457
+ # @return [Geom::Point2d] start_extent
458
+ #
459
+ # @version LayOut 2018
460
+ def start_extent_point
461
+ end
462
+
463
+ # The {#start_extent_point=} method sets the paper space location for the
464
+ # start of the dimension line.
465
+ #
466
+ # @example
467
+ # start_point = Geom::Point2d.new(1, 1)
468
+ # end_point = Geom::Point2d.new(5, 5)
469
+ # height = 1.0
470
+ # dim = Layout::LinearDimension.new(start_point, end_point, height)
471
+ # start_ext_point = Geom::Point2d.new(2, 3)
472
+ # dim.start_extent_point = start_ext_point
473
+ #
474
+ # @param [Geom::Point2d] start_extent
475
+ #
476
+ # @raise [LockedLayerError] if the {Layout::LinearDimension} is on a locked
477
+ # {Layout::Layer}
478
+ #
479
+ # @raise [LockedEntityError] if the {Layout::LinearDimension} is locked
480
+ #
481
+ # @version LayOut 2018
482
+ def start_extent_point=(start_extent)
483
+ end
484
+
485
+ # The {#start_offset_length=} method sets the length of the offset from the
486
+ # first {Layout::ConnectionPoint} to the start of the first extension line. The
487
+ # {Layout::ConnectionPoint} and extent point will not move.
488
+ #
489
+ # @example
490
+ # start_point = Geom::Point2d.new(1, 1)
491
+ # end_point = Geom::Point2d.new(5, 5)
492
+ # height = 1.0
493
+ # dim = Layout::LinearDimension.new(start_point, end_point, height)
494
+ # end_ext_point = Geom::Point2d.new(5, 6)
495
+ # dim.start_offset_length = 0.5
496
+ #
497
+ # @param [Numeric] offset_length
498
+ #
499
+ # @raise [LockedLayerError] if the {Layout::LinearDimension} is on a locked
500
+ # {Layout::Layer}
501
+ #
502
+ # @raise [LockedEntityError] if the {Layout::LinearDimension} is locked
503
+ #
504
+ # @version LayOut 2018
505
+ def start_offset_length=(offset_length)
506
+ end
507
+
508
+ # The {#start_offset_point} method returns the paper space location for the
509
+ # start of the first extension line. The first extension line runs from this
510
+ # offset point to the start extent point.
511
+ #
512
+ # @example
513
+ # start_point = Geom::Point2d.new(1, 1)
514
+ # end_point = Geom::Point2d.new(5, 5)
515
+ # height = 1.0
516
+ # dim = Layout::LinearDimension.new(start_point, end_point, height)
517
+ # start_offset = dim.start_offset_point
518
+ #
519
+ # @return [Geom::Point2d] start_offset
520
+ #
521
+ # @version LayOut 2018
522
+ def start_offset_point
523
+ end
524
+
525
+ # The {#text} method returns a copy of the {Layout::LinearDimension}'s
526
+ # {Layout::FormattedText}.
527
+ #
528
+ # @example
529
+ # start_point = Geom::Point2d.new(1, 1)
530
+ # end_point = Geom::Point2d.new(5, 5)
531
+ # height = 1.0
532
+ # dim = Layout::LinearDimension.new(start_point, end_point, height)
533
+ # text = dim.text
534
+ #
535
+ # @note With the addition of auto-text in dimensions for LayOut 2019.2, the
536
+ # copy of the dimension text incorrectly provided the plain text when
537
+ # requesting the display text. This has been fixed for LayOut 2020.1.
538
+ #
539
+ # @return [Layout::FormattedText]
540
+ #
541
+ # @version LayOut 2018
542
+ def text
543
+ end
544
+
545
+ # The {#text=} method sets the {Layout::LinearDimension}'s
546
+ # {Layout::FormattedText}.
547
+ #
548
+ # @example
549
+ # start_point = Geom::Point2d.new(1, 1)
550
+ # end_point = Geom::Point2d.new(5, 5)
551
+ # height = 1.0
552
+ # dim = Layout::LinearDimension.new(start_point, end_point, height)
553
+ # anchor_type = Layout::FormattedText::ANCHOR_TYPE_TOP_LEFT
554
+ # dim.text = Layout::FormattedText.new("Hello LayOut", start_point, anchor_type)
555
+ #
556
+ # @param [Layout::FormattedText] formatted_text
557
+ #
558
+ # @raise [LockedLayerError] if the {Layout::LinearDimension} is on a locked
559
+ # {Layout::Layer}
560
+ #
561
+ # @raise [LockedEntityError] if the {Layout::LinearDimension} is locked
562
+ #
563
+ # @version LayOut 2018
564
+ def text=(formatted_text)
565
+ end
566
+
567
+ end