@node-projects/acad-ts 1.1.0 → 1.2.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 (601) hide show
  1. package/README.md +39 -1
  2. package/dist/Blocks/Block.d.ts +6 -4
  3. package/dist/Blocks/Block.d.ts.map +1 -1
  4. package/dist/Blocks/Block.js +7 -3
  5. package/dist/Blocks/Block.js.map +1 -1
  6. package/dist/Blocks/BlockEnd.d.ts +5 -3
  7. package/dist/Blocks/BlockEnd.d.ts.map +1 -1
  8. package/dist/Blocks/BlockEnd.js +7 -2
  9. package/dist/Blocks/BlockEnd.js.map +1 -1
  10. package/dist/CadDocument.d.ts +58 -31
  11. package/dist/CadDocument.d.ts.map +1 -1
  12. package/dist/CadDocument.js +214 -61
  13. package/dist/CadDocument.js.map +1 -1
  14. package/dist/CadObject.d.ts +10 -5
  15. package/dist/CadObject.d.ts.map +1 -1
  16. package/dist/CadObject.js +2 -2
  17. package/dist/CadObject.js.map +1 -1
  18. package/dist/CadObjectCollection.d.ts +2 -2
  19. package/dist/CadObjectCollection.d.ts.map +1 -1
  20. package/dist/CadObjectCollection.js.map +1 -1
  21. package/dist/CadSystemVariable.d.ts +8 -8
  22. package/dist/CadSystemVariable.d.ts.map +1 -1
  23. package/dist/CadSystemVariable.js +32 -22
  24. package/dist/CadSystemVariable.js.map +1 -1
  25. package/dist/CadUtils.d.ts.map +1 -1
  26. package/dist/CadUtils.js +5 -16
  27. package/dist/CadUtils.js.map +1 -1
  28. package/dist/CadValue.d.ts +2 -2
  29. package/dist/CadValue.d.ts.map +1 -1
  30. package/dist/CadValue.js.map +1 -1
  31. package/dist/Classes/DxfClassCollection.d.ts +2 -1
  32. package/dist/Classes/DxfClassCollection.d.ts.map +1 -1
  33. package/dist/Classes/DxfClassCollection.js +1 -1
  34. package/dist/Classes/DxfClassCollection.js.map +1 -1
  35. package/dist/Color.d.ts +1 -1
  36. package/dist/Color.d.ts.map +1 -1
  37. package/dist/Color.js.map +1 -1
  38. package/dist/DxfClassMap.d.ts.map +1 -1
  39. package/dist/DxfClassMap.js +11 -3
  40. package/dist/DxfClassMap.js.map +1 -1
  41. package/dist/DxfMap.d.ts +1 -0
  42. package/dist/DxfMap.d.ts.map +1 -1
  43. package/dist/DxfMap.js +47 -13
  44. package/dist/DxfMap.js.map +1 -1
  45. package/dist/DxfMapBase.d.ts +2 -2
  46. package/dist/DxfMapBase.d.ts.map +1 -1
  47. package/dist/DxfMapBase.js +13 -4
  48. package/dist/DxfMapBase.js.map +1 -1
  49. package/dist/DxfProperty.d.ts +6 -1
  50. package/dist/DxfProperty.d.ts.map +1 -1
  51. package/dist/DxfProperty.js +24 -4
  52. package/dist/DxfProperty.js.map +1 -1
  53. package/dist/DxfPropertyBase.d.ts +17 -3
  54. package/dist/DxfPropertyBase.d.ts.map +1 -1
  55. package/dist/DxfPropertyBase.js +268 -13
  56. package/dist/DxfPropertyBase.js.map +1 -1
  57. package/dist/Entities/AecObjects/Wall.d.ts +7 -4
  58. package/dist/Entities/AecObjects/Wall.d.ts.map +1 -1
  59. package/dist/Entities/AecObjects/Wall.js.map +1 -1
  60. package/dist/Entities/Arc.d.ts +3 -2
  61. package/dist/Entities/Arc.d.ts.map +1 -1
  62. package/dist/Entities/Arc.js +26 -8
  63. package/dist/Entities/Arc.js.map +1 -1
  64. package/dist/Entities/AttributeBase.d.ts +2 -1
  65. package/dist/Entities/AttributeBase.d.ts.map +1 -1
  66. package/dist/Entities/AttributeBase.js.map +1 -1
  67. package/dist/Entities/AttributeDefinition.d.ts +2 -1
  68. package/dist/Entities/AttributeDefinition.d.ts.map +1 -1
  69. package/dist/Entities/AttributeDefinition.js +1 -1
  70. package/dist/Entities/AttributeDefinition.js.map +1 -1
  71. package/dist/Entities/AttributeEntity.d.ts +2 -1
  72. package/dist/Entities/AttributeEntity.d.ts.map +1 -1
  73. package/dist/Entities/AttributeEntity.js +1 -1
  74. package/dist/Entities/AttributeEntity.js.map +1 -1
  75. package/dist/Entities/CadWipeoutBase.d.ts +8 -5
  76. package/dist/Entities/CadWipeoutBase.d.ts.map +1 -1
  77. package/dist/Entities/CadWipeoutBase.js +9 -19
  78. package/dist/Entities/CadWipeoutBase.js.map +1 -1
  79. package/dist/Entities/Circle.d.ts +3 -2
  80. package/dist/Entities/Circle.d.ts.map +1 -1
  81. package/dist/Entities/Circle.js +17 -6
  82. package/dist/Entities/Circle.js.map +1 -1
  83. package/dist/Entities/Dimension.d.ts +17 -6
  84. package/dist/Entities/Dimension.d.ts.map +1 -1
  85. package/dist/Entities/Dimension.js +195 -15
  86. package/dist/Entities/Dimension.js.map +1 -1
  87. package/dist/Entities/DimensionAligned.d.ts +3 -2
  88. package/dist/Entities/DimensionAligned.d.ts.map +1 -1
  89. package/dist/Entities/DimensionAligned.js +8 -16
  90. package/dist/Entities/DimensionAligned.js.map +1 -1
  91. package/dist/Entities/DimensionAngular2Line.d.ts +3 -2
  92. package/dist/Entities/DimensionAngular2Line.d.ts.map +1 -1
  93. package/dist/Entities/DimensionAngular2Line.js +28 -18
  94. package/dist/Entities/DimensionAngular2Line.js.map +1 -1
  95. package/dist/Entities/DimensionAngular3Pt.d.ts +3 -2
  96. package/dist/Entities/DimensionAngular3Pt.d.ts.map +1 -1
  97. package/dist/Entities/DimensionAngular3Pt.js +14 -15
  98. package/dist/Entities/DimensionAngular3Pt.js.map +1 -1
  99. package/dist/Entities/DimensionDiameter.d.ts +3 -2
  100. package/dist/Entities/DimensionDiameter.d.ts.map +1 -1
  101. package/dist/Entities/DimensionDiameter.js +4 -7
  102. package/dist/Entities/DimensionDiameter.js.map +1 -1
  103. package/dist/Entities/DimensionLinear.d.ts.map +1 -1
  104. package/dist/Entities/DimensionLinear.js +6 -3
  105. package/dist/Entities/DimensionLinear.js.map +1 -1
  106. package/dist/Entities/DimensionOrdinate.d.ts +3 -2
  107. package/dist/Entities/DimensionOrdinate.d.ts.map +1 -1
  108. package/dist/Entities/DimensionOrdinate.js +8 -15
  109. package/dist/Entities/DimensionOrdinate.js.map +1 -1
  110. package/dist/Entities/DimensionRadius.d.ts +3 -2
  111. package/dist/Entities/DimensionRadius.d.ts.map +1 -1
  112. package/dist/Entities/DimensionRadius.js +4 -7
  113. package/dist/Entities/DimensionRadius.js.map +1 -1
  114. package/dist/Entities/Ellipse.d.ts +3 -2
  115. package/dist/Entities/Ellipse.d.ts.map +1 -1
  116. package/dist/Entities/Ellipse.js +52 -7
  117. package/dist/Entities/Ellipse.js.map +1 -1
  118. package/dist/Entities/Entity.d.ts +12 -12
  119. package/dist/Entities/Entity.d.ts.map +1 -1
  120. package/dist/Entities/Entity.js +26 -15
  121. package/dist/Entities/Entity.js.map +1 -1
  122. package/dist/Entities/Face3D.d.ts +3 -2
  123. package/dist/Entities/Face3D.d.ts.map +1 -1
  124. package/dist/Entities/Face3D.js +11 -3
  125. package/dist/Entities/Face3D.js.map +1 -1
  126. package/dist/Entities/Hatch.d.ts +17 -16
  127. package/dist/Entities/Hatch.d.ts.map +1 -1
  128. package/dist/Entities/Hatch.js +218 -28
  129. package/dist/Entities/Hatch.js.map +1 -1
  130. package/dist/Entities/HatchPattern.d.ts.map +1 -1
  131. package/dist/Entities/HatchPattern.js +6 -1
  132. package/dist/Entities/HatchPattern.js.map +1 -1
  133. package/dist/Entities/IEntity.d.ts +2 -1
  134. package/dist/Entities/IEntity.d.ts.map +1 -1
  135. package/dist/Entities/IGeometricEntity.d.ts +3 -2
  136. package/dist/Entities/IGeometricEntity.d.ts.map +1 -1
  137. package/dist/Entities/IPolyline.d.ts +3 -1
  138. package/dist/Entities/IPolyline.d.ts.map +1 -1
  139. package/dist/Entities/IVertex.d.ts +2 -1
  140. package/dist/Entities/IVertex.d.ts.map +1 -1
  141. package/dist/Entities/Insert.d.ts +6 -3
  142. package/dist/Entities/Insert.d.ts.map +1 -1
  143. package/dist/Entities/Insert.js +63 -9
  144. package/dist/Entities/Insert.js.map +1 -1
  145. package/dist/Entities/Leader.d.ts +4 -3
  146. package/dist/Entities/Leader.d.ts.map +1 -1
  147. package/dist/Entities/Leader.js +8 -5
  148. package/dist/Entities/Leader.js.map +1 -1
  149. package/dist/Entities/Line.d.ts +3 -2
  150. package/dist/Entities/Line.d.ts.map +1 -1
  151. package/dist/Entities/Line.js +5 -4
  152. package/dist/Entities/Line.js.map +1 -1
  153. package/dist/Entities/LwPolyline.d.ts +4 -2
  154. package/dist/Entities/LwPolyline.d.ts.map +1 -1
  155. package/dist/Entities/LwPolyline.js +16 -2
  156. package/dist/Entities/LwPolyline.js.map +1 -1
  157. package/dist/Entities/MLine.d.ts +12 -5
  158. package/dist/Entities/MLine.d.ts.map +1 -1
  159. package/dist/Entities/MLine.js +53 -6
  160. package/dist/Entities/MLine.js.map +1 -1
  161. package/dist/Entities/MText.d.ts +4 -3
  162. package/dist/Entities/MText.d.ts.map +1 -1
  163. package/dist/Entities/MText.js +70 -7
  164. package/dist/Entities/MText.js.map +1 -1
  165. package/dist/Entities/Mesh.d.ts +3 -2
  166. package/dist/Entities/Mesh.d.ts.map +1 -1
  167. package/dist/Entities/Mesh.js +3 -4
  168. package/dist/Entities/Mesh.js.map +1 -1
  169. package/dist/Entities/ModelerGeometry.d.ts +3 -2
  170. package/dist/Entities/ModelerGeometry.d.ts.map +1 -1
  171. package/dist/Entities/ModelerGeometry.js +32 -3
  172. package/dist/Entities/ModelerGeometry.js.map +1 -1
  173. package/dist/Entities/MultiLeader.d.ts +14 -8
  174. package/dist/Entities/MultiLeader.d.ts.map +1 -1
  175. package/dist/Entities/MultiLeader.js +37 -3
  176. package/dist/Entities/MultiLeader.js.map +1 -1
  177. package/dist/Entities/Ole2Frame.d.ts +3 -2
  178. package/dist/Entities/Ole2Frame.d.ts.map +1 -1
  179. package/dist/Entities/Ole2Frame.js +4 -3
  180. package/dist/Entities/Ole2Frame.js.map +1 -1
  181. package/dist/Entities/PdfUnderlay.d.ts +2 -1
  182. package/dist/Entities/PdfUnderlay.d.ts.map +1 -1
  183. package/dist/Entities/PdfUnderlay.js +1 -1
  184. package/dist/Entities/PdfUnderlay.js.map +1 -1
  185. package/dist/Entities/Point.d.ts +3 -2
  186. package/dist/Entities/Point.d.ts.map +1 -1
  187. package/dist/Entities/Point.js +4 -3
  188. package/dist/Entities/Point.js.map +1 -1
  189. package/dist/Entities/PolyfaceMesh.d.ts +2 -1
  190. package/dist/Entities/PolyfaceMesh.d.ts.map +1 -1
  191. package/dist/Entities/PolyfaceMesh.js +3 -1
  192. package/dist/Entities/PolyfaceMesh.js.map +1 -1
  193. package/dist/Entities/PolygonMesh.d.ts +2 -1
  194. package/dist/Entities/PolygonMesh.d.ts.map +1 -1
  195. package/dist/Entities/PolygonMesh.js +3 -1
  196. package/dist/Entities/PolygonMesh.js.map +1 -1
  197. package/dist/Entities/Polyline.d.ts +12 -6
  198. package/dist/Entities/Polyline.d.ts.map +1 -1
  199. package/dist/Entities/Polyline.js +25 -2
  200. package/dist/Entities/Polyline.js.map +1 -1
  201. package/dist/Entities/Polyline2D.d.ts +2 -1
  202. package/dist/Entities/Polyline2D.d.ts.map +1 -1
  203. package/dist/Entities/Polyline2D.js +1 -1
  204. package/dist/Entities/Polyline2D.js.map +1 -1
  205. package/dist/Entities/Polyline3D.d.ts +2 -1
  206. package/dist/Entities/Polyline3D.d.ts.map +1 -1
  207. package/dist/Entities/Polyline3D.js +1 -1
  208. package/dist/Entities/Polyline3D.js.map +1 -1
  209. package/dist/Entities/ProxyEntity.d.ts +5 -3
  210. package/dist/Entities/ProxyEntity.d.ts.map +1 -1
  211. package/dist/Entities/ProxyEntity.js.map +1 -1
  212. package/dist/Entities/RasterImage.d.ts +4 -3
  213. package/dist/Entities/RasterImage.d.ts.map +1 -1
  214. package/dist/Entities/RasterImage.js +2 -2
  215. package/dist/Entities/RasterImage.js.map +1 -1
  216. package/dist/Entities/Ray.d.ts +3 -2
  217. package/dist/Entities/Ray.d.ts.map +1 -1
  218. package/dist/Entities/Ray.js +7 -3
  219. package/dist/Entities/Ray.js.map +1 -1
  220. package/dist/Entities/Seqend.d.ts +3 -2
  221. package/dist/Entities/Seqend.d.ts.map +1 -1
  222. package/dist/Entities/Seqend.js.map +1 -1
  223. package/dist/Entities/Shape.d.ts +3 -2
  224. package/dist/Entities/Shape.d.ts.map +1 -1
  225. package/dist/Entities/Shape.js +25 -2
  226. package/dist/Entities/Shape.js.map +1 -1
  227. package/dist/Entities/Solid.d.ts +3 -2
  228. package/dist/Entities/Solid.d.ts.map +1 -1
  229. package/dist/Entities/Solid.js +12 -3
  230. package/dist/Entities/Solid.js.map +1 -1
  231. package/dist/Entities/Spline.d.ts +3 -2
  232. package/dist/Entities/Spline.d.ts.map +1 -1
  233. package/dist/Entities/Spline.js +33 -5
  234. package/dist/Entities/Spline.js.map +1 -1
  235. package/dist/Entities/TableEntity.d.ts +8 -5
  236. package/dist/Entities/TableEntity.d.ts.map +1 -1
  237. package/dist/Entities/TableEntity.js.map +1 -1
  238. package/dist/Entities/TextEntity.d.ts +4 -3
  239. package/dist/Entities/TextEntity.d.ts.map +1 -1
  240. package/dist/Entities/TextEntity.js +12 -1
  241. package/dist/Entities/TextEntity.js.map +1 -1
  242. package/dist/Entities/Tolerance.d.ts +3 -2
  243. package/dist/Entities/Tolerance.d.ts.map +1 -1
  244. package/dist/Entities/Tolerance.js +24 -2
  245. package/dist/Entities/Tolerance.js.map +1 -1
  246. package/dist/Entities/UnderlayEntity.d.ts +6 -4
  247. package/dist/Entities/UnderlayEntity.d.ts.map +1 -1
  248. package/dist/Entities/UnderlayEntity.js +24 -4
  249. package/dist/Entities/UnderlayEntity.js.map +1 -1
  250. package/dist/Entities/UnknownEntity.d.ts +10 -3
  251. package/dist/Entities/UnknownEntity.d.ts.map +1 -1
  252. package/dist/Entities/UnknownEntity.js +7 -3
  253. package/dist/Entities/UnknownEntity.js.map +1 -1
  254. package/dist/Entities/Vertex.d.ts +3 -2
  255. package/dist/Entities/Vertex.d.ts.map +1 -1
  256. package/dist/Entities/Vertex.js +3 -2
  257. package/dist/Entities/Vertex.js.map +1 -1
  258. package/dist/Entities/Viewport.d.ts +12 -6
  259. package/dist/Entities/Viewport.d.ts.map +1 -1
  260. package/dist/Entities/Viewport.js +71 -15
  261. package/dist/Entities/Viewport.js.map +1 -1
  262. package/dist/Entities/XLine.d.ts +3 -2
  263. package/dist/Entities/XLine.d.ts.map +1 -1
  264. package/dist/Entities/XLine.js +7 -3
  265. package/dist/Entities/XLine.js.map +1 -1
  266. package/dist/Extensions/PolylineExtensions.d.ts +12 -0
  267. package/dist/Extensions/PolylineExtensions.d.ts.map +1 -1
  268. package/dist/Extensions/PolylineExtensions.js +121 -2
  269. package/dist/Extensions/PolylineExtensions.js.map +1 -1
  270. package/dist/Extensions/UnitExtensions.d.ts.map +1 -1
  271. package/dist/Extensions/UnitExtensions.js +0 -1
  272. package/dist/Extensions/UnitExtensions.js.map +1 -1
  273. package/dist/Header/CadHeader.d.ts +17 -4
  274. package/dist/Header/CadHeader.d.ts.map +1 -1
  275. package/dist/Header/CadHeader.js +63 -6
  276. package/dist/Header/CadHeader.js.map +1 -1
  277. package/dist/INamedCadObject.d.ts +1 -1
  278. package/dist/INamedCadObject.d.ts.map +1 -1
  279. package/dist/IO/CadDocumentBuilder.d.ts.map +1 -1
  280. package/dist/IO/CadDocumentBuilder.js +17 -11
  281. package/dist/IO/CadDocumentBuilder.js.map +1 -1
  282. package/dist/IO/CadReaderBase.d.ts.map +1 -1
  283. package/dist/IO/CadReaderBase.js +2 -3
  284. package/dist/IO/CadReaderBase.js.map +1 -1
  285. package/dist/IO/CadWriterBase.d.ts +1 -1
  286. package/dist/IO/CadWriterBase.d.ts.map +1 -1
  287. package/dist/IO/CadWriterBase.js +4 -6
  288. package/dist/IO/CadWriterBase.js.map +1 -1
  289. package/dist/IO/DWG/DwgHeaderHandlesCollection.d.ts.map +1 -1
  290. package/dist/IO/DWG/DwgHeaderHandlesCollection.js +5 -5
  291. package/dist/IO/DWG/DwgHeaderHandlesCollection.js.map +1 -1
  292. package/dist/IO/DWG/DwgReader.js +1 -1
  293. package/dist/IO/DWG/DwgReader.js.map +1 -1
  294. package/dist/IO/DWG/DwgStreamReaders/DwgHeaderReader.js +1 -1
  295. package/dist/IO/DWG/DwgStreamReaders/DwgHeaderReader.js.map +1 -1
  296. package/dist/IO/DWG/DwgStreamReaders/DwgObjectReader.d.ts +2 -0
  297. package/dist/IO/DWG/DwgStreamReaders/DwgObjectReader.d.ts.map +1 -1
  298. package/dist/IO/DWG/DwgStreamReaders/DwgObjectReader.js +215 -44
  299. package/dist/IO/DWG/DwgStreamReaders/DwgObjectReader.js.map +1 -1
  300. package/dist/IO/DWG/DwgStreamWriters/DwgAppInfodWriter.js +1 -1
  301. package/dist/IO/DWG/DwgStreamWriters/DwgAppInfodWriter.js.map +1 -1
  302. package/dist/IO/DWG/DwgStreamWriters/DwgAuxHeaderWriter.d.ts.map +1 -1
  303. package/dist/IO/DWG/DwgStreamWriters/DwgAuxHeaderWriter.js +3 -2
  304. package/dist/IO/DWG/DwgStreamWriters/DwgAuxHeaderWriter.js.map +1 -1
  305. package/dist/IO/DWG/DwgStreamWriters/DwgHeaderWriter.d.ts.map +1 -1
  306. package/dist/IO/DWG/DwgStreamWriters/DwgHeaderWriter.js +4 -4
  307. package/dist/IO/DWG/DwgStreamWriters/DwgHeaderWriter.js.map +1 -1
  308. package/dist/IO/DWG/DwgStreamWriters/DwgObjectWriter.d.ts.map +1 -1
  309. package/dist/IO/DWG/DwgStreamWriters/DwgObjectWriter.js +133 -61
  310. package/dist/IO/DWG/DwgStreamWriters/DwgObjectWriter.js.map +1 -1
  311. package/dist/IO/DWG/DwgStreamWriters/DwgStreamWriterAC18.js +4 -4
  312. package/dist/IO/DWG/DwgStreamWriters/DwgStreamWriterBase.d.ts +1 -1
  313. package/dist/IO/DWG/DwgStreamWriters/DwgStreamWriterBase.d.ts.map +1 -1
  314. package/dist/IO/DWG/DwgStreamWriters/DwgStreamWriterBase.js +4 -6
  315. package/dist/IO/DWG/DwgStreamWriters/DwgStreamWriterBase.js.map +1 -1
  316. package/dist/IO/DWG/DwgStreamWriters/DwgStreamWriterFactory.js.map +1 -1
  317. package/dist/IO/DWG/DwgStreamWriters/DwgSummaryInfoWriter.d.ts +2 -1
  318. package/dist/IO/DWG/DwgStreamWriters/DwgSummaryInfoWriter.d.ts.map +1 -1
  319. package/dist/IO/DWG/DwgStreamWriters/DwgSummaryInfoWriter.js +8 -9
  320. package/dist/IO/DWG/DwgStreamWriters/DwgSummaryInfoWriter.js.map +1 -1
  321. package/dist/IO/DWG/DwgWriter.d.ts.map +1 -1
  322. package/dist/IO/DWG/DwgWriter.js +17 -3
  323. package/dist/IO/DWG/DwgWriter.js.map +1 -1
  324. package/dist/IO/DXF/DxfReader.d.ts +1 -1
  325. package/dist/IO/DXF/DxfReader.d.ts.map +1 -1
  326. package/dist/IO/DXF/DxfReader.js +18 -7
  327. package/dist/IO/DXF/DxfReader.js.map +1 -1
  328. package/dist/IO/DXF/DxfStreamReader/DxfBinaryReader.js +1 -1
  329. package/dist/IO/DXF/DxfStreamReader/DxfBinaryReader.js.map +1 -1
  330. package/dist/IO/DXF/DxfStreamReader/DxfObjectsSectionReader.js +3 -3
  331. package/dist/IO/DXF/DxfStreamReader/DxfObjectsSectionReader.js.map +1 -1
  332. package/dist/IO/DXF/DxfStreamReader/DxfSectionReaderBase.d.ts.map +1 -1
  333. package/dist/IO/DXF/DxfStreamReader/DxfSectionReaderBase.js +8 -4
  334. package/dist/IO/DXF/DxfStreamReader/DxfSectionReaderBase.js.map +1 -1
  335. package/dist/IO/DXF/DxfStreamReader/DxfStreamReaderBase.d.ts +3 -1
  336. package/dist/IO/DXF/DxfStreamReader/DxfStreamReaderBase.d.ts.map +1 -1
  337. package/dist/IO/DXF/DxfStreamReader/DxfStreamReaderBase.js +5 -0
  338. package/dist/IO/DXF/DxfStreamReader/DxfStreamReaderBase.js.map +1 -1
  339. package/dist/IO/DXF/DxfStreamReader/DxfTablesSectionReader.d.ts +1 -1
  340. package/dist/IO/DXF/DxfStreamReader/DxfTablesSectionReader.d.ts.map +1 -1
  341. package/dist/IO/DXF/DxfStreamReader/DxfTablesSectionReader.js +107 -110
  342. package/dist/IO/DXF/DxfStreamReader/DxfTablesSectionReader.js.map +1 -1
  343. package/dist/IO/DXF/DxfStreamReader/DxfTextReader.d.ts +1 -2
  344. package/dist/IO/DXF/DxfStreamReader/DxfTextReader.d.ts.map +1 -1
  345. package/dist/IO/DXF/DxfStreamReader/DxfTextReader.js +10 -12
  346. package/dist/IO/DXF/DxfStreamReader/DxfTextReader.js.map +1 -1
  347. package/dist/IO/DXF/DxfStreamReader/IDxfStreamReader.d.ts +2 -1
  348. package/dist/IO/DXF/DxfStreamReader/IDxfStreamReader.d.ts.map +1 -1
  349. package/dist/IO/DXF/DxfStreamWriter/DxfAsciiWriter.d.ts +1 -1
  350. package/dist/IO/DXF/DxfStreamWriter/DxfAsciiWriter.d.ts.map +1 -1
  351. package/dist/IO/DXF/DxfStreamWriter/DxfAsciiWriter.js.map +1 -1
  352. package/dist/IO/DXF/DxfStreamWriter/DxfBinaryWriter.d.ts +3 -2
  353. package/dist/IO/DXF/DxfStreamWriter/DxfBinaryWriter.d.ts.map +1 -1
  354. package/dist/IO/DXF/DxfStreamWriter/DxfBinaryWriter.js +5 -2
  355. package/dist/IO/DXF/DxfStreamWriter/DxfBinaryWriter.js.map +1 -1
  356. package/dist/IO/DXF/DxfStreamWriter/DxfObjectsSectionWriter.d.ts.map +1 -1
  357. package/dist/IO/DXF/DxfStreamWriter/DxfObjectsSectionWriter.js +4 -3
  358. package/dist/IO/DXF/DxfStreamWriter/DxfObjectsSectionWriter.js.map +1 -1
  359. package/dist/IO/DXF/DxfStreamWriter/DxfSectionWriterBase.js +6 -6
  360. package/dist/IO/DXF/DxfStreamWriter/DxfSectionWriterBase.js.map +1 -1
  361. package/dist/IO/DXF/DxfStreamWriter/DxfStreamWriterBase.d.ts +2 -2
  362. package/dist/IO/DXF/DxfStreamWriter/DxfStreamWriterBase.d.ts.map +1 -1
  363. package/dist/IO/DXF/DxfStreamWriter/DxfStreamWriterBase.js.map +1 -1
  364. package/dist/IO/DXF/DxfStreamWriter/IDxfStreamWriter.d.ts +1 -1
  365. package/dist/IO/DXF/DxfStreamWriter/IDxfStreamWriter.d.ts.map +1 -1
  366. package/dist/IO/DXF/DxfWriter.d.ts.map +1 -1
  367. package/dist/IO/DXF/DxfWriter.js +7 -5
  368. package/dist/IO/DXF/DxfWriter.js.map +1 -1
  369. package/dist/IO/SVG/SvgDocumentBuilder.js +1 -1
  370. package/dist/IO/SVG/SvgXmlWriter.d.ts +1 -1
  371. package/dist/IO/SVG/SvgXmlWriter.d.ts.map +1 -1
  372. package/dist/IO/SVG/SvgXmlWriter.js +25 -17
  373. package/dist/IO/SVG/SvgXmlWriter.js.map +1 -1
  374. package/dist/IO/Templates/CadBlockRecordTemplate.d.ts.map +1 -1
  375. package/dist/IO/Templates/CadBlockRecordTemplate.js +2 -0
  376. package/dist/IO/Templates/CadBlockRecordTemplate.js.map +1 -1
  377. package/dist/IO/Templates/CadDictionaryTemplate.js +1 -1
  378. package/dist/IO/Templates/CadDictionaryTemplate.js.map +1 -1
  379. package/dist/IO/Templates/CadDimensionTemplate.d.ts +2 -1
  380. package/dist/IO/Templates/CadDimensionTemplate.d.ts.map +1 -1
  381. package/dist/IO/Templates/CadDimensionTemplate.js.map +1 -1
  382. package/dist/IO/Templates/CadEntityTemplate.d.ts +1 -1
  383. package/dist/IO/Templates/CadEntityTemplate.d.ts.map +1 -1
  384. package/dist/IO/Templates/CadEntityTemplate.js +1 -1
  385. package/dist/IO/Templates/CadEntityTemplate.js.map +1 -1
  386. package/dist/IO/Templates/CadGroupTemplate.js +1 -1
  387. package/dist/IO/Templates/CadGroupTemplate.js.map +1 -1
  388. package/dist/IO/Templates/CadInsertTemplate.d.ts.map +1 -1
  389. package/dist/IO/Templates/CadInsertTemplate.js +2 -0
  390. package/dist/IO/Templates/CadInsertTemplate.js.map +1 -1
  391. package/dist/IO/Templates/CadLayoutTemplate.d.ts.map +1 -1
  392. package/dist/IO/Templates/CadLayoutTemplate.js +4 -2
  393. package/dist/IO/Templates/CadLayoutTemplate.js.map +1 -1
  394. package/dist/IO/Templates/CadMLeaderTemplate.d.ts.map +1 -1
  395. package/dist/IO/Templates/CadMLeaderTemplate.js +17 -2
  396. package/dist/IO/Templates/CadMLeaderTemplate.js.map +1 -1
  397. package/dist/IO/Templates/CadMLineStyleTemplate.js +1 -1
  398. package/dist/IO/Templates/CadMLineStyleTemplate.js.map +1 -1
  399. package/dist/IO/Templates/CadMLineTemplate.d.ts +1 -1
  400. package/dist/IO/Templates/CadMLineTemplate.d.ts.map +1 -1
  401. package/dist/IO/Templates/CadMLineTemplate.js.map +1 -1
  402. package/dist/IO/Templates/CadPolyLineTemplate.d.ts.map +1 -1
  403. package/dist/IO/Templates/CadPolyLineTemplate.js.map +1 -1
  404. package/dist/IO/Templates/CadTableEntryTemplate.d.ts +1 -1
  405. package/dist/IO/Templates/CadTableEntryTemplate.d.ts.map +1 -1
  406. package/dist/IO/Templates/CadTableEntryTemplate.js.map +1 -1
  407. package/dist/IO/Templates/CadTableStyleTemplate.d.ts.map +1 -1
  408. package/dist/IO/Templates/CadTableStyleTemplate.js +2 -1
  409. package/dist/IO/Templates/CadTableStyleTemplate.js.map +1 -1
  410. package/dist/IO/Templates/CadTableTemplate.js +1 -1
  411. package/dist/IO/Templates/CadTableTemplate.js.map +1 -1
  412. package/dist/IO/Templates/CadTemplate.d.ts +2 -2
  413. package/dist/IO/Templates/CadTemplate.d.ts.map +1 -1
  414. package/dist/IO/Templates/CadTemplate.js +24 -7
  415. package/dist/IO/Templates/CadTemplate.js.map +1 -1
  416. package/dist/IO/Templates/CadUnderlayTemplate.d.ts +1 -1
  417. package/dist/IO/Templates/CadUnderlayTemplate.d.ts.map +1 -1
  418. package/dist/IO/Templates/CadUnderlayTemplate.js.map +1 -1
  419. package/dist/IO/Templates/CadViewTemplate.d.ts.map +1 -1
  420. package/dist/IO/Templates/CadViewTemplate.js +31 -1
  421. package/dist/IO/Templates/CadViewTemplate.js.map +1 -1
  422. package/dist/IO/Templates/CadViewportTemplate.d.ts.map +1 -1
  423. package/dist/IO/Templates/CadViewportTemplate.js +3 -0
  424. package/dist/IO/Templates/CadViewportTemplate.js.map +1 -1
  425. package/dist/IO/Templates/CadWipeoutBaseTemplate.d.ts.map +1 -1
  426. package/dist/IO/Templates/CadWipeoutBaseTemplate.js +2 -0
  427. package/dist/IO/Templates/CadWipeoutBaseTemplate.js.map +1 -1
  428. package/dist/IO/Templates/CadXRecordTemplate.d.ts.map +1 -1
  429. package/dist/IO/Templates/CadXRecordTemplate.js +3 -1
  430. package/dist/IO/Templates/CadXRecordTemplate.js.map +1 -1
  431. package/dist/IO/TextEncoding.d.ts +6 -0
  432. package/dist/IO/TextEncoding.d.ts.map +1 -0
  433. package/dist/IO/TextEncoding.js +356 -0
  434. package/dist/IO/TextEncoding.js.map +1 -0
  435. package/dist/IObservableCadCollection.d.ts +2 -2
  436. package/dist/IObservableCadCollection.d.ts.map +1 -1
  437. package/dist/ISeqendColleciton.d.ts +4 -3
  438. package/dist/ISeqendColleciton.d.ts.map +1 -1
  439. package/dist/Math/Matrix4.js.map +1 -1
  440. package/dist/Metadata/GeneratedClassMetadata.d.ts +3 -0
  441. package/dist/Metadata/GeneratedClassMetadata.d.ts.map +1 -0
  442. package/dist/Metadata/GeneratedClassMetadata.js +10271 -0
  443. package/dist/Metadata/GeneratedClassMetadata.js.map +1 -0
  444. package/dist/Metadata/LookupTables/Blocks.d.ts +3 -0
  445. package/dist/Metadata/LookupTables/Blocks.d.ts.map +1 -0
  446. package/dist/Metadata/LookupTables/Blocks.js +65 -0
  447. package/dist/Metadata/LookupTables/Blocks.js.map +1 -0
  448. package/dist/Metadata/LookupTables/Core.d.ts +3 -0
  449. package/dist/Metadata/LookupTables/Core.d.ts.map +1 -0
  450. package/dist/Metadata/LookupTables/Core.js +2347 -0
  451. package/dist/Metadata/LookupTables/Core.js.map +1 -0
  452. package/dist/Metadata/LookupTables/Entities.d.ts +3 -0
  453. package/dist/Metadata/LookupTables/Entities.d.ts.map +1 -0
  454. package/dist/Metadata/LookupTables/Entities.js +3046 -0
  455. package/dist/Metadata/LookupTables/Entities.js.map +1 -0
  456. package/dist/Metadata/LookupTables/Objects.d.ts +3 -0
  457. package/dist/Metadata/LookupTables/Objects.d.ts.map +1 -0
  458. package/dist/Metadata/LookupTables/Objects.js +3555 -0
  459. package/dist/Metadata/LookupTables/Objects.js.map +1 -0
  460. package/dist/Metadata/LookupTables/Tables.d.ts +3 -0
  461. package/dist/Metadata/LookupTables/Tables.d.ts.map +1 -0
  462. package/dist/Metadata/LookupTables/Tables.js +1270 -0
  463. package/dist/Metadata/LookupTables/Tables.js.map +1 -0
  464. package/dist/Metadata/MetadataLookupTable.d.ts +3 -0
  465. package/dist/Metadata/MetadataLookupTable.d.ts.map +1 -0
  466. package/dist/Metadata/MetadataLookupTable.js +14 -0
  467. package/dist/Metadata/MetadataLookupTable.js.map +1 -0
  468. package/dist/Metadata/MetadataStore.d.ts +7 -0
  469. package/dist/Metadata/MetadataStore.d.ts.map +1 -0
  470. package/dist/Metadata/MetadataStore.js +50 -0
  471. package/dist/Metadata/MetadataStore.js.map +1 -0
  472. package/dist/Metadata/MetadataTypes.d.ts +22 -0
  473. package/dist/Metadata/MetadataTypes.d.ts.map +1 -0
  474. package/dist/Metadata/MetadataTypes.js +2 -0
  475. package/dist/Metadata/MetadataTypes.js.map +1 -0
  476. package/dist/Objects/BlockRepresentationData.d.ts +2 -1
  477. package/dist/Objects/BlockRepresentationData.d.ts.map +1 -1
  478. package/dist/Objects/BlockRepresentationData.js.map +1 -1
  479. package/dist/Objects/CadDictionary.d.ts +2 -2
  480. package/dist/Objects/CadDictionary.d.ts.map +1 -1
  481. package/dist/Objects/CadDictionary.js.map +1 -1
  482. package/dist/Objects/Collections/GroupCollection.d.ts +4 -1
  483. package/dist/Objects/Collections/GroupCollection.d.ts.map +1 -1
  484. package/dist/Objects/Collections/GroupCollection.js +24 -3
  485. package/dist/Objects/Collections/GroupCollection.js.map +1 -1
  486. package/dist/Objects/Collections/ObjectDictionaryCollection.d.ts +2 -2
  487. package/dist/Objects/Collections/ObjectDictionaryCollection.d.ts.map +1 -1
  488. package/dist/Objects/Collections/ObjectDictionaryCollection.js.map +1 -1
  489. package/dist/Objects/DimensionAssociation.d.ts +2 -1
  490. package/dist/Objects/DimensionAssociation.d.ts.map +1 -1
  491. package/dist/Objects/DimensionAssociation.js.map +1 -1
  492. package/dist/Objects/Evaluations/BlockAction.d.ts +2 -1
  493. package/dist/Objects/Evaluations/BlockAction.d.ts.map +1 -1
  494. package/dist/Objects/Evaluations/BlockAction.js.map +1 -1
  495. package/dist/Objects/Evaluations/BlockVisibilityParameter.d.ts +3 -2
  496. package/dist/Objects/Evaluations/BlockVisibilityParameter.d.ts.map +1 -1
  497. package/dist/Objects/Evaluations/BlockVisibilityParameter.js +2 -2
  498. package/dist/Objects/Evaluations/BlockVisibilityParameter.js.map +1 -1
  499. package/dist/Objects/GeoData.d.ts +2 -1
  500. package/dist/Objects/GeoData.d.ts.map +1 -1
  501. package/dist/Objects/GeoData.js.map +1 -1
  502. package/dist/Objects/ImageDefinitionReactor.d.ts +2 -1
  503. package/dist/Objects/ImageDefinitionReactor.d.ts.map +1 -1
  504. package/dist/Objects/ImageDefinitionReactor.js.map +1 -1
  505. package/dist/Objects/Layout.d.ts +14 -8
  506. package/dist/Objects/Layout.d.ts.map +1 -1
  507. package/dist/Objects/Layout.js +38 -6
  508. package/dist/Objects/Layout.js.map +1 -1
  509. package/dist/Objects/LinkedData.d.ts +5 -4
  510. package/dist/Objects/LinkedData.d.ts.map +1 -1
  511. package/dist/Objects/LinkedData.js +2 -1
  512. package/dist/Objects/LinkedData.js.map +1 -1
  513. package/dist/Objects/MLineStyle.d.ts +5 -3
  514. package/dist/Objects/MLineStyle.d.ts.map +1 -1
  515. package/dist/Objects/MLineStyle.js +3 -3
  516. package/dist/Objects/MLineStyle.js.map +1 -1
  517. package/dist/Objects/MultiLeaderObjectContextData.d.ts +15 -9
  518. package/dist/Objects/MultiLeaderObjectContextData.d.ts.map +1 -1
  519. package/dist/Objects/MultiLeaderObjectContextData.js +29 -4
  520. package/dist/Objects/MultiLeaderObjectContextData.js.map +1 -1
  521. package/dist/Objects/MultiLeaderStyle.d.ts +14 -8
  522. package/dist/Objects/MultiLeaderStyle.d.ts.map +1 -1
  523. package/dist/Objects/MultiLeaderStyle.js +27 -5
  524. package/dist/Objects/MultiLeaderStyle.js.map +1 -1
  525. package/dist/Objects/NonGraphicalObject.d.ts +2 -4
  526. package/dist/Objects/NonGraphicalObject.d.ts.map +1 -1
  527. package/dist/Objects/NonGraphicalObject.js +2 -1
  528. package/dist/Objects/NonGraphicalObject.js.map +1 -1
  529. package/dist/Objects/ProxyObject.d.ts +2 -1
  530. package/dist/Objects/ProxyObject.d.ts.map +1 -1
  531. package/dist/Objects/ProxyObject.js.map +1 -1
  532. package/dist/Objects/SortEntitiesTable.d.ts +9 -7
  533. package/dist/Objects/SortEntitiesTable.d.ts.map +1 -1
  534. package/dist/Objects/SortEntitiesTable.js +1 -1
  535. package/dist/Objects/SortEntitiesTable.js.map +1 -1
  536. package/dist/Objects/TableContent.d.ts +3 -2
  537. package/dist/Objects/TableContent.d.ts.map +1 -1
  538. package/dist/Objects/TableContent.js.map +1 -1
  539. package/dist/Objects/TableStyle.d.ts +6 -5
  540. package/dist/Objects/TableStyle.d.ts.map +1 -1
  541. package/dist/Objects/TableStyle.js +5 -4
  542. package/dist/Objects/TableStyle.js.map +1 -1
  543. package/dist/Objects/UnknownNonGraphicalObject.d.ts +8 -2
  544. package/dist/Objects/UnknownNonGraphicalObject.d.ts.map +1 -1
  545. package/dist/Objects/UnknownNonGraphicalObject.js +2 -1
  546. package/dist/Objects/UnknownNonGraphicalObject.js.map +1 -1
  547. package/dist/Objects/XRecrod.d.ts +4 -4
  548. package/dist/Objects/XRecrod.d.ts.map +1 -1
  549. package/dist/Objects/XRecrod.js.map +1 -1
  550. package/dist/PropertyReflection.d.ts +7 -2
  551. package/dist/PropertyReflection.d.ts.map +1 -1
  552. package/dist/PropertyReflection.js +27 -5
  553. package/dist/PropertyReflection.js.map +1 -1
  554. package/dist/SeqendCollection.d.ts +3 -3
  555. package/dist/SeqendCollection.d.ts.map +1 -1
  556. package/dist/SeqendCollection.js.map +1 -1
  557. package/dist/Tables/BlockRecord.d.ts +23 -8
  558. package/dist/Tables/BlockRecord.d.ts.map +1 -1
  559. package/dist/Tables/BlockRecord.js +113 -18
  560. package/dist/Tables/BlockRecord.js.map +1 -1
  561. package/dist/Tables/Collections/Table.d.ts +2 -2
  562. package/dist/Tables/Collections/Table.d.ts.map +1 -1
  563. package/dist/Tables/Collections/Table.js +1 -1
  564. package/dist/Tables/Collections/Table.js.map +1 -1
  565. package/dist/Tables/Layer.d.ts +6 -3
  566. package/dist/Tables/Layer.d.ts.map +1 -1
  567. package/dist/Tables/Layer.js +5 -3
  568. package/dist/Tables/Layer.js.map +1 -1
  569. package/dist/Tables/LineType.d.ts +2 -1
  570. package/dist/Tables/LineType.d.ts.map +1 -1
  571. package/dist/Tables/LineType.js.map +1 -1
  572. package/dist/Tables/TableEntry.d.ts +1 -1
  573. package/dist/Tables/TableEntry.d.ts.map +1 -1
  574. package/dist/Tables/TableEntry.js.map +1 -1
  575. package/dist/Tables/TextStyle.d.ts +2 -5
  576. package/dist/Tables/TextStyle.d.ts.map +1 -1
  577. package/dist/Tables/TextStyle.js +2 -7
  578. package/dist/Tables/TextStyle.js.map +1 -1
  579. package/dist/Tables/VPort.d.ts +2 -1
  580. package/dist/Tables/VPort.d.ts.map +1 -1
  581. package/dist/Tables/VPort.js.map +1 -1
  582. package/dist/Tables/View.d.ts +2 -1
  583. package/dist/Tables/View.d.ts.map +1 -1
  584. package/dist/Tables/View.js +1 -1
  585. package/dist/Tables/View.js.map +1 -1
  586. package/dist/XData/ExtendedDataDictionary.d.ts +6 -7
  587. package/dist/XData/ExtendedDataDictionary.d.ts.map +1 -1
  588. package/dist/XData/ExtendedDataDictionary.js +11 -7
  589. package/dist/XData/ExtendedDataDictionary.js.map +1 -1
  590. package/dist/XData/ExtendedDataLayer.d.ts +2 -2
  591. package/dist/XData/ExtendedDataLayer.d.ts.map +1 -1
  592. package/dist/XData/ExtendedDataLayer.js +0 -1
  593. package/dist/XData/ExtendedDataLayer.js.map +1 -1
  594. package/dist/XData/ExtendedDataReference.d.ts +2 -1
  595. package/dist/XData/ExtendedDataReference.d.ts.map +1 -1
  596. package/dist/XData/ExtendedDataReference.js +1 -1
  597. package/dist/XData/ExtendedDataReference.js.map +1 -1
  598. package/dist/XData/IExtendedDataHandleReference.d.ts +2 -1
  599. package/dist/XData/IExtendedDataHandleReference.d.ts.map +1 -1
  600. package/dist/index-min.js +12 -13
  601. package/package.json +1 -1
