|
|
|
@ -370,7 +370,7 @@ export class TemplateManage extends React.Component<ITemplateManage, {}> {
|
|
|
|
|
{
|
|
|
|
|
kuGanStore.Upload();
|
|
|
|
|
const option = kuGanStore.option;
|
|
|
|
|
const { isHor, isDefault, leftDist, rightDist, depth, upDist, downDist } = option;
|
|
|
|
|
const { isHor, isDefault, leftDist, rightDist, depth, upDist, downDist, insertMode } = option;
|
|
|
|
|
const kuGanSpace = new TemplateRecord().InitBaseParams();
|
|
|
|
|
kuGanSpace.Name = "裤杆空间";
|
|
|
|
|
app.Database.TemplateTable.Append(kuGanSpace);
|
|
|
|
@ -396,12 +396,45 @@ export class TemplateManage extends React.Component<ITemplateManage, {}> {
|
|
|
|
|
kugan.HParam.expr = "";
|
|
|
|
|
kugan.PZParam.expr = "_H*0.5";
|
|
|
|
|
|
|
|
|
|
let count = option.count + 1;
|
|
|
|
|
if (leftDist && rightDist)
|
|
|
|
|
count = option.count - 1;
|
|
|
|
|
else if (leftDist || rightDist)
|
|
|
|
|
let drawCount: number; //绘制数量
|
|
|
|
|
let spacingCount: number; //相同间隔数量
|
|
|
|
|
|
|
|
|
|
if (insertMode === "0")
|
|
|
|
|
{
|
|
|
|
|
drawCount = option.count;
|
|
|
|
|
spacingCount = option.count + 1;
|
|
|
|
|
if (leftDist && rightDist)
|
|
|
|
|
spacingCount = option.count - 1;
|
|
|
|
|
else if (leftDist || rightDist)
|
|
|
|
|
{
|
|
|
|
|
spacingCount = option.count;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else if (insertMode === "1")
|
|
|
|
|
{
|
|
|
|
|
count = option.count;
|
|
|
|
|
const minSpacing = option.minSpacing;
|
|
|
|
|
if (minSpacing <= 0)
|
|
|
|
|
{
|
|
|
|
|
AppToaster.show({
|
|
|
|
|
message: "最小间隔值要大于零",
|
|
|
|
|
timeout: 5000,
|
|
|
|
|
intent: Intent.WARNING,
|
|
|
|
|
});
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
let L = isHor ? space.Size.y : space.Size.x;
|
|
|
|
|
drawCount = Math.floor(L / minSpacing) - 1;
|
|
|
|
|
spacingCount = drawCount + 1;
|
|
|
|
|
if (leftDist && rightDist)
|
|
|
|
|
{
|
|
|
|
|
drawCount = Math.ceil((L - leftDist - rightDist) / minSpacing) + ((L - leftDist - rightDist) % minSpacing === 0 ? 1 : 0);
|
|
|
|
|
spacingCount = drawCount - 1;
|
|
|
|
|
}
|
|
|
|
|
else if (leftDist || rightDist)
|
|
|
|
|
{
|
|
|
|
|
drawCount = Math.floor((L - (leftDist ? leftDist : rightDist)) / minSpacing);
|
|
|
|
|
spacingCount = drawCount;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
this.SetRootCabName(kugan, space);
|
|
|
|
|
|
|
|
|
@ -413,7 +446,7 @@ export class TemplateManage extends React.Component<ITemplateManage, {}> {
|
|
|
|
|
else if (downDist)
|
|
|
|
|
udExpr = downDist.toString();
|
|
|
|
|
}
|
|
|
|
|
for (let i = 0; i < option.count; i++)
|
|
|
|
|
for (let i = 0; i < drawCount; i++)
|
|
|
|
|
{
|
|
|
|
|
let kg = app.Database.WblockCloneObejcts([kugan], app.Database.TemplateTable, new Map(), DuplicateRecordCloning.Ignore)[0] as TemplateRecord;
|
|
|
|
|
kg.PYParam.expr = isDefault ? "-_BH*0.5" : -depth;
|
|
|
|
@ -425,7 +458,7 @@ export class TemplateManage extends React.Component<ITemplateManage, {}> {
|
|
|
|
|
{
|
|
|
|
|
let expr = leftDist ? `${leftDist}+` : "";
|
|
|
|
|
expr += (leftDist || rightDist) ? (`(_L${leftDist ? ("-(" + leftDist + ")") : ""}${rightDist ? ("-(" + rightDist + ")") : ""})`) : "_L";
|
|
|
|
|
expr += `/${count}*${leftDist ? i : (i + 1)}`;
|
|
|
|
|
expr += `/${spacingCount}*${leftDist ? i : (i + 1)}`;
|
|
|
|
|
kg.PXParam.expr = expr;
|
|
|
|
|
}
|
|
|
|
|
if (udExpr)
|
|
|
|
|