优化:更多的时间切片,避免开图崩溃

pull/1668/head
ChenX 3 years ago
parent 3bda11e0b7
commit f77f42daf3

@ -591,6 +591,7 @@ export class Viewer
let i = 0;
down.progress = 0.1;
let brs: Board[] = [];
let pre = Date.now();
for (let index = 0; index < db.ModelSpace.Entitys.length; index++)
{
let en = db.ModelSpace.Entitys[index];
@ -598,12 +599,14 @@ export class Viewer
brs.push(en);
this._Scene.add(en.DrawObject);
i++;
if (i === 50)
let now = Date.now();
if (i === 50 || now - pre > 100)
{
down.progress = 0.1 + index / db.ModelSpace.Entitys.length;
await Sleep(1);
i = 0;
}
pre = now;
}
down.progress = 1;
@ -623,11 +626,13 @@ export class Viewer
{
if (!br.IsErase && br.Visible)
br.GetDrawObjectFromRenderType(RenderType.Physical);
if (i === 30)
let now = Date.now();
if (now - pre > 100 || i === 30)
{
await Sleep(1);
i = 0;
}
pre = now;
}
down.progressName = "";

Loading…
Cancel
Save