@@ -1,13 +1,22 @@
1
+ import { DxfProperty } from './DxfProperty.js';
2
+ import { getClassPropertyMetadata } from './Metadata/MetadataStore.js';
1
3
  export class DxfMapBase {
2
4
  name = "";
3
5
  dxfProperties = new Map();
4
- // TODO: addClassProperties requires reflection which is not available in TypeScript
5
6
  static addClassProperties(map, type, obj) {
6
- // TODO: Reflection-based property mapping not directly convertible to TypeScript
7
+ for (const [code, property] of DxfMapBase.cadObjectMapDxf(type)) {
8
+ map.dxfProperties.set(code, property);
9
+ if (obj != null) {
10
+ property.storedValue = property.getRawValue(obj);
11
+ }
12
+ }
7
13
  }
8
- // TODO: cadObjectMapDxf requires reflection
9
14
  static *cadObjectMapDxf(type) {
10
- // TODO: Reflection-based property iteration not directly convertible to TypeScript
15
+ for (const metadata of getClassPropertyMetadata(type)) {
16
+ for (const code of metadata.valueCodes) {
17
+ yield [code, new DxfProperty(code, metadata)];
18
+ }
19
+ }
11
20
  }
12
21
  }
13
22
  //# sourceMappingURL=DxfMapBase.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DxfMapBase.js","sourceRoot":"","sources":["../src/DxfMapBase.ts"],"names":[],"mappings":"AAKA,MAAM,OAAgB,UAAU;IACxB,IAAI,GAAW,EAAE,CAAC;IAClB,aAAa,GAA6B,IAAI,GAAG,EAAE,CAAC;IAE3D,oFAAoF;IAC1E,MAAM,CAAC,kBAAkB,CAAC,GAAe,EAAE,IAAS,EAAE,GAAS;QACxE,iFAAiF;IAClF,CAAC;IAED,4CAA4C;IAClC,MAAM,CAAC,CAAC,eAAe,CAAC,IAAS;QAC1C,mFAAmF;IACpF,CAAC;CACD"}
