From 46bca579df47e08dbbc0c08171cf6ece9f508d55 Mon Sep 17 00:00:00 2001 From: ZoeLeeFZ Date: Fri, 20 Nov 2020 10:00:24 +0800 Subject: [PATCH] =?UTF-8?q?!1322=20=E4=BF=AE=E5=A4=8D:=E5=85=B3=E8=81=94?= =?UTF-8?q?=E5=88=87=E5=89=B2=E6=9D=BF=E4=BB=B6=E6=8E=92=E9=92=BB=E4=B8=A2?= =?UTF-8?q?=E5=A4=B1=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Add-on/CheckModeling.ts | 2 +- src/Add-on/CommandFeeding.ts | 2 +- src/Add-on/DrawDrilling/DrawDrillingTool.ts | 2 +- src/Add-on/Erp/ErpCommands.ts | 2 +- .../LookOverBoardInfos/LookOverBoardInfos.ts | 2 +- src/DatabaseServices/Entity/Board.ts | 6 ++++-- src/Production/Product.ts | 17 +---------------- 7 files changed, 10 insertions(+), 23 deletions(-) diff --git a/src/Add-on/CheckModeling.ts b/src/Add-on/CheckModeling.ts index 5de93a18e..14e42016e 100644 --- a/src/Add-on/CheckModeling.ts +++ b/src/Add-on/CheckModeling.ts @@ -27,7 +27,7 @@ export class CheckModeling implements Command for (let en of brRes.SelectSet.SelectEntityList as Board[]) { - brs.push(...Production.GetSpliteBoards(en)); + brs.push(...en.SplitBoards); } let feedingTool = FeedingToolPath.GetInstance() as FeedingToolPath; diff --git a/src/Add-on/CommandFeeding.ts b/src/Add-on/CommandFeeding.ts index 7ac538738..ce0460356 100644 --- a/src/Add-on/CommandFeeding.ts +++ b/src/Add-on/CommandFeeding.ts @@ -24,7 +24,7 @@ export class FeedingCommand implements Command let ens = brRes.SelectSet.SelectEntityList as Board[]; let brs: Board[] = []; for (let e of ens) - brs.push(...Production.GetSpliteBoards(e)); + brs.push(...e.SplitBoards); if (brs.length > 0) { let infos: ISpliteOrderData[] = []; diff --git a/src/Add-on/DrawDrilling/DrawDrillingTool.ts b/src/Add-on/DrawDrilling/DrawDrillingTool.ts index 745464b6f..af0858772 100644 --- a/src/Add-on/DrawDrilling/DrawDrillingTool.ts +++ b/src/Add-on/DrawDrilling/DrawDrillingTool.ts @@ -947,7 +947,7 @@ export class DrawDrillingTool extends Singleton let i = 0; for (let e of brs) { - let bs = Production.GetSpliteBoards(e); + let bs = e.SplitBoards; bs.forEach(b => b.TempData = e.TempData); brList.push(...bs); diff --git a/src/Add-on/Erp/ErpCommands.ts b/src/Add-on/Erp/ErpCommands.ts index d6ef2ba06..a2cfacb7c 100644 --- a/src/Add-on/Erp/ErpCommands.ts +++ b/src/Add-on/Erp/ErpCommands.ts @@ -191,7 +191,7 @@ export async function GetProductsEntitys() { if (en instanceof Board) { - boardList.push(...Production.GetSpliteBoards(en)); + boardList.push(...en.SplitBoards); en.RelativeHardware.forEach(id => !id.IsErase && (id.Object instanceof HardwareCompositeEntity || id.Object instanceof HardwareTopline) && metalsIds.add(id)); } else diff --git a/src/Add-on/LookOverBoardInfos/LookOverBoardInfos.ts b/src/Add-on/LookOverBoardInfos/LookOverBoardInfos.ts index e6ef70b0f..191ebf1f6 100644 --- a/src/Add-on/LookOverBoardInfos/LookOverBoardInfos.ts +++ b/src/Add-on/LookOverBoardInfos/LookOverBoardInfos.ts @@ -26,7 +26,7 @@ export class LookOverBoardInfos implements Command for (let e of brsProps) { if (e instanceof Board) - ens.push(...Production.GetSpliteBoards(e)); + ens.push(...e.SplitBoards); else ens.push(e); } diff --git a/src/DatabaseServices/Entity/Board.ts b/src/DatabaseServices/Entity/Board.ts index 683074c51..73fa4c2e9 100644 --- a/src/DatabaseServices/Entity/Board.ts +++ b/src/DatabaseServices/Entity/Board.ts @@ -281,8 +281,10 @@ export class Board extends ExtrudeSolid { if (br.__OriginalEnt__) { - br._DrillList.clear(); - br._LayerNails.length = 0; + br._DrillList = new Map(this._DrillList.entries()); + br._LayerNails = [...this._LayerNails]; + br.ProcessingGroupList = [...this.ProcessingGroupList]; + br._BoardProcessOption = { ...this._BoardProcessOption }; } } return brs; diff --git a/src/Production/Product.ts b/src/Production/Product.ts index a24fcfed2..82c9cd016 100644 --- a/src/Production/Product.ts +++ b/src/Production/Product.ts @@ -519,22 +519,7 @@ export namespace Production pl.Reverse(); return pl; } - export function GetSpliteBoards(en: Board) - { - let bs = en.SplitBoards; - for (let b of bs) - { - if (b.__OriginalEnt__) - { - b.BoardProcessOption = en.BoardProcessOption; - b.ProcessingGroupList = en.ProcessingGroupList; - for (let [k, ds] of en.DrillList) - b.AppendDrillList(k, ds); - b.AppendNails(en.LayerNails); - } - } - return bs; - } + export function GetSpiteSize(br: Board) { let param = { L: br.Height, W: br.Width, H: br.Thickness };