Russian Qt Forum

Qt => 2D и 3D графика => Тема начата: manarch от Апрель 15, 2010, 06:47



Название: Масштабирование положения объектов
Отправлено: manarch от Апрель 15, 2010, 06:47
Подскажите если кто знает как сделать масштабирование положения итемов в сцене, при этом чтобы не изменялись размеры смих итемов. метод scale() масштабирует ВСЕ, а мне нужно чтобы только чтобы координаты позиций элементов.


Название: Re: Масштабирование положения объектов
Отправлено: GreatSnake от Апрель 15, 2010, 08:10
Перегрузи метод paint() элемента
Код
C++ (Qt)
void YourGraphicsItem::paint( QPainter* p, const QStyleOptionGraphicsItem* option, QWidget* w )
{
QMatrix wm = p->worldMatrix();
 
p->setWorldMatrix( QMatrix() );
       QRectF rect( boundingRect() );
       rect.moveTo( QPointF( wm.dx(), wm.dy() ) );
p->drawRect( rect );
p->setWorldMatrix( wm );
}