1
+ {"version":3,"file":"DxfMapBase.js","sourceRoot":"","sources":["../src/DxfMapBase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AAEvE,MAAM,OAAgB,UAAU;IACxB,IAAI,GAAW,EAAE,CAAC;IAClB,aAAa,GAA6B,IAAI,GAAG,EAAE,CAAC;IAEjD,MAAM,CAAC,kBAAkB,CAAC,GAAe,EAAE,IAAuB,EAAE,GAAY;QACzF,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;YACjE,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACtC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;gBACjB,QAAQ,CAAC,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YAClD,CAAC;QACF,CAAC;IACF,CAAC;IAES,MAAM,CAAC,CAAC,eAAe,CAAC,IAAuB;QACxD,KAAK,MAAM,QAAQ,IAAI,wBAAwB,CAAC,IAAI,CAAC,EAAE,CAAC;YACvD,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;gBACxC,MAAM,CAAC,IAAI,EAAE,IAAI,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;YAC/C,CAAC;QACF,CAAC;IACF,CAAC;CACD"}
@@ -1,9 +1,14 @@
1
1
  import { DxfPropertyBase } from './DxfPropertyBase.js';
2
+ import { PropertyMetadata } from './Metadata/MetadataTypes.js';
3
+ import { ExtendedDataRecord } from './XData/ExtendedDataRecord.js';
2
4
  export declare class DxfProperty extends DxfPropertyBase {
5
+ constructor(metadata: PropertyMetadata);
6
+ constructor(code: number, metadata: PropertyMetadata);
3
7
  constructor(propertyName: string, dxfCodes: number[]);
4
8
  constructor(code: number, propertyName: string, dxfCodes?: number[]);
5
9
  getCollectionCodes(): number[] | null;
6
- getValue(obj: any): any;
10
+ getValue(obj: object): unknown;
11
+ toXDataRecords(): ExtendedDataRecord[];
7
12
  toString(): string;
8
13
  }
9
14
  //# sourceMappingURL=DxfProperty.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DxfProperty.d.ts","sourceRoot":"","sources":["../src/DxfProperty.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAGvD,qBAAa,WAAY,SAAQ,eAAe;gBACnC,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE;gBACxC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE;IAU5D,kBAAkB,IAAI,MAAM,EAAE,GAAG,IAAI;IAKrC,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG;IAIvB,QAAQ,IAAI,MAAM;CAQzB"}
1
+ {"version":3,"file":"DxfProperty.d.ts","sourceRoot":"","sources":["../src/DxfProperty.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,qBAAa,WAAY,SAAQ,eAAe;gBACnC,QAAQ,EAAE,gBAAgB;gBAC1B,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,gBAAgB;gBACxC,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE;gBACxC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE;IAkB5D,kBAAkB,IAAI,MAAM,EAAE,GAAG,IAAI;IAIrC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAI9B,cAAc,IAAI,kBAAkB,EAAE;IAWtC,QAAQ,IAAI,MAAM;CAQzB"}
@@ -1,20 +1,40 @@
1
1
  import { DxfPropertyBase } from './DxfPropertyBase.js';
2
+ import { ExtendedDataInteger16 } from './XData/ExtendedDataInteger16.js';
3
+ import { ExtendedDataRecord } from './XData/ExtendedDataRecord.js';
2
4
  export class DxfProperty extends DxfPropertyBase {
3
5
  constructor(codeOrName, nameOrCodes, dxfCodes) {
4
- if (typeof codeOrName === 'string') {
6
+ if (typeof codeOrName === 'object') {
7
+ super(codeOrName);
8
+ }
9
+ else if (typeof codeOrName === 'string') {
5
10
  super(codeOrName, nameOrCodes);
6
11
  }
12
+ else if (typeof nameOrCodes === 'object' && !Array.isArray(nameOrCodes)) {
13
+ super(nameOrCodes);
14
+ if (!nameOrCodes.valueCodes.includes(codeOrName)) {
15
+ throw new Error(`The property ${nameOrCodes.propertyName} does not have a mapping for code ${codeOrName}`);
16
+ }
17
+ this._assignedCode = codeOrName;
18
+ }
7
19
  else {
8
20
  super(nameOrCodes, dxfCodes ?? [codeOrName]);
9
21
  this._assignedCode = codeOrName;
10
22
  }
11
23
  }
12
24
  getCollectionCodes() {
13
- // TODO: Requires attribute reflection
14
- return null;
25
+ return this._collectionCodes ? [...this._collectionCodes] : null;
15
26
  }
16
27
  getValue(obj) {
17
- return this.getRawValue(obj);
28
+ return this.getPropertyValue(obj);
29
+ }
30
+ toXDataRecords() {
31
+ if (this.storedValue === null || this.storedValue === undefined) {
32
+ return [];
33
+ }
34
+ return [
35
+ new ExtendedDataInteger16(this.assignedCode),
36
+ ExtendedDataRecord.create(this.groupCode, this.storedValue),
37
+ ];
18
38
  }
19
39
  toString() {
20
40
  let str = "";
@@ -1 +1 @@
1
- {"version":3,"file":"DxfProperty.js","sourceRoot":"","sources":["../src/DxfProperty.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAGvD,MAAM,OAAO,WAAY,SAAQ,eAAe;IAG/C,YAAY,UAA2B,EAAE,WAA8B,EAAE,QAAmB;QAC3F,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YACpC,KAAK,CAAC,UAAU,EAAE,WAAuB,CAAC,CAAC;QAC5C,CAAC;aAAM,CAAC;YACP,KAAK,CAAC,WAAqB,EAAE,QAAQ,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YACvD,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC;QACjC,CAAC;IACF,CAAC;IAEM,kBAAkB;QACxB,sCAAsC;QACtC,OAAO,IAAI,CAAC;IACb,CAAC;IAEM,QAAQ,CAAC,GAAQ;QACvB,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;IAEM,QAAQ;QACd,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClC,GAAG,IAAI,GAAG,IAAI,GAAG,CAAC;QACnB,CAAC;QACD,GAAG,IAAI,IAAI,CAAC,aAAa,CAAC;QAC1B,OAAO,GAAG,CAAC;IACZ,CAAC;CACD"}
1
+ {"version":3,"file":"DxfProperty.js","sourceRoot":"","sources":["../src/DxfProperty.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAGvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,MAAM,OAAO,WAAY,SAAQ,eAAe;IAK/C,YAAY,UAA8C,EAAE,WAAkD,EAAE,QAAmB;QAClI,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YACpC,KAAK,CAAC,UAAU,CAAC,CAAC;QACnB,CAAC;aAAM,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YAC3C,KAAK,CAAC,UAAU,EAAE,WAAuB,CAAC,CAAC;QAC5C,CAAC;aAAM,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YAC3E,KAAK,CAAC,WAAW,CAAC,CAAC;YACnB,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;gBAClD,MAAM,IAAI,KAAK,CAAC,gBAAgB,WAAW,CAAC,YAAY,qCAAqC,UAAU,EAAE,CAAC,CAAC;YAC5G,CAAC;YACD,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC;QACjC,CAAC;aAAM,CAAC;YACP,KAAK,CAAC,WAAqB,EAAE,QAAQ,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YACvD,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC;QACjC,CAAC;IACF,CAAC;IAEM,kBAAkB;QACxB,OAAO,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAClE,CAAC;IAEM,QAAQ,CAAC,GAAW;QAC1B,OAAO,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACnC,CAAC;IAEM,cAAc;QACpB,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACjE,OAAO,EAAE,CAAC;QACX,CAAC;QAED,OAAO;YACN,IAAI,qBAAqB,CAAC,IAAI,CAAC,YAAY,CAAC;YAC5C,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC;SAC3D,CAAC;IACH,CAAC;IAEM,QAAQ;QACd,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClC,GAAG,IAAI,GAAG,IAAI,GAAG,CAAC;QACnB,CAAC;QACD,GAAG,IAAI,IAAI,CAAC,aAAa,CAAC;QAC1B,OAAO,GAAG,CAAC;IACZ,CAAC;CACD"}
@@ -1,14 +1,28 @@
1
1
  import { GroupCodeValueType } from './GroupCodeValueType.js';
2
+ import { PropertyMetadata } from './Metadata/MetadataTypes.js';
2
3
  export declare abstract class DxfPropertyBase {
3
4
  get assignedCode(): number;
4
5
  dxfCodes: number[];
5
6
  referenceType: number;
6
- storedValue: any;
7
+ get storedValue(): unknown;
8
+ set storedValue(value: unknown);
7
9
  get groupCode(): GroupCodeValueType;
8
10
  protected _assignedCode: number | null;
11
+ protected _storedValue: unknown;
9
12
  protected _propertyName: string;
13
+ protected _collectionCodes: number[] | null;
14
+ protected _valueKind: PropertyMetadata['valueKind'];
10
15
  constructor(propertyName: string, dxfCodes: number[]);
11
- setValue(code: number, obj: any, value: any): void;
12
- getRawValue(obj: any): any;
16
+ constructor(metadata: PropertyMetadata);
17
+ setValue(code: number, obj: object | null | undefined, value: unknown): void;
18
+ applyValues(obj: object | null | undefined, values: unknown[]): void;
19
+ getRawValue(obj: object): unknown;
20
+ protected getPropertyValue(obj: object | null | undefined): unknown;
21
+ protected setPropertyValue(obj: object, value: unknown): void;
22
+ protected getRawValueByCode(code: number, obj: object): unknown;
23
+ protected getCounterValue(obj: object): number;
24
+ protected getHandledValue(obj: object): number | null;
25
+ protected getNamedValue(obj: object): string | null;
26
+ protected normalizeStoredValue(value: unknown): unknown;
13
27
  }
14
28
  //# sourceMappingURL=DxfPropertyBase.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DxfPropertyBase.d.ts","sourceRoot":"","sources":["../src/DxfPropertyBase.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAM7D,8BAAsB,eAAe;IACpC,IAAW,YAAY,IAAI,MAAM,CAIhC;IAEM,QAAQ,EAAE,MAAM,EAAE,CAAM;IACxB,aAAa,EAAE,MAAM,CAAK;IAE1B,WAAW,EAAE,GAAG,CAAQ;IAE/B,IAAW,SAAS,IAAI,kBAAkB,CAGzC;IAED,SAAS,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC9C,SAAS,CAAC,aAAa,EAAE,MAAM,CAAM;gBAEzB,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE;IAK7C,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI;IAOlD,WAAW,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG;CAOjC"}
1
+ {"version":3,"file":"DxfPropertyBase.d.ts","sourceRoot":"","sources":["../src/DxfPropertyBase.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAQ7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAY/D,8BAAsB,eAAe;IACpC,IAAW,YAAY,IAAI,MAAM,CAIhC;IAEM,QAAQ,EAAE,MAAM,EAAE,CAAM;IACxB,aAAa,EAAE,MAAM,CAAK;IAEjC,IAAW,WAAW,IAAI,OAAO,CAEhC;IACD,IAAW,WAAW,CAAC,KAAK,EAAE,OAAO,EAEpC;IAED,IAAW,SAAS,IAAI,kBAAkB,CAGzC;IAED,SAAS,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC9C,SAAS,CAAC,YAAY,EAAE,OAAO,CAAQ;IACvC,SAAS,CAAC,aAAa,EAAE,MAAM,CAAM;IACrC,SAAS,CAAC,gBAAgB,EAAE,MAAM,EAAE,GAAG,IAAI,CAAQ;IACnD,SAAS,CAAC,UAAU,EAAE,gBAAgB,CAAC,WAAW,CAAC,CAAC;gBAExC,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE;gBACxC,QAAQ,EAAE,gBAAgB;IAgB/B,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAsF5E,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI;IAsBpE,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIxC,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO;IAInE,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAI7D,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO;IA6D/D,SAAS,CAAC,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAwB9C,SAAS,CAAC,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAarD,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAanD,SAAS,CAAC,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;CA2CvD"}
@@ -1,7 +1,18 @@
1
1
  import { DxfCode } from './DxfCode.js';
2
+ import { GroupCodeValueType } from './GroupCodeValueType.js';
2
3
  import { GroupCodeValue } from './GroupCodeValue.js';
3
- // TODO: DxfPropertyBase relies heavily on C# reflection (PropertyInfo, Attributes)
4
- // This is a simplified version that stores the property mapping data
4
+ import { XY } from './Math/XY.js';
5
+ import { XYZ } from './Math/XYZ.js';
6
+ import { Color } from './Color.js';
7
+ import { Transparency } from './Transparency.js';
8
+ import { PaperMargin } from './Objects/PaperMargin.js';
9
+ import { CadUtils } from './CadUtils.js';
10
+ function isVector(value) {
11
+ return value instanceof XY || value instanceof XYZ;
12
+ }
13
+ function toNumber(value) {
14
+ return typeof value === 'number' ? value : Number(value);
15
+ }
5
16
  export class DxfPropertyBase {
6
17
  get assignedCode() {
7
18
  if (this._assignedCode !== null)
@@ -12,29 +23,273 @@ export class DxfPropertyBase {
12
23
  }
13
24
  dxfCodes = [];
14
25
  referenceType = 0; // DxfReferenceType
15
- storedValue = null;
26
+ get storedValue() {
27
+ return this._storedValue;
28
+ }
29
+ set storedValue(value) {
30
+ this._storedValue = this.normalizeStoredValue(value);
31
+ }
16
32
  get groupCode() {
17
33
  const code = this.dxfCodes[0];
18
34
  return GroupCodeValue.transformValue(code);
19
35
  }
20
36
  _assignedCode = null;
37
+ _storedValue = null;
21
38
  _propertyName = "";
22
- constructor(propertyName, dxfCodes) {
23
- this._propertyName = propertyName;
24
- this.dxfCodes = dxfCodes;
39
+ _collectionCodes = null;
40
+ _valueKind;
41
+ constructor(propertyNameOrMetadata, dxfCodes = []) {
42
+ if (typeof propertyNameOrMetadata === 'string') {
43
+ this._propertyName = propertyNameOrMetadata;
44
+ this.dxfCodes = dxfCodes;
45
+ this.referenceType = 0;
46
+ this._valueKind = undefined;
47
+ }
48
+ else {
49
+ this._propertyName = propertyNameOrMetadata.propertyName;
50
+ this.dxfCodes = [...propertyNameOrMetadata.valueCodes];
51
+ this.referenceType = propertyNameOrMetadata.referenceType;
52
+ this._collectionCodes = propertyNameOrMetadata.collectionCodes ? [...propertyNameOrMetadata.collectionCodes] : null;
53
+ this._valueKind = propertyNameOrMetadata.valueKind;
54
+ }
25
55
  }
26
56
  setValue(code, obj, value) {
27
- // TODO: Simplified - full implementation requires reflection
28
- if (obj && this._propertyName) {
29
- obj[this._propertyName] = value;
57
+ if (!obj || !this._propertyName) {
58
+ return;
59
+ }
60
+ const currentValue = this.getPropertyValue(obj);
61
+ if (isVector(currentValue)) {
62
+ const index = Math.max(0, Math.floor(code / 10) % 10 - 1);
63
+ currentValue[index] = toNumber(value);
64
+ this.setPropertyValue(obj, currentValue);
65
+ return;
66
+ }
67
+ if (currentValue instanceof Color) {
68
+ switch (code) {
69
+ case 62:
70
+ case 70:
71
+ this.setPropertyValue(obj, new Color(toNumber(value)));
72
+ return;
73
+ case 90:
74
+ case 420: {
75
+ const colorValue = toNumber(value) >>> 0;
76
+ const red = (colorValue >> 16) & 0xFF;
77
+ const green = (colorValue >> 8) & 0xFF;
78
+ const blue = colorValue & 0xFF;
79
+ this.setPropertyValue(obj, new Color(red, green, blue));
80
+ return;
81
+ }
82
+ }
83
+ }
84
+ if (currentValue instanceof PaperMargin) {
85
+ let margin = currentValue;
86
+ switch (code) {
87
+ case 40:
88
+ margin = new PaperMargin(toNumber(value), margin.bottom, margin.right, margin.top);
89
+ break;
90
+ case 41:
91
+ margin = new PaperMargin(margin.left, toNumber(value), margin.right, margin.top);
92
+ break;
93
+ case 42:
94
+ margin = new PaperMargin(margin.left, margin.bottom, toNumber(value), margin.top);
95
+ break;
96
+ case 43:
97
+ margin = new PaperMargin(margin.left, margin.bottom, margin.right, toNumber(value));
98
+ break;
99
+ }
100
+ this.setPropertyValue(obj, margin);
101
+ return;
102
+ }
103
+ if (currentValue instanceof Transparency) {
104
+ this.setPropertyValue(obj, Transparency.fromAlphaValue(toNumber(value)));
105
+ return;
30
106
  }
107
+ if (this._valueKind === 'date' || currentValue instanceof Date) {
108
+ this.setPropertyValue(obj, value instanceof Date ? value : CadUtils.fromJulianCalendar(toNumber(value)));
109
+ return;
110
+ }
111
+ if (this._valueKind === 'timespan') {
112
+ this.setPropertyValue(obj, toNumber(value) * 86400000);
113
+ return;
114
+ }
115
+ if (typeof currentValue === 'boolean') {
116
+ this.setPropertyValue(obj, typeof value === 'boolean' ? value : toNumber(value) !== 0);
117
+ return;
118
+ }
119
+ if (typeof currentValue === 'string') {
120
+ this.setPropertyValue(obj, value == null ? '' : String(value));
121
+ return;
122
+ }
123
+ if (typeof currentValue === 'number') {
124
+ this.setPropertyValue(obj, toNumber(value));
125
+ return;
126
+ }
127
+ this.setPropertyValue(obj, value);
128
+ }
129
+ applyValues(obj, values) {
130
+ if (!obj || !this._propertyName || values.length === 0) {
131
+ return;
132
+ }
133
+ const currentValue = this.getPropertyValue(obj);
134
+ if (values.length > 1) {
135
+ if (currentValue instanceof XY) {
136
+ this.setPropertyValue(obj, new XY(toNumber(values[0]), toNumber(values[1])));
137
+ return;
138
+ }
139
+ if (currentValue instanceof XYZ) {
140
+ this.setPropertyValue(obj, new XYZ(toNumber(values[0]), toNumber(values[1]), toNumber(values[2] ?? 0)));
141
+ return;
142
+ }
143
+ }
144
+ const assignedCode = this.assignedCode !== DxfCode.Invalid ? this.assignedCode : this.dxfCodes[0];
145
+ this.setValue(assignedCode, obj, values[0]);
31
146
  }
32
147
  getRawValue(obj) {
33
- // TODO: Simplified - full implementation requires reflection
34
- if (obj && this._propertyName) {
35
- return obj[this._propertyName];
148
+ return this.getRawValueByCode(this.assignedCode, obj);
149
+ }
150
+ getPropertyValue(obj) {
151
+ return obj?.[this._propertyName];
152
+ }
153
+ setPropertyValue(obj, value) {
154
+ obj[this._propertyName] = value;
155
+ }
156
+ getRawValueByCode(code, obj) {
157
+ const value = this.getPropertyValue(obj);
158
+ if (value == null) {
159
+ return value;
160
+ }
161
+ const groupCode = GroupCodeValue.transformValue(code);
162
+ switch (groupCode) {
163
+ case GroupCodeValueType.Handle:
164
+ case GroupCodeValueType.ObjectId:
165
+ case GroupCodeValueType.ExtendedDataHandle:
166
+ return this.getHandledValue(obj);
167
+ }
168
+ if (isVector(value)) {
169
+ const index = Math.max(0, Math.floor(code / 10) % 10 - 1);
170
+ return value[index];
171
+ }
172
+ if (this._valueKind === 'date' || value instanceof Date) {
173
+ return CadUtils.toJulianCalendar(value instanceof Date ? value : new Date(toNumber(value)));
174
+ }
175
+ if (this._valueKind === 'timespan') {
176
+ return toNumber(value) / 86400000;
177
+ }
178
+ if (value instanceof Color) {
179
+ switch (code) {
180
+ case 62:
181
+ case 70:
182
+ return value.index;
183
+ case 420:
184
+ return value.trueColor;
185
+ default:
186
+ return null;
187
+ }
188
+ }
189
+ if (value instanceof PaperMargin) {
190
+ switch (code) {
191
+ case 40:
192
+ return value.left;
193
+ case 41:
194
+ return value.bottom;
195
+ case 42:
196
+ return value.right;
197
+ case 43:
198
+ return value.top;
199
+ default:
200
+ return null;
201
+ }
202
+ }
203
+ if (value instanceof Transparency) {
204
+ return Transparency.toAlphaValue(value);
205
+ }
206
+ return value;
207
+ }
208
+ getCounterValue(obj) {
209
+ const collection = this.getPropertyValue(obj);
210
+ if (collection == null) {
211
+ return 0;
212
+ }
213
+ if (Array.isArray(collection) || typeof collection === 'string') {
214
+ return collection.length;
215
+ }
216
+ if (typeof collection === 'object' && collection !== null && 'length' in collection) {
217
+ const length = collection.length;
218
+ if (typeof length === 'number') {
219
+ return length;
220
+ }
221
+ }
222
+ let count = 0;
223
+ for (const _item of collection) {
224
+ count += 1;
225
+ }
226
+ return count;
227
+ }
228
+ getHandledValue(obj) {
229
+ const handled = this.getPropertyValue(obj);
230
+ if (handled == null || typeof handled !== 'object') {
231
+ return null;
232
+ }
233
+ const candidate = handled;
234
+ return typeof candidate.handle === 'number'
235
+ ? candidate.handle
236
+ : typeof candidate.Handle === 'number'
237
+ ? candidate.Handle
238
+ : null;
239
+ }
240
+ getNamedValue(obj) {
241
+ const named = this.getPropertyValue(obj);
242
+ if (named == null || typeof named !== 'object') {
243
+ return null;
244
+ }
245
+ const candidate = named;
246
+ return typeof candidate.name === 'string'
247
+ ? candidate.name
248
+ : typeof candidate.Name === 'string'
249
+ ? candidate.Name
250
+ : null;
251
+ }
252
+ normalizeStoredValue(value) {
253
+ if (value == null) {
254
+ return value;
255
+ }
256
+ switch (this.groupCode) {
257
+ case GroupCodeValueType.String:
258
+ case GroupCodeValueType.Comment:
259
+ case GroupCodeValueType.ExtendedDataString:
260
+ return String(value);
261
+ case GroupCodeValueType.Point3D:
262
+ return value;
263
+ case GroupCodeValueType.Double:
264
+ case GroupCodeValueType.ExtendedDataDouble:
265
+ return toNumber(value);
266
+ case GroupCodeValueType.Byte:
267
+ case GroupCodeValueType.Int16:
268
+ case GroupCodeValueType.ExtendedDataInt16:
269
+ case GroupCodeValueType.Int32:
270
+ case GroupCodeValueType.ExtendedDataInt32:
271
+ case GroupCodeValueType.Int64:
272
+ return toNumber(value);
273
+ case GroupCodeValueType.Bool:
274
+ return Boolean(value);
275
+ case GroupCodeValueType.Chunk:
276
+ case GroupCodeValueType.ExtendedDataChunk:
277
+ if (value instanceof Uint8Array) {
278
+ return value;
279
+ }
280
+ if (value instanceof ArrayBuffer) {
281
+ return new Uint8Array(value);
282
+ }
283
+ if (ArrayBuffer.isView(value)) {
284
+ return new Uint8Array(value.buffer, value.byteOffset, value.byteLength);
285
+ }
286
+ if (Array.isArray(value)) {
287
+ return new Uint8Array(value);
288
+ }
289
+ return new Uint8Array();
290
+ default:
291
+ return value;
36
292
  }
37
- return null;
38
293
  }
39
294
  }
40
295
  //# sourceMappingURL=DxfPropertyBase.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DxfPropertyBase.js","sourceRoot":"","sources":["../src/DxfPropertyBase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,mFAAmF;AACnF,qEAAqE;AAErE,MAAM,OAAgB,eAAe;IACpC,IAAW,YAAY;QACtB,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC,aAAa,CAAC;QAC3D,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QACxD,OAAO,OAAO,CAAC,OAAO,CAAC;IACxB,CAAC;IAEM,QAAQ,GAAa,EAAE,CAAC;IACxB,aAAa,GAAW,CAAC,CAAC,CAAC,mBAAmB;IAE9C,WAAW,GAAQ,IAAI,CAAC;IAE/B,IAAW,SAAS;QACnB,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC9B,OAAO,cAAc,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC;IAES,aAAa,GAAkB,IAAI,CAAC;IACpC,aAAa,GAAW,EAAE,CAAC;IAErC,YAAY,YAAoB,EAAE,QAAkB;QACnD,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;QAClC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC1B,CAAC;IAEM,QAAQ,CAAC,IAAY,EAAE,GAAQ,EAAE,KAAU;QACjD,6DAA6D;QAC7D,IAAI,GAAG,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YAC/B,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC;QACjC,CAAC;IACF,CAAC;IAEM,WAAW,CAAC,GAAQ;QAC1B,6DAA6D;QAC7D,IAAI,GAAG,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YAC/B,OAAO,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAChC,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;CACD"}
1
+ {"version":3,"file":"DxfPropertyBase.js","sourceRoot":"","sources":["../src/DxfPropertyBase.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,9 @@ import { Entity } from '../Entity.js';
2
2
  import { ObjectType } from '../../Types/ObjectType.js';
3
3
  import { XYZ } from '../../Math/XYZ.js';
4
4
  import { BoundingBox } from '../../Math/BoundingBox.js';
5
+ import { AecBinRecord } from '../../Objects/AEC/AecBinRecord.js';
6
+ import { AecCleanupGroup } from '../../Objects/AEC/AecCleanupGroup.js';
7
+ import { AecWallStyle } from '../../Objects/AEC/AecWallStyle.js';
5
8
  export declare enum WallJustification {
6
9
  Left = 0,
7
10
  Center = 1,
@@ -10,9 +13,9 @@ export declare enum WallJustification {
10
13
  }
11
14
  export declare class Wall extends Entity {
12
15
  baseHeight: number;
13
- binRecord: any;
16
+ binRecord: AecBinRecord | null;
14
17
  binRecordHandle: number;
15
- cleanupGroup: any;
18
+ cleanupGroup: AecCleanupGroup | null;
16
19
  cleanupGroupHandle: number;
17
20
  endPoint: XYZ;
18
21
  height: number;
@@ -21,13 +24,13 @@ export declare class Wall extends Entity {
21
24
  normal: XYZ;
22
25
  rawData: Uint8Array | null;
23
26
  startPoint: XYZ;
24
- style: any;
27
+ style: AecWallStyle | null;
25
28
  version: number;
26
29
  width: number;
27
30
  get objectName(): string;
28
31
  get objectType(): ObjectType;
29
32
  get subclassMarker(): string;
30
33
  getBoundingBox(): BoundingBox;
31
- applyTransform(transform: any): void;
34
+ applyTransform(transform: unknown): void;
32
35
  }
33
36
  //# sourceMappingURL=Wall.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Wall.d.ts","sourceRoot":"","sources":["../../../src/Entities/AecObjects/Wall.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAGvD,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAGxD,oBAAY,iBAAiB;IAC3B,IAAI,IAAI;IACR,MAAM,IAAI;IACV,KAAK,IAAI;IACT,QAAQ,IAAI;CACb;AAED,qBAAa,IAAK,SAAQ,MAAM;IAC9B,UAAU,EAAE,MAAM,CAAK;IACvB,SAAS,EAAE,GAAG,CAAQ;IACtB,eAAe,EAAE,MAAM,CAAK;IAC5B,YAAY,EAAE,GAAG,CAAQ;IACzB,kBAAkB,EAAE,MAAM,CAAK;IAC/B,QAAQ,EAAE,GAAG,CAAa;IAC1B,MAAM,EAAE,MAAM,CAAK;IACnB,aAAa,EAAE,iBAAiB,CAA8B;IAC9D,MAAM,EAAE,MAAM,CAAK;IACnB,MAAM,EAAE,GAAG,CAAoB;IAC/B,OAAO,EAAE,UAAU,GAAG,IAAI,CAAQ;IAClC,UAAU,EAAE,GAAG,CAAa;IAC5B,KAAK,EAAE,GAAG,CAAQ;IAClB,OAAO,EAAE,MAAM,CAAK;IACpB,KAAK,EAAE,MAAM,CAAK;IAElB,IAAa,UAAU,IAAI,MAAM,CAAuC;IACxE,IAAa,UAAU,IAAI,UAAU,CAAgC;IACrE,IAAa,cAAc,IAAI,MAAM,CAAsC;IAE3E,cAAc,IAAI,WAAW;IAI7B,cAAc,CAAC,SAAS,EAAE,GAAG,GAAG,IAAI;CACrC"}
1
+ {"version":3,"file":"Wall.d.ts","sourceRoot":"","sources":["../../../src/Entities/AecObjects/Wall.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAGvD,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAEjE,oBAAY,iBAAiB;IAC3B,IAAI,IAAI;IACR,MAAM,IAAI;IACV,KAAK,IAAI;IACT,QAAQ,IAAI;CACb;AAED,qBAAa,IAAK,SAAQ,MAAM;IAC9B,UAAU,EAAE,MAAM,CAAK;IACvB,SAAS,EAAE,YAAY,GAAG,IAAI,CAAQ;IACtC,eAAe,EAAE,MAAM,CAAK;IAC5B,YAAY,EAAE,eAAe,GAAG,IAAI,CAAQ;IAC5C,kBAAkB,EAAE,MAAM,CAAK;IAC/B,QAAQ,EAAE,GAAG,CAAa;IAC1B,MAAM,EAAE,MAAM,CAAK;IACnB,aAAa,EAAE,iBAAiB,CAA8B;IAC9D,MAAM,EAAE,MAAM,CAAK;IACnB,MAAM,EAAE,GAAG,CAAoB;IAC/B,OAAO,EAAE,UAAU,GAAG,IAAI,CAAQ;IAClC,UAAU,EAAE,GAAG,CAAa;IAC5B,KAAK,EAAE,YAAY,GAAG,IAAI,CAAQ;IAClC,OAAO,EAAE,MAAM,CAAK;IACpB,KAAK,EAAE,MAAM,CAAK;IAElB,IAAa,UAAU,IAAI,MAAM,CAAuC;IACxE,IAAa,UAAU,IAAI,UAAU,CAAgC;IACrE,IAAa,cAAc,IAAI,MAAM,CAAsC;IAE3E,cAAc,IAAI,WAAW;IAI7B,cAAc,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI;CACzC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Wall.js","sourceRoot":"","sources":["../../../src/Entities/AecObjects/Wall.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAIxC,MAAM,CAAN,IAAY,iBAKX;AALD,WAAY,iBAAiB;IAC3B,yDAAQ,CAAA;IACR,6DAAU,CAAA;IACV,2DAAS,CAAA;IACT,iEAAY,CAAA;AACd,CAAC,EALW,iBAAiB,KAAjB,iBAAiB,QAK5B;AAED,MAAM,OAAO,IAAK,SAAQ,MAAM;IAC9B,UAAU,GAAW,CAAC,CAAC;IACvB,SAAS,GAAQ,IAAI,CAAC;IACtB,eAAe,GAAW,CAAC,CAAC;IAC5B,YAAY,GAAQ,IAAI,CAAC;IACzB,kBAAkB,GAAW,CAAC,CAAC;IAC/B,QAAQ,GAAQ,IAAI,GAAG,EAAE,CAAC;IAC1B,MAAM,GAAW,CAAC,CAAC;IACnB,aAAa,GAAsB,iBAAiB,CAAC,QAAQ,CAAC;IAC9D,MAAM,GAAW,CAAC,CAAC;IACnB,MAAM,GAAQ,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/B,OAAO,GAAsB,IAAI,CAAC;IAClC,UAAU,GAAQ,IAAI,GAAG,EAAE,CAAC;IAC5B,KAAK,GAAQ,IAAI,CAAC;IAClB,OAAO,GAAW,CAAC,CAAC;IACpB,KAAK,GAAW,CAAC,CAAC;IAElB,IAAa,UAAU,KAAa,OAAO,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC;IACxE,IAAa,UAAU,KAAiB,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;IACrE,IAAa,cAAc,KAAa,OAAO,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;IAE3E,cAAc;QACZ,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACrC,CAAC;IAED,cAAc,CAAC,SAAc,IAAsB,CAAC;CACrD"}
1
+ {"version":3,"file":"Wall.js","sourceRoot":"","sources":["../../../src/Entities/AecObjects/Wall.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAMxC,MAAM,CAAN,IAAY,iBAKX;AALD,WAAY,iBAAiB;IAC3B,yDAAQ,CAAA;IACR,6DAAU,CAAA;IACV,2DAAS,CAAA;IACT,iEAAY,CAAA;AACd,CAAC,EALW,iBAAiB,KAAjB,iBAAiB,QAK5B;AAED,MAAM,OAAO,IAAK,SAAQ,MAAM;IAC9B,UAAU,GAAW,CAAC,CAAC;IACvB,SAAS,GAAwB,IAAI,CAAC;IACtC,eAAe,GAAW,CAAC,CAAC;IAC5B,YAAY,GAA2B,IAAI,CAAC;IAC5C,kBAAkB,GAAW,CAAC,CAAC;IAC/B,QAAQ,GAAQ,IAAI,GAAG,EAAE,CAAC;IAC1B,MAAM,GAAW,CAAC,CAAC;IACnB,aAAa,GAAsB,iBAAiB,CAAC,QAAQ,CAAC;IAC9D,MAAM,GAAW,CAAC,CAAC;IACnB,MAAM,GAAQ,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/B,OAAO,GAAsB,IAAI,CAAC;IAClC,UAAU,GAAQ,IAAI,GAAG,EAAE,CAAC;IAC5B,KAAK,GAAwB,IAAI,CAAC;IAClC,OAAO,GAAW,CAAC,CAAC;IACpB,KAAK,GAAW,CAAC,CAAC;IAElB,IAAa,UAAU,KAAa,OAAO,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC;IACxE,IAAa,UAAU,KAAiB,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;IACrE,IAAa,cAAc,KAAa,OAAO,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;IAE3E,cAAc;QACZ,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACrC,CAAC;IAED,cAAc,CAAC,SAAkB,IAAsB,CAAC;CACzD"}
@@ -1,4 +1,5 @@
1
1
  import { Circle } from './Circle.js';
2
+ import { BoundingBox } from '../Math/BoundingBox.js';
2
3
  import { ObjectType } from '../Types/ObjectType.js';
3
4
  import { XYZ } from '../Math/XYZ.js';
4
5
  import { XY } from '../Math/XY.js';
@@ -19,8 +20,8 @@ export declare class Arc extends Circle {
19
20
  center: XY;
20
21
  radius: number;
21
22
  };
22
- applyTransform(transform: any): void;
23
- getBoundingBox(): any;
23
+ applyTransform(transform: unknown): void;
24
+ getBoundingBox(): BoundingBox | null;
24
25
  getEndVertices(): {
25
26
  start: XYZ;
26
27
  end: XYZ;
@@ -1 +1 @@
1
- {"version":3,"file":"Arc.d.ts","sourceRoot":"","sources":["../../src/Entities/Arc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAGrC,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAEnC,qBAAa,GAAI,SAAQ,MAAM;IAC9B,QAAQ,EAAE,MAAM,CAAW;IAE3B,IAAa,UAAU,IAAI,MAAM,CAEhC;IAED,IAAa,UAAU,IAAI,UAAU,CAEpC;IAED,UAAU,EAAE,MAAM,CAAO;IAEzB,IAAa,cAAc,IAAI,MAAM,CAEpC;IAED,IAAI,KAAK,IAAI,MAAM,CAOlB;gBAEW,MAAM,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM;IAgBvE,MAAM,CAAC,eAAe,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,GAAG;IAqB1D,gBAAgB;IAChB,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,GAAG,MAAM;IAkB3E,gBAAgB;IAChB,MAAM,CAAC,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAI/C,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG;QAAE,MAAM,EAAE,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAa1E,cAAc,CAAC,SAAS,EAAE,GAAG,GAAG,IAAI;IAIpC,cAAc,IAAI,GAAG;IAK9B,cAAc,IAAI;QAAE,KAAK,EAAE,GAAG,CAAC;QAAC,GAAG,EAAE,GAAG,CAAA;KAAE;IAOjC,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,GAAG,EAAE;CAOpD"}
1
+ {"version":3,"file":"Arc.d.ts","sourceRoot":"","sources":["../../src/Entities/Arc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAGrD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAGnC,qBAAa,GAAI,SAAQ,MAAM;IAC9B,QAAQ,EAAE,MAAM,CAAW;IAE3B,IAAa,UAAU,IAAI,MAAM,CAEhC;IAED,IAAa,UAAU,IAAI,UAAU,CAEpC;IAED,UAAU,EAAE,MAAM,CAAO;IAEzB,IAAa,cAAc,IAAI,MAAM,CAEpC;IAED,IAAI,KAAK,IAAI,MAAM,CAOlB;gBAEW,MAAM,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM;IAgBvE,MAAM,CAAC,eAAe,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,GAAG;IAqB1D,gBAAgB;IAChB,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,GAAG,MAAM;IAkB3E,gBAAgB;IAChB,MAAM,CAAC,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAI/C,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG;QAAE,MAAM,EAAE,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAa1E,cAAc,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI;IAUxC,cAAc,IAAI,WAAW,GAAG,IAAI;IAK7C,cAAc,IAAI;QAAE,KAAK,EAAE,GAAG,CAAC;QAAC,GAAG,EAAE,GAAG,CAAA;KAAE;IAMjC,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,GAAG,EAAE;CAsBpD"}
@@ -1,9 +1,11 @@
1
1
  import { Circle } from './Circle.js';
2
+ import { BoundingBox } from '../Math/BoundingBox.js';
2
3
  import { DxfFileToken } from '../DxfFileToken.js';
3
4
  import { DxfSubclassMarker } from '../DxfSubclassMarker.js';
4
5
  import { ObjectType } from '../Types/ObjectType.js';
5
6
  import { XYZ } from '../Math/XYZ.js';
6
7
  import { XY } from '../Math/XY.js';
8
+ import { Transform } from '../Math/Transform.js';
7
9
  export class Arc extends Circle {
8
10
  endAngle = Math.PI;
9
11
  get objectName() {
@@ -93,24 +95,40 @@ export class Arc extends Circle {
93
95
  return { center, radius };
94
96
  }
95
97
  applyTransform(transform) {
96
- // TODO: Transform operations not available
98
+ if (!(transform instanceof Transform)) {
99
+ return;
100
+ }
101
+ super.applyTransform(transform);
102
+ this.startAngle += transform.eulerRotation.z;
103
+ this.endAngle += transform.eulerRotation.z;
97
104
  }
98
105
  getBoundingBox() {
99
- // TODO: PolygonalVertexes/BoundingBox.FromPoints not available
100
- return null;
106
+ const points = this.polygonalVertexes(64);
107
+ return points.length > 0 ? BoundingBox.FromPoints(points) : null;
101
108
  }
102
109
  getEndVertices() {
103
- const start = new XYZ(this.center.x + this.radius * Math.cos(this.startAngle), this.center.y + this.radius * Math.sin(this.startAngle), 0);
104
- const end = new XYZ(this.center.x + this.radius * Math.cos(this.endAngle), this.center.y + this.radius * Math.sin(this.endAngle), 0);
105
- // TODO: Matrix4.GetArbitraryAxis transform not applied
110
+ const start = this.polarCoordinateRelativeToCenter(this.startAngle);
111
+ const end = this.polarCoordinateRelativeToCenter(this.endAngle);
106
112
  return { start, end };
107
113
  }
108
114
  polygonalVertexes(precision) {
109
115
  if (precision < 2) {
110
116
  throw new Error('The arc precision must be equal or greater than two.');
111
117
  }
112
- // TODO: CurveExtensions.PolygonalVertexes not available
113
- return [];
118
+ let start = this.startAngle;
119
+ let end = this.endAngle;
120
+ if (end < start) {
121
+ end += Math.PI * 2;
122
+ }
123
+ const stepCount = Math.max(2, precision);
124
+ const step = (end - start) / (stepCount - 1);
125
+ const vertexes = [];
126
+ for (let index = 0; index < stepCount; index++) {
127
+ vertexes.push(this.polarCoordinateRelativeToCenter(start + step * index));
128
+ }
129
+ vertexes[0] = this.polarCoordinateRelativeToCenter(this.startAngle);
130
+ vertexes[vertexes.length - 1] = this.polarCoordinateRelativeToCenter(this.endAngle);
131
+ return vertexes;
114
132
  }
115
133
  }
116
134
  //# sourceMappingURL=Arc.js.map