прямоугольник, треугольник, эллипс. заливка цветом при наложении объектов друг на друга. - страница 3

 
Nikolai Semko:

Из ваших слов, Павел, я пока могу сделать только один вывод. Вы не понимаете, что такое BitMap и суть класса CCanvas. Canvas в переводе с английского - холст. Т.е. вы формируете в пределах своего окна холст, на котором можете нарисовать что угодно, и при этом можете даже выключить сам график, или этот график рисовать уже в канвасе. У вас есть доступ к любой точке, вы можете формировать любые фигуры с любой заливкой, в том числе градиентной. Даже, если задаться целью, вы можете с помощью канваса создать видео плеер в МТ, графический редактор сложности фотошопа, 3D игру, да хоть виртуальную ОС написать. А вы говорите - не подходит. Нет такой графической задачи, которой нельзя было бы решить в канвасе. Другое дело скорость. Но, я думаю, вы также недооцениваете скорость канваса. Тем более если у вас 1000 объектов, - только канвас, т.к. канвас это один объект, на котором можно нарисовать сколько угодно фигур, а не так как при использовании обычных встроенных в МТ5 фигур, которые представляет каждая из себя объект. А если бы оценивали быстродействие рисования, то поняли бы что формирование объекта достаточно ресурсоёмкое дело. Прикреплю один пример - скрипт в виде исполняемого файла на МТ5 и можете оценить скорость карваса. В примере рисуются сглаженные закрашенные круги в случайном порядке и случайного цвета и плавно меняют свой размер. Попробуйте при запуске этого скрипта, поставьте задержку между кадрами 0 миллисекунд и количество окружностей 1000. Вы даже задержки не увидите. Я увидел задержку между кадрами где то в 0.2-0.3 секунды при количестве окружностей  10 000. Т.е. в каждом кадре прорисовываются все 10000 окружностей с радиусами от 20 до 200 (по умолчанию) и накладываются друг на друга, причем формирование окружности и ее закрашивание происходит попиксельно. 


понял спасибо, признаю про быстродействие заблуждался, обязательно реализую свою задачу через канвас, а там видно будет, что из этого выйдет.

 

почему не заливает цветом фигуры даже если ставишь галочку "как фон"

Причина обращения: