sketchup-api-stubs 0.7.7 → 0.7.9

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 (154) hide show
  1. checksums.yaml +4 -4
  2. data/lib/sketchup-api-stubs/sketchup.rb +151 -147
  3. data/lib/sketchup-api-stubs/stubs/{array.rb → 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 -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 -351
  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 +747 -411
  20. data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinitions.rb +183 -179
  21. data/lib/sketchup-api-stubs/stubs/Layout/ConnectionPoint.rb +70 -70
  22. data/lib/sketchup-api-stubs/stubs/Layout/Document.rb +517 -515
  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 +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 -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 +387 -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 -0
  43. data/lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb +692 -694
  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 → Length.rb} +278 -278
  51. data/lib/sketchup-api-stubs/stubs/{numeric.rb → 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 -157
  54. data/lib/sketchup-api-stubs/stubs/Sketchup/ArcCurve.rb +209 -209
  55. data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionaries.rb +150 -152
  56. data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionary.rb +281 -286
  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 -122
  62. data/lib/sketchup-api-stubs/stubs/Sketchup/Color.rb +294 -294
  63. data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentDefinition.rb +659 -577
  64. data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentInstance.rb +593 -594
  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 -425
  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 -396
  77. data/lib/sketchup-api-stubs/stubs/Sketchup/Edge.rb +397 -502
  78. data/lib/sketchup-api-stubs/stubs/Sketchup/EdgeUse.rb +211 -211
  79. data/lib/sketchup-api-stubs/stubs/Sketchup/Entities.rb +1239 -1126
  80. data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesBuilder.rb +261 -0
  81. data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesObserver.rb +127 -127
  82. data/lib/sketchup-api-stubs/stubs/Sketchup/Entity.rb +545 -545
  83. data/lib/sketchup-api-stubs/stubs/Sketchup/EntityObserver.rb +60 -60
  84. data/lib/sketchup-api-stubs/stubs/Sketchup/ExtensionsManager.rb +125 -126
  85. data/lib/sketchup-api-stubs/stubs/Sketchup/Face.rb +937 -917
  86. data/lib/sketchup-api-stubs/stubs/Sketchup/FrameChangeObserver.rb +102 -104
  87. data/lib/sketchup-api-stubs/stubs/Sketchup/Group.rb +750 -750
  88. data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Request.rb +282 -292
  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 -405
  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 -327
  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 -112
  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 -318
  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 +1652 -1654
  111. data/lib/sketchup-api-stubs/stubs/Sketchup/ModelObserver.rb +357 -357
  112. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsManager.rb +130 -131
  113. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProvider.rb +271 -284
  114. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProviderObserver.rb +58 -58
  115. data/lib/sketchup-api-stubs/stubs/Sketchup/Overlay.rb +490 -0
  116. data/lib/sketchup-api-stubs/stubs/Sketchup/OverlaysManager.rb +116 -0
  117. data/lib/sketchup-api-stubs/stubs/Sketchup/Page.rb +797 -797
  118. data/lib/sketchup-api-stubs/stubs/Sketchup/Pages.rb +361 -363
  119. data/lib/sketchup-api-stubs/stubs/Sketchup/PagesObserver.rb +77 -77
  120. data/lib/sketchup-api-stubs/stubs/Sketchup/PickHelper.rb +478 -478
  121. data/lib/sketchup-api-stubs/stubs/Sketchup/RegionalSettings.rb +43 -43
  122. data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptions.rb +361 -364
  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 -459
  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 -257
  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 -835
  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 -71
  140. data/lib/sketchup-api-stubs/stubs/Sketchup/Vertex.rb +142 -142
  141. data/lib/sketchup-api-stubs/stubs/Sketchup/View.rb +1311 -1307
  142. data/lib/sketchup-api-stubs/stubs/Sketchup/ViewObserver.rb +45 -45
  143. data/lib/sketchup-api-stubs/stubs/{sketchup.rb → Sketchup.rb} +1377 -1353
  144. data/lib/sketchup-api-stubs/stubs/{sketchupextension.rb → SketchupExtension.rb} +353 -353
  145. data/lib/sketchup-api-stubs/stubs/{string.rb → String.rb} +24 -24
  146. data/lib/sketchup-api-stubs/stubs/UI/Command.rb +389 -317
  147. data/lib/sketchup-api-stubs/stubs/UI/HtmlDialog.rb +494 -478
  148. data/lib/sketchup-api-stubs/stubs/UI/Notification.rb +269 -269
  149. data/lib/sketchup-api-stubs/stubs/UI/Toolbar.rb +241 -240
  150. data/lib/sketchup-api-stubs/stubs/UI/WebDialog.rb +635 -633
  151. data/lib/sketchup-api-stubs/stubs/{ui.rb → UI.rb} +683 -672
  152. data/lib/sketchup-api-stubs/stubs/_top_level.rb +303 -311
  153. data/lib/sketchup-api-stubs.rb +1 -1
  154. metadata +20 -16
@@ -1,573 +1,595 @@
1
- # Copyright:: Copyright 2021 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 2023 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