1
我試圖追蹤場景中的扇形的路徑。QGraphicsEllipseItem的形狀()不是繪畫路徑時的樣子
QGraphicsEllipseItem *sector = new QGraphicsEllipseItem;
sector->setSpanAngle(5*16); //the span angle here is 5 degrees
sector->setStartAngle(startAngle*16);
然後把這個放在qGraphicsScene
上,一切都很好。現在爲了碰撞檢測的目的,我使用QPainterPathStroker
。但作爲一個測試,我想結帳從這個項目shape()
用粗筆像這樣提請路徑...
QPen blackPen(Qt::black, 15); //Thick pen, just because
QPainterPath path = QPainterPath(sector->shape());
this->scene->addPath(path,blackPen);
什麼我期待一個部門的藍色輪廓與大約跨度角5度。相反,我得到一個奇怪的L形狀的東西。
Pic of what I'm trying to explain...
(忽略中間的橫線)
你可以看到該行業的虛線輪廓,用很厚的藍筆應該跟蹤破折號。我已經有一段時間了,但無濟於事。有解決方案嗎?
編輯:我想通了。我在QPainterPath
上使用closeSubpath()
。
如果你找到了解決方案,你應該提交它作爲答案,所以你的問題不留在未答覆的部分。 – sjwarner