|
|
@ -9,7 +9,10 @@ import { ExtrudeSolid, ExtureContour } from "../../DatabaseServices/Entity/Extru
|
|
|
|
import { Polyline } from "../../DatabaseServices/Entity/Polyline";
|
|
|
|
import { Polyline } from "../../DatabaseServices/Entity/Polyline";
|
|
|
|
import { Region } from "../../DatabaseServices/Entity/Region";
|
|
|
|
import { Region } from "../../DatabaseServices/Entity/Region";
|
|
|
|
import { PromptStatus } from "../../Editor/PromptResult";
|
|
|
|
import { PromptStatus } from "../../Editor/PromptResult";
|
|
|
|
|
|
|
|
import { SelectSetBase } from "../../Editor/SelectBase";
|
|
|
|
|
|
|
|
import { SelectSet } from "../../Editor/SelectSet";
|
|
|
|
import { isParallelTo, MoveMatrix } from "../../Geometry/GeUtils";
|
|
|
|
import { isParallelTo, MoveMatrix } from "../../Geometry/GeUtils";
|
|
|
|
|
|
|
|
import { LastExtractBoardContour } from "../../UI/Components/Board/LastExtractBoardContour";
|
|
|
|
import { Ellipse } from './../../DatabaseServices/Entity/Ellipse';
|
|
|
|
import { Ellipse } from './../../DatabaseServices/Entity/Ellipse';
|
|
|
|
import { Spline } from './../../DatabaseServices/Spline';
|
|
|
|
import { Spline } from './../../DatabaseServices/Spline';
|
|
|
|
|
|
|
|
|
|
|
@ -72,15 +75,29 @@ export async function SelectExtrudeContour(selectInside = false, useExtrude = fa
|
|
|
|
useCurves?: (Curve | Region)[];
|
|
|
|
useCurves?: (Curve | Region)[];
|
|
|
|
}>
|
|
|
|
}>
|
|
|
|
{
|
|
|
|
{
|
|
|
|
let Msg = useExtrude ? "请选择(拉伸实体,面域或曲线):" : "请选择(面域或曲线):";
|
|
|
|
let Msg = useExtrude ? "请选择(拉伸实体,面域或曲线)" : "请选择(面域或曲线)";
|
|
|
|
let filterTypes = useExtrude ? [Region, ExtrudeSolid, Curve] : [Region, Curve];
|
|
|
|
let filterTypes = useExtrude ? [Region, ExtrudeSolid, Curve] : [Region, Curve];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
let allowNone = LastExtractBoardContour.Contour?.IsErase === false;
|
|
|
|
|
|
|
|
if (allowNone) Msg += "<空格使用提取的轮廓>";
|
|
|
|
|
|
|
|
Msg += ":";
|
|
|
|
|
|
|
|
|
|
|
|
let ssRes = await app.Editor.GetSelection({
|
|
|
|
let ssRes = await app.Editor.GetSelection({
|
|
|
|
Msg,
|
|
|
|
Msg,
|
|
|
|
Filter: { filterTypes },
|
|
|
|
Filter: { filterTypes },
|
|
|
|
|
|
|
|
AllowNone: allowNone,
|
|
|
|
Once: true
|
|
|
|
Once: true
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (ssRes.Status === PromptStatus.None)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
ssRes.Status = PromptStatus.OK;
|
|
|
|
|
|
|
|
ssRes.SelectSet = new SelectSet();
|
|
|
|
|
|
|
|
let ss = new SelectSetBase(app.Viewer);
|
|
|
|
|
|
|
|
ss._SelectList.add(LastExtractBoardContour.Contour.DrawObject);
|
|
|
|
|
|
|
|
ssRes.SelectSet.AddSelect(ss);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if (ssRes.Status !== PromptStatus.OK)
|
|
|
|
if (ssRes.Status !== PromptStatus.OK)
|
|
|
|
return {};
|
|
|
|
return {};
|
|
|
|
|
|
|
|
|
|
|
|