@mlightcad/data-model 1.0.0

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 (301) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +116 -0
  3. package/dist/data-model.js +19887 -0
  4. package/dist/data-model.umd.cjs +5 -0
  5. package/lib/base/AcDbHostApplicationServices.d.ts +30 -0
  6. package/lib/base/AcDbHostApplicationServices.d.ts.map +1 -0
  7. package/lib/base/AcDbHostApplicationServices.js +54 -0
  8. package/lib/base/AcDbHostApplicationServices.js.map +1 -0
  9. package/lib/base/AcDbObject.d.ts +70 -0
  10. package/lib/base/AcDbObject.d.ts.map +1 -0
  11. package/lib/base/AcDbObject.js +113 -0
  12. package/lib/base/AcDbObject.js.map +1 -0
  13. package/lib/base/index.d.ts +3 -0
  14. package/lib/base/index.d.ts.map +1 -0
  15. package/lib/base/index.js +3 -0
  16. package/lib/base/index.js.map +1 -0
  17. package/lib/converter/AcDbBatchProcessing.d.ts +43 -0
  18. package/lib/converter/AcDbBatchProcessing.d.ts.map +1 -0
  19. package/lib/converter/AcDbBatchProcessing.js +165 -0
  20. package/lib/converter/AcDbBatchProcessing.js.map +1 -0
  21. package/lib/converter/AcDbDxfConverter.d.ts +39 -0
  22. package/lib/converter/AcDbDxfConverter.d.ts.map +1 -0
  23. package/lib/converter/AcDbDxfConverter.js +567 -0
  24. package/lib/converter/AcDbDxfConverter.js.map +1 -0
  25. package/lib/converter/AcDbDxfParseWorker.d.ts +2 -0
  26. package/lib/converter/AcDbDxfParseWorker.d.ts.map +1 -0
  27. package/lib/converter/AcDbDxfParseWorker.js +6 -0
  28. package/lib/converter/AcDbDxfParseWorker.js.map +1 -0
  29. package/lib/converter/AcDbEntitiyConverter.d.ts +36 -0
  30. package/lib/converter/AcDbEntitiyConverter.d.ts.map +1 -0
  31. package/lib/converter/AcDbEntitiyConverter.js +491 -0
  32. package/lib/converter/AcDbEntitiyConverter.js.map +1 -0
  33. package/lib/converter/AcDbObjectConverter.d.ts +9 -0
  34. package/lib/converter/AcDbObjectConverter.d.ts.map +1 -0
  35. package/lib/converter/AcDbObjectConverter.js +30 -0
  36. package/lib/converter/AcDbObjectConverter.js.map +1 -0
  37. package/lib/converter/index.d.ts +3 -0
  38. package/lib/converter/index.d.ts.map +1 -0
  39. package/lib/converter/index.js +3 -0
  40. package/lib/converter/index.js.map +1 -0
  41. package/lib/database/AcDbBlockTable.d.ts +15 -0
  42. package/lib/database/AcDbBlockTable.d.ts.map +1 -0
  43. package/lib/database/AcDbBlockTable.js +46 -0
  44. package/lib/database/AcDbBlockTable.js.map +1 -0
  45. package/lib/database/AcDbBlockTableRecord.d.ts +49 -0
  46. package/lib/database/AcDbBlockTableRecord.d.ts.map +1 -0
  47. package/lib/database/AcDbBlockTableRecord.js +108 -0
  48. package/lib/database/AcDbBlockTableRecord.js.map +1 -0
  49. package/lib/database/AcDbDatabase.d.ts +211 -0
  50. package/lib/database/AcDbDatabase.d.ts.map +1 -0
  51. package/lib/database/AcDbDatabase.js +395 -0
  52. package/lib/database/AcDbDatabase.js.map +1 -0
  53. package/lib/database/AcDbDatabaseConverter.d.ts +120 -0
  54. package/lib/database/AcDbDatabaseConverter.d.ts.map +1 -0
  55. package/lib/database/AcDbDatabaseConverter.js +376 -0
  56. package/lib/database/AcDbDatabaseConverter.js.map +1 -0
  57. package/lib/database/AcDbDatabaseConverterManager.d.ts +59 -0
  58. package/lib/database/AcDbDatabaseConverterManager.d.ts.map +1 -0
  59. package/lib/database/AcDbDatabaseConverterManager.js +98 -0
  60. package/lib/database/AcDbDatabaseConverterManager.js.map +1 -0
  61. package/lib/database/AcDbDatabaseConverterRegister.d.ts +54 -0
  62. package/lib/database/AcDbDatabaseConverterRegister.d.ts.map +1 -0
  63. package/lib/database/AcDbDatabaseConverterRegister.js +84 -0
  64. package/lib/database/AcDbDatabaseConverterRegister.js.map +1 -0
  65. package/lib/database/AcDbDimStyleTable.d.ts +11 -0
  66. package/lib/database/AcDbDimStyleTable.d.ts.map +1 -0
  67. package/lib/database/AcDbDimStyleTable.js +29 -0
  68. package/lib/database/AcDbDimStyleTable.js.map +1 -0
  69. package/lib/database/AcDbDimStyleTableRecord.d.ts +682 -0
  70. package/lib/database/AcDbDimStyleTableRecord.d.ts.map +1 -0
  71. package/lib/database/AcDbDimStyleTableRecord.js +1250 -0
  72. package/lib/database/AcDbDimStyleTableRecord.js.map +1 -0
  73. package/lib/database/AcDbLayerTable.d.ts +14 -0
  74. package/lib/database/AcDbLayerTable.d.ts.map +1 -0
  75. package/lib/database/AcDbLayerTable.js +55 -0
  76. package/lib/database/AcDbLayerTable.js.map +1 -0
  77. package/lib/database/AcDbLayerTableRecord.d.ts +98 -0
  78. package/lib/database/AcDbLayerTableRecord.d.ts.map +1 -0
  79. package/lib/database/AcDbLayerTableRecord.js +235 -0
  80. package/lib/database/AcDbLayerTableRecord.js.map +1 -0
  81. package/lib/database/AcDbLinetypeTable.d.ts +11 -0
  82. package/lib/database/AcDbLinetypeTable.d.ts.map +1 -0
  83. package/lib/database/AcDbLinetypeTable.js +29 -0
  84. package/lib/database/AcDbLinetypeTable.js.map +1 -0
  85. package/lib/database/AcDbLinetypeTableRecord.d.ts +47 -0
  86. package/lib/database/AcDbLinetypeTableRecord.d.ts.map +1 -0
  87. package/lib/database/AcDbLinetypeTableRecord.js +97 -0
  88. package/lib/database/AcDbLinetypeTableRecord.js.map +1 -0
  89. package/lib/database/AcDbSymbolTable.d.ts +74 -0
  90. package/lib/database/AcDbSymbolTable.d.ts.map +1 -0
  91. package/lib/database/AcDbSymbolTable.js +136 -0
  92. package/lib/database/AcDbSymbolTable.js.map +1 -0
  93. package/lib/database/AcDbSymbolTableRecord.d.ts +16 -0
  94. package/lib/database/AcDbSymbolTableRecord.d.ts.map +1 -0
  95. package/lib/database/AcDbSymbolTableRecord.js +44 -0
  96. package/lib/database/AcDbSymbolTableRecord.js.map +1 -0
  97. package/lib/database/AcDbTextStyleTable.d.ts +14 -0
  98. package/lib/database/AcDbTextStyleTable.d.ts.map +1 -0
  99. package/lib/database/AcDbTextStyleTable.js +78 -0
  100. package/lib/database/AcDbTextStyleTable.js.map +1 -0
  101. package/lib/database/AcDbTextStyleTableRecord.d.ts +67 -0
  102. package/lib/database/AcDbTextStyleTableRecord.d.ts.map +1 -0
  103. package/lib/database/AcDbTextStyleTableRecord.js +166 -0
  104. package/lib/database/AcDbTextStyleTableRecord.js.map +1 -0
  105. package/lib/database/AcDbViewportTable.d.ts +11 -0
  106. package/lib/database/AcDbViewportTable.d.ts.map +1 -0
  107. package/lib/database/AcDbViewportTable.js +29 -0
  108. package/lib/database/AcDbViewportTable.js.map +1 -0
  109. package/lib/database/AcDbViewportTableRecord.d.ts +89 -0
  110. package/lib/database/AcDbViewportTableRecord.d.ts.map +1 -0
  111. package/lib/database/AcDbViewportTableRecord.js +262 -0
  112. package/lib/database/AcDbViewportTableRecord.js.map +1 -0
  113. package/lib/database/index.d.ts +18 -0
  114. package/lib/database/index.d.ts.map +1 -0
  115. package/lib/database/index.js +18 -0
  116. package/lib/database/index.js.map +1 -0
  117. package/lib/entity/AcDbArc.d.ts +67 -0
  118. package/lib/entity/AcDbArc.d.ts.map +1 -0
  119. package/lib/entity/AcDbArc.js +154 -0
  120. package/lib/entity/AcDbArc.js.map +1 -0
  121. package/lib/entity/AcDbBlockReference.d.ts +54 -0
  122. package/lib/entity/AcDbBlockReference.d.ts.map +1 -0
  123. package/lib/entity/AcDbBlockReference.js +168 -0
  124. package/lib/entity/AcDbBlockReference.js.map +1 -0
  125. package/lib/entity/AcDbCircle.d.ts +51 -0
  126. package/lib/entity/AcDbCircle.d.ts.map +1 -0
  127. package/lib/entity/AcDbCircle.js +115 -0
  128. package/lib/entity/AcDbCircle.js.map +1 -0
  129. package/lib/entity/AcDbCurve.d.ts +9 -0
  130. package/lib/entity/AcDbCurve.d.ts.map +1 -0
  131. package/lib/entity/AcDbCurve.js +25 -0
  132. package/lib/entity/AcDbCurve.js.map +1 -0
  133. package/lib/entity/AcDbEllipse.d.ts +53 -0
  134. package/lib/entity/AcDbEllipse.d.ts.map +1 -0
  135. package/lib/entity/AcDbEllipse.js +119 -0
  136. package/lib/entity/AcDbEllipse.js.map +1 -0
  137. package/lib/entity/AcDbEntity.d.ts +103 -0
  138. package/lib/entity/AcDbEntity.d.ts.map +1 -0
  139. package/lib/entity/AcDbEntity.js +292 -0
  140. package/lib/entity/AcDbEntity.js.map +1 -0
  141. package/lib/entity/AcDbHatch.d.ts +116 -0
  142. package/lib/entity/AcDbHatch.d.ts.map +1 -0
  143. package/lib/entity/AcDbHatch.js +200 -0
  144. package/lib/entity/AcDbHatch.js.map +1 -0
  145. package/lib/entity/AcDbLeader.d.ts +94 -0
  146. package/lib/entity/AcDbLeader.d.ts.map +1 -0
  147. package/lib/entity/AcDbLeader.js +217 -0
  148. package/lib/entity/AcDbLeader.js.map +1 -0
  149. package/lib/entity/AcDbLine.d.ts +55 -0
  150. package/lib/entity/AcDbLine.d.ts.map +1 -0
  151. package/lib/entity/AcDbLine.js +158 -0
  152. package/lib/entity/AcDbLine.js.map +1 -0
  153. package/lib/entity/AcDbMText.d.ts +119 -0
  154. package/lib/entity/AcDbMText.d.ts.map +1 -0
  155. package/lib/entity/AcDbMText.js +300 -0
  156. package/lib/entity/AcDbMText.js.map +1 -0
  157. package/lib/entity/AcDbPoint.d.ts +32 -0
  158. package/lib/entity/AcDbPoint.d.ts.map +1 -0
  159. package/lib/entity/AcDbPoint.js +75 -0
  160. package/lib/entity/AcDbPoint.js.map +1 -0
  161. package/lib/entity/AcDbPolyline.d.ts +72 -0
  162. package/lib/entity/AcDbPolyline.d.ts.map +1 -0
  163. package/lib/entity/AcDbPolyline.js +154 -0
  164. package/lib/entity/AcDbPolyline.js.map +1 -0
  165. package/lib/entity/AcDbRasterImage.d.ts +163 -0
  166. package/lib/entity/AcDbRasterImage.d.ts.map +1 -0
  167. package/lib/entity/AcDbRasterImage.js +406 -0
  168. package/lib/entity/AcDbRasterImage.js.map +1 -0
  169. package/lib/entity/AcDbRay.d.ts +42 -0
  170. package/lib/entity/AcDbRay.d.ts.map +1 -0
  171. package/lib/entity/AcDbRay.js +102 -0
  172. package/lib/entity/AcDbRay.js.map +1 -0
  173. package/lib/entity/AcDbSpline.d.ts +37 -0
  174. package/lib/entity/AcDbSpline.d.ts.map +1 -0
  175. package/lib/entity/AcDbSpline.js +71 -0
  176. package/lib/entity/AcDbSpline.js.map +1 -0
  177. package/lib/entity/AcDbTable.d.ts +141 -0
  178. package/lib/entity/AcDbTable.d.ts.map +1 -0
  179. package/lib/entity/AcDbTable.js +358 -0
  180. package/lib/entity/AcDbTable.js.map +1 -0
  181. package/lib/entity/AcDbText.d.ts +110 -0
  182. package/lib/entity/AcDbText.d.ts.map +1 -0
  183. package/lib/entity/AcDbText.js +255 -0
  184. package/lib/entity/AcDbText.js.map +1 -0
  185. package/lib/entity/AcDbTrace.d.ts +64 -0
  186. package/lib/entity/AcDbTrace.d.ts.map +1 -0
  187. package/lib/entity/AcDbTrace.js +145 -0
  188. package/lib/entity/AcDbTrace.js.map +1 -0
  189. package/lib/entity/AcDbViewport.d.ts +58 -0
  190. package/lib/entity/AcDbViewport.d.ts.map +1 -0
  191. package/lib/entity/AcDbViewport.js +179 -0
  192. package/lib/entity/AcDbViewport.js.map +1 -0
  193. package/lib/entity/AcDbWipeout.d.ts +9 -0
  194. package/lib/entity/AcDbWipeout.d.ts.map +1 -0
  195. package/lib/entity/AcDbWipeout.js +40 -0
  196. package/lib/entity/AcDbWipeout.js.map +1 -0
  197. package/lib/entity/AcDbXline.d.ts +42 -0
  198. package/lib/entity/AcDbXline.d.ts.map +1 -0
  199. package/lib/entity/AcDbXline.js +102 -0
  200. package/lib/entity/AcDbXline.js.map +1 -0
  201. package/lib/entity/dimension/AcDb3PointAngularDimension.d.ts +46 -0
  202. package/lib/entity/dimension/AcDb3PointAngularDimension.d.ts.map +1 -0
  203. package/lib/entity/dimension/AcDb3PointAngularDimension.js +111 -0
  204. package/lib/entity/dimension/AcDb3PointAngularDimension.js.map +1 -0
  205. package/lib/entity/dimension/AcDbAlignedDimension.d.ts +77 -0
  206. package/lib/entity/dimension/AcDbAlignedDimension.d.ts.map +1 -0
  207. package/lib/entity/dimension/AcDbAlignedDimension.js +203 -0
  208. package/lib/entity/dimension/AcDbAlignedDimension.js.map +1 -0
  209. package/lib/entity/dimension/AcDbArcDimension.d.ts +46 -0
  210. package/lib/entity/dimension/AcDbArcDimension.d.ts.map +1 -0
  211. package/lib/entity/dimension/AcDbArcDimension.js +111 -0
  212. package/lib/entity/dimension/AcDbArcDimension.js.map +1 -0
  213. package/lib/entity/dimension/AcDbDiametricDimension.d.ts +69 -0
  214. package/lib/entity/dimension/AcDbDiametricDimension.d.ts.map +1 -0
  215. package/lib/entity/dimension/AcDbDiametricDimension.js +199 -0
  216. package/lib/entity/dimension/AcDbDiametricDimension.js.map +1 -0
  217. package/lib/entity/dimension/AcDbDimension.d.ts +161 -0
  218. package/lib/entity/dimension/AcDbDimension.d.ts.map +1 -0
  219. package/lib/entity/dimension/AcDbDimension.js +375 -0
  220. package/lib/entity/dimension/AcDbDimension.js.map +1 -0
  221. package/lib/entity/dimension/AcDbOrdinateDimension.d.ts +44 -0
  222. package/lib/entity/dimension/AcDbOrdinateDimension.d.ts.map +1 -0
  223. package/lib/entity/dimension/AcDbOrdinateDimension.js +99 -0
  224. package/lib/entity/dimension/AcDbOrdinateDimension.js.map +1 -0
  225. package/lib/entity/dimension/AcDbRadialDimension.d.ts +69 -0
  226. package/lib/entity/dimension/AcDbRadialDimension.d.ts.map +1 -0
  227. package/lib/entity/dimension/AcDbRadialDimension.js +148 -0
  228. package/lib/entity/dimension/AcDbRadialDimension.js.map +1 -0
  229. package/lib/entity/dimension/index.d.ts +8 -0
  230. package/lib/entity/dimension/index.d.ts.map +1 -0
  231. package/lib/entity/dimension/index.js +8 -0
  232. package/lib/entity/dimension/index.js.map +1 -0
  233. package/lib/entity/index.d.ts +23 -0
  234. package/lib/entity/index.d.ts.map +1 -0
  235. package/lib/entity/index.js +23 -0
  236. package/lib/entity/index.js.map +1 -0
  237. package/lib/index.d.ts +10 -0
  238. package/lib/index.d.ts.map +1 -0
  239. package/lib/index.js +10 -0
  240. package/lib/index.js.map +1 -0
  241. package/lib/misc/AcDbAngleUnits.d.ts +8 -0
  242. package/lib/misc/AcDbAngleUnits.d.ts.map +1 -0
  243. package/lib/misc/AcDbAngleUnits.js +9 -0
  244. package/lib/misc/AcDbAngleUnits.js.map +1 -0
  245. package/lib/misc/AcDbConstants.d.ts +4 -0
  246. package/lib/misc/AcDbConstants.d.ts.map +1 -0
  247. package/lib/misc/AcDbConstants.js +4 -0
  248. package/lib/misc/AcDbConstants.js.map +1 -0
  249. package/lib/misc/AcDbDimArrowType.d.ts +86 -0
  250. package/lib/misc/AcDbDimArrowType.d.ts.map +1 -0
  251. package/lib/misc/AcDbDimArrowType.js +87 -0
  252. package/lib/misc/AcDbDimArrowType.js.map +1 -0
  253. package/lib/misc/AcDbObjectIterator.d.ts +16 -0
  254. package/lib/misc/AcDbObjectIterator.d.ts.map +1 -0
  255. package/lib/misc/AcDbObjectIterator.js +28 -0
  256. package/lib/misc/AcDbObjectIterator.js.map +1 -0
  257. package/lib/misc/AcDbOsnapMode.d.ts +43 -0
  258. package/lib/misc/AcDbOsnapMode.d.ts.map +1 -0
  259. package/lib/misc/AcDbOsnapMode.js +44 -0
  260. package/lib/misc/AcDbOsnapMode.js.map +1 -0
  261. package/lib/misc/AcDbRenderingCache.d.ts +61 -0
  262. package/lib/misc/AcDbRenderingCache.d.ts.map +1 -0
  263. package/lib/misc/AcDbRenderingCache.js +154 -0
  264. package/lib/misc/AcDbRenderingCache.js.map +1 -0
  265. package/lib/misc/AcDbUnitsValue.d.ts +51 -0
  266. package/lib/misc/AcDbUnitsValue.d.ts.map +1 -0
  267. package/lib/misc/AcDbUnitsValue.js +71 -0
  268. package/lib/misc/AcDbUnitsValue.js.map +1 -0
  269. package/lib/misc/index.d.ts +8 -0
  270. package/lib/misc/index.d.ts.map +1 -0
  271. package/lib/misc/index.js +8 -0
  272. package/lib/misc/index.js.map +1 -0
  273. package/lib/object/AcDbDictionary.d.ts +80 -0
  274. package/lib/object/AcDbDictionary.d.ts.map +1 -0
  275. package/lib/object/AcDbDictionary.js +144 -0
  276. package/lib/object/AcDbDictionary.js.map +1 -0
  277. package/lib/object/AcDbRasterImageDef.d.ts +25 -0
  278. package/lib/object/AcDbRasterImageDef.d.ts.map +1 -0
  279. package/lib/object/AcDbRasterImageDef.js +54 -0
  280. package/lib/object/AcDbRasterImageDef.js.map +1 -0
  281. package/lib/object/index.d.ts +4 -0
  282. package/lib/object/index.d.ts.map +1 -0
  283. package/lib/object/index.js +4 -0
  284. package/lib/object/index.js.map +1 -0
  285. package/lib/object/layout/AcDbLayout.d.ts +51 -0
  286. package/lib/object/layout/AcDbLayout.d.ts.map +1 -0
  287. package/lib/object/layout/AcDbLayout.js +120 -0
  288. package/lib/object/layout/AcDbLayout.js.map +1 -0
  289. package/lib/object/layout/AcDbLayoutDictionary.d.ts +19 -0
  290. package/lib/object/layout/AcDbLayoutDictionary.d.ts.map +1 -0
  291. package/lib/object/layout/AcDbLayoutDictionary.js +94 -0
  292. package/lib/object/layout/AcDbLayoutDictionary.js.map +1 -0
  293. package/lib/object/layout/AcDbLayoutManager.d.ts +101 -0
  294. package/lib/object/layout/AcDbLayoutManager.d.ts.map +1 -0
  295. package/lib/object/layout/AcDbLayoutManager.js +154 -0
  296. package/lib/object/layout/AcDbLayoutManager.js.map +1 -0
  297. package/lib/object/layout/index.d.ts +4 -0
  298. package/lib/object/layout/index.d.ts.map +1 -0
  299. package/lib/object/layout/index.js +4 -0
  300. package/lib/object/layout/index.js.map +1 -0
  301. package/package.json +46 -0
