![]() |
|
|
![]()
|
|
| Moby |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 117 Регистрация: 6.10.2008 Репутация: нет Всего: нет |
Всем привет!
В задаче надо обязательно использовать два QPixmapa, разных размеров. Маленький выводится поверх большого, то есть рисуется вторым по очереди. Так же происходит некоторое движение маленького pixmapa в границах большого. Теперь чуть подробнее. Вот есть у меня pixmap, размер 500х500, на котором нужный фон\рисунок, что угодно. Есть второй pixmap, размером меньше 200х200 на котором я нарисовал, к примеру, круг. Заливка пиксмапа однородная, то есть может быть либо белой либо черной. Если я выведу этот пиксмап поверх большого, то есть буду рисовать вторым по очереди, то кроме круга еще будет виден фон маленького pixmap'a. А этого не надо. Ох как тупо описал. В общем, надо что бы при выводе второго пиксмапа выводился только круг, ну или только то что там нарисовано. Использовать один пиксмап и в нем же рисовать круг и перемещать не поможет, ибо рисуется очень много объектов и перерисовывать их каждую секунду тормозит систему. Вот я решил рисовать сперва на пиксмапе а потом его двигать. Надеюсь на вашу помощь. |
|||
|
||||
| SABROG |
|
|||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 81 Всего: 91 |
На картинке с кругом должен быть alpha канал или хотя бы однородный уникальный цвет фона, который не используется в самом круге, но в этом случае еще доп.движения надо будет делат.
Это сообщение отредактировал(а) SABROG - 11.5.2009, 20:44 |
|||
|
||||
| ecspertiza |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 763 Регистрация: 3.11.2008 Где: г.Смоленск Репутация: 4 Всего: 5 |
Ну а если ты решил какую то анимацию делать то загляни в сторону соответствующих библиотек, SDL например http://www.libsdl.org/
|
|||
|
||||
| Moby |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 117 Регистрация: 6.10.2008 Репутация: нет Всего: нет |
ecspertiza, слово анимация к этой простой задачей не подойдет, мне кажется движение пиксмапа по заданной траектории сложно назвать анимацией. Но за ссылку спасибо, всегда интересно о что то новом узнать.
SABROG, да, фон однородный и цвет этот не присутствует больше нигде. А как именно использовать альфа? Это сообщение отредактировал(а) Moby - 12.5.2009, 19:02 |
|||
|
||||
| SABROG |
|
||||||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 81 Всего: 91 |
cоздать картинку с альфа-каналом:
С готовой картинкой без прозрачности: QBitmap QPixmap::createHeuristicMask ( bool clipTight = true ) const // берется левый верхний цвет (top left/0,0) QBitmap QPixmap::createMaskFromColor ( const QColor & maskColor, Qt::MaskMode mode ) const //выборочный цвет делается прозрачным или непрозрачным в зависимости от MaskMode
P.S.: могу ошибаться |
||||||
|
|||||||
| Moby |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 117 Регистрация: 6.10.2008 Репутация: нет Всего: нет |
SABROG, спасибо огромное, какой раз уже помогаешь. Отблагодарить бы пивком тебя.
|
|||
|
||||
![]()
|
| Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |