@mlightcad/cad-simple-viewer 1.4.13 → 1.5.1

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 (465) hide show
  1. package/dist/index.js +26532 -44513
  2. package/dist/index.umd.cjs +163 -52
  3. package/dist/libredwg-parser-worker.js +4378 -7481
  4. package/dist/mtext-renderer-worker.js +4107 -3865
  5. package/dist/viewer-runtime.iife.js +3879 -0
  6. package/lib/app/AcApAnnotation.js +4 -4
  7. package/lib/app/AcApAnnotation.js.map +1 -1
  8. package/lib/app/AcApDocManager.d.ts +59 -6
  9. package/lib/app/AcApDocManager.d.ts.map +1 -1
  10. package/lib/app/AcApDocManager.js +188 -28
  11. package/lib/app/AcApDocManager.js.map +1 -1
  12. package/lib/command/AcApLogCmd.d.ts +1 -1
  13. package/lib/command/AcApLogCmd.d.ts.map +1 -1
  14. package/lib/command/AcApLogCmd.js +1 -1
  15. package/lib/command/AcApLogCmd.js.map +1 -1
  16. package/lib/command/AcApOpenCmd.d.ts +1 -1
  17. package/lib/command/AcApOpenCmd.d.ts.map +1 -1
  18. package/lib/command/AcApOpenCmd.js +1 -2
  19. package/lib/command/AcApOpenCmd.js.map +1 -1
  20. package/lib/command/AcApPanCmd.d.ts +1 -1
  21. package/lib/command/AcApPanCmd.d.ts.map +1 -1
  22. package/lib/command/AcApPanCmd.js +1 -2
  23. package/lib/command/AcApPanCmd.js.map +1 -1
  24. package/lib/command/AcApQNewCmd.d.ts +1 -1
  25. package/lib/command/AcApQNewCmd.d.ts.map +1 -1
  26. package/lib/command/AcApQNewCmd.js +1 -1
  27. package/lib/command/AcApQNewCmd.js.map +1 -1
  28. package/lib/command/AcApRegenCmd.d.ts +1 -1
  29. package/lib/command/AcApRegenCmd.d.ts.map +1 -1
  30. package/lib/command/AcApRegenCmd.js +1 -1
  31. package/lib/command/AcApRegenCmd.js.map +1 -1
  32. package/lib/command/AcApSelectCmd.d.ts +1 -1
  33. package/lib/command/AcApSelectCmd.d.ts.map +1 -1
  34. package/lib/command/AcApSelectCmd.js +1 -2
  35. package/lib/command/AcApSelectCmd.js.map +1 -1
  36. package/lib/command/AcApZoomCmd.js +3 -3
  37. package/lib/command/AcApZoomCmd.js.map +1 -1
  38. package/lib/command/{AcApConvertToDxfCmd.d.ts → convert/AcApConvertToDxfCmd.d.ts} +2 -2
  39. package/lib/command/convert/AcApConvertToDxfCmd.d.ts.map +1 -0
  40. package/lib/command/{AcApConvertToDxfCmd.js → convert/AcApConvertToDxfCmd.js} +1 -1
  41. package/lib/command/convert/AcApConvertToDxfCmd.js.map +1 -0
  42. package/lib/command/{AcApConvertToPngCmd.d.ts → convert/AcApConvertToPngCmd.d.ts} +23 -5
  43. package/lib/command/convert/AcApConvertToPngCmd.d.ts.map +1 -0
  44. package/lib/command/{AcApConvertToPngCmd.js → convert/AcApConvertToPngCmd.js} +88 -15
  45. package/lib/command/convert/AcApConvertToPngCmd.js.map +1 -0
  46. package/lib/command/{AcApConvertToSvgCmd.d.ts → convert/AcApConvertToSvgCmd.d.ts} +2 -2
  47. package/lib/command/convert/AcApConvertToSvgCmd.d.ts.map +1 -0
  48. package/lib/command/{AcApConvertToSvgCmd.js → convert/AcApConvertToSvgCmd.js} +1 -1
  49. package/lib/command/convert/AcApConvertToSvgCmd.js.map +1 -0
  50. package/lib/command/convert/AcApDxfConvertor.d.ts.map +1 -0
  51. package/lib/command/{AcApDxfConvertor.js → convert/AcApDxfConvertor.js} +1 -1
  52. package/lib/command/convert/AcApDxfConvertor.js.map +1 -0
  53. package/lib/command/convert/AcApExportHtmlCmd.d.ts +22 -0
  54. package/lib/command/convert/AcApExportHtmlCmd.d.ts.map +1 -0
  55. package/lib/command/convert/AcApExportHtmlCmd.js +93 -0
  56. package/lib/command/convert/AcApExportHtmlCmd.js.map +1 -0
  57. package/lib/command/convert/AcApHtmlConvertor.d.ts +61 -0
  58. package/lib/command/convert/AcApHtmlConvertor.d.ts.map +1 -0
  59. package/lib/command/convert/AcApHtmlConvertor.js +223 -0
  60. package/lib/command/convert/AcApHtmlConvertor.js.map +1 -0
  61. package/lib/command/convert/AcApHtmlSnapshotBuilder.d.ts +65 -0
  62. package/lib/command/convert/AcApHtmlSnapshotBuilder.d.ts.map +1 -0
  63. package/lib/command/convert/AcApHtmlSnapshotBuilder.js +301 -0
  64. package/lib/command/convert/AcApHtmlSnapshotBuilder.js.map +1 -0
  65. package/lib/command/{AcApPngConvertor.d.ts → convert/AcApPngConvertor.d.ts} +20 -35
  66. package/lib/command/convert/AcApPngConvertor.d.ts.map +1 -0
  67. package/lib/command/{AcApPngConvertor.js → convert/AcApPngConvertor.js} +99 -71
  68. package/lib/command/convert/AcApPngConvertor.js.map +1 -0
  69. package/lib/command/convert/AcApSvgConvertor.d.ts.map +1 -0
  70. package/lib/command/{AcApSvgConvertor.js → convert/AcApSvgConvertor.js} +1 -1
  71. package/lib/command/convert/AcApSvgConvertor.js.map +1 -0
  72. package/lib/command/convert/index.d.ts +9 -0
  73. package/lib/command/convert/index.d.ts.map +1 -0
  74. package/lib/command/convert/index.js +9 -0
  75. package/lib/command/convert/index.js.map +1 -0
  76. package/lib/command/draw/AcApArcCmd.d.ts +297 -0
  77. package/lib/command/draw/AcApArcCmd.d.ts.map +1 -0
  78. package/lib/command/{AcApArcCmd.js → draw/AcApArcCmd.js} +839 -32
  79. package/lib/command/draw/AcApArcCmd.js.map +1 -0
  80. package/lib/command/{AcApCircleCmd.d.ts → draw/AcApCircleCmd.d.ts} +2 -2
  81. package/lib/command/draw/AcApCircleCmd.d.ts.map +1 -0
  82. package/lib/command/{AcApCircleCmd.js → draw/AcApCircleCmd.js} +8 -9
  83. package/lib/command/draw/AcApCircleCmd.js.map +1 -0
  84. package/lib/command/{AcApDimLinearCmd.d.ts → draw/AcApDimLinearCmd.d.ts} +2 -2
  85. package/lib/command/draw/AcApDimLinearCmd.d.ts.map +1 -0
  86. package/lib/command/{AcApDimLinearCmd.js → draw/AcApDimLinearCmd.js} +3 -3
  87. package/lib/command/draw/AcApDimLinearCmd.js.map +1 -0
  88. package/lib/command/{AcApEllipseCmd.d.ts → draw/AcApEllipseCmd.d.ts} +2 -2
  89. package/lib/command/draw/AcApEllipseCmd.d.ts.map +1 -0
  90. package/lib/command/{AcApEllipseCmd.js → draw/AcApEllipseCmd.js} +7 -9
  91. package/lib/command/draw/AcApEllipseCmd.js.map +1 -0
  92. package/lib/command/{AcApHatchCmd.d.ts → draw/AcApHatchCmd.d.ts} +54 -17
  93. package/lib/command/draw/AcApHatchCmd.d.ts.map +1 -0
  94. package/lib/command/{AcApHatchCmd.js → draw/AcApHatchCmd.js} +122 -30
  95. package/lib/command/draw/AcApHatchCmd.js.map +1 -0
  96. package/lib/command/{AcApLineCmd.d.ts → draw/AcApLineCmd.d.ts} +2 -2
  97. package/lib/command/draw/AcApLineCmd.d.ts.map +1 -0
  98. package/lib/command/{AcApLineCmd.js → draw/AcApLineCmd.js} +3 -3
  99. package/lib/command/draw/AcApLineCmd.js.map +1 -0
  100. package/lib/command/draw/AcApMLineCmd.d.ts +31 -0
  101. package/lib/command/draw/AcApMLineCmd.d.ts.map +1 -0
  102. package/lib/command/draw/AcApMLineCmd.js +528 -0
  103. package/lib/command/draw/AcApMLineCmd.js.map +1 -0
  104. package/lib/command/{AcApMTextCmd.d.ts → draw/AcApMTextCmd.d.ts} +2 -2
  105. package/lib/command/draw/AcApMTextCmd.d.ts.map +1 -0
  106. package/lib/command/{AcApMTextCmd.js → draw/AcApMTextCmd.js} +6 -4
  107. package/lib/command/draw/AcApMTextCmd.js.map +1 -0
  108. package/lib/command/draw/AcApPointCmd.d.ts +16 -0
  109. package/lib/command/draw/AcApPointCmd.d.ts.map +1 -0
  110. package/lib/command/draw/AcApPointCmd.js +98 -0
  111. package/lib/command/draw/AcApPointCmd.js.map +1 -0
  112. package/lib/command/{AcApPolygonCmd.d.ts → draw/AcApPolygonCmd.d.ts} +2 -2
  113. package/lib/command/draw/AcApPolygonCmd.d.ts.map +1 -0
  114. package/lib/command/{AcApPolygonCmd.js → draw/AcApPolygonCmd.js} +7 -8
  115. package/lib/command/draw/AcApPolygonCmd.js.map +1 -0
  116. package/lib/command/{AcApPolylineCmd.d.ts → draw/AcApPolylineCmd.d.ts} +51 -2
  117. package/lib/command/draw/AcApPolylineCmd.d.ts.map +1 -0
  118. package/lib/command/{AcApPolylineCmd.js → draw/AcApPolylineCmd.js} +203 -21
  119. package/lib/command/draw/AcApPolylineCmd.js.map +1 -0
  120. package/lib/command/draw/AcApRayCmd.d.ts +10 -0
  121. package/lib/command/draw/AcApRayCmd.d.ts.map +1 -0
  122. package/lib/command/draw/AcApRayCmd.js +144 -0
  123. package/lib/command/draw/AcApRayCmd.js.map +1 -0
  124. package/lib/command/{AcApRectCmd.d.ts → draw/AcApRectCmd.d.ts} +2 -2
  125. package/lib/command/draw/AcApRectCmd.d.ts.map +1 -0
  126. package/lib/command/{AcApRectCmd.js → draw/AcApRectCmd.js} +12 -13
  127. package/lib/command/draw/AcApRectCmd.js.map +1 -0
  128. package/lib/command/{AcApSplineCmd.d.ts → draw/AcApSplineCmd.d.ts} +2 -2
  129. package/lib/command/draw/AcApSplineCmd.d.ts.map +1 -0
  130. package/lib/command/{AcApSplineCmd.js → draw/AcApSplineCmd.js} +6 -9
  131. package/lib/command/draw/AcApSplineCmd.js.map +1 -0
  132. package/lib/command/draw/AcApXLineCmd.d.ts +25 -0
  133. package/lib/command/draw/AcApXLineCmd.d.ts.map +1 -0
  134. package/lib/command/draw/AcApXLineCmd.js +209 -0
  135. package/lib/command/draw/AcApXLineCmd.js.map +1 -0
  136. package/lib/command/draw/index.d.ts +16 -0
  137. package/lib/command/draw/index.d.ts.map +1 -0
  138. package/lib/command/draw/index.js +16 -0
  139. package/lib/command/draw/index.js.map +1 -0
  140. package/lib/command/index.d.ts +6 -32
  141. package/lib/command/index.d.ts.map +1 -1
  142. package/lib/command/index.js +6 -32
  143. package/lib/command/index.js.map +1 -1
  144. package/lib/command/layer/AcApLayerCloseCmd.d.ts +23 -0
  145. package/lib/command/layer/AcApLayerCloseCmd.d.ts.map +1 -0
  146. package/lib/command/layer/AcApLayerCloseCmd.js +86 -0
  147. package/lib/command/layer/AcApLayerCloseCmd.js.map +1 -0
  148. package/lib/command/{AcApLayerCmd.d.ts → layer/AcApLayerCmd.d.ts} +3 -5
  149. package/lib/command/layer/AcApLayerCmd.d.ts.map +1 -0
  150. package/lib/command/{AcApLayerCmd.js → layer/AcApLayerCmd.js} +5 -8
  151. package/lib/command/layer/AcApLayerCmd.js.map +1 -0
  152. package/lib/command/layer/AcApLayerCurCmd.d.ts +43 -0
  153. package/lib/command/layer/AcApLayerCurCmd.d.ts.map +1 -0
  154. package/lib/command/layer/AcApLayerCurCmd.js +183 -0
  155. package/lib/command/layer/AcApLayerCurCmd.js.map +1 -0
  156. package/lib/command/layer/AcApLayerDelCmd.d.ts +112 -0
  157. package/lib/command/layer/AcApLayerDelCmd.d.ts.map +1 -0
  158. package/lib/command/layer/AcApLayerDelCmd.js +446 -0
  159. package/lib/command/layer/AcApLayerDelCmd.js.map +1 -0
  160. package/lib/command/layer/AcApLayerFreezeCmd.d.ts +103 -0
  161. package/lib/command/layer/AcApLayerFreezeCmd.d.ts.map +1 -0
  162. package/lib/command/layer/AcApLayerFreezeCmd.js +398 -0
  163. package/lib/command/layer/AcApLayerFreezeCmd.js.map +1 -0
  164. package/lib/command/layer/AcApLayerIsoCmd.d.ts +99 -0
  165. package/lib/command/layer/AcApLayerIsoCmd.d.ts.map +1 -0
  166. package/lib/command/layer/AcApLayerIsoCmd.js +485 -0
  167. package/lib/command/layer/AcApLayerIsoCmd.js.map +1 -0
  168. package/lib/command/layer/AcApLayerIsoState.d.ts +68 -0
  169. package/lib/command/layer/AcApLayerIsoState.d.ts.map +1 -0
  170. package/lib/command/layer/AcApLayerIsoState.js +53 -0
  171. package/lib/command/layer/AcApLayerIsoState.js.map +1 -0
  172. package/lib/command/layer/AcApLayerLockCmd.d.ts +50 -0
  173. package/lib/command/layer/AcApLayerLockCmd.d.ts.map +1 -0
  174. package/lib/command/layer/AcApLayerLockCmd.js +175 -0
  175. package/lib/command/layer/AcApLayerLockCmd.js.map +1 -0
  176. package/lib/command/layer/AcApLayerOffCmd.d.ts +95 -0
  177. package/lib/command/layer/AcApLayerOffCmd.d.ts.map +1 -0
  178. package/lib/command/layer/AcApLayerOffCmd.js +384 -0
  179. package/lib/command/layer/AcApLayerOffCmd.js.map +1 -0
  180. package/lib/command/layer/AcApLayerOnCmd.d.ts +30 -0
  181. package/lib/command/layer/AcApLayerOnCmd.d.ts.map +1 -0
  182. package/lib/command/layer/AcApLayerOnCmd.js +138 -0
  183. package/lib/command/layer/AcApLayerOnCmd.js.map +1 -0
  184. package/lib/command/layer/AcApLayerPCmd.d.ts +83 -0
  185. package/lib/command/layer/AcApLayerPCmd.d.ts.map +1 -0
  186. package/lib/command/layer/AcApLayerPCmd.js +241 -0
  187. package/lib/command/layer/AcApLayerPCmd.js.map +1 -0
  188. package/lib/command/layer/AcApLayerThawCmd.d.ts +37 -0
  189. package/lib/command/layer/AcApLayerThawCmd.d.ts.map +1 -0
  190. package/lib/command/layer/AcApLayerThawCmd.js +150 -0
  191. package/lib/command/layer/AcApLayerThawCmd.js.map +1 -0
  192. package/lib/command/layer/AcApLayerUnisoCmd.d.ts +52 -0
  193. package/lib/command/layer/AcApLayerUnisoCmd.d.ts.map +1 -0
  194. package/lib/command/layer/AcApLayerUnisoCmd.js +199 -0
  195. package/lib/command/layer/AcApLayerUnisoCmd.js.map +1 -0
  196. package/lib/command/layer/AcApLayerUnlockCmd.d.ts +50 -0
  197. package/lib/command/layer/AcApLayerUnlockCmd.d.ts.map +1 -0
  198. package/lib/command/layer/AcApLayerUnlockCmd.js +175 -0
  199. package/lib/command/layer/AcApLayerUnlockCmd.js.map +1 -0
  200. package/lib/command/layer/index.d.ts +14 -0
  201. package/lib/command/layer/index.d.ts.map +1 -0
  202. package/lib/command/layer/index.js +14 -0
  203. package/lib/command/layer/index.js.map +1 -0
  204. package/lib/command/measure/AcApClearMeasurementsCmd.d.ts +24 -0
  205. package/lib/command/measure/AcApClearMeasurementsCmd.d.ts.map +1 -0
  206. package/lib/command/{AcApClearMeasurementsCmd.js → measure/AcApClearMeasurementsCmd.js} +16 -5
  207. package/lib/command/measure/AcApClearMeasurementsCmd.js.map +1 -0
  208. package/lib/command/{AcApMeasureAngleCmd.d.ts → measure/AcApMeasureAngleCmd.d.ts} +2 -2
  209. package/lib/command/measure/AcApMeasureAngleCmd.d.ts.map +1 -0
  210. package/lib/command/{AcApMeasureAngleCmd.js → measure/AcApMeasureAngleCmd.js} +18 -9
  211. package/lib/command/measure/AcApMeasureAngleCmd.js.map +1 -0
  212. package/lib/command/{AcApMeasureArcCmd.d.ts → measure/AcApMeasureArcCmd.d.ts} +2 -2
  213. package/lib/command/measure/AcApMeasureArcCmd.d.ts.map +1 -0
  214. package/lib/command/{AcApMeasureArcCmd.js → measure/AcApMeasureArcCmd.js} +14 -7
  215. package/lib/command/measure/AcApMeasureArcCmd.js.map +1 -0
  216. package/lib/command/{AcApMeasureAreaCmd.d.ts → measure/AcApMeasureAreaCmd.d.ts} +2 -2
  217. package/lib/command/measure/AcApMeasureAreaCmd.d.ts.map +1 -0
  218. package/lib/command/{AcApMeasureAreaCmd.js → measure/AcApMeasureAreaCmd.js} +14 -7
  219. package/lib/command/measure/AcApMeasureAreaCmd.js.map +1 -0
  220. package/lib/command/{AcApMeasureDistanceCmd.d.ts → measure/AcApMeasureDistanceCmd.d.ts} +5 -4
  221. package/lib/command/measure/AcApMeasureDistanceCmd.d.ts.map +1 -0
  222. package/lib/command/{AcApMeasureDistanceCmd.js → measure/AcApMeasureDistanceCmd.js} +17 -9
  223. package/lib/command/measure/AcApMeasureDistanceCmd.js.map +1 -0
  224. package/lib/command/measure/index.d.ts +6 -0
  225. package/lib/command/measure/index.d.ts.map +1 -0
  226. package/lib/command/measure/index.js +6 -0
  227. package/lib/command/measure/index.js.map +1 -0
  228. package/lib/command/modify/AcApCopyCmd.d.ts +94 -0
  229. package/lib/command/modify/AcApCopyCmd.d.ts.map +1 -0
  230. package/lib/command/modify/AcApCopyCmd.js +549 -0
  231. package/lib/command/modify/AcApCopyCmd.js.map +1 -0
  232. package/lib/command/{AcApEraseCmd.d.ts → modify/AcApEraseCmd.d.ts} +2 -2
  233. package/lib/command/modify/AcApEraseCmd.d.ts.map +1 -0
  234. package/lib/command/{AcApEraseCmd.js → modify/AcApEraseCmd.js} +3 -5
  235. package/lib/command/modify/AcApEraseCmd.js.map +1 -0
  236. package/lib/command/{AcApMoveCmd.d.ts → modify/AcApMoveCmd.d.ts} +2 -2
  237. package/lib/command/modify/AcApMoveCmd.d.ts.map +1 -0
  238. package/lib/command/{AcApMoveCmd.js → modify/AcApMoveCmd.js} +3 -4
  239. package/lib/command/modify/AcApMoveCmd.js.map +1 -0
  240. package/lib/command/modify/AcApOffsetCmd.d.ts +30 -0
  241. package/lib/command/modify/AcApOffsetCmd.d.ts.map +1 -0
  242. package/lib/command/modify/AcApOffsetCmd.js +424 -0
  243. package/lib/command/modify/AcApOffsetCmd.js.map +1 -0
  244. package/lib/command/modify/AcApRotateCmd.d.ts +81 -0
  245. package/lib/command/modify/AcApRotateCmd.d.ts.map +1 -0
  246. package/lib/command/modify/AcApRotateCmd.js +486 -0
  247. package/lib/command/modify/AcApRotateCmd.js.map +1 -0
  248. package/lib/command/modify/index.d.ts +6 -0
  249. package/lib/command/modify/index.d.ts.map +1 -0
  250. package/lib/command/modify/index.js +6 -0
  251. package/lib/command/modify/index.js.map +1 -0
  252. package/lib/command/{AcApBaseRevCmd.d.ts → review/AcApBaseRevCmd.d.ts} +2 -2
  253. package/lib/command/review/AcApBaseRevCmd.d.ts.map +1 -0
  254. package/lib/command/{AcApBaseRevCmd.js → review/AcApBaseRevCmd.js} +2 -2
  255. package/lib/command/review/AcApBaseRevCmd.js.map +1 -0
  256. package/lib/command/{AcApRevCircleCmd.d.ts → review/AcApRevCircleCmd.d.ts} +1 -1
  257. package/lib/command/review/AcApRevCircleCmd.d.ts.map +1 -0
  258. package/lib/command/{AcApRevCircleCmd.js → review/AcApRevCircleCmd.js} +8 -5
  259. package/lib/command/review/AcApRevCircleCmd.js.map +1 -0
  260. package/lib/command/{AcApRevCloudCmd.d.ts → review/AcApRevCloudCmd.d.ts} +2 -2
  261. package/lib/command/review/AcApRevCloudCmd.d.ts.map +1 -0
  262. package/lib/command/{AcApRevCloudCmd.js → review/AcApRevCloudCmd.js} +3 -3
  263. package/lib/command/review/AcApRevCloudCmd.js.map +1 -0
  264. package/lib/command/{AcApRevRectCmd.d.ts → review/AcApRevRectCmd.d.ts} +1 -1
  265. package/lib/command/review/AcApRevRectCmd.d.ts.map +1 -0
  266. package/lib/command/{AcApRevRectCmd.js → review/AcApRevRectCmd.js} +3 -3
  267. package/lib/command/review/AcApRevRectCmd.js.map +1 -0
  268. package/lib/command/{AcApRevVisibilityCmd.d.ts → review/AcApRevVisibilityCmd.d.ts} +1 -1
  269. package/lib/command/review/AcApRevVisibilityCmd.d.ts.map +1 -0
  270. package/lib/command/{AcApRevVisibilityCmd.js → review/AcApRevVisibilityCmd.js} +2 -2
  271. package/lib/command/review/AcApRevVisibilityCmd.js.map +1 -0
  272. package/lib/command/{AcApSketchCmd.d.ts → review/AcApSketchCmd.d.ts} +2 -2
  273. package/lib/command/review/AcApSketchCmd.d.ts.map +1 -0
  274. package/lib/command/{AcApSketchCmd.js → review/AcApSketchCmd.js} +3 -3
  275. package/lib/command/review/AcApSketchCmd.js.map +1 -0
  276. package/lib/command/review/index.d.ts +7 -0
  277. package/lib/command/review/index.d.ts.map +1 -0
  278. package/lib/command/review/index.js +7 -0
  279. package/lib/command/review/index.js.map +1 -0
  280. package/lib/editor/global/eventBus.d.ts +4 -6
  281. package/lib/editor/global/eventBus.d.ts.map +1 -1
  282. package/lib/editor/global/eventBus.js.map +1 -1
  283. package/lib/editor/input/AcEdSelectionFilter.js +7 -6
  284. package/lib/editor/input/AcEdSelectionFilter.js.map +1 -1
  285. package/lib/editor/input/AcEditor.d.ts +17 -0
  286. package/lib/editor/input/AcEditor.d.ts.map +1 -1
  287. package/lib/editor/input/AcEditor.js +23 -0
  288. package/lib/editor/input/AcEditor.js.map +1 -1
  289. package/lib/editor/input/prompt/AcEdPromptBoxOptions.d.ts +6 -0
  290. package/lib/editor/input/prompt/AcEdPromptBoxOptions.d.ts.map +1 -1
  291. package/lib/editor/input/prompt/AcEdPromptBoxOptions.js +16 -0
  292. package/lib/editor/input/prompt/AcEdPromptBoxOptions.js.map +1 -1
  293. package/lib/editor/input/prompt/AcEdPromptDistanceOptions.d.ts.map +1 -1
  294. package/lib/editor/input/prompt/AcEdPromptDistanceOptions.js +1 -1
  295. package/lib/editor/input/prompt/AcEdPromptDistanceOptions.js.map +1 -1
  296. package/lib/editor/input/prompt/AcEdPromptPointOptions.d.ts +6 -0
  297. package/lib/editor/input/prompt/AcEdPromptPointOptions.d.ts.map +1 -1
  298. package/lib/editor/input/prompt/AcEdPromptPointOptions.js +16 -0
  299. package/lib/editor/input/prompt/AcEdPromptPointOptions.js.map +1 -1
  300. package/lib/editor/input/ui/AcEdCommandLine.d.ts +25 -23
  301. package/lib/editor/input/ui/AcEdCommandLine.d.ts.map +1 -1
  302. package/lib/editor/input/ui/AcEdCommandLine.js +101 -43
  303. package/lib/editor/input/ui/AcEdCommandLine.js.map +1 -1
  304. package/lib/editor/input/ui/AcEdFloatingInput.d.ts +9 -0
  305. package/lib/editor/input/ui/AcEdFloatingInput.d.ts.map +1 -1
  306. package/lib/editor/input/ui/AcEdFloatingInput.js +25 -5
  307. package/lib/editor/input/ui/AcEdFloatingInput.js.map +1 -1
  308. package/lib/editor/input/ui/AcEdInputManager.d.ts +46 -6
  309. package/lib/editor/input/ui/AcEdInputManager.d.ts.map +1 -1
  310. package/lib/editor/input/ui/AcEdInputManager.js +153 -43
  311. package/lib/editor/input/ui/AcEdInputManager.js.map +1 -1
  312. package/lib/editor/input/ui/AcEdMTextEditor.d.ts +67 -2
  313. package/lib/editor/input/ui/AcEdMTextEditor.d.ts.map +1 -1
  314. package/lib/editor/input/ui/AcEdMTextEditor.js +210 -19
  315. package/lib/editor/input/ui/AcEdMTextEditor.js.map +1 -1
  316. package/lib/editor/input/ui/AcEdMessageType.d.ts +10 -0
  317. package/lib/editor/input/ui/AcEdMessageType.d.ts.map +1 -0
  318. package/lib/editor/input/ui/AcEdMessageType.js +2 -0
  319. package/lib/editor/input/ui/AcEdMessageType.js.map +1 -0
  320. package/lib/editor/input/ui/AcEdRubberBand.d.ts.map +1 -1
  321. package/lib/editor/input/ui/AcEdRubberBand.js +16 -8
  322. package/lib/editor/input/ui/AcEdRubberBand.js.map +1 -1
  323. package/lib/editor/input/ui/index.d.ts +1 -0
  324. package/lib/editor/input/ui/index.d.ts.map +1 -1
  325. package/lib/editor/input/ui/index.js +1 -0
  326. package/lib/editor/input/ui/index.js.map +1 -1
  327. package/lib/editor/view/AcEdBaseView.d.ts +3 -8
  328. package/lib/editor/view/AcEdBaseView.d.ts.map +1 -1
  329. package/lib/editor/view/AcEdBaseView.js +3 -5
  330. package/lib/editor/view/AcEdBaseView.js.map +1 -1
  331. package/lib/editor/view/AcEdHoverController.d.ts +2 -3
  332. package/lib/editor/view/AcEdHoverController.d.ts.map +1 -1
  333. package/lib/editor/view/AcEdHoverController.js +7 -0
  334. package/lib/editor/view/AcEdHoverController.js.map +1 -1
  335. package/lib/editor/view/AcEdSelectionAction.d.ts +108 -0
  336. package/lib/editor/view/AcEdSelectionAction.d.ts.map +1 -0
  337. package/lib/editor/view/AcEdSelectionAction.js +74 -0
  338. package/lib/editor/view/AcEdSelectionAction.js.map +1 -0
  339. package/lib/editor/view/index.d.ts +1 -0
  340. package/lib/editor/view/index.d.ts.map +1 -1
  341. package/lib/editor/view/index.js +1 -0
  342. package/lib/editor/view/index.js.map +1 -1
  343. package/lib/i18n/en/command.d.ts +187 -13
  344. package/lib/i18n/en/command.d.ts.map +1 -1
  345. package/lib/i18n/en/command.js +195 -21
  346. package/lib/i18n/en/command.js.map +1 -1
  347. package/lib/i18n/en/jig.d.ts +579 -212
  348. package/lib/i18n/en/jig.d.ts.map +1 -1
  349. package/lib/i18n/en/jig.js +669 -302
  350. package/lib/i18n/en/jig.js.map +1 -1
  351. package/lib/i18n/zh/command.d.ts +187 -13
  352. package/lib/i18n/zh/command.d.ts.map +1 -1
  353. package/lib/i18n/zh/command.js +196 -22
  354. package/lib/i18n/zh/command.js.map +1 -1
  355. package/lib/i18n/zh/jig.d.ts +579 -212
  356. package/lib/i18n/zh/jig.d.ts.map +1 -1
  357. package/lib/i18n/zh/jig.js +668 -301
  358. package/lib/i18n/zh/jig.js.map +1 -1
  359. package/lib/index.d.ts +2 -1
  360. package/lib/index.d.ts.map +1 -1
  361. package/lib/index.js +2 -1
  362. package/lib/index.js.map +1 -1
  363. package/lib/spatialIndex/AcTrHierarchicalSpatialIndex.d.ts +136 -2
  364. package/lib/spatialIndex/AcTrHierarchicalSpatialIndex.d.ts.map +1 -1
  365. package/lib/spatialIndex/AcTrHierarchicalSpatialIndex.js +154 -16
  366. package/lib/spatialIndex/AcTrHierarchicalSpatialIndex.js.map +1 -1
  367. package/lib/util/AcApFontUtil.d.ts +69 -0
  368. package/lib/util/AcApFontUtil.d.ts.map +1 -0
  369. package/lib/util/AcApFontUtil.js +161 -0
  370. package/lib/util/AcApFontUtil.js.map +1 -0
  371. package/lib/util/index.d.ts +2 -0
  372. package/lib/util/index.d.ts.map +1 -1
  373. package/lib/util/index.js +2 -0
  374. package/lib/util/index.js.map +1 -1
  375. package/lib/util/yieldToMain.d.ts +5 -0
  376. package/lib/util/yieldToMain.d.ts.map +1 -0
  377. package/lib/util/yieldToMain.js +11 -0
  378. package/lib/util/yieldToMain.js.map +1 -0
  379. package/lib/view/AcTrLayout.d.ts +17 -0
  380. package/lib/view/AcTrLayout.d.ts.map +1 -1
  381. package/lib/view/AcTrLayout.js +34 -2
  382. package/lib/view/AcTrLayout.js.map +1 -1
  383. package/lib/view/AcTrLayoutView.d.ts +12 -0
  384. package/lib/view/AcTrLayoutView.d.ts.map +1 -1
  385. package/lib/view/AcTrLayoutView.js +18 -0
  386. package/lib/view/AcTrLayoutView.js.map +1 -1
  387. package/lib/view/AcTrPickResultUtil.d.ts +4 -0
  388. package/lib/view/AcTrPickResultUtil.d.ts.map +1 -0
  389. package/lib/view/AcTrPickResultUtil.js +54 -0
  390. package/lib/view/AcTrPickResultUtil.js.map +1 -0
  391. package/lib/view/AcTrScene.d.ts +38 -6
  392. package/lib/view/AcTrScene.d.ts.map +1 -1
  393. package/lib/view/AcTrScene.js +57 -30
  394. package/lib/view/AcTrScene.js.map +1 -1
  395. package/lib/view/AcTrView2d.d.ts +191 -0
  396. package/lib/view/AcTrView2d.d.ts.map +1 -1
  397. package/lib/view/AcTrView2d.js +795 -137
  398. package/lib/view/AcTrView2d.js.map +1 -1
  399. package/package.json +14 -8
  400. package/lib/command/AcApArcCmd.d.ts +0 -140
  401. package/lib/command/AcApArcCmd.d.ts.map +0 -1
  402. package/lib/command/AcApArcCmd.js.map +0 -1
  403. package/lib/command/AcApBaseRevCmd.d.ts.map +0 -1
  404. package/lib/command/AcApBaseRevCmd.js.map +0 -1
  405. package/lib/command/AcApCircleCmd.d.ts.map +0 -1
  406. package/lib/command/AcApCircleCmd.js.map +0 -1
  407. package/lib/command/AcApClearMeasurementsCmd.d.ts +0 -13
  408. package/lib/command/AcApClearMeasurementsCmd.d.ts.map +0 -1
  409. package/lib/command/AcApClearMeasurementsCmd.js.map +0 -1
  410. package/lib/command/AcApConvertToDxfCmd.d.ts.map +0 -1
  411. package/lib/command/AcApConvertToDxfCmd.js.map +0 -1
  412. package/lib/command/AcApConvertToPngCmd.d.ts.map +0 -1
  413. package/lib/command/AcApConvertToPngCmd.js.map +0 -1
  414. package/lib/command/AcApConvertToSvgCmd.d.ts.map +0 -1
  415. package/lib/command/AcApConvertToSvgCmd.js.map +0 -1
  416. package/lib/command/AcApDimLinearCmd.d.ts.map +0 -1
  417. package/lib/command/AcApDimLinearCmd.js.map +0 -1
  418. package/lib/command/AcApDxfConvertor.d.ts.map +0 -1
  419. package/lib/command/AcApDxfConvertor.js.map +0 -1
  420. package/lib/command/AcApEllipseCmd.d.ts.map +0 -1
  421. package/lib/command/AcApEllipseCmd.js.map +0 -1
  422. package/lib/command/AcApEraseCmd.d.ts.map +0 -1
  423. package/lib/command/AcApEraseCmd.js.map +0 -1
  424. package/lib/command/AcApHatchCmd.d.ts.map +0 -1
  425. package/lib/command/AcApHatchCmd.js.map +0 -1
  426. package/lib/command/AcApLayerCmd.d.ts.map +0 -1
  427. package/lib/command/AcApLayerCmd.js.map +0 -1
  428. package/lib/command/AcApLineCmd.d.ts.map +0 -1
  429. package/lib/command/AcApLineCmd.js.map +0 -1
  430. package/lib/command/AcApMTextCmd.d.ts.map +0 -1
  431. package/lib/command/AcApMTextCmd.js.map +0 -1
  432. package/lib/command/AcApMeasureAngleCmd.d.ts.map +0 -1
  433. package/lib/command/AcApMeasureAngleCmd.js.map +0 -1
  434. package/lib/command/AcApMeasureArcCmd.d.ts.map +0 -1
  435. package/lib/command/AcApMeasureArcCmd.js.map +0 -1
  436. package/lib/command/AcApMeasureAreaCmd.d.ts.map +0 -1
  437. package/lib/command/AcApMeasureAreaCmd.js.map +0 -1
  438. package/lib/command/AcApMeasureDistanceCmd.d.ts.map +0 -1
  439. package/lib/command/AcApMeasureDistanceCmd.js.map +0 -1
  440. package/lib/command/AcApMoveCmd.d.ts.map +0 -1
  441. package/lib/command/AcApMoveCmd.js.map +0 -1
  442. package/lib/command/AcApPngConvertor.d.ts.map +0 -1
  443. package/lib/command/AcApPngConvertor.js.map +0 -1
  444. package/lib/command/AcApPolygonCmd.d.ts.map +0 -1
  445. package/lib/command/AcApPolygonCmd.js.map +0 -1
  446. package/lib/command/AcApPolylineCmd.d.ts.map +0 -1
  447. package/lib/command/AcApPolylineCmd.js.map +0 -1
  448. package/lib/command/AcApRectCmd.d.ts.map +0 -1
  449. package/lib/command/AcApRectCmd.js.map +0 -1
  450. package/lib/command/AcApRevCircleCmd.d.ts.map +0 -1
  451. package/lib/command/AcApRevCircleCmd.js.map +0 -1
  452. package/lib/command/AcApRevCloudCmd.d.ts.map +0 -1
  453. package/lib/command/AcApRevCloudCmd.js.map +0 -1
  454. package/lib/command/AcApRevRectCmd.d.ts.map +0 -1
  455. package/lib/command/AcApRevRectCmd.js.map +0 -1
  456. package/lib/command/AcApRevVisibilityCmd.d.ts.map +0 -1
  457. package/lib/command/AcApRevVisibilityCmd.js.map +0 -1
  458. package/lib/command/AcApSketchCmd.d.ts.map +0 -1
  459. package/lib/command/AcApSketchCmd.js.map +0 -1
  460. package/lib/command/AcApSplineCmd.d.ts.map +0 -1
  461. package/lib/command/AcApSplineCmd.js.map +0 -1
  462. package/lib/command/AcApSvgConvertor.d.ts.map +0 -1
  463. package/lib/command/AcApSvgConvertor.js.map +0 -1
  464. /package/lib/command/{AcApDxfConvertor.d.ts → convert/AcApDxfConvertor.d.ts} +0 -0
  465. /package/lib/command/{AcApSvgConvertor.d.ts → convert/AcApSvgConvertor.d.ts} +0 -0
