Performance Question.

Edward's picture

Hello All,
I have more serious problem about performance.

points count of each solid : 1000 more.
solid count in one window : 1500 more.

This is my source code.
-----
double tolerance = 0.00001;

Standard_Boolean isSolid = Standard_True;
Standard_Boolean isRuled = Standard_True;

BRepOffsetAPI_ThruSections TS(isSolid, isRuled, tolerance);

std::vector> pPointList;
pPointList.clear();

SetPointList(theFileName, &pPointList);
int nLCount = pPointList.size();

std::vector pEachPoints;

for ( int nR = 0 ; nR < 150 ; nR++ )
{
for ( int nC = 0 ; nC < 10 ; nC++ )
{
for ( int nIndex = 0 ; nIndex < nLCount ; nIndex++ )
{
pEachPoints = pPointList[nIndex];

BRepBuilderAPI_MakeWire AA;
for ( int nPIndex = 0 ; nPIndex < pEachPoints.size() - 1 ; nPIndex++ )
{
TopoDS_Edge E = BRepBuilderAPI_MakeEdge( pEachPoints[nPIndex], pEachPoints[nPIndex+1] );
AA.Add(E);
}
TopoDS_Wire W = AA;
TS.AddWire(W);
}

TS.Build();

TopoDS_Shape aShape = TS.Shape();

aShape.Closed(true);
if (( nR == 150 ) && ( nC == 10 ))
myAISContext()->Display(new AIS_Shape(aShape), true);
else
myAISContext()->Display(new AIS_Shape(aShape), false);
}
}
myAISContext()->UpdateCurrentViewer();
-----

This need very long times for visualization.
How can I do to solve this problem??

Thanks,
Have a good day..

www.opencascade.com

Copyright 2011-2019
OPEN CASCADE SAS
Contact us