2009-06-09 1 views
1

addRect ... then addLine ...을 QGraphicsScene에 추가하면 직선 위에 선이 그려지는 것을 기대할 수 있습니다. Qt 4.4.3에서 mac ppc 10.4.11, 일부 행은 아래의 테스트 케이스에 없습니다. 나는 이것이 Qt/mac lib/그래픽 카드 상호 작용 (버전 염병) 이니 상상할 수 있습니다. "깨끗합니다 ..."라고 말할 수있는 사람이라면 누구나 감사 할 것입니다.
감사합니다, 환호에서Qt4 QGraphicsScene mac ppc 10.4 렌더링 버그, rects 나중에 줄을 숨기시겠습니까?

// QGraphicsScene mac rendering bug: some addLines are hidden by previous addRects 
    // C: 150 line is hidden under most rects, others ok 
    // pyqt: other lines are hidden 
// qt-mac-opensource-src-4.4.3 PyQt-mac-gpl-4.4.4 macosx 10.4.11, ppc, GEForce2 mx 
// [email protected] 9jun 

#include <cmath> 
#include <QtGui> 

int main(int argc, char* argv[]) 
{ 
    qDebug() << "qVersion:" << qVersion(); 
    QApplication app(argc, argv); 
    int Size = 10; // changes what's hidden 
    int x0 = -500, y0 = -500, x1 = 500, y1 = 500; 
    QRectF scenerect(x0, y0, x1, y1); 
    QGraphicsScene* scene = new QGraphicsScene(scenerect); 
    QGraphicsView* view = new QGraphicsView(scene); 
    view->centerOn(100, 100); // ? 

    for(int j = x0/2; j < x1/2; j += Size){ 
    for(int k = y0/2; k < y1/2; k += Size){ 
     scene->addRect(j, k, Size-1, Size-1, Qt::NoPen, QBrush("palegreen")); 
    } 
    } 
    for(int angle = 0; angle < 180; angle += 30){ 
     float c = cos(angle * M_PI/180) * x1; 
     float s = sin(angle * M_PI/180) * y1; 
     scene->addLine(-c, -s, c, s, QPen("black")); 
    } 

    view->show(); 
    return app.exec(); 
} 

답변

0

: 데이비드 Boddie trolltech.com>
제목 : 재 : 재 : QGraphicsScene addLine는, addRect는 Mac에서 Qt는 4.4.3에 스크램블 순서를 그려?
뉴스 그룹 : gmane.comp.python.pyqt-pykde는
날짜 : 2009-06-09 그리니치 표준시 14시 41분 6초

2009 화 6월 9일 영국 서머 타임 10시 41분 37초에, 데니스는 썼다 :

버그 : 일부 addLines이 다르게 C와 PyQt는

에, 4.4.3 + 맥 너무 Qt는에 이전 addRects에 의해 숨겨져있는 것은

나는 객체가 보장되어 인출되는 순서를 생각하지 않는다 해당 광고 주문의 순서와 같습니다. 만들어진.

이것은 드로잉 순서가 임의적임을 의미하므로 불행합니다. 개체의 Z 값을 설정하여 내가 예상 한대로 순서로 그려지는 경향이 있습니다.

데이빗

관련 문제