diff --git a/src/Add-on/JiaJu/Import/JiaJuImport.ts b/src/Add-on/JiaJu/Import/JiaJuImport.ts index 2ba9e6e32..2f80e897d 100644 --- a/src/Add-on/JiaJu/Import/JiaJuImport.ts +++ b/src/Add-on/JiaJu/Import/JiaJuImport.ts @@ -4,6 +4,7 @@ import { app } from "../../../ApplicationServices/Application"; import { EBoardKeyList } from "../../../Common/BoardKeyList"; import { FileSystem } from "../../../Common/FileSystem"; import { JigMoveEntity } from "../../../Common/JigMove"; +import { MakeMirrorMtx } from "../../../Common/Matrix4Utils"; import { Contour } from "../../../DatabaseServices/Contour"; import { Database } from "../../../DatabaseServices/Database"; import { Arc } from "../../../DatabaseServices/Entity/Arc"; @@ -12,10 +13,11 @@ import { Entity } from "../../../DatabaseServices/Entity/Entity"; import { Line } from "../../../DatabaseServices/Entity/Line"; import { Polyline } from "../../../DatabaseServices/Entity/Polyline"; import { HardwareCompositeEntity } from "../../../DatabaseServices/Hardware/HardwareCompositeEntity"; +import { ObjectId } from "../../../DatabaseServices/ObjectId"; import { Shape } from "../../../DatabaseServices/Shape"; import { TemplateRecord } from "../../../DatabaseServices/Template/TemplateRecord"; import { Command, CommandWrap } from "../../../Editor/CommandMachine"; -import { equaln, XAxis, YAxis, ZAxis } from "../../../Geometry/GeUtils"; +import { equaln, XAxis, YAxis, ZAxis, ZeroVec } from "../../../Geometry/GeUtils"; import { AppToaster } from "../../../UI/Components/Toaster"; import { BoardType, FaceDirection, LinesType } from "../../../UI/Store/BoardInterface"; import { CuttingBoardByBoard } from "../../BoardCutting/CuttingUtils2"; @@ -310,6 +312,15 @@ class JiaJuParse //坐标系变换 //旋转 br.ApplyMatrix(roMat); + if (br.BoardType === BoardType.Behind) + { + br.objectId = new ObjectId; + br.ApplyMatrix(MakeMirrorMtx(YAxis, ZeroVec)); + br.objectId = undefined; + br.SetXAxis(XAxis, true); + } + else if (br.BoardType === BoardType.Layer) + br.SetXAxis(YAxis, true); //左后下 let box = br.BoundingBox;