@@ -0,0 +1,144 @@
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
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
17
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
18
+ return new (P || (P = Promise))(function (resolve, reject) {
19
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
20
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
21
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
22
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
23
+ });
24
+ };
25
+ var __generator = (this && this.__generator) || function (thisArg, body) {
26
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
27
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
28
+ function verb(n) { return function (v) { return step([n, v]); }; }
29
+ function step(op) {
30
+ if (f) throw new TypeError("Generator is already executing.");
31
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
32
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
33
+ if (y = 0, t) op = [op[0] & 2, t.value];
34
+ switch (op[0]) {
35
+ case 0: case 1: t = op; break;
36
+ case 4: _.label++; return { value: op[1], done: false };
37
+ case 5: _.label++; y = op[1]; op = [0]; continue;
38
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
39
+ default:
40
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
41
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
42
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
43
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
44
+ if (t[2]) _.ops.pop();
45
+ _.trys.pop(); continue;
46
+ }
47
+ op = body.call(thisArg, _);
48
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
49
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
50
+ }
51
+ };
52
+ import { AcDbRay, AcGePoint3d, AcGeTol } from '@mlightcad/data-model';
53
+ import { AcApDocManager } from '../../app';
54
+ import { AcEdCommand, AcEdOpenMode, AcEdPreviewJig, AcEdPromptPointOptions, AcEdPromptStatus } from '../../editor';
55
+ import { AcApI18n } from '../../i18n';
56
+ function resolveUnitDirection(start, through) {
57
+ var direction = new AcGePoint3d(through).sub(start);
58
+ if (!AcGeTol.isPositive(direction.length()))
59
+ return undefined;
60
+ return direction.normalize();
61
+ }
62
+ /**
63
+ * Dynamic preview jig for RAY command.
64
+ */
65
+ var AcApRayJig = /** @class */ (function (_super) {
66
+ __extends(AcApRayJig, _super);
67
+ function AcApRayJig(view, start) {
68
+ var _this = _super.call(this, view) || this;
69
+ _this._startPoint = new AcGePoint3d(start);
70
+ _this._ray = new AcDbRay();
71
+ _this._ray.basePoint = new AcGePoint3d(start);
72
+ _this._ray.unitDir = new AcGePoint3d(1, 0, 0);
73
+ return _this;
74
+ }
75
+ Object.defineProperty(AcApRayJig.prototype, "entity", {
76
+ get: function () {
77
+ return this._ray;
78
+ },
79
+ enumerable: false,
80
+ configurable: true
81
+ });
82
+ AcApRayJig.prototype.update = function (point) {
83
+ var unitDir = resolveUnitDirection(this._startPoint, point);
84
+ if (!unitDir)
85
+ return;
86
+ this._ray.basePoint = new AcGePoint3d(this._startPoint);
87
+ this._ray.unitDir = unitDir;
88
+ };
89
+ return AcApRayJig;
90
+ }(AcEdPreviewJig));
91
+ /**
92
+ * Command to create one or more rays from a common start point.
93
+ */
94
+ var AcApRayCmd = /** @class */ (function (_super) {
95
+ __extends(AcApRayCmd, _super);
96
+ function AcApRayCmd() {
97
+ var _this = _super.call(this) || this;
98
+ _this.mode = AcEdOpenMode.Write;
99
+ return _this;
100
+ }
101
+ AcApRayCmd.prototype.execute = function (context) {
102
+ return __awaiter(this, void 0, void 0, function () {
103
+ var db, startPointPrompt, startPointResult, startPoint, throughPointPrompt, throughPointResult, unitDir, ray;
104
+ return __generator(this, function (_a) {
105
+ switch (_a.label) {
106
+ case 0:
107
+ db = context.doc.database;
108
+ startPointPrompt = new AcEdPromptPointOptions(AcApI18n.t('jig.ray.startPoint'));
109
+ return [4 /*yield*/, AcApDocManager.instance.editor.getPoint(startPointPrompt)];
110
+ case 1:
111
+ startPointResult = _a.sent();
112
+ if (startPointResult.status !== AcEdPromptStatus.OK)
113
+ return [2 /*return*/];
114
+ startPoint = new AcGePoint3d(startPointResult.value);
115
+ _a.label = 2;
116
+ case 2:
117
+ if (!true) return [3 /*break*/, 4];
118
+ throughPointPrompt = new AcEdPromptPointOptions(AcApI18n.t('jig.ray.throughPoint'));
119
+ throughPointPrompt.useDashedLine = true;
120
+ throughPointPrompt.useBasePoint = true;
121
+ throughPointPrompt.basePoint = new AcGePoint3d(startPoint);
122
+ throughPointPrompt.jig = new AcApRayJig(context.view, startPoint);
123
+ return [4 /*yield*/, AcApDocManager.instance.editor.getPoint(throughPointPrompt)];
124
+ case 3:
125
+ throughPointResult = _a.sent();
126
+ if (throughPointResult.status !== AcEdPromptStatus.OK)
127
+ return [3 /*break*/, 4];
128
+ unitDir = resolveUnitDirection(startPoint, throughPointResult.value);
129
+ if (!unitDir)
130
+ return [3 /*break*/, 2];
131
+ ray = new AcDbRay();
132
+ ray.basePoint = new AcGePoint3d(startPoint);
133
+ ray.unitDir = unitDir;
134
+ db.tables.blockTable.modelSpace.appendEntity(ray);
135
+ return [3 /*break*/, 2];
136
+ case 4: return [2 /*return*/];
137
+ }
138
+ });
139
+ });
140
+ };
141
+ return AcApRayCmd;
142
+ }(AcEdCommand));
143
+ export { AcApRayCmd };
144
+ //# sourceMappingURL=AcApRayCmd.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AcApRayCmd.js","sourceRoot":"","sources":["../../../src/command/draw/AcApRayCmd.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { AcDbPolyline, AcGePoint2dLike } from '@mlightcad/data-model';
2
- import { AcApContext } from '../app';
3
- import { AcEdBaseView, AcEdCommand, AcEdPreviewJig } from '../editor';
2
+ import { AcApContext } from '../../app';
3
+ import { AcEdBaseView, AcEdCommand, AcEdPreviewJig } from '../../editor';
4
4
  interface RectSettings {
5
5
  chamferDist1: number;
6
6
  chamferDist2: number;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AcApRectCmd.d.ts","sourceRoot":"","sources":["../../../src/command/draw/AcApRectCmd.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EAEZ,eAAe,EAGhB,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EAAE,WAAW,EAAkB,MAAM,WAAW,CAAA;AACvD,OAAO,EACL,YAAY,EACZ,WAAW,EAEX,cAAc,EAUf,MAAM,cAAc,CAAA;AA4BrB,UAAU,YAAY;IACpB,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAyMD;;GAEG;AACH,qBAAa,WAAY,SAAQ,cAAc,CAAC,eAAe,CAAC;IAC9D;;OAEG;IACH,OAAO,CAAC,KAAK,CAAc;IAC3B;;OAEG;IACH,OAAO,CAAC,WAAW,CAAa;IAChC;;OAEG;IACH,OAAO,CAAC,iBAAiB,CAAoB;IAE7C;;;;;;OAMG;gBAED,IAAI,EAAE,YAAY,EAClB,KAAK,EAAE,eAAe,EACtB,gBAAgB,EAAE,MAAM,YAAY;IAQtC;;OAEG;IACH,IAAI,MAAM,IAAI,YAAY,CAEzB;IAED;;;;OAIG;IACH,MAAM,CAAC,WAAW,EAAE,eAAe;CAQpC;AAmED;;GAEG;AACH,qBAAa,WAAY,SAAQ,WAAW;IAC1C;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,SAAS,CAEvB;IAED;;OAEG;;IAMH;;;;;;;;;OASG;IACG,OAAO,CAAC,OAAO,EAAE,WAAW;IA4BlC;;;;;;;OAOG;YACW,iBAAiB;IAqC/B;;;;;;;;;;OAUG;YACW,iBAAiB;IA+F/B;;;;;;OAMG;YACW,oBAAoB;IAgBlC;;;;;;;OAOG;YACW,aAAa;IAe3B;;;;;;;OAOG;YACW,YAAY;IAW1B;;;;;OAKG;YACW,WAAW;IAYzB;;;;;OAKG;YACW,eAAe;IAY7B;;;;;OAKG;YACW,eAAe;IAY7B;;;;;;;OAOG;YACW,cAAc;IAyB5B;;;;;;;OAOG;YACW,gBAAgB;IAuC9B;;;;;;;OAOG;YACW,UAAU;CA2DzB"}
@@ -49,11 +49,10 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
49
49
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
50
50
  }