@@ -0,0 +1,161 @@
1
+ import { AcGeLine3d, AcGePoint2dLike, AcGePoint3d } from '@mlightcad/geometry-engine';
2
+ import { AcGiArrowStyle, AcGiArrowType, AcGiLineArrowStyle, AcGiRenderer } from '@mlightcad/graphic-interface';
3
+ import { AcDbDimStyleTableRecord } from '../../database';
4
+ import { AcDbEntity } from '../AcDbEntity';
5
+ import { AcDbLine } from '../AcDbLine';
6
+ export declare enum AcDbLineSpacingStyle {
7
+ AtLeast = 1,
8
+ Exactly = 2
9
+ }
10
+ /**
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.
13
+ */
14
+ export declare abstract class AcDbDimension extends AcDbEntity {
15
+ private _dimBlockId;
16
+ private _dimensionStyleName;
17
+ private _dimensionText;
18
+ private _measurement?;
19
+ private _textLineSpacingFactor;
20
+ private _textLineSpacingStyle;
21
+ private _textPosition;
22
+ private _textRotation;
23
+ private _dimStyle?;
24
+ constructor();
25
+ /**
26
+ * The name of the block table record containing the entities that this dimension displays.
27
+ */
28
+ get dimBlockId(): string | null;
29
+ set dimBlockId(value: string | null);
30
+ /**
31
+ * The dimension style name used by this dimension
32
+ */
33
+ get dimensionStyleName(): string | null;
34
+ set dimensionStyleName(value: string | null);
35
+ /**
36
+ * The dimension style used by this dimension.
37
+ */
38
+ get dimensionStyle(): AcDbDimStyleTableRecord;
39
+ /**
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.
49
+ */
50
+ get dimensionText(): string | null;
51
+ set dimensionText(value: string | null);
52
+ /**
53
+ * The current measurement value for this dimension
54
+ */
55
+ get measurement(): number | undefined;
56
+ set measurement(value: number | undefined);
57
+ /**
58
+ * The line spacing factor (a value between 0.25 and 4.00).
59
+ */
60
+ get textLineSpacingFactor(): number;
61
+ set textLineSpacingFactor(value: number);
62
+ /**
63
+ * The line spacing style for the dimension.
64
+ */
65
+ get textLineSpacingStyle(): AcDbLineSpacingStyle;
66
+ set textLineSpacingStyle(value: AcDbLineSpacingStyle);
67
+ /**
68
+ * The dimension's text position point. This is the middle center point of the text (which is itself an
69
+ * MText object with middle-center justification).
70
+ */
71
+ get textPosition(): AcGePoint3d;
72
+ set textPosition(value: AcGePoint3d);
73
+ /**
74
+ * The rotation angle (in radians) of the dimension's annotation text. This is the angle from the
75
+ * dimension's horizontal axis to the horizontal axis used by the text. The angle is in the dimension's
76
+ * OCS X-Y plane with positive angles going counterclockwise when looking down the OCS Z axis towards
77
+ * the OCS origin. The value obtained from: (2 * pi) + the dimension's text rotation angle--the
78
+ * dimension's horizontal rotation angle
79
+ */
80
+ get textRotation(): number;
81
+ set textRotation(value: number);
82
+ /**
83
+ * @inheritdoc
84
+ */
85
+ draw(renderer: AcGiRenderer): import("@mlightcad/graphic-interface").AcGiEntity | undefined;
86
+ protected drawFirstArrow(renderer: AcGiRenderer): import("@mlightcad/graphic-interface").AcGiEntity | undefined;
87
+ protected drawSecondArrow(renderer: AcGiRenderer): import("@mlightcad/graphic-interface").AcGiEntity | undefined;
88
+ protected get arrowScaleFactor(): number;
89
+ /**
90
+ * Arrow style of the first arrow
91
+ */
92
+ protected get firstArrowStyle(): AcGiArrowStyle;
93
+ /**
94
+ * Arrow style of the second arrow
95
+ */
96
+ protected get secondArrowStyle(): AcGiArrowStyle;
97
+ /**
98
+ * The flag to determinate how to attach arrow to endpoint of the line.
99
+ * - true: append arrow to endpoint of the line
100
+ * - false: overlap arrow with endpoint of the line
101
+ */
102
+ protected get isAppendArrow(): boolean;
103
+ /**
104
+ * The BTR id associated with the first arrow type
105
+ */
106
+ protected get firstArrowTypeBtrId(): string;
107
+ /**
108
+ * The first arrow type
109
+ */
110
+ protected get firstArrowType(): AcGiArrowType;
111
+ /**
112
+ * The BTR id associated with the second arrow type
113
+ */
114
+ protected get secondArrowTypeBtrId(): string;
115
+ /**
116
+ * The second arrow type
117
+ */
118
+ protected get secondArrowType(): AcGiArrowType;
119
+ /**
120
+ * The maximum number of arrow lines of this dimension
121
+ */
122
+ protected get arrowLineCount(): number;
123
+ /**
124
+ * Get line arrow style of the specified line according to its type (extension line or dimension
125
+ * line). Return undefined if no line arrow style applied.
126
+ * @param line Input line to get its line style
127
+ * @returns Return the line style of the specified line. Return undefined if no line arrow style applied.
128
+ */
129
+ protected getLineArrowStyle(line: AcDbLine): AcGiLineArrowStyle | undefined;
130
+ /**
131
+ * Find the point `p3` on a line along the line direction at a distance `length` from `p2`.
132
+ *
133
+ * @param p1 - The start point of the line.
134
+ * @param p2 - The end point of the line.
135
+ * @param length - The distance from `p2` to `p3`.
136
+ * @returns Return the point `p3`.
137
+ */
138
+ protected findPointOnLine1(p1: AcGePoint3d, p2: AcGePoint3d, length: number): AcGePoint3d;
139
+ /**
140
+ * Find the point `p2` on a line starting from `p1` at a specified angle
141
+ * and at a distance `length` from `p1`.
142
+ *
143
+ * @param p1 - The start point of the line.
144
+ * @param angle - The angle of the line in radians relative to the x-axis.
145
+ * @param length - The distance from `p1` to `p2`.
146
+ * @returns Return the point `p2`.
147
+ */
148
+ protected findPointOnLine2(p1: AcGePoint2dLike, angle: number, length: number): AcGePoint2dLike;
149
+ /**
150
+ * Adjust start point and end point of extension line according current dimension style
151
+ * @param extensionLine Input extension line to adjust its start point and end point
152
+ */
153
+ protected adjustExtensionLine(extensionLine: AcGeLine3d): void;
154
+ /**
155
+ * Get dimension style name by dimension block id
156
+ * @param id Input dimension block id
157
+ * @returns Return dimension style name by dimension block id
158
+ */
159
+ private getArrowName;
160
+ }
161
+ //# sourceMappingURL=AcDbDimension.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AcDbDimension.d.ts","sourceRoot":"","sources":["../../../src/entity/dimension/AcDbDimension.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,375 @@
1
+ var __extends = (this && this.__extends) || (function () {
2
+ var extendStatics = function (d, b) {
3
+ extendStatics = Object.setPrototypeOf ||
4
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
5
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
6
+ return extendStatics(d, b);
7
+ };
8
+ return function (d, b) {
9
+ if (typeof b !== "function" && b !== null)
10
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
11
+ extendStatics(d, b);
12
+ function __() { this.constructor = d; }
13
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
14
+ };
15
+ })();
16
+ import { AcGePoint3d } from '@mlightcad/geometry-engine';
17
+ import { AcGiArrowType } from '@mlightcad/graphic-interface';
18
+ import { AcDbDimStyleTableRecord } from '../../database';
19
+ import { AcDbRenderingCache } from '../../misc';
20
+ import { AcDbEntity } from '../AcDbEntity';
21
+ export var AcDbLineSpacingStyle;
22
+ (function (AcDbLineSpacingStyle) {
23
+ AcDbLineSpacingStyle[AcDbLineSpacingStyle["AtLeast"] = 1] = "AtLeast";
24
+ AcDbLineSpacingStyle[AcDbLineSpacingStyle["Exactly"] = 2] = "Exactly";
25
+ })(AcDbLineSpacingStyle || (AcDbLineSpacingStyle = {}));
26
+ /**
27
+ * This class is the base class for the classes that represent all the dimension entity types within AutoCAD.
28
+ * The appearance of dimensions is controlled by dimension variable settings and dimension styles.
29
+ */
30
+ var AcDbDimension = /** @class */ (function (_super) {
31
+ __extends(AcDbDimension, _super);
32
+ function AcDbDimension() {
33
+ var _this = _super.call(this) || this;
34
+ _this._dimBlockId = null;
35
+ _this._dimensionStyleName = null;
36
+ _this._dimensionText = null;
37
+ _this._textLineSpacingFactor = 1.0;
38
+ _this._textLineSpacingStyle = AcDbLineSpacingStyle.AtLeast;
39
+ _this._textPosition = new AcGePoint3d();
40
+ _this._textRotation = 0;
41
+ return _this;
42
+ }
43
+ Object.defineProperty(AcDbDimension.prototype, "dimBlockId", {
44
+ /**
45
+ * The name of the block table record containing the entities that this dimension displays.
46
+ */
47
+ get: function () {
48
+ return this._dimBlockId;
49
+ },
50
+ set: function (value) {
51
+ this._dimBlockId = value;
52
+ },
53
+ enumerable: false,
54
+ configurable: true
55
+ });
56
+ Object.defineProperty(AcDbDimension.prototype, "dimensionStyleName", {
57
+ /**
58
+ * The dimension style name used by this dimension
59
+ */
60
+ get: function () {
61
+ return this._dimensionStyleName;
62
+ },
63
+ set: function (value) {
64
+ this._dimensionStyleName = value;
65
+ },
66
+ enumerable: false,
67
+ configurable: true
68
+ });
69
+ Object.defineProperty(AcDbDimension.prototype, "dimensionStyle", {
70
+ /**
71
+ * The dimension style used by this dimension.
72
+ */
73
+ get: function () {
74
+ if (this._dimStyle == null) {
75
+ var dimStyle = undefined;
76
+ if (this.dimensionStyleName) {
77
+ dimStyle = this.database.tables.dimStyleTable.getAt(this.dimensionStyleName);
78
+ }
79
+ if (dimStyle == null)
80
+ dimStyle = new AcDbDimStyleTableRecord();
81
+ this._dimStyle = dimStyle;
82
+ }
83
+ return this._dimStyle;
84
+ },
85
+ enumerable: false,
86
+ configurable: true
87
+ });
88
+ Object.defineProperty(AcDbDimension.prototype, "dimensionText", {
89
+ /**
90
+ * The user-supplied dimension annotation text string. This string will need to contain any desired
91
+ * multiline text formatting characters.
92
+ * - If the default text is the only text in the dimension, provide this function with an empty string
93
+ * (for example, '')
94
+ * - If the dimension contains user-defined text along with the defualt text, provide this function with
95
+ * the default text denoted with angle brackets (for example, 'This is the default text <>').
96
+ * - If the dimension contains no text (for example using the '.' syntax), provide the '.'.
97
+ * - if the text is user defined, but there is no default text, provide only the user-defined text to
98
+ * this function.
99
+ */
100
+ get: function () {
101
+ return this._dimensionText;
102
+ },
103
+ set: function (value) {
104
+ this._dimensionText = value;
105
+ },
106
+ enumerable: false,
107
+ configurable: true
108
+ });
109
+ Object.defineProperty(AcDbDimension.prototype, "measurement", {
110
+ /**
111
+ * The current measurement value for this dimension
112
+ */
113
+ get: function () {
114
+ return this._measurement;
115
+ },
116
+ set: function (value) {
117
+ this._measurement = value;
118
+ },
119
+ enumerable: false,
120
+ configurable: true
121
+ });
122
+ Object.defineProperty(AcDbDimension.prototype, "textLineSpacingFactor", {
123
+ /**
124
+ * The line spacing factor (a value between 0.25 and 4.00).
125
+ */
126
+ get: function () {
127
+ return this._textLineSpacingFactor;
128
+ },
129
+ set: function (value) {
130
+ this._textLineSpacingFactor = value;
131
+ },
132
+ enumerable: false,
133
+ configurable: true
134
+ });
135
+ Object.defineProperty(AcDbDimension.prototype, "textLineSpacingStyle", {
136
+ /**
137
+ * The line spacing style for the dimension.
138
+ */
139
+ get: function () {
140
+ return this._textLineSpacingStyle;
141
+ },
142
+ set: function (value) {
143
+ this._textLineSpacingStyle = value;
144
+ },
145
+ enumerable: false,
146
+ configurable: true
147
+ });
148
+ Object.defineProperty(AcDbDimension.prototype, "textPosition", {
149
+ /**
150
+ * The dimension's text position point. This is the middle center point of the text (which is itself an
151
+ * MText object with middle-center justification).
152
+ */
153
+ get: function () {
154
+ return this._textPosition;
155
+ },
156
+ set: function (value) {
157
+ this._textPosition.copy(value);
158
+ },
159
+ enumerable: false,
160
+ configurable: true
161
+ });
162
+ Object.defineProperty(AcDbDimension.prototype, "textRotation", {
163
+ /**
164
+ * The rotation angle (in radians) of the dimension's annotation text. This is the angle from the
165
+ * dimension's horizontal axis to the horizontal axis used by the text. The angle is in the dimension's
166
+ * OCS X-Y plane with positive angles going counterclockwise when looking down the OCS Z axis towards
167
+ * the OCS origin. The value obtained from: (2 * pi) + the dimension's text rotation angle--the
168
+ * dimension's horizontal rotation angle
169
+ */
170
+ get: function () {
171
+ return this._textRotation;
172
+ },
173
+ set: function (value) {
174
+ this._textRotation = value;
175
+ },
176
+ enumerable: false,
177
+ configurable: true
178
+ });
179
+ /**
180
+ * @inheritdoc
181
+ */
182
+ AcDbDimension.prototype.draw = function (renderer) {
183
+ if (this.dimBlockId) {
184
+ var blockTableRecord = this.database.tables.blockTable.getAt(this.dimBlockId);
185
+ if (blockTableRecord) {
186
+ return AcDbRenderingCache.instance.draw(renderer, blockTableRecord, this.rgbColor, false);
187
+ }
188
+ }
189
+ return renderer.group([]);
190
+ };
191
+ AcDbDimension.prototype.drawFirstArrow = function (renderer) {
192
+ var blockTableRecord = this.database.tables.blockTable.getAt(this.firstArrowType);
193
+ if (blockTableRecord) {
194
+ return AcDbRenderingCache.instance.draw(renderer, blockTableRecord, this.rgbColor, false);
195
+ }
196
+ return undefined;
197
+ };
198
+ AcDbDimension.prototype.drawSecondArrow = function (renderer) {
199
+ var blockTableRecord = this.database.tables.blockTable.getAt(this.secondArrowType);
200
+ if (blockTableRecord) {
201
+ return AcDbRenderingCache.instance.draw(renderer, blockTableRecord, this.rgbColor, false);
202
+ }
203
+ return undefined;
204
+ };
205
+ Object.defineProperty(AcDbDimension.prototype, "arrowScaleFactor", {
206
+ get: function () {
207
+ var dimStyle = this.dimensionStyle;
208
+ // TODO:
209
+ // 1. DIMASZ has no effect when DIMTSZ is other than zero.
210
+ // 2. Calculate scale factor based on unit
211
+ return dimStyle.dimasz;
212
+ },
213
+ enumerable: false,
214
+ configurable: true
215
+ });
216
+ Object.defineProperty(AcDbDimension.prototype, "firstArrowStyle", {
217
+ /**
218
+ * Arrow style of the first arrow
219
+ */
220
+ get: function () {
221
+ return {
222
+ type: this.firstArrowType,
223
+ scale: this.arrowScaleFactor,
224
+ appended: this.isAppendArrow,
225
+ visible: this.dimensionStyle.dimse1 == 0
226
+ };
227
+ },
228
+ enumerable: false,
229
+ configurable: true
230
+ });
231
+ Object.defineProperty(AcDbDimension.prototype, "secondArrowStyle", {
232
+ /**
233
+ * Arrow style of the second arrow
234
+ */
235
+ get: function () {
236
+ return {
237
+ type: this.secondArrowType,
238
+ scale: this.arrowScaleFactor,
239
+ appended: this.isAppendArrow,
240
+ visible: this.dimensionStyle.dimse2 == 0
241
+ };
242
+ },
243
+ enumerable: false,
244
+ configurable: true
245
+ });
246
+ Object.defineProperty(AcDbDimension.prototype, "isAppendArrow", {
247
+ /**
248
+ * The flag to determinate how to attach arrow to endpoint of the line.
249
+ * - true: append arrow to endpoint of the line
250
+ * - false: overlap arrow with endpoint of the line
251
+ */
252
+ get: function () {
253
+ return true;
254
+ },
255
+ enumerable: false,
256
+ configurable: true
257
+ });
258
+ Object.defineProperty(AcDbDimension.prototype, "firstArrowTypeBtrId", {
259
+ /**
260
+ * The BTR id associated with the first arrow type
261
+ */
262
+ get: function () {
263
+ var dimStyle = this.dimensionStyle;
264
+ return dimStyle.dimsah == 0 ? dimStyle.dimblk : dimStyle.dimblk1;
265
+ },
266
+ enumerable: false,
267
+ configurable: true
268
+ });
269
+ Object.defineProperty(AcDbDimension.prototype, "firstArrowType", {
270
+ /**
271
+ * The first arrow type
272
+ */
273
+ get: function () {
274
+ var btrId = this.firstArrowTypeBtrId;
275
+ return this.getArrowName(btrId);
276
+ },
277
+ enumerable: false,
278
+ configurable: true
279
+ });
280
+ Object.defineProperty(AcDbDimension.prototype, "secondArrowTypeBtrId", {
281
+ /**
282
+ * The BTR id associated with the second arrow type
283
+ */
284
+ get: function () {
285
+ var dimStyle = this.dimensionStyle;
286
+ return dimStyle.dimsah == 0 ? dimStyle.dimblk : dimStyle.dimblk2;
287
+ },
288
+ enumerable: false,
289
+ configurable: true
290
+ });
291
+ Object.defineProperty(AcDbDimension.prototype, "secondArrowType", {
292
+ /**
293
+ * The second arrow type
294
+ */
295
+ get: function () {
296
+ var btrId = this.secondArrowTypeBtrId;
297
+ return this.getArrowName(btrId);
298
+ },
299
+ enumerable: false,
300
+ configurable: true
301
+ });
302
+ Object.defineProperty(AcDbDimension.prototype, "arrowLineCount", {
303
+ /**
304
+ * The maximum number of arrow lines of this dimension
305
+ */
306
+ get: function () {
307
+ return 1;
308
+ },
309
+ enumerable: false,
310
+ configurable: true
311
+ });
312
+ /**
313
+ * Get line arrow style of the specified line according to its type (extension line or dimension
314
+ * line). Return undefined if no line arrow style applied.
315
+ * @param line Input line to get its line style
316
+ * @returns Return the line style of the specified line. Return undefined if no line arrow style applied.
317
+ */
318
+ // @ts-expect-error not use '_' prefix so that typedoc can the correct parameter to generate doc
319
+ AcDbDimension.prototype.getLineArrowStyle = function (line) {
320
+ return undefined;
321
+ };
322
+ /**
323
+ * Find the point `p3` on a line along the line direction at a distance `length` from `p2`.
324
+ *
325
+ * @param p1 - The start point of the line.
326
+ * @param p2 - The end point of the line.
327
+ * @param length - The distance from `p2` to `p3`.
328
+ * @returns Return the point `p3`.
329
+ */
330
+ AcDbDimension.prototype.findPointOnLine1 = function (p1, p2, length) {
331
+ // Calculate the direction vector from p1 to p2
332
+ var direction = new AcGePoint3d().subVectors(p2, p1).normalize();
333
+ // Calculate p3 by moving in the direction from p2 by the specified length
334
+ var p3 = new AcGePoint3d(p2).addScaledVector(direction, length);
335
+ return p3;
336
+ };
337
+ /**
338
+ * Find the point `p2` on a line starting from `p1` at a specified angle
339
+ * and at a distance `length` from `p1`.
340
+ *
341
+ * @param p1 - The start point of the line.
342
+ * @param angle - The angle of the line in radians relative to the x-axis.
343
+ * @param length - The distance from `p1` to `p2`.
344
+ * @returns Return the point `p2`.
345
+ */
346
+ AcDbDimension.prototype.findPointOnLine2 = function (p1, angle, length) {
347
+ // Calculate the new point p2
348
+ var x = p1.x + length * Math.cos(angle);
349
+ var y = p1.y + length * Math.sin(angle);
350
+ return { x: x, y: y };
351
+ };
352
+ /**
353
+ * Adjust start point and end point of extension line according current dimension style
354
+ * @param extensionLine Input extension line to adjust its start point and end point
355
+ */
356
+ AcDbDimension.prototype.adjustExtensionLine = function (extensionLine) {
357
+ var dimStyle = this.dimensionStyle;
358
+ extensionLine.extend(dimStyle.dimexe);
359
+ extensionLine.extend(-dimStyle.dimexo, true);
360
+ };
361
+ /**
362
+ * Get dimension style name by dimension block id
363
+ * @param id Input dimension block id
364
+ * @returns Return dimension style name by dimension block id
365
+ */
366
+ AcDbDimension.prototype.getArrowName = function (id) {
367
+ var blockTableRecord = this.database.tables.blockTable.getIdAt(id);
368
+ return (blockTableRecord
369
+ ? blockTableRecord.name.toUpperCase()
370
+ : AcGiArrowType.Closed);
371
+ };
372
+ return AcDbDimension;
373
+ }(AcDbEntity));
374
+ export { AcDbDimension };
375
+ //# sourceMappingURL=AcDbDimension.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AcDbDimension.js","sourceRoot":"","sources":["../../../src/entity/dimension/AcDbDimension.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ import { AcGeBox3d, AcGePoint3d, AcGePoint3dLike } from '@mlightcad/geometry-engine';
2
+ import { AcDbDimension } from './AcDbDimension';
3
+ /**
4
+ * This class represents the ordinate dimension type within AutoCAD. Ordinate dimensions measure
5
+ * the "horizontal" (X axis) or "vertical" (Y axis) distance from a specified origin point to some
6
+ * other specified point.
7
+ * It measures the distance from the their origin point to their definingPoint along the X or Y
8
+ * axis (as specified by the appropriate member function). They display a leader line from the
9
+ * definingPoint to the leaderEndPoint, with the annotation text located appropriately near the
10
+ * end of the leader.
11
+ */
12
+ export declare class AcDbOrdinateDimension extends AcDbDimension {
13
+ private _definingPoint;
14
+ private _leaderEndPoint;
15
+ /**
16
+ * Create one instance of this class.
17
+ * @param definingPoint Input point where ordinate leader should start
18
+ * @param leaderEndPoint Input point where ordinate leader should end
19
+ * @param dimText Input dimension text to use instead of calculated value
20
+ * @param dimStyle Input string name of dimension style table record to use
21
+ */
22
+ constructor(definingPoint: AcGePoint3dLike, leaderEndPoint: AcGePoint3dLike, dimText?: string | null, dimStyle?: string | null);
23
+ /**
24
+ * The ordinate point (in WCS coordinates) to be measured. The dimension measures the X or Y
25
+ * distance between this point and the dimension's origin point.
26
+ */
27
+ get definingPoint(): AcGePoint3d;
28
+ set definingPoint(value: AcGePoint3d);
29
+ /**
30
+ * The point that is used as the dimension leader's endpoint and is used in the text position
31
+ * calculations.
32
+ */
33
+ get leaderEndPoint(): AcGePoint3d;
34
+ set leaderEndPoint(value: AcGePoint3d);
35
+ /**
36
+ * @inheritdoc
37
+ */
38
+ get geometricExtents(): AcGeBox3d;
39
+ /**
40
+ * @inheritdoc
41
+ */
42
+ protected get arrowLineCount(): number;
43
+ }
44
+ //# sourceMappingURL=AcDbOrdinateDimension.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AcDbOrdinateDimension.d.ts","sourceRoot":"","sources":["../../../src/entity/dimension/AcDbOrdinateDimension.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,WAAW,EACX,eAAe,EAChB,MAAM,4BAA4B,CAAA;AAEnC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAE/C;;;;;;;;GAQG;AACH,qBAAa,qBAAsB,SAAQ,aAAa;IACtD,OAAO,CAAC,cAAc,CAAa;IACnC,OAAO,CAAC,eAAe,CAAa;IAEpC;;;;;;OAMG;gBAED,aAAa,EAAE,eAAe,EAC9B,cAAc,EAAE,eAAe,EAC/B,OAAO,GAAE,MAAM,GAAG,IAAW,EAC7B,QAAQ,GAAE,MAAM,GAAG,IAAW;IAWhC;;;OAGG;IACH,IAAI,aAAa,IAGQ,WAAW,CADnC;IACD,IAAI,aAAa,CAAC,KAAK,EAAE,WAAW,EAEnC;IAED;;;OAGG;IACH,IAAI,cAAc,IAGQ,WAAW,CADpC;IACD,IAAI,cAAc,CAAC,KAAK,EAAE,WAAW,EAEpC;IAED;;OAEG;IACH,IAAI,gBAAgB,cAGnB;IAED;;OAEG;IACH,SAAS,KAAK,cAAc,WAE3B;CACF"}