Название: Копирование фрагмента изображения Отправлено: fuCtor от Июль 04, 2009, 15:12 Необходимо скопировать фрагмент ранее отрисованного изображения (буфера) в новое изображение при этом со смещение. Можно ли это сделать не используя QPainter? А то в информации по QImage не нашел чтото нужных методов.
Название: Re: Копирование фрагмента изображения Отправлено: Rcus от Июль 04, 2009, 15:26 QImage::copy/QPixmap::copy для прямоугольных фрагментов, иначе все-таки нужно использовать QPainter с setClipping
Название: Re: Копирование фрагмента изображения Отправлено: fuCtor от Июль 04, 2009, 16:19 (http://s3.amazonaws.com/floomby/7_4_2009/1b9rZCPBbE2lY0jSR1jaA.jpg)
Вот примерно так надо сдвигать картинку. Делал так: Код
Все равно не получалось. А QPainter когда использовал, то ругался он что только один одновременно может использоваться. Название: Re: Копирование фрагмента изображения Отправлено: Rcus от Июль 04, 2009, 16:29 Этот код выглядит настолько неправильно что я даже не знаю что ответить. Надо вернуться к постановке: что вы имеете ввиду под буфером? И подробное описание задачи впрочем тоже не помешает
Название: Re: Копирование фрагмента изображения Отправлено: fuCtor от Июль 04, 2009, 17:02 Есть некоторые данные, которые отрисовываются в QImage (буфер) и потом выводятся на QWidget. При нажатии кнопки нужно сдвинуть изображение и отрисовать те фрагменты которых ранее не было видно, чтоб не перериовывать полностью все изображение.
Вот тут и возникает задача сдвига, создавать QPainter и двигать им, или еще какие-либо методы. Отрисовка в буфер (рендер) и собственно вывод ничем кроме буфера не связаны. Название: Re: Копирование фрагмента изображения Отправлено: fuCtor от Июль 04, 2009, 17:42 Решил, через QPainter.
Название: Re: Копирование фрагмента изображения Отправлено: fuCtor от Февраль 12, 2010, 13:24 Возвращаясь к старому вопросу, можно ли избежать вот таких конструкций, для сдвига изображения на CX и CY:
Код Как вариант использовать платформо зависимый код, но крайне не хочется. Название: Re: Копирование фрагмента изображения Отправлено: Kolobok от Февраль 12, 2010, 22:44 QPainter::translate
QPainter::setTransform Название: Re: Копирование фрагмента изображения Отправлено: fuCtor от Февраль 13, 2010, 10:39 QPainter::translate QPainter::setTransform Малость уточню вопрос: как с меньшими накладными расходами сдвинуть фрагмент изображения. Сейчас получаю копию фрагмента изображения и отрисовываю сам на себя. Этот процесс в среднем занимает 5 -11 мс в зависимости от размера копируемого фрагмента, что довольно накладно. |