Форум: "Media";
Текущий архив: 2007.02.04;
Скачать: [xml.tar.bz2];
ВнизКак правильно использовать Canvas? Найти похожие ветки
← →
misyachniy © (2006-05-26 16:39) [0]Использую PaintBox.Canvas для отрисовки на нем измененяя сигнала поступающего в компьютер.
Если создать ситуацию когда мое окно не активно и перекрывается другими окнами, то после активирования моего окна, на тех местах где было перекрытие изображение не востанавливается отображение.
Остается только серый цвет формы.
Как корректно востанавливать изображение?
Или на чем другом нужно рисовать?
Спасибо.
← →
MBo © (2006-05-26 16:59) [1]рисуй в событии OnPaint
← →
misyachniy © (2006-05-29 12:26) [2]Я конечно же понимаю, что краткость сетра таланта ;-)
Поскольку по скольку мне приходится отрисовывать попиксельно, то скорость вывода довольно низкая. А при получении OnPaint мне нужно будет перерисовывать весь экран?
Как-то не правильно помоему.
← →
medved_68 © (2006-05-29 12:38) [3]Попробуй метод Refresh для формы запихни его OnActivate
← →
MBo © (2006-05-29 13:31) [4]>Поскольку по скольку мне приходится отрисовывать попиксельно, то скорость вывода довольно низкая. А при получении OnPaint мне нужно будет перерисовывать весь экран?
Рисуешь в Bitmap, а его по OnPaint отрисовываешь в PaintBox
← →
Vovan#1 (2006-06-02 00:22) [5]>Поскольку по скольку мне приходится отрисовывать попиксельно, то скорость вывода довольно низкая. А при получении OnPaint мне нужно будет перерисовывать весь экран?
В OnPaint отрисовывай только то, что указал Canvas.ClipRect (область, требующая перерисовки).
← →
homm © (2006-06-02 01:07) [6]2 misyachniy
> [3] medved_68 © (29.05.06 12:38)
> [5] Vovan#1 (02.06.06 00:22)
Эти 2 поста проигнарируй, человеки не понимают вопроса о котором говорят, истина в [4].
← →
Rial © (2006-06-02 03:52) [7]
> В OnPaint отрисовывай только то, что указал Canvas.ClipRect
> (область, требующая перерисовки).
Видимо, это какая то новая технология, доселе не изученная :)
Но спать надо было ложиться до этого сообщения ...
> Попробуй метод Refresh для формы запихни его OnActivate
Да ... это еще лучше.
Хоть бы не писали, не тратили ни свое, ни чужое время.
← →
Vovan#1 (2006-06-05 01:10) [8]2 homm:
Из MBo [4]:
>Рисуешь в Bitmap, а его по OnPaint отрисовываешь в PaintBox
Из Vovan#1 [5]
>В OnPaint отрисовывай только то, что указал Canvas.ClipRect (область, требующая перерисовки).
Эти приёмы можно эффективно объединить, например, рисуя не весь bitmap, но только часть его, указанную ClipRect.
2 Rial:
Да, тебе эту технологию надо бы изучить.
← →
homm © (2006-06-05 18:26) [9]
> Эти приёмы можно эффективно объединить, например, рисуя
> не весь bitmap, но только часть его, указанную ClipRect.
Уверен? Ты не думаеш что все равно системе придется еше раз по ClipRgn клипать? Двойная работа получется, а не эффективность.
← →
Vovan#1 (2006-06-05 20:55) [10]>Уверен? Ты не думаеш что все равно системе придется еше раз по ClipRgn клипать? Двойная работа получется, а не эффективность.
Уверен. Попробуй реализовать и так, и так, затем сравни скорости.
← →
homm © (2006-06-05 23:18) [11]
> [10] Vovan#1 (05.06.06 20:55)
Мы об одном и том-же говорим? О выводе именно битмапа на конву с клипом? Уверен что система сама эффективно определит реальную область заполнения и лишние пиксели на невидимость тестировать не будт. Но тем не менее сейчас проверю.
← →
homm © (2006-06-05 23:47) [12]
> Но тем не менее сейчас проверю.
Да Вы правы, но для данного случая вы не упомянули о буферизации, тобищ все равно на аопрос не ответили, тобиш [6] в силе.
← →
RzCoDer © (2006-06-07 13:11) [13]А мне интересно, как Canvas можно НЕ правильно испльзовать?
← →
antonn © (2006-06-07 13:13) [14]RzCoDer © (07.06.06 13:11) [13]
canvas.pixels[] в цикле:)
← →
homm © (2006-06-07 17:07) [15]
> canvas.pixels[] в цикле:)
=-O Как вспомню, что Pixels в VCL член класса канвы, так передергивает всего.
Страницы: 1 вся ветка
Форум: "Media";
Текущий архив: 2007.02.04;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.047 c