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