Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум на CrossPlatform.RU _ Qt Система рисования. Печать _ QGraphicsView область отображения

Автор: FantasyOr 12.10.2010, 14:47

Здравствуйте.
Простите за глупый вопрос,
хотел воспользоваться - QList<QGraphicsItem *> items ( const QRect & rect, Qt::ItemSelectionMode mode = Qt::IntersectsItemShape ) const, чтоб узнать какие объекты видны пользователю. Но не смог узнать какой участок сцены отображается в QGraphicsView, единственная функция возвращающая прямоугольник это "http://doc.crossplatform.ru/qt/4.6.x/qgraphicsview.html#sceneRect-prop" и то она делает не то? что мне нужно.
подскажите пожалуйста, понимаю, что это как 2х2=11(в 3-чной системе счисления) , но я просто еще не сталкивался с этим.
Спасибо.

Автор: FantasyOr 13.10.2010, 13:02

нашел, может кому понадобится:

    
QRect rectView = view.viewport()->geometry();
QPolygonF poly = view.mapToScene(rectView);
QList<QGraphicsItem *> itms = scene.items(poly);


в itms будут лежать видимые пользователю объекты

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)