|
|
|
@ -18,7 +18,7 @@ import { ExtrudeHole } from "../../DatabaseServices/3DSolid/ExtrudeHole";
|
|
|
|
|
import { Hole } from "../../DatabaseServices/3DSolid/Hole";
|
|
|
|
|
import { CADObject } from "../../DatabaseServices/CADObject";
|
|
|
|
|
import { Contour } from "../../DatabaseServices/Contour";
|
|
|
|
|
import { Board } from "../../DatabaseServices/Entity/Board";
|
|
|
|
|
import { Board, ObjectIdArr } from "../../DatabaseServices/Entity/Board";
|
|
|
|
|
import { Circle } from "../../DatabaseServices/Entity/Circle";
|
|
|
|
|
import { Entity } from "../../DatabaseServices/Entity/Entity";
|
|
|
|
|
import { ExtrudeSolid } from "../../DatabaseServices/Entity/Extrude";
|
|
|
|
@ -863,32 +863,30 @@ export class DrawDrillingTool extends Singleton
|
|
|
|
|
//保存排钻到板件
|
|
|
|
|
private SaveDrillToBoard(lBr: Board, iBr: Board, drs: ObjectId[][])
|
|
|
|
|
{
|
|
|
|
|
//使用ObjectIdArr类型 记录拆单名
|
|
|
|
|
let objectIdArrs: ObjectIdArr[] = [];
|
|
|
|
|
for (let ids of drs)
|
|
|
|
|
{
|
|
|
|
|
let objectIdArr: ObjectIdArr = [];
|
|
|
|
|
let g = new GroupRecord();
|
|
|
|
|
g.Name = this.m_Option.name;
|
|
|
|
|
app.Database.GroupTable.Append(g);
|
|
|
|
|
|
|
|
|
|
// 记录排钻的拆单组
|
|
|
|
|
let onlyRecordNameGroup = new GroupRecord();
|
|
|
|
|
onlyRecordNameGroup.Name = this.m_Option.name;
|
|
|
|
|
app.Database.GroupTable.Append(onlyRecordNameGroup);
|
|
|
|
|
|
|
|
|
|
for (let id of ids)
|
|
|
|
|
{
|
|
|
|
|
//后添加到 g组,防止Entity.GroupId使用onlyRecordNameGroup
|
|
|
|
|
onlyRecordNameGroup.Entitys.push(id);
|
|
|
|
|
g.Entitys.push(id);
|
|
|
|
|
(id.Object as Hole).DrillGroupId = onlyRecordNameGroup.Id;
|
|
|
|
|
objectIdArr.push(id);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
objectIdArr.Name = this.m_Option.name;
|
|
|
|
|
objectIdArrs.push(objectIdArr);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//分析结束,排钻存入板件或者原始板件
|
|
|
|
|
lBr = lBr.__OriginalEnt__ ?? lBr;
|
|
|
|
|
iBr = iBr.__OriginalEnt__ ?? iBr;
|
|
|
|
|
|
|
|
|
|
lBr.AppendDrillList(iBr.Id, drs);
|
|
|
|
|
iBr.AppendDrillList(lBr.Id, drs.slice());
|
|
|
|
|
lBr.AppendDrillList(iBr.Id, objectIdArrs);
|
|
|
|
|
iBr.AppendDrillList(lBr.Id, objectIdArrs.slice());
|
|
|
|
|
}
|
|
|
|
|
//分析通孔
|
|
|
|
|
private ParseThroughHoles(drills: ObjectId[][], refDrillList: ObjectId[][], woodPinss: ObjectId[][])
|
|
|
|
|