2014-11-26 1 views
0

QVector에서 QBitmap으로 일부 데이터를 변환하려하고 있습니다. 어떻게해야합니까? 나는 QPointF의 QVector를 가지고 있으며, 그 데이터를 QPixmap에서 다시 그리기로 변환하려고 시도하고있다. 나는 이런 식으로 뭔가를했습니다Qt에서 QPixmap으로 데이터 변환

QVector<QPointF> data; 
QPixmap pixMap; 

편집 할 수 있습니다. 왜 효과가없는거야?

QPainter *painter = new QPainter(&pixMap); 
for(int i = 1; i < data.last().x(); i++){ 
    painter->setPen(QPen(Qt::black, 2)); 
    painter->drawPolyline(this->data.data(), this->data.size()); 
} 
    delete painter; 
    setPixmap(pixMap); 
+0

당신이 필요 pixmap에 점을 그립니 까? –

+0

예 :) 정확하게 설명하지 못해 죄송합니다. – Shepherd

+0

@Shepherd'QPainter'를 보셨습니까? –

답변

0

당신은 단지 QPainter를 사용하여 픽스맵으로 그릴 수 있습니다 :

QPixmap pixmap(100,100); // a pixmap of size 100x100 pixels 
QPainter painter(&pixmap); 

// iterate over your points and draw them using the painter 

QPainter 문서는 QPainter를, 붓, 펜을 사용하여 물건을 그리는 방법에 대한 예제의 부하를 가지고 ...

+0

나는 그것을했다. 그러나 그것은 효과가 없었다, 왜? – Shepherd

+0

죄송합니다. 좋은 질문이 아닙니다. 작동하지 않은 것은 무엇입니까? 어떻게 작동하지 않았습니까? 컴파일러는 뭐라고 말 했나요? –

+0

QPixmap 상태가 완전히 QPainter 개체가 소멸 될 때까지 업데이트되지 않을 것을 유의하십시오. 이를 보장하는 가장 쉬운 방법은 QPainter (및 그 위에 호출 된 도면 명령)를 중괄호 안에 넣고 해당 범위를 벗어난 QPixmap을 선언하고 QPixmap을 끝까지 사용해야하는 것은 아닙니다. 범위 (즉, 닫는 중괄호 뒤) –