51
51
  };
52
- import { AcDbPolyline, AcGePoint2d, AcGePoint3d } from '@mlightcad/data-model';
53
- import { AcApDocManager } from '../app';
54
- import { AcEdCommand, AcEdOpenMode, AcEdPreviewJig, AcEdPromptAngleOptions, AcEdPromptDoubleOptions, AcEdPromptPointOptions, AcEdPromptStateMachine, AcEdPromptStatus, eventBus } from '../editor';
55
- import { AcApI18n } from '../i18n';
56
- var EPSILON = 1e-9;
52
+ import { AcDbPolyline, AcGePoint2d, AcGePoint3d, AcGeTol } from '@mlightcad/data-model';
53
+ import { AcApDocManager } from '../../app';
54
+ import { AcEdCommand, AcEdOpenMode, AcEdPreviewJig, AcEdPromptAngleOptions, AcEdPromptDoubleOptions, AcEdPromptPointOptions, AcEdPromptStateMachine, AcEdPromptStatus, eventBus } from '../../editor';
55
+ import { AcApI18n } from '../../i18n';
57
56
  var FILLET_BULGE_BASE = Math.tan(Math.PI / 8);
58
57
  var DEFAULT_RECT_SETTINGS = {
59
58
  chamferDist1: 0,
@@ -108,7 +107,7 @@ function buildChamferVertices(lx, ly, distance1, distance2) {
108
107
  var absY = Math.abs(ly);
109
108
  var d1 = Math.min(normalizeNonNegative(distance1), absX / 2);
110
109
  var d2 = Math.min(normalizeNonNegative(distance2), absY / 2);
111
- if (d1 <= EPSILON && d2 <= EPSILON) {
110
+ if (AcGeTol.isNonPositive(d1) && AcGeTol.isNonPositive(d2)) {
112
111
  return buildSquareVertices(lx, ly);
113
112
  }
114
113
  var c1Out = new AcGePoint2d(sx * d1, 0);
@@ -134,7 +133,7 @@ function buildFilletVertices(lx, ly, radius) {
134
133
  var absX = Math.abs(lx);
135
134
  var absY = Math.abs(ly);
136
135
  var r = Math.min(normalizeNonNegative(radius), absX / 2, absY / 2);
137
- if (r <= EPSILON)
136
+ if (AcGeTol.isNonPositive(r))
138
137
  return buildSquareVertices(lx, ly);
139
138
  var chamferLike = buildChamferVertices(lx, ly, r, r);
140
139
  var orientation = lx * ly >= 0 ? 1 : -1;
@@ -147,10 +146,10 @@ function buildFilletVertices(lx, ly, radius) {
147
146
  }); });
148
147
  }
