|
|
|
@ -9,7 +9,16 @@ export class Command_HighlightNode implements Command
|
|
|
|
|
{
|
|
|
|
|
async exec()
|
|
|
|
|
{
|
|
|
|
|
let ss = await app.Editor.GetSelection({ Msg: "选择需要亮显节点的实体:", UseSelect: true });
|
|
|
|
|
let ss = await app.Editor.GetSelection({
|
|
|
|
|
Msg: "选择需要亮显节点的实体:",
|
|
|
|
|
UseSelect: true,
|
|
|
|
|
Filter: {
|
|
|
|
|
filterFunction: (obj, ent) =>
|
|
|
|
|
{
|
|
|
|
|
return ent.Template?.Object !== undefined;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
if (ss.Status !== PromptStatus.OK) return;
|
|
|
|
|
let ents = ss.SelectSet.SelectEntityList;
|
|
|
|
|
|
|
|
|
@ -19,7 +28,12 @@ export class Command_HighlightNode implements Command
|
|
|
|
|
for (const en of ents)
|
|
|
|
|
{
|
|
|
|
|
if (entSet.has(en)) continue;
|
|
|
|
|
let temp = en.Template.Object as TemplateRecord;
|
|
|
|
|
let temp = en.Template?.Object as TemplateRecord;
|
|
|
|
|
if (!temp)
|
|
|
|
|
{
|
|
|
|
|
entSet.add(en);
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
for (let t of temp.Objects)
|
|
|
|
|
{
|
|
|
|
|
if (t && !t.IsErase)
|
|
|
|
@ -39,7 +53,16 @@ export class Command_HighlightNodeAndChilds implements Command
|
|
|
|
|
{
|
|
|
|
|
async exec()
|
|
|
|
|
{
|
|
|
|
|
let ss = await app.Editor.GetSelection({ Msg: "选择需要亮显节点和子层的实体:", UseSelect: true });
|
|
|
|
|
let ss = await app.Editor.GetSelection({
|
|
|
|
|
Msg: "选择需要亮显节点和子层的实体:",
|
|
|
|
|
UseSelect: true,
|
|
|
|
|
Filter: {
|
|
|
|
|
filterFunction: (obj, ent) =>
|
|
|
|
|
{
|
|
|
|
|
return ent.Template?.Object !== undefined;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
if (ss.Status !== PromptStatus.OK) return;
|
|
|
|
|
let ents = ss.SelectSet.SelectEntityList;
|
|
|
|
|
|
|
|
|
@ -49,12 +72,14 @@ export class Command_HighlightNodeAndChilds implements Command
|
|
|
|
|
for (const en of ents)
|
|
|
|
|
{
|
|
|
|
|
if (entSet.has(en)) continue;
|
|
|
|
|
let temp = en.Template.Object as TemplateRecord;
|
|
|
|
|
|
|
|
|
|
let treeNodes: TemplateRecord[] = [];
|
|
|
|
|
temp.Traverse((node) => { treeNodes.push(node); });
|
|
|
|
|
let temp = en.Template?.Object as TemplateRecord;
|
|
|
|
|
if (!temp)
|
|
|
|
|
{
|
|
|
|
|
entSet.add(en);
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
for (let tn of treeNodes)
|
|
|
|
|
temp.Traverse((tn) =>
|
|
|
|
|
{
|
|
|
|
|
for (let t of tn.Objects)
|
|
|
|
|
{
|
|
|
|
@ -64,7 +89,7 @@ export class Command_HighlightNodeAndChilds implements Command
|
|
|
|
|
entSet.add(en);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
app.Editor.SetSelection([...entSet]);
|
|
|
|
|
}
|
|
|
|
|