Обсуждение статьи "Изучаем класс CCanvas. Сглаживание и тени"

 

Опубликована статья Изучаем класс CCanvas. Сглаживание и тени:

Алгоритм сглаживания класса CCanvas — основа всех построений, в которых используется сглаживание. В статье рассказано о том, как работает этот алгоритм, приведены примеры визуализации его работы. Кроме того, рассмотрено рисование теней графических объектов и разработан подробный алгоритм отрисовки тени на канвасе. Для расчетов применена библиотека численного анализа ALGLIB.

Думаю, что одной из задач, которые решаются при рисовании с помощью класса CCanvas — это отображение различных динамических эффектов. Например, реализация графических построений с применением сглаживания — такие сглаженные построения приобретают более привлекательный вид. Или рисование нового стиля отображения линии индикатора — сплайн. А может, это будет рисование динамического индикатора в отдельном окне — что-то похожее на рисование частотной характеристики на осциллографе. В любом случае рисование открывает новые горизонты применения в своих разработках.


3. Тень объекта

Рисование тени придает графическим объектам более мягкие очертания контура. При этом возникает небольшой эффект объема — графические объекты визуально перестают быть плоскими. К тому же тени обладают очень интересным и полезным свойством — тени объектов, как правило, полупрозрачны, и при наложении графики с тенями создается дополнительное ощущение объема.

3.1. Виды тени

Ниже представлены самые распространенные виды тени:

Рис. 4. Виды теней

Рис. 4. Виды теней

Автор: Karputov Vladimir

 

На удивление хорошая статья получилась, поздравляю.

Картинки очень наглядные.

 
Andrey Khatimlianskii:

На удивление хорошая статья получилась, поздравляю.

Картинки очень наглядные.

Почему на удивление?

Статья хорошая, но вот применение теней практического применения в трейдинге практически не имеет.

Владимир, ну кода же Вы порадуете нас классами для рисования графики (диаграмм, линейных графиков и т.п., как в excel'е в общем)? Если кто и сможет их запелить, то только Вы.

 

Статья классная, канвас замечательная вещь.

Можно, кстати, просто взять BMP ресурс с нужным альфа каналом для нужного вида тени (хоть тройная волна) и просто бахать массив пикселов (можно растянуть фрагмент до нужных размеров).

Но предложенный мной вариант тени подойдет только для прямоугольных областей.

 

Пример: взял прозрачное PNG изображение из онлайн коллекции теней для сайта:

Переводим его в BMP с альфа каналом, программно режем его на 9 частей и можем натягивать на бокс любого размера, вот что вышло (правда пришлось заморочиться с расчетом прозрачности объектов лежащих в канвасе друг на друге):

 

 
Vasiliy Sokolov:

Почему на удивление?

Это личное, не обращайте внимания  )

Мне не очень нравится стиль изложения Владимира, немного занудный

А тут получилось вполне живо.


Vasiliy Sokolov:

Статья хорошая, но вот применение теней практического применения в трейдинге практически не имеет.

Владимир, ну кода же Вы порадуете нас классами для рисования графики (диаграмм, линейных графиков и т.п., как в excel'е в общем)? Если кто и сможет их запелить, то только Вы.

А какое может быть практическое применение графики в трейдинге?

Многие и про непрактичность трендовых линий говорят, не то что каких-то линейных графиков или теней.

А самое близкое к практике - покупка и продажа, а для них можно сделать кнопки. Так вот они с помощью теней могут быть красивее ;)

 
Igor Volodin:

Пример: взял прозрачное PNG изображение из онлайн коллекции теней для сайта:

Переводим его в BMP с альфа каналом

OFF: вот отличная тема для 'видеоподсказки от Барабашки' - как прозрачный PNG перегнать в BMP32. Тема актуальна сугубо для MQL-кодеров (слава МетаКвотам), а Владимир как раз специализируется на MQL-графике. Есть несколько вариантов, можно сделать несколько роликов или 1 сводный
 
Alexander Puzanov:
OFF: вот отличная тема для 'видеоподсказки от Барабашки' - как прозрачный PNG перегнать в BMP32. Тема актуальна сугубо для MQL-кодеров (слава МетаКвотам), а Владимир как раз специализируется на MQL-графике. Есть несколько вариантов, можно сделать несколько роликов или 1 сводный

Есть у меня только один способ конвертации *.png 32 бита с прозрачностью в *.bmp с прозрачностью. Делается с помощью махонькой программы AlphaConv.exe, автор Adam Najmanowicz.

 
Karputov Vladimir:

Есть у меня только один способ конвертации *.png 32 бита с прозрачностью в *.bmp с прозрачностью. Делается с помощью махонькой программы AlphaConv.exe, автор Adam Najmanowicz.

Я пробовал где-то с год назад её и др варианты - с моими исходными картиками из всех вариантов сработал только Фотошоп
 
Alexander Puzanov:
Я пробовал где-то с год назад её и др варианты - с моими исходными картиками из всех вариантов сработал только Фотошоп
Я стараюсь использовать по-максимуму бесплатные варианты, поэтому Фотошоп не применяю.
 
Andrey Khatimlianskii:

Это личное, не обращайте внимания  )

Мне не очень нравится стиль изложения Владимира, немного занудный

А тут получилось вполне живо.

А какое может быть практическое применение графики в трейдинге?

Многие и про непрактичность трендовых линий говорят, не то что каких-то линейных графиков или теней.

А самое близкое к практике - покупка и продажа, а для них можно сделать кнопки. Так вот они с помощью теней могут быть красивее ;)

Похоже я на своей волне:) Но наверное хорошо, что у нас разные мнения по поводу того, в какую сторону двигать возможности MQL. На мой взгляд красивости вторичны. Более важно, имхо, дать в MQL средства по созданию мощных таблиц, графиков, интеграции с офисным софтом и пакетами статистического анализа. 
Причина обращения: