我寫了一個程式,大約要畫三條曲線,每條曲線約有十萬個點,在Linux下在CPU一般為0%,但是在wind下面CPU一般為100%,而且根本就不能用,視窗一動就沒有回應,不知道是怎么回事我創建QPainterPath的代碼大致是這樣寫的(在函式BuildGrapherList中): painterPath[0].moveTo(0,pData[0][0]); painterPath[1].moveTo(0,pData[1][0]); for(int i=1;i<nDataSize;i++)//nDataSize大約為十萬 { painterPath[0].lineTo(i,pData[0]); painterPath[1].lineTo(i,pData[1]); }painterEvent中是這樣寫的tPainter.SetBrush(brush); tPainter.drawRect(0,yTrans+fOceanLevel[0]-fFaultWidth[0])*yScale,size().width(),fFaultWidth[0]*yScale); tPainter.setBrush(Qt::NoBrush); tPainter.drawPath(painterPath[0]); tPainter.drawpath(painterPath[1]); 源代碼
GraView.cpp (20 K) 下載次數:7
uj5u.com熱心網友回復:
樓主,這個問題是如何解決的?轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/167082.html
標籤:其他技術討論專區