149
148
  function resolveRectVertices(lx, ly, settings) {
150
- if (settings.filletRadius > EPSILON) {
149
+ if (AcGeTol.isPositive(settings.filletRadius)) {
151
150
  return buildFilletVertices(lx, ly, settings.filletRadius);
152
151
  }
153
- if (settings.chamferDist1 > EPSILON || settings.chamferDist2 > EPSILON) {
152
+ if (AcGeTol.isPositive(settings.chamferDist1) || AcGeTol.isPositive(settings.chamferDist2)) {
154
153
  return buildChamferVertices(lx, ly, settings.chamferDist1, settings.chamferDist2);
155
154
  }
156
155
  return buildSquareVertices(lx, ly);
@@ -167,14 +166,14 @@ function updateRect(rect, firstPoint, input, settings) {
167
166
  lx = input.length;
168
167
  ly = input.width;
169
168
  }
170
- if (Math.abs(lx) <= EPSILON || Math.abs(ly) <= EPSILON)
169
+ if (AcGeTol.equalToZero(lx) || AcGeTol.equalToZero(ly))
171
170
  return false;
172
171
  rect.reset(false);
173
172
  var vertices = resolveRectVertices(lx, ly, settings);
174
173
  var segWidth = normalizeNonNegative(settings.width);
175
174
  vertices.forEach(function (vertex, index) {
176
175
  var worldPoint = toWorldPoint(firstPoint, vertex.point, settings.rotation);
177
- if (segWidth > EPSILON) {
176
+ if (AcGeTol.isPositive(segWidth)) {
178
177
  rect.addVertexAt(index, worldPoint, vertex.bulge, segWidth, segWidth);
179
178
  }
180
179
  else {
@@ -280,7 +279,7 @@ function cloneRectSettings(settings) {
280
279
  };
281
280
  }
282
281
  function isPositive(value) {
283
- return Number.isFinite(value !== null && value !== void 0 ? value : NaN) && (value !== null && value !== void 0 ? value : 0) > EPSILON;
282
+ return Number.isFinite(value !== null && value !== void 0 ? value : NaN) && AcGeTol.isPositive(value !== null && value !== void 0 ? value : 0);
284
283
  }
285
284
  /**
286
285
  * Command to create one rectangle with AutoCAD-like branching options.
@@ -328,7 +327,7 @@ var AcApRectCmd = /** @class */ (function (_super) {
328
327
  warnRectMessage('invalidRect');
329
328
  return [2 /*return*/];
330
329
  }
331
- if (settings.thickness > EPSILON) {
330
+ if (AcGeTol.isPositive(settings.thickness)) {
332
331
  warnRectMessage('thicknessNotSupported');
333
332
  }
334
333
  context.doc.database.tables.blockTable.modelSpace.appendEntity(rect);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AcApRectCmd.js","sourceRoot":"","sources":["../../../src/command/draw/AcApRectCmd.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { AcDbSpline, AcGePoint2d, AcGePoint2dLike } from '@mlightcad/data-model';
2
- import { AcApContext } from '../app';
3
- import { AcEdBaseView, AcEdCommand, AcEdPreviewJig } from '../editor';
2
+ import { AcApContext } from '../../app';
3
+ import { AcEdBaseView, AcEdCommand, AcEdPreviewJig } from '../../editor';
4
4
  type AcApSplineMethod = 'fit' | 'cv';
5
5
  type AcApSplineKnotsType = 'chord' | 'sqrtChord' | 'uniform';
6
6
  interface AcApSplineSettings {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AcApSplineCmd.d.ts","sourceRoot":"","sources":["../../../src/command/draw/AcApSplineCmd.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,WAAW,EACX,eAAe,EAGhB,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EAAE,WAAW,EAAkB,MAAM,WAAW,CAAA;AACvD,OAAO,EACL,YAAY,EACZ,WAAW,EAEX,cAAc,EASf,MAAM,cAAc,CAAA;AAGrB,KAAK,gBAAgB,GAAG,KAAK,GAAG,IAAI,CAAA;AACpC,KAAK,mBAAmB,GAAG,OAAO,GAAG,WAAW,GAAG,SAAS,CAAA;AAG5D,UAAU,kBAAkB;IAC1B,MAAM,EAAE,gBAAgB,CAAA;IACxB,SAAS,EAAE,mBAAmB,CAAA;IAC9B,MAAM,EAAE,MAAM,CAAA;CACf;AAED;;;;GAIG;AACH,qBAAa,aAAc,SAAQ,cAAc,CAAC,eAAe,CAAC;IAChE;;OAEG;IACH,OAAO,CAAC,OAAO,CAAY;IAC3B;;OAEG;IACH,OAAO,CAAC,OAAO,CAAe;IAC9B;;OAEG;IACH,OAAO,CAAC,SAAS,CAAoB;IACrC;;OAEG;IACH,OAAO,CAAC,OAAO,CAAS;IAExB;;;;;;;OAOG;gBAED,IAAI,EAAE,YAAY,EAClB,MAAM,EAAE,WAAW,EAAE,EACrB,QAAQ,EAAE,kBAAkB,EAC5B,MAAM,EAAE,OAAO;IASjB;;OAEG;IACH,IAAI,MAAM,IAAI,UAAU,CAEvB;IAED;;;;OAIG;IACH,MAAM,CAAC,KAAK,EAAE,eAAe;IAiB7B;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAIpB;;;;OAIG;IACH,OAAO,CAAC,aAAa;CAkCtB;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,WAAW;IAC5C;;OAEG;;IAMH;;;;;;;OAOG;IACG,OAAO,CAAC,OAAO,EAAE,WAAW;CA8UnC"}
@@ -74,10 +74,10 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
74
74
  }
75
75
  return to.concat(ar || Array.prototype.slice.call(from));
76
76
  };
77
- import { AcDbSpline, AcGePoint2d, AcGePoint3d } from '@mlightcad/data-model';
78
- import { AcApDocManager } from '../app';
79
- import { AcEdCommand, AcEdOpenMode, AcEdPreviewJig, AcEdPromptIntegerOptions, AcEdPromptKeywordOptions, AcEdPromptPointOptions, AcEdPromptStateMachine, AcEdPromptStatus } from '../editor';
80
- import { AcApI18n } from '../i18n';
77
+ import { AcDbSpline, AcGePoint2d, AcGePoint3d, DEFAULT_TOL } from '@mlightcad/data-model';
78
+ import { AcApDocManager } from '../../app';
79
+ import { AcEdCommand, AcEdOpenMode, AcEdPreviewJig, AcEdPromptIntegerOptions, AcEdPromptKeywordOptions, AcEdPromptPointOptions, AcEdPromptStateMachine, AcEdPromptStatus } from '../../editor';
80
+ import { AcApI18n } from '../../i18n';
81
81
  /**
82
82
  * Dynamic preview jig for SPLINE command.
83
83
  *
@@ -582,13 +582,10 @@ function dedupeConsecutivePoints(points) {
582
582
  return deduped;
583
583
  }
584
584
  function isNearlySamePoint2d(a, b) {
585
- return Math.hypot(a.x - b.x, a.y - b.y) <= 1e-9;
585
+ return DEFAULT_TOL.equalPoint2d(a, b);
586
586
  }
587
587
  function isNearlySamePoint3d(a, b) {
588
- var _a, _b;
589
- var az = (_a = a.z) !== null && _a !== void 0 ? _a : 0;
590
- var bz = (_b = b.z) !== null && _b !== void 0 ? _b : 0;
591
- return Math.hypot(a.x - b.x, a.y - b.y, az - bz) <= 1e-9;
588
+ return DEFAULT_TOL.equalPoint3d(a, b);
592
589
  }
593
590
  function mapKnotsTypeToParameterization(knotsType) {
594
591
  switch (knotsType) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AcApSplineCmd.js","sourceRoot":"","sources":["../../../src/command/draw/AcApSplineCmd.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import { AcApContext } from '../../app';
2
+ import { AcEdCommand } from '../../editor';
3
+ /**
4
+ * Command to create AutoCAD-style construction lines.
5
+ *
6
+ * This implementation supports the core XLINE branches:
7
+ * - `Point`: two-point definition.
8
+ * - `Hor`: horizontal xline through a point.
9
+ * - `Ver`: vertical xline through a point.
10
+ * - `Ang`: xline at a user-specified angle through a point.
11
+ */
12
+ export declare class AcApXLineCmd extends AcEdCommand {
13
+ constructor();
14
+ execute(context: AcApContext): Promise<void>;
15
+ /**
16
+ * Creates one long finite line to mimic an infinite construction line.
17
+ *
18
+ * The underlying viewer already understands infinite entities, but this
19
+ * fallback keeps XLINE behavior stable without relying on runtime-specific
20
+ * infinite-entity constructors.
21
+ */
22
+ private appendFiniteXLine;
23
+ private normalizeDirection;
24
+ }
25
+ //# sourceMappingURL=AcApXLineCmd.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AcApXLineCmd.d.ts","sourceRoot":"","sources":["../../../src/command/draw/AcApXLineCmd.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAkB,MAAM,WAAW,CAAA;AACvD,OAAO,EACL,WAAW,EAKZ,MAAM,cAAc,CAAA;AAOrB;;;;;;;;GAQG;AACH,qBAAa,YAAa,SAAQ,WAAW;;IAMrC,OAAO,CAAC,OAAO,EAAE,WAAW;IAiIlC;;;;;;OAMG;IACH,OAAO,CAAC,iBAAiB;IAwBzB,OAAO,CAAC,kBAAkB;CAW3B"}
@@ -0,0 +1,209 @@
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
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
17
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
18
+ return new (P || (P = Promise))(function (resolve, reject) {
19
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
20
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
21
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
22
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
23
+ });
24
+ };
25
+ var __generator = (this && this.__generator) || function (thisArg, body) {
26
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
27
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
28
+ function verb(n) { return function (v) { return step([n, v]); }; }
29
+ function step(op) {
30
+ if (f) throw new TypeError("Generator is already executing.");
31
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
32
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
33
+ if (y = 0, t) op = [op[0] & 2, t.value];
34
+ switch (op[0]) {
35
+ case 0: case 1: t = op; break;
36
+ case 4: _.label++; return { value: op[1], done: false };
37
+ case 5: _.label++; y = op[1]; op = [0]; continue;
38
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
39
+ default:
40
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
41
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
42
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
43
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
44
+ if (t[2]) _.ops.pop();
45
+ _.trys.pop(); continue;
46
+ }
47
+ op = body.call(thisArg, _);
48
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
49
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
50
+ }
51
+ };
52
+ import { AcDbLine, AcGePoint3d, AcGeTol } from '@mlightcad/data-model';
53
+ import { AcApDocManager } from '../../app';
54
+ import { AcEdCommand, AcEdOpenMode, AcEdPromptDoubleOptions, AcEdPromptPointOptions, AcEdPromptStatus } from '../../editor';
55
+ import { AcApI18n } from '../../i18n';
56
+ var ACAP_XLINE_HALF_LENGTH = 1000000;
57
+ /**
58
+ * Command to create AutoCAD-style construction lines.
59
+ *
60
+ * This implementation supports the core XLINE branches:
61
+ * - `Point`: two-point definition.
62
+ * - `Hor`: horizontal xline through a point.
63
+ * - `Ver`: vertical xline through a point.
64
+ * - `Ang`: xline at a user-specified angle through a point.
65
+ */
66
+ var AcApXLineCmd = /** @class */ (function (_super) {
67
+ __extends(AcApXLineCmd, _super);
68
+ function AcApXLineCmd() {
69
+ var _this = _super.call(this) || this;
70
+ _this.mode = AcEdOpenMode.Write;
71
+ return _this;
72
+ }
73
+ AcApXLineCmd.prototype.execute = function (context) {
74
+ return __awaiter(this, void 0, void 0, function () {
75
+ var currentMode, startPrompt, startResult, secondPrompt, secondResult, direction, throughPrompt_1, throughResult_1, throughPrompt_2, throughResult_2, anglePrompt, angleResult, throughPrompt, throughResult, angleRad;
76
+ return __generator(this, function (_a) {
77
+ switch (_a.label) {
78
+ case 0:
79
+ currentMode = 'point';
80
+ _a.label = 1;
81
+ case 1:
82
+ if (!true) return [3 /*break*/, 13];
83
+ startPrompt = new AcEdPromptPointOptions(AcApI18n.t('jig.xline.firstPointOrOptions'));
84
+ startPrompt.keywords.add(AcApI18n.t('jig.xline.keywords.hor.display'), AcApI18n.t('jig.xline.keywords.hor.global'), AcApI18n.t('jig.xline.keywords.hor.local'));
85
+ startPrompt.keywords.add(AcApI18n.t('jig.xline.keywords.ver.display'), AcApI18n.t('jig.xline.keywords.ver.global'), AcApI18n.t('jig.xline.keywords.ver.local'));
86
+ startPrompt.keywords.add(AcApI18n.t('jig.xline.keywords.ang.display'), AcApI18n.t('jig.xline.keywords.ang.global'), AcApI18n.t('jig.xline.keywords.ang.local'));
87
+ return [4 /*yield*/, AcApDocManager.instance.editor.getPoint(startPrompt)];
88
+ case 2:
89
+ startResult = _a.sent();
90
+ if (!(startResult.status === AcEdPromptStatus.Keyword)) return [3 /*break*/, 3];
91
+ if (startResult.stringResult === 'Hor') {
92
+ currentMode = 'hor';
93
+ }
94
+ else if (startResult.stringResult === 'Ver') {
95
+ currentMode = 'ver';
96
+ }
97
+ else if (startResult.stringResult === 'Ang') {
98
+ currentMode = 'ang';
99
+ }
100
+ return [3 /*break*/, 6];
101
+ case 3:
102
+ if (!(startResult.status === AcEdPromptStatus.OK &&
103
+ startResult.value)) return [3 /*break*/, 5];
104
+ currentMode = 'point';
105
+ secondPrompt = new AcEdPromptPointOptions(AcApI18n.t('jig.xline.secondPoint'));
106
+ secondPrompt.useBasePoint = true;
107
+ secondPrompt.useDashedLine = true;
108
+ secondPrompt.basePoint = new AcGePoint3d(startResult.value);
109
+ return [4 /*yield*/, AcApDocManager.instance.editor.getPoint(secondPrompt)];
110
+ case 4:
111
+ secondResult = _a.sent();
112
+ if (secondResult.status !== AcEdPromptStatus.OK || !secondResult.value)
113
+ return [2 /*return*/];
114
+ direction = {
115
+ x: secondResult.value.x - startResult.value.x,
116
+ y: secondResult.value.y - startResult.value.y,
117
+ z: secondResult.value.z - startResult.value.z
118
+ };
119
+ if (!this.appendFiniteXLine(context, startResult.value, direction)) {
120
+ AcApDocManager.instance.editor.showMessage(AcApI18n.t('jig.xline.invalidDirection'), 'warning');
121
+ }
122
+ return [3 /*break*/, 1];
123
+ case 5: return [2 /*return*/];
124
+ case 6:
125
+ if (!(currentMode === 'hor')) return [3 /*break*/, 8];
126
+ throughPrompt_1 = new AcEdPromptPointOptions(AcApI18n.t('jig.xline.throughPoint'));
127
+ return [4 /*yield*/, AcApDocManager.instance.editor.getPoint(throughPrompt_1)];
128
+ case 7:
129
+ throughResult_1 = _a.sent();
130
+ if (throughResult_1.status !== AcEdPromptStatus.OK ||
131
+ !throughResult_1.value)
132
+ return [2 /*return*/];
133
+ this.appendFiniteXLine(context, throughResult_1.value, {
134
+ x: 1,
135
+ y: 0,
136
+ z: 0
137
+ });
138
+ return [3 /*break*/, 1];
139
+ case 8:
140
+ if (!(currentMode === 'ver')) return [3 /*break*/, 10];
141
+ throughPrompt_2 = new AcEdPromptPointOptions(AcApI18n.t('jig.xline.throughPoint'));
142
+ return [4 /*yield*/, AcApDocManager.instance.editor.getPoint(throughPrompt_2)];
143
+ case 9:
144
+ throughResult_2 = _a.sent();
145
+ if (throughResult_2.status !== AcEdPromptStatus.OK ||
146
+ !throughResult_2.value)
147
+ return [2 /*return*/];
148
+ this.appendFiniteXLine(context, throughResult_2.value, {
149
+ x: 0,
150
+ y: 1,
151
+ z: 0
152
+ });
153
+ return [3 /*break*/, 1];
154
+ case 10:
155
+ anglePrompt = new AcEdPromptDoubleOptions(AcApI18n.t('jig.xline.angle'));
156
+ return [4 /*yield*/, AcApDocManager.instance.editor.getDouble(anglePrompt)];
157
+ case 11:
158
+ angleResult = _a.sent();
159
+ if (angleResult.status !== AcEdPromptStatus.OK ||
160
+ angleResult.value == null)
161
+ return [2 /*return*/];
162
+ throughPrompt = new AcEdPromptPointOptions(AcApI18n.t('jig.xline.throughPoint'));
163
+ return [4 /*yield*/, AcApDocManager.instance.editor.getPoint(throughPrompt)];
164
+ case 12:
165
+ throughResult = _a.sent();
166
+ if (throughResult.status !== AcEdPromptStatus.OK || !throughResult.value)
167
+ return [2 /*return*/];
168
+ angleRad = (angleResult.value * Math.PI) / 180;
169
+ this.appendFiniteXLine(context, throughResult.value, {
170
+ x: Math.cos(angleRad),
171
+ y: Math.sin(angleRad),
172
+ z: 0
173
+ });
174
+ return [3 /*break*/, 1];
175
+ case 13: return [2 /*return*/];
176
+ }
177
+ });
178
+ });
179
+ };
180
+ /**
181
+ * Creates one long finite line to mimic an infinite construction line.
182
+ *
183
+ * The underlying viewer already understands infinite entities, but this
184
+ * fallback keeps XLINE behavior stable without relying on runtime-specific
185
+ * infinite-entity constructors.
186
+ */
187
+ AcApXLineCmd.prototype.appendFiniteXLine = function (context, throughPoint, direction) {
188
+ var unit = this.normalizeDirection(direction);
189
+ if (!unit)
190
+ return false;
191
+ var start = new AcGePoint3d(throughPoint.x - unit.x * ACAP_XLINE_HALF_LENGTH, throughPoint.y - unit.y * ACAP_XLINE_HALF_LENGTH, throughPoint.z - unit.z * ACAP_XLINE_HALF_LENGTH);
192
+ var end = new AcGePoint3d(throughPoint.x + unit.x * ACAP_XLINE_HALF_LENGTH, throughPoint.y + unit.y * ACAP_XLINE_HALF_LENGTH, throughPoint.z + unit.z * ACAP_XLINE_HALF_LENGTH);
193
+ context.doc.database.tables.blockTable.modelSpace.appendEntity(new AcDbLine(start, end));
194
+ return true;
195
+ };
196
+ AcApXLineCmd.prototype.normalizeDirection = function (vector) {
197
+ var length = Math.sqrt(vector.x * vector.x + vector.y * vector.y + vector.z * vector.z);
198
+ if (!AcGeTol.isPositive(length))
199
+ return undefined;
200
+ return {
201
+ x: vector.x / length,
202
+ y: vector.y / length,
203
+ z: vector.z / length
204
+ };
205
+ };
206
+ return AcApXLineCmd;
207
+ }(AcEdCommand));
208
+ export { AcApXLineCmd };
209
+ //# sourceMappingURL=AcApXLineCmd.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AcApXLineCmd.js","sourceRoot":"","sources":["../../../src/command/draw/AcApXLineCmd.ts"],"names":[],"mappings":"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"}