build-dxf 0.1.112 → 0.1.113

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 (120) hide show
  1. package/package.json +1 -1
  2. package/src/build.js +3393 -3257
  3. package/src/{dxfSystem → dxf-system}/components/CorrectionDxf.d.ts +1 -1
  4. package/src/{dxfSystem → dxf-system}/components/Dxf.d.ts +3 -3
  5. package/src/{dxfSystem → dxf-system}/components/ThreeVJia.d.ts +1 -1
  6. package/src/{dxfSystem → dxf-system}/plugins/editor/components/CommandFlow/Default.d.ts +1 -1
  7. package/src/{dxfSystem → dxf-system}/plugins/editor/components/CommandFlow/DrawWindow.d.ts +1 -1
  8. package/src/{dxfSystem → dxf-system}/plugins/editor/components/CommandFlow/PropertiesPanel.d.ts +1 -1
  9. package/src/{dxfSystem → dxf-system}/plugins/editor/components/Editor.d.ts +1 -1
  10. package/src/{dxfSystem → dxf-system}/plugins/editor/components/RenderManager.d.ts +2 -2
  11. package/src/{dxfSystem → dxf-system}/plugins/editor/pages/EditorTool/EditorTool.vue.d.ts +1 -1
  12. package/src/{dxfSystem → dxf-system}/plugins/editor/pages/PropertiesPanel.vue.d.ts +1 -1
  13. package/src/{dxfSystem/utils/linePipeline/builtin/boundExt.d.ts → dxf-system/utils/BoundExt.d.ts} +5 -11
  14. package/src/{dxfSystem/utils/linePipeline/builtin → dxf-system/utils}/DoorFind.d.ts +5 -5
  15. package/src/{dxfSystem/utils/linePipeline/builtin → dxf-system/utils}/DoubleWallHelper.d.ts +3 -3
  16. package/src/{dxfSystem/utils/linePipeline/builtin → dxf-system/utils}/HeightQuery.d.ts +2 -2
  17. package/src/{dxfSystem/utils/threeVJiaPipeline.d.ts → dxf-system/utils/ThreeVJiaPipeline.d.ts} +1 -1
  18. package/src/dxf-system/utils/cad/DxfDataPlugin.d.ts +18 -0
  19. package/src/dxf-system/utils/cad/DxfDrawPlugin.d.ts +13 -0
  20. package/src/{dxfSystem/utils/CAD/drawDxfImage.d.ts → dxf-system/utils/cad/draw-dxf-image.d.ts} +1 -1
  21. package/src/{dxfSystem/utils/CAD/drawDxfString.d.ts → dxf-system/utils/cad/draw-dxf-string.d.ts} +1 -1
  22. package/src/{dxfSystem/utils/CAD → dxf-system/utils/cad}/index.d.ts +1 -27
  23. package/src/dxf-system/utils/index.d.ts +11 -0
  24. package/src/dxf-system/utils/line-pipeline/builtin/bound-ext.d.ts +8 -0
  25. package/src/{dxfSystem/utils/linePipeline/builtin/buildGroup → dxf-system/utils/line-pipeline/builtin/build-group}/index.d.ts +1 -1
  26. package/src/{dxfSystem/utils/linePipeline/builtin/doorToHole.d.ts → dxf-system/utils/line-pipeline/builtin/door-to-hole.d.ts} +1 -1
  27. package/src/{dxfSystem/utils/linePipeline/builtin/doubleWallAlignment.d.ts → dxf-system/utils/line-pipeline/builtin/double-wall-alignment.d.ts} +2 -2
  28. package/src/{dxfSystem/utils/linePipeline → dxf-system/utils/line-pipeline}/builtin/index.d.ts +7 -7
  29. package/src/{dxfSystem/utils/linePipeline → dxf-system/utils/line-pipeline}/builtin/init.d.ts +1 -1
  30. package/src/dxf-system/utils/line-pipeline/index.d.ts +20 -0
  31. package/src/{dxfSystem → dxf-system}/utils/tools.d.ts +1 -1
  32. package/src/index.css +26 -22
  33. package/src/index3.js +8 -8
  34. package/src/utils/algorithms/LineSegmentUtils.d.ts +15 -2
  35. package/src/utils/algorithms/PointSpatialHash.d.ts +21 -4
  36. package/src/utils/decorators/measure-time.d.ts +5 -0
  37. package/src/utils/index.d.ts +3 -3
  38. package/src/utils/modelScenario/scenario.d.ts +1 -1
  39. package/src/dxfSystem/utils/WallDrawManager.d.ts +0 -3
  40. package/src/dxfSystem/utils/index.d.ts +0 -11
  41. package/src/dxfSystem/utils/linePipeline/index.d.ts +0 -20
  42. /package/src/{dxfSystem → dxf-system}/DxfSystem.d.ts +0 -0
  43. /package/src/{dxfSystem → dxf-system}/build.d.ts +0 -0
  44. /package/src/{dxfSystem → dxf-system}/components/Variable.d.ts +0 -0
  45. /package/src/{dxfSystem → dxf-system}/index.d.ts +0 -0
  46. /package/src/{dxfSystem → dxf-system}/plugins/editor/EditorPlugin.d.ts +0 -0
  47. /package/src/{dxfSystem → dxf-system}/plugins/editor/components/CommandFlow/CFComponent.d.ts +0 -0
  48. /package/src/{dxfSystem → dxf-system}/plugins/editor/components/CommandFlow/ClippingLine.d.ts +0 -0
  49. /package/src/{dxfSystem → dxf-system}/plugins/editor/components/CommandFlow/DeleteSelectLine.d.ts +0 -0
  50. /package/src/{dxfSystem → dxf-system}/plugins/editor/components/CommandFlow/DrawDoorLine.d.ts +0 -0
  51. /package/src/{dxfSystem → dxf-system}/plugins/editor/components/CommandFlow/DrawLine.d.ts +0 -0
  52. /package/src/{dxfSystem → dxf-system}/plugins/editor/components/CommandFlow/ManualDistance.d.ts +0 -0
  53. /package/src/{dxfSystem → dxf-system}/plugins/editor/components/CommandFlow/MergeLine.d.ts +0 -0
  54. /package/src/{dxfSystem → dxf-system}/plugins/editor/components/CommandFlow/PointDrag/index.d.ts +0 -0
  55. /package/src/{dxfSystem → dxf-system}/plugins/editor/components/CommandFlow/PointDrag/modifyDoor.d.ts +0 -0
  56. /package/src/{dxfSystem → dxf-system}/plugins/editor/components/CommandFlow/PointDrag/modifyLine.d.ts +0 -0
  57. /package/src/{dxfSystem → dxf-system}/plugins/editor/components/CommandFlow/PointDrag/modifyWindow.d.ts +0 -0
  58. /package/src/{dxfSystem → dxf-system}/plugins/editor/components/CommandFlow/RayDistance.d.ts +0 -0
  59. /package/src/{dxfSystem → dxf-system}/plugins/editor/components/CommandFlow/SelectAll.d.ts +0 -0
  60. /package/src/{dxfSystem → dxf-system}/plugins/editor/components/CommandFlow/TwoLineConnectionLine.d.ts +0 -0
  61. /package/src/{dxfSystem → dxf-system}/plugins/editor/components/CommandFlow/TwoPointConnection.d.ts +0 -0
  62. /package/src/{dxfSystem → dxf-system}/plugins/editor/components/CommandFlow/VerticalCorr.d.ts +0 -0
  63. /package/src/{dxfSystem → dxf-system}/plugins/editor/components/CommandFlow/VerticalCorrContinue.d.ts +0 -0
  64. /package/src/{dxfSystem → dxf-system}/plugins/editor/components/CommandFlow/VerticalReferenceLine.d.ts +0 -0
  65. /package/src/{dxfSystem → dxf-system}/plugins/editor/components/CommandFlow/ViewAngle.d.ts +0 -0
  66. /package/src/{dxfSystem → dxf-system}/plugins/editor/components/UIService.d.ts +0 -0
  67. /package/src/{dxfSystem → dxf-system}/plugins/editor/components/index.d.ts +0 -0
  68. /package/src/{dxfSystem → dxf-system}/plugins/editor/index.d.ts +0 -0
  69. /package/src/{dxfSystem → dxf-system}/plugins/editor/pages/EditorTool/EditorToolContent.vue.d.ts +0 -0
  70. /package/src/{dxfSystem → dxf-system}/plugins/editor/pages/components/Input.vue.d.ts +0 -0
  71. /package/src/{dxfSystem → dxf-system}/plugins/editor/type.d.ts +0 -0
  72. /package/src/{dxfSystem → dxf-system}/plugins/index.d.ts +0 -0
  73. /package/src/{dxfSystem → dxf-system}/plugins/model3d/components/DxfLineModel.d.ts +0 -0
  74. /package/src/{dxfSystem → dxf-system}/plugins/model3d/components/WhiteModel.d.ts +0 -0
  75. /package/src/{dxfSystem → dxf-system}/plugins/model3d/components/index.d.ts +0 -0
  76. /package/src/{dxfSystem → dxf-system}/plugins/model3d/index.d.ts +0 -0
  77. /package/src/{dxfSystem → dxf-system}/plugins/renderer/components/DomContainer.d.ts +0 -0
  78. /package/src/{dxfSystem → dxf-system}/plugins/renderer/components/DomEventRegister.d.ts +0 -0
  79. /package/src/{dxfSystem → dxf-system}/plugins/renderer/components/EventInput.d.ts +0 -0
  80. /package/src/{dxfSystem → dxf-system}/plugins/renderer/components/ModelDataRender.d.ts +0 -0
  81. /package/src/{dxfSystem → dxf-system}/plugins/renderer/components/Renderer.d.ts +0 -0
  82. /package/src/{dxfSystem → dxf-system}/plugins/renderer/components/index.d.ts +0 -0
  83. /package/src/{dxfSystem → dxf-system}/plugins/renderer/index.d.ts +0 -0
  84. /package/src/{dxfSystem → dxf-system}/type.d.ts +0 -0
  85. /package/src/{dxfSystem → dxf-system}/utils/BayWindowHelper.d.ts +0 -0
  86. /package/src/{dxfSystem → dxf-system}/utils/LineGroupType.d.ts +0 -0
  87. /package/src/{dxfSystem → dxf-system}/utils/LoadModel.d.ts +0 -0
  88. /package/src/{dxfSystem → dxf-system}/utils/SceneAutoGenerat.d.ts +0 -0
  89. /package/src/{dxfSystem → dxf-system}/utils/WallGroupManager.d.ts +0 -0
  90. /package/src/{dxfSystem → dxf-system}/utils/WallInsertObject.d.ts +0 -0
  91. /package/src/{dxfSystem → dxf-system}/utils/WallInsertObjectDrawData.d.ts +0 -0
  92. /package/src/{dxfSystem → dxf-system}/utils/ZHouseMockData.d.ts +0 -0
  93. /package/src/{dxfSystem/utils/CAD/drawData.d.ts → dxf-system/utils/cad/draw-data.d.ts} +0 -0
  94. /package/src/{dxfSystem/utils/clippingDoubleWall.d.ts → dxf-system/utils/clipping-double-wall.d.ts} +0 -0
  95. /package/src/{dxfSystem/utils/clippingLineUserData.d.ts → dxf-system/utils/clipping-line-user-data.d.ts} +0 -0
  96. /package/src/{dxfSystem/utils/drawHelper.d.ts → dxf-system/utils/draw-helper.d.ts} +0 -0
  97. /package/src/{dxfSystem/utils/findDiscrete.d.ts → dxf-system/utils/find-discrete.d.ts} +0 -0
  98. /package/src/{dxfSystem/utils/findRooms.d.ts → dxf-system/utils/find-rooms.d.ts} +0 -0
  99. /package/src/{dxfSystem/utils/getWinDrawData.d.ts → dxf-system/utils/get-win-draw-data.d.ts} +0 -0
  100. /package/src/{dxfSystem/utils/lineSegmentClipping.d.ts → dxf-system/utils/line-clipping.d.ts} +0 -0
  101. /package/src/{dxfSystem/utils/mergeChains.d.ts → dxf-system/utils/line-merge-chains.d.ts} +0 -0
  102. /package/src/{dxfSystem/utils/mergeLineUserData.d.ts → dxf-system/utils/line-merge-user-data.d.ts} +0 -0
  103. /package/src/{dxfSystem/utils/linePipeline/builtin/axisAlignCorr.d.ts → dxf-system/utils/line-pipeline/builtin/axis-align-corr.d.ts} +0 -0
  104. /package/src/{dxfSystem/utils/linePipeline/builtin/buildGroup/bayWindow.d.ts → dxf-system/utils/line-pipeline/builtin/build-group/bay-window.d.ts} +0 -0
  105. /package/src/{dxfSystem/utils/linePipeline/builtin/buildGroup/doubleWall.d.ts → dxf-system/utils/line-pipeline/builtin/build-group/double-wall.d.ts} +0 -0
  106. /package/src/{dxfSystem/utils/linePipeline/builtin/doorSpaceHandle.d.ts → dxf-system/utils/line-pipeline/builtin/door-space-handle.d.ts} +0 -0
  107. /package/src/{dxfSystem/utils/linePipeline/builtin/removeShortDoubleWall.d.ts → dxf-system/utils/line-pipeline/builtin/remove-short-double-wall.d.ts} +0 -0
  108. /package/src/{dxfSystem/utils/linePipeline/builtin/wallHeightHandle.d.ts → dxf-system/utils/line-pipeline/builtin/wall-height-handle.d.ts} +0 -0
  109. /package/src/{dxfSystem/utils/removeDangline.d.ts → dxf-system/utils/remove-dangline.d.ts} +0 -0
  110. /package/src/utils/{tools → algorithms}/lazy.d.ts +0 -0
  111. /package/src/utils/{threeObject3D → three-object-3d}/ExtrudeMesh.d.ts +0 -0
  112. /package/src/utils/{threeObject3D → three-object-3d}/Lines.d.ts +0 -0
  113. /package/src/utils/{threeObject3D → three-object-3d}/Lines2.d.ts +0 -0
  114. /package/src/utils/tools/{cloneUserData.d.ts → clone-user-data.d.ts} +0 -0
  115. /package/src/utils/tools/{createHtml.d.ts → create-html.d.ts} +0 -0
  116. /package/src/utils/tools/{createPromise.d.ts → create-promise.d.ts} +0 -0
  117. /package/src/utils/tools/{getJson.d.ts → get-json.d.ts} +0 -0
  118. /package/src/utils/tools/{isMobile.d.ts → is-mobile.d.ts} +0 -0
  119. /package/src/utils/tools/{repetitiveTask.d.ts → repetitive-task.d.ts} +0 -0
  120. /package/src/utils/tools/{selectLocalFile.d.ts → selectLocal-file.d.ts} +0 -0
