From a2f4be8572375b0e5911bc6ea0ce79234d4f8282 Mon Sep 17 00:00:00 2001 From: ChenX Date: Wed, 19 Jun 2019 11:00:00 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E4=BB=A3=E7=A0=81=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E7=BB=93=E6=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- __test__/ALG/region.test.ts | 4 +- __test__/Booloperate/BoardCutting.test.ts | 2 +- __test__/Booloperate/bool.test.ts | 2 +- __test__/Booloperate/bool2.test.ts | 2 +- __test__/EdgeSealing/EdgeSealing.test.ts | 6 +- .../FeedingToolPath/FeedingToolPath.test.ts | 2 +- __test__/FileSystem/file.test.ts | 4 +- __test__/FileSystem/wblockClone.test.ts | 2 +- __test__/Fillet/polyline.test.ts | 2 +- __test__/Geometry/arc.test.ts | 2 +- __test__/Geometry/circle.test.ts | 2 +- __test__/Geometry/ellipse.test.ts | 12 +- __test__/Geometry/intersect.test.ts | 8 +- __test__/Interest/line.test.ts | 2 +- __test__/Line/line.test.ts | 2 +- __test__/Polyline/Intersect.test.ts | 2 +- __test__/Polyline/PointInPolyline.test.ts | 2 +- .../Polyline/PolylineGetPointAtParam.test.ts | 2 +- __test__/Polyline/PtInPolylineDir.test.ts | 2 +- __test__/Polyline/join.test.ts | 4 +- __test__/Polyline/offset.test.ts | 4 +- __test__/Polyline/offsetbug.test.ts | 4 +- __test__/Polyline/polyline.test.ts | 2 +- __test__/Polyline/split.test.ts | 2 +- __test__/Utils/LoadEntity.util.ts | 10 +- src/Add-on/AddPtOnBoard.ts | 4 +- src/Add-on/Array.ts | 4 +- src/Add-on/BoardBatchCurtail.ts | 2 +- src/Add-on/BoardCutting/AutoCuttingReactor.ts | 2 +- src/Add-on/BoardCutting/LinearCutting.ts | 4 +- .../BoardCutting/NonAssociativeCutting.ts | 4 +- src/Add-on/BoardCutting/ReferenceCutting.ts | 6 +- .../BoardCutting/ReferenceCuttingModal.tsx | 2 +- src/Add-on/BoardFindModify.ts | 2 +- src/Add-on/BoolOperation.ts | 2 +- src/Add-on/Break.ts | 4 +- src/Add-on/CommandFeeding.ts | 4 +- src/Add-on/Copy.ts | 4 +- src/Add-on/CopyClip.ts | 2 +- src/Add-on/DXFLoad.ts | 8 +- src/Add-on/Divide.ts | 4 +- src/Add-on/DrawArc.ts | 2 +- src/Add-on/DrawBoard/DrawBehindBoard.ts | 2 +- src/Add-on/DrawBoard/DrawBoardTool.ts | 2 +- src/Add-on/DrawBoard/DrawClosingStrip.ts | 2 +- src/Add-on/DrawBoard/DrawDoor.ts | 2 +- src/Add-on/DrawBoard/DrawLayerBoard.ts | 2 +- src/Add-on/DrawBoard/DrawLeftRightBoard.ts | 2 +- src/Add-on/DrawBoard/DrawSingleBoard.ts | 2 +- .../DrawBoard/DrawSpecialShapeBoardTool.ts | 10 +- .../DrawBoard/DrawSpecialShapedBoard.ts | 4 +- .../DrawSpecialShapedBoardByContour.ts | 2 +- src/Add-on/DrawBoard/DrawTopBottomBoard.ts | 2 +- src/Add-on/DrawBoard/DrawVerticalBoard.ts | 2 +- src/Add-on/DrawCircle.ts | 4 +- src/Add-on/DrawDim/DimContinueAligen.ts | 2 +- src/Add-on/DrawDim/DimContinueLineAngular.ts | 4 +- src/Add-on/DrawDim/Draw2LineAngularDim.ts | 10 +- src/Add-on/DrawDim/DrawAlignedDimension.ts | 8 +- src/Add-on/DrawDim/DrawRadiusDim.ts | 4 +- src/Add-on/DrawDrilling/DeleteDrill.ts | 2 +- src/Add-on/DrawDrilling/DrawDrilling.ts | 2 +- src/Add-on/DrawDrilling/DrawDrillingTool.ts | 4 +- src/Add-on/DrawDrilling/DrillingReactor.ts | 2 +- src/Add-on/DrawEllipse.ts | 2 +- src/Add-on/DrawLine.ts | 6 +- src/Add-on/DrawPoint.ts | 2 +- src/Add-on/DrawPolyline.ts | 2 +- src/Add-on/DrawRect.ts | 2 +- src/Add-on/DrawRegion.ts | 4 +- src/Add-on/DrawTestReg.ts | 6 +- src/Add-on/DrawTopline.ts | 10 +- .../DrawWineRack/DrawBlisWineRackTool.ts | 6 +- .../DrawWineRack/DrawUprightWineRackTool.ts | 4 +- src/Add-on/DrawWineRack/DrawWinRackTool.ts | 2 +- src/Add-on/DrawZeroCircle.ts | 6 +- src/Add-on/Entsel.ts | 2 +- src/Add-on/Explode.ts | 6 +- src/Add-on/ExplosionMap.ts | 2 +- src/Add-on/Extends.ts | 6 +- src/Add-on/Fillet.ts | 6 +- src/Add-on/FilletUtils.ts | 12 +- src/Add-on/Gesture/Gesture_DrawLayerBoard.ts | 2 +- src/Add-on/Insert.ts | 2 +- src/Add-on/Join.ts | 12 +- src/Add-on/LatticeDrawer/LatticeDrawerTool.ts | 4 +- src/Add-on/Length.ts | 2 +- src/Add-on/Lisp.ts | 2 +- src/Add-on/Offset.ts | 2 +- src/Add-on/OffsetX.ts | 2 +- src/Add-on/PasteClip.ts | 2 +- src/Add-on/Pedit.ts | 6 +- src/Add-on/RevPl.ts | 2 +- src/Add-on/Rotate.ts | 2 +- src/Add-on/RotateLayerBoard.ts | 2 +- src/Add-on/Scale.ts | 2 +- src/Add-on/Sweep.ts | 4 +- src/Add-on/Tangent.ts | 4 +- src/Add-on/TestFb.ts | 4 +- src/Add-on/Trim.ts | 8 +- src/Add-on/Wblock.ts | 2 +- src/Add-on/closetest.ts | 10 +- src/Add-on/instest.ts | 4 +- src/Add-on/polytest.ts | 10 +- src/Add-on/test/testIntersect.ts | 8 +- src/Add-on/testEntity/TestCurve.ts | 10 +- src/Add-on/testEntity/test.ts | 2 +- src/Add-on/testEntity/testCollision.ts | 4 +- src/ApplicationServices/Application.ts | 2 +- src/Common/CurveUtils.ts | 12 +- src/Common/SerializeMaterial.ts | 2 +- src/Common/StretchParse.ts | 2 +- src/Common/Utils.ts | 2 +- src/DatabaseServices/3DSolid/Cylineder.ts | 2 +- src/DatabaseServices/3DSolid/GangDrill.ts | 2 +- src/DatabaseServices/3DSolid/Solid3D.ts | 2 +- src/DatabaseServices/3DSolid/SweepSolid.ts | 4 +- src/DatabaseServices/BlockTableRecord.ts | 2 +- src/DatabaseServices/CADFiler.ts | 2 +- src/DatabaseServices/Contour.ts | 8 +- src/DatabaseServices/Database.ts | 4 +- .../Dimension/2LineAngularDimension.ts | 6 +- .../Dimension/AlignedDimension.ts | 6 +- src/DatabaseServices/Dimension/DimDiameter.ts | 2 +- .../Dimension/LinearDimension.ts | 2 +- .../Dimension/RadiusDimension.ts | 6 +- src/DatabaseServices/{ => Entity}/Arc.ts | 22 +- src/DatabaseServices/{ => Entity}/Board.ts | 26 +- src/DatabaseServices/{ => Entity}/Circle.ts | 24 +- src/DatabaseServices/{ => Entity}/Curve.ts | 14 +- src/DatabaseServices/{ => Entity}/Ellipse.ts | 20 +- src/DatabaseServices/{ => Entity}/Entity.ts | 30 +- src/DatabaseServices/{ => Entity}/Extrude.ts | 46 +- src/DatabaseServices/{ => Entity}/Line.ts | 22 +- src/DatabaseServices/{ => Entity}/Point.ts | 8 +- src/DatabaseServices/{ => Entity}/Polyline.ts | 32 +- src/DatabaseServices/{ => Entity}/Region.ts | 26 +- src/DatabaseServices/FaceEntity.ts | 2 +- src/DatabaseServices/ISerialize.ts | 4 +- src/DatabaseServices/Lights/Light.ts | 2 +- src/DatabaseServices/PointInPolyline.ts | 6 +- src/DatabaseServices/Shape.ts | 17 +- src/DatabaseServices/Spline.ts | 2 +- .../Template/Action/TemplateAction.ts | 32 + .../Template/Action/TemplateMoveAction.ts | 44 + .../Action/TemplateStretchGripAction.ts | 63 ++ .../Action/TemplateStretchScaleBoxAction.ts | 86 ++ .../Template/Action/TestTemplateAction.ts | 35 + .../Template/Param/TemplateParam.ts | 124 +++ .../Template/Param/TemplateParamType.ts | 11 + .../Template/TemplateRecord.ts | 151 +++ .../{ => Template}/TemplateTable.ts | 4 +- src/DatabaseServices/Template/TemplateTest.ts | 304 ++++++ src/DatabaseServices/Template/TemplateType.ts | 13 + src/DatabaseServices/TemplateRecord.ts | 901 ------------------ src/DatabaseServices/Text/Text.ts | 2 +- src/Editor/CommandRegister.ts | 2 +- src/Editor/ContextMenu.ts | 2 +- src/Editor/DbClick/DBClickPolyline.ts | 6 +- src/Editor/DbClick/DbClick.ts | 4 +- src/Editor/Editor.ts | 2 +- src/Editor/GripDragServices.ts | 4 +- src/Editor/Jig.ts | 2 +- src/Editor/JigUtils.ts | 2 +- src/Editor/PromptResult.ts | 2 +- src/Editor/SelectBase.ts | 2 +- src/Editor/SelectControls.ts | 2 +- src/Editor/SelectFilter.ts | 2 +- src/Editor/SelectSet.ts | 2 +- src/Editor/SnapServices.ts | 12 +- .../TranstrolControl/TransformServices.ts | 2 +- src/Geometry/CreateWireframe.ts | 6 +- src/Geometry/CurveIntersection.ts | 2 +- src/Geometry/CurveMap.ts | 2 +- src/Geometry/DrillParse/BoardGetFace.ts | 8 +- src/Geometry/DrillParse/CollisionDetection.ts | 2 +- src/Geometry/DrillParse/Face.ts | 6 +- src/Geometry/RegionParse.ts | 6 +- src/Geometry/SpaceParse/ClampSpaceParse.ts | 2 +- src/Geometry/SpaceParse/ISpaceParse.ts | 2 +- src/Geometry/SpaceParse/PointSelectBoards.ts | 4 +- src/Geometry/SpaceParse/PointSelectSpace.ts | 2 +- .../SpaceParse/PointSelectSpaceClamp.ts | 2 +- .../SpaceParse/PointSelectSpaceSurround.ts | 2 +- .../SpaceParse/SurroundOutlineParse.ts | 6 +- src/Geometry/SpaceParse/SurroundSpaceParse.ts | 2 +- src/Geometry/SweepGeometry.ts | 4 +- src/GraphicsSystem/BoolOperateUtils.ts | 8 +- src/GraphicsSystem/CalcEdgeSealing.ts | 8 +- src/GraphicsSystem/IntersectWith.ts | 12 +- src/GraphicsSystem/LinkSelft.ts | 2 +- src/GraphicsSystem/OffsetPolyline.ts | 10 +- .../ToolPath/FeedingToolPath.ts | 8 +- .../ToolPath/OptimizeToolPath.ts | 8 +- src/GraphicsSystem/ToolPath/VKnifToolPath.ts | 6 +- src/GraphicsSystem/Viewer.ts | 2 +- src/Production/Product.ts | 8 +- src/Reactor/CommandReactor.ts | 2 +- src/UI/Components/Board/BoardCommon.tsx | 2 +- src/UI/Components/Board/BoardConfigModal.tsx | 6 +- src/UI/Components/Board/BoardOptionModal.tsx | 2 +- src/UI/Components/Board/BoardProcessModal.tsx | 4 +- src/UI/Components/MaterialExplorer.tsx | 2 +- src/UI/Components/Template/ToplineManage.tsx | 4 +- src/UI/Store/BoardInterface.ts | 2 +- src/UI/Store/BoardStore.ts | 2 +- src/UI/Store/EntityStore.ts | 14 +- src/UI/Store/LightStore.ts | 4 +- src/UI/Store/RightPanelStore.ts | 6 +- 209 files changed, 1377 insertions(+), 1416 deletions(-) rename src/DatabaseServices/{ => Entity}/Arc.ts (97%) rename src/DatabaseServices/{ => Entity}/Board.ts (96%) rename src/DatabaseServices/{ => Entity}/Circle.ts (94%) rename src/DatabaseServices/{ => Entity}/Curve.ts (93%) rename src/DatabaseServices/{ => Entity}/Ellipse.ts (96%) rename src/DatabaseServices/{ => Entity}/Entity.ts (92%) rename src/DatabaseServices/{ => Entity}/Extrude.ts (96%) rename src/DatabaseServices/{ => Entity}/Line.ts (95%) rename src/DatabaseServices/{ => Entity}/Point.ts (91%) rename src/DatabaseServices/{ => Entity}/Polyline.ts (97%) rename src/DatabaseServices/{ => Entity}/Region.ts (90%) create mode 100644 src/DatabaseServices/Template/Action/TemplateAction.ts create mode 100644 src/DatabaseServices/Template/Action/TemplateMoveAction.ts create mode 100644 src/DatabaseServices/Template/Action/TemplateStretchGripAction.ts create mode 100644 src/DatabaseServices/Template/Action/TemplateStretchScaleBoxAction.ts create mode 100644 src/DatabaseServices/Template/Action/TestTemplateAction.ts create mode 100644 src/DatabaseServices/Template/Param/TemplateParam.ts create mode 100644 src/DatabaseServices/Template/Param/TemplateParamType.ts create mode 100644 src/DatabaseServices/Template/TemplateRecord.ts rename src/DatabaseServices/{ => Template}/TemplateTable.ts (57%) create mode 100644 src/DatabaseServices/Template/TemplateTest.ts create mode 100644 src/DatabaseServices/Template/TemplateType.ts delete mode 100644 src/DatabaseServices/TemplateRecord.ts diff --git a/__test__/ALG/region.test.ts b/__test__/ALG/region.test.ts index fc16578ee..2ee66041e 100644 --- a/__test__/ALG/region.test.ts +++ b/__test__/ALG/region.test.ts @@ -1,7 +1,7 @@ import { Vector3 } from 'three'; import { CADFiler } from '../../src/DatabaseServices/CADFiler'; -import { Curve } from '../../src/DatabaseServices/Curve'; -import { Line } from './../../src/DatabaseServices/Line'; +import { Curve } from '../../src/DatabaseServices/Entity/Curve'; +import { Line } from '../../src/DatabaseServices/Entity/Line'; import { RegionParse } from './../../src/Geometry/RegionParse'; import { LoadCurvesFromFileData } from '../Utils/LoadEntity.util'; diff --git a/__test__/Booloperate/BoardCutting.test.ts b/__test__/Booloperate/BoardCutting.test.ts index 655609f18..f52163806 100644 --- a/__test__/Booloperate/BoardCutting.test.ts +++ b/__test__/Booloperate/BoardCutting.test.ts @@ -1,5 +1,5 @@ import { LoadBoardsFromFileData } from "../Utils/LoadEntity.util"; -import { Board } from "../../src/DatabaseServices/Board"; +import { Board } from "../../src/DatabaseServices/Entity/Board"; import "../Utils/jest.util"; function CuttingBoard(orgBoard: Board, cutBoards: Board[]) diff --git a/__test__/Booloperate/bool.test.ts b/__test__/Booloperate/bool.test.ts index 9d1c78b02..bd1219700 100644 --- a/__test__/Booloperate/bool.test.ts +++ b/__test__/Booloperate/bool.test.ts @@ -1,4 +1,4 @@ -import { Region } from "../../src/DatabaseServices/Region"; +import { Region } from "../../src/DatabaseServices/Entity/Region"; import { BoolOpeartionType } from "../../src/GraphicsSystem/BoolOperateUtils"; import { LoadRegionsFromFileData } from "../Utils/LoadEntity.util"; diff --git a/__test__/Booloperate/bool2.test.ts b/__test__/Booloperate/bool2.test.ts index 5fcbccf9e..2ccdad8a0 100644 --- a/__test__/Booloperate/bool2.test.ts +++ b/__test__/Booloperate/bool2.test.ts @@ -1,4 +1,4 @@ -import { Region } from "../../src/DatabaseServices/Region"; +import { Region } from "../../src/DatabaseServices/Entity/Region"; import { BoolOpeartionType } from "../../src/GraphicsSystem/BoolOperateUtils"; import { LoadRegionsFromFileData } from "../Utils/LoadEntity.util"; diff --git a/__test__/EdgeSealing/EdgeSealing.test.ts b/__test__/EdgeSealing/EdgeSealing.test.ts index e1ad241bc..19af51795 100644 --- a/__test__/EdgeSealing/EdgeSealing.test.ts +++ b/__test__/EdgeSealing/EdgeSealing.test.ts @@ -1,6 +1,6 @@ -import { Board } from "../../src/DatabaseServices/Board"; -import { Curve } from "../../src/DatabaseServices/Curve"; -import { Polyline } from "../../src/DatabaseServices/Polyline"; +import { Board } from "../../src/DatabaseServices/Entity/Board"; +import { Curve } from "../../src/DatabaseServices/Entity/Curve"; +import { Polyline } from "../../src/DatabaseServices/Entity/Polyline"; import { calcEdgeSealing, paragraphCulist } from "../../src/GraphicsSystem/CalcEdgeSealing"; import { LoadBoardsFromFileData } from "../Utils/LoadEntity.util"; diff --git a/__test__/FeedingToolPath/FeedingToolPath.test.ts b/__test__/FeedingToolPath/FeedingToolPath.test.ts index a18dfea48..f5bbff1e5 100644 --- a/__test__/FeedingToolPath/FeedingToolPath.test.ts +++ b/__test__/FeedingToolPath/FeedingToolPath.test.ts @@ -1,4 +1,4 @@ -import { Board } from "../../src/DatabaseServices/Board"; +import { Board } from "../../src/DatabaseServices/Entity/Board"; import { FeedingToolPath } from "../../src/GraphicsSystem/ToolPath/FeedingToolPath"; import { LoadBoardsFromFileData } from "../Utils/LoadEntity.util"; diff --git a/__test__/FileSystem/file.test.ts b/__test__/FileSystem/file.test.ts index 820bd248b..7eb24797b 100644 --- a/__test__/FileSystem/file.test.ts +++ b/__test__/FileSystem/file.test.ts @@ -7,9 +7,9 @@ import { CADObject } from '../../src/DatabaseServices/CADObject'; import { CommandHistoryRecord } from '../../src/DatabaseServices/CommandHistoryRecord'; import { CreateObjectData } from '../../src/DatabaseServices/CreateObjectData'; import { Database } from '../../src/DatabaseServices/Database'; -import { Entity } from '../../src/DatabaseServices/Entity'; +import { Entity } from '../../src/DatabaseServices/Entity/Entity'; import { HistorycRecord } from '../../src/DatabaseServices/HistorycRecord'; -import { Line } from '../../src/DatabaseServices/Line'; +import { Line } from '../../src/DatabaseServices/Entity/Line'; import { ObjectAllDataHistoryRecord } from '../../src/DatabaseServices/ObjectAllDataHistoryRecord'; import { RemoveObjectData } from '../../src/DatabaseServices/RemoveObjectData'; diff --git a/__test__/FileSystem/wblockClone.test.ts b/__test__/FileSystem/wblockClone.test.ts index 75e5cdfd8..9a1b3031a 100644 --- a/__test__/FileSystem/wblockClone.test.ts +++ b/__test__/FileSystem/wblockClone.test.ts @@ -4,7 +4,7 @@ import { DuplicateRecordCloning } from '../../src/Common/Status'; import { PhysicalMaterialRecord } from '../../src/DatabaseServices/PhysicalMaterialRecord'; import { TextureTableRecord } from '../../src/DatabaseServices/Texture'; import { Factory } from '../../src/DatabaseServices/CADFactory'; -import { Entity } from '../../src/DatabaseServices/Entity'; +import { Entity } from '../../src/DatabaseServices/Entity/Entity'; import { ObjectId } from '../../src/DatabaseServices/ObjectId'; new CADFiler(); diff --git a/__test__/Fillet/polyline.test.ts b/__test__/Fillet/polyline.test.ts index b841a7e3e..640ec19e5 100644 --- a/__test__/Fillet/polyline.test.ts +++ b/__test__/Fillet/polyline.test.ts @@ -2,7 +2,7 @@ import { Vector3 } from "three"; import { FilletUtils } from "../../src/Add-on/FilletUtils"; import { equalCurve } from "../../src/Common/CurveUtils"; -import { Polyline } from "../../src/DatabaseServices/Polyline"; +import { Polyline } from "../../src/DatabaseServices/Entity/Polyline"; import { PromptEntityResult } from "../../src/Editor/PromptResult"; import { LoadEntityFromFileData } from "../Utils/LoadEntity.util"; diff --git a/__test__/Geometry/arc.test.ts b/__test__/Geometry/arc.test.ts index 4f49c543a..20856d36e 100644 --- a/__test__/Geometry/arc.test.ts +++ b/__test__/Geometry/arc.test.ts @@ -1,5 +1,5 @@ import { Vector3 } from 'three'; -import { Arc } from '../../src/DatabaseServices/Arc'; +import { Arc } from '../../src/DatabaseServices/Entity/Arc'; import { equaln, equalv3 } from '../../src/Geometry/GeUtils'; import { Status } from '../../src/Common/Status'; diff --git a/__test__/Geometry/circle.test.ts b/__test__/Geometry/circle.test.ts index 534a2c1ea..77c47ae62 100644 --- a/__test__/Geometry/circle.test.ts +++ b/__test__/Geometry/circle.test.ts @@ -1,5 +1,5 @@ import { Vector3 } from 'three'; -import { Circle } from '../../src/DatabaseServices/Circle'; +import { Circle } from '../../src/DatabaseServices/Entity/Circle'; import { equaln, equalv3 } from '../../src/Geometry/GeUtils'; test('圆参数', () => diff --git a/__test__/Geometry/ellipse.test.ts b/__test__/Geometry/ellipse.test.ts index 3ac9e262c..768ee7c30 100644 --- a/__test__/Geometry/ellipse.test.ts +++ b/__test__/Geometry/ellipse.test.ts @@ -1,13 +1,13 @@ import { Vector3 } from "three"; -import { Ellipse } from "../../src/DatabaseServices/Ellipse"; +import { Ellipse } from "../../src/DatabaseServices/Entity/Ellipse"; import { equalv3 } from "../../src/Geometry/GeUtils"; import { Status } from "../../src/Common/Status"; -import { Line } from "../../src/DatabaseServices/Line"; -import { Arc } from "../../src/DatabaseServices/Arc"; -import { Circle } from "../../src/DatabaseServices/Circle"; +import { Line } from "../../src/DatabaseServices/Entity/Line"; +import { Arc } from "../../src/DatabaseServices/Entity/Arc"; +import { Circle } from "../../src/DatabaseServices/Entity/Circle"; import { LoadCurvesFromFileData } from "../Utils/LoadEntity.util"; -import { Polyline } from "../../src/DatabaseServices/Polyline"; -import { Curve } from "../../src/DatabaseServices/Curve"; +import { Polyline } from "../../src/DatabaseServices/Entity/Polyline"; +import { Curve } from "../../src/DatabaseServices/Entity/Curve"; describe('完整椭圆', () => { diff --git a/__test__/Geometry/intersect.test.ts b/__test__/Geometry/intersect.test.ts index 93379d8cb..58ea3cd16 100644 --- a/__test__/Geometry/intersect.test.ts +++ b/__test__/Geometry/intersect.test.ts @@ -1,9 +1,9 @@ import * as THREE from 'three'; import { Vector3 } from 'three'; -import { Arc } from '../../src/DatabaseServices/Arc'; -import { Circle } from '../../src/DatabaseServices/Circle'; -import { Curve } from '../../src/DatabaseServices/Curve'; -import { Line } from '../../src/DatabaseServices/Line'; +import { Arc } from '../../src/DatabaseServices/Entity/Arc'; +import { Circle } from '../../src/DatabaseServices/Entity/Circle'; +import { Curve } from '../../src/DatabaseServices/Entity/Curve'; +import { Line } from '../../src/DatabaseServices/Entity/Line'; import { IntersectCircleAndCircle, IntersectLine3AndLine3, IntersectOption } from '../../src/GraphicsSystem/IntersectWith'; import { LoadCurvesFromFileData, LoadEntityFromFileData } from '../Utils/LoadEntity.util'; diff --git a/__test__/Interest/line.test.ts b/__test__/Interest/line.test.ts index 90507c34f..70927a659 100644 --- a/__test__/Interest/line.test.ts +++ b/__test__/Interest/line.test.ts @@ -1,6 +1,6 @@ import { Vector3 } from 'three'; -import { Line } from '../../src/DatabaseServices/Line'; +import { Line } from '../../src/DatabaseServices/Entity/Line'; import { IntersectLineAndLine, IntersectOption } from '../../src/GraphicsSystem/IntersectWith'; test('直线相交,共线', () => diff --git a/__test__/Line/line.test.ts b/__test__/Line/line.test.ts index 09e4a1b5a..22f7fce76 100644 --- a/__test__/Line/line.test.ts +++ b/__test__/Line/line.test.ts @@ -1,5 +1,5 @@ -import { Line } from '../../src/DatabaseServices/Line'; +import { Line } from '../../src/DatabaseServices/Entity/Line'; import { Vector3 } from 'three'; test('直线参数', () => diff --git a/__test__/Polyline/Intersect.test.ts b/__test__/Polyline/Intersect.test.ts index d564f75b0..9538bab2d 100644 --- a/__test__/Polyline/Intersect.test.ts +++ b/__test__/Polyline/Intersect.test.ts @@ -1,4 +1,4 @@ -import { Polyline } from "../../src/DatabaseServices/Polyline"; +import { Polyline } from "../../src/DatabaseServices/Entity/Polyline"; import { Vector2, Vector3 } from "three"; import { IntersectOption } from "../../src/GraphicsSystem/IntersectWith"; describe("相交", () => diff --git a/__test__/Polyline/PointInPolyline.test.ts b/__test__/Polyline/PointInPolyline.test.ts index bb5a7c32a..9502da65f 100644 --- a/__test__/Polyline/PointInPolyline.test.ts +++ b/__test__/Polyline/PointInPolyline.test.ts @@ -1,7 +1,7 @@ import { Vector2, Vector3 } from 'three'; import { IsPointInPolyLine } from '../../src/DatabaseServices/PointInPolyline'; -import { Polyline } from '../../src/DatabaseServices/Polyline'; +import { Polyline } from '../../src/DatabaseServices/Entity/Polyline'; import { CADFiler } from '../../src/DatabaseServices/CADFiler'; import { LoadCurvesFromFileData } from '../Utils/LoadEntity.util'; diff --git a/__test__/Polyline/PolylineGetPointAtParam.test.ts b/__test__/Polyline/PolylineGetPointAtParam.test.ts index 475fa3539..6fde181c4 100644 --- a/__test__/Polyline/PolylineGetPointAtParam.test.ts +++ b/__test__/Polyline/PolylineGetPointAtParam.test.ts @@ -1,5 +1,5 @@ import { Vector2 } from "three"; -import { Polyline } from "../../src/DatabaseServices/Polyline"; +import { Polyline } from "../../src/DatabaseServices/Entity/Polyline"; import { equaln } from "../../src/Geometry/GeUtils"; test('获得点,来自参数', () => diff --git a/__test__/Polyline/PtInPolylineDir.test.ts b/__test__/Polyline/PtInPolylineDir.test.ts index d9374db2d..9d44e40d0 100644 --- a/__test__/Polyline/PtInPolylineDir.test.ts +++ b/__test__/Polyline/PtInPolylineDir.test.ts @@ -1,5 +1,5 @@ import { CADFiler } from '../../src/DatabaseServices/CADFiler'; -import { Polyline } from '../../src/DatabaseServices/Polyline'; +import { Polyline } from '../../src/DatabaseServices/Entity/Polyline'; import { GetPointAtCurveDir } from '../../src/Common/CurveUtils'; import { Vector3, Vector2 } from 'three'; import { Factory } from '../../src/DatabaseServices/CADFactory'; diff --git a/__test__/Polyline/join.test.ts b/__test__/Polyline/join.test.ts index bde5d92f5..d0177b27a 100644 --- a/__test__/Polyline/join.test.ts +++ b/__test__/Polyline/join.test.ts @@ -1,7 +1,7 @@ import { LoadEntityFromFileData } from "../Utils/LoadEntity.util"; -import { Polyline } from "../../src/DatabaseServices/Polyline"; +import { Polyline } from "../../src/DatabaseServices/Entity/Polyline"; import { equaln } from "../../src/Geometry/GeUtils"; -import { Line } from "../../src/DatabaseServices/Line"; +import { Line } from "../../src/DatabaseServices/Entity/Line"; test('多段线与多段线Join', () => { diff --git a/__test__/Polyline/offset.test.ts b/__test__/Polyline/offset.test.ts index e72b850b1..06eb4fece 100644 --- a/__test__/Polyline/offset.test.ts +++ b/__test__/Polyline/offset.test.ts @@ -1,6 +1,6 @@ import { Factory } from "../../src/DatabaseServices/CADFactory"; -import { Curve } from "../../src/DatabaseServices/Curve"; -import { Polyline } from "../../src/DatabaseServices/Polyline"; +import { Curve } from "../../src/DatabaseServices/Entity/Curve"; +import { Polyline } from "../../src/DatabaseServices/Entity/Polyline"; import { LoadEntityFromFileData } from "../Utils/LoadEntity.util"; Factory(Polyline); diff --git a/__test__/Polyline/offsetbug.test.ts b/__test__/Polyline/offsetbug.test.ts index 4e974eff5..141a62f85 100644 --- a/__test__/Polyline/offsetbug.test.ts +++ b/__test__/Polyline/offsetbug.test.ts @@ -1,7 +1,7 @@ import { Factory } from "../../src/DatabaseServices/CADFactory"; import { CADFiler } from "../../src/DatabaseServices/CADFiler"; -import { Curve } from "../../src/DatabaseServices/Curve"; -import { Polyline } from "../../src/DatabaseServices/Polyline"; +import { Curve } from "../../src/DatabaseServices/Entity/Curve"; +import { Polyline } from "../../src/DatabaseServices/Entity/Polyline"; Factory(Polyline); function loadFile(data) { diff --git a/__test__/Polyline/polyline.test.ts b/__test__/Polyline/polyline.test.ts index 88d67f906..d692dcb1a 100644 --- a/__test__/Polyline/polyline.test.ts +++ b/__test__/Polyline/polyline.test.ts @@ -1,6 +1,6 @@ import { Vector2, Vector3 } from 'three'; import { CADFiler } from '../../src/DatabaseServices/CADFiler'; -import { Polyline } from '../../src/DatabaseServices/Polyline'; +import { Polyline } from '../../src/DatabaseServices/Entity/Polyline'; import { equaln, equalv3 } from '../../src/Geometry/GeUtils'; test("多段线点获取参数", () => diff --git a/__test__/Polyline/split.test.ts b/__test__/Polyline/split.test.ts index 5e64cb5c4..484cd2255 100644 --- a/__test__/Polyline/split.test.ts +++ b/__test__/Polyline/split.test.ts @@ -1,4 +1,4 @@ -import { Polyline } from "../../src/DatabaseServices/Polyline"; +import { Polyline } from "../../src/DatabaseServices/Entity/Polyline"; import { Vector2, Vector3 } from "three"; diff --git a/__test__/Utils/LoadEntity.util.ts b/__test__/Utils/LoadEntity.util.ts index acf36523a..a039b2b41 100644 --- a/__test__/Utils/LoadEntity.util.ts +++ b/__test__/Utils/LoadEntity.util.ts @@ -1,10 +1,10 @@ import { CADFiler } from "../../src/DatabaseServices/CADFiler"; -import { Entity } from "../../src/DatabaseServices/Entity"; -import { Polyline } from "../../src/DatabaseServices/Polyline"; +import { Entity } from "../../src/DatabaseServices/Entity/Entity"; +import { Polyline } from "../../src/DatabaseServices/Entity/Polyline"; import { Factory } from "../../src/DatabaseServices/CADFactory"; -import { Curve } from "../../src/DatabaseServices/Curve"; -import { Board } from "../../src/DatabaseServices/Board"; -import { Region } from "../../src/DatabaseServices/Region"; +import { Curve } from "../../src/DatabaseServices/Entity/Curve"; +import { Board } from "../../src/DatabaseServices/Entity/Board"; +import { Region } from "../../src/DatabaseServices/Entity/Region"; Factory(Polyline); Factory(Region); diff --git a/src/Add-on/AddPtOnBoard.ts b/src/Add-on/AddPtOnBoard.ts index e0c2e6c27..c9322ce06 100644 --- a/src/Add-on/AddPtOnBoard.ts +++ b/src/Add-on/AddPtOnBoard.ts @@ -1,8 +1,8 @@ import { Command } from "../Editor/CommandMachine"; import { app } from "../ApplicationServices/Application"; import { PromptStatus, PromptPointResult } from "../Editor/PromptResult"; -import { Board } from "../DatabaseServices/Board"; -import { Polyline } from "../DatabaseServices/Polyline"; +import { Board } from "../DatabaseServices/Entity/Board"; +import { Polyline } from "../DatabaseServices/Entity/Polyline"; import { equalv3, AsVector2 } from "../Geometry/GeUtils"; abstract class PtOnBoard implements Command diff --git a/src/Add-on/Array.ts b/src/Add-on/Array.ts index 9b795602f..8c57a7be0 100644 --- a/src/Add-on/Array.ts +++ b/src/Add-on/Array.ts @@ -5,8 +5,8 @@ import { app } from '../ApplicationServices/Application'; import { CheckObjectType, CheckoutValid } from '../Common/CheckoutVaildValue'; import { DataAdapter } from '../Common/DataAdapter'; import { Singleton } from '../Common/Singleton'; -import { Entity } from '../DatabaseServices/Entity'; -import { Polyline } from '../DatabaseServices/Polyline'; +import { Entity } from '../DatabaseServices/Entity/Entity'; +import { Polyline } from '../DatabaseServices/Entity/Polyline'; import { Command } from '../Editor/CommandMachine'; import { JigUtils } from '../Editor/JigUtils'; import { PromptStatus } from '../Editor/PromptResult'; diff --git a/src/Add-on/BoardBatchCurtail.ts b/src/Add-on/BoardBatchCurtail.ts index 1de6c0712..83101277d 100644 --- a/src/Add-on/BoardBatchCurtail.ts +++ b/src/Add-on/BoardBatchCurtail.ts @@ -1,6 +1,6 @@ import { Box3, Vector3 } from "three"; import { app } from "../ApplicationServices/Application"; -import { Board } from "../DatabaseServices/Board"; +import { Board } from "../DatabaseServices/Entity/Board"; import { Command } from "../Editor/CommandMachine"; import { PromptStatus } from "../Editor/PromptResult"; import { ZeroVec, equalv3, isParallelTo, MoveMatrix } from "../Geometry/GeUtils"; diff --git a/src/Add-on/BoardCutting/AutoCuttingReactor.ts b/src/Add-on/BoardCutting/AutoCuttingReactor.ts index 058f6c274..1ba22def2 100644 --- a/src/Add-on/BoardCutting/AutoCuttingReactor.ts +++ b/src/Add-on/BoardCutting/AutoCuttingReactor.ts @@ -1,5 +1,5 @@ import { app } from "../../ApplicationServices/Application"; -import { Board } from "../../DatabaseServices/Board"; +import { Board } from "../../DatabaseServices/Entity/Board"; import { userConfig } from "../../Editor/UserConfig"; import { NonAssociativeCutting } from "./NonAssociativeCutting"; diff --git a/src/Add-on/BoardCutting/LinearCutting.ts b/src/Add-on/BoardCutting/LinearCutting.ts index 1c6e8c04c..c1227de34 100644 --- a/src/Add-on/BoardCutting/LinearCutting.ts +++ b/src/Add-on/BoardCutting/LinearCutting.ts @@ -1,8 +1,8 @@ import { Line3, Matrix4, Vector3 } from "three"; import { app } from "../../ApplicationServices/Application"; import { arrayLast } from "../../Common/ArrayExt"; -import { Board } from "../../DatabaseServices/Board"; -import { Polyline } from "../../DatabaseServices/Polyline"; +import { Board } from "../../DatabaseServices/Entity/Board"; +import { Polyline } from "../../DatabaseServices/Entity/Polyline"; import { Command } from "../../Editor/CommandMachine"; import { PromptStatus } from "../../Editor/PromptResult"; import { equaln, isParallelTo, AsVector2 } from "../../Geometry/GeUtils"; diff --git a/src/Add-on/BoardCutting/NonAssociativeCutting.ts b/src/Add-on/BoardCutting/NonAssociativeCutting.ts index afcc2ef7c..b69f86a9b 100644 --- a/src/Add-on/BoardCutting/NonAssociativeCutting.ts +++ b/src/Add-on/BoardCutting/NonAssociativeCutting.ts @@ -1,6 +1,6 @@ import { app } from "../../ApplicationServices/Application"; -import { Board } from "../../DatabaseServices/Board"; -import { ExtureSolid } from "../../DatabaseServices/Extrude"; +import { Board } from "../../DatabaseServices/Entity/Board"; +import { ExtureSolid } from "../../DatabaseServices/Entity/Extrude"; import { Command } from "../../Editor/CommandMachine"; import { PromptStatus } from "../../Editor/PromptResult"; diff --git a/src/Add-on/BoardCutting/ReferenceCutting.ts b/src/Add-on/BoardCutting/ReferenceCutting.ts index 7c7338e1b..14c0ca365 100644 --- a/src/Add-on/BoardCutting/ReferenceCutting.ts +++ b/src/Add-on/BoardCutting/ReferenceCutting.ts @@ -1,8 +1,8 @@ import { Vector3 } from "three"; import { app } from "../../ApplicationServices/Application"; -import { Board } from "../../DatabaseServices/Board"; -import { Line } from "../../DatabaseServices/Line"; -import { Polyline } from "../../DatabaseServices/Polyline"; +import { Board } from "../../DatabaseServices/Entity/Board"; +import { Line } from "../../DatabaseServices/Entity/Line"; +import { Polyline } from "../../DatabaseServices/Entity/Polyline"; import { Command } from "../../Editor/CommandMachine"; import { PromptStatus } from "../../Editor/PromptResult"; import { equaln } from "../../Geometry/GeUtils"; diff --git a/src/Add-on/BoardCutting/ReferenceCuttingModal.tsx b/src/Add-on/BoardCutting/ReferenceCuttingModal.tsx index ee0a07acc..34ff204c2 100644 --- a/src/Add-on/BoardCutting/ReferenceCuttingModal.tsx +++ b/src/Add-on/BoardCutting/ReferenceCuttingModal.tsx @@ -10,7 +10,7 @@ import { inject, observer } from "mobx-react"; import { ModalState } from "../../UI/Components/Modal/ModalsManage"; import { begin } from "xaop"; import { KeyBoard } from "../../Common/KeyEnum"; -import { BoardType } from "../../DatabaseServices/Board"; +import { BoardType } from "../../DatabaseServices/Entity/Board"; export enum CuttingOffset { diff --git a/src/Add-on/BoardFindModify.ts b/src/Add-on/BoardFindModify.ts index 3f6d30b95..0e66f3c64 100644 --- a/src/Add-on/BoardFindModify.ts +++ b/src/Add-on/BoardFindModify.ts @@ -4,7 +4,7 @@ import { arrayLast } from "../Common/ArrayExt"; import { EBoardKeyList } from "../Common/BoardKeyList"; import { FixedNotZero } from "../Common/Utils"; import { GangDrill, GangDrillType } from "../DatabaseServices/3DSolid/GangDrill"; -import { Board } from "../DatabaseServices/Board"; +import { Board } from "../DatabaseServices/Entity/Board"; import { LineAngularDimension } from "../DatabaseServices/Dimension/2LineAngularDimension"; import { AlignedDimension } from "../DatabaseServices/Dimension/AlignedDimension"; import { Command } from "../Editor/CommandMachine"; diff --git a/src/Add-on/BoolOperation.ts b/src/Add-on/BoolOperation.ts index 98e3e622e..3ee1e440a 100644 --- a/src/Add-on/BoolOperation.ts +++ b/src/Add-on/BoolOperation.ts @@ -1,5 +1,5 @@ import { app } from '../ApplicationServices/Application'; -import { Region } from '../DatabaseServices/Region'; +import { Region } from '../DatabaseServices/Entity/Region'; import { PromptStatus } from '../Editor/PromptResult'; import { BoolOpeartionType } from '../GraphicsSystem/BoolOperateUtils'; diff --git a/src/Add-on/Break.ts b/src/Add-on/Break.ts index dd6b1b2c8..a1f97624c 100644 --- a/src/Add-on/Break.ts +++ b/src/Add-on/Break.ts @@ -1,7 +1,7 @@ import { Vector3 } from "three"; import { app } from "../ApplicationServices/Application"; -import { Circle } from "../DatabaseServices/Circle"; -import { Curve } from "../DatabaseServices/Curve"; +import { Circle } from "../DatabaseServices/Entity/Circle"; +import { Curve } from "../DatabaseServices/Entity/Curve"; import { Command } from "../Editor/CommandMachine"; import { PromptStatus } from "../Editor/PromptResult"; export class Command_Break implements Command diff --git a/src/Add-on/CommandFeeding.ts b/src/Add-on/CommandFeeding.ts index eb8c709b6..6de8fea34 100644 --- a/src/Add-on/CommandFeeding.ts +++ b/src/Add-on/CommandFeeding.ts @@ -1,8 +1,8 @@ import { Vector3 } from "three"; import { app } from "../ApplicationServices/Application"; import { Singleton } from "../Common/Singleton"; -import { Board } from "../DatabaseServices/Board"; -import { Point } from "../DatabaseServices/Point"; +import { Board } from "../DatabaseServices/Entity/Board"; +import { Point } from "../DatabaseServices/Entity/Point"; import { Command } from "../Editor/CommandMachine"; import { PromptStatus } from "../Editor/PromptResult"; import { MoveMatrix } from "../Geometry/GeUtils"; diff --git a/src/Add-on/Copy.ts b/src/Add-on/Copy.ts index 23fe91eb4..3395f8c39 100644 --- a/src/Add-on/Copy.ts +++ b/src/Add-on/Copy.ts @@ -1,8 +1,8 @@ import { app } from '../ApplicationServices/Application'; import { arrayRemoveIf } from '../Common/ArrayExt'; import { GangDrill } from '../DatabaseServices/3DSolid/GangDrill'; -import { Board } from '../DatabaseServices/Board'; -import { Entity } from '../DatabaseServices/Entity'; +import { Board } from '../DatabaseServices/Entity/Board'; +import { Entity } from '../DatabaseServices/Entity/Entity'; import { Light } from '../DatabaseServices/Lights/Light'; import { Command } from '../Editor/CommandMachine'; import { JigUtils } from '../Editor/JigUtils'; diff --git a/src/Add-on/CopyClip.ts b/src/Add-on/CopyClip.ts index 667e456fe..a3681d5ab 100644 --- a/src/Add-on/CopyClip.ts +++ b/src/Add-on/CopyClip.ts @@ -1,7 +1,7 @@ import { app } from "../ApplicationServices/Application"; import { copyTextToClipboard } from "../Common/Utils"; import { CADFiler } from "../DatabaseServices/CADFiler"; -import { Board } from "../DatabaseServices/Board"; +import { Board } from "../DatabaseServices/Entity/Board"; import { GangDrill } from "../DatabaseServices/3DSolid/GangDrill"; import { arrayRemoveIf } from "../Common/ArrayExt"; diff --git a/src/Add-on/DXFLoad.ts b/src/Add-on/DXFLoad.ts index ba9304e8e..9e20d50be 100644 --- a/src/Add-on/DXFLoad.ts +++ b/src/Add-on/DXFLoad.ts @@ -2,11 +2,11 @@ import DxfParser from "dxf-parser"; import { app } from "../ApplicationServices/Application"; import { arrayLast } from "../Common/ArrayExt"; import { FileSystem } from "../Common/FileSystem"; -import { Polyline } from "../DatabaseServices/Polyline"; +import { Polyline } from "../DatabaseServices/Entity/Polyline"; import { AsVector2, AsVector3 } from "../Geometry/GeUtils"; -import { Line } from "../DatabaseServices/Line"; -import { Circle } from "../DatabaseServices/Circle"; -import { Arc } from "../DatabaseServices/Arc"; +import { Line } from "../DatabaseServices/Entity/Line"; +import { Circle } from "../DatabaseServices/Entity/Circle"; +import { Arc } from "../DatabaseServices/Entity/Arc"; export class Command_DXFImport { diff --git a/src/Add-on/Divide.ts b/src/Add-on/Divide.ts index 5af0bb218..dde0850a9 100644 --- a/src/Add-on/Divide.ts +++ b/src/Add-on/Divide.ts @@ -1,6 +1,6 @@ import { app } from '../ApplicationServices/Application'; -import { Curve } from '../DatabaseServices/Curve'; -import { Point } from '../DatabaseServices/Point'; +import { Curve } from '../DatabaseServices/Entity/Curve'; +import { Point } from '../DatabaseServices/Entity/Point'; import { Command } from '../Editor/CommandMachine'; import { PromptStatus, PromptEntityResult } from '../Editor/PromptResult'; diff --git a/src/Add-on/DrawArc.ts b/src/Add-on/DrawArc.ts index 79f2dbc61..cda0fca0c 100644 --- a/src/Add-on/DrawArc.ts +++ b/src/Add-on/DrawArc.ts @@ -1,5 +1,5 @@ import { app } from '../ApplicationServices/Application'; -import { Arc } from '../DatabaseServices/Arc'; +import { Arc } from '../DatabaseServices/Entity/Arc'; import { Command } from '../Editor/CommandMachine'; import { JigUtils } from '../Editor/JigUtils'; import { PromptStatus } from '../Editor/PromptResult'; diff --git a/src/Add-on/DrawBoard/DrawBehindBoard.ts b/src/Add-on/DrawBoard/DrawBehindBoard.ts index 46e16ffca..664ebd922 100644 --- a/src/Add-on/DrawBoard/DrawBehindBoard.ts +++ b/src/Add-on/DrawBoard/DrawBehindBoard.ts @@ -1,6 +1,6 @@ import { Vector3 } from 'three'; import { app } from '../../ApplicationServices/Application'; -import { Board, BoardType } from '../../DatabaseServices/Board'; +import { Board, BoardType } from '../../DatabaseServices/Entity/Board'; import { MoveMatrix } from '../../Geometry/GeUtils'; import { BehindBoardOption, BehindHeightPositon, BrRelativePos } from '../../UI/Store/BoardInterface'; import { DrawBoardTool } from './DrawBoardTool'; diff --git a/src/Add-on/DrawBoard/DrawBoardTool.ts b/src/Add-on/DrawBoard/DrawBoardTool.ts index 5ecc044fd..03cfb71c4 100644 --- a/src/Add-on/DrawBoard/DrawBoardTool.ts +++ b/src/Add-on/DrawBoard/DrawBoardTool.ts @@ -1,5 +1,5 @@ import { app } from '../../ApplicationServices/Application'; -import { BoardType } from '../../DatabaseServices/Board'; +import { BoardType } from '../../DatabaseServices/Entity/Board'; import { Command } from '../../Editor/CommandMachine'; import { PromptStatus } from '../../Editor/PromptResult'; import { PointSelectSpaceClamp } from '../../Geometry/SpaceParse/PointSelectSpaceClamp'; diff --git a/src/Add-on/DrawBoard/DrawClosingStrip.ts b/src/Add-on/DrawBoard/DrawClosingStrip.ts index 7f7b80ad0..635e931f9 100644 --- a/src/Add-on/DrawBoard/DrawClosingStrip.ts +++ b/src/Add-on/DrawBoard/DrawClosingStrip.ts @@ -1,6 +1,6 @@ import { Matrix4, Vector3 } from 'three'; import { app } from '../../ApplicationServices/Application'; -import { Board, BoardType } from '../../DatabaseServices/Board'; +import { Board, BoardType } from '../../DatabaseServices/Entity/Board'; import { Command } from '../../Editor/CommandMachine'; import { PromptStatus } from '../../Editor/PromptResult'; import { Box3Ext } from '../../Geometry/Box'; diff --git a/src/Add-on/DrawBoard/DrawDoor.ts b/src/Add-on/DrawBoard/DrawDoor.ts index 89fb06d44..6910ac9ab 100644 --- a/src/Add-on/DrawBoard/DrawDoor.ts +++ b/src/Add-on/DrawBoard/DrawDoor.ts @@ -2,7 +2,7 @@ import { toJS } from "mobx"; import { Vector3 } from "three"; import { app } from "../../ApplicationServices/Application"; import { ToFixed } from "../../Common/Utils"; -import { Board, BoardType } from "../../DatabaseServices/Board"; +import { Board, BoardType } from "../../DatabaseServices/Entity/Board"; import { Command } from "../../Editor/CommandMachine"; import { MoveMatrix } from "../../Geometry/GeUtils"; import { PointSelectSpaceClamp } from "../../Geometry/SpaceParse/PointSelectSpaceClamp"; diff --git a/src/Add-on/DrawBoard/DrawLayerBoard.ts b/src/Add-on/DrawBoard/DrawLayerBoard.ts index 5943daefd..6ac6917f1 100644 --- a/src/Add-on/DrawBoard/DrawLayerBoard.ts +++ b/src/Add-on/DrawBoard/DrawLayerBoard.ts @@ -1,7 +1,7 @@ import { Matrix4, Vector3 } from 'three'; import { app } from '../../ApplicationServices/Application'; import { GangDrill, GangDrillType } from '../../DatabaseServices/3DSolid/GangDrill'; -import { Board, BoardType } from '../../DatabaseServices/Board'; +import { Board, BoardType } from '../../DatabaseServices/Entity/Board'; import { MoveMatrix } from '../../Geometry/GeUtils'; import { BrRelativePos, LayerBoardOption } from '../../UI/Store/BoardInterface'; import { LayerBoardStore } from '../../UI/Store/BoardStore'; diff --git a/src/Add-on/DrawBoard/DrawLeftRightBoard.ts b/src/Add-on/DrawBoard/DrawLeftRightBoard.ts index 75cba0556..d119842d0 100644 --- a/src/Add-on/DrawBoard/DrawLeftRightBoard.ts +++ b/src/Add-on/DrawBoard/DrawLeftRightBoard.ts @@ -1,6 +1,6 @@ import { Vector3 } from 'three'; import { app } from '../../ApplicationServices/Application'; -import { Board, BoardType } from '../../DatabaseServices/Board'; +import { Board, BoardType } from '../../DatabaseServices/Entity/Board'; import { Command } from '../../Editor/CommandMachine'; import { PromptStatus } from '../../Editor/PromptResult'; import { MoveMatrix } from '../../Geometry/GeUtils'; diff --git a/src/Add-on/DrawBoard/DrawSingleBoard.ts b/src/Add-on/DrawBoard/DrawSingleBoard.ts index 4a4b3dd98..8fb6903b6 100644 --- a/src/Add-on/DrawBoard/DrawSingleBoard.ts +++ b/src/Add-on/DrawBoard/DrawSingleBoard.ts @@ -1,6 +1,6 @@ import { Math } from 'three'; import { app } from '../../ApplicationServices/Application'; -import { Board } from '../../DatabaseServices/Board'; +import { Board } from '../../DatabaseServices/Entity/Board'; import { Command } from '../../Editor/CommandMachine'; import { JigUtils } from '../../Editor/JigUtils'; import { PromptStatus } from '../../Editor/PromptResult'; diff --git a/src/Add-on/DrawBoard/DrawSpecialShapeBoardTool.ts b/src/Add-on/DrawBoard/DrawSpecialShapeBoardTool.ts index b2453f49e..e24683f9f 100644 --- a/src/Add-on/DrawBoard/DrawSpecialShapeBoardTool.ts +++ b/src/Add-on/DrawBoard/DrawSpecialShapeBoardTool.ts @@ -2,12 +2,12 @@ import { Matrix4, Vector3 } from "three"; import { app } from "../../ApplicationServices/Application"; import { arrayRemove } from "../../Common/ArrayExt"; import { curveLinkGroup } from "../../Common/CurveUtils"; -import { Board } from "../../DatabaseServices/Board"; +import { Board } from "../../DatabaseServices/Entity/Board"; import { Contour } from "../../DatabaseServices/Contour"; -import { Curve } from "../../DatabaseServices/Curve"; -import { ExtureContour, ExtureContourCurve, ExtureSolid } from "../../DatabaseServices/Extrude"; -import { Polyline } from "../../DatabaseServices/Polyline"; -import { Region } from "../../DatabaseServices/Region"; +import { Curve } from "../../DatabaseServices/Entity/Curve"; +import { ExtureContour, ExtureContourCurve, ExtureSolid } from "../../DatabaseServices/Entity/Extrude"; +import { Polyline } from "../../DatabaseServices/Entity/Polyline"; +import { Region } from "../../DatabaseServices/Entity/Region"; import { JigUtils } from "../../Editor/JigUtils"; import { PromptStatus } from "../../Editor/PromptResult"; import { isParallelTo, MoveMatrix } from "../../Geometry/GeUtils"; diff --git a/src/Add-on/DrawBoard/DrawSpecialShapedBoard.ts b/src/Add-on/DrawBoard/DrawSpecialShapedBoard.ts index 49ad1d48d..20b8169ca 100644 --- a/src/Add-on/DrawBoard/DrawSpecialShapedBoard.ts +++ b/src/Add-on/DrawBoard/DrawSpecialShapedBoard.ts @@ -1,7 +1,7 @@ import { app } from "../../ApplicationServices/Application"; import { FixedNotZero } from "../../Common/Utils"; -import { BoardType, Board } from "../../DatabaseServices/Board"; -import { ExtureSolid } from "../../DatabaseServices/Extrude"; +import { BoardType, Board } from "../../DatabaseServices/Entity/Board"; +import { ExtureSolid } from "../../DatabaseServices/Entity/Extrude"; import { Command } from "../../Editor/CommandMachine"; import { SpecialShapeBoardModal } from "../../UI/Components/Board/SpecialBoardModal"; import { ModalPosition } from "../../UI/Components/Modal/ModalsManage"; diff --git a/src/Add-on/DrawBoard/DrawSpecialShapedBoardByContour.ts b/src/Add-on/DrawBoard/DrawSpecialShapedBoardByContour.ts index 0c716568a..0baf51632 100644 --- a/src/Add-on/DrawBoard/DrawSpecialShapedBoardByContour.ts +++ b/src/Add-on/DrawBoard/DrawSpecialShapedBoardByContour.ts @@ -1,5 +1,5 @@ import { app } from "../../ApplicationServices/Application"; -import { Board } from "../../DatabaseServices/Board"; +import { Board } from "../../DatabaseServices/Entity/Board"; import { Command } from "../../Editor/CommandMachine"; import { PromptStatus } from "../../Editor/PromptResult"; import { SelectExtrudeContour, BoardApplyContour } from "./DrawSpecialShapeBoardTool"; diff --git a/src/Add-on/DrawBoard/DrawTopBottomBoard.ts b/src/Add-on/DrawBoard/DrawTopBottomBoard.ts index 0af8f0a42..a6910e085 100644 --- a/src/Add-on/DrawBoard/DrawTopBottomBoard.ts +++ b/src/Add-on/DrawBoard/DrawTopBottomBoard.ts @@ -1,7 +1,7 @@ import { Vector3 } from 'three'; import { app } from '../../ApplicationServices/Application'; import { log } from '../../Common/Utils'; -import { Board, BoardType } from '../../DatabaseServices/Board'; +import { Board, BoardType } from '../../DatabaseServices/Entity/Board'; import { Command } from '../../Editor/CommandMachine'; import { MoveMatrix } from '../../Geometry/GeUtils'; import { ISpaceParse } from '../../Geometry/SpaceParse/ISpaceParse'; diff --git a/src/Add-on/DrawBoard/DrawVerticalBoard.ts b/src/Add-on/DrawBoard/DrawVerticalBoard.ts index cacd504a3..e1783e79f 100644 --- a/src/Add-on/DrawBoard/DrawVerticalBoard.ts +++ b/src/Add-on/DrawBoard/DrawVerticalBoard.ts @@ -1,6 +1,6 @@ import { Vector3 } from 'three'; import { app } from '../../ApplicationServices/Application'; -import { Board, BoardType } from '../../DatabaseServices/Board'; +import { Board, BoardType } from '../../DatabaseServices/Entity/Board'; import { MoveMatrix } from '../../Geometry/GeUtils'; import { BrRelativePos, VerticalBoardOption } from '../../UI/Store/BoardInterface'; import { } from '../../UI/Store/BoardStore'; diff --git a/src/Add-on/DrawCircle.ts b/src/Add-on/DrawCircle.ts index 8bf55cb1b..710762fe1 100644 --- a/src/Add-on/DrawCircle.ts +++ b/src/Add-on/DrawCircle.ts @@ -1,7 +1,7 @@ import { Vector3 } from 'three'; import { app } from '../ApplicationServices/Application'; -import { Arc } from '../DatabaseServices/Arc'; -import { Circle } from '../DatabaseServices/Circle'; +import { Arc } from '../DatabaseServices/Entity/Arc'; +import { Circle } from '../DatabaseServices/Entity/Circle'; import { Command } from '../Editor/CommandMachine'; import { JigUtils } from '../Editor/JigUtils'; import { PromptStatus } from '../Editor/PromptResult'; diff --git a/src/Add-on/DrawDim/DimContinueAligen.ts b/src/Add-on/DrawDim/DimContinueAligen.ts index 7fd2efb95..70fdd7f80 100644 --- a/src/Add-on/DrawDim/DimContinueAligen.ts +++ b/src/Add-on/DrawDim/DimContinueAligen.ts @@ -1,6 +1,6 @@ import { Vector3 } from "three"; import { AlignedDimension } from "../../DatabaseServices/Dimension/AlignedDimension"; -import { Line } from "../../DatabaseServices/Line"; +import { Line } from "../../DatabaseServices/Entity/Line"; import { DimContinue } from "./DimContinue"; //对齐标注的连续标注 export class DimContinueAligen extends DimContinue diff --git a/src/Add-on/DrawDim/DimContinueLineAngular.ts b/src/Add-on/DrawDim/DimContinueLineAngular.ts index 318d73168..f9c96d1ed 100644 --- a/src/Add-on/DrawDim/DimContinueLineAngular.ts +++ b/src/Add-on/DrawDim/DimContinueLineAngular.ts @@ -1,7 +1,7 @@ import { Vector3 } from "three"; -import { Arc } from "../../DatabaseServices/Arc"; +import { Arc } from "../../DatabaseServices/Entity/Arc"; import { LineAngularDimension } from "../../DatabaseServices/Dimension/2LineAngularDimension"; -import { Line } from "../../DatabaseServices/Line"; +import { Line } from "../../DatabaseServices/Entity/Line"; import { equalv3 } from "../../Geometry/GeUtils"; import { DimContinue } from "./DimContinue"; //2直线角度标注的连续标注 diff --git a/src/Add-on/DrawDim/Draw2LineAngularDim.ts b/src/Add-on/DrawDim/Draw2LineAngularDim.ts index d956318af..ea581557a 100644 --- a/src/Add-on/DrawDim/Draw2LineAngularDim.ts +++ b/src/Add-on/DrawDim/Draw2LineAngularDim.ts @@ -1,11 +1,11 @@ import { Matrix4, Vector3 } from "three"; import { app } from "../../ApplicationServices/Application"; -import { Arc } from "../../DatabaseServices/Arc"; -import { Circle } from "../../DatabaseServices/Circle"; -import { Curve } from "../../DatabaseServices/Curve"; +import { Arc } from "../../DatabaseServices/Entity/Arc"; +import { Circle } from "../../DatabaseServices/Entity/Circle"; +import { Curve } from "../../DatabaseServices/Entity/Curve"; import { LineAngularDimension } from "../../DatabaseServices/Dimension/2LineAngularDimension"; -import { Line } from "../../DatabaseServices/Line"; -import { Polyline } from "../../DatabaseServices/Polyline"; +import { Line } from "../../DatabaseServices/Entity/Line"; +import { Polyline } from "../../DatabaseServices/Entity/Polyline"; import { JigUtils } from "../../Editor/JigUtils"; import { PromptStatus } from "../../Editor/PromptResult"; import { isParallelTo } from "../../Geometry/GeUtils"; diff --git a/src/Add-on/DrawDim/DrawAlignedDimension.ts b/src/Add-on/DrawDim/DrawAlignedDimension.ts index 9bf85b5be..c76caca45 100644 --- a/src/Add-on/DrawDim/DrawAlignedDimension.ts +++ b/src/Add-on/DrawDim/DrawAlignedDimension.ts @@ -1,11 +1,11 @@ import { Vector3 } from 'three'; import { app } from '../../ApplicationServices/Application'; -import { Circle } from '../../DatabaseServices/Circle'; -import { Curve } from '../../DatabaseServices/Curve'; +import { Circle } from '../../DatabaseServices/Entity/Circle'; +import { Curve } from '../../DatabaseServices/Entity/Curve'; import { AlignedDimension } from '../../DatabaseServices/Dimension/AlignedDimension'; import { LinearDimension } from '../../DatabaseServices/Dimension/LinearDimension'; -import { Line } from '../../DatabaseServices/Line'; -import { Polyline } from '../../DatabaseServices/Polyline'; +import { Line } from '../../DatabaseServices/Entity/Line'; +import { Polyline } from '../../DatabaseServices/Entity/Polyline'; import { Command } from '../../Editor/CommandMachine'; import { JigUtils } from '../../Editor/JigUtils'; import { PromptStatus } from '../../Editor/PromptResult'; diff --git a/src/Add-on/DrawDim/DrawRadiusDim.ts b/src/Add-on/DrawDim/DrawRadiusDim.ts index cd4bed480..7281bffa9 100644 --- a/src/Add-on/DrawDim/DrawRadiusDim.ts +++ b/src/Add-on/DrawDim/DrawRadiusDim.ts @@ -1,7 +1,7 @@ import { Command } from "../../Editor/CommandMachine"; import { app } from "../../ApplicationServices/Application"; -import { Circle } from "../../DatabaseServices/Circle"; -import { Arc } from "../../DatabaseServices/Arc"; +import { Circle } from "../../DatabaseServices/Entity/Circle"; +import { Arc } from "../../DatabaseServices/Entity/Arc"; import { PromptStatus } from "../../Editor/PromptResult"; import { RadiusDimension } from "../../DatabaseServices/Dimension/RadiusDimension"; import { JigUtils } from "../../Editor/JigUtils"; diff --git a/src/Add-on/DrawDrilling/DeleteDrill.ts b/src/Add-on/DrawDrilling/DeleteDrill.ts index fa09b4df8..8dddcbab5 100644 --- a/src/Add-on/DrawDrilling/DeleteDrill.ts +++ b/src/Add-on/DrawDrilling/DeleteDrill.ts @@ -1,6 +1,6 @@ import { Command } from "../../Editor/CommandMachine"; import { app } from "../../ApplicationServices/Application"; -import { Board } from "../../DatabaseServices/Board"; +import { Board } from "../../DatabaseServices/Entity/Board"; import { PromptStatus } from "../../Editor/PromptResult"; import { DrawDrillingTool } from "./DrawDrillingTool"; import { GangDrill } from "../../DatabaseServices/3DSolid/GangDrill"; diff --git a/src/Add-on/DrawDrilling/DrawDrilling.ts b/src/Add-on/DrawDrilling/DrawDrilling.ts index a7f426f74..ec4d71c96 100644 --- a/src/Add-on/DrawDrilling/DrawDrilling.ts +++ b/src/Add-on/DrawDrilling/DrawDrilling.ts @@ -1,5 +1,5 @@ import { app } from "../../ApplicationServices/Application"; -import { Board } from "../../DatabaseServices/Board"; +import { Board } from "../../DatabaseServices/Entity/Board"; import { Command } from "../../Editor/CommandMachine"; import { PromptStatus } from "../../Editor/PromptResult"; import { DrawDrillingTool } from "./DrawDrillingTool"; diff --git a/src/Add-on/DrawDrilling/DrawDrillingTool.ts b/src/Add-on/DrawDrilling/DrawDrillingTool.ts index 85d906882..d22557f11 100644 --- a/src/Add-on/DrawDrilling/DrawDrillingTool.ts +++ b/src/Add-on/DrawDrilling/DrawDrillingTool.ts @@ -4,8 +4,8 @@ import { arrayLast } from "../../Common/ArrayExt"; import { Singleton } from "../../Common/Singleton"; import { operationExpReg } from "../../Common/Utils"; import { GangDrill, GangDrillType } from "../../DatabaseServices/3DSolid/GangDrill"; -import { Board } from "../../DatabaseServices/Board"; -import { Circle } from "../../DatabaseServices/Circle"; +import { Board } from "../../DatabaseServices/Entity/Board"; +import { Circle } from "../../DatabaseServices/Entity/Circle"; import { ObjectId } from "../../DatabaseServices/ObjectId"; import { userConfig } from "../../Editor/UserConfig"; import { CollisionDetection } from "../../Geometry/DrillParse/CollisionDetection"; diff --git a/src/Add-on/DrawDrilling/DrillingReactor.ts b/src/Add-on/DrawDrilling/DrillingReactor.ts index 8d50d529e..fd0291704 100644 --- a/src/Add-on/DrawDrilling/DrillingReactor.ts +++ b/src/Add-on/DrawDrilling/DrillingReactor.ts @@ -1,6 +1,6 @@ import { app } from "../../ApplicationServices/Application"; import { GangDrill } from "../../DatabaseServices/3DSolid/GangDrill"; -import { Board } from "../../DatabaseServices/Board"; +import { Board } from "../../DatabaseServices/Entity/Board"; import { userConfig } from "../../Editor/UserConfig"; import { DrawDrillingTool } from "./DrawDrillingTool"; diff --git a/src/Add-on/DrawEllipse.ts b/src/Add-on/DrawEllipse.ts index e910e1ea5..fb0a9d6af 100644 --- a/src/Add-on/DrawEllipse.ts +++ b/src/Add-on/DrawEllipse.ts @@ -1,6 +1,6 @@ import { Matrix4, Vector3 } from "three"; import { app } from "../ApplicationServices/Application"; -import { Ellipse } from "../DatabaseServices/Ellipse"; +import { Ellipse } from "../DatabaseServices/Entity/Ellipse"; import { Command } from "../Editor/CommandMachine"; import { JigUtils } from "../Editor/JigUtils"; import { PromptStatus } from "../Editor/PromptResult"; diff --git a/src/Add-on/DrawLine.ts b/src/Add-on/DrawLine.ts index c7f802ed0..70bafe3e9 100644 --- a/src/Add-on/DrawLine.ts +++ b/src/Add-on/DrawLine.ts @@ -1,8 +1,8 @@ import { Vector3 } from 'three'; import { app } from '../ApplicationServices/Application'; -import { Arc } from '../DatabaseServices/Arc'; -import { Circle } from '../DatabaseServices/Circle'; -import { Line } from '../DatabaseServices/Line'; +import { Arc } from '../DatabaseServices/Entity/Arc'; +import { Circle } from '../DatabaseServices/Entity/Circle'; +import { Line } from '../DatabaseServices/Entity/Line'; import { Command } from '../Editor/CommandMachine'; import { JigUtils } from '../Editor/JigUtils'; import { ObjectSnapMode } from '../Editor/ObjectSnapMode'; diff --git a/src/Add-on/DrawPoint.ts b/src/Add-on/DrawPoint.ts index c006d7b84..35b2da698 100644 --- a/src/Add-on/DrawPoint.ts +++ b/src/Add-on/DrawPoint.ts @@ -1,5 +1,5 @@ import { app } from '../ApplicationServices/Application'; -import { Point } from '../DatabaseServices/Point'; +import { Point } from '../DatabaseServices/Entity/Point'; import { Command } from '../Editor/CommandMachine'; import { PromptStatus, PromptEntityResult } from '../Editor/PromptResult'; diff --git a/src/Add-on/DrawPolyline.ts b/src/Add-on/DrawPolyline.ts index bd65926b1..e26ce15e6 100644 --- a/src/Add-on/DrawPolyline.ts +++ b/src/Add-on/DrawPolyline.ts @@ -2,7 +2,7 @@ import { Vector2, Vector3 } from 'three'; import { app } from '../ApplicationServices/Application'; import { getCirAngleByChordAndTangent } from '../Common/CurveUtils'; import { GetPointPrompt } from "../Editor/PromptOptions"; -import { Polyline } from '../DatabaseServices/Polyline'; +import { Polyline } from '../DatabaseServices/Entity/Polyline'; import { PromptStatus } from '../Editor/PromptResult'; import { JigUtils } from '../Editor/JigUtils'; import { equalv3, AsVector2, AsVector3 } from '../Geometry/GeUtils'; diff --git a/src/Add-on/DrawRect.ts b/src/Add-on/DrawRect.ts index e24696f51..666553d26 100644 --- a/src/Add-on/DrawRect.ts +++ b/src/Add-on/DrawRect.ts @@ -1,5 +1,5 @@ import { app } from '../ApplicationServices/Application'; -import { Polyline } from '../DatabaseServices/Polyline'; +import { Polyline } from '../DatabaseServices/Entity/Polyline'; import { Command } from '../Editor/CommandMachine'; import { PromptStatus } from '../Editor/PromptResult'; export class DrawRect implements Command diff --git a/src/Add-on/DrawRegion.ts b/src/Add-on/DrawRegion.ts index fa229703e..4f2e1a29c 100644 --- a/src/Add-on/DrawRegion.ts +++ b/src/Add-on/DrawRegion.ts @@ -1,6 +1,6 @@ import { app } from '../ApplicationServices/Application'; -import { Curve } from '../DatabaseServices/Curve'; -import { Region } from '../DatabaseServices/Region'; +import { Curve } from '../DatabaseServices/Entity/Curve'; +import { Region } from '../DatabaseServices/Entity/Region'; import { Command } from '../Editor/CommandMachine'; import { PromptStatus } from '../Editor/PromptResult'; import { RegionParse, Route } from '../Geometry/RegionParse'; diff --git a/src/Add-on/DrawTestReg.ts b/src/Add-on/DrawTestReg.ts index 41eb9622f..17342d9ee 100644 --- a/src/Add-on/DrawTestReg.ts +++ b/src/Add-on/DrawTestReg.ts @@ -1,9 +1,9 @@ import { Vector3 } from 'three'; import { app } from '../ApplicationServices/Application'; -import { Curve } from '../DatabaseServices/Curve'; -import { Line } from '../DatabaseServices/Line'; -import { Region } from '../DatabaseServices/Region'; +import { Curve } from '../DatabaseServices/Entity/Curve'; +import { Line } from '../DatabaseServices/Entity/Line'; +import { Region } from '../DatabaseServices/Entity/Region'; import { Command } from '../Editor/CommandMachine'; import { MoveMatrix } from '../Geometry/GeUtils'; import { RegionParse, Route } from '../Geometry/RegionParse'; diff --git a/src/Add-on/DrawTopline.ts b/src/Add-on/DrawTopline.ts index 7797153f0..82304a5ce 100644 --- a/src/Add-on/DrawTopline.ts +++ b/src/Add-on/DrawTopline.ts @@ -1,14 +1,14 @@ import { app } from "../ApplicationServices/Application"; -import { Board } from "../DatabaseServices/Board"; +import { Board } from "../DatabaseServices/Entity/Board"; import { PromptStatus } from "../Editor/PromptResult"; import { SurroundOutlineParse } from "../Geometry/SpaceParse/SurroundOutlineParse"; -import { Curve } from "../DatabaseServices/Curve"; +import { Curve } from "../DatabaseServices/Entity/Curve"; import { JigUtils } from "../Editor/JigUtils"; import { curveLinkGroup } from "../Common/CurveUtils"; -import { Polyline } from "../DatabaseServices/Polyline"; +import { Polyline } from "../DatabaseServices/Entity/Polyline"; import { SweepSolid } from "../DatabaseServices/3DSolid/SweepSolid"; -import { Arc } from "../DatabaseServices/Arc"; -import { Line } from "../DatabaseServices/Line"; +import { Arc } from "../DatabaseServices/Entity/Arc"; +import { Line } from "../DatabaseServices/Entity/Line"; /**构建顶线 */ export async function buildTopline(outline: Polyline) diff --git a/src/Add-on/DrawWineRack/DrawBlisWineRackTool.ts b/src/Add-on/DrawWineRack/DrawBlisWineRackTool.ts index 96ac43353..aa6b28f8a 100644 --- a/src/Add-on/DrawWineRack/DrawBlisWineRackTool.ts +++ b/src/Add-on/DrawWineRack/DrawBlisWineRackTool.ts @@ -1,9 +1,9 @@ import { Matrix4, Vector2, Vector3 } from "three"; import { app } from "../../ApplicationServices/Application"; import { arrayLast, arrayRemoveDuplicateBySort, arraySortByNumber } from "../../Common/ArrayExt"; -import { Board } from "../../DatabaseServices/Board"; -import { Line } from "../../DatabaseServices/Line"; -import { Polyline } from "../../DatabaseServices/Polyline"; +import { Board } from "../../DatabaseServices/Entity/Board"; +import { Line } from "../../DatabaseServices/Entity/Line"; +import { Polyline } from "../../DatabaseServices/Entity/Polyline"; import { equaln, MoveMatrix, polar, XAxis, YAxis, ZAxis, AsVector2 } from "../../Geometry/GeUtils"; import { ISpaceParse } from "../../Geometry/SpaceParse/ISpaceParse"; import { IntersectOption } from "../../GraphicsSystem/IntersectWith"; diff --git a/src/Add-on/DrawWineRack/DrawUprightWineRackTool.ts b/src/Add-on/DrawWineRack/DrawUprightWineRackTool.ts index 4606b4c39..1117371d1 100644 --- a/src/Add-on/DrawWineRack/DrawUprightWineRackTool.ts +++ b/src/Add-on/DrawWineRack/DrawUprightWineRackTool.ts @@ -1,7 +1,7 @@ import { Vector3 } from "three"; import { app } from "../../ApplicationServices/Application"; -import { Board, BoardType } from "../../DatabaseServices/Board"; -import { Polyline } from "../../DatabaseServices/Polyline"; +import { Board, BoardType } from "../../DatabaseServices/Entity/Board"; +import { Polyline } from "../../DatabaseServices/Entity/Polyline"; import { MoveMatrix, AsVector2 } from "../../Geometry/GeUtils"; import { ISpaceParse } from "../../Geometry/SpaceParse/ISpaceParse"; import { EWRackArrayType } from "../../UI/Store/WineRackInterface"; diff --git a/src/Add-on/DrawWineRack/DrawWinRackTool.ts b/src/Add-on/DrawWineRack/DrawWinRackTool.ts index b64a5643c..735666641 100644 --- a/src/Add-on/DrawWineRack/DrawWinRackTool.ts +++ b/src/Add-on/DrawWineRack/DrawWinRackTool.ts @@ -4,7 +4,7 @@ import { IWineRackOption, EWRackArrayType, EFullType, EFullDir } from "../../UI/ import { WineRackStore } from "../../UI/Store/WineRackStore"; import { Vector3 } from "three"; import { operationExpReg } from "../../Common/Utils"; -import { Board, BoardType } from "../../DatabaseServices/Board"; +import { Board, BoardType } from "../../DatabaseServices/Entity/Board"; import { IHighSealedItem, DrillType, FaceDirection } from "../../UI/Store/BoardInterface"; import { app } from "../../ApplicationServices/Application"; diff --git a/src/Add-on/DrawZeroCircle.ts b/src/Add-on/DrawZeroCircle.ts index c65be9823..93d13102f 100644 --- a/src/Add-on/DrawZeroCircle.ts +++ b/src/Add-on/DrawZeroCircle.ts @@ -1,8 +1,8 @@ import * as THREE from 'three'; import { app } from '../ApplicationServices/Application'; -import { Circle } from '../DatabaseServices/Circle'; -import { Line } from '../DatabaseServices/Line'; +import { Circle } from '../DatabaseServices/Entity/Circle'; +import { Line } from '../DatabaseServices/Entity/Line'; import { Command } from '../Editor/CommandMachine'; export class DrawCircle0 implements Command @@ -22,4 +22,4 @@ export class DrawCircle0 implements Command app.m_Database.ModelSpace.Append(line); } -} \ No newline at end of file +} diff --git a/src/Add-on/Entsel.ts b/src/Add-on/Entsel.ts index 74b0c21cf..1d06db1d5 100644 --- a/src/Add-on/Entsel.ts +++ b/src/Add-on/Entsel.ts @@ -5,7 +5,7 @@ import { Command } from '../Editor/CommandMachine'; import { PromptStatus } from '../Editor/PromptResult'; import { DynamicInputManage } from '../UI/DynamicPrompt/DynamicInputManage'; import { PromptBlock } from '../UI/DynamicPrompt/PromptBlock'; -import { Polyline } from '../DatabaseServices/Polyline'; +import { Polyline } from '../DatabaseServices/Entity/Polyline'; //演示了如何单选图形 diff --git a/src/Add-on/Explode.ts b/src/Add-on/Explode.ts index 4fdba2367..55b575d42 100644 --- a/src/Add-on/Explode.ts +++ b/src/Add-on/Explode.ts @@ -1,7 +1,7 @@ import { app } from '../ApplicationServices/Application'; -import { Arc } from '../DatabaseServices/Arc'; -import { Circle } from '../DatabaseServices/Circle'; -import { Line } from '../DatabaseServices/Line'; +import { Arc } from '../DatabaseServices/Entity/Arc'; +import { Circle } from '../DatabaseServices/Entity/Circle'; +import { Line } from '../DatabaseServices/Entity/Line'; import { Command } from '../Editor/CommandMachine'; import { PromptStatus } from '../Editor/PromptResult'; diff --git a/src/Add-on/ExplosionMap.ts b/src/Add-on/ExplosionMap.ts index 2adc8f43a..95c033efc 100644 --- a/src/Add-on/ExplosionMap.ts +++ b/src/Add-on/ExplosionMap.ts @@ -2,7 +2,7 @@ import { Command } from "../Editor/CommandMachine"; import { GetBox, GetBoxArr } from "../Geometry/GeUtils"; import { app } from "../ApplicationServices/Application"; import { Vector3, Object3D } from "three"; -import { Board } from "../DatabaseServices/Board"; +import { Board } from "../DatabaseServices/Entity/Board"; import { PromptStatus } from "../Editor/PromptResult"; const MOVEDIS = 10; diff --git a/src/Add-on/Extends.ts b/src/Add-on/Extends.ts index 5550e431f..7250ebb76 100644 --- a/src/Add-on/Extends.ts +++ b/src/Add-on/Extends.ts @@ -1,14 +1,14 @@ import { Vector2, Vector3 } from 'three'; import { app } from '../ApplicationServices/Application'; -import { Curve } from '../DatabaseServices/Curve'; -import { Polyline } from '../DatabaseServices/Polyline'; +import { Curve } from '../DatabaseServices/Entity/Curve'; +import { Polyline } from '../DatabaseServices/Entity/Polyline'; import { Command } from '../Editor/CommandMachine'; import { PromptStatus, PromptSsgetResult } from '../Editor/PromptResult'; import { SelectBox } from '../Editor/SelectBox'; import { SelectPick } from '../Editor/SelectPick'; import { SelectSet } from '../Editor/SelectSet'; import { IntersectOption } from '../GraphicsSystem/IntersectWith'; -import { Arc } from '../DatabaseServices/Arc'; +import { Arc } from '../DatabaseServices/Entity/Arc'; import { JigUtils } from '../Editor/JigUtils'; import { AsVector3 } from '../Geometry/GeUtils'; diff --git a/src/Add-on/Fillet.ts b/src/Add-on/Fillet.ts index 7a7300461..b5d3c99d3 100644 --- a/src/Add-on/Fillet.ts +++ b/src/Add-on/Fillet.ts @@ -3,9 +3,9 @@ import { app } from '../ApplicationServices/Application'; import { KeyWord } from '../Common/InputState'; import { KeyCode } from '../Common/KeyEnum'; import { FixedNotZero } from '../Common/Utils'; -import { Board } from '../DatabaseServices/Board'; -import { Curve } from '../DatabaseServices/Curve'; -import { Polyline } from '../DatabaseServices/Polyline'; +import { Board } from '../DatabaseServices/Entity/Board'; +import { Curve } from '../DatabaseServices/Entity/Curve'; +import { Polyline } from '../DatabaseServices/Entity/Polyline'; import { Command } from '../Editor/CommandMachine'; import { JigUtils } from '../Editor/JigUtils'; import { PromptEntityResult, PromptStatus } from '../Editor/PromptResult'; diff --git a/src/Add-on/FilletUtils.ts b/src/Add-on/FilletUtils.ts index eb9cde67c..8906fb40e 100644 --- a/src/Add-on/FilletUtils.ts +++ b/src/Add-on/FilletUtils.ts @@ -1,14 +1,14 @@ import { Matrix4, Vector3 } from "three"; import { curveLinkGroup, GetPointAtCurveDir } from "../Common/CurveUtils"; -import { Arc } from "../DatabaseServices/Arc"; -import { Circle } from "../DatabaseServices/Circle"; -import { Curve } from "../DatabaseServices/Curve"; -import { Line } from "../DatabaseServices/Line"; -import { Polyline } from "../DatabaseServices/Polyline"; +import { Arc } from "../DatabaseServices/Entity/Arc"; +import { Circle } from "../DatabaseServices/Entity/Circle"; +import { Curve } from "../DatabaseServices/Entity/Curve"; +import { Line } from "../DatabaseServices/Entity/Line"; +import { Polyline } from "../DatabaseServices/Entity/Polyline"; import { PromptEntityResult, PromptPointResult } from "../Editor/PromptResult"; import { angle, equalv3, isParallelTo, midPoint, AsVector2 } from "../Geometry/GeUtils"; import { IntersectOption } from "../GraphicsSystem/IntersectWith"; -import { Board } from "../DatabaseServices/Board"; +import { Board } from "../DatabaseServices/Entity/Board"; function Encode(res: PromptEntityResult, enMap: (PromptEntityResult[])[]) { diff --git a/src/Add-on/Gesture/Gesture_DrawLayerBoard.ts b/src/Add-on/Gesture/Gesture_DrawLayerBoard.ts index 74e5a9362..4a2d8986f 100644 --- a/src/Add-on/Gesture/Gesture_DrawLayerBoard.ts +++ b/src/Add-on/Gesture/Gesture_DrawLayerBoard.ts @@ -1,6 +1,6 @@ import { Vector2, Vector3 } from "three"; import { app } from "../../ApplicationServices/Application"; -import { Board, BoardType } from "../../DatabaseServices/Board"; +import { Board, BoardType } from "../../DatabaseServices/Entity/Board"; import { commandMachine } from "../../Editor/CommandMachine"; import { CommandState } from "../../Editor/CommandState"; import { GestureDir, GestureDirEqual } from "../../Editor/Gesture"; diff --git a/src/Add-on/Insert.ts b/src/Add-on/Insert.ts index 698839115..47176adee 100644 --- a/src/Add-on/Insert.ts +++ b/src/Add-on/Insert.ts @@ -2,7 +2,7 @@ import { Vector3 } from "three"; import { app } from "../ApplicationServices/Application"; import { CADFiler } from "../DatabaseServices/CADFiler"; import { Database } from "../DatabaseServices/Database"; -import { Entity } from "../DatabaseServices/Entity"; +import { Entity } from "../DatabaseServices/Entity/Entity"; import { FileServer, IFileInfo } from "../DatabaseServices/FileServer"; import { Command } from "../Editor/CommandMachine"; import { JigUtils } from "../Editor/JigUtils"; diff --git a/src/Add-on/Join.ts b/src/Add-on/Join.ts index f32e85cdb..d315b3bcc 100644 --- a/src/Add-on/Join.ts +++ b/src/Add-on/Join.ts @@ -2,12 +2,12 @@ import { Line3, Vector3 } from "three"; import { app } from "../ApplicationServices/Application"; import { curveLinkGroup } from "../Common/CurveUtils"; import { Status } from "../Common/Status"; -import { Arc } from "../DatabaseServices/Arc"; -import { Board, BoardType } from "../DatabaseServices/Board"; -import { Circle } from "../DatabaseServices/Circle"; -import { Curve } from '../DatabaseServices/Curve'; -import { Line } from "../DatabaseServices/Line"; -import { Polyline } from "../DatabaseServices/Polyline"; +import { Arc } from "../DatabaseServices/Entity/Arc"; +import { Board, BoardType } from "../DatabaseServices/Entity/Board"; +import { Circle } from "../DatabaseServices/Entity/Circle"; +import { Curve } from '../DatabaseServices/Entity/Curve'; +import { Line } from "../DatabaseServices/Entity/Line"; +import { Polyline } from "../DatabaseServices/Entity/Polyline"; import { Command } from "../Editor/CommandMachine"; import { PromptStatus } from "../Editor/PromptResult"; import { FuzzDirection } from "../Geometry/FuzzVector"; diff --git a/src/Add-on/LatticeDrawer/LatticeDrawerTool.ts b/src/Add-on/LatticeDrawer/LatticeDrawerTool.ts index 05da21a7d..452f2718c 100644 --- a/src/Add-on/LatticeDrawer/LatticeDrawerTool.ts +++ b/src/Add-on/LatticeDrawer/LatticeDrawerTool.ts @@ -3,9 +3,9 @@ import { LatticeDrawerStore } from "../../UI/Store/LatticeDrawerStore"; import { ISpaceParse } from "../../Geometry/SpaceParse/ISpaceParse"; import { Singleton } from "../../Common/Singleton"; import { Vector3, Vector2 } from "three"; -import { Board, BoardType } from "../../DatabaseServices/Board"; +import { Board, BoardType } from "../../DatabaseServices/Entity/Board"; import { app } from "../../ApplicationServices/Application"; -import { Polyline } from "../../DatabaseServices/Polyline"; +import { Polyline } from "../../DatabaseServices/Entity/Polyline"; import { arrayLast } from "../../Common/ArrayExt"; import { log } from "../../Common/Utils"; import { IHighSealedItem, DrillType } from "../../UI/Store/BoardInterface"; diff --git a/src/Add-on/Length.ts b/src/Add-on/Length.ts index f70edfe03..80edb9d49 100644 --- a/src/Add-on/Length.ts +++ b/src/Add-on/Length.ts @@ -1,7 +1,7 @@ import { Command } from "../Editor/CommandMachine"; import { app } from "../ApplicationServices/Application"; import { PromptStatus } from "../Editor/PromptResult"; -import { Curve } from "../DatabaseServices/Curve"; +import { Curve } from "../DatabaseServices/Entity/Curve"; export class Command_Length implements Command diff --git a/src/Add-on/Lisp.ts b/src/Add-on/Lisp.ts index b6335d0c4..47340a931 100644 --- a/src/Add-on/Lisp.ts +++ b/src/Add-on/Lisp.ts @@ -1,6 +1,6 @@ import { app } from "../ApplicationServices/Application"; import { copyTextToClipboard } from "../Common/Utils"; -import { Polyline } from "../DatabaseServices/Polyline"; +import { Polyline } from "../DatabaseServices/Entity/Polyline"; import { PromptStatus } from "../Editor/PromptResult"; import { Vector3 } from "three"; diff --git a/src/Add-on/Offset.ts b/src/Add-on/Offset.ts index d8f7f68ac..344366826 100644 --- a/src/Add-on/Offset.ts +++ b/src/Add-on/Offset.ts @@ -1,7 +1,7 @@ import { Vector3 } from 'three'; import { app } from '../ApplicationServices/Application'; import { GetPointAtCurveDir } from '../Common/CurveUtils'; -import { Curve } from '../DatabaseServices/Curve'; +import { Curve } from '../DatabaseServices/Entity/Curve'; import { Command } from '../Editor/CommandMachine'; import { JigUtils } from '../Editor/JigUtils'; import { PromptStatus } from '../Editor/PromptResult'; diff --git a/src/Add-on/OffsetX.ts b/src/Add-on/OffsetX.ts index 288c0c519..9677a6192 100644 --- a/src/Add-on/OffsetX.ts +++ b/src/Add-on/OffsetX.ts @@ -1,5 +1,5 @@ import { app } from "../ApplicationServices/Application"; -import { Polyline } from "../DatabaseServices/Polyline"; +import { Polyline } from "../DatabaseServices/Entity/Polyline"; import { Command } from "../Editor/CommandMachine"; import { PromptStatus } from "../Editor/PromptResult"; import { Vector3 } from "three"; diff --git a/src/Add-on/PasteClip.ts b/src/Add-on/PasteClip.ts index 512bf8248..1cd7f14c8 100644 --- a/src/Add-on/PasteClip.ts +++ b/src/Add-on/PasteClip.ts @@ -2,7 +2,7 @@ import { Matrix4, Vector3 } from "three"; import { app } from "../ApplicationServices/Application"; import { readClipboardText } from "../Common/Utils"; import { CADFiler } from "../DatabaseServices/CADFiler"; -import { Entity } from "../DatabaseServices/Entity"; +import { Entity } from "../DatabaseServices/Entity/Entity"; import { PromptStatus } from "../Editor/PromptResult"; import { JigUtils } from "../Editor/JigUtils"; diff --git a/src/Add-on/Pedit.ts b/src/Add-on/Pedit.ts index 20e041b2b..2b939b790 100644 --- a/src/Add-on/Pedit.ts +++ b/src/Add-on/Pedit.ts @@ -1,10 +1,10 @@ import { app } from '../ApplicationServices/Application'; -import { Curve } from '../DatabaseServices/Curve'; -import { Polyline } from '../DatabaseServices/Polyline'; +import { Curve } from '../DatabaseServices/Entity/Curve'; +import { Polyline } from '../DatabaseServices/Entity/Polyline'; import { Command } from '../Editor/CommandMachine'; import { PromptStatus } from '../Editor/PromptResult'; import { curveLinkGroup, ConverCircleToPolyline } from '../Common/CurveUtils'; -import { Circle } from '../DatabaseServices/Circle'; +import { Circle } from '../DatabaseServices/Entity/Circle'; import { arrayRemoveIf } from '../Common/ArrayExt'; diff --git a/src/Add-on/RevPl.ts b/src/Add-on/RevPl.ts index 75eefbcde..b9a613ea3 100644 --- a/src/Add-on/RevPl.ts +++ b/src/Add-on/RevPl.ts @@ -1,5 +1,5 @@ import { app } from '../ApplicationServices/Application'; -import { Curve } from '../DatabaseServices/Curve'; +import { Curve } from '../DatabaseServices/Entity/Curve'; import { Command } from '../Editor/CommandMachine'; export class Command_RevPl implements Command diff --git a/src/Add-on/Rotate.ts b/src/Add-on/Rotate.ts index 3aab101c6..22b2857df 100644 --- a/src/Add-on/Rotate.ts +++ b/src/Add-on/Rotate.ts @@ -1,6 +1,6 @@ import { Math, Matrix4, Vector3 } from 'three'; import { app } from '../ApplicationServices/Application'; -import { Entity } from '../DatabaseServices/Entity'; +import { Entity } from '../DatabaseServices/Entity/Entity'; import { Command } from '../Editor/CommandMachine'; import { JigUtils } from '../Editor/JigUtils'; import { PromptStatus } from '../Editor/PromptResult'; diff --git a/src/Add-on/RotateLayerBoard.ts b/src/Add-on/RotateLayerBoard.ts index 77adfc89a..3f0456031 100644 --- a/src/Add-on/RotateLayerBoard.ts +++ b/src/Add-on/RotateLayerBoard.ts @@ -3,7 +3,7 @@ import { app } from "../ApplicationServices/Application"; import { RotateLayerBoardModal, ERotateType, RotateLayerBoardStore } from "../UI/Components/RotateLayerBoard"; import { ModalPosition, ModalState } from "../UI/Components/Modal/ModalsManage"; import { PromptStatus } from "../Editor/PromptResult"; -import { Board, BoardType } from "../DatabaseServices/Board"; +import { Board, BoardType } from "../DatabaseServices/Entity/Board"; import { Matrix4, Math as TMath, Vector3 } from "three"; import { MoveMatrix, isParallelTo, equaln } from "../Geometry/GeUtils"; import { GangDrill } from "../DatabaseServices/3DSolid/GangDrill"; diff --git a/src/Add-on/Scale.ts b/src/Add-on/Scale.ts index f05bd392f..f38ed6e83 100644 --- a/src/Add-on/Scale.ts +++ b/src/Add-on/Scale.ts @@ -5,7 +5,7 @@ import { Command } from "../Editor/CommandMachine"; import { JigUtils } from "../Editor/JigUtils"; import { PromptStatus } from "../Editor/PromptResult"; import { equaln } from "../Geometry/GeUtils"; -import { Entity } from "../DatabaseServices/Entity"; +import { Entity } from "../DatabaseServices/Entity/Entity"; export class Command_Scale implements Command { diff --git a/src/Add-on/Sweep.ts b/src/Add-on/Sweep.ts index f31d646a3..304298d38 100644 --- a/src/Add-on/Sweep.ts +++ b/src/Add-on/Sweep.ts @@ -1,7 +1,7 @@ import { app } from '../ApplicationServices/Application'; import { SweepSolid } from '../DatabaseServices/3DSolid/SweepSolid'; -import { Curve } from '../DatabaseServices/Curve'; -import { Polyline } from '../DatabaseServices/Polyline'; +import { Curve } from '../DatabaseServices/Entity/Curve'; +import { Polyline } from '../DatabaseServices/Entity/Polyline'; import { Command } from '../Editor/CommandMachine'; import { PromptStatus } from '../Editor/PromptResult'; diff --git a/src/Add-on/Tangent.ts b/src/Add-on/Tangent.ts index 51a39d745..4f929abe1 100644 --- a/src/Add-on/Tangent.ts +++ b/src/Add-on/Tangent.ts @@ -1,7 +1,7 @@ import { Command } from "../Editor/CommandMachine"; import { app } from "../ApplicationServices/Application"; -import { Circle } from "../DatabaseServices/Circle"; -import { Arc } from "../DatabaseServices/Arc"; +import { Circle } from "../DatabaseServices/Entity/Circle"; +import { Arc } from "../DatabaseServices/Entity/Arc"; import { CircleInternalTangentLines, CircleOuterTangentLines } from "../Common/CurveUtils"; export class DrawTangentLine implements Command diff --git a/src/Add-on/TestFb.ts b/src/Add-on/TestFb.ts index a2abf052c..0f7088554 100644 --- a/src/Add-on/TestFb.ts +++ b/src/Add-on/TestFb.ts @@ -1,7 +1,7 @@ import { Vector3 } from "three"; import { app } from "../ApplicationServices/Application"; -import { Board } from "../DatabaseServices/Board"; -import { Curve } from "../DatabaseServices/Curve"; +import { Board } from "../DatabaseServices/Entity/Board"; +import { Curve } from "../DatabaseServices/Entity/Curve"; import { Command } from "../Editor/CommandMachine"; import { PromptStatus } from "../Editor/PromptResult"; import { getSealedBoardContour } from "../GraphicsSystem/CalcEdgeSealing"; diff --git a/src/Add-on/Trim.ts b/src/Add-on/Trim.ts index 1580ef137..1d713ed01 100644 --- a/src/Add-on/Trim.ts +++ b/src/Add-on/Trim.ts @@ -2,10 +2,10 @@ import { Vector3 } from 'three'; import { app } from '../ApplicationServices/Application'; import { arrayLast, arrayRemove } from '../Common/ArrayExt'; import { Status } from '../Common/Status'; -import { Arc } from '../DatabaseServices/Arc'; -import { Curve } from '../DatabaseServices/Curve'; -import { Line } from '../DatabaseServices/Line'; -import { Polyline } from '../DatabaseServices/Polyline'; +import { Arc } from '../DatabaseServices/Entity/Arc'; +import { Curve } from '../DatabaseServices/Entity/Curve'; +import { Line } from '../DatabaseServices/Entity/Line'; +import { Polyline } from '../DatabaseServices/Entity/Polyline'; import { Command } from '../Editor/CommandMachine'; import { JigUtils } from '../Editor/JigUtils'; import { PromptSsgetResult, PromptStatus } from '../Editor/PromptResult'; diff --git a/src/Add-on/Wblock.ts b/src/Add-on/Wblock.ts index 47ac8ad3a..26b73bc8f 100644 --- a/src/Add-on/Wblock.ts +++ b/src/Add-on/Wblock.ts @@ -1,7 +1,7 @@ import { app } from "../ApplicationServices/Application"; import { formateDate } from "../Common/Utils"; import { Database } from "../DatabaseServices/Database"; -import { Entity } from "../DatabaseServices/Entity"; +import { Entity } from "../DatabaseServices/Entity/Entity"; import { FileServer } from "../DatabaseServices/FileServer"; import { Command } from "../Editor/CommandMachine"; import { PromptStatus } from "../Editor/PromptResult"; diff --git a/src/Add-on/closetest.ts b/src/Add-on/closetest.ts index b777a2122..ec62bc366 100644 --- a/src/Add-on/closetest.ts +++ b/src/Add-on/closetest.ts @@ -1,12 +1,12 @@ import { Vector3 } from 'three'; import { app } from '../ApplicationServices/Application'; import { GetPointAtCurveDir } from '../Common/CurveUtils'; -import { Arc } from '../DatabaseServices/Arc'; -import { Circle } from '../DatabaseServices/Circle'; -import { Curve } from '../DatabaseServices/Curve'; -import { Line } from '../DatabaseServices/Line'; +import { Arc } from '../DatabaseServices/Entity/Arc'; +import { Circle } from '../DatabaseServices/Entity/Circle'; +import { Curve } from '../DatabaseServices/Entity/Curve'; +import { Line } from '../DatabaseServices/Entity/Line'; import { IsPointInBowArc, IsPointInPolyLine } from '../DatabaseServices/PointInPolyline'; -import { Polyline } from '../DatabaseServices/Polyline'; +import { Polyline } from '../DatabaseServices/Entity/Polyline'; import { Command } from '../Editor/CommandMachine'; import { PromptStatus } from '../Editor/PromptResult'; import { PromptBlock } from '../UI/DynamicPrompt/PromptBlock'; diff --git a/src/Add-on/instest.ts b/src/Add-on/instest.ts index c0680d657..a28c7d765 100644 --- a/src/Add-on/instest.ts +++ b/src/Add-on/instest.ts @@ -1,6 +1,6 @@ import { app } from '../ApplicationServices/Application'; -import { Circle } from '../DatabaseServices/Circle'; -import { Curve } from '../DatabaseServices/Curve'; +import { Circle } from '../DatabaseServices/Entity/Circle'; +import { Curve } from '../DatabaseServices/Entity/Curve'; import { Command } from '../Editor/CommandMachine'; import { PromptStatus } from '../Editor/PromptResult'; import { IntersectOption } from '../GraphicsSystem/IntersectWith'; diff --git a/src/Add-on/polytest.ts b/src/Add-on/polytest.ts index e2f17e388..e5a753c1a 100644 --- a/src/Add-on/polytest.ts +++ b/src/Add-on/polytest.ts @@ -1,14 +1,14 @@ import { Vector2, Vector3 } from 'three'; import { app } from '../ApplicationServices/Application'; -import { Circle } from '../DatabaseServices/Circle'; -import { ExtendType } from '../DatabaseServices/Curve'; -import { Line } from '../DatabaseServices/Line'; -import { Polyline } from '../DatabaseServices/Polyline'; +import { Circle } from '../DatabaseServices/Entity/Circle'; +import { ExtendType } from '../DatabaseServices/Entity/Curve'; +import { Line } from '../DatabaseServices/Entity/Line'; +import { Polyline } from '../DatabaseServices/Entity/Polyline'; import { Command } from '../Editor/CommandMachine'; import { polar } from '../Geometry/GeUtils'; import { IntersectOption } from '../GraphicsSystem/IntersectWith'; -import { Point } from '../DatabaseServices/Point'; +import { Point } from '../DatabaseServices/Entity/Point'; export class Command_PLTest implements Command diff --git a/src/Add-on/test/testIntersect.ts b/src/Add-on/test/testIntersect.ts index cbe639cdf..033062615 100644 --- a/src/Add-on/test/testIntersect.ts +++ b/src/Add-on/test/testIntersect.ts @@ -1,12 +1,12 @@ import { Line } from "three"; import { app } from "../../ApplicationServices/Application"; -import { Arc } from "../../DatabaseServices/Arc"; -import { Circle } from "../../DatabaseServices/Circle"; -import { Curve } from "../../DatabaseServices/Curve"; +import { Arc } from "../../DatabaseServices/Entity/Arc"; +import { Circle } from "../../DatabaseServices/Entity/Circle"; +import { Curve } from "../../DatabaseServices/Entity/Curve"; import { Command } from "../../Editor/CommandMachine"; import { PromptStatus } from "../../Editor/PromptResult"; import { IntersectCircleAndCircle, IntersectOption } from "../../GraphicsSystem/IntersectWith"; -import { Point } from "../../DatabaseServices/Point"; +import { Point } from "../../DatabaseServices/Entity/Point"; export class TestIntersect implements Command { diff --git a/src/Add-on/testEntity/TestCurve.ts b/src/Add-on/testEntity/TestCurve.ts index 2b4d6bc3b..71c9b804e 100644 --- a/src/Add-on/testEntity/TestCurve.ts +++ b/src/Add-on/testEntity/TestCurve.ts @@ -1,17 +1,17 @@ import { Vector3, Box3 } from "three"; import { app } from "../../ApplicationServices/Application"; import { arrayLast, arrayRemoveIf, arraySortByNumber } from "../../Common/ArrayExt"; -import { Circle } from "../../DatabaseServices/Circle"; +import { Circle } from "../../DatabaseServices/Entity/Circle"; import { Contour } from "../../DatabaseServices/Contour"; -import { Curve } from "../../DatabaseServices/Curve"; -import { Polyline } from "../../DatabaseServices/Polyline"; +import { Curve } from "../../DatabaseServices/Entity/Curve"; +import { Polyline } from "../../DatabaseServices/Entity/Polyline"; import { Command } from "../../Editor/CommandMachine"; import { PromptStatus } from "../../Editor/PromptResult"; import { equaln } from "../../Geometry/GeUtils"; import { IsPtsAllOutOrOnReg } from "../../GraphicsSystem/BoolOperateUtils"; -import { Line } from "../../DatabaseServices/Line"; +import { Line } from "../../DatabaseServices/Entity/Line"; import { Box3Ext } from "../../Geometry/Box"; -import { Point } from "../../DatabaseServices/Point"; +import { Point } from "../../DatabaseServices/Entity/Point"; export class TestTargeOnCurve implements Command { diff --git a/src/Add-on/testEntity/test.ts b/src/Add-on/testEntity/test.ts index 62cc8c9d5..0a77b8416 100644 --- a/src/Add-on/testEntity/test.ts +++ b/src/Add-on/testEntity/test.ts @@ -2,7 +2,7 @@ import { HotCMD } from "../../Hot/HotCommand"; import { Command } from "../../Editor/CommandMachine"; import { app } from "../../ApplicationServices/Application"; import { PromptStatus } from "../../Editor/PromptResult"; -import { Board } from "../../DatabaseServices/Board"; +import { Board } from "../../DatabaseServices/Entity/Board"; import { Production } from "../../Production/Product"; @HotCMD diff --git a/src/Add-on/testEntity/testCollision.ts b/src/Add-on/testEntity/testCollision.ts index efca50a51..5af394f1d 100644 --- a/src/Add-on/testEntity/testCollision.ts +++ b/src/Add-on/testEntity/testCollision.ts @@ -1,7 +1,7 @@ import { Vector3, Box3 } from "three"; import { app } from "../../ApplicationServices/Application"; -import { Board } from "../../DatabaseServices/Board"; -import { Line } from "../../DatabaseServices/Line"; +import { Board } from "../../DatabaseServices/Entity/Board"; +import { Line } from "../../DatabaseServices/Entity/Line"; import { Command } from "../../Editor/CommandMachine"; import { PromptStatus } from "../../Editor/PromptResult"; import { BoardFaceType } from "../../Geometry/DrillParse/BoardGetFace"; diff --git a/src/ApplicationServices/Application.ts b/src/ApplicationServices/Application.ts index 18ea10412..a1b8fe1a2 100644 --- a/src/ApplicationServices/Application.ts +++ b/src/ApplicationServices/Application.ts @@ -5,7 +5,7 @@ import { DrillingReactor } from '../Add-on/DrawDrilling/DrillingReactor'; import { KeyCode, MouseKey } from '../Common/KeyEnum'; import { CADFiler } from '../DatabaseServices/CADFiler'; import { Database } from '../DatabaseServices/Database'; -import { Entity } from '../DatabaseServices/Entity'; +import { Entity } from '../DatabaseServices/Entity/Entity'; import { FontLoader } from '../DatabaseServices/Text/FontLoader'; import { CameraControls } from '../Editor/CameraControls'; import { commandMachine } from '../Editor/CommandMachine'; diff --git a/src/Common/CurveUtils.ts b/src/Common/CurveUtils.ts index d7f19c4e5..80d3524e9 100644 --- a/src/Common/CurveUtils.ts +++ b/src/Common/CurveUtils.ts @@ -1,11 +1,11 @@ import { Box3, Line3, Matrix3, Matrix4, Vector2, Vector3 } from 'three'; -import { Arc } from '../DatabaseServices/Arc'; -import { Circle } from '../DatabaseServices/Circle'; -import { Curve } from '../DatabaseServices/Curve'; -import { Ellipse } from '../DatabaseServices/Ellipse'; -import { Line } from '../DatabaseServices/Line'; +import { Arc } from '../DatabaseServices/Entity/Arc'; +import { Circle } from '../DatabaseServices/Entity/Circle'; +import { Curve } from '../DatabaseServices/Entity/Curve'; +import { Ellipse } from '../DatabaseServices/Entity/Ellipse'; +import { Line } from '../DatabaseServices/Entity/Line'; import { IsPointInBowArc } from '../DatabaseServices/PointInPolyline'; -import { Polyline } from '../DatabaseServices/Polyline'; +import { Polyline } from '../DatabaseServices/Entity/Polyline'; import { Count } from '../Geometry/Count'; import { CurveMap } from '../Geometry/CurveMap'; import { ZeroVec, equaln, equalv2, equalv3, isParallelTo, AsVector3, AsVector2 } from '../Geometry/GeUtils'; diff --git a/src/Common/SerializeMaterial.ts b/src/Common/SerializeMaterial.ts index 9a67654be..9d0c9debe 100644 --- a/src/Common/SerializeMaterial.ts +++ b/src/Common/SerializeMaterial.ts @@ -3,7 +3,7 @@ import { app } from "../ApplicationServices/Application"; import { CADFiler } from "../DatabaseServices/CADFiler"; import { Database } from "../DatabaseServices/Database"; import { PhysicalMaterialRecord } from "../DatabaseServices/PhysicalMaterialRecord"; -import { Polyline } from "../DatabaseServices/Polyline"; +import { Polyline } from "../DatabaseServices/Entity/Polyline"; import { AsVector2 } from "../Geometry/GeUtils"; import { DuplicateRecordCloning } from "./Status"; diff --git a/src/Common/StretchParse.ts b/src/Common/StretchParse.ts index 2b7b93110..35ef9ff77 100644 --- a/src/Common/StretchParse.ts +++ b/src/Common/StretchParse.ts @@ -1,4 +1,4 @@ -import { Entity } from "../DatabaseServices/Entity"; +import { Entity } from "../DatabaseServices/Entity/Entity"; import { SelectBox, SelectType } from "../Editor/SelectBox"; import { SelectPick } from "../Editor/SelectPick"; import { SelectSet } from "../Editor/SelectSet"; diff --git a/src/Common/Utils.ts b/src/Common/Utils.ts index 755b5a437..b83fab7bd 100644 --- a/src/Common/Utils.ts +++ b/src/Common/Utils.ts @@ -1,5 +1,5 @@ import { Object3D } from "three"; -import { Entity } from "../DatabaseServices/Entity"; +import { Entity } from "../DatabaseServices/Entity/Entity"; import { equaln } from "../Geometry/GeUtils"; //四则运算表达式正则 diff --git a/src/DatabaseServices/3DSolid/Cylineder.ts b/src/DatabaseServices/3DSolid/Cylineder.ts index dad5e86fc..9dbda1e1d 100644 --- a/src/DatabaseServices/3DSolid/Cylineder.ts +++ b/src/DatabaseServices/3DSolid/Cylineder.ts @@ -5,7 +5,7 @@ import { CADFiler } from '../CADFiler'; import { Solid3D } from "./Solid3D"; import { Factory } from '../CADFactory'; import { Contour } from '../Contour'; -import { Circle } from '../Circle'; +import { Circle } from '../Entity/Circle'; @Factory export class Cylineder extends Solid3D diff --git a/src/DatabaseServices/3DSolid/GangDrill.ts b/src/DatabaseServices/3DSolid/GangDrill.ts index 5b26fedb0..5d87d786b 100644 --- a/src/DatabaseServices/3DSolid/GangDrill.ts +++ b/src/DatabaseServices/3DSolid/GangDrill.ts @@ -5,7 +5,7 @@ import { FastDrillingEdgeGeometry } from '../../Geometry/CreateWireframe'; import { RenderType } from "../../GraphicsSystem/RenderType"; import { Factory } from '../CADFactory'; import { CADFiler } from '../CADFiler'; -import { Circle } from '../Circle'; +import { Circle } from '../Entity/Circle'; import { Contour } from '../Contour'; import { Shape } from '../Shape'; import { Solid3D } from "./Solid3D"; diff --git a/src/DatabaseServices/3DSolid/Solid3D.ts b/src/DatabaseServices/3DSolid/Solid3D.ts index bfc585912..afa8c33e6 100644 --- a/src/DatabaseServices/3DSolid/Solid3D.ts +++ b/src/DatabaseServices/3DSolid/Solid3D.ts @@ -1,5 +1,5 @@ import { Factory } from '../CADFactory'; -import { Entity } from '../Entity'; +import { Entity } from '../Entity/Entity'; @Factory export class Solid3D extends Entity diff --git a/src/DatabaseServices/3DSolid/SweepSolid.ts b/src/DatabaseServices/3DSolid/SweepSolid.ts index b2c8b9032..89f08e5f9 100644 --- a/src/DatabaseServices/3DSolid/SweepSolid.ts +++ b/src/DatabaseServices/3DSolid/SweepSolid.ts @@ -7,10 +7,10 @@ import { SweepGeometry } from '../../Geometry/SweepGeometry'; import { RenderType } from "../../GraphicsSystem/RenderType"; import { Factory } from "../CADFactory"; import { CADFiler } from '../CADFiler'; -import { Curve } from "../Curve"; +import { Curve } from "../Entity/Curve"; import { PhysicalMaterialRecord } from '../PhysicalMaterialRecord'; import { IsPointInPolyLine } from '../PointInPolyline'; -import { Polyline } from '../Polyline'; +import { Polyline } from '../Entity/Polyline'; import { Solid3D } from "./Solid3D"; @Factory diff --git a/src/DatabaseServices/BlockTableRecord.ts b/src/DatabaseServices/BlockTableRecord.ts index 642ec28c1..5e244a34e 100644 --- a/src/DatabaseServices/BlockTableRecord.ts +++ b/src/DatabaseServices/BlockTableRecord.ts @@ -1,7 +1,7 @@ import { end } from 'xaop'; import { Factory } from './CADFactory'; import { Database } from './Database'; -import { Entity } from './Entity'; +import { Entity } from './Entity/Entity'; import { ObjectCollection } from './ObjectCollection'; import { SymbolTableRecord } from './SymbolTableRecord'; import { CADFiler } from './CADFiler'; diff --git a/src/DatabaseServices/CADFiler.ts b/src/DatabaseServices/CADFiler.ts index 87e55353f..116b8c1b0 100644 --- a/src/DatabaseServices/CADFiler.ts +++ b/src/DatabaseServices/CADFiler.ts @@ -3,7 +3,7 @@ import { CADObject } from './CADObject'; import { Database } from './Database'; import { ISerialize } from './ISerialize'; import { ObjectId } from './ObjectId'; -import { Entity } from './Entity'; +import { Entity } from './Entity/Entity'; /** * CAD文件数据 diff --git a/src/DatabaseServices/Contour.ts b/src/DatabaseServices/Contour.ts index 8f2d9d6f3..c4a465e61 100644 --- a/src/DatabaseServices/Contour.ts +++ b/src/DatabaseServices/Contour.ts @@ -8,10 +8,10 @@ import { equaln, rotatePoint, equalv3, equalv2 } from "../Geometry/GeUtils"; import { RegionParse, Route } from "../Geometry/RegionParse"; import { isTargetCurInOrOnSourceCur } from "../GraphicsSystem/BoolOperateUtils"; import { IntersectOption } from "../GraphicsSystem/IntersectWith"; -import { Arc } from "./Arc"; -import { Circle } from "./Circle"; -import { Curve } from "./Curve"; -import { Polyline } from "./Polyline"; +import { Arc } from "./Entity/Arc"; +import { Circle } from "./Entity/Circle"; +import { Curve } from "./Entity/Curve"; +import { Polyline } from "./Entity/Polyline"; let cache = new WeakMap(); diff --git a/src/DatabaseServices/Database.ts b/src/DatabaseServices/Database.ts index f9a3db978..a2bd6f007 100644 --- a/src/DatabaseServices/Database.ts +++ b/src/DatabaseServices/Database.ts @@ -7,7 +7,7 @@ import { Factory } from './CADFactory'; import { CADFiler } from './CADFiler'; import { CADObject } from './CADObject'; import { DeepCloneFiler } from './DeepCloneFiler'; -import { Entity } from './Entity'; +import { Entity } from './Entity/Entity'; import { HistoricManage } from './HistoricManage'; import { IdMaping } from './IdMaping'; import { MaterialTable } from './MaterialTable'; @@ -15,7 +15,7 @@ import { ObjectId } from './ObjectId'; import { PhysicalMaterialRecord } from './PhysicalMaterialRecord'; import { SymbolTable } from './SymbolTable'; import { SymbolTableRecord } from './SymbolTableRecord'; -import { TemplateTable } from './TemplateTable'; +import { TemplateTable } from './Template/TemplateTable'; import { TextureTableRecord } from './Texture'; import { TextureTable } from './TextureTable'; import { WblockCloneFiler } from './WblockCloneFiler'; diff --git a/src/DatabaseServices/Dimension/2LineAngularDimension.ts b/src/DatabaseServices/Dimension/2LineAngularDimension.ts index a97ad049e..7dbd92489 100644 --- a/src/DatabaseServices/Dimension/2LineAngularDimension.ts +++ b/src/DatabaseServices/Dimension/2LineAngularDimension.ts @@ -6,11 +6,11 @@ import { BufferGeometryUtils } from "../../Geometry/BufferGeometryUtils"; import { angle, equalv3, equaln } from "../../Geometry/GeUtils"; import { RenderType } from "../../GraphicsSystem/RenderType"; import { IntersectOption } from "../../GraphicsSystem/IntersectWith"; -import { Arc } from "../Arc"; +import { Arc } from "../Entity/Arc"; import { Factory } from "../CADFactory"; import { CADFiler } from "../CADFiler"; -import { Entity } from "../Entity"; -import { Line } from "../Line"; +import { Entity } from "../Entity/Entity"; +import { Line } from "../Entity/Line"; import { Text, TextAligen } from "../Text/Text"; import { ObjectSnapMode } from "../../Editor/ObjectSnapMode"; diff --git a/src/DatabaseServices/Dimension/AlignedDimension.ts b/src/DatabaseServices/Dimension/AlignedDimension.ts index b1b6f0e35..06468873c 100644 --- a/src/DatabaseServices/Dimension/AlignedDimension.ts +++ b/src/DatabaseServices/Dimension/AlignedDimension.ts @@ -7,9 +7,9 @@ import { angle, angleAndX, midPoint } from "../../Geometry/GeUtils"; import { RenderType } from "../../GraphicsSystem/RenderType"; import { Factory } from "../CADFactory"; import { CADFiler } from "../CADFiler"; -import { Entity } from "../Entity"; -import { Line } from "../Line"; -import { Polyline } from "../Polyline"; +import { Entity } from "../Entity/Entity"; +import { Line } from "../Entity/Line"; +import { Polyline } from "../Entity/Polyline"; import { Text, TextAligen } from "../Text/Text"; import * as THREE from "three"; diff --git a/src/DatabaseServices/Dimension/DimDiameter.ts b/src/DatabaseServices/Dimension/DimDiameter.ts index deedf1140..0863d9425 100644 --- a/src/DatabaseServices/Dimension/DimDiameter.ts +++ b/src/DatabaseServices/Dimension/DimDiameter.ts @@ -5,7 +5,7 @@ import { BufferGeometryUtils } from "../../Geometry/BufferGeometryUtils"; import { angle, midPoint } from "../../Geometry/GeUtils"; import { RenderType } from "../../GraphicsSystem/RenderType"; import { Factory } from "../CADFactory"; -import { Circle } from "../Circle"; +import { Circle } from "../Entity/Circle"; import { RadiusDimension } from "./RadiusDimension"; diff --git a/src/DatabaseServices/Dimension/LinearDimension.ts b/src/DatabaseServices/Dimension/LinearDimension.ts index fb96b85dc..2236f33a7 100644 --- a/src/DatabaseServices/Dimension/LinearDimension.ts +++ b/src/DatabaseServices/Dimension/LinearDimension.ts @@ -2,7 +2,7 @@ import { Vector3 } from "three"; import { isBetweenNums } from "../../Common/Utils"; import { Factory } from "../CADFactory"; import { AlignedDimension } from "./AlignedDimension"; -import { Line } from "../Line"; +import { Line } from "../Entity/Line"; import { equaln } from "../../Geometry/GeUtils"; enum DimDir diff --git a/src/DatabaseServices/Dimension/RadiusDimension.ts b/src/DatabaseServices/Dimension/RadiusDimension.ts index acc312115..598b6a750 100644 --- a/src/DatabaseServices/Dimension/RadiusDimension.ts +++ b/src/DatabaseServices/Dimension/RadiusDimension.ts @@ -7,9 +7,9 @@ import { angle, angleAndX, MoveMatrix } from "../../Geometry/GeUtils"; import { RenderType } from "../../GraphicsSystem/RenderType"; import { Factory } from "../CADFactory"; import { CADFiler } from "../CADFiler"; -import { Circle } from "../Circle"; -import { Entity } from "../Entity"; -import { Line } from "../Line"; +import { Circle } from "../Entity/Circle"; +import { Entity } from "../Entity/Entity"; +import { Line } from "../Entity/Line"; import { Text } from "../Text/Text"; @Factory diff --git a/src/DatabaseServices/Arc.ts b/src/DatabaseServices/Entity/Arc.ts similarity index 97% rename from src/DatabaseServices/Arc.ts rename to src/DatabaseServices/Entity/Arc.ts index 61b5fcd7e..5daf789c1 100644 --- a/src/DatabaseServices/Arc.ts +++ b/src/DatabaseServices/Entity/Arc.ts @@ -1,15 +1,15 @@ import { Box3, BufferGeometry, Matrix4, Object3D, Shape, Vector2, Vector3, Matrix3, Line as TLine } from 'three'; -import { ColorMaterial } from '../Common/ColorPalette'; -import { getCircleCenter, GetTanPtsOnArcOrCircle, getArcOrCirNearPts } from '../Common/CurveUtils'; -import { matrixSetVector, reviseMirrorMatrix } from '../Common/Matrix4Utils'; -import { Status } from '../Common/Status'; -import { ObjectSnapMode } from '../Editor/ObjectSnapMode'; -import { BufferGeometryUtils } from '../Geometry/BufferGeometryUtils'; -import { angle, clampRad, equaln, equalv3, midPoint, MoveMatrix, polar, AsVector3 } from '../Geometry/GeUtils'; -import { RenderType } from '../GraphicsSystem/RenderType'; -import { IntersectArcAndArc, IntersectCircleAndArc, IntersectLineAndArc, IntersectOption, IntersectPolylineAndCurve, reverseIntersectOption, IntersectEllipseAndCircleOrArc } from '../GraphicsSystem/IntersectWith'; -import { Factory } from './CADFactory'; -import { CADFiler } from './CADFiler'; +import { ColorMaterial } from '../../Common/ColorPalette'; +import { getCircleCenter, GetTanPtsOnArcOrCircle, getArcOrCirNearPts } from '../../Common/CurveUtils'; +import { matrixSetVector, reviseMirrorMatrix } from '../../Common/Matrix4Utils'; +import { Status } from '../../Common/Status'; +import { ObjectSnapMode } from '../../Editor/ObjectSnapMode'; +import { BufferGeometryUtils } from '../../Geometry/BufferGeometryUtils'; +import { angle, clampRad, equaln, equalv3, midPoint, MoveMatrix, polar, AsVector3 } from '../../Geometry/GeUtils'; +import { RenderType } from '../../GraphicsSystem/RenderType'; +import { IntersectArcAndArc, IntersectCircleAndArc, IntersectLineAndArc, IntersectOption, IntersectPolylineAndCurve, reverseIntersectOption, IntersectEllipseAndCircleOrArc } from '../../GraphicsSystem/IntersectWith'; +import { Factory } from '../CADFactory'; +import { CADFiler } from '../CADFiler'; import { Circle } from './Circle'; import { Curve } from './Curve'; import { Line } from './Line'; diff --git a/src/DatabaseServices/Board.ts b/src/DatabaseServices/Entity/Board.ts similarity index 96% rename from src/DatabaseServices/Board.ts rename to src/DatabaseServices/Entity/Board.ts index d8f63a7b4..d317facdc 100644 --- a/src/DatabaseServices/Board.ts +++ b/src/DatabaseServices/Entity/Board.ts @@ -1,19 +1,19 @@ import { Matrix4, Vector3 } from 'three'; -import { arrayPushArray } from '../Common/ArrayExt'; -import { EBoardKeyList } from '../Common/BoardKeyList'; -import { UpdateDraw } from '../Common/Status'; -import { userConfig } from '../Editor/UserConfig'; -import { boardUVGenerator, boardUVGenerator2 } from '../Geometry/BoardUVGenerator'; -import { Box3Ext } from '../Geometry/Box'; -import { equaln, MoveMatrix } from '../Geometry/GeUtils'; -import { BoardProcessOption, ComposingType, FaceDirection, LinesType } from '../UI/Store/BoardInterface'; -import { Factory } from './CADFactory'; -import { CADFiler } from './CADFiler'; +import { arrayPushArray } from '../../Common/ArrayExt'; +import { EBoardKeyList } from '../../Common/BoardKeyList'; +import { UpdateDraw } from '../../Common/Status'; +import { userConfig } from '../../Editor/UserConfig'; +import { boardUVGenerator, boardUVGenerator2 } from '../../Geometry/BoardUVGenerator'; +import { Box3Ext } from '../../Geometry/Box'; +import { equaln, MoveMatrix } from '../../Geometry/GeUtils'; +import { BoardProcessOption, ComposingType, FaceDirection, LinesType } from '../../UI/Store/BoardInterface'; +import { Factory } from '../CADFactory'; +import { CADFiler } from '../CADFiler'; import { Circle } from './Circle'; -import { Contour } from './Contour'; +import { Contour } from '../Contour'; import { ExtureSolid, ExtureContourCurve } from './Extrude'; -import { ObjectId } from './ObjectId'; -import { Shape } from './Shape'; +import { ObjectId } from '../ObjectId'; +import { Shape } from '../Shape'; export enum BoardType { diff --git a/src/DatabaseServices/Circle.ts b/src/DatabaseServices/Entity/Circle.ts similarity index 94% rename from src/DatabaseServices/Circle.ts rename to src/DatabaseServices/Entity/Circle.ts index 76237d1d5..08a33e158 100644 --- a/src/DatabaseServices/Circle.ts +++ b/src/DatabaseServices/Entity/Circle.ts @@ -1,18 +1,18 @@ import * as THREE from 'three'; import { Box3, BufferGeometry, EllipseCurve, Material, Matrix3, Matrix4, Object3D, Shape, Vector3 } from 'three'; -import { arrayLast, arrayRemoveDuplicateBySort } from '../Common/ArrayExt'; -import { ColorMaterial } from '../Common/ColorPalette'; -import { getArcOrCirNearPts, GetTanPtsOnArcOrCircle } from '../Common/CurveUtils'; -import { reviseMirrorMatrix } from '../Common/Matrix4Utils'; -import { clamp } from '../Common/Utils'; -import { ObjectSnapMode } from '../Editor/ObjectSnapMode'; -import { BufferGeometryUtils } from '../Geometry/BufferGeometryUtils'; -import { angle, equaln, MoveMatrix, polar, AsVector3 } from '../Geometry/GeUtils'; -import { IntersectCircleAndArc, IntersectCircleAndCircle, IntersectLineAndCircle, IntersectOption, IntersectPolylineAndCurve, reverseIntersectOption, IntersectEllipseAndCircleOrArc } from '../GraphicsSystem/IntersectWith'; -import { RenderType } from '../GraphicsSystem/RenderType'; +import { arrayLast, arrayRemoveDuplicateBySort } from '../../Common/ArrayExt'; +import { ColorMaterial } from '../../Common/ColorPalette'; +import { getArcOrCirNearPts, GetTanPtsOnArcOrCircle } from '../../Common/CurveUtils'; +import { reviseMirrorMatrix } from '../../Common/Matrix4Utils'; +import { clamp } from '../../Common/Utils'; +import { ObjectSnapMode } from '../../Editor/ObjectSnapMode'; +import { BufferGeometryUtils } from '../../Geometry/BufferGeometryUtils'; +import { angle, equaln, MoveMatrix, polar, AsVector3 } from '../../Geometry/GeUtils'; +import { IntersectCircleAndArc, IntersectCircleAndCircle, IntersectLineAndCircle, IntersectOption, IntersectPolylineAndCurve, reverseIntersectOption, IntersectEllipseAndCircleOrArc } from '../../GraphicsSystem/IntersectWith'; +import { RenderType } from '../../GraphicsSystem/RenderType'; import { Arc } from './Arc'; -import { Factory } from './CADFactory'; -import { CADFiler } from './CADFiler'; +import { Factory } from '../CADFactory'; +import { CADFiler } from '../CADFiler'; import { Curve } from './Curve'; import { Line } from './Line'; import { Polyline } from './Polyline'; diff --git a/src/DatabaseServices/Curve.ts b/src/DatabaseServices/Entity/Curve.ts similarity index 93% rename from src/DatabaseServices/Curve.ts rename to src/DatabaseServices/Entity/Curve.ts index 81c5750cd..bf36a9232 100644 --- a/src/DatabaseServices/Curve.ts +++ b/src/DatabaseServices/Entity/Curve.ts @@ -1,11 +1,11 @@ import { Line, Object3D, Shape, Vector3, Material } from 'three'; -import { arrayRemoveDuplicateBySort, arraySortByNumber } from '../Common/ArrayExt'; -import { ColorMaterial } from '../Common/ColorPalette'; -import { Status } from '../Common/Status'; -import { equaln, equalv3 } from '../Geometry/GeUtils'; -import { RenderType } from '../GraphicsSystem/RenderType'; -import { IntersectOption } from '../GraphicsSystem/IntersectWith'; -import { Factory } from './CADFactory'; +import { arrayRemoveDuplicateBySort, arraySortByNumber } from '../../Common/ArrayExt'; +import { ColorMaterial } from '../../Common/ColorPalette'; +import { Status } from '../../Common/Status'; +import { equaln, equalv3 } from '../../Geometry/GeUtils'; +import { RenderType } from '../../GraphicsSystem/RenderType'; +import { IntersectOption } from '../../GraphicsSystem/IntersectWith'; +import { Factory } from '../CADFactory'; import { Entity } from './Entity'; export enum ExtendType diff --git a/src/DatabaseServices/Ellipse.ts b/src/DatabaseServices/Entity/Ellipse.ts similarity index 96% rename from src/DatabaseServices/Ellipse.ts rename to src/DatabaseServices/Entity/Ellipse.ts index 426ed9334..3f15c17b9 100644 --- a/src/DatabaseServices/Ellipse.ts +++ b/src/DatabaseServices/Entity/Ellipse.ts @@ -1,16 +1,16 @@ import * as THREE from 'three'; import { Box3, BufferGeometry, Matrix3, Matrix4, Object3D, Shape, Vector3 } from 'three'; -import { arrayLast, arrayRemoveDuplicateBySort } from '../Common/ArrayExt'; -import { ColorMaterial } from '../Common/ColorPalette'; -import { getDeterminantFor2V, getArcOrCirNearPts, getTanPtsOnEllipse } from '../Common/CurveUtils'; -import { Status } from '../Common/Status'; -import { ObjectSnapMode } from '../Editor/ObjectSnapMode'; -import { angle, equaln, equalv3, MoveMatrix, rotatePoint, angleTo, AsVector2 } from '../Geometry/GeUtils'; -import { IntersectEllipse, IntersectEllipseAndCircleOrArc, IntersectEllipseAndLine, IntersectOption, IntersectPolylineAndCurve, reverseIntersectOption } from '../GraphicsSystem/IntersectWith'; -import { RenderType } from '../GraphicsSystem/RenderType'; +import { arrayLast, arrayRemoveDuplicateBySort } from '../../Common/ArrayExt'; +import { ColorMaterial } from '../../Common/ColorPalette'; +import { getDeterminantFor2V, getArcOrCirNearPts, getTanPtsOnEllipse } from '../../Common/CurveUtils'; +import { Status } from '../../Common/Status'; +import { ObjectSnapMode } from '../../Editor/ObjectSnapMode'; +import { angle, equaln, equalv3, MoveMatrix, rotatePoint, angleTo, AsVector2 } from '../../Geometry/GeUtils'; +import { IntersectEllipse, IntersectEllipseAndCircleOrArc, IntersectEllipseAndLine, IntersectOption, IntersectPolylineAndCurve, reverseIntersectOption } from '../../GraphicsSystem/IntersectWith'; +import { RenderType } from '../../GraphicsSystem/RenderType'; import { Arc } from './Arc'; -import { Factory } from './CADFactory'; -import { CADFiler } from './CADFiler'; +import { Factory } from '../CADFactory'; +import { CADFiler } from '../CADFiler'; import { Circle } from './Circle'; import { Curve } from './Curve'; import { Line } from './Line'; diff --git a/src/DatabaseServices/Entity.ts b/src/DatabaseServices/Entity/Entity.ts similarity index 92% rename from src/DatabaseServices/Entity.ts rename to src/DatabaseServices/Entity/Entity.ts index 941edd2a3..77818b153 100644 --- a/src/DatabaseServices/Entity.ts +++ b/src/DatabaseServices/Entity/Entity.ts @@ -1,20 +1,20 @@ import { Box3, Material, Matrix3, Matrix4, MeshStandardMaterial, Object3D, Vector3 } from 'three'; import { iaop } from 'xaop'; -import { HostApplicationServices } from '../ApplicationServices/HostApplicationServices'; -import { DisposeThreeObj } from '../Common/Dispose'; -import { matrixIsCoplane } from '../Common/Matrix4Utils'; -import { UpdateDraw } from '../Common/Status'; -import { ObjectSnapMode } from '../Editor/ObjectSnapMode'; -import { userConfig } from '../Editor/UserConfig'; -import { equaln, equalv3, UpdateBoundingSphere } from '../Geometry/GeUtils'; -import { IntersectOption } from '../GraphicsSystem/IntersectWith'; -import { RenderType } from '../GraphicsSystem/RenderType'; -import { AutoRecord } from './AutoRecord'; -import { Factory } from './CADFactory'; -import { CADFiler } from './CADFiler'; -import { CADObject } from './CADObject'; -import { ObjectId } from './ObjectId'; -import { PhysicalMaterialRecord } from './PhysicalMaterialRecord'; +import { HostApplicationServices } from '../../ApplicationServices/HostApplicationServices'; +import { DisposeThreeObj } from '../../Common/Dispose'; +import { matrixIsCoplane } from '../../Common/Matrix4Utils'; +import { UpdateDraw } from '../../Common/Status'; +import { ObjectSnapMode } from '../../Editor/ObjectSnapMode'; +import { userConfig } from '../../Editor/UserConfig'; +import { equaln, equalv3, UpdateBoundingSphere } from '../../Geometry/GeUtils'; +import { IntersectOption } from '../../GraphicsSystem/IntersectWith'; +import { RenderType } from '../../GraphicsSystem/RenderType'; +import { AutoRecord } from '../AutoRecord'; +import { Factory } from '../CADFactory'; +import { CADFiler } from '../CADFiler'; +import { CADObject } from '../CADObject'; +import { ObjectId } from '../ObjectId'; +import { PhysicalMaterialRecord } from '../PhysicalMaterialRecord'; /** * Entity 是所有图元的基类,绘制的实体都集成该类. diff --git a/src/DatabaseServices/Extrude.ts b/src/DatabaseServices/Entity/Extrude.ts similarity index 96% rename from src/DatabaseServices/Extrude.ts rename to src/DatabaseServices/Entity/Extrude.ts index 63b400db3..432c03cf8 100644 --- a/src/DatabaseServices/Extrude.ts +++ b/src/DatabaseServices/Entity/Extrude.ts @@ -1,31 +1,31 @@ import { Box3, ExtrudeGeometry, ExtrudeGeometryOptions, Geometry, Line, LineSegments, Matrix3, Matrix4, Mesh, Object3D, Vector3 } from "three"; -import { HostApplicationServices } from "../ApplicationServices/HostApplicationServices"; -import { arrayClone, arrayLast, arrayRemoveIf, arraySortByNumber } from "../Common/ArrayExt"; -import { ColorMaterial } from "../Common/ColorPalette"; -import { equalCurve } from "../Common/CurveUtils"; -import { DisposeThreeObj } from "../Common/Dispose"; -import { Status, UpdateDraw } from "../Common/Status"; -import { CSG } from "../csg/core/CSG"; -import { CSG2Geometry, Geometry2CSG } from "../csg/core/Geometry2CSG"; -import { ObjectSnapMode } from "../Editor/ObjectSnapMode"; -import { boardUVGenerator } from "../Geometry/BoardUVGenerator"; -import { BSPGroupParse } from "../Geometry/BSPGroupParse"; -import { FastWireframe } from "../Geometry/CreateWireframe"; -import { EdgesGeometry } from "../Geometry/EdgeGeometry"; -import { ZeroVec, equaln, equalv2, equalv3, isIntersect, isParallelTo, MoveMatrix, XAxis } from "../Geometry/GeUtils"; -import { ScaleUV } from "../Geometry/UVUtils"; -import { RenderType } from "../GraphicsSystem/RenderType"; -import { BlockTableRecord } from "./BlockTableRecord"; -import { Factory } from "./CADFactory"; -import { CADFiler } from "./CADFiler"; +import { HostApplicationServices } from "../../ApplicationServices/HostApplicationServices"; +import { arrayClone, arrayLast, arrayRemoveIf, arraySortByNumber } from "../../Common/ArrayExt"; +import { ColorMaterial } from "../../Common/ColorPalette"; +import { equalCurve } from "../../Common/CurveUtils"; +import { DisposeThreeObj } from "../../Common/Dispose"; +import { Status, UpdateDraw } from "../../Common/Status"; +import { CSG } from "../../csg/core/CSG"; +import { CSG2Geometry, Geometry2CSG } from "../../csg/core/Geometry2CSG"; +import { ObjectSnapMode } from "../../Editor/ObjectSnapMode"; +import { boardUVGenerator } from "../../Geometry/BoardUVGenerator"; +import { BSPGroupParse } from "../../Geometry/BSPGroupParse"; +import { FastWireframe } from "../../Geometry/CreateWireframe"; +import { EdgesGeometry } from "../../Geometry/EdgeGeometry"; +import { ZeroVec, equaln, equalv2, equalv3, isIntersect, isParallelTo, MoveMatrix, XAxis } from "../../Geometry/GeUtils"; +import { ScaleUV } from "../../Geometry/UVUtils"; +import { RenderType } from "../../GraphicsSystem/RenderType"; +import { BlockTableRecord } from "../BlockTableRecord"; +import { Factory } from "../CADFactory"; +import { CADFiler } from "../CADFiler"; import { Circle } from "./Circle"; -import { Contour } from "./Contour"; +import { Contour } from "../Contour"; import { Entity } from "./Entity"; import { Polyline } from "./Polyline"; import { Region } from "./Region"; -import { Shape } from "./Shape"; -import { ShapeManager } from "./ShapeManager"; -import { Vector2ApplyMatrix4 } from "../Common/Matrix4Utils"; +import { Shape } from "../Shape"; +import { ShapeManager } from "../ShapeManager"; +import { Vector2ApplyMatrix4 } from "../../Common/Matrix4Utils"; export type ExtureContourCurve = Polyline | Circle; export type ExtureContour = Polyline | Circle | ExtureSolid | Region; diff --git a/src/DatabaseServices/Line.ts b/src/DatabaseServices/Entity/Line.ts similarity index 95% rename from src/DatabaseServices/Line.ts rename to src/DatabaseServices/Entity/Line.ts index a1ca80767..c6cbed9e4 100644 --- a/src/DatabaseServices/Line.ts +++ b/src/DatabaseServices/Entity/Line.ts @@ -1,16 +1,16 @@ import { Box3, BufferGeometry, Line3, Matrix3, Matrix4, Object3D, Shape, Vector3, Line as TLine } from 'three'; -import { ColorMaterial } from '../Common/ColorPalette'; -import { reviseMirrorMatrix } from '../Common/Matrix4Utils'; -import { Status } from '../Common/Status'; -import { ObjectSnapMode } from '../Editor/ObjectSnapMode'; -import { BufferGeometryUtils } from '../Geometry/BufferGeometryUtils'; -import { equaln, equalv3, isParallelTo, MoveMatrix, AsVector2 } from '../Geometry/GeUtils'; -import { PlaneExt } from '../Geometry/Plane'; -import { IntersectLineAndArc, IntersectLineAndCircle, IntersectLineAndLine, IntersectOption, IntersectPolylineAndCurve, reverseIntersectOption, IntersectEllipseAndLine } from '../GraphicsSystem/IntersectWith'; -import { RenderType } from '../GraphicsSystem/RenderType'; +import { ColorMaterial } from '../../Common/ColorPalette'; +import { reviseMirrorMatrix } from '../../Common/Matrix4Utils'; +import { Status } from '../../Common/Status'; +import { ObjectSnapMode } from '../../Editor/ObjectSnapMode'; +import { BufferGeometryUtils } from '../../Geometry/BufferGeometryUtils'; +import { equaln, equalv3, isParallelTo, MoveMatrix, AsVector2 } from '../../Geometry/GeUtils'; +import { PlaneExt } from '../../Geometry/Plane'; +import { IntersectLineAndArc, IntersectLineAndCircle, IntersectLineAndLine, IntersectOption, IntersectPolylineAndCurve, reverseIntersectOption, IntersectEllipseAndLine } from '../../GraphicsSystem/IntersectWith'; +import { RenderType } from '../../GraphicsSystem/RenderType'; import { Arc } from './Arc'; -import { Factory } from './CADFactory'; -import { CADFiler } from './CADFiler'; +import { Factory } from '../CADFactory'; +import { CADFiler } from '../CADFiler'; import { Circle } from './Circle'; import { Curve } from './Curve'; import { Polyline } from './Polyline'; diff --git a/src/DatabaseServices/Point.ts b/src/DatabaseServices/Entity/Point.ts similarity index 91% rename from src/DatabaseServices/Point.ts rename to src/DatabaseServices/Entity/Point.ts index cf6133e65..70dea4d81 100644 --- a/src/DatabaseServices/Point.ts +++ b/src/DatabaseServices/Entity/Point.ts @@ -1,8 +1,8 @@ import { AdditiveBlending, BufferGeometry, Float32BufferAttribute, Object3D, Points, PointsMaterial, TextureLoader, Vector3 } from "three"; -import { ObjectSnapMode } from "../Editor/ObjectSnapMode"; -import { MoveMatrix } from "../Geometry/GeUtils"; -import { RenderType } from "../GraphicsSystem/RenderType"; -import { Factory } from "./CADFactory"; +import { ObjectSnapMode } from "../../Editor/ObjectSnapMode"; +import { MoveMatrix } from "../../Geometry/GeUtils"; +import { RenderType } from "../../GraphicsSystem/RenderType"; +import { Factory } from "../CADFactory"; import { Entity } from "./Entity"; let pointMaterial: PointsMaterial; diff --git a/src/DatabaseServices/Polyline.ts b/src/DatabaseServices/Entity/Polyline.ts similarity index 97% rename from src/DatabaseServices/Polyline.ts rename to src/DatabaseServices/Entity/Polyline.ts index 8015ddf08..27671cc38 100644 --- a/src/DatabaseServices/Polyline.ts +++ b/src/DatabaseServices/Entity/Polyline.ts @@ -1,24 +1,24 @@ import * as THREE from 'three'; import { Box3, BufferGeometry, Matrix4, Object3D, Vector2, Vector3, Matrix3 } from 'three'; -import { CreateBoardUtil } from '../ApplicationServices/mesh/createBoard'; -import { arrayLast, arrayRemoveDuplicateBySort, changeArrayStartIndex } from '../Common/ArrayExt'; -import { ColorMaterial } from '../Common/ColorPalette'; -import { getDeterminantFor2V } from '../Common/CurveUtils'; -import { matrixAlignCoordSys, reviseMirrorMatrix, matrixIsCoplane } from '../Common/Matrix4Utils'; -import { Status } from '../Common/Status'; -import { FixIndex } from '../Common/Utils'; -import { ObjectSnapMode } from '../Editor/ObjectSnapMode'; -import { BufferGeometryUtils } from '../Geometry/BufferGeometryUtils'; -import { equaln, equalv2, equalv3, updateGeometry, AsVector3, AsVector2 } from '../Geometry/GeUtils'; -import { RenderType } from '../GraphicsSystem/RenderType'; -import { IntersectOption, IntersectPolylineAndCurve } from '../GraphicsSystem/IntersectWith'; -import { PolyOffsetUtil } from '../GraphicsSystem/OffsetPolyline'; +import { CreateBoardUtil } from '../../ApplicationServices/mesh/createBoard'; +import { arrayLast, arrayRemoveDuplicateBySort, changeArrayStartIndex } from '../../Common/ArrayExt'; +import { ColorMaterial } from '../../Common/ColorPalette'; +import { getDeterminantFor2V } from '../../Common/CurveUtils'; +import { matrixAlignCoordSys, reviseMirrorMatrix, matrixIsCoplane } from '../../Common/Matrix4Utils'; +import { Status } from '../../Common/Status'; +import { FixIndex } from '../../Common/Utils'; +import { ObjectSnapMode } from '../../Editor/ObjectSnapMode'; +import { BufferGeometryUtils } from '../../Geometry/BufferGeometryUtils'; +import { equaln, equalv2, equalv3, updateGeometry, AsVector3, AsVector2 } from '../../Geometry/GeUtils'; +import { RenderType } from '../../GraphicsSystem/RenderType'; +import { IntersectOption, IntersectPolylineAndCurve } from '../../GraphicsSystem/IntersectWith'; +import { PolyOffsetUtil } from '../../GraphicsSystem/OffsetPolyline'; import { Arc } from './Arc'; -import { Factory } from './CADFactory'; -import { CADFiler } from './CADFiler'; +import { Factory } from '../CADFactory'; +import { CADFiler } from '../CADFiler'; import { Curve, ExtendType } from './Curve'; import { Line } from './Line'; -import { IsPointInPolyLine } from './PointInPolyline'; +import { IsPointInPolyLine } from '../PointInPolyline'; export interface PolylineProps { diff --git a/src/DatabaseServices/Region.ts b/src/DatabaseServices/Entity/Region.ts similarity index 90% rename from src/DatabaseServices/Region.ts rename to src/DatabaseServices/Entity/Region.ts index d8368601d..b42c0eb71 100644 --- a/src/DatabaseServices/Region.ts +++ b/src/DatabaseServices/Entity/Region.ts @@ -1,19 +1,19 @@ import { Box3, EdgesGeometry, Group, LineSegments, Matrix3, Matrix4, Mesh, Object3D, ShapeGeometry, Vector3 } from 'three'; -import { ColorMaterial } from '../Common/ColorPalette'; -import { DisposeThreeObj } from '../Common/Dispose'; -import { UpdateDraw } from '../Common/Status'; -import { ObjectSnapMode } from '../Editor/ObjectSnapMode'; -import { MoveMatrix } from '../Geometry/GeUtils'; -import { ScaleUV } from '../Geometry/UVUtils'; -import { BoolOpeartionType } from '../GraphicsSystem/BoolOperateUtils'; -import { RenderType } from '../GraphicsSystem/RenderType'; -import { Factory } from './CADFactory'; -import { CADFiler } from './CADFiler'; -import { Contour } from './Contour'; +import { ColorMaterial } from '../../Common/ColorPalette'; +import { DisposeThreeObj } from '../../Common/Dispose'; +import { UpdateDraw } from '../../Common/Status'; +import { ObjectSnapMode } from '../../Editor/ObjectSnapMode'; +import { MoveMatrix } from '../../Geometry/GeUtils'; +import { ScaleUV } from '../../Geometry/UVUtils'; +import { BoolOpeartionType } from '../../GraphicsSystem/BoolOperateUtils'; +import { RenderType } from '../../GraphicsSystem/RenderType'; +import { Factory } from '../CADFactory'; +import { CADFiler } from '../CADFiler'; +import { Contour } from '../Contour'; import { Curve } from './Curve'; import { Entity } from './Entity'; -import { Shape } from './Shape'; -import { ShapeManager } from './ShapeManager'; +import { Shape } from '../Shape'; +import { ShapeManager } from '../ShapeManager'; @Factory export class Region extends Entity diff --git a/src/DatabaseServices/FaceEntity.ts b/src/DatabaseServices/FaceEntity.ts index 14464d5da..08eb3a5f7 100644 --- a/src/DatabaseServices/FaceEntity.ts +++ b/src/DatabaseServices/FaceEntity.ts @@ -1,7 +1,7 @@ import { Face3, Geometry, Mesh, Object3D, Vector3 } from "three"; import { RenderType } from "../GraphicsSystem/RenderType"; import { CADFiler } from "./CADFiler"; -import { Entity } from "./Entity"; +import { Entity } from "./Entity/Entity"; import { Factory } from "./CADFactory"; @Factory diff --git a/src/DatabaseServices/ISerialize.ts b/src/DatabaseServices/ISerialize.ts index d50bf7385..32b05c7d6 100644 --- a/src/DatabaseServices/ISerialize.ts +++ b/src/DatabaseServices/ISerialize.ts @@ -2,6 +2,6 @@ import { CADFiler } from "./CADFiler"; export interface ISerialize { - ReadFile(file: CADFiler); - WriteFile(file: CADFiler); + ReadFile(file: CADFiler): void; + WriteFile(file: CADFiler): void; } diff --git a/src/DatabaseServices/Lights/Light.ts b/src/DatabaseServices/Lights/Light.ts index 1e41207f7..d32c9ca13 100644 --- a/src/DatabaseServices/Lights/Light.ts +++ b/src/DatabaseServices/Lights/Light.ts @@ -2,7 +2,7 @@ import * as THREE from 'three'; import { Color, Vector3, Object3D } from 'three'; import { Factory } from '../CADFactory'; import { CADFiler } from '../CADFiler'; -import { Entity } from '../Entity'; +import { Entity } from '../Entity/Entity'; import { ObjectSnapMode } from '../../Editor/ObjectSnapMode'; import { MoveMatrix } from '../../Geometry/GeUtils'; import { RenderType } from '../../GraphicsSystem/RenderType'; diff --git a/src/DatabaseServices/PointInPolyline.ts b/src/DatabaseServices/PointInPolyline.ts index 08c79a442..4da7e1d68 100644 --- a/src/DatabaseServices/PointInPolyline.ts +++ b/src/DatabaseServices/PointInPolyline.ts @@ -1,9 +1,9 @@ import { Vector2, Vector3 } from 'three'; import { angle, equaln, equalv3 } from '../Geometry/GeUtils'; import { IntersectOption } from '../GraphicsSystem/IntersectWith'; -import { Arc } from './Arc'; -import { Line } from './Line'; -import { Polyline } from './Polyline'; +import { Arc } from './Entity/Arc'; +import { Line } from './Entity/Line'; +import { Polyline } from './Entity/Polyline'; /** * 点在扇形内部,提供一个简单实现的版本. diff --git a/src/DatabaseServices/Shape.ts b/src/DatabaseServices/Shape.ts index 778969b5d..519323075 100644 --- a/src/DatabaseServices/Shape.ts +++ b/src/DatabaseServices/Shape.ts @@ -1,18 +1,17 @@ -import * as THREE from 'three'; +import { Matrix3, Matrix4, Path, Shape as TShape, Vector3 } from 'three'; import { arrayRemoveIf } from '../Common/ArrayExt'; +import { ObjectSnapMode } from '../Editor/ObjectSnapMode'; import { CADFiler } from './CADFiler'; import { Contour } from './Contour'; -import { Curve } from './Curve'; -import { Polyline } from './Polyline'; -import { Matrix4, Vector3, Matrix3 } from 'three'; -import { Circle } from './Circle'; -import { ObjectSnapMode } from '../Editor/ObjectSnapMode'; +import { Circle } from './Entity/Circle'; +import { Curve } from './Entity/Curve'; +import { Polyline } from './Entity/Polyline'; export class Shape { private m_Outline: Contour; private m_Holes: Contour[] = []; - private m_Shape: THREE.Shape = new THREE.Shape(); + private m_Shape: TShape = new TShape(); constructor(out?: Contour, hols?: Contour[]) { this.m_Outline = out || new Contour(); @@ -414,12 +413,12 @@ export class Shape { if (h.Curve instanceof Circle) { - let sp = new THREE.Path(); + let sp = new Path(); let cen = h.Curve.Center.applyMatrix4(this.Outline.Curve.OCSInv); sp.ellipse(cen.x, cen.y, h.Curve.Radius, h.Curve.Radius, 0, 2 * Math.PI, false, 0); return sp; } - return h.Shape as THREE.Path + return h.Shape as Path; } )); } diff --git a/src/DatabaseServices/Spline.ts b/src/DatabaseServices/Spline.ts index 136a6ef23..41beed58f 100644 --- a/src/DatabaseServices/Spline.ts +++ b/src/DatabaseServices/Spline.ts @@ -6,7 +6,7 @@ import { equalv3 } from '../Geometry/GeUtils'; import { RenderType } from '../GraphicsSystem/RenderType'; import { Factory } from './CADFactory'; import { CADFiler } from './CADFiler'; -import { Curve } from './Curve'; +import { Curve } from './Entity/Curve'; @Factory export class Spline extends Curve diff --git a/src/DatabaseServices/Template/Action/TemplateAction.ts b/src/DatabaseServices/Template/Action/TemplateAction.ts new file mode 100644 index 000000000..c75d9af3a --- /dev/null +++ b/src/DatabaseServices/Template/Action/TemplateAction.ts @@ -0,0 +1,32 @@ +import { Factory } from "../../CADFactory"; +import { CADFiler } from "../../CADFiler"; +import { TemplateParam } from "../Param/TemplateParam"; + +/** + * 模版动作 + */ +@Factory +export class TemplateAction +{ + parent: TemplateParam; + WriteAllObjectRecord() + { + if (this.parent) + this.parent.WriteAllObjectRecord(); + } + Update(paramDiff: number | string) + { + } + //#region -------------------------File------------------------- + //对象应该实现dataIn和DataOut的方法,为了对象的序列化和反序列化 + //对象从文件中读取数据,初始化自身 + ReadFile(file: CADFiler) + { + let ver = file.Read(); + } + //对象将自身数据写入到文件. + WriteFile(file: CADFiler) + { + file.Write(1); + } +} diff --git a/src/DatabaseServices/Template/Action/TemplateMoveAction.ts b/src/DatabaseServices/Template/Action/TemplateMoveAction.ts new file mode 100644 index 000000000..fbe80add1 --- /dev/null +++ b/src/DatabaseServices/Template/Action/TemplateMoveAction.ts @@ -0,0 +1,44 @@ +import { Vector3 } from "three"; +import { MoveMatrix } from "../../../Geometry/GeUtils"; +import { CADFiler } from "../../CADFiler"; +import { Entity } from "../../Entity/Entity"; +import { ObjectId } from "../../ObjectId"; +import { TemplateAction } from "./TemplateAction"; + +export class TemplateMoveAction extends TemplateAction +{ + StretchDirection: Vector3 = new Vector3(); + Entitys: ObjectId[] = []; + Update(paramDiff: number) + { + let moveMatrix = MoveMatrix(this.StretchDirection.clone().multiplyScalar(paramDiff)); + for (let id of this.Entitys) + { + let ent = id.Object as Entity; + ent.ApplyMatrix(moveMatrix); + } + } + //#region -------------------------File------------------------- + //对象应该实现dataIn和DataOut的方法,为了对象的序列化和反序列化 + //对象从文件中读取数据,初始化自身 + ReadFile(file: CADFiler) + { + let ver = file.Read(); + this.StretchDirection.fromArray(file.Read()); + this.Entitys.length = 0; + let count = file.Read(); + for (let i = 0; i < count; i++) + { + this.Entitys.push(file.ReadObjectId()); + } + } + //对象将自身数据写入到文件. + WriteFile(file: CADFiler) + { + file.Write(1); + file.Write(this.StretchDirection.toArray()); + file.Write(this.Entitys.length); + for (let ent of this.Entitys) + file.WriteObjectId(ent); + } +} diff --git a/src/DatabaseServices/Template/Action/TemplateStretchGripAction.ts b/src/DatabaseServices/Template/Action/TemplateStretchGripAction.ts new file mode 100644 index 000000000..e1438c076 --- /dev/null +++ b/src/DatabaseServices/Template/Action/TemplateStretchGripAction.ts @@ -0,0 +1,63 @@ +import { Vector3 } from "three"; +import { arrayClone } from "../../../Common/ArrayExt"; +import { Factory } from "../../CADFactory"; +import { CADFiler } from "../../CADFiler"; +import { Entity } from "../../Entity/Entity"; +import { ObjectId } from "../../ObjectId"; +import { TemplateAction } from "./TemplateAction"; + +/** + * Stretch夹点动作 + */ +@Factory +export class TemplateStretchGripAction extends TemplateAction +{ + /** + * 正常不会直接修改下面的2个属性,如果真的需要修改,请调用 `this.WriteAllObjectRecord`; + * 避免历史记录没有记录更新. + */ + StretchDirection: Vector3 = new Vector3(); + EntityStretchPointMap: { + entity: ObjectId; + indexs: number[]; + }[] = []; + Update(dist: number) + { + let v = this.StretchDirection.clone().multiplyScalar(dist); + for (let { entity, indexs } of this.EntityStretchPointMap) + { + let ent = entity.Object as Entity; + ent.MoveStretchPoints(indexs, v); + } + } + //#region -------------------------File------------------------- + //对象应该实现dataIn和DataOut的方法,为了对象的序列化和反序列化 + //对象从文件中读取数据,初始化自身 + ReadFile(file: CADFiler) + { + let ver = file.Read(); + super.ReadFile(file); + this.StretchDirection.fromArray(file.Read()); + this.EntityStretchPointMap.length = 0; + let count = file.Read() as number; + for (let i = 0; i < count; i++) + { + let entity = file.ReadObjectId(); + let indexs = file.Read(); + this.EntityStretchPointMap.push({ entity, indexs }); + } + } + //对象将自身数据写入到文件. + WriteFile(file: CADFiler) + { + file.Write(1); + super.WriteFile(file); + file.Write(this.StretchDirection.toArray()); + file.Write(this.EntityStretchPointMap.length); + for (let d of this.EntityStretchPointMap) + { + file.WriteObjectId(d.entity); + file.Write(arrayClone(d.indexs)); + } + } +} diff --git a/src/DatabaseServices/Template/Action/TemplateStretchScaleBoxAction.ts b/src/DatabaseServices/Template/Action/TemplateStretchScaleBoxAction.ts new file mode 100644 index 000000000..d9a83f84d --- /dev/null +++ b/src/DatabaseServices/Template/Action/TemplateStretchScaleBoxAction.ts @@ -0,0 +1,86 @@ +import { Box3, Vector3 } from "three"; +import { CADFiler } from "../../CADFiler"; +import { Entity } from "../../Entity/Entity"; +import { ObjectId } from "../../ObjectId"; +import { TemplateAction } from "./TemplateAction"; + +/** + * 拽拖比例盒子动作 + */ +export class TemplateStretchScaleBoxAction extends TemplateAction +{ + /** + * 正常不会直接修改下面的2个属性,如果真的需要修改,请调用 `this.WriteAllObjectRecord`; + * 避免历史记录没有记录更新. + */ + StretchDirection: Vector3 = new Vector3(); + EntityStretchData: { entity: ObjectId; scaleBox: Box3; }[] = []; + Update(dist: number) + { + let v = this.StretchDirection.clone().multiplyScalar(dist); + for (let { entity, scaleBox } of this.EntityStretchData) + { + let ent = entity.Object as Entity; + let pts = ent.GetStretchPoints(); + let ocsInv = ent.OCSInv; + let entityBox = ent.BoundingBoxInOCS; + let size = entityBox.getSize(new Vector3()); + scaleBox = scaleBox.clone(); + scaleBox.min.multiply(size).sub(new Vector3(1, 1, 1)); + scaleBox.max.multiply(size).add(new Vector3(1, 1, 1)); + let stretchIndexs: number[] = []; + for (let i = 0, length = pts.length; i < length; i++) + { + let p = pts[i]; + p.applyMatrix4(ocsInv); + if (scaleBox.containsPoint(p)) + stretchIndexs.push(i); + } + ent.MoveStretchPoints(stretchIndexs, v); + } + } + //#region -------------------------File------------------------- + //对象应该实现dataIn和DataOut的方法,为了对象的序列化和反序列化 + //对象从文件中读取数据,初始化自身 + ReadFile(file: CADFiler) + { + let ver = file.Read(); + super.ReadFile(file); + this.StretchDirection.fromArray(file.Read()); + this.EntityStretchData.length = 0; + let count = file.Read() as number; + for (let i = 0; i < count; i++) + { + let entity = file.ReadObjectId(); + let min = new Vector3().fromArray(file.Read()); + let max = new Vector3().fromArray(file.Read()); + this.EntityStretchData.push({ entity, scaleBox: new Box3(min, max) }); + } + } + //对象将自身数据写入到文件. + WriteFile(file: CADFiler) + { + file.Write(1); + super.WriteFile(file); + file.Write(this.StretchDirection.toArray()); + file.Write(this.EntityStretchData.length); + for (let d of this.EntityStretchData) + { + file.WriteObjectId(d.entity); + file.Write(d.scaleBox.min.toArray()); + file.Write(d.scaleBox.max.toArray()); + } + } +} + +/** + * 拽拖固定大小盒子动作(弃用) + */ +/* +class TemplateStretchSizeBoxAction extends TemplateAction +{ + StretchDirection: Vector3; + + EntityStretchPointMap: { entity: Entity, sizeBox: Box3 }[]; +} +*/ diff --git a/src/DatabaseServices/Template/Action/TestTemplateAction.ts b/src/DatabaseServices/Template/Action/TestTemplateAction.ts new file mode 100644 index 000000000..ba3b715e0 --- /dev/null +++ b/src/DatabaseServices/Template/Action/TestTemplateAction.ts @@ -0,0 +1,35 @@ +import { app } from "../../../ApplicationServices/Application"; +import { FixIndex } from "../../../Common/Utils"; +import { HotCMD } from "../../../Hot/HotCommand"; +import { TemplateRecord } from "../TemplateRecord"; +import { GetDefaultTemplate } from "../TemplateTest"; +@HotCMD +export class TestTemplateAction +{ + time; + exec() + { + if (this.time) + { + clearInterval(this.time); + this.time = undefined; + return; + } + let params = ["L", "W", "H"]; + let paramIndex = 0; + let record = GetDefaultTemplate() as TemplateRecord; + let count = 1; + this.time = setInterval(() => + { + count++; + if (count === 100) + { + count = 0; + paramIndex = FixIndex(paramIndex + 1, 3); + } + let param = record.GetParam(params[paramIndex]); + param.UpdateParam(Math.abs(count * 10 - 500)); + app.m_Editor.UpdateScreen(); + }, 16); + } +} diff --git a/src/DatabaseServices/Template/Param/TemplateParam.ts b/src/DatabaseServices/Template/Param/TemplateParam.ts new file mode 100644 index 000000000..7a4e2c7ec --- /dev/null +++ b/src/DatabaseServices/Template/Param/TemplateParam.ts @@ -0,0 +1,124 @@ +import { equaln } from "../../../Geometry/GeUtils"; +import { AutoRecord, ISPROXYKEY } from "../../AutoRecord"; +import { Factory } from "../../CADFactory"; +import { CADFiler } from "../../CADFiler"; +import { TemplateRecord } from "../TemplateRecord"; +import { TemplateAction } from "../Action/TemplateAction"; +import { TemplateParamType } from "./TemplateParamType"; + +/** + * 模版参数 + */ +@Factory +export class TemplateParam +{ + @AutoRecord name: string; + @AutoRecord expr: string; + /** + * 如果需要更新参数的动作,那么应该调用 UpdateParam + */ + @AutoRecord value: string | number; + @AutoRecord default: string | number; + @AutoRecord description: string; + @AutoRecord type: TemplateParamType; + @AutoRecord min: number; + @AutoRecord max: number; + //可选值 + @AutoRecord option: any[]; + @AutoRecord actions: TemplateAction[]; + @AutoRecord parent: TemplateRecord; + constructor() + { + //监听 + this.actions = new Proxy([], { + set: (target, key, value, receiver) => + { + if (Reflect.get(target, key, receiver) !== value) + { + this.WriteAllObjectRecord(); + if (value instanceof TemplateAction) + value.parent = this; + } + return Reflect.set(target, key, value, receiver); + }, + get: (target, key, receiver) => + { + if (key === ISPROXYKEY) + return true; + else + return Reflect.get(target, key, receiver); + } + }); + } + WriteAllObjectRecord() + { + if (this.parent) + this.parent.WriteAllObjectRecord(); + } + /** + * 更新参数值,并且触发动作. + * 如果你想要只更新参数的值,那么你应该直接`this.value = xxx;` + */ + UpdateParam(value: string | number) + { + switch (this.type) + { + case TemplateParamType.String: + break; + case TemplateParamType.Float: + let oldV = this.value as number; + let newV = value as number; + if (!equaln(oldV, newV)) + { + let diff = newV - oldV; + for (let a of this.actions) + a.Update(diff); + this.value = newV; + } + break; + case TemplateParamType.Int: + break; + case TemplateParamType.Enum: + break; + } + } + //#region -------------------------File------------------------- + //对象应该实现dataIn和DataOut的方法,为了对象的序列化和反序列化 + //对象从文件中读取数据,初始化自身 + ReadFile(file: CADFiler) + { + let ver = file.Read(); + this.name = file.Read(); + this.expr = file.Read(); + this.value = file.Read(); + this.default = file.Read(); + this.description = file.Read(); + this.type = file.Read(); + this.min = file.Read(); + this.max = file.Read(); + this.option = file.Read(); + let count = file.Read(); + this.actions.length = 0; + for (let i = 0; i < count; i++) + this.actions.push(file.ReadObject()); + } + //对象将自身数据写入到文件. + WriteFile(file: CADFiler) + { + file.Write(1); + file.Write(this.name); + file.Write(this.expr); + file.Write(this.value); + file.Write(this.default); + file.Write(this.description); + file.Write(this.type); + file.Write(this.min); + file.Write(this.max); + file.Write(this.option); + file.Write(this.actions.length); + for (let action of this.actions) + { + file.WriteObject(action); + } + } +} diff --git a/src/DatabaseServices/Template/Param/TemplateParamType.ts b/src/DatabaseServices/Template/Param/TemplateParamType.ts new file mode 100644 index 000000000..d3ac179e0 --- /dev/null +++ b/src/DatabaseServices/Template/Param/TemplateParamType.ts @@ -0,0 +1,11 @@ + +/** + * 模版参数类型 + */ +export enum TemplateParamType +{ + String, + Float, + Int, + Enum +} diff --git a/src/DatabaseServices/Template/TemplateRecord.ts b/src/DatabaseServices/Template/TemplateRecord.ts new file mode 100644 index 000000000..b5360e31b --- /dev/null +++ b/src/DatabaseServices/Template/TemplateRecord.ts @@ -0,0 +1,151 @@ +import { AutoRecord, ISPROXYKEY } from "../AutoRecord"; +import { Factory } from "../CADFactory"; +import { CADFiler } from "../CADFiler"; +import { Entity } from "../Entity/Entity"; +import { ObjectId } from "../ObjectId"; +import { SymbolTableRecord } from "../SymbolTableRecord"; +import { TemplateType } from "./TemplateType"; +import { TemplateParamType } from "./Param/TemplateParamType"; +import { TemplateParam } from "./Param/TemplateParam"; + +/** + * 模板记录 + * 模版与实体总是互相关联的,所以添加实体进入模版的时候,应该保证这个记录已经加入到数据库 + */ +@Factory +export class TemplateRecord extends SymbolTableRecord +{ + @AutoRecord type: TemplateType; + @AutoRecord parent: ObjectId; + @AutoRecord children: ObjectId[] = []; + @AutoRecord params: TemplateParam[]; + @AutoRecord objects: ObjectId[]; + constructor() + { + super(); + //监听 + this.params = new Proxy([], { + set: (target, key, value, receiver) => + { + if (Reflect.get(target, key, receiver) !== value) + { + this.WriteAllObjectRecord(); + if (value instanceof TemplateParam) + value.parent = this; + } + return Reflect.set(target, key, value, receiver); + }, + get: (target, key, receiver) => + { + if (key === ISPROXYKEY) + return true; + return Reflect.get(target, key, receiver); + } + }); + this.objects = new Proxy([], { + set: (target, key, value, receiver) => + { + if (Reflect.get(target, key, receiver) !== value) + { + this.WriteAllObjectRecord(); + if (value instanceof ObjectId && value.Object instanceof Entity) + { + if (!this.Id) + console.warn("请先加模版添加到Database后在进行操作!"); + value.Object.Template = this.Id; + } + } + return Reflect.set(target, key, value, receiver); + }, + get: (target, key, receiver) => + { + if (key === ISPROXYKEY) + return true; + return Reflect.get(target, key, receiver); + } + }); + } + static SizeParamName = ["L", "W", "H"]; + InitSizeParams(length = 0, width = 0, height = 0) + { + let size = [length, width, height]; + for (let i = 0; i < 3; i++) + { + let paramName = TemplateRecord.SizeParamName[i]; + let value = size[i]; + let param = new TemplateParam(); + param.name = paramName; + param.type = TemplateParamType.Float; + param.value = value; + this.params.push(param); + } + return this; + } + UpdateAllTemplate(newParams: []) + { + for (let i = 0; i < this.params.length; i++) + { + let oldParam = this.params[i]; + oldParam.UpdateParam(newParams[i]); + } + } + get Params() + { + return this.params; + } + UpdateParam(name: string, value: any, expr?: string) + { + let param = this.GetParam(name); + if (param) + { + param.UpdateParam(value); + } + } + GetParam(paramName: string) + { + for (let param of this.params) + { + if (param.name === paramName) + return param; + } + } + //#region -------------------------File------------------------- + //对象应该实现dataIn和DataOut的方法,为了对象的序列化和反序列化 + //对象从文件中读取数据,初始化自身 + ReadFile(file: CADFiler) + { + let ver = file.Read(); + super.ReadFile(file); + this.type = file.Read(); + this.parent = file.ReadObjectId(); + let count = file.Read() as number; + this.children.length = 0; + for (let i = 0; i < count; i++) + this.children.push(file.ReadObjectId()); + count = file.Read(); + this.params.length = 0; + for (let i = 0; i < count; i++) + this.params.push(file.ReadObject()); + count = file.Read(); + this.objects.length = 0; + for (let i = 0; i < count; i++) + this.objects.push(file.ReadObjectId()); + } + //对象将自身数据写入到文件. + WriteFile(file: CADFiler) + { + file.Write(1); + super.WriteFile(file); + file.Write(this.type); + file.WriteObjectId(this.parent); + file.Write(this.children.length); + for (let id of this.children) + file.WriteObjectId(id); + file.Write(this.params.length); + for (let param of this.params) + file.WriteObject(param); + file.Write(this.objects.length); + for (let id of this.objects) + file.WriteObjectId(id); + } +} diff --git a/src/DatabaseServices/TemplateTable.ts b/src/DatabaseServices/Template/TemplateTable.ts similarity index 57% rename from src/DatabaseServices/TemplateTable.ts rename to src/DatabaseServices/Template/TemplateTable.ts index 22d9810c4..2b85540fc 100644 --- a/src/DatabaseServices/TemplateTable.ts +++ b/src/DatabaseServices/Template/TemplateTable.ts @@ -1,5 +1,5 @@ -import { Factory } from "./CADFactory"; -import { ObjectCollection } from "./ObjectCollection"; +import { Factory } from "../CADFactory"; +import { ObjectCollection } from "../ObjectCollection"; import { TemplateRecord } from "./TemplateRecord"; @Factory diff --git a/src/DatabaseServices/Template/TemplateTest.ts b/src/DatabaseServices/Template/TemplateTest.ts new file mode 100644 index 000000000..08f0a2032 --- /dev/null +++ b/src/DatabaseServices/Template/TemplateTest.ts @@ -0,0 +1,304 @@ +import { Box3, Matrix4, Vector3 } from "three"; +import { app } from "../../ApplicationServices/Application"; +import { StretchParse } from "../../Common/StretchParse"; +import { commandMachine } from "../../Editor/CommandMachine"; +import { PromptSsgetResult, PromptStatus } from "../../Editor/PromptResult"; +import { SelectBox, SelectType } from "../../Editor/SelectBox"; +import { AsVector3, equalv3, ZeroVec } from "../../Geometry/GeUtils"; +import { HotCMD } from "../../Hot/HotCommand"; +import { Board } from "../Entity/Board"; +import { TemplateRecord } from "./TemplateRecord"; +import { TemplateAction } from "./Action/TemplateAction"; +import { TemplateStretchGripAction } from "./Action/TemplateStretchGripAction"; +import { TemplateStretchScaleBoxAction } from "./Action/TemplateStretchScaleBoxAction"; +import { TemplateMoveAction } from "./Action/TemplateMoveAction"; + +/** + * 参数注册 + */ +function ParamRegister(params: {}, name: string, value: string, isRoot = false) +{ + params[name] = value; + if (isRoot) + params["@" + name] = value; +} + +/** + * 参数列表成了爹 + */ +function ParameterBecomeFater(params: {}) +{ + let nparams = {}; + for (let name in params) + { + if (name[0] === "@") + nparams[name] = params[name]; + else + nparams["_" + name] = params[name]; + } + return nparams; +} + +export function GetDefaultTemplate() +{ + let templates = app.m_Database.TemplateTable.Objects; + if (templates.length === 0) + { + let template = new TemplateRecord().InitSizeParams(); + app.m_Database.TemplateTable.Append(template); + return template; + } + else + return templates[0]; +} + +const SCALEMIN = new Vector3(-0.1, -0.1, -0.1); +const SCALEMAX = new Vector3(1.1, 1.1, 1.1); + +export class AddTemplateAction +{ + constructor(public name: string = "L") + { + + } + async exec() + { + //不能在透视相机下执行这个工作. + + let ssRes = await app.m_Editor.GetSelection({ SelectType: SelectType.C }); + if (ssRes.Status !== PromptStatus.OK) + return; + + let bpRes = await app.m_Editor.GetPoint({ Msg: "指定方向的基点:" }); + if (bpRes.Status !== PromptStatus.OK) + return; + + let toRes = await app.m_Editor.GetPoint({ Msg: "指定方向的终点:", BasePoint: bpRes.Point, AllowDrawRubberBand: true }); + if (toRes.Status !== PromptStatus.OK) + return; + + let direction = toRes.Point.sub(bpRes.Point).normalize(); + if (equalv3(direction, ZeroVec)) + return; + + this.GripStretchAction(direction, ssRes); + // this.ScaleBoxStretchAction(direction, ssRes); + } + + private GripStretchAction(direction: Vector3, ssRes: PromptSsgetResult) + { + let stretchData = StretchParse(ssRes.SelectSet); + + let stretchAction = new TemplateStretchGripAction(); + stretchAction.StretchDirection = direction; + + let moveAction = new TemplateMoveAction(); + moveAction.StretchDirection = direction; + + for (let { ent, indexs } of stretchData.stretchEntityMap) + { + stretchAction.EntityStretchPointMap.push({ + entity: ent.Id, + indexs + }); + } + if (stretchData.stretchEntityMap.length > 0) + { + GetDefaultTemplate().GetParam(this.name).actions.push(stretchAction); + } + + moveAction.Entitys = stretchData.moveEntityList.map(ent => ent.Id); + if (moveAction.Entitys.length > 0) + { + GetDefaultTemplate().GetParam(this.name).actions.push(moveAction); + } + } + + private ScaleBoxStretchAction(direction: Vector3, ssRes: PromptSsgetResult) + { + let action = new TemplateStretchScaleBoxAction(); + action.StretchDirection = direction; + for (let set of ssRes.SelectSet.SelectSetList) + { + if (set instanceof SelectBox) + { + let selectBox3 = new Box3(AsVector3(set.SelectBox.min).setZ(-6e6), AsVector3(set.SelectBox.max).setZ(6e6)); + let widthHalf = set.m_ViewerWidth * 0.5; + let heightHalf = set.m_ViewerHeight * 0.5; + let dcs = new Matrix4() + .setPosition(new Vector3(widthHalf, heightHalf)) + .multiply(new Matrix4().set(widthHalf, 0, 0, 0, 0, -heightHalf, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)) + .multiply(set.m_ProjScreenMatrix); + let dcsInv = new Matrix4().getInverse(dcs); + for (let e of set.SelectEntityList) + { + let br = e as Board; + let mtx = new Matrix4().multiplyMatrices(br.OCSInv, dcsInv); + let scaleBox = selectBox3.clone().applyMatrix4(mtx); + let size = new Vector3(br.Width, br.Height, br.Thickness); + scaleBox.min.divide(size); + scaleBox.max.divide(size); + scaleBox.min.clamp(SCALEMIN, SCALEMAX); + scaleBox.max.clamp(SCALEMIN, SCALEMAX); + action.EntityStretchData.push({ + entity: br.Id, + scaleBox + }); + } + } + } + if (action.EntityStretchData.length > 0) + { + GetDefaultTemplate().GetParam(this.name).actions.push(action); + } + } +} + +@HotCMD +export class AutoTempateSizeAction +{ + async exec() + { + let brsRes = await app.m_Editor.GetSelection({ Filter: { filterTypes: [Board] } }); + + if (brsRes.Status !== PromptStatus.OK) return; + + let brs = brsRes.SelectSet.SelectEntityList as Board[]; + + //默认我们认为他们处于同一个模版空间 + let spaceOcsInv = brs[0].SpaceOCSInv; + + //计算板件在模版空间的表示 + let sizeBox = new Box3(); + for (let br of brs) + { + let box = br.BoundingBoxInOCS; + box.applyMatrix4(spaceOcsInv.clone().multiply(br.OCS)); + sizeBox.union(box); + } + + let size = sizeBox.getSize(new Vector3); + + let v = new Vector3(1, 1, 1); + //前缩 + let frontBox = new Box3(sizeBox.min.clone().sub(v), sizeBox.max.clone().sub(new Vector3(-1, size.y / 2, -1))); + + //右缩 + let rightBox = new Box3(sizeBox.min.clone().add(new Vector3(size.x / 2, -1, -1)), sizeBox.max.add(v)); + + let topBox = new Box3(sizeBox.min.clone().add(new Vector3(-1, -1, size.z / 2)), sizeBox.max.add(v)); + + + //执行 + for (let br of brs) + { + let spts = br.GetStretchPoints(); + let indexs: number[] = []; + for (let i = 0; i < spts.length; i++) + { + let p = spts[i]; + p.applyMatrix4(spaceOcsInv); + if (frontBox.containsPoint(p)) + indexs.push(i); + } + br.MoveStretchPoints(indexs, new Vector3(0, 100, 0)); + } + + for (let br of brs) + { + let spts = br.GetStretchPoints(); + let indexs: number[] = []; + for (let i = 0; i < spts.length; i++) + { + let p = spts[i]; + p.applyMatrix4(spaceOcsInv); + if (rightBox.containsPoint(p)) + indexs.push(i); + } + br.MoveStretchPoints(indexs, new Vector3(-100, 0, 0)); + } + + for (let br of brs) + { + let spts = br.GetStretchPoints(); + let indexs: number[] = []; + for (let i = 0; i < spts.length; i++) + { + let p = spts[i]; + p.applyMatrix4(spaceOcsInv); + if (topBox.containsPoint(p)) + indexs.push(i); + } + br.MoveStretchPoints(indexs, new Vector3(0, 0, -100)); + } + } +} + +commandMachine.RegisterCommand("q", new AutoTempateSizeAction); + +export class TestAction +{ + async exec() + { + GetDefaultTemplate().UpdateParam("L", GetDefaultTemplate().GetParam("L").value + 500); + GetDefaultTemplate().UpdateParam("W", GetDefaultTemplate().GetParam("W").value + 500); + GetDefaultTemplate().UpdateParam("H", GetDefaultTemplate().GetParam("H").value + 500); + } +} + +export class UpdateAction +{ + async exec() + { + let templates = app.m_Database.TemplateTable.Objects; + if (templates.length === 0) + { + app.m_Editor.Prompt("当前不存在模版") + return; + } + + let template = globalThis.template = templates[0]; + + let keyRes = await app.m_Editor.GetKeyWords({ + KeyWordList: template.Params.map(p => + { + return { + key: p.name, + msg: `当前值${p.value}` + } + }) + }); + + if (keyRes.Status === PromptStatus.Keyword) + { + let paramname = keyRes.StringResult; + let param = template.GetParam(paramname); + + let newV = await app.m_Editor.GetDistance({ Msg: "新值!", Default: param.value as number }); + + if (newV.Status === PromptStatus.OK) + { + param.UpdateParam(newV.Distance); + } + } + } +} + +export class Clear +{ + async exec() + { + GetDefaultTemplate().GetParam("L").actions.length = 0; + GetDefaultTemplate().GetParam("L").actions.push(new TemplateAction()) + GetDefaultTemplate().GetParam("L").value = 0; + } +} + +commandMachine.RegisterCommand("al", new AddTemplateAction("L")); +commandMachine.RegisterCommand("aw", new AddTemplateAction("W")); +commandMachine.RegisterCommand("ah", new AddTemplateAction("H")); +commandMachine.RegisterCommand("uu", new UpdateAction()); + +commandMachine.RegisterCommand("test", new TestAction); +commandMachine.RegisterCommand("clear", new Clear); + diff --git a/src/DatabaseServices/Template/TemplateType.ts b/src/DatabaseServices/Template/TemplateType.ts new file mode 100644 index 000000000..b54af4de5 --- /dev/null +++ b/src/DatabaseServices/Template/TemplateType.ts @@ -0,0 +1,13 @@ + +/** + * 模版类型 + */ +export enum TemplateType +{ + //普通模板 + Usual, + //酒格 使用程序 + Grid, + //阵列模版 + Array +} diff --git a/src/DatabaseServices/TemplateRecord.ts b/src/DatabaseServices/TemplateRecord.ts deleted file mode 100644 index b3e6b087b..000000000 --- a/src/DatabaseServices/TemplateRecord.ts +++ /dev/null @@ -1,901 +0,0 @@ -import { Box3, Matrix4, Vector3 } from "three"; -import { app } from "../ApplicationServices/Application"; -import { arrayClone } from "../Common/ArrayExt"; -import { StretchParse } from "../Common/StretchParse"; -import { FixIndex } from "../Common/Utils"; -import { commandMachine } from "../Editor/CommandMachine"; -import { PromptSsgetResult, PromptStatus } from "../Editor/PromptResult"; -import { SelectBox, SelectType } from "../Editor/SelectBox"; -import { AsVector3, equaln, equalv3, MoveMatrix, ZeroVec } from "../Geometry/GeUtils"; -import { HotCMD } from "../Hot/HotCommand"; -import { AutoRecord, ISPROXYKEY } from "./AutoRecord"; -import { Board } from "./Board"; -import { Factory } from "./CADFactory"; -import { CADFiler } from "./CADFiler"; -import { Entity } from "./Entity"; -import { ObjectId } from "./ObjectId"; -import { SymbolTableRecord } from "./SymbolTableRecord"; - -/** - * 模版参数类型 - */ -export enum TemplateParamType -{ - String, - Float, - Int, - Enum, -} - - -/** - * 模版类型 - */ -export enum TemplateType -{ - //普通模板 - Usual, - //酒格 使用程序 - Grid, - //阵列模版 - Array, -} - - -/** - * 模版参数 - */ -@Factory -export class TemplateParam -{ - @AutoRecord name: string; - @AutoRecord expr: string; - - /** - * 如果需要更新参数的动作,那么应该调用 UpdateParam - */ - @AutoRecord value: string | number; - @AutoRecord default: string | number; - - @AutoRecord description: string; - - @AutoRecord type: TemplateParamType; - @AutoRecord min: number; - @AutoRecord max: number; - - //可选值 - @AutoRecord option: any[]; - @AutoRecord actions: TemplateAction[]; - @AutoRecord parent: TemplateRecord; - - constructor() - { - //监听 - this.actions = new Proxy([], { - set: (target, key, value, receiver) => - { - if (Reflect.get(target, key, receiver) !== value) - { - this.WriteAllObjectRecord(); - - if (value instanceof TemplateAction) - value.parent = this; - } - return Reflect.set(target, key, value, receiver); - }, - get: (target, key, receiver) => - { - if (key === ISPROXYKEY) - return true; - else - return Reflect.get(target, key, receiver); - } - }); - } - - WriteAllObjectRecord() - { - if (this.parent) - this.parent.WriteAllObjectRecord(); - } - - /** - * 更新参数值,并且触发动作. - * 如果你想要只更新参数的值,那么你应该直接`this.value = xxx;` - */ - UpdateParam(value: string | number) - { - switch (this.type) - { - case TemplateParamType.String: - break; - case TemplateParamType.Float: - let oldV = this.value as number; - let newV = value as number; - if (!equaln(oldV, newV)) - { - let diff = newV - oldV; - for (let a of this.actions) - a.Update(diff); - this.value = newV; - } - break; - case TemplateParamType.Int: - break; - case TemplateParamType.Enum: - break; - } - } - - //#region -------------------------File------------------------- - //对象应该实现dataIn和DataOut的方法,为了对象的序列化和反序列化 - - //对象从文件中读取数据,初始化自身 - ReadFile(file: CADFiler) - { - let ver = file.Read(); - - this.name = file.Read(); - this.expr = file.Read(); - this.value = file.Read(); - this.default = file.Read(); - this.description = file.Read(); - this.type = file.Read(); - this.min = file.Read(); - this.max = file.Read(); - this.option = file.Read(); - - let count = file.Read(); - this.actions.length = 0; - for (let i = 0; i < count; i++) - this.actions.push(file.ReadObject()); - } - //对象将自身数据写入到文件. - WriteFile(file: CADFiler) - { - file.Write(1); - file.Write(this.name); - file.Write(this.expr); - file.Write(this.value); - file.Write(this.default); - file.Write(this.description); - file.Write(this.type); - file.Write(this.min); - file.Write(this.max); - file.Write(this.option); - - file.Write(this.actions.length); - for (let action of this.actions) - { - file.WriteObject(action); - } - } - //#endregion -} - -/** - * 模版动作 - */ -@Factory -class TemplateAction -{ - parent: TemplateParam; - WriteAllObjectRecord() - { - if (this.parent) - this.parent.WriteAllObjectRecord(); - } - - Update(paramDiff: number | string) - { - - } - - //#region -------------------------File------------------------- - //对象应该实现dataIn和DataOut的方法,为了对象的序列化和反序列化 - - //对象从文件中读取数据,初始化自身 - ReadFile(file: CADFiler) - { - let ver = file.Read(); - } - //对象将自身数据写入到文件. - WriteFile(file: CADFiler) - { - file.Write(1); - } - //#endregion -} - -class TemplateMoveAction extends TemplateAction -{ - StretchDirection: Vector3 = new Vector3(); - Entitys: ObjectId[] = []; - - Update(paramDiff: number) - { - let moveMatrix = MoveMatrix(this.StretchDirection.clone().multiplyScalar(paramDiff)); - for (let id of this.Entitys) - { - let ent = id.Object as Entity; - ent.ApplyMatrix(moveMatrix); - } - } - - //#region -------------------------File------------------------- - //对象应该实现dataIn和DataOut的方法,为了对象的序列化和反序列化 - - //对象从文件中读取数据,初始化自身 - ReadFile(file: CADFiler) - { - let ver = file.Read(); - this.StretchDirection.fromArray(file.Read()); - this.Entitys.length = 0; - let count = file.Read(); - for (let i = 0; i < count; i++) - { - this.Entitys.push(file.ReadObjectId()); - } - } - //对象将自身数据写入到文件. - WriteFile(file: CADFiler) - { - file.Write(1); - file.Write(this.StretchDirection.toArray()); - file.Write(this.Entitys.length); - for (let ent of this.Entitys) - file.WriteObjectId(ent); - } - //#endregion -} - - -/** - * Stretch夹点动作 - */ -@Factory -class TemplateStretchGripAction extends TemplateAction -{ - /** - * 正常不会直接修改下面的2个属性,如果真的需要修改,请调用 `this.WriteAllObjectRecord`; - * 避免历史记录没有记录更新. - */ - StretchDirection: Vector3 = new Vector3(); - - EntityStretchPointMap: { entity: ObjectId, indexs: number[] }[] = []; - - Update(dist: number) - { - let v = this.StretchDirection.clone().multiplyScalar(dist); - - for (let { entity, indexs } of this.EntityStretchPointMap) - { - let ent = entity.Object as Entity; - ent.MoveStretchPoints(indexs, v); - } - } - - //#region -------------------------File------------------------- - //对象应该实现dataIn和DataOut的方法,为了对象的序列化和反序列化 - - //对象从文件中读取数据,初始化自身 - ReadFile(file: CADFiler) - { - let ver = file.Read(); - super.ReadFile(file); - - this.StretchDirection.fromArray(file.Read()); - - this.EntityStretchPointMap.length = 0; - let count = file.Read() as number; - for (let i = 0; i < count; i++) - { - let entity = file.ReadObjectId(); - let indexs = file.Read(); - this.EntityStretchPointMap.push({ entity, indexs }); - } - } - //对象将自身数据写入到文件. - WriteFile(file: CADFiler) - { - file.Write(1); - super.WriteFile(file); - file.Write(this.StretchDirection.toArray()); - file.Write(this.EntityStretchPointMap.length); - for (let d of this.EntityStretchPointMap) - { - file.WriteObjectId(d.entity); - file.Write(arrayClone(d.indexs)); - } - } - //#endregion -} - - -/** - * 拽拖比例盒子动作 - */ -class TemplateStretchScaleBoxAction extends TemplateAction -{ - /** - * 正常不会直接修改下面的2个属性,如果真的需要修改,请调用 `this.WriteAllObjectRecord`; - * 避免历史记录没有记录更新. - */ - StretchDirection: Vector3 = new Vector3(); - - EntityStretchData: { entity: ObjectId, scaleBox: Box3 }[] = []; - - Update(dist: number) - { - let v = this.StretchDirection.clone().multiplyScalar(dist); - - for (let { entity, scaleBox } of this.EntityStretchData) - { - let ent = entity.Object as Entity; - let pts = ent.GetStretchPoints(); - let ocsInv = ent.OCSInv; - let entityBox = ent.BoundingBoxInOCS; - let size = entityBox.getSize(new Vector3()); - - scaleBox = scaleBox.clone(); - - scaleBox.min.multiply(size).sub(new Vector3(1, 1, 1)); - scaleBox.max.multiply(size).add(new Vector3(1, 1, 1)); - - let stretchIndexs: number[] = []; - for (let i = 0, length = pts.length; i < length; i++) - { - let p = pts[i]; - p.applyMatrix4(ocsInv); - - if (scaleBox.containsPoint(p)) - stretchIndexs.push(i); - } - - ent.MoveStretchPoints(stretchIndexs, v); - } - } - - //#region -------------------------File------------------------- - //对象应该实现dataIn和DataOut的方法,为了对象的序列化和反序列化 - - //对象从文件中读取数据,初始化自身 - ReadFile(file: CADFiler) - { - let ver = file.Read(); - super.ReadFile(file); - - this.StretchDirection.fromArray(file.Read()); - - this.EntityStretchData.length = 0; - let count = file.Read() as number; - for (let i = 0; i < count; i++) - { - let entity = file.ReadObjectId(); - let min = new Vector3().fromArray(file.Read()); - let max = new Vector3().fromArray(file.Read()); - this.EntityStretchData.push({ entity, scaleBox: new Box3(min, max) }); - } - } - //对象将自身数据写入到文件. - WriteFile(file: CADFiler) - { - file.Write(1); - super.WriteFile(file); - file.Write(this.StretchDirection.toArray()); - file.Write(this.EntityStretchData.length); - for (let d of this.EntityStretchData) - { - file.WriteObjectId(d.entity); - file.Write(d.scaleBox.min.toArray()); - file.Write(d.scaleBox.max.toArray()); - } - } - //#endregion -} - - -/** - * 拽拖固定大小盒子动作(弃用) - */ -/* -class TemplateStretchSizeBoxAction extends TemplateAction -{ - StretchDirection: Vector3; - - EntityStretchPointMap: { entity: Entity, sizeBox: Box3 }[]; -} -*/ - -/** - * 模板记录 - * 模版与实体总是互相关联的,所以添加实体进入模版的时候,应该保证这个记录已经加入到数据库 - */ -@Factory -export class TemplateRecord extends SymbolTableRecord -{ - - @AutoRecord type: TemplateType; - @AutoRecord parent: ObjectId; - @AutoRecord children: ObjectId[] = []; - @AutoRecord params: TemplateParam[]; - @AutoRecord objects: ObjectId[]; - - constructor() - { - super(); - - //监听 - this.params = new Proxy([], { - set: (target, key, value, receiver) => - { - if (Reflect.get(target, key, receiver) !== value) - { - this.WriteAllObjectRecord(); - - if (value instanceof TemplateParam) - value.parent = this; - } - return Reflect.set(target, key, value, receiver); - }, - get: (target, key, receiver) => - { - if (key === ISPROXYKEY) - return true; - return Reflect.get(target, key, receiver); - } - }); - - this.objects = new Proxy([], { - set: (target, key, value, receiver) => - { - if (Reflect.get(target, key, receiver) !== value) - { - this.WriteAllObjectRecord(); - - if (value instanceof ObjectId && value.Object instanceof Entity) - { - if (!this.Id) - console.warn("请先加模版添加到Database后在进行操作!"); - value.Object.Template = this.Id; - } - } - return Reflect.set(target, key, value, receiver); - }, - get: (target, key, receiver) => - { - if (key === ISPROXYKEY) - return true; - return Reflect.get(target, key, receiver); - } - }); - } - - static SizeParamName = ["L", "W", "H"]; - InitSizeParams(length = 0, width = 0, height = 0) - { - let size = [length, width, height]; - for (let i = 0; i < 3; i++) - { - let paramName = TemplateRecord.SizeParamName[i]; - let value = size[i]; - - let param = new TemplateParam(); - param.name = paramName; - param.type = TemplateParamType.Float; - param.value = value; - this.params.push(param); - } - return this; - } - - UpdateAllTemplate(newParams: []) - { - for (let i = 0; i < this.params.length; i++) - { - let oldParam = this.params[i]; - oldParam.UpdateParam(newParams[i]); - } - } - - get Params() - { - return this.params; - } - - UpdateParam(name: string, value: any, expr?: string) - { - let param = this.GetParam(name); - if (param) - { - param.UpdateParam(value); - } - } - - GetParam(paramName: string) - { - for (let param of this.params) - { - if (param.name === paramName) - return param; - } - } - - //#region -------------------------File------------------------- - //对象应该实现dataIn和DataOut的方法,为了对象的序列化和反序列化 - //对象从文件中读取数据,初始化自身 - ReadFile(file: CADFiler) - { - let ver = file.Read(); - super.ReadFile(file); - - this.type = file.Read(); - this.parent = file.ReadObjectId(); - - let count = file.Read() as number; - this.children.length = 0; - for (let i = 0; i < count; i++) - this.children.push(file.ReadObjectId()); - - count = file.Read(); - this.params.length = 0; - for (let i = 0; i < count; i++) - this.params.push(file.ReadObject()); - - count = file.Read(); - this.objects.length = 0; - for (let i = 0; i < count; i++) - this.objects.push(file.ReadObjectId()); - } - //对象将自身数据写入到文件. - WriteFile(file: CADFiler) - { - file.Write(1); - super.WriteFile(file); - - file.Write(this.type); - file.WriteObjectId(this.parent); - - file.Write(this.children.length); - for (let id of this.children) - file.WriteObjectId(id); - - file.Write(this.params.length); - for (let param of this.params) - file.WriteObject(param); - - file.Write(this.objects.length); - for (let id of this.objects) - file.WriteObjectId(id); - } - //#endregion -} - - -/** - * 参数注册 - */ -function ParamRegister(params: {}, name: string, value: string, isRoot = false) -{ - params[name] = value; - if (isRoot) - params["@" + name] = value; -} - -/** - * 参数列表成了爹 - */ -function ParameterBecomeFater(params: {}) -{ - let nparams = {}; - for (let name in params) - { - if (name[0] === "@") - nparams[name] = params[name]; - else - nparams["_" + name] = params[name]; - } - return nparams; -} - -@HotCMD -export class TestTemplateAction -{ - time; - exec() - { - if (this.time) - { - clearInterval(this.time); - this.time = undefined; - return; - } - - let params = ["L", "W", "H"]; - let paramIndex = 0; - - let record = GetDefaultTemplate() as TemplateRecord - - let count = 1; - this.time = setInterval(() => - { - count++; - - if (count === 100) - { - count = 0; - paramIndex = FixIndex(paramIndex + 1, 3); - } - - let param = record.GetParam(params[paramIndex]); - - param.UpdateParam(Math.abs(count * 10 - 500)); - app.m_Editor.UpdateScreen(); - - }, 16); - } -} - -function GetDefaultTemplate() -{ - let templates = app.m_Database.TemplateTable.Objects; - if (templates.length === 0) - { - let template = new TemplateRecord().InitSizeParams(); - app.m_Database.TemplateTable.Append(template); - return template; - } - else - return templates[0]; -} - -const SCALEMIN = new Vector3(-0.1, -0.1, -0.1); -const SCALEMAX = new Vector3(1.1, 1.1, 1.1); - -export class AddTemplateAction -{ - constructor(public name: string = "L") - { - - } - async exec() - { - //不能在透视相机下执行这个工作. - - let ssRes = await app.m_Editor.GetSelection({ SelectType: SelectType.C }); - if (ssRes.Status !== PromptStatus.OK) - return; - - let bpRes = await app.m_Editor.GetPoint({ Msg: "指定方向的基点:" }); - if (bpRes.Status !== PromptStatus.OK) - return; - - let toRes = await app.m_Editor.GetPoint({ Msg: "指定方向的终点:", BasePoint: bpRes.Point, AllowDrawRubberBand: true }); - if (toRes.Status !== PromptStatus.OK) - return; - - let direction = toRes.Point.sub(bpRes.Point).normalize(); - if (equalv3(direction, ZeroVec)) - return; - - this.GripStretchAction(direction, ssRes); - // this.ScaleBoxStretchAction(direction, ssRes); - } - - private GripStretchAction(direction: Vector3, ssRes: PromptSsgetResult) - { - let stretchData = StretchParse(ssRes.SelectSet); - - let stretchAction = new TemplateStretchGripAction(); - stretchAction.StretchDirection = direction; - - let moveAction = new TemplateMoveAction(); - moveAction.StretchDirection = direction; - - for (let { ent, indexs } of stretchData.stretchEntityMap) - { - stretchAction.EntityStretchPointMap.push({ - entity: ent.Id, - indexs - }); - } - if (stretchData.stretchEntityMap.length > 0) - { - GetDefaultTemplate().GetParam(this.name).actions.push(stretchAction); - } - - moveAction.Entitys = stretchData.moveEntityList.map(ent => ent.Id); - if (moveAction.Entitys.length > 0) - { - GetDefaultTemplate().GetParam(this.name).actions.push(moveAction); - } - } - - private ScaleBoxStretchAction(direction: Vector3, ssRes: PromptSsgetResult) - { - let action = new TemplateStretchScaleBoxAction(); - action.StretchDirection = direction; - for (let set of ssRes.SelectSet.SelectSetList) - { - if (set instanceof SelectBox) - { - let selectBox3 = new Box3(AsVector3(set.SelectBox.min).setZ(-6e6), AsVector3(set.SelectBox.max).setZ(6e6)); - let widthHalf = set.m_ViewerWidth * 0.5; - let heightHalf = set.m_ViewerHeight * 0.5; - let dcs = new Matrix4() - .setPosition(new Vector3(widthHalf, heightHalf)) - .multiply(new Matrix4().set(widthHalf, 0, 0, 0, 0, -heightHalf, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)) - .multiply(set.m_ProjScreenMatrix); - let dcsInv = new Matrix4().getInverse(dcs); - for (let e of set.SelectEntityList) - { - let br = e as Board; - let mtx = new Matrix4().multiplyMatrices(br.OCSInv, dcsInv); - let scaleBox = selectBox3.clone().applyMatrix4(mtx); - let size = new Vector3(br.Width, br.Height, br.Thickness); - scaleBox.min.divide(size); - scaleBox.max.divide(size); - scaleBox.min.clamp(SCALEMIN, SCALEMAX); - scaleBox.max.clamp(SCALEMIN, SCALEMAX); - action.EntityStretchData.push({ - entity: br.Id, - scaleBox - }); - } - } - } - if (action.EntityStretchData.length > 0) - { - GetDefaultTemplate().GetParam(this.name).actions.push(action); - } - } -} - -@HotCMD -export class AutoTempateSizeAction -{ - async exec() - { - let brsRes = await app.m_Editor.GetSelection({ Filter: { filterTypes: [Board] } }); - - if (brsRes.Status !== PromptStatus.OK) return; - - let brs = brsRes.SelectSet.SelectEntityList as Board[]; - - //默认我们认为他们处于同一个模版空间 - let spaceOcsInv = brs[0].SpaceOCSInv; - - //计算板件在模版空间的表示 - let sizeBox = new Box3(); - for (let br of brs) - { - let box = br.BoundingBoxInOCS; - box.applyMatrix4(spaceOcsInv.clone().multiply(br.OCS)); - sizeBox.union(box); - } - - let size = sizeBox.getSize(new Vector3); - - let v = new Vector3(1, 1, 1); - //前缩 - let frontBox = new Box3(sizeBox.min.clone().sub(v), sizeBox.max.clone().sub(new Vector3(-1, size.y / 2, -1))); - - //右缩 - let rightBox = new Box3(sizeBox.min.clone().add(new Vector3(size.x / 2, -1, -1)), sizeBox.max.add(v)); - - let topBox = new Box3(sizeBox.min.clone().add(new Vector3(-1, -1, size.z / 2)), sizeBox.max.add(v)); - - - //执行 - for (let br of brs) - { - let spts = br.GetStretchPoints(); - let indexs: number[] = []; - for (let i = 0; i < spts.length; i++) - { - let p = spts[i]; - p.applyMatrix4(spaceOcsInv); - if (frontBox.containsPoint(p)) - indexs.push(i); - } - br.MoveStretchPoints(indexs, new Vector3(0, 100, 0)); - } - - for (let br of brs) - { - let spts = br.GetStretchPoints(); - let indexs: number[] = []; - for (let i = 0; i < spts.length; i++) - { - let p = spts[i]; - p.applyMatrix4(spaceOcsInv); - if (rightBox.containsPoint(p)) - indexs.push(i); - } - br.MoveStretchPoints(indexs, new Vector3(-100, 0, 0)); - } - - for (let br of brs) - { - let spts = br.GetStretchPoints(); - let indexs: number[] = []; - for (let i = 0; i < spts.length; i++) - { - let p = spts[i]; - p.applyMatrix4(spaceOcsInv); - if (topBox.containsPoint(p)) - indexs.push(i); - } - br.MoveStretchPoints(indexs, new Vector3(0, 0, -100)); - } - } -} - -commandMachine.RegisterCommand("q", new AutoTempateSizeAction); - -export class TestAction -{ - async exec() - { - GetDefaultTemplate().UpdateParam("L", GetDefaultTemplate().GetParam("L").value + 500); - GetDefaultTemplate().UpdateParam("W", GetDefaultTemplate().GetParam("W").value + 500); - GetDefaultTemplate().UpdateParam("H", GetDefaultTemplate().GetParam("H").value + 500); - } -} - -export class UpdateAction -{ - async exec() - { - let templates = app.m_Database.TemplateTable.Objects; - if (templates.length === 0) - { - app.m_Editor.Prompt("当前不存在模版") - return; - } - - let template = globalThis.template = templates[0]; - - let keyRes = await app.m_Editor.GetKeyWords({ - KeyWordList: template.Params.map(p => - { - return { - key: p.name, - msg: `当前值${p.value}` - } - }) - }); - - if (keyRes.Status === PromptStatus.Keyword) - { - let paramname = keyRes.StringResult; - let param = template.GetParam(paramname); - - let newV = await app.m_Editor.GetDistance({ Msg: "新值!", Default: param.value as number }); - - if (newV.Status === PromptStatus.OK) - { - param.UpdateParam(newV.Distance); - } - } - } -} - -export class Clear -{ - async exec() - { - GetDefaultTemplate().GetParam("L").actions.length = 0; - GetDefaultTemplate().GetParam("L").actions.push(new TemplateAction()) - GetDefaultTemplate().GetParam("L").value = 0; - } -} - -commandMachine.RegisterCommand("al", new AddTemplateAction("L")); -commandMachine.RegisterCommand("aw", new AddTemplateAction("W")); -commandMachine.RegisterCommand("ah", new AddTemplateAction("H")); -commandMachine.RegisterCommand("uu", new UpdateAction()); - -commandMachine.RegisterCommand("test", new TestAction); -commandMachine.RegisterCommand("clear", new Clear); - diff --git a/src/DatabaseServices/Text/Text.ts b/src/DatabaseServices/Text/Text.ts index fe35026b3..5116f254f 100644 --- a/src/DatabaseServices/Text/Text.ts +++ b/src/DatabaseServices/Text/Text.ts @@ -5,7 +5,7 @@ import { MoveMatrix } from '../../Geometry/GeUtils'; import { RenderType } from '../../GraphicsSystem/RenderType'; import { Factory } from '../CADFactory'; import { CADFiler } from '../CADFiler'; -import { Entity } from '../Entity'; +import { Entity } from '../Entity/Entity'; import { FontLoader } from './FontLoader'; export enum TextAligen diff --git a/src/Editor/CommandRegister.ts b/src/Editor/CommandRegister.ts index 984df8c83..9cccf4262 100644 --- a/src/Editor/CommandRegister.ts +++ b/src/Editor/CommandRegister.ts @@ -111,7 +111,7 @@ import { ViewChange } from '../Add-on/ViewChange'; import { Command_Wblock } from '../Add-on/Wblock'; import { ZoomE } from "../Add-on/ZoomE"; import { CommandServer } from '../DatabaseServices/CommandServer'; -import { AutoTempateSizeAction } from '../DatabaseServices/TemplateRecord'; +import { AutoTempateSizeAction } from '../DatabaseServices/Template/TemplateTest'; import { ICommand } from '../UI/Components/CommandPanel/CommandList'; import { commandMachine } from './CommandMachine'; import { BoardBatchCurtail } from '../Add-on/BoardBatchCurtail'; diff --git a/src/Editor/ContextMenu.ts b/src/Editor/ContextMenu.ts index 5b3a6d798..f4c35b57a 100644 --- a/src/Editor/ContextMenu.ts +++ b/src/Editor/ContextMenu.ts @@ -1,6 +1,6 @@ import { KeyWord, MenuDividerKWD } from "../Common/InputState"; import { KeyCode, MouseKey } from "../Common/KeyEnum"; -import { Board } from "../DatabaseServices/Board"; +import { Board } from "../DatabaseServices/Entity/Board"; import { commandMachine } from "./CommandMachine"; import { CommandState } from "./CommandState"; import { Editor, EditorService } from "./Editor"; diff --git a/src/Editor/DbClick/DBClickPolyline.ts b/src/Editor/DbClick/DBClickPolyline.ts index 2f1b0fccf..2ee1e0b6b 100644 --- a/src/Editor/DbClick/DBClickPolyline.ts +++ b/src/Editor/DbClick/DBClickPolyline.ts @@ -4,9 +4,9 @@ import { curveLinkGroup } from "../../Common/CurveUtils"; import { KeyWord } from "../../Common/InputState"; import { Singleton } from "../../Common/Singleton"; import { log } from "../../Common/Utils"; -import { Curve } from "../../DatabaseServices/Curve"; -import { Point } from "../../DatabaseServices/Point"; -import { Polyline, PolylineProps } from "../../DatabaseServices/Polyline"; +import { Curve } from "../../DatabaseServices/Entity/Curve"; +import { Point } from "../../DatabaseServices/Entity/Point"; +import { Polyline, PolylineProps } from "../../DatabaseServices/Entity/Polyline"; import { Spline } from "../../DatabaseServices/Spline"; import { equaln, equalv3, AsVector2 } from "../../Geometry/GeUtils"; import { JigUtils } from "../JigUtils"; diff --git a/src/Editor/DbClick/DbClick.ts b/src/Editor/DbClick/DbClick.ts index c786ff3ff..c5307a310 100644 --- a/src/Editor/DbClick/DbClick.ts +++ b/src/Editor/DbClick/DbClick.ts @@ -2,12 +2,12 @@ import { Math } from "three"; import { app } from "../../ApplicationServices/Application"; import { Singleton } from "../../Common/Singleton"; import { FixedNotZero, GetEntity } from "../../Common/Utils"; -import { Board } from "../../DatabaseServices/Board"; +import { Board } from "../../DatabaseServices/Entity/Board"; import { Light } from "../../DatabaseServices/Lights/Light"; import { PointLight } from "../../DatabaseServices/Lights/PointLight"; import { RectAreaLight } from "../../DatabaseServices/Lights/RectAreaLight"; import { SpotLight } from "../../DatabaseServices/Lights/SpotLight"; -import { Polyline } from "../../DatabaseServices/Polyline"; +import { Polyline } from "../../DatabaseServices/Entity/Polyline"; import { Text } from "../../DatabaseServices/Text/Text"; import { TextArea } from "../../DatabaseServices/Text/TextArea"; import { BoardOptionModal } from "../../UI/Components/Board/BoardOptionModal"; diff --git a/src/Editor/Editor.ts b/src/Editor/Editor.ts index 0f683b8d7..b974f4550 100644 --- a/src/Editor/Editor.ts +++ b/src/Editor/Editor.ts @@ -3,7 +3,7 @@ import { Math, Matrix4, Vector3 } from 'three'; import * as xaop from 'xaop'; import { ApplicationService } from '../ApplicationServices/Application'; import { InputState } from '../Common/InputState'; -import { Entity } from '../DatabaseServices/Entity'; +import { Entity } from '../DatabaseServices/Entity/Entity'; import { angle } from '../Geometry/GeUtils'; import { CommandInputManage } from '../UI/Components/CommandInput/CommandInputManage'; import { MaskManage } from '../UI/Components/Modal/MaskManage'; diff --git a/src/Editor/GripDragServices.ts b/src/Editor/GripDragServices.ts index 829638ca1..e7f51bcaa 100644 --- a/src/Editor/GripDragServices.ts +++ b/src/Editor/GripDragServices.ts @@ -5,8 +5,8 @@ import { ColorMaterial } from '../Common/ColorPalette'; import { InputState } from '../Common/InputState'; import { MouseKey } from '../Common/KeyEnum'; import { GetEntity } from '../Common/Utils'; -import { Entity } from '../DatabaseServices/Entity'; -import { Line } from '../DatabaseServices/Line'; +import { Entity } from '../DatabaseServices/Entity/Entity'; +import { Line } from '../DatabaseServices/Entity/Line'; import { isParallelTo, isPerpendicularityTo, SnapPoint } from '../Geometry/GeUtils'; import { DrawMode } from '../GraphicsSystem/PreViewer'; import { commandMachine } from './CommandMachine'; diff --git a/src/Editor/Jig.ts b/src/Editor/Jig.ts index eb6d97c13..52dc5d9d9 100644 --- a/src/Editor/Jig.ts +++ b/src/Editor/Jig.ts @@ -1,6 +1,6 @@ import { app } from "../ApplicationServices/Application"; import { CADFiler } from "../DatabaseServices/CADFiler"; -import { Entity } from "../DatabaseServices/Entity"; +import { Entity } from "../DatabaseServices/Entity/Entity"; export class Jig { //临时图形,如果需要,将被销毁. diff --git a/src/Editor/JigUtils.ts b/src/Editor/JigUtils.ts index afb4d176e..eb27cecc5 100644 --- a/src/Editor/JigUtils.ts +++ b/src/Editor/JigUtils.ts @@ -1,4 +1,4 @@ -import { Entity } from "../DatabaseServices/Entity"; +import { Entity } from "../DatabaseServices/Entity/Entity"; import { Jig } from "./Jig"; let jig = new Jig(); diff --git a/src/Editor/PromptResult.ts b/src/Editor/PromptResult.ts index 4893d8fa2..045cdeaa0 100644 --- a/src/Editor/PromptResult.ts +++ b/src/Editor/PromptResult.ts @@ -1,6 +1,6 @@ import * as THREE from 'three'; import { Object3D, Vector3 } from 'three'; -import { Entity } from '../DatabaseServices/Entity'; +import { Entity } from '../DatabaseServices/Entity/Entity'; import { ObjectSnapMode } from './ObjectSnapMode'; import { SelectSet } from './SelectSet'; diff --git a/src/Editor/SelectBase.ts b/src/Editor/SelectBase.ts index bb910b525..c29df90e5 100644 --- a/src/Editor/SelectBase.ts +++ b/src/Editor/SelectBase.ts @@ -1,6 +1,6 @@ import { BufferGeometry, Face3, Frustum, Geometry, Line3, LineSegments, Matrix4, Object3D, PerspectiveCamera, Vector3 } from 'three'; import { GetEntity, IsEntity } from '../Common/Utils'; -import { Entity } from '../DatabaseServices/Entity'; +import { Entity } from '../DatabaseServices/Entity/Entity'; import { IViewer } from '../GraphicsSystem/IView'; import { CheckFilter, Filter } from './SelectFilter'; diff --git a/src/Editor/SelectControls.ts b/src/Editor/SelectControls.ts index cc88e73e8..01e8dee88 100644 --- a/src/Editor/SelectControls.ts +++ b/src/Editor/SelectControls.ts @@ -4,7 +4,7 @@ import { app } from '../ApplicationServices/Application'; import { InputState } from '../Common/InputState'; import { KeyBoard, KeyCode, MouseKey } from '../Common/KeyEnum'; import { GetEntity } from '../Common/Utils'; -import { Entity } from '../DatabaseServices/Entity'; +import { Entity } from '../DatabaseServices/Entity/Entity'; import { GetBox } from '../Geometry/GeUtils'; import { CursorMode } from '../GraphicsSystem/Cursor'; import { Viewer } from '../GraphicsSystem/Viewer'; diff --git a/src/Editor/SelectFilter.ts b/src/Editor/SelectFilter.ts index 2e3840f61..74ec99075 100644 --- a/src/Editor/SelectFilter.ts +++ b/src/Editor/SelectFilter.ts @@ -1,6 +1,6 @@ import { Object3D } from "three"; import { GetEntity, IsEntity } from "../Common/Utils"; -import { Entity } from "../DatabaseServices/Entity"; +import { Entity } from "../DatabaseServices/Entity/Entity"; import { GripScene } from "../GraphicsSystem/GripScene"; export interface Filter diff --git a/src/Editor/SelectSet.ts b/src/Editor/SelectSet.ts index a3111ebff..641afc173 100644 --- a/src/Editor/SelectSet.ts +++ b/src/Editor/SelectSet.ts @@ -1,6 +1,6 @@ import { arrayRemoveOnce } from '../Common/ArrayExt'; import { GetEntity, IsEntity, log } from '../Common/Utils'; -import { Entity } from '../DatabaseServices/Entity'; +import { Entity } from '../DatabaseServices/Entity/Entity'; import { SelectSetBase } from './SelectBase'; import { CheckFilter, Filter } from './SelectFilter'; diff --git a/src/Editor/SnapServices.ts b/src/Editor/SnapServices.ts index 2bee8907f..50f7f8ba9 100644 --- a/src/Editor/SnapServices.ts +++ b/src/Editor/SnapServices.ts @@ -2,12 +2,12 @@ import { BufferGeometry, Line, Matrix3, Matrix4, Object3D, PerspectiveCamera, Ve import { app } from '../ApplicationServices/Application'; import { ColorMaterial } from '../Common/ColorPalette'; import { GetEntity } from '../Common/Utils'; -import { Arc } from '../DatabaseServices/Arc'; -import { Circle } from '../DatabaseServices/Circle'; -import { Curve } from '../DatabaseServices/Curve'; -import { Entity } from '../DatabaseServices/Entity'; -import { Line as DbLine } from "../DatabaseServices/Line"; -import { Polyline } from '../DatabaseServices/Polyline'; +import { Arc } from '../DatabaseServices/Entity/Arc'; +import { Circle } from '../DatabaseServices/Entity/Circle'; +import { Curve } from '../DatabaseServices/Entity/Curve'; +import { Entity } from '../DatabaseServices/Entity/Entity'; +import { Line as DbLine } from "../DatabaseServices/Entity/Line"; +import { Polyline } from '../DatabaseServices/Entity/Polyline'; import { BufferGeometryUtils } from '../Geometry/BufferGeometryUtils'; import { CurveIntersection } from '../Geometry/CurveIntersection'; import { XAxis, YAxis, ZAxis, equaln, equalv3, midPoint, SnapPoint } from '../Geometry/GeUtils'; diff --git a/src/Editor/TranstrolControl/TransformServices.ts b/src/Editor/TranstrolControl/TransformServices.ts index 9fa0c7bb6..ab897e29d 100644 --- a/src/Editor/TranstrolControl/TransformServices.ts +++ b/src/Editor/TranstrolControl/TransformServices.ts @@ -3,7 +3,7 @@ import { end } from 'xaop'; import { app } from '../../ApplicationServices/Application'; import { InputState } from '../../Common/InputState'; import { MouseKey } from '../../Common/KeyEnum'; -import { Entity } from '../../DatabaseServices/Entity'; +import { Entity } from '../../DatabaseServices/Entity/Entity'; import { MoveMatrix } from '../../Geometry/GeUtils'; import { PreViewer } from '../../GraphicsSystem/PreViewer'; import { commandMachine } from '../CommandMachine'; diff --git a/src/Geometry/CreateWireframe.ts b/src/Geometry/CreateWireframe.ts index 98889dd69..08e347ecd 100644 --- a/src/Geometry/CreateWireframe.ts +++ b/src/Geometry/CreateWireframe.ts @@ -1,10 +1,10 @@ import { BufferGeometry, Float32BufferAttribute, Geometry, Line, LineBasicMaterial, LineSegments, Object3D, Shape as TShape, Vector3 } from "three"; import { ColorMaterial } from "../Common/ColorPalette"; import { FixIndex } from "../Common/Utils"; -import { Board } from "../DatabaseServices/Board"; +import { Board } from "../DatabaseServices/Entity/Board"; import { Contour } from "../DatabaseServices/Contour"; -import { Curve } from "../DatabaseServices/Curve"; -import { ExtureSolid } from "../DatabaseServices/Extrude"; +import { Curve } from "../DatabaseServices/Entity/Curve"; +import { ExtureSolid } from "../DatabaseServices/Entity/Extrude"; import { Shape } from "../DatabaseServices/Shape"; import { FaceDirection } from "../UI/Store/BoardInterface"; import { MoveMatrix } from "./GeUtils"; diff --git a/src/Geometry/CurveIntersection.ts b/src/Geometry/CurveIntersection.ts index 16b1417bb..54faf2bd2 100644 --- a/src/Geometry/CurveIntersection.ts +++ b/src/Geometry/CurveIntersection.ts @@ -1,5 +1,5 @@ import { Box3, Vector3 } from "three"; -import { Curve } from "../DatabaseServices/Curve"; +import { Curve } from "../DatabaseServices/Entity/Curve"; import { IntersectOption } from "../GraphicsSystem/IntersectWith"; /** diff --git a/src/Geometry/CurveMap.ts b/src/Geometry/CurveMap.ts index f526191e5..e3177456a 100644 --- a/src/Geometry/CurveMap.ts +++ b/src/Geometry/CurveMap.ts @@ -1,5 +1,5 @@ import { Vector3 } from "three"; -import { Curve } from "../DatabaseServices/Curve"; +import { Curve } from "../DatabaseServices/Entity/Curve"; import { Route, Stand } from "./RegionParse"; import { ToFixed } from "../Common/Utils"; diff --git a/src/Geometry/DrillParse/BoardGetFace.ts b/src/Geometry/DrillParse/BoardGetFace.ts index f06dc599d..8502b6818 100644 --- a/src/Geometry/DrillParse/BoardGetFace.ts +++ b/src/Geometry/DrillParse/BoardGetFace.ts @@ -1,13 +1,13 @@ import { Matrix4, Vector3 } from "three"; import { GetMirrorMat } from "../../Add-on/Mirror"; import { matrixIsCoplane } from "../../Common/Matrix4Utils"; -import { Board } from "../../DatabaseServices/Board"; -import { Curve } from "../../DatabaseServices/Curve"; -import { Region } from "../../DatabaseServices/Region"; +import { Board } from "../../DatabaseServices/Entity/Board"; +import { Curve } from "../../DatabaseServices/Entity/Curve"; +import { Region } from "../../DatabaseServices/Entity/Region"; import { ZAxis, equalv3, rotatePoint, equaln } from "../GeUtils"; import { Face } from "./Face"; import { DrillType } from "../../UI/Store/BoardInterface"; -import { Arc } from "../../DatabaseServices/Arc"; +import { Arc } from "../../DatabaseServices/Entity/Arc"; export enum BoardFaceType { diff --git a/src/Geometry/DrillParse/CollisionDetection.ts b/src/Geometry/DrillParse/CollisionDetection.ts index 4b969ea91..c0bf5e0d0 100644 --- a/src/Geometry/DrillParse/CollisionDetection.ts +++ b/src/Geometry/DrillParse/CollisionDetection.ts @@ -1,4 +1,4 @@ -import { Board } from "../../DatabaseServices/Board"; +import { Board } from "../../DatabaseServices/Entity/Board"; import { BoardGetFace } from "./BoardGetFace"; import { Face } from "./Face"; import { DrillType } from "../../UI/Store/BoardInterface"; diff --git a/src/Geometry/DrillParse/Face.ts b/src/Geometry/DrillParse/Face.ts index 0c05e9bf7..3395d7bb1 100644 --- a/src/Geometry/DrillParse/Face.ts +++ b/src/Geometry/DrillParse/Face.ts @@ -1,7 +1,7 @@ import { Matrix4, Vector3 } from "three"; -import { Board } from "../../DatabaseServices/Board"; -import { Line } from "../../DatabaseServices/Line"; -import { Region } from "../../DatabaseServices/Region"; +import { Board } from "../../DatabaseServices/Entity/Board"; +import { Line } from "../../DatabaseServices/Entity/Line"; +import { Region } from "../../DatabaseServices/Entity/Region"; import { BoolOpeartionType } from "../../GraphicsSystem/BoolOperateUtils"; import { Box3Ext } from "../Box"; import { XAxis, equaln } from "../GeUtils"; diff --git a/src/Geometry/RegionParse.ts b/src/Geometry/RegionParse.ts index 66cdec7c9..313b7d289 100644 --- a/src/Geometry/RegionParse.ts +++ b/src/Geometry/RegionParse.ts @@ -1,8 +1,8 @@ import { Vector3 } from 'three'; import { arrayRemoveDuplicateBySort, arrayRemoveIf } from '../Common/ArrayExt'; -import { Arc } from '../DatabaseServices/Arc'; -import { Curve } from '../DatabaseServices/Curve'; -import { Polyline } from '../DatabaseServices/Polyline'; +import { Arc } from '../DatabaseServices/Entity/Arc'; +import { Curve } from '../DatabaseServices/Entity/Curve'; +import { Polyline } from '../DatabaseServices/Entity/Polyline'; import { Count } from './Count'; import { CurveMap } from './CurveMap'; import { angle, equalv3 } from './GeUtils'; diff --git a/src/Geometry/SpaceParse/ClampSpaceParse.ts b/src/Geometry/SpaceParse/ClampSpaceParse.ts index dc71c67b5..93c7793e9 100644 --- a/src/Geometry/SpaceParse/ClampSpaceParse.ts +++ b/src/Geometry/SpaceParse/ClampSpaceParse.ts @@ -1,6 +1,6 @@ import { Ray, Vector3 } from "three"; import { arrayLast } from "../../Common/ArrayExt"; -import { ConverBoardTypeToSpaceType, BoardType } from "../../DatabaseServices/Board"; +import { ConverBoardTypeToSpaceType, BoardType } from "../../DatabaseServices/Entity/Board"; import { PromptDistendResult, PromptStatus } from "../../Editor/PromptResult"; import { Box3Ext, SplitType } from "../Box"; import { ISpaceParse } from "./ISpaceParse"; diff --git a/src/Geometry/SpaceParse/ISpaceParse.ts b/src/Geometry/SpaceParse/ISpaceParse.ts index 451b7a358..9303c49fc 100644 --- a/src/Geometry/SpaceParse/ISpaceParse.ts +++ b/src/Geometry/SpaceParse/ISpaceParse.ts @@ -1,6 +1,6 @@ import { Matrix4, Vector3 } from "three"; import { arrayRemoveDuplicateBySort2 } from "../../Common/ArrayExt"; -import { Board, BoardType } from "../../DatabaseServices/Board"; +import { Board, BoardType } from "../../DatabaseServices/Entity/Board"; import { Box3Ext, SplitType } from "../Box"; import { XAxis, YAxis, ZAxis, ZeroVec, equaln, equalv3 } from "../GeUtils"; import { FuzzDirection } from "../FuzzVector"; diff --git a/src/Geometry/SpaceParse/PointSelectBoards.ts b/src/Geometry/SpaceParse/PointSelectBoards.ts index 6fbedea7b..bafeb33ed 100644 --- a/src/Geometry/SpaceParse/PointSelectBoards.ts +++ b/src/Geometry/SpaceParse/PointSelectBoards.ts @@ -1,11 +1,11 @@ import { Intersection, Object3D, Ray, Raycaster, Vector3 } from "three"; import { GetEntity } from "../../Common/Utils"; -import { Board } from "../../DatabaseServices/Board"; +import { Board } from "../../DatabaseServices/Entity/Board"; import { GenerateRaycaster, Raycast } from "../../Editor/PointPick"; import { SelectLine } from "../../Editor/SelectLine"; import { RenderType } from "../../GraphicsSystem/RenderType"; import { Viewer } from "../../GraphicsSystem/Viewer"; -import { comparePoint, isParallelTo, midPoint, AsVector2 } from "../GeUtils"; +import { AsVector2, comparePoint, isParallelTo } from "../GeUtils"; /** * 点选空间拾取板件方法,该方法通过构造射线去拾取板件,并且尝试得到周围的板件. diff --git a/src/Geometry/SpaceParse/PointSelectSpace.ts b/src/Geometry/SpaceParse/PointSelectSpace.ts index 52da6a67d..c01a78f95 100644 --- a/src/Geometry/SpaceParse/PointSelectSpace.ts +++ b/src/Geometry/SpaceParse/PointSelectSpace.ts @@ -1,5 +1,5 @@ import { app } from "../../ApplicationServices/Application"; -import { Board } from "../../DatabaseServices/Board"; +import { Board } from "../../DatabaseServices/Entity/Board"; import { PromptStatus, PromptPointResult } from "../../Editor/PromptResult"; import { PointSelectBoards } from "./PointSelectBoards"; import { ISpaceParse } from "./ISpaceParse"; diff --git a/src/Geometry/SpaceParse/PointSelectSpaceClamp.ts b/src/Geometry/SpaceParse/PointSelectSpaceClamp.ts index 625bbbc40..b4aa4554e 100644 --- a/src/Geometry/SpaceParse/PointSelectSpaceClamp.ts +++ b/src/Geometry/SpaceParse/PointSelectSpaceClamp.ts @@ -1,4 +1,4 @@ -import { Board } from "../../DatabaseServices/Board"; +import { Board } from "../../DatabaseServices/Entity/Board"; import { ClampSpaceParseKey } from "./ClampSpaceParseKey"; import { ClampSpaceParseRay } from "./ClampSpaceParseRay"; import { PointSelectBoards } from "./PointSelectBoards"; diff --git a/src/Geometry/SpaceParse/PointSelectSpaceSurround.ts b/src/Geometry/SpaceParse/PointSelectSpaceSurround.ts index 972695bfd..45b2e3891 100644 --- a/src/Geometry/SpaceParse/PointSelectSpaceSurround.ts +++ b/src/Geometry/SpaceParse/PointSelectSpaceSurround.ts @@ -1,4 +1,4 @@ -import { Board } from "../../DatabaseServices/Board"; +import { Board } from "../../DatabaseServices/Entity/Board"; import { PointSelectBoards } from "./PointSelectBoards"; import { PointSelectSpace } from "./PointSelectSpace"; import { SurroundSpaceParse } from "./SurroundSpaceParse"; diff --git a/src/Geometry/SpaceParse/SurroundOutlineParse.ts b/src/Geometry/SpaceParse/SurroundOutlineParse.ts index a6ac9aa16..fe8238e81 100644 --- a/src/Geometry/SpaceParse/SurroundOutlineParse.ts +++ b/src/Geometry/SpaceParse/SurroundOutlineParse.ts @@ -1,8 +1,8 @@ import { Vector3, Matrix4 } from "three"; import { app } from "../../ApplicationServices/Application"; -import { Curve } from "../../DatabaseServices/Curve"; -import { Polyline } from "../../DatabaseServices/Polyline"; -import { Region } from "../../DatabaseServices/Region"; +import { Curve } from "../../DatabaseServices/Entity/Curve"; +import { Polyline } from "../../DatabaseServices/Entity/Polyline"; +import { Region } from "../../DatabaseServices/Entity/Region"; import { BoolOpeartionType } from "../../GraphicsSystem/BoolOperateUtils"; import { equaln, isParallelTo, isPerpendicularityTo } from "../GeUtils"; import { ISpaceParse } from "./ISpaceParse"; diff --git a/src/Geometry/SpaceParse/SurroundSpaceParse.ts b/src/Geometry/SpaceParse/SurroundSpaceParse.ts index 6f804aa2b..ce656334b 100644 --- a/src/Geometry/SpaceParse/SurroundSpaceParse.ts +++ b/src/Geometry/SpaceParse/SurroundSpaceParse.ts @@ -1,6 +1,6 @@ import { Matrix4, Vector3 } from "three"; import { app } from "../../ApplicationServices/Application"; -import { Board, BoardType } from "../../DatabaseServices/Board"; +import { Board, BoardType } from "../../DatabaseServices/Entity/Board"; import { PromptStatus } from "../../Editor/PromptResult"; import { equaln, isParallelTo } from "../GeUtils"; import { ClampSpaceParseKey } from "./ClampSpaceParseKey"; diff --git a/src/Geometry/SweepGeometry.ts b/src/Geometry/SweepGeometry.ts index a0fe99a09..ef540a980 100644 --- a/src/Geometry/SweepGeometry.ts +++ b/src/Geometry/SweepGeometry.ts @@ -1,8 +1,8 @@ import { BufferGeometry, Float32BufferAttribute, Geometry, Line3, Matrix4, ShapeUtils, Vector2, Vector3 } from "three"; import { arrayRemoveDuplicateBySort } from "../Common/ArrayExt"; import { FixIndex } from "../Common/Utils"; -import { Curve } from "../DatabaseServices/Curve"; -import { Polyline } from "../DatabaseServices/Polyline"; +import { Curve } from "../DatabaseServices/Entity/Curve"; +import { Polyline } from "../DatabaseServices/Entity/Polyline"; import { equalv3, AsVector3, AsVector2 } from "./GeUtils"; import { PlaneExt } from "./Plane"; diff --git a/src/GraphicsSystem/BoolOperateUtils.ts b/src/GraphicsSystem/BoolOperateUtils.ts index bdd27c049..0fa034caf 100644 --- a/src/GraphicsSystem/BoolOperateUtils.ts +++ b/src/GraphicsSystem/BoolOperateUtils.ts @@ -1,8 +1,8 @@ import { Vector3 } from 'three'; -import { Circle } from '../DatabaseServices/Circle'; -import { Curve } from '../DatabaseServices/Curve'; -import { Ellipse } from '../DatabaseServices/Ellipse'; -import { Polyline } from '../DatabaseServices/Polyline'; +import { Circle } from '../DatabaseServices/Entity/Circle'; +import { Curve } from '../DatabaseServices/Entity/Curve'; +import { Ellipse } from '../DatabaseServices/Entity/Ellipse'; +import { Polyline } from '../DatabaseServices/Entity/Polyline'; import { IntersectOption } from './IntersectWith'; export enum BoolOpeartionType diff --git a/src/GraphicsSystem/CalcEdgeSealing.ts b/src/GraphicsSystem/CalcEdgeSealing.ts index 783fec5a7..9e4027e22 100644 --- a/src/GraphicsSystem/CalcEdgeSealing.ts +++ b/src/GraphicsSystem/CalcEdgeSealing.ts @@ -1,9 +1,9 @@ import { EBoardKeyList } from "../Common/BoardKeyList"; import { FixIndex } from "../Common/Utils"; -import { Board } from "../DatabaseServices/Board"; -import { Curve } from "../DatabaseServices/Curve"; -import { Line } from "../DatabaseServices/Line"; -import { Polyline } from "../DatabaseServices/Polyline"; +import { Board } from "../DatabaseServices/Entity/Board"; +import { Curve } from "../DatabaseServices/Entity/Curve"; +import { Line } from "../DatabaseServices/Entity/Line"; +import { Polyline } from "../DatabaseServices/Entity/Polyline"; import { equaln, equalv3, isParallelTo } from "../Geometry/GeUtils"; import { IntersectOption } from "./IntersectWith"; import { PolyOffsetUtil } from "./OffsetPolyline"; diff --git a/src/GraphicsSystem/IntersectWith.ts b/src/GraphicsSystem/IntersectWith.ts index eaba04725..41763e1d1 100644 --- a/src/GraphicsSystem/IntersectWith.ts +++ b/src/GraphicsSystem/IntersectWith.ts @@ -1,11 +1,11 @@ import { Matrix4, Vector3 } from 'three'; import { arrayRemoveDuplicateBySort } from '../Common/ArrayExt'; -import { Arc } from '../DatabaseServices/Arc'; -import { Circle } from '../DatabaseServices/Circle'; -import { Curve } from '../DatabaseServices/Curve'; -import { Ellipse } from '../DatabaseServices/Ellipse'; -import { Line } from '../DatabaseServices/Line'; -import { Polyline } from '../DatabaseServices/Polyline'; +import { Arc } from '../DatabaseServices/Entity/Arc'; +import { Circle } from '../DatabaseServices/Entity/Circle'; +import { Curve } from '../DatabaseServices/Entity/Curve'; +import { Ellipse } from '../DatabaseServices/Entity/Ellipse'; +import { Line } from '../DatabaseServices/Entity/Line'; +import { Polyline } from '../DatabaseServices/Entity/Polyline'; import { comparePoint, equaln, equalv3 } from '../Geometry/GeUtils'; /** diff --git a/src/GraphicsSystem/LinkSelft.ts b/src/GraphicsSystem/LinkSelft.ts index 0d5d86960..35f4cce9e 100644 --- a/src/GraphicsSystem/LinkSelft.ts +++ b/src/GraphicsSystem/LinkSelft.ts @@ -1,5 +1,5 @@ import { Vector3 } from "three"; -import { Curve } from "../DatabaseServices/Curve"; +import { Curve } from "../DatabaseServices/Entity/Curve"; import { CurveIntersection } from "../Geometry/CurveIntersection"; import { CurveMap } from "../Geometry/CurveMap"; import { equalv3, equaln } from "../Geometry/GeUtils"; diff --git a/src/GraphicsSystem/OffsetPolyline.ts b/src/GraphicsSystem/OffsetPolyline.ts index a8c28ab73..c551236b7 100644 --- a/src/GraphicsSystem/OffsetPolyline.ts +++ b/src/GraphicsSystem/OffsetPolyline.ts @@ -3,12 +3,12 @@ import { arrayLast, arrayRemoveDuplicateBySort, arrayRemoveIf, arraySortByNumber import { curveLinkGroup, GetPointAtCurveDir } from "../Common/CurveUtils"; import { Status } from "../Common/Status"; import { FixIndex } from "../Common/Utils"; -import { Arc } from "../DatabaseServices/Arc"; -import { Circle } from "../DatabaseServices/Circle"; +import { Arc } from "../DatabaseServices/Entity/Arc"; +import { Circle } from "../DatabaseServices/Entity/Circle"; import { Contour } from '../DatabaseServices/Contour'; -import { Curve } from "../DatabaseServices/Curve"; -import { Line } from "../DatabaseServices/Line"; -import { Polyline } from '../DatabaseServices/Polyline'; +import { Curve } from "../DatabaseServices/Entity/Curve"; +import { Line } from "../DatabaseServices/Entity/Line"; +import { Polyline } from '../DatabaseServices/Entity/Polyline'; import { equaln, equalv2, equalv3 } from "../Geometry/GeUtils"; import { EBox, SortEntityByBox } from "../Geometry/SortEntityByBox"; import { IsPtsAllOutOrOnReg } from "./BoolOperateUtils"; diff --git a/src/GraphicsSystem/ToolPath/FeedingToolPath.ts b/src/GraphicsSystem/ToolPath/FeedingToolPath.ts index d55f21957..1f0b39894 100644 --- a/src/GraphicsSystem/ToolPath/FeedingToolPath.ts +++ b/src/GraphicsSystem/ToolPath/FeedingToolPath.ts @@ -1,9 +1,9 @@ import { Singleton } from "../../Common/Singleton"; -import { Board, IModeling } from "../../DatabaseServices/Board"; -import { Circle } from "../../DatabaseServices/Circle"; +import { Board, IModeling } from "../../DatabaseServices/Entity/Board"; +import { Circle } from "../../DatabaseServices/Entity/Circle"; import { Contour } from "../../DatabaseServices/Contour"; -import { Curve } from "../../DatabaseServices/Curve"; -import { Polyline } from "../../DatabaseServices/Polyline"; +import { Curve } from "../../DatabaseServices/Entity/Curve"; +import { Polyline } from "../../DatabaseServices/Entity/Polyline"; import { Shape } from "../../DatabaseServices/Shape"; import { ShapeManager } from "../../DatabaseServices/ShapeManager"; import { BoolOpeartionType } from "../BoolOperateUtils"; diff --git a/src/GraphicsSystem/ToolPath/OptimizeToolPath.ts b/src/GraphicsSystem/ToolPath/OptimizeToolPath.ts index 5c9b51ce7..e1c451825 100644 --- a/src/GraphicsSystem/ToolPath/OptimizeToolPath.ts +++ b/src/GraphicsSystem/ToolPath/OptimizeToolPath.ts @@ -1,10 +1,10 @@ -import { Curve } from "../../DatabaseServices/Curve"; +import { Curve } from "../../DatabaseServices/Entity/Curve"; import { Shape } from "../../DatabaseServices/Shape"; import { matrixAlignCoordSys } from "../../Common/Matrix4Utils"; import { curveLinkGroup, ConverCircleToPolyline } from "../../Common/CurveUtils"; -import { Line } from "../../DatabaseServices/Line"; -import { Circle } from "../../DatabaseServices/Circle"; -import { Polyline } from "../../DatabaseServices/Polyline"; +import { Line } from "../../DatabaseServices/Entity/Line"; +import { Circle } from "../../DatabaseServices/Entity/Circle"; +import { Polyline } from "../../DatabaseServices/Entity/Polyline"; import { comparePoint, AsVector3, AsVector2 } from "../../Geometry/GeUtils"; import { arrayLast } from "../../Common/ArrayExt"; diff --git a/src/GraphicsSystem/ToolPath/VKnifToolPath.ts b/src/GraphicsSystem/ToolPath/VKnifToolPath.ts index ffa272190..9d4dd9689 100644 --- a/src/GraphicsSystem/ToolPath/VKnifToolPath.ts +++ b/src/GraphicsSystem/ToolPath/VKnifToolPath.ts @@ -1,9 +1,9 @@ -import { Polyline } from "../../DatabaseServices/Polyline"; +import { Polyline } from "../../DatabaseServices/Entity/Polyline"; import { arrayRemoveIf } from "../../Common/ArrayExt"; import { FixIndex } from "../../Common/Utils"; import { IntersectOption } from "../IntersectWith"; -import { Arc } from "../../DatabaseServices/Arc"; -import { Line } from "../../DatabaseServices/Line"; +import { Arc } from "../../DatabaseServices/Entity/Arc"; +import { Line } from "../../DatabaseServices/Entity/Line"; interface Vec3 { diff --git a/src/GraphicsSystem/Viewer.ts b/src/GraphicsSystem/Viewer.ts index 816f86a64..e970b2157 100644 --- a/src/GraphicsSystem/Viewer.ts +++ b/src/GraphicsSystem/Viewer.ts @@ -3,7 +3,7 @@ import { begin, end } from 'xaop'; import { app } from '../ApplicationServices/Application'; import { GetEntity } from '../Common/Utils'; import { Database } from '../DatabaseServices/Database'; -import { Entity } from '../DatabaseServices/Entity'; +import { Entity } from '../DatabaseServices/Entity/Entity'; import { GenerateRaycaster } from '../Editor/PointPick'; import { userConfig } from '../Editor/UserConfig'; import { ZeroVec, GetBox, GetBoxArr, isPerpendicularityTo } from '../Geometry/GeUtils'; diff --git a/src/Production/Product.ts b/src/Production/Product.ts index 43031aec5..69f0804b4 100644 --- a/src/Production/Product.ts +++ b/src/Production/Product.ts @@ -2,10 +2,10 @@ import { Matrix4, Vector2, Vector3 } from "three"; import { EBoardKeyList } from "../Common/BoardKeyList"; import { Vector2ApplyMatrix4 } from "../Common/Matrix4Utils"; import { GangDrill, GangDrillType } from "../DatabaseServices/3DSolid/GangDrill"; -import { Arc } from "../DatabaseServices/Arc"; -import { Board } from "../DatabaseServices/Board"; -import { Circle } from "../DatabaseServices/Circle"; -import { Polyline } from "../DatabaseServices/Polyline"; +import { Arc } from "../DatabaseServices/Entity/Arc"; +import { Board } from "../DatabaseServices/Entity/Board"; +import { Circle } from "../DatabaseServices/Entity/Circle"; +import { Polyline } from "../DatabaseServices/Entity/Polyline"; import { Vec2 } from "../Geometry/CheckIntersect"; import { equaln, equalv3, isParallelTo, AsVector2 } from "../Geometry/GeUtils"; import { getBoardSealingCurves, getBoardSealingData as getBoardHighSeal, getSealedBoardContour } from "../GraphicsSystem/CalcEdgeSealing"; diff --git a/src/Reactor/CommandReactor.ts b/src/Reactor/CommandReactor.ts index 85506ef8e..ce06203a6 100644 --- a/src/Reactor/CommandReactor.ts +++ b/src/Reactor/CommandReactor.ts @@ -2,7 +2,7 @@ import { ApplicationService } from "../ApplicationServices/Application"; import { CADObject } from "../DatabaseServices/CADObject"; import { begin } from "xaop"; import { commandMachine } from "../Editor/CommandMachine"; -import { Entity } from "../DatabaseServices/Entity"; +import { Entity } from "../DatabaseServices/Entity/Entity"; import { CommandState } from "../Editor/CommandState"; type CommandEndListener = (cmdName: string, changeObjects: CADObject[], createObjects: CADObject[]) => void; diff --git a/src/UI/Components/Board/BoardCommon.tsx b/src/UI/Components/Board/BoardCommon.tsx index b0d9e2c43..4a104b951 100644 --- a/src/UI/Components/Board/BoardCommon.tsx +++ b/src/UI/Components/Board/BoardCommon.tsx @@ -3,7 +3,7 @@ import { observer } from 'mobx-react'; import * as React from 'react'; import { app } from '../../../ApplicationServices/Application'; import { CheckObjectType } from '../../../Common/CheckoutVaildValue'; -import { Board, BoardType } from '../../../DatabaseServices/Board'; +import { Board, BoardType } from '../../../DatabaseServices/Entity/Board'; import { BoardConfigOption, BoardOption, BoardProcessOption, BrRelativePos, TBBoardOption, DrillType } from '../../Store/BoardInterface'; import { DrillingOption } from '../../Store/drillInterface'; import { RightPanelStore } from '../../Store/RightPanelStore'; diff --git a/src/UI/Components/Board/BoardConfigModal.tsx b/src/UI/Components/Board/BoardConfigModal.tsx index 4f5ed33ed..0c1e2017a 100644 --- a/src/UI/Components/Board/BoardConfigModal.tsx +++ b/src/UI/Components/Board/BoardConfigModal.tsx @@ -7,9 +7,9 @@ import { ExtrudeApplyContour, SelectExtrudeContour, selectOutlinePosition } from import { app } from "../../../ApplicationServices/Application"; import { CheckObjectType } from "../../../Common/CheckoutVaildValue"; import { DataAdapter } from "../../../Common/DataAdapter"; -import { Board } from "../../../DatabaseServices/Board"; +import { Board } from "../../../DatabaseServices/Entity/Board"; import { Contour } from "../../../DatabaseServices/Contour"; -import { ExtureSolid } from "../../../DatabaseServices/Extrude"; +import { ExtureSolid } from "../../../DatabaseServices/Entity/Extrude"; import { Shape } from "../../../DatabaseServices/Shape"; import { commandMachine } from "../../../Editor/CommandMachine"; import { JigUtils } from "../../../Editor/JigUtils"; @@ -19,7 +19,7 @@ import { BoardConfigOption, BoardProcessOption, FaceDirection, IGrooveOption } f import { RightPanelStore } from "../../Store/RightPanelStore"; import { BoardTypeComponent, ItemName, SetBoardDataBlock } from "./BoardCommon"; import { RightTabId } from "../RightPanel/RightPanel"; -import { Region } from "../../../DatabaseServices/Region"; +import { Region } from "../../../DatabaseServices/Entity/Region"; interface BoardConfigProps { diff --git a/src/UI/Components/Board/BoardOptionModal.tsx b/src/UI/Components/Board/BoardOptionModal.tsx index e96e94b00..9c8750d2e 100644 --- a/src/UI/Components/Board/BoardOptionModal.tsx +++ b/src/UI/Components/Board/BoardOptionModal.tsx @@ -5,7 +5,7 @@ import { Math } from 'three'; import { app } from '../../../ApplicationServices/Application'; import { CheckObjectType, CheckoutValid } from '../../../Common/CheckoutVaildValue'; import { FixedNotZero } from '../../../Common/Utils'; -import { Board } from '../../../DatabaseServices/Board'; +import { Board } from '../../../DatabaseServices/Entity/Board'; import { commandMachine } from '../../../Editor/CommandMachine'; import { CommandState } from '../../../Editor/CommandState'; import { userConfig } from '../../../Editor/UserConfig'; diff --git a/src/UI/Components/Board/BoardProcessModal.tsx b/src/UI/Components/Board/BoardProcessModal.tsx index 1698fde98..45bb6a326 100644 --- a/src/UI/Components/Board/BoardProcessModal.tsx +++ b/src/UI/Components/Board/BoardProcessModal.tsx @@ -4,8 +4,8 @@ import { observer } from 'mobx-react'; import * as React from 'react'; import { app } from '../../../ApplicationServices/Application'; import { CheckObjectType } from '../../../Common/CheckoutVaildValue'; -import { Board } from '../../../DatabaseServices/Board'; -import { Circle } from '../../../DatabaseServices/Circle'; +import { Board } from '../../../DatabaseServices/Entity/Board'; +import { Circle } from '../../../DatabaseServices/Entity/Circle'; import { userConfig } from '../../../Editor/UserConfig'; import { BoardProcessOption, ComposingType, FaceDirection, LinesType, DrillType } from '../../Store/BoardInterface'; import { DrillingOption } from '../../Store/drillInterface'; diff --git a/src/UI/Components/MaterialExplorer.tsx b/src/UI/Components/MaterialExplorer.tsx index f8d964b88..b1f31d66e 100644 --- a/src/UI/Components/MaterialExplorer.tsx +++ b/src/UI/Components/MaterialExplorer.tsx @@ -9,7 +9,7 @@ import { Vector3 } from 'three'; import { PointPick } from '../../Editor/PointPick'; import { commandMachine } from '../../Editor/CommandMachine'; import { GetEntity } from '../../Common/Utils'; -import { Board } from '../../DatabaseServices/Board'; +import { Board } from '../../DatabaseServices/Entity/Board'; const rootStyle: React.CSSProperties = { overflowX: "hidden", diff --git a/src/UI/Components/Template/ToplineManage.tsx b/src/UI/Components/Template/ToplineManage.tsx index 92aa02a95..fc2bcc661 100644 --- a/src/UI/Components/Template/ToplineManage.tsx +++ b/src/UI/Components/Template/ToplineManage.tsx @@ -9,9 +9,9 @@ import { EBoardKeyList } from '../../../Common/BoardKeyList'; import { ToplineUrls } from '../../../Common/HostUrl'; import { DirectoryId, PostJson, RequestStatus } from '../../../Common/Request'; import { deflate, getPolylineSVG, inflate, toplineFileIn } from '../../../Common/SerializeMaterial'; -import { Board } from '../../../DatabaseServices/Board'; +import { Board } from '../../../DatabaseServices/Entity/Board'; import { CADFiler } from '../../../DatabaseServices/CADFiler'; -import { Polyline } from '../../../DatabaseServices/Polyline'; +import { Polyline } from '../../../DatabaseServices/Entity/Polyline'; import { commandMachine } from '../../../Editor/CommandMachine'; import { PromptStatus } from '../../../Editor/PromptResult'; import { MoveMatrix } from '../../../Geometry/GeUtils'; diff --git a/src/UI/Store/BoardInterface.ts b/src/UI/Store/BoardInterface.ts index 7438d51f8..242c9c2a2 100644 --- a/src/UI/Store/BoardInterface.ts +++ b/src/UI/Store/BoardInterface.ts @@ -1,5 +1,5 @@ import { EBoardKeyList } from "../../Common/BoardKeyList"; -import { BoardType } from "../../DatabaseServices/Board"; +import { BoardType } from "../../DatabaseServices/Entity/Board"; /** *勿随意更改属性名,若更改,需更改对应UI模态框的属性和检验方法的key diff --git a/src/UI/Store/BoardStore.ts b/src/UI/Store/BoardStore.ts index 95bc63147..d19ed5d70 100644 --- a/src/UI/Store/BoardStore.ts +++ b/src/UI/Store/BoardStore.ts @@ -4,7 +4,7 @@ import { app } from '../../ApplicationServices/Application'; import { CheckObjectType, CheckoutValid } from '../../Common/CheckoutVaildValue'; import { DataAdapter } from '../../Common/DataAdapter'; import { Singleton } from '../../Common/Singleton'; -import { Board, BoardType } from '../../DatabaseServices/Board'; +import { Board, BoardType } from '../../DatabaseServices/Entity/Board'; import { IConfigOption } from '../Components/Board/UserConfig'; import { ModalState } from '../Components/Modal/ModalsManage'; import { BehindBoardOption, BehindHeightPositon, BoardConfigOption, BoardOption, BoardProcessOption, BrRelativePos, ClosingStripOption, ComposingType, LayerBoardOption, LayerNailOption, LinesType, FaceDirection, SideBoardOption, SingleBoardOption, StripType, TBBoardOption, VerticalBoardOption, IGrooveOption, DrillType } from './BoardInterface'; diff --git a/src/UI/Store/EntityStore.ts b/src/UI/Store/EntityStore.ts index 413d13853..bba945f26 100644 --- a/src/UI/Store/EntityStore.ts +++ b/src/UI/Store/EntityStore.ts @@ -1,12 +1,12 @@ import { observable } from "mobx"; import { Singleton } from "../../Common/Singleton"; -import { Arc } from "../../DatabaseServices/Arc"; -import { Circle } from "../../DatabaseServices/Circle"; -import { Entity } from "../../DatabaseServices/Entity"; -import { Line } from "../../DatabaseServices/Line"; -import { Polyline } from "../../DatabaseServices/Polyline"; -import { Region } from "../../DatabaseServices/Region"; -import { Ellipse } from "../../DatabaseServices/Ellipse"; +import { Arc } from "../../DatabaseServices/Entity/Arc"; +import { Circle } from "../../DatabaseServices/Entity/Circle"; +import { Entity } from "../../DatabaseServices/Entity/Entity"; +import { Line } from "../../DatabaseServices/Entity/Line"; +import { Polyline } from "../../DatabaseServices/Entity/Polyline"; +import { Region } from "../../DatabaseServices/Entity/Region"; +import { Ellipse } from "../../DatabaseServices/Entity/Ellipse"; export class EntityStore extends Singleton { diff --git a/src/UI/Store/LightStore.ts b/src/UI/Store/LightStore.ts index 6d0424f8b..3881c4b95 100644 --- a/src/UI/Store/LightStore.ts +++ b/src/UI/Store/LightStore.ts @@ -3,8 +3,8 @@ import { Light as TLight, Mesh, MeshPhysicalMaterial, Vector3 } from 'three'; import { end } from "xaop"; import { app } from "../../ApplicationServices/Application"; import { HostApplicationServices } from "../../ApplicationServices/HostApplicationServices"; -import { Board } from "../../DatabaseServices/Board"; -import { Entity } from "../../DatabaseServices/Entity"; +import { Board } from "../../DatabaseServices/Entity/Board"; +import { Entity } from "../../DatabaseServices/Entity/Entity"; import { AmbientLight } from "../../DatabaseServices/Lights/AmbientLight"; import { DirectionalLight } from "../../DatabaseServices/Lights/DirectionalLight"; import { HemisphereLight } from "../../DatabaseServices/Lights/HemisphereLight"; diff --git a/src/UI/Store/RightPanelStore.ts b/src/UI/Store/RightPanelStore.ts index 0414d557c..e81feb0f8 100644 --- a/src/UI/Store/RightPanelStore.ts +++ b/src/UI/Store/RightPanelStore.ts @@ -3,9 +3,9 @@ import { observable, toJS } from "mobx"; import { Matrix4 } from "three"; import { app } from "../../ApplicationServices/Application"; import { Singleton } from "../../Common/Singleton"; -import { Board, IModeling } from "../../DatabaseServices/Board"; -import { Curve } from "../../DatabaseServices/Curve"; -import { Entity } from "../../DatabaseServices/Entity"; +import { Board, IModeling } from "../../DatabaseServices/Entity/Board"; +import { Curve } from "../../DatabaseServices/Entity/Curve"; +import { Entity } from "../../DatabaseServices/Entity/Entity"; import { commandMachine } from "../../Editor/CommandMachine"; import { JigUtils } from "../../Editor/JigUtils"; import { userConfig } from "../../Editor/UserConfig";