[GELÖST] Fehler beim Rand malen von QGraphicsPolygonItem
Verfasst: 14. Januar 2010 10:09
Hallo, ich habe folgendes Problem ,
ich möchte beliebige geometrische Formen mit Hilfe von QGraphicsItems in einer GraphicsView so überlagern, das der Inhalt der geometrischen Figuren exakt gefüllt ist :
Folgende Figuren ...

werden mit QGraphicsPolygonItem überlagert :

Nahansicht :
... wie man sieht, paßt das Polygon exakt auf den geometrischen Untergrund. Nun will ich aber NUR die grüne Fläche haben, ich möchte den Rand ausblenden, also setze ich die Farbe für den Rand des Polygon auf Alphwert = 0 für vollständig transparent :

im Ergebnis sieht man nun aber, daß NUR die untere und die rechte Seite Transparent gesetzt wird, aber nicht die linke und die obere Seite. Ganz im Gegenteil, es wird einfach der linke und er obere Rand mit der Brushfarbe eingefärbt. Somit läßt sich das Polygon nicht mal mehr innerhalb der zugrundeliegenden geometrischen Form vermitteln ...

Ist das ein BUG oder muß ich noch irgendwas mit dem Polygon machen ? Wie gesagt, ich setze die Randfarbe nur auf transparent, ich nehme den Rand ja nicht weg. Er ist ja noch da !
Qt-Version 4.4.3 X11
FreeBSD 7.1
Xorg 7.3_2
Also, muß ich, nachdem ich die Randfarbe auf transparent gesetzt habe noch etwas mit dem Polygon machen, damit er wirklich den kompletten Rand transparent macht ? Oder ist es ein Fehler in den grafischen Routinen in der Version und mit einem neueren QT tritt dies nicht mehr auf ?
mfg
MB
p.s.:
Es ist übrigends egal, ob das Polygon geschlossen ist oder nicht. Ich habe extra mit isClosed() geprüft. Außerdem habe ich die Eckpunkte mit in's Polygon eingebunden (sieht man im Screenshot, das die da fehlen) und das Verhalten ist dasselbe
ich möchte beliebige geometrische Formen mit Hilfe von QGraphicsItems in einer GraphicsView so überlagern, das der Inhalt der geometrischen Figuren exakt gefüllt ist :
Folgende Figuren ...

werden mit QGraphicsPolygonItem überlagert :

Nahansicht :
... wie man sieht, paßt das Polygon exakt auf den geometrischen Untergrund. Nun will ich aber NUR die grüne Fläche haben, ich möchte den Rand ausblenden, also setze ich die Farbe für den Rand des Polygon auf Alphwert = 0 für vollständig transparent :

im Ergebnis sieht man nun aber, daß NUR die untere und die rechte Seite Transparent gesetzt wird, aber nicht die linke und die obere Seite. Ganz im Gegenteil, es wird einfach der linke und er obere Rand mit der Brushfarbe eingefärbt. Somit läßt sich das Polygon nicht mal mehr innerhalb der zugrundeliegenden geometrischen Form vermitteln ...

Ist das ein BUG oder muß ich noch irgendwas mit dem Polygon machen ? Wie gesagt, ich setze die Randfarbe nur auf transparent, ich nehme den Rand ja nicht weg. Er ist ja noch da !
Qt-Version 4.4.3 X11
FreeBSD 7.1
Xorg 7.3_2
Also, muß ich, nachdem ich die Randfarbe auf transparent gesetzt habe noch etwas mit dem Polygon machen, damit er wirklich den kompletten Rand transparent macht ? Oder ist es ein Fehler in den grafischen Routinen in der Version und mit einem neueren QT tritt dies nicht mehr auf ?
mfg
MB
p.s.:
Es ist übrigends egal, ob das Polygon geschlossen ist oder nicht. Ich habe extra mit isClosed() geprüft. Außerdem habe ich die Eckpunkte mit in's Polygon eingebunden (sieht man im Screenshot, das die da fehlen) und das Verhalten ist dasselbe


