@mlightcad/data-model 1.1.2 → 1.1.3

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 (259) hide show
  1. package/dist/data-model.js +5490 -1022
  2. package/dist/data-model.umd.cjs +2 -2
  3. package/lib/base/AcDbHostApplicationServices.d.ts +72 -6
  4. package/lib/base/AcDbHostApplicationServices.d.ts.map +1 -1
  5. package/lib/base/AcDbHostApplicationServices.js +71 -7
  6. package/lib/base/AcDbHostApplicationServices.js.map +1 -1
  7. package/lib/base/AcDbObject.d.ts +160 -25
  8. package/lib/base/AcDbObject.d.ts.map +1 -1
  9. package/lib/base/AcDbObject.js +149 -25
  10. package/lib/base/AcDbObject.js.map +1 -1
  11. package/lib/converter/AcDbBatchProcessing.d.ts +112 -10
  12. package/lib/converter/AcDbBatchProcessing.d.ts.map +1 -1
  13. package/lib/converter/AcDbBatchProcessing.js +110 -11
  14. package/lib/converter/AcDbBatchProcessing.js.map +1 -1
  15. package/lib/converter/AcDbDxfConverter.d.ts +224 -6
  16. package/lib/converter/AcDbDxfConverter.d.ts.map +1 -1
  17. package/lib/converter/AcDbDxfConverter.js +224 -6
  18. package/lib/converter/AcDbDxfConverter.js.map +1 -1
  19. package/lib/converter/AcDbDxfParseWorker.d.ts +16 -0
  20. package/lib/converter/AcDbDxfParseWorker.d.ts.map +1 -1
  21. package/lib/converter/AcDbDxfParseWorker.js +16 -0
  22. package/lib/converter/AcDbDxfParseWorker.js.map +1 -1
  23. package/lib/converter/AcDbEntitiyConverter.d.ts +118 -3
  24. package/lib/converter/AcDbEntitiyConverter.d.ts.map +1 -1
  25. package/lib/converter/AcDbEntitiyConverter.js +118 -3
  26. package/lib/converter/AcDbEntitiyConverter.js.map +1 -1
  27. package/lib/converter/AcDbObjectConverter.d.ts +52 -0
  28. package/lib/converter/AcDbObjectConverter.d.ts.map +1 -1
  29. package/lib/converter/AcDbObjectConverter.js +52 -0
  30. package/lib/converter/AcDbObjectConverter.js.map +1 -1
  31. package/lib/database/AcDbBlockTable.d.ts +35 -3
  32. package/lib/database/AcDbBlockTable.d.ts.map +1 -1
  33. package/lib/database/AcDbBlockTable.js +35 -3
  34. package/lib/database/AcDbBlockTable.js.map +1 -1
  35. package/lib/database/AcDbBlockTableRecord.d.ts +98 -15
  36. package/lib/database/AcDbBlockTableRecord.d.ts.map +1 -1
  37. package/lib/database/AcDbBlockTableRecord.js +96 -15
  38. package/lib/database/AcDbBlockTableRecord.js.map +1 -1
  39. package/lib/database/AcDbDatabase.d.ts +303 -33
  40. package/lib/database/AcDbDatabase.d.ts.map +1 -1
  41. package/lib/database/AcDbDatabase.js +223 -39
  42. package/lib/database/AcDbDatabase.js.map +1 -1
  43. package/lib/database/AcDbDatabaseConverter.d.ts +77 -12
  44. package/lib/database/AcDbDatabaseConverter.d.ts.map +1 -1
  45. package/lib/database/AcDbDatabaseConverter.js +46 -13
  46. package/lib/database/AcDbDatabaseConverter.js.map +1 -1
  47. package/lib/database/AcDbDatabaseConverterManager.d.ts +97 -15
  48. package/lib/database/AcDbDatabaseConverterManager.d.ts.map +1 -1
  49. package/lib/database/AcDbDatabaseConverterManager.js +90 -15
  50. package/lib/database/AcDbDatabaseConverterManager.js.map +1 -1
  51. package/lib/database/AcDbDimStyleTable.d.ts +22 -2
  52. package/lib/database/AcDbDimStyleTable.d.ts.map +1 -1
  53. package/lib/database/AcDbDimStyleTable.js +22 -2
  54. package/lib/database/AcDbDimStyleTable.js.map +1 -1
  55. package/lib/database/AcDbDimStyleTableRecord.d.ts +115 -0
  56. package/lib/database/AcDbDimStyleTableRecord.d.ts.map +1 -1
  57. package/lib/database/AcDbDimStyleTableRecord.js +44 -0
  58. package/lib/database/AcDbDimStyleTableRecord.js.map +1 -1
  59. package/lib/database/AcDbLayerTable.d.ts +39 -2
  60. package/lib/database/AcDbLayerTable.d.ts.map +1 -1
  61. package/lib/database/AcDbLayerTable.js +39 -2
  62. package/lib/database/AcDbLayerTable.js.map +1 -1
  63. package/lib/database/AcDbLayerTableRecord.d.ts +198 -18
  64. package/lib/database/AcDbLayerTableRecord.d.ts.map +1 -1
  65. package/lib/database/AcDbLayerTableRecord.js +182 -19
  66. package/lib/database/AcDbLayerTableRecord.js.map +1 -1
  67. package/lib/database/AcDbLinetypeTable.d.ts +21 -2
  68. package/lib/database/AcDbLinetypeTable.d.ts.map +1 -1
  69. package/lib/database/AcDbLinetypeTable.js +21 -2
  70. package/lib/database/AcDbLinetypeTable.js.map +1 -1
  71. package/lib/database/AcDbLinetypeTableRecord.d.ts +46 -14
  72. package/lib/database/AcDbLinetypeTableRecord.d.ts.map +1 -1
  73. package/lib/database/AcDbLinetypeTableRecord.js +46 -14
  74. package/lib/database/AcDbLinetypeTableRecord.js.map +1 -1
  75. package/lib/database/AcDbSymbolTable.d.ts +134 -29
  76. package/lib/database/AcDbSymbolTable.d.ts.map +1 -1
  77. package/lib/database/AcDbSymbolTable.js +133 -37
  78. package/lib/database/AcDbSymbolTable.js.map +1 -1
  79. package/lib/database/AcDbSymbolTableRecord.d.ts +47 -2
  80. package/lib/database/AcDbSymbolTableRecord.d.ts.map +1 -1
  81. package/lib/database/AcDbSymbolTableRecord.js +40 -2
  82. package/lib/database/AcDbSymbolTableRecord.js.map +1 -1
  83. package/lib/database/AcDbTextStyleTable.d.ts +36 -2
  84. package/lib/database/AcDbTextStyleTable.d.ts.map +1 -1
  85. package/lib/database/AcDbTextStyleTable.js +36 -2
  86. package/lib/database/AcDbTextStyleTable.js.map +1 -1
  87. package/lib/database/AcDbTextStyleTableRecord.d.ts +129 -17
  88. package/lib/database/AcDbTextStyleTableRecord.d.ts.map +1 -1
  89. package/lib/database/AcDbTextStyleTableRecord.js +127 -17
  90. package/lib/database/AcDbTextStyleTableRecord.js.map +1 -1
  91. package/lib/database/AcDbViewportTable.d.ts +22 -2
  92. package/lib/database/AcDbViewportTable.d.ts.map +1 -1
  93. package/lib/database/AcDbViewportTable.js +22 -2
  94. package/lib/database/AcDbViewportTable.js.map +1 -1
  95. package/lib/database/AcDbViewportTableRecord.d.ts +74 -9
  96. package/lib/database/AcDbViewportTableRecord.d.ts.map +1 -1
  97. package/lib/database/AcDbViewportTableRecord.js +65 -9
  98. package/lib/database/AcDbViewportTableRecord.js.map +1 -1
  99. package/lib/entity/AcDbArc.d.ts +202 -17
  100. package/lib/entity/AcDbArc.d.ts.map +1 -1
  101. package/lib/entity/AcDbArc.js +201 -17
  102. package/lib/entity/AcDbArc.js.map +1 -1
  103. package/lib/entity/AcDbBlockReference.d.ts +147 -13
  104. package/lib/entity/AcDbBlockReference.d.ts.map +1 -1
  105. package/lib/entity/AcDbBlockReference.js +142 -13
  106. package/lib/entity/AcDbBlockReference.js.map +1 -1
  107. package/lib/entity/AcDbCircle.d.ts +145 -12
  108. package/lib/entity/AcDbCircle.d.ts.map +1 -1
  109. package/lib/entity/AcDbCircle.js +144 -12
  110. package/lib/entity/AcDbCircle.js.map +1 -1
  111. package/lib/entity/AcDbCurve.d.ts +33 -2
  112. package/lib/entity/AcDbCurve.d.ts.map +1 -1
  113. package/lib/entity/AcDbCurve.js +17 -0
  114. package/lib/entity/AcDbCurve.js.map +1 -1
  115. package/lib/entity/AcDbEllipse.d.ts +168 -16
  116. package/lib/entity/AcDbEllipse.d.ts.map +1 -1
  117. package/lib/entity/AcDbEllipse.js +167 -16
  118. package/lib/entity/AcDbEllipse.js.map +1 -1
  119. package/lib/entity/AcDbEntity.d.ts +299 -35
  120. package/lib/entity/AcDbEntity.d.ts.map +1 -1
  121. package/lib/entity/AcDbEntity.js +275 -27
  122. package/lib/entity/AcDbEntity.js.map +1 -1
  123. package/lib/entity/AcDbHatch.d.ts +60 -4
  124. package/lib/entity/AcDbHatch.d.ts.map +1 -1
  125. package/lib/entity/AcDbHatch.js +52 -4
  126. package/lib/entity/AcDbHatch.js.map +1 -1
  127. package/lib/entity/AcDbLeader.d.ts +157 -10
  128. package/lib/entity/AcDbLeader.d.ts.map +1 -1
  129. package/lib/entity/AcDbLeader.js +149 -10
  130. package/lib/entity/AcDbLeader.js.map +1 -1
  131. package/lib/entity/AcDbLine.d.ts +154 -13
  132. package/lib/entity/AcDbLine.d.ts.map +1 -1
  133. package/lib/entity/AcDbLine.js +153 -13
  134. package/lib/entity/AcDbLine.js.map +1 -1
  135. package/lib/entity/AcDbMText.d.ts +127 -11
  136. package/lib/entity/AcDbMText.d.ts.map +1 -1
  137. package/lib/entity/AcDbMText.js +112 -11
  138. package/lib/entity/AcDbMText.js.map +1 -1
  139. package/lib/entity/AcDbPoint.d.ts +86 -7
  140. package/lib/entity/AcDbPoint.d.ts.map +1 -1
  141. package/lib/entity/AcDbPoint.js +85 -7
  142. package/lib/entity/AcDbPoint.js.map +1 -1
  143. package/lib/entity/AcDbPolyline.d.ts +172 -25
  144. package/lib/entity/AcDbPolyline.d.ts.map +1 -1
  145. package/lib/entity/AcDbPolyline.js +170 -25
  146. package/lib/entity/AcDbPolyline.js.map +1 -1
  147. package/lib/entity/AcDbRasterImage.d.ts +75 -31
  148. package/lib/entity/AcDbRasterImage.d.ts.map +1 -1
  149. package/lib/entity/AcDbRasterImage.js +60 -31
  150. package/lib/entity/AcDbRasterImage.js.map +1 -1
  151. package/lib/entity/AcDbRay.d.ts +115 -9
  152. package/lib/entity/AcDbRay.d.ts.map +1 -1
  153. package/lib/entity/AcDbRay.js +113 -9
  154. package/lib/entity/AcDbRay.js.map +1 -1
  155. package/lib/entity/AcDbSpline.d.ts +106 -14
  156. package/lib/entity/AcDbSpline.d.ts.map +1 -1
  157. package/lib/entity/AcDbSpline.js +67 -4
  158. package/lib/entity/AcDbSpline.js.map +1 -1
  159. package/lib/entity/AcDbTable.d.ts +161 -44
  160. package/lib/entity/AcDbTable.d.ts.map +1 -1
  161. package/lib/entity/AcDbTable.js +135 -44
  162. package/lib/entity/AcDbTable.js.map +1 -1
  163. package/lib/entity/AcDbText.d.ts +298 -25
  164. package/lib/entity/AcDbText.d.ts.map +1 -1
  165. package/lib/entity/AcDbText.js +288 -25
  166. package/lib/entity/AcDbText.js.map +1 -1
  167. package/lib/entity/AcDbTrace.d.ts +150 -23
  168. package/lib/entity/AcDbTrace.d.ts.map +1 -1
  169. package/lib/entity/AcDbTrace.js +147 -23
  170. package/lib/entity/AcDbTrace.js.map +1 -1
  171. package/lib/entity/AcDbViewport.d.ts +122 -9
  172. package/lib/entity/AcDbViewport.d.ts.map +1 -1
  173. package/lib/entity/AcDbViewport.js +122 -9
  174. package/lib/entity/AcDbViewport.js.map +1 -1
  175. package/lib/entity/AcDbWipeout.d.ts +29 -1
  176. package/lib/entity/AcDbWipeout.d.ts.map +1 -1
  177. package/lib/entity/AcDbWipeout.js +29 -1
  178. package/lib/entity/AcDbWipeout.js.map +1 -1
  179. package/lib/entity/AcDbXline.d.ts +116 -9
  180. package/lib/entity/AcDbXline.d.ts.map +1 -1
  181. package/lib/entity/AcDbXline.js +114 -9
  182. package/lib/entity/AcDbXline.js.map +1 -1
  183. package/lib/entity/dimension/AcDb3PointAngularDimension.d.ts +56 -12
  184. package/lib/entity/dimension/AcDb3PointAngularDimension.d.ts.map +1 -1
  185. package/lib/entity/dimension/AcDb3PointAngularDimension.js +56 -12
  186. package/lib/entity/dimension/AcDb3PointAngularDimension.js.map +1 -1
  187. package/lib/entity/dimension/AcDbAlignedDimension.d.ts +158 -17
  188. package/lib/entity/dimension/AcDbAlignedDimension.d.ts.map +1 -1
  189. package/lib/entity/dimension/AcDbAlignedDimension.js +153 -17
  190. package/lib/entity/dimension/AcDbAlignedDimension.js.map +1 -1
  191. package/lib/entity/dimension/AcDbArcDimension.d.ts +58 -12
  192. package/lib/entity/dimension/AcDbArcDimension.d.ts.map +1 -1
  193. package/lib/entity/dimension/AcDbArcDimension.js +58 -12
  194. package/lib/entity/dimension/AcDbArcDimension.js.map +1 -1
  195. package/lib/entity/dimension/AcDbDiametricDimension.d.ts +99 -25
  196. package/lib/entity/dimension/AcDbDiametricDimension.d.ts.map +1 -1
  197. package/lib/entity/dimension/AcDbDiametricDimension.js +99 -25
  198. package/lib/entity/dimension/AcDbDiametricDimension.js.map +1 -1
  199. package/lib/entity/dimension/AcDbDimension.d.ts +108 -14
  200. package/lib/entity/dimension/AcDbDimension.d.ts.map +1 -1
  201. package/lib/entity/dimension/AcDbDimension.js +99 -14
  202. package/lib/entity/dimension/AcDbDimension.js.map +1 -1
  203. package/lib/entity/dimension/AcDbOrdinateDimension.d.ts +48 -16
  204. package/lib/entity/dimension/AcDbOrdinateDimension.d.ts.map +1 -1
  205. package/lib/entity/dimension/AcDbOrdinateDimension.js +48 -16
  206. package/lib/entity/dimension/AcDbOrdinateDimension.js.map +1 -1
  207. package/lib/entity/dimension/AcDbRadialDimension.d.ts +167 -24
  208. package/lib/entity/dimension/AcDbRadialDimension.d.ts.map +1 -1
  209. package/lib/entity/dimension/AcDbRadialDimension.js +162 -24
  210. package/lib/entity/dimension/AcDbRadialDimension.js.map +1 -1
  211. package/lib/misc/AcDbAngleUnits.d.ts +12 -0
  212. package/lib/misc/AcDbAngleUnits.d.ts.map +1 -1
  213. package/lib/misc/AcDbAngleUnits.js +12 -0
  214. package/lib/misc/AcDbAngleUnits.js.map +1 -1
  215. package/lib/misc/AcDbConstants.d.ts +20 -0
  216. package/lib/misc/AcDbConstants.d.ts.map +1 -1
  217. package/lib/misc/AcDbConstants.js +20 -0
  218. package/lib/misc/AcDbConstants.js.map +1 -1
  219. package/lib/misc/AcDbDimArrowType.d.ts +24 -21
  220. package/lib/misc/AcDbDimArrowType.d.ts.map +1 -1
  221. package/lib/misc/AcDbDimArrowType.js +24 -21
  222. package/lib/misc/AcDbDimArrowType.js.map +1 -1
  223. package/lib/misc/AcDbObjectIterator.d.ts +42 -3
  224. package/lib/misc/AcDbObjectIterator.d.ts.map +1 -1
  225. package/lib/misc/AcDbObjectIterator.js +42 -3
  226. package/lib/misc/AcDbObjectIterator.js.map +1 -1
  227. package/lib/misc/AcDbOsnapMode.d.ts +18 -10
  228. package/lib/misc/AcDbOsnapMode.d.ts.map +1 -1
  229. package/lib/misc/AcDbOsnapMode.js +18 -10
  230. package/lib/misc/AcDbOsnapMode.js.map +1 -1
  231. package/lib/misc/AcDbRenderingCache.d.ts +107 -29
  232. package/lib/misc/AcDbRenderingCache.d.ts.map +1 -1
  233. package/lib/misc/AcDbRenderingCache.js +105 -29
  234. package/lib/misc/AcDbRenderingCache.js.map +1 -1
  235. package/lib/misc/AcDbUnitsValue.d.ts +58 -8
  236. package/lib/misc/AcDbUnitsValue.d.ts.map +1 -1
  237. package/lib/misc/AcDbUnitsValue.js +58 -8
  238. package/lib/misc/AcDbUnitsValue.js.map +1 -1
  239. package/lib/object/AcDbDictionary.d.ts +128 -30
  240. package/lib/object/AcDbDictionary.d.ts.map +1 -1
  241. package/lib/object/AcDbDictionary.js +126 -30
  242. package/lib/object/AcDbDictionary.js.map +1 -1
  243. package/lib/object/AcDbRasterImageDef.d.ts +38 -9
  244. package/lib/object/AcDbRasterImageDef.d.ts.map +1 -1
  245. package/lib/object/AcDbRasterImageDef.js +37 -9
  246. package/lib/object/AcDbRasterImageDef.js.map +1 -1
  247. package/lib/object/layout/AcDbLayout.d.ts +152 -13
  248. package/lib/object/layout/AcDbLayout.d.ts.map +1 -1
  249. package/lib/object/layout/AcDbLayout.js +146 -13
  250. package/lib/object/layout/AcDbLayout.js.map +1 -1
  251. package/lib/object/layout/AcDbLayoutDictionary.d.ts +35 -7
  252. package/lib/object/layout/AcDbLayoutDictionary.d.ts.map +1 -1
  253. package/lib/object/layout/AcDbLayoutDictionary.js +35 -7
  254. package/lib/object/layout/AcDbLayoutDictionary.js.map +1 -1
  255. package/lib/object/layout/AcDbLayoutManager.d.ts +103 -31
  256. package/lib/object/layout/AcDbLayoutManager.d.ts.map +1 -1
  257. package/lib/object/layout/AcDbLayoutManager.js +98 -31
  258. package/lib/object/layout/AcDbLayoutManager.js.map +1 -1
  259. package/package.json +4 -4