@@ -1,5 +1,5 @@
1
1
  import { SetDataOption, OriginalDataItem, Unit } from '../type';
2
- import { CAD } from '../utils/CAD';
2
+ import { CAD } from '../utils/cad';
3
3
  import { DxfSystem } from '../DxfSystem';
4
4
  import { Dxf } from './Dxf';
5
5
  /**
@@ -3,8 +3,8 @@ import { Box2 } from '../../utils/algorithms/Box2';
3
3
  import { LineSegment } from '../../utils/algorithms/LineSegment';
4
4
  import { Quadtree } from '../../utils/algorithms/Quadtree';
5
5
  import { SetDataOption, DataItem, LineUserData, OriginalDataItem, Unit } from '../type';
6
- import { CAD } from '../utils/CAD';
7
- import { LinePipeline } from '../utils/linePipeline';
6
+ import { CAD } from '../utils/cad';
7
+ import { LinePipeline } from '../utils/line-pipeline';
8
8
  /**
9
9
  * 将点云结构转换为DXF格式
10
10
  */
@@ -71,7 +71,7 @@ export declare class Dxf<TEventMap extends {} = {}> extends Component<{
71
71
  downloadOriginalData(filename: string): Promise<void>;
72
72
  /** 获取绘制数据
73
73
  */
74
- toDrawData(unit?: Unit): import('../utils/CAD/drawData').DrawData | undefined;
74
+ toDrawData(unit?: Unit): import('../utils/cad/draw-data').DrawData | undefined;
75
75
  /** 获取 dxf 图片 二进制对象
76
76
  * @param type
77
77
  */
@@ -1,7 +1,7 @@
1
1
  import { Component } from '../../utils/ecs';
2
2
  import { LineSegment } from '../../utils/algorithms/LineSegment';
3
3
  import { LineUserData } from '../type';
4
- import { ThreeVJiaJsonObject } from '../utils/threeVJiaPipeline';
4
+ import { ThreeVJiaJsonObject } from '../utils/ThreeVJiaPipeline';
5
5
  /**
6
6
  * 转为 三维家 墙体结构
7
7
  */
@@ -1,6 +1,6 @@
1
1
  import { LineSegment } from '../../../../../utils/algorithms/LineSegment';
2
2
  import { CommandFlowComponent } from './CFComponent';
3
- import { LineUserData } from '../../../../type';
3
+ import { LineUserData } from '../../../../../dxfSystem/type';
4
4
  import * as THREE from "three";
5
5
  /**
6
6
  * 创建移动端集成页面
@@ -1,7 +1,7 @@
1
1
  import { CommandFlowComponent } from './CFComponent';
2
2
  import { LineSegment } from '../../../../../utils/algorithms/LineSegment';
3
3
  import { ComponentSystem } from '../../../../../utils/ecs';
4
- import { LineUserData } from '../../../../type';
4
+ import { LineUserData } from '../../../../../dxfSystem/type';
5
5
  import * as THREE from "three";
6
6
  export declare class DrawWindow extends CommandFlowComponent<{
7
7
  pointerMove: {
@@ -10,7 +10,7 @@ export declare class PropertiesPanel extends CommandFlowComponent<{}> {
10
10
  isOpen: boolean;
11
11
  onAddFromParent(parent: ComponentSystem): void;
12
12
  getSelectLines(): {
13
- list: LineSegment<import('../../../../type').LineUserData>[];
13
+ list: LineSegment<LineUserData>[];
14
14
  winList: any[];
15
15
  };
16
16
  private constraint;
@@ -5,7 +5,7 @@ import { Renderer, DomContainer, DomEventRegister, EventInput } from '../../rend
5
5
  import { RenderManager } from './RenderManager';
6
6
  import { CommandManager } from '../../../../utils/command';
7
7
  import { App } from 'vue';
8
- import { DxfSystem } from '../../..';
8
+ import { DxfSystem } from '../../../../dxfSystem';
9
9
  import * as THREE from "three";
10
10
  export declare class Editor extends Component<{
11
11
  pointerPositionChange: {
@@ -6,8 +6,8 @@ import { PointSpatialHash } from '../../../../utils/algorithms/PointSpatialHash'
6
6
  import { Editor } from './Editor';
7
7
  import { Quadtree } from '../../../../utils/algorithms/Quadtree';
8
8
  import { DxfLineModel } from '../../model3d/components';
9
- import { LineUserData, OriginalDataItem } from '../../../type';
10
- import { Dxf } from '../../../components/Dxf';
9
+ import { LineUserData } from '../../../../dxfSystem/type';
10
+ import { Dxf } from '../../../../dxfSystem/components/Dxf';
11
11
  import * as THREE from "three";
12
12
  export type AdsorptionResult = {
13
13
  point: THREE.Vector3;
@@ -1,4 +1,4 @@
1
- import { DxfSystem } from '../../../../DxfSystem';
1
+ import { DxfSystem } from '../../../../../dxfSystem/DxfSystem';
2
2
  type __VLS_Props = {
3
3
  dxfSystem: DxfSystem;
4
4
  permission?: "admin";
@@ -1,4 +1,4 @@
1
- import { LineUserData } from '../../../type';
1
+ import { LineUserData } from '../../../../dxfSystem/type';
2
2
  import { LineSegment } from '../../../../utils/algorithms/LineSegment';
3
3
  import { Ref } from 'vue';
4
4
  type __VLS_Props = {
@@ -1,6 +1,6 @@
1
- import { LineUserData, OriginalDataItem, SetDataOption } from '../../../type';
2
- import { LineSegment } from '../../../../utils/algorithms/LineSegment';
3
- import { Point } from '../../../../utils/algorithms/Point';
1
+ import { LineSegment } from '../../utils/algorithms/LineSegment';
2
+ import { Point } from '../../utils/algorithms/Point';
3
+ import { LineUserData, OriginalDataItem } from '../type';
4
4
  interface IByTraj {
5
5
  lines: LineSegment[];
6
6
  trajectory: any;
@@ -27,8 +27,8 @@ export declare class BoundExt {
27
27
  static findExtWallByTraj(lines: LineSegment<LineUserData & {
28
28
  expandDirect?: 'left' | 'right' | 'on';
29
29
  }>[], trajectoryPoints: Point[], minWidth?: number): LineSegment<{
30
- quadtreeNode?: import('../../../../utils/algorithms/Quadtree').QuadtreeNode;
31
- } & import('../../../type').WallLineGlobalOption & {
30
+ quadtreeNode?: import('../../utils/algorithms/Quadtree').QuadtreeNode;
31
+ } & import('../type').WallLineGlobalOption & {
32
32
  expandDirect?: "left" | "right" | "on";
33
33
  }>[];
34
34
  /** 通过轨迹点外扩边线
@@ -48,10 +48,4 @@ export declare class BoundExt {
48
48
  toOriginalData(originalZAverage: number): OriginalDataItem[];
49
49
  };
50
50
  }
51
- /** 外扩
52
- * @param lines
53
- * @param param1
54
- * @returns
55
- */
56
- export declare function boundExt(lines: LineSegment[], { trajectory, onBoundExt }: SetDataOption): LineSegment<Record<string, any>>[];
57
51
  export {};
@@ -1,8 +1,8 @@
1
- import { LineSegment } from '../../../../utils/algorithms/LineSegment';
2
- import { LineUserData } from '../../../type';
3
- import { PointSpatialHash } from '../../../../utils/algorithms/PointSpatialHash';
4
- import { Quadtree } from '../../../../utils/algorithms/Quadtree';
5
- import { Point } from '../../../../utils/algorithms/Point';
1
+ import { LineSegment } from '../../utils/algorithms/LineSegment';
2
+ import { LineUserData } from '../type';
3
+ import { PointSpatialHash } from '../../utils/algorithms/PointSpatialHash';
4
+ import { Quadtree } from '../../utils/algorithms/Quadtree';
5
+ import { Point } from '../../utils/algorithms/Point';
6
6
  interface IDockInfo {
7
7
  dockLine: LineSegment<LineUserData>;
8
8
  dockPoint: Point<Record<string, any>>;
@@ -1,6 +1,6 @@
1
- import { LineSegment } from '../../../../utils/algorithms/LineSegment';
2
- import { Quadtree } from '../../../../utils/algorithms/Quadtree';
3
- import { LineUserData } from '../../../type';
1
+ import { LineSegment } from '../../utils/algorithms/LineSegment';
2
+ import { Quadtree } from '../../utils/algorithms/Quadtree';
3
+ import { LineUserData } from '../type';
4
4
  type ProjectionAnalysisResult = {
5
5
  source: LineSegment;
6
6
  sourceIndex: number;
@@ -1,5 +1,5 @@
1
- import { LineSegment } from '../../../../utils/algorithms/LineSegment';
2
- import { CootTopContourInfo } from '../../../type';
1
+ import { LineSegment } from '../../utils/algorithms/LineSegment';
2
+ import { CootTopContourInfo } from '../type';
3
3
  /**
4
4
  * 墙高查询
5
5
  */
@@ -2,7 +2,7 @@ import { LineSegment } from '../../utils/algorithms/LineSegment';
2
2
  import { IPublicInfoFile, LineUserData } from '../type';
3
3
  import { WallGroupManager } from './WallGroupManager';
4
4
  import { Pipeline, HandlerContext } from '../../utils/algorithms/Pipeline';
5
- import { IRoom } from './findRooms';
5
+ import { IRoom } from './find-rooms';
6
6
  type Vec2 = {
7
7
  x: number;
8
8
  y: number;
@@ -0,0 +1,18 @@
1
+ import { LineSegment } from '../../../utils/algorithms/LineSegment';
2
+ import { CAD, ICADPlugin } from '.';
3
+ import { WallGroupManager } from '../WallGroupManager';
4
+ import { LineUserData } from '../../type';
5
+ import { Pipeline } from '../../../utils/algorithms/Pipeline';
6
+ type DataOption = {
7
+ lines: LineSegment[];
8
+ };
9
+ /** dxf 数据处理插件
10
+ */
11
+ export declare class DxfDataPlugin implements ICADPlugin {
12
+ manager: WallGroupManager;
13
+ lines: LineSegment<LineUserData>[];
14
+ pipeline: Pipeline<DataOption>;
15
+ constructor(lines: LineSegment<LineUserData>[]);
16
+ install(cad: CAD): void;
17
+ }
18
+ export {};
@@ -0,0 +1,13 @@
1
+ import { CAD, ICADPlugin } from '.';
2
+ /** dxf 绘制插件
3
+ */
4
+ export declare class DxfDrawPlugin implements ICADPlugin {
5
+ /** 获取角度范围
6
+ * @param center
7
+ * @param p1
8
+ * @param p2
9
+ * @returns
10
+ */
11
+ private getArcAngleRange;
12
+ install(cad: CAD): void;
13
+ }
@@ -1,2 +1,2 @@
1
- import { DrawData } from './drawData';
1
+ import { DrawData } from './draw-data';
2
2
  export declare function toDxfImageBlob(data: DrawData, type?: string, background?: string): Promise<any>;
@@ -1,3 +1,3 @@
1
1
  import { Unit } from '../../type';
2
- import { DrawData } from './drawData';
2
+ import { DrawData } from './draw-data';
3
3
  export declare function drawDxfString(data: DrawData, unit?: Unit): string;
@@ -2,8 +2,6 @@ import { LineSegment } from '../../../utils/algorithms/LineSegment';
2
2
  import { LineUserData, Unit } from '../../type';
3
3
  import { SetMap } from '../../../utils/algorithms/Map';
4
4
  import { Point } from '../../../utils/algorithms/Point';
5
- import { WallGroupManager } from '../WallGroupManager';
6
- import { Pipeline } from '../../../utils/algorithms/Pipeline';
7
5
  type LineSegmentType = LineSegment<LineUserData>;
8
6
  type JoinType = "jtMiter" | "jtSquare" | "jtRound";
9
7
  type EndType = "etOpenSquare" | "etOpenButt" | "etOpenRound";
@@ -101,7 +99,7 @@ export declare class CAD {
101
99
  * 转为绘制数据
102
100
  */
103
101
  _cachedDrawDataMap: Map<string, DrawData>;
104
- toDrawData(unit?: Unit): import('./drawData').DrawData;
102
+ toDrawData(unit?: Unit): import('./draw-data').DrawData;
105
103
  /** 转为图片
106
104
  * @param type
107
105
  */
@@ -142,28 +140,4 @@ export declare class CAD {
142
140
  referenceLine: LineSegment<Record<string, any>>;
143
141
  };
144
142
  }
145
- /** dxf 绘制插件
146
- */
147
- export declare class DxfDrawPlugin implements ICADPlugin {
148
- /** 获取角度范围
149
- * @param center
150
- * @param p1
151
- * @param p2
152
- * @returns
153
- */
154
- private getArcAngleRange;
155
- install(cad: CAD): void;
156
- }
157
- type DataOption = {
158
- lines: LineSegment[];
159
- };
160
- /** dxf 数据处理插件
161
- */
162
- export declare class DxfDataPlugin implements ICADPlugin {
163
- manager: WallGroupManager;
164
- lines: LineSegment<LineUserData>[];
165
- pipeline: Pipeline<DataOption>;
166
- constructor(lines: LineSegment<LineUserData>[]);
167
- install(cad: CAD): void;
168
- }
169
143
  export {};
@@ -0,0 +1,11 @@
1
+ export * from './line-clipping';
2
+ export * from './DoubleWallHelper';
3
+ export * from './clipping-double-wall';
4
+ export * from './clipping-line-user-data';
5
+ export * from './find-discrete';
6
+ export * from './line-merge-user-data';
7
+ export * from './LineGroupType';
8
+ export * from './SceneAutoGenerat';
9
+ export * from './ThreeVJiaPipeline';
10
+ export { BoundExt } from './BoundExt';
11
+ export * as tools from './tools';
@@ -0,0 +1,8 @@
1
+ import { SetDataOption } from '../../../type';
2
+ import { LineSegment } from '../../../../utils';
3
+ /** 外扩
4
+ * @param lines
5
+ * @param param1
6
+ * @returns
7
+ */
8
+ export declare function boundExt(lines: LineSegment[], { trajectory, onBoundExt }: SetDataOption): LineSegment<Record<string, any>>[];
@@ -1,4 +1,4 @@
1
- import { buildBayWindowGroup } from './bayWindow';
1
+ import { buildBayWindowGroup } from './bay-window';
2
2
  export declare class BuildGroup {
3
3
  static get bayWindow(): typeof buildBayWindowGroup;
4
4
  static get doubleWall(): ((lines_: import('../../../../../utils').LineSegment<import('../../../../type').LineUserData>[], clearInternalLine?: boolean) => import('../../../../../utils').LineSegment<import('../../../../type').LineUserData>[]) & {
@@ -1,4 +1,4 @@
1
- import { LineUserData, SetDataOption } from '../../../type';
1
+ import { LineUserData, SetDataOption } from '../../../../dxfSystem/type';
2
2
  import { LineSegment } from '../../../../utils/algorithms/LineSegment';
3
3
  /**
4
4
  * 轴对齐垂直修正
@@ -1,6 +1,6 @@
1
1
  import { LineSegment } from '../../../../utils/algorithms/LineSegment';
2
- import { LineUserData } from '../../../type';
3
- /** 双线墙对齐单线墙
2
+ import { LineUserData } from '../../../../dxfSystem/type';
3
+ /** 双线墙对齐
4
4
  * @param lines
5
5
  * @returns
6
6
  */
@@ -1,11 +1,11 @@
1
- import { axisAlignCorr } from './axisAlignCorr';
1
+ import { axisAlignCorr } from './axis-align-corr';
2
2
  import { init } from './init';
3
- import { boundExt } from './boundExt';
4
- import { doubleWallAlignment } from './doubleWallAlignment';
5
- import { wallHeightHandle } from './wallHeightHandle';
6
- import { doorSpaceHandle } from './doorSpaceHandle';
7
- import { removeShortDoubleWall } from './removeShortDoubleWall';
8
- import { doorToHole } from './doorToHole';
3
+ import { boundExt } from './bound-ext';
4
+ import { doubleWallAlignment } from './double-wall-alignment';
5
+ import { wallHeightHandle } from './wall-height-handle';
6
+ import { doorSpaceHandle } from './door-space-handle';
7
+ import { removeShortDoubleWall } from './remove-short-double-wall';
8
+ import { doorToHole } from './door-to-hole';
9
9
  import { LineSegment } from '../../../../utils/algorithms/LineSegment';
10
10
  /**
11
11
  * 默认提供的预处理函数
@@ -1,5 +1,5 @@
1
1
  import { LineSegment } from '../../../../utils/algorithms/LineSegment';
2
- import { LineUserData, SetDataOption } from '../../../type';
2
+ import { LineUserData, SetDataOption } from '../../../../dxfSystem/type';
3
3
  /** 初始化基础信息
4
4
  * @param lines
5
5
  * @param option
@@ -0,0 +1,20 @@
1
+ import { LineSegment } from '../../../utils/algorithms/LineSegment';
2
+ import { Pipeline } from '../../../utils/algorithms/Pipeline';
3
+ import { LineUserData, SetDataOption } from '../../../dxfSystem/type';
4
+ export declare class LinePipeline<T = SetDataOption> extends Pipeline<LineSegment[], T> {
5
+ static get builtin(): {
6
+ init: typeof import('./builtin/init').init;
7
+ DoorToHole: typeof import('./builtin/door-to-hole').doorToHole;
8
+ AxisAlignCorr: typeof import('./builtin/axis-align-corr').axisAlignCorr;
9
+ DoorFind: (lines: LineSegment[]) => LineSegment<Record<string, any>>[];
10
+ BoundExt: typeof import('./builtin/bound-ext').boundExt;
11
+ DoubleWallAlignment: typeof import('./builtin/double-wall-alignment').doubleWallAlignment;
12
+ WallHeightHandle: typeof import('./builtin/wall-height-handle').wallHeightHandle;
13
+ DoorSpaceHandle: typeof import('./builtin/door-space-handle').doorSpaceHandle;
14
+ RemoveShortDoubleWall: typeof import('./builtin/remove-short-double-wall').removeShortDoubleWall;
15
+ };
16
+ constructor();
17
+ add(handle: (lines: LineSegment<LineUserData>[], option: T) => LineSegment<LineUserData>[]): this;
18
+ clear(): this;
19
+ execute(data: LineSegment<Record<string, any>>[], option: T): LineSegment<Record<string, any>>[];
20
+ }
@@ -2,7 +2,7 @@ import { PointSpatialHash } from '../../utils/algorithms/PointSpatialHash';
2
2
  import { LineSegment } from '../../utils/algorithms/LineSegment';
3
3
  import { Quadtree } from '../../utils/algorithms/Quadtree';
4
4
  import { InsertObject, LineUserData, OriginalDataItem } from '../type';
5
- export * from './threeVJiaPipeline';
5
+ export * from './ThreeVJiaPipeline';
6
6
  export * from './WallGroupManager';
7
7
  /** 快捷创建查询网格
8
8
  * @param lines
package/src/index.css CHANGED
@@ -331,12 +331,12 @@
331
331
  margin-bottom: 5px;
332
332
  }
333
333
 
334
- .ml-\[1\.4em\] {
335
- margin-left: 1.4em;
334
+ .ml-1\.25 {
335
+ margin-left: calc(var(--spacing) * 1.25);
336
336
  }
337
337
 
338
- .ml-\[5px\] {
339
- margin-left: 5px;
338
+ .ml-\[1\.4em\] {
339
+ margin-left: 1.4em;
340
340
  }
341
341
 
342
342
  .ml-\[20px\] {
@@ -696,6 +696,10 @@
696
696
  background-color: #f0f0f0;
697
697
  }
698
698
 
699
+ .bg-\[--primary-color\]\! {
700
+ background-color: --primary-color !important;
701
+ }
702
+
699
703
  .bg-\[rgba\(0\,0\,0\,0\.5\)\] {
700
704
  background-color: #00000080;
701
705
  }
@@ -790,11 +794,6 @@
790
794
  font-size: 16px;
791
795
  }
792
796
 
793
- .\!leading-\[88px\] {
794
- --tw-leading: 88px !important;
795
- line-height: 88px !important;
796
- }
797
-
798
797
  .leading-\[1\.4em\] {
799
798
  --tw-leading: 1.4em;
800
799
  line-height: 1.4em;
@@ -815,6 +814,11 @@
815
814
  line-height: 40px;
816
815
  }
817
816
 
817
+ .leading-\[88px\]\! {
818
+ --tw-leading: 88px !important;
819
+ line-height: 88px !important;
820
+ }
821
+
818
822
  .font-bold {
819
823
  --tw-font-weight: var(--font-weight-bold);
820
824
  font-weight: var(--font-weight-bold);
@@ -1207,27 +1211,27 @@
1207
1211
  -webkit-tap-highlight-color: transparent;
1208
1212
  }
1209
1213
 
1210
- ul li[data-v-624dc8f8]{
1214
+ ul li[data-v-b3b042a9]{
1211
1215
  background: white;
1212
1216
  line-height: 38px;
1213
1217
  text-align: center;
1214
1218
  border-radius: 6px;
1215
1219
  }
1216
- ul li[data-v-624dc8f8]:active {
1220
+ ul li[data-v-b3b042a9]:active {
1217
1221
  background: #eee;
1218
1222
  }
1219
- .confirm[data-v-624dc8f8] {
1223
+ .confirm[data-v-b3b042a9] {
1220
1224
  background: var(--primary-color);
1221
1225
  color: #fff;
1222
1226
  }
1223
- .confirm[data-v-624dc8f8]:active {
1227
+ .confirm[data-v-b3b042a9]:active {
1224
1228
  filter: grayscale(0.4);
1225
1229
  background: var(--primary-color);
1226
1230
  }
1227
- .flashing-ani[data-v-624dc8f8] {
1228
- animation: flashing-624dc8f8 1s linear infinite;
1231
+ .flashing-ani[data-v-b3b042a9] {
1232
+ animation: flashing-b3b042a9 1s linear infinite;
1229
1233
  }
1230
- button[data-v-624dc8f8] {
1234
+ button[data-v-b3b042a9] {
1231
1235
  padding: 4px 10px;
1232
1236
  border: none;
1233
1237
  border-radius: 6px;
@@ -1235,10 +1239,10 @@ button[data-v-624dc8f8] {
1235
1239
  background: var(--primary-color);
1236
1240
  font-size: 12px;
1237
1241
  }
1238
- button[data-v-624dc8f8]:active {
1242
+ button[data-v-b3b042a9]:active {
1239
1243
  filter: grayscale(0.4);
1240
1244
  }
1241
- @keyframes flashing-624dc8f8 {
1245
+ @keyframes flashing-b3b042a9 {
1242
1246
  0% {
1243
1247
  opacity: 1;
1244
1248
  }
@@ -1253,17 +1257,17 @@ button[data-v-624dc8f8]:active {
1253
1257
  }
1254
1258
  }
1255
1259
 
1256
- [data-v-efeedf3d] {
1260
+ [data-v-cd7c599e] {
1257
1261
  font-family: 微软雅黑;
1258
1262
  }
1259
- .number[data-v-efeedf3d] {
1263
+ .number[data-v-cd7c599e] {
1260
1264
  color: #a7a7a7
1261
1265
  }
1262
1266
 
1263
- [data-v-e23c82bd] {
1267
+ [data-v-6ec3e5bb] {
1264
1268
  font-family: 宋体;
1265
1269
  }
1266
- .button[data-v-e23c82bd] {
1270
+ .button[data-v-6ec3e5bb] {
1267
1271
  padding: 5px 10px;
1268
1272
  border: none;
1269
1273
  background: var(--primary-color);
package/src/index3.js CHANGED
@@ -11406,7 +11406,7 @@ const _hoisted_4$2 = {
11406
11406
  const _hoisted_5$2 = { class: "grid grid-cols-4 grid-rows-4 gap-[5px] rounded-[6px] overflow-hidden" };
11407
11407
  const _hoisted_6$2 = {
11408
11408
  key: 1,
11409
- class: "row-start-3 row-end-5 col-start-4 col-end-4 !leading-[88px]"
11409
+ class: "row-start-3 row-end-5 col-start-4 col-end-4 leading-[88px]!"
11410
11410
  };
11411
11411
  const _hoisted_7$2 = { key: 3 };
11412
11412
  const _sfc_main$4 = /* @__PURE__ */ defineComponent({
@@ -11523,7 +11523,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
11523
11523
  }, "9"),
11524
11524
  __props.showConfirm ? (openBlock(), createElementBlock("li", {
11525
11525
  key: 0,
11526
- class: "row-start-3 row-end-5 col-start-4 col-end-4 !leading-[88px] confirm",
11526
+ class: "row-start-3 row-end-5 col-start-4 col-end-4 leading-[88px]! confirm",
11527
11527
  onClick: _cache[15] || (_cache[15] = ($event) => emits("confirm", Number(value.value)))
11528
11528
  }, "确认")) : (openBlock(), createElementBlock("li", _hoisted_6$2)),
11529
11529
  createElementVNode("li", {
@@ -11546,7 +11546,7 @@ const _export_sfc = (sfc, props) => {
11546
11546
  }
11547
11547
  return target;
11548
11548
  };
11549
- const NumberEditor = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["__scopeId", "data-v-624dc8f8"]]);
11549
+ const NumberEditor = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["__scopeId", "data-v-b3b042a9"]]);
11550
11550
  function createPromise() {
11551
11551
  let resolve, reject;
11552
11552
  const promise = new Promise((re2, rt2) => {
@@ -13906,7 +13906,7 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
13906
13906
  };
13907
13907
  }
13908
13908
  });
13909
- const PropertiesPanelView = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-efeedf3d"]]);
13909
+ const PropertiesPanelView = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-cd7c599e"]]);
13910
13910
  class PropertiesPanel extends CommandFlowComponent {
13911
13911
  static name = "PropertiesPanel";
13912
13912
  container = new THREE.Group();
@@ -15983,7 +15983,7 @@ function createPage(context, opt) {
15983
15983
  "onClick": () => directionLock.value = !directionLock.value,
15984
15984
  "class": {
15985
15985
  "rounded-[100px] size-[32px] bg-[#717171] flex justify-center items-center transition-colors": true,
15986
- "!bg-[var(--primary-color)]": directionLock.value
15986
+ "bg-[--primary-color]!": directionLock.value
15987
15987
  }
15988
15988
  }, [createVNode("svg", {
15989
15989
  "fill": "#fff",
@@ -16001,7 +16001,7 @@ function createPage(context, opt) {
16001
16001
  "onClick": () => follow.value = !follow.value,
16002
16002
  "class": {
16003
16003
  "rounded-[100px] size-[32px] bg-[#717171] flex justify-center items-center transition-colors": true,
16004
- "!bg-[var(--primary-color)]": follow.value
16004
+ "bg-[--primary-color]!": follow.value
16005
16005
  }
16006
16006
  }, [createVNode("svg", {
16007
16007
  "fill": "#fff",
@@ -16022,7 +16022,7 @@ function createPage(context, opt) {
16022
16022
  "onClick": opt.onResetClick,
16023
16023
  "class": {
16024
16024
  "rounded-[6px] size-[32px] bg-[#717171] flex justify-center items-center transition-colors": true,
16025
- "!bg-[var(--primary-color)] button": true
16025
+ "bg-[--primary-color]! button": true
16026
16026
  }
16027
16027
  }, [createVNode("svg", {
16028
16028
  "fill": "#fff",
@@ -17308,7 +17308,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
17308
17308
  };
17309
17309
  }
17310
17310
  });
17311
- const EditorToolContent = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-e23c82bd"]]);
17311
+ const EditorToolContent = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-6ec3e5bb"]]);
17312
17312
  class StorageHelper {
17313
17313
  static get(key, defaultValue = void 0) {
17314
17314
  const value = localStorage.getItem(key);
@@ -18,11 +18,19 @@ export declare class LineSegmentUtils {
18
18
  * @param lines
19
19
  */
20
20
  static getLinesCenter(lines: LineSegment[]): Point<Record<string, any>>;
21
+ /** 合并分组和处理
22
+ * @param groups
23
+ * @returns
24
+ */
25
+ static GroupBuilder<T = any, K extends PropertyKey = string>(groups: Partial<Record<K, LineSegment<T>[]>>): {
26
+ handle(k: K, fn: (lines: LineSegment<T>[]) => LineSegment<T>[]): /*elided*/ any;
27
+ merge(): LineSegment<T>[];
28
+ };
21
29
  /** 自定义分组
22
30
  * @param lines
23
31
  * @returns
24
32
  */
25
- static group<T = any, K extends string | number | symbol = string>(lines: LineSegment<T>[], callBackFun: (line: LineSegment<T>) => K): Partial<Record<K, LineSegment<T>[]>>;
33
+ static group<T = any, K extends PropertyKey = string>(lines: LineSegment<T>[], fn: (line: LineSegment<T>) => K): Partial<Record<K, LineSegment<T>[]>>;
26
34
  /** 通过在同一路径上且平行的线段分组
27
35
  * @param lines
28
36
  */
@@ -113,7 +121,7 @@ export declare class LineSegmentUtils {
113
121
  * @returns
114
122
  */
115
123
  static flatPoints(lines: LineSegment[] | LineSegment): any[];
116
- static resolveIntersection<T>(lines: LineSegment[], onClip?: (target: LineSegment<T>, newLines: LineSegment<T>[]) => void): LineSegment<T>[];
124
+ static splitIntersections<T>(lines: LineSegment[], onClip?: (target: LineSegment<T>, newLines: LineSegment<T>[]) => void): LineSegment<T>[];
117
125
  /** 对线段组统计,找到主导方向线
118
126
  * @param lineSegments
119
127
  * @returns
@@ -127,4 +135,9 @@ export declare class LineSegmentUtils {
127
135
  readonly modify: () => void;
128
136
  clear(): void;
129
137
  };
138
+ /** 转为虚线
139
+ * @param line
140
+ * @param pattern
141
+ */
142
+ static dash(line: LineSegment, pattern: number[]): LineSegment<Record<string, any>>[];
130
143
  }