From 96950c42d94f27fc28d25bbbb1e0268cc96d2eb8 Mon Sep 17 00:00:00 2001 From: ChenX Date: Wed, 14 Aug 2019 11:56:50 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E9=85=92=E6=A0=BC=E6=B2=A1?= =?UTF-8?q?=E6=9C=89=E5=BA=94=E7=94=A8=E5=8F=98=E6=8D=A2=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Add-on/DrawWineRack/DrawWineRack.ts | 8 ++++++++ src/Geometry/SpaceParse/ISpaceParse.ts | 9 +++++++++ 2 files changed, 17 insertions(+) diff --git a/src/Add-on/DrawWineRack/DrawWineRack.ts b/src/Add-on/DrawWineRack/DrawWineRack.ts index 36b361c2b..528b0e60d 100644 --- a/src/Add-on/DrawWineRack/DrawWineRack.ts +++ b/src/Add-on/DrawWineRack/DrawWineRack.ts @@ -1,4 +1,5 @@ import { app } from "../../ApplicationServices/Application"; +import { Board } from "../../DatabaseServices/Entity/Board"; import { PositioningClampSpace } from "../../DatabaseServices/Template/Positioning/PositioningClampSpace"; import { GetDeepestTemplate } from "../../DatabaseServices/Template/TempateUtils"; import { TemplateRecord } from "../../DatabaseServices/Template/TemplateRecord"; @@ -45,6 +46,13 @@ export class DrawWineRack implements Command wineRack.HParam.expr = space.Size.z; await wineRack.UpdateTemplateTree(); + + let brs = wineRack.Objects.map(id => id.Object as Board); + let dcs = space.DrawCS; + for (let br of brs) + { + br.ApplyMatrix(dcs); + } } } } diff --git a/src/Geometry/SpaceParse/ISpaceParse.ts b/src/Geometry/SpaceParse/ISpaceParse.ts index d2310b371..0a44522ab 100644 --- a/src/Geometry/SpaceParse/ISpaceParse.ts +++ b/src/Geometry/SpaceParse/ISpaceParse.ts @@ -71,6 +71,15 @@ export class ISpaceParse return new Vector3(); } + get DrawCS(): Matrix4 + { + if (!this.ParseOK) return new Matrix4(); + let scs = this.SpaceOCS.clone(); + let p = this.SpaceBox.min.clone().applyMatrix4(scs); + scs.setPosition(p); + return scs; + } + /** * 构造板件类型Map */