@@ -3,17 +3,20 @@ import { AcGiEntity, AcGiRenderer } from '@mlightcad/graphic-interface';
3
3
  import { AcDbLine } from '../AcDbLine';
4
4
  import { AcDbDimension } from './AcDbDimension';
5
5
  /**
6
- * This class represents the diameter dimension type in AutoCAD. This dimension type requires two points
7
- * that define a diameter chord on the curve being dimensioned to be able to draw the dimension line from
8
- * one chord point to the other. In addition, if the text is located outside the curve being dimensioned,
9
- * then a "leader length" value is used to determine how far the dimension line extends out past the curve
10
- * before doing a horizontal dogleg (if necessary) to the annotation text.
6
+ * Represents a diametric dimension entity in AutoCAD.
11
7
  *
12
- * - If the text is inside the curve being dimensioned, then the dimension line will be drawn from
13
- * the farChordPoint to the chordPoint, with a break for the annotation text.
14
- * - If the dimension text is outside the curve being dimensioned, then the dimension line is drawn
15
- * from the farChordPoint, on through the chordPoint, and out the leaderLength distance past the
16
- * chordPoint, where it will do a short horizontal dogleg (if appropriate) to the annotation text.
8
+ * This dimension type measures the diameter of a circle or arc by defining two points
9
+ * that lie on the curve and are diametrically opposite each other. Diametric dimensions
10
+ * are essential for circular features in mechanical drawings, architectural plans, and
11
+ * other technical documentation.
12
+ *
13
+ * The dimension behavior varies based on text placement:
14
+ * - If the text is inside the curve being dimensioned, the dimension line will be drawn
15
+ * from the farChordPoint to the chordPoint, with a break for the annotation text.
16
+ * - If the dimension text is outside the curve being dimensioned, the dimension line is
17
+ * drawn from the farChordPoint, through the chordPoint, and extends out the leaderLength
18
+ * distance past the chordPoint, where it will do a short horizontal dogleg (if appropriate)
19
+ * to the annotation text.
17
20
  */
18
21
  export declare class AcDbDiametricDimension extends AcDbDimension {
19
22
  private _chordPoint;
@@ -22,48 +25,119 @@ export declare class AcDbDiametricDimension extends AcDbDimension {
22
25
  private _extArcEndAngle;
23
26
  private _leaderLength;
24
27
  /**
25
- * Create one instance of this class using the provided parameters
26
- * @param chordPoint Input point (in WCS coordinates) on the curve being dimensioned
27
- * @param farChordPoint Input point (in WCS coordinates) on curve being dimensioned and diametrically
28
- * opposite the chordPoint
29
- * @param leaderLength Input leader length
28
+ * Creates a new diametric dimension.
29
+ *
30
+ * @param chordPoint - The point (in WCS coordinates) on the curve being dimensioned
31
+ * where the dimension line intersects and extends outside the curve
32
+ * (if the text is outside the curve)
33
+ * @param farChordPoint - The point (in WCS coordinates) on the curve being dimensioned
34
+ * that is diametrically opposite the chordPoint. This defines the
35
+ * other end of the diameter measurement
36
+ * @param leaderLength - The distance from the chordPoint to where the dimension will
37
+ * do a horizontal dogleg to the annotation text. This is only
38
+ * used when the text is outside the curve
39
+ * @param dimText - Optional custom dimension text to display instead of the calculated
40
+ * diameter value. If null, the calculated diameter will be displayed
41
+ * @param dimStyle - Optional name of the dimension style table record to use for
42
+ * formatting. If null, the current default style will be used
30
43
  */
31
44
  constructor(chordPoint: AcGePoint3dLike, farChordPoint: AcGePoint3dLike, leaderLength?: number, dimText?: string | null, dimStyle?: string | null);
32
45
  /**
33
- * The point (in WCS coordinates) where the dimension line intersects the curve being dimensioned and
34
- * extends outside the curve, if the text is outside the curve.
46
+ * Gets or sets the chord point where the dimension line intersects the curve.
47
+ *
48
+ * This is the point (in WCS coordinates) where the dimension line intersects the curve
49
+ * being dimensioned and extends outside the curve, if the text is outside the curve.
50
+ * It represents one end of the diameter measurement.
51
+ *
52
+ * @returns The chord point of the dimension
35
53
  */
36
54
  get chordPoint(): AcGePoint3d;
37
55
  set chordPoint(value: AcGePoint3d);
38
56
  /**
39
- * The far chord point (in WCS coordinates) of the curve being dimensioned. This is the point on the
40
- * curve that is diametrically opposite the point where the dimension line extends outside the curve,
41
- * if the text is outside the curve.
57
+ * Gets or sets the far chord point of the curve being dimensioned.
58
+ *
59
+ * This is the point (in WCS coordinates) on the curve that is diametrically opposite
60
+ * the point where the dimension line extends outside the curve. It represents the other
61
+ * end of the diameter measurement.
62
+ *
63
+ * @returns The far chord point of the dimension
42
64
  */
43
65
  get farChordPoint(): AcGePoint3d;
44
66
  set farChordPoint(value: AcGePoint3d);
45
67
  /**
46
- * The extension arc start angle.
68
+ * Gets or sets the extension arc start angle.
69
+ *
70
+ * This angle defines the starting point of the extension arc that may be drawn
71
+ * to connect the dimension line to the curve being dimensioned.
72
+ *
73
+ * @returns The extension arc start angle in radians
47
74
  */
48
75
  get extArcStartAngle(): number;
49
76
  set extArcStartAngle(value: number);
50
77
  /**
51
- * The extension arc end angle.
78
+ * Gets or sets the extension arc end angle.
79
+ *
80
+ * This angle defines the ending point of the extension arc that may be drawn
81
+ * to connect the dimension line to the curve being dimensioned.
82
+ *
83
+ * @returns The extension arc end angle in radians
52
84
  */
53
85
  get extArcEndAngle(): number;
54
86
  set extArcEndAngle(value: number);
55
87
  /**
56
- * The dimension to use length as the distance from the chordPoint dimension definition point, out
57
- * to where the dimension will do a horizontal dogleg to the annotation text (or stop if no dogleg
58
- * is necessary).
88
+ * Gets the leader length for the dimension.
89
+ *
90
+ * The leader length is the distance from the chordPoint dimension definition point,
91
+ * out to where the dimension will do a horizontal dogleg to the annotation text
92
+ * (or stop if no dogleg is necessary). This is only used when the text is outside
93
+ * the curve being dimensioned.
94
+ *
95
+ * @returns The leader length in drawing units
59
96
  */
60
97
  get leaderLength(): number;
61
98
  /**
99
+ * Gets the geometric extents (bounding box) of this dimension entity.
100
+ *
101
+ * The geometric extents define the minimum bounding box that completely contains
102
+ * the dimension entity, including all its components like extension lines,
103
+ * dimension lines, arrows, and text.
104
+ *
105
+ * @returns A 3D bounding box containing the dimension entity
62
106
  * @inheritdoc
63
107
  */
64
108
  get geometricExtents(): AcGeBox3d;
109
+ /**
110
+ * Draws the dimension lines with appropriate arrow styles.
111
+ *
112
+ * This method handles the rendering of dimension lines based on the number of
113
+ * line segments. It applies different arrow styles to the first and last lines
114
+ * when appropriate, and sorts the lines for proper visual representation.
115
+ *
116
+ * @param renderer - The graphics renderer used to draw the dimension lines
117
+ * @param lines - Array of line entities that make up the dimension
118
+ * @returns Array of rendered graphics entities
119
+ * @protected
120
+ */
65
121
  protected drawLines(renderer: AcGiRenderer, lines: AcDbLine[]): AcGiEntity[];
122
+ /**
123
+ * Draws a single line with optional arrow styling.
124
+ *
125
+ * @param renderer - The graphics renderer used to draw the line
126
+ * @param line - The line entity to draw
127
+ * @param lineArrowStyle - Optional arrow style configuration for the line
128
+ * @returns The rendered graphics entity
129
+ * @private
130
+ */
66
131
  private drawLine;
132
+ /**
133
+ * Sorts the dimension lines for proper visual representation.
134
+ *
135
+ * This method sorts the line segments based on their start and end points to ensure
136
+ * they are drawn in the correct order for proper dimension visualization.
137
+ *
138
+ * @param lines - Array of line entities to sort
139
+ * @private
140
+ */
67
141
  private sortLines;
68
142
  }
69
143
  //# sourceMappingURL=AcDbDiametricDimension.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AcDbDiametricDimension.d.ts","sourceRoot":"","sources":["../../../src/entity/dimension/AcDbDiametricDimension.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,WAAW,EACX,eAAe,EAChB,MAAM,4BAA4B,CAAA;AACnC,OAAO,EACL,UAAU,EAEV,YAAY,EACb,MAAM,8BAA8B,CAAA;AAErC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAE/C;;;;;;;;;;;;GAYG;AACH,qBAAa,sBAAuB,SAAQ,aAAa;IACvD,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,iBAAiB,CAAQ;IACjC,OAAO,CAAC,eAAe,CAAQ;IAC/B,OAAO,CAAC,aAAa,CAAQ;IAE7B;;;;;;OAMG;gBAED,UAAU,EAAE,eAAe,EAC3B,aAAa,EAAE,eAAe,EAC9B,YAAY,GAAE,MAAU,EACxB,OAAO,GAAE,MAAM,GAAG,IAAW,EAC7B,QAAQ,GAAE,MAAM,GAAG,IAAW;IAchC;;;OAGG;IACH,IAAI,UAAU,IAGQ,WAAW,CADhC;IACD,IAAI,UAAU,CAAC,KAAK,EAAE,WAAW,EAEhC;IAED;;;;OAIG;IACH,IAAI,aAAa,IAGQ,WAAW,CADnC;IACD,IAAI,aAAa,CAAC,KAAK,EAAE,WAAW,EAEnC;IAED;;OAEG;IACH,IAAI,gBAAgB,IAGQ,MAAM,CADjC;IACD,IAAI,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAEjC;IAED;;OAEG;IACH,IAAI,cAAc,IAGQ,MAAM,CAD/B;IACD,IAAI,cAAc,CAAC,KAAK,EAAE,MAAM,EAE/B;IAED;;;;OAIG;IACH,IAAI,YAAY,WAEf;IAED;;OAEG;IACH,IAAI,gBAAgB,cAGnB;IAED,SAAS,CAAC,SAAS,CAAC,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE;IA8B7D,OAAO,CAAC,QAAQ;IAgBhB,OAAO,CAAC,SAAS;CAelB"}
1
+ {"version":3,"file":"AcDbDiametricDimension.d.ts","sourceRoot":"","sources":["../../../src/entity/dimension/AcDbDiametricDimension.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,WAAW,EACX,eAAe,EAChB,MAAM,4BAA4B,CAAA;AACnC,OAAO,EACL,UAAU,EAEV,YAAY,EACb,MAAM,8BAA8B,CAAA;AAErC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAE/C;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,sBAAuB,SAAQ,aAAa;IACvD,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,iBAAiB,CAAQ;IACjC,OAAO,CAAC,eAAe,CAAQ;IAC/B,OAAO,CAAC,aAAa,CAAQ;IAE7B;;;;;;;;;;;;;;;;OAgBG;gBAED,UAAU,EAAE,eAAe,EAC3B,aAAa,EAAE,eAAe,EAC9B,YAAY,GAAE,MAAU,EACxB,OAAO,GAAE,MAAM,GAAG,IAAW,EAC7B,QAAQ,GAAE,MAAM,GAAG,IAAW;IAchC;;;;;;;;OAQG;IACH,IAAI,UAAU,IAGQ,WAAW,CADhC;IACD,IAAI,UAAU,CAAC,KAAK,EAAE,WAAW,EAEhC;IAED;;;;;;;;OAQG;IACH,IAAI,aAAa,IAGQ,WAAW,CADnC;IACD,IAAI,aAAa,CAAC,KAAK,EAAE,WAAW,EAEnC;IAED;;;;;;;OAOG;IACH,IAAI,gBAAgB,IAGQ,MAAM,CADjC;IACD,IAAI,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAEjC;IAED;;;;;;;OAOG;IACH,IAAI,cAAc,IAGQ,MAAM,CAD/B;IACD,IAAI,cAAc,CAAC,KAAK,EAAE,MAAM,EAE/B;IAED;;;;;;;;;OASG;IACH,IAAI,YAAY,WAEf;IAED;;;;;;;;;OASG;IACH,IAAI,gBAAgB,cAGnB;IAED;;;;;;;;;;;OAWG;IACH,SAAS,CAAC,SAAS,CAAC,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE;IA8B7D;;;;;;;;OAQG;IACH,OAAO,CAAC,QAAQ;IAgBhB;;;;;;;;OAQG;IACH,OAAO,CAAC,SAAS;CAelB"}
@@ -27,26 +27,39 @@ var __assign = (this && this.__assign) || function () {
27
27
  import { AcGeBox3d, AcGePoint3d } from '@mlightcad/geometry-engine';
28
28
  import { AcDbDimension } from './AcDbDimension';
29
29
  /**
30
- * This class represents the diameter dimension type in AutoCAD. This dimension type requires two points
31
- * that define a diameter chord on the curve being dimensioned to be able to draw the dimension line from
32
- * one chord point to the other. In addition, if the text is located outside the curve being dimensioned,
33
- * then a "leader length" value is used to determine how far the dimension line extends out past the curve
34
- * before doing a horizontal dogleg (if necessary) to the annotation text.
30
+ * Represents a diametric dimension entity in AutoCAD.
35
31
  *
36
- * - If the text is inside the curve being dimensioned, then the dimension line will be drawn from
37
- * the farChordPoint to the chordPoint, with a break for the annotation text.
38
- * - If the dimension text is outside the curve being dimensioned, then the dimension line is drawn
39
- * from the farChordPoint, on through the chordPoint, and out the leaderLength distance past the
40
- * chordPoint, where it will do a short horizontal dogleg (if appropriate) to the annotation text.
32
+ * This dimension type measures the diameter of a circle or arc by defining two points
33
+ * that lie on the curve and are diametrically opposite each other. Diametric dimensions
34
+ * are essential for circular features in mechanical drawings, architectural plans, and
35
+ * other technical documentation.
36
+ *
37
+ * The dimension behavior varies based on text placement:
38
+ * - If the text is inside the curve being dimensioned, the dimension line will be drawn
39
+ * from the farChordPoint to the chordPoint, with a break for the annotation text.
40
+ * - If the dimension text is outside the curve being dimensioned, the dimension line is
41
+ * drawn from the farChordPoint, through the chordPoint, and extends out the leaderLength
42
+ * distance past the chordPoint, where it will do a short horizontal dogleg (if appropriate)
43
+ * to the annotation text.
41
44
  */
42
45
  var AcDbDiametricDimension = /** @class */ (function (_super) {
43
46
  __extends(AcDbDiametricDimension, _super);
44
47
  /**
45
- * Create one instance of this class using the provided parameters
46
- * @param chordPoint Input point (in WCS coordinates) on the curve being dimensioned
47
- * @param farChordPoint Input point (in WCS coordinates) on curve being dimensioned and diametrically
48
- * opposite the chordPoint
49
- * @param leaderLength Input leader length
48
+ * Creates a new diametric dimension.
49
+ *
50
+ * @param chordPoint - The point (in WCS coordinates) on the curve being dimensioned
51
+ * where the dimension line intersects and extends outside the curve
52
+ * (if the text is outside the curve)
53
+ * @param farChordPoint - The point (in WCS coordinates) on the curve being dimensioned
54
+ * that is diametrically opposite the chordPoint. This defines the
55
+ * other end of the diameter measurement
56
+ * @param leaderLength - The distance from the chordPoint to where the dimension will
57
+ * do a horizontal dogleg to the annotation text. This is only
58
+ * used when the text is outside the curve
59
+ * @param dimText - Optional custom dimension text to display instead of the calculated
60
+ * diameter value. If null, the calculated diameter will be displayed
61
+ * @param dimStyle - Optional name of the dimension style table record to use for
62
+ * formatting. If null, the current default style will be used
50
63
  */
51
64
  function AcDbDiametricDimension(chordPoint, farChordPoint, leaderLength, dimText, dimStyle) {
52
65
  if (leaderLength === void 0) { leaderLength = 0; }
@@ -65,8 +78,13 @@ var AcDbDiametricDimension = /** @class */ (function (_super) {
65
78
  }
66
79
  Object.defineProperty(AcDbDiametricDimension.prototype, "chordPoint", {
67
80
  /**
68
- * The point (in WCS coordinates) where the dimension line intersects the curve being dimensioned and
69
- * extends outside the curve, if the text is outside the curve.
81
+ * Gets or sets the chord point where the dimension line intersects the curve.
82
+ *
83
+ * This is the point (in WCS coordinates) where the dimension line intersects the curve
84
+ * being dimensioned and extends outside the curve, if the text is outside the curve.
85
+ * It represents one end of the diameter measurement.
86
+ *
87
+ * @returns The chord point of the dimension
70
88
  */
71
89
  get: function () {
72
90
  return this._chordPoint;
@@ -79,9 +97,13 @@ var AcDbDiametricDimension = /** @class */ (function (_super) {
79
97
  });
80
98
  Object.defineProperty(AcDbDiametricDimension.prototype, "farChordPoint", {
81
99
  /**
82
- * The far chord point (in WCS coordinates) of the curve being dimensioned. This is the point on the
83
- * curve that is diametrically opposite the point where the dimension line extends outside the curve,
84
- * if the text is outside the curve.
100
+ * Gets or sets the far chord point of the curve being dimensioned.
101
+ *
102
+ * This is the point (in WCS coordinates) on the curve that is diametrically opposite
103
+ * the point where the dimension line extends outside the curve. It represents the other
104
+ * end of the diameter measurement.
105
+ *
106
+ * @returns The far chord point of the dimension
85
107
  */
86
108
  get: function () {
87
109
  return this._farChordPoint;
@@ -94,7 +116,12 @@ var AcDbDiametricDimension = /** @class */ (function (_super) {
94
116
  });
95
117
  Object.defineProperty(AcDbDiametricDimension.prototype, "extArcStartAngle", {
96
118
  /**
97
- * The extension arc start angle.
119
+ * Gets or sets the extension arc start angle.
120
+ *
121
+ * This angle defines the starting point of the extension arc that may be drawn
122
+ * to connect the dimension line to the curve being dimensioned.
123
+ *
124
+ * @returns The extension arc start angle in radians
98
125
  */
99
126
  get: function () {
100
127
  return this._extArcStartAngle;
@@ -107,7 +134,12 @@ var AcDbDiametricDimension = /** @class */ (function (_super) {
107
134
  });
108
135
  Object.defineProperty(AcDbDiametricDimension.prototype, "extArcEndAngle", {
109
136
  /**
110
- * The extension arc end angle.
137
+ * Gets or sets the extension arc end angle.
138
+ *
139
+ * This angle defines the ending point of the extension arc that may be drawn
140
+ * to connect the dimension line to the curve being dimensioned.
141
+ *
142
+ * @returns The extension arc end angle in radians
111
143
  */
112
144
  get: function () {
113
145
  return this._extArcEndAngle;
@@ -120,9 +152,14 @@ var AcDbDiametricDimension = /** @class */ (function (_super) {
120
152
  });
121
153
  Object.defineProperty(AcDbDiametricDimension.prototype, "leaderLength", {
122
154
  /**
123
- * The dimension to use length as the distance from the chordPoint dimension definition point, out
124
- * to where the dimension will do a horizontal dogleg to the annotation text (or stop if no dogleg
125
- * is necessary).
155
+ * Gets the leader length for the dimension.
156
+ *
157
+ * The leader length is the distance from the chordPoint dimension definition point,
158
+ * out to where the dimension will do a horizontal dogleg to the annotation text
159
+ * (or stop if no dogleg is necessary). This is only used when the text is outside
160
+ * the curve being dimensioned.
161
+ *
162
+ * @returns The leader length in drawing units
126
163
  */
127
164
  get: function () {
128
165
  return this._leaderLength;
@@ -132,6 +169,13 @@ var AcDbDiametricDimension = /** @class */ (function (_super) {
132
169
  });
133
170
  Object.defineProperty(AcDbDiametricDimension.prototype, "geometricExtents", {
134
171
  /**
172
+ * Gets the geometric extents (bounding box) of this dimension entity.
173
+ *
174
+ * The geometric extents define the minimum bounding box that completely contains
175
+ * the dimension entity, including all its components like extension lines,
176
+ * dimension lines, arrows, and text.
177
+ *
178
+ * @returns A 3D bounding box containing the dimension entity
135
179
  * @inheritdoc
136
180
  */
137
181
  get: function () {
@@ -141,6 +185,18 @@ var AcDbDiametricDimension = /** @class */ (function (_super) {
141
185
  enumerable: false,
142
186
  configurable: true
143
187
  });
188
+ /**
189
+ * Draws the dimension lines with appropriate arrow styles.
190
+ *
191
+ * This method handles the rendering of dimension lines based on the number of
192
+ * line segments. It applies different arrow styles to the first and last lines
193
+ * when appropriate, and sorts the lines for proper visual representation.
194
+ *
195
+ * @param renderer - The graphics renderer used to draw the dimension lines
196
+ * @param lines - Array of line entities that make up the dimension
197
+ * @returns Array of rendered graphics entities
198
+ * @protected
199
+ */
144
200
  AcDbDiametricDimension.prototype.drawLines = function (renderer, lines) {
145
201
  var _this = this;
146
202
  var results = [];
@@ -167,6 +223,15 @@ var AcDbDiametricDimension = /** @class */ (function (_super) {
167
223
  }
168
224
  return results;
169
225
  };
226
+ /**
227
+ * Draws a single line with optional arrow styling.
228
+ *
229
+ * @param renderer - The graphics renderer used to draw the line
230
+ * @param line - The line entity to draw
231
+ * @param lineArrowStyle - Optional arrow style configuration for the line
232
+ * @returns The rendered graphics entity
233
+ * @private
234
+ */
170
235
  AcDbDiametricDimension.prototype.drawLine = function (renderer, line, lineArrowStyle) {
171
236
  if (lineArrowStyle) {
172
237
  var points = [line.startPoint, line.endPoint];
@@ -176,6 +241,15 @@ var AcDbDiametricDimension = /** @class */ (function (_super) {
176
241
  return line.draw(renderer);
177
242
  }
178
243
  };
244
+ /**
245
+ * Sorts the dimension lines for proper visual representation.
246
+ *
247
+ * This method sorts the line segments based on their start and end points to ensure
248
+ * they are drawn in the correct order for proper dimension visualization.
249
+ *
250
+ * @param lines - Array of line entities to sort
251
+ * @private
252
+ */
179
253
  AcDbDiametricDimension.prototype.sortLines = function (lines) {
180
254
  // Function to compare positions of points
181
255
  var comparePoints = function (a, b) {
@@ -1 +1 @@
1
- {"version":3,"file":"AcDbDiametricDimension.js","sourceRoot":"","sources":["../../../src/entity/dimension/AcDbDiametricDimension.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AcDbDiametricDimension.js","sourceRoot":"","sources":["../../../src/entity/dimension/AcDbDiametricDimension.ts"],"names":[],"mappings":"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"}
@@ -3,49 +3,143 @@ import { AcGiArrowStyle, AcGiArrowType, AcGiLineArrowStyle, AcGiRenderer } from
3
3
  import { AcDbDimStyleTableRecord } from '../../database';
4
4
  import { AcDbEntity } from '../AcDbEntity';
5
5
  import { AcDbLine } from '../AcDbLine';
6
+ /**
7
+ * Defines the line spacing style for dimension text.
8
+ */
6
9
  export declare enum AcDbLineSpacingStyle {
10
+ /** At least the specified spacing */
7
11
  AtLeast = 1,
12
+ /** Exactly the specified spacing */
8
13
  Exactly = 2
9
14
  }
10
15
  /**
11
- * This class is the base class for the classes that represent all the dimension entity types within AutoCAD.
12
- * The appearance of dimensions is controlled by dimension variable settings and dimension styles.
16
+ * Abstract base class for all dimension entity types in AutoCAD.
17
+ *
18
+ * This class provides the fundamental functionality for all dimension entities,
19
+ * including dimension text, style management, arrow handling, and measurement
20
+ * calculations. The appearance of dimensions is controlled by dimension variable
21
+ * settings and dimension styles.
22
+ *
23
+ * @example
24
+ * ```typescript
25
+ * class MyDimension extends AcDbDimension {
26
+ * // Implementation for specific dimension type
27
+ * draw(renderer: AcGiRenderer) {
28
+ * // Custom drawing logic
29
+ * }
30
+ * }
31
+ * ```
13
32
  */
14
33
  export declare abstract class AcDbDimension extends AcDbEntity {
34
+ /** The block table record ID containing the dimension entities */
15
35
  private _dimBlockId;
36
+ /** The dimension style name used by this dimension */
16
37
  private _dimensionStyleName;
38
+ /** The user-supplied dimension annotation text */
17
39
  private _dimensionText;
40
+ /** The measured value of the dimension */
18
41
  private _measurement?;
42
+ /** The line spacing factor for dimension text */
19
43
  private _textLineSpacingFactor;
44
+ /** The line spacing style for dimension text */
20
45
  private _textLineSpacingStyle;
46
+ /** The position of the dimension text */
21
47
  private _textPosition;
48
+ /** The rotation angle of the dimension text */
22
49
  private _textRotation;
50
+ /** The cached dimension style record */
23
51
  private _dimStyle?;
52
+ /**
53
+ * Creates a new dimension entity.
54
+ *
55
+ * This constructor initializes a dimension with default values.
56
+ * Subclasses should override this constructor to set up dimension-specific properties.
57
+ *
58
+ * @example
59
+ * ```typescript
60
+ * const dimension = new MyDimension();
61
+ * dimension.dimensionText = "10.0";
62
+ * dimension.textPosition = new AcGePoint3d(5, 5, 0);
63
+ * ```
64
+ */
24
65
  constructor();
25
66
  /**
26
- * The name of the block table record containing the entities that this dimension displays.
67
+ * Gets the block table record ID containing the entities that this dimension displays.
68
+ *
69
+ * @returns The block table record ID, or null if not set
70
+ *
71
+ * @example
72
+ * ```typescript
73
+ * const blockId = dimension.dimBlockId;
74
+ * console.log(`Dimension block ID: ${blockId}`);
75
+ * ```
27
76
  */
28
77
  get dimBlockId(): string | null;
78
+ /**
79
+ * Sets the block table record ID for this dimension.
80
+ *
81
+ * @param value - The block table record ID, or null to clear
82
+ *
83
+ * @example
84
+ * ```typescript
85
+ * dimension.dimBlockId = "MyDimensionBlock";
86
+ * ```
87
+ */
29
88
  set dimBlockId(value: string | null);
30
89
  /**
31
- * The dimension style name used by this dimension
90
+ * Gets the dimension style name used by this dimension.
91
+ *
92
+ * @returns The dimension style name, or null if not set
93
+ *
94
+ * @example
95
+ * ```typescript
96
+ * const styleName = dimension.dimensionStyleName;
97
+ * console.log(`Dimension style: ${styleName}`);
98
+ * ```
32
99
  */
33
100
  get dimensionStyleName(): string | null;
101
+ /**
102
+ * Sets the dimension style name for this dimension.
103
+ *
104
+ * @param value - The dimension style name, or null to use default
105
+ *
106
+ * @example
107
+ * ```typescript
108
+ * dimension.dimensionStyleName = "Standard";
109
+ * ```
110
+ */
34
111
  set dimensionStyleName(value: string | null);
35
112
  /**
36
- * The dimension style used by this dimension.
113
+ * Gets the dimension style used by this dimension.
114
+ *
115
+ * This method returns the dimension style record associated with this dimension.
116
+ * If no style is specified, it returns the default dimension style.
117
+ *
118
+ * @returns The dimension style record
119
+ *
120
+ * @example
121
+ * ```typescript
122
+ * const style = dimension.dimensionStyle;
123
+ * console.log(`Style name: ${style.name}`);
124
+ * ```
37
125
  */
38
126
  get dimensionStyle(): AcDbDimStyleTableRecord;
39
127
  /**
40
- * The user-supplied dimension annotation text string. This string will need to contain any desired
41
- * multiline text formatting characters.
42
- * - If the default text is the only text in the dimension, provide this function with an empty string
43
- * (for example, '')
44
- * - If the dimension contains user-defined text along with the defualt text, provide this function with
45
- * the default text denoted with angle brackets (for example, 'This is the default text <>').
46
- * - If the dimension contains no text (for example using the '.' syntax), provide the '.'.
47
- * - if the text is user defined, but there is no default text, provide only the user-defined text to
48
- * this function.
128
+ * Gets the user-supplied dimension annotation text string.
129
+ *
130
+ * This string can contain multiline text formatting characters. The text can be:
131
+ * - Empty string ('') for default text only
132
+ * - Text with angle brackets for mixed default and user text (e.g., 'This is the default text <>')
133
+ * - Period ('.') for no text
134
+ * - User-defined text only
135
+ *
136
+ * @returns The dimension text string
137
+ *
138
+ * @example
139
+ * ```typescript
140
+ * const text = dimension.dimensionText;
141
+ * console.log(`Dimension text: ${text}`);
142
+ * ```
49
143
  */
50
144
  get dimensionText(): string | null;
51
145
  set dimensionText(value: string | null);
@@ -1 +1 @@
1
- {"version":3,"file":"AcDbDimension.d.ts","sourceRoot":"","sources":["../../../src/entity/dimension/AcDbDimension.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AcDbDimension.d.ts","sourceRoot":"","sources":["../../../src/entity/dimension/AcDbDimension.ts"],"names":[],"mappings":"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"}