Hallo Zusammen,
gibt es eigentlich eine einfache Lösung für das "boundingRect" eines einfachen Vectors (Linie).
Derzeit ziehe ich immer das entsprechende Rechteck, welches die Linie bedeckt, in der Routine an.
Optimal ist das nur für die 90° Linien. Diagonale Linien werden leicht oversized verarbeitet. Ist das normal ?
Edit: hier kann man es nachlesen....
http://doc.qt.nokia.com/latest/qrectf.html
Gruss R.
(gelöst) QT 4.x boundingRect für einen Vektor ?
(gelöst) QT 4.x boundingRect für einen Vektor ?
Zuletzt geändert von Ritchie am 20. Januar 2011 09:09, insgesamt 2-mal geändert.
Code: Alles auswählen
QRectF Linien::boundingRect() const
{
QRectF SizeOfComponent;
SizeOfComponent.setRect( m_XPos1,
m_YPos1,
m_XPos2,
m_YPos2);
return SizeOfComponent;
}
Gruss R.
Keine Ahnung auf was du hinaus willst.
Wenn du das kleinste boundingRect() zu einer Linie haben willst, die möglich ist, gib den Winkel mit an.
Wenn du schnell herausfinden willst, ob eine Punkt in der Nähe einer Linie ist, verwende dein boundingRect() und die distance.
Ansonsten nimm QPainterPath damit kann gut beliebige Überschneidungen feststellen.
Wenn du das kleinste boundingRect() zu einer Linie haben willst, die möglich ist, gib den Winkel mit an.
Wenn du schnell herausfinden willst, ob eine Punkt in der Nähe einer Linie ist, verwende dein boundingRect() und die distance.
Ansonsten nimm QPainterPath damit kann gut beliebige Überschneidungen feststellen.