!1102 优化:拉手插入复合门板

pull/1102/MERGE
ZoeLeeFZ 4 years ago committed by ChenX
parent 2b49d553c6
commit aa5ae62ab6

@ -116,8 +116,11 @@ export class DrawLeftRightOpenDoor extends DrawDoorTool
colTemp.Name = "门板组";
colTemp.SplitType = TemplateSplitType.Z;
app.Database.TemplateTable.Append(colTemp);
this.AppendTemplateParam("ZKM", 0, "左开门", colTemp);
this.AppendTemplateParam("YKM", 0, "右开门", colTemp);
let key = "0-" + currentCol.toString();
let info = this.rowColIdMap.get(key);
this.AppendTemplateParam("ZKM", Number(info.openDir === DoorOpenDir.Left), "左开门", colTemp);
this.AppendTemplateParam("YKM", Number(info.openDir === DoorOpenDir.Right), "右开门", colTemp);
if (this.option.col === 1)
{

@ -117,8 +117,11 @@ export class DrawUpDownOpenDoor extends DrawDoorTool
rowTemp.Name = "门板组";
rowTemp.SplitType = TemplateSplitType.X;
app.Database.TemplateTable.Append(rowTemp);
this.AppendTemplateParam("SKM", 0, "上开门", rowTemp);
this.AppendTemplateParam("XKM", 0, "下开门", rowTemp);
let key = currentRow.toString() + "-0";
let info = this.rowColIdMap.get(key);
this.AppendTemplateParam("SKM", Number(info.openDir === DoorOpenDir.Top), "上开门", rowTemp);
this.AppendTemplateParam("XKM", Number(info.openDir === DoorOpenDir.Bottom), "下开门", rowTemp);
if (this.option.row === 1)
{

@ -648,10 +648,7 @@ export class TemplateManage extends React.Component<ITemplateManage, {}> {
let brRes = await app.Editor.GetSelection({
Msg: "选择绘制拉手的板件",
Filter: {
filterFunction: (o, e) =>
{
return e instanceof Board;
}
filterTypes: [Board, HardwareCompositeEntity]
}
});
@ -672,7 +669,7 @@ export class TemplateManage extends React.Component<ITemplateManage, {}> {
app.Editor.ModalManage.ToggleShow();
app.Editor.MaskManage.ShowMask();
};
private addHandleToDoor = async (door: Board, handleTemp: TemplateRecord) =>
private addHandleToDoor = async (door: Board | HardwareCompositeEntity, handleTemp: TemplateRecord) =>
{
const store = DoorStore.GetInstance() as DoorStore;
const isAuto = store.byOpenDir;
@ -682,8 +679,52 @@ export class TemplateManage extends React.Component<ITemplateManage, {}> {
let doorTemp = new TemplateVisualSpace().InitBaseParams();
(doorTemp as TemplateVisualSpace).IsVisible = false;
doorTemp.Name = "拉手根空间";
doorTemp.HParam.expr = door.Height;
doorTemp.LParam.expr = door.Width;
let thickness: number;
let openDir = BoardOpenDir.None;
if (door instanceof Board)
{
doorTemp.HParam.expr = door.Height;
doorTemp.LParam.expr = door.Width;
thickness = door.Thickness;
openDir = door.OpenDir;
}
else
{
if (door.Template)
{
let temp = door.Template.Object as TemplateRecord;
if (temp.Parent)
{
const tempSpace = temp.Parent.Object as TemplateRecord;
if (tempSpace.Name === "门板空间")
{
doorTemp.HParam.expr = temp.HParam.value;
doorTemp.LParam.expr = temp.LParam.value;
thickness = Number(temp.WParam.value) || 0;
let doorGroup = tempSpace.Parent.Object as TemplateRecord;
let zkmPar = doorGroup.GetParam("ZKM");
if (zkmPar)
{
openDir = zkmPar.value === 1 ? BoardOpenDir.Left : BoardOpenDir.Right;
}
else
{
let skmPar = doorGroup.GetParam("SKM");
if (skmPar)
openDir = skmPar.value === 1 ? BoardOpenDir.Up : BoardOpenDir.Down;
}
}
}
}
else
{
let size = door.BoundingBoxInOCS.getSize(new Vector3);
doorTemp.HParam.expr = size.z;
doorTemp.LParam.expr = size.x;
thickness = size.y;
}
}
doorTemp.WParam.expr = 1;
app.Database.TemplateTable.Append(doorTemp);
await doorTemp.UpdateTemplateTree();
@ -696,7 +737,7 @@ export class TemplateManage extends React.Component<ITemplateManage, {}> {
handleSpace.HParam.expr = "0";
handleSpace.LParam.expr = "0";
handleSpace.WParam.expr = "0";
handleSpace.PYParam.expr = - door.Thickness;
handleSpace.PYParam.expr = - thickness;
app.Database.TemplateTable.Append(handleSpace);
@ -709,8 +750,6 @@ export class TemplateManage extends React.Component<ITemplateManage, {}> {
let handleHorPos = doorStore.m_Option.handleHorPos;
let handleVerPos = doorStore.m_Option.handleVePos;
let openDir = door.OpenDir;
let zjExpr = option.horSpacing.toString();
let yjExpr = option.horSpacing.toString();

Loading…
Cancel
Save