|
|
|
@ -98,12 +98,18 @@ export class Command_ExportData implements Command
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export function Entitys2Data(ents: Entity[], convertHole = false)
|
|
|
|
|
type Data = {
|
|
|
|
|
Entitys: any[];
|
|
|
|
|
Materials: Object[];
|
|
|
|
|
Url?: string;
|
|
|
|
|
};
|
|
|
|
|
export function Entitys2Data(ents: Entity[], convertHole = false): Data
|
|
|
|
|
{
|
|
|
|
|
let d: { Entitys: any[]; Materials: Object[]; Url?: string; } = { Entitys: [], Materials: [] };
|
|
|
|
|
let d: Data = { Entitys: [], Materials: [] };
|
|
|
|
|
let materials: Set<ObjectId> = new Set();
|
|
|
|
|
for (let e of ents)
|
|
|
|
|
{
|
|
|
|
|
let index = d.Entitys.length;
|
|
|
|
|
if (e instanceof Board)
|
|
|
|
|
{
|
|
|
|
|
d.Entitys.push(ConvertBoard2Data(e));
|
|
|
|
@ -120,7 +126,9 @@ export function Entitys2Data(ents: Entity[], convertHole = false)
|
|
|
|
|
d.Entitys.push(...CompositeEntity2Data(e));
|
|
|
|
|
else
|
|
|
|
|
continue;
|
|
|
|
|
arrayLast(d.Entitys).Visible = e.Visible;
|
|
|
|
|
|
|
|
|
|
for (; index < d.Entitys.length; index++)
|
|
|
|
|
d.Entitys[index].Visible = e.Visible;
|
|
|
|
|
}
|
|
|
|
|
if (materials.size > 0)
|
|
|
|
|
{
|
|
|
|
|