Canvas - это круто! - страница 65

 
Nikolai Semko:
Ну если очень коротко, Артем,  то раньше я воспринимал пиксель как квадрат с вычислением его весового участия в пикселе нового масштаба через площадь, то сейчас бы воспринимал, как круг с вычислением весового участия через расстояние до центра пикселя новго масштаба.
Спасибо, интересно
 
Nikolai Semko:

Здесь приводил пример кода. Правда код далёк от совершенства. Сейчас бы сделал все совсем по другому.


Обалдеть! Я малость изменил код. Вытащил функцию ресайза из класса в отдельный файл для универсального использования и добавил возможность непропорционального изменения размеров.
Файлы:
ImageResize.zip  384 kb
 
Nikolay Kositsin:
Обалдеть! Я малость изменил код. Вытащил функцию ресайза из класса в отдельный файл для универсального использования и добавил возможность непропорционального изменения размеров.

Ну на самом деле алгоритм ужасный. Помню, что его написал за один день чисто для проверки, чтобы работал и посмотреть как цвет сохраняется при трансформации.
Он очень медленный (видны моргания и помню были глюки), но есть большой потенциал ускорить его многократно. 
Сейчас, чтобы заново написать этот ресайз уже исходя из тех знаний и опыта, который я приобрел после этого кода, мне понадобится, думаю, три дня.
Но может правильнее будет найти уже что-нибудь готовое и не изобретать велосипед.
Например вот свободная библиотека на C++, правда старенькая, но вполне рабочая. 
https://drive.google.com/file/d/1BceTk-OrtQza0Hpozhm1nqAcNkRdeNH5/view?usp=sharing
Посмотрите демонстрационный пример image_perspective.



 
Nikolai Semko:

Ну на самом деле алгоритм ужасный. Помню, что его написал за один день чисто для проверки, чтобы работал и посмотреть как цвет сохраняется при трансформации.
Он очень медленный (видны моргания и помню были глюки), но есть большой потенциал ускорить его многократно. 
Сейчас, чтобы заново написать этот ресайз уже исходя из тех знаний и опыта, который я приобрел после этого кода, мне понадобится, думаю, три дня.
Но может правильнее будет найти уже что-нибудь готовое и не изобретать велосипед.
Например вот свободная библиотека на C++, правда старенькая, но вполне рабочая. 
https://drive.google.com/file/d/1BceTk-OrtQza0Hpozhm1nqAcNkRdeNH5/view?usp=sharing
Посмотрите демонстрационный пример image_perspective.


Ну, собственно говоря, так оно и предполагалось делать, но, как оно оказалось, что именно по этой теме конкретно в интернете всю информацию как-то моль почикала. За ссылку спасибо, но она запароленная и даст ли владелец  ссылки разрешение на скачку - непонятно.
 
Nikolay Kositsin:
Ну, собственно говоря, так оно и предполагалось делать, но, как оно оказалось, что именно по этой теме конкретно в интернете всю информацию как-то моль почикала. За ссылку спасибо, но она запароленная и даст ли владелец  ссылки разрешение на скачку - непонятно.

Исправил. Открывается без пароля.

 
Nikolai Semko:

я согласен с Ренатом, что даже использование CPU для вывода графики покрывает более 99% всех графических задач в области задач MQL5.

У меня сильно грузит процессор GUI самого Терминала.

 
Nikolai Semko:

Исправил. Открывается без пароля.

Николай, а с какой стороны в этой библиотеке копаться? Я её всеми доступными методами анализа прозондировал, но ресайза или рессемплинга пиксельных массивов и изображений не обнаружил. 
 
fxsaber:

У меня сильно грузит процессор GUI самого Терминала.

Ryzen 3700x и GTX1060 тоже есть разница свернуть или нет, разработчики идут в ногу со временем уменьшают отклик ближе к реалтайму, пора менять тебе древний процессор, 2700К вроде?

 
Fast235:

Ryzen 3700x и GTX1060 тоже есть разница свернуть или нет, разработчики идут в ногу со временем уменьшают отклик ближе к реалтайму, пора менять тебе древний процессор, 2700К вроде?

Да. Не думаю, что разработчики когда-нибудь запускают пять Терминалов параллельно, где в Обзоре рынка с высокой частотой поступают котиры по сотне символов.

Очень глупо выходит, когда банальная минимизация таких Терминалов уменьшает большую нагрузку на CPU почти до нуля. Зачем такой нерационально кушающий GUI - непонятно.

 
fxsaber:

Да. Не думаю, что разработчики когда-нибудь запускают пять Терминалов параллельно, где в Обзоре рынка с высокой частотой поступают котиры по сотне символов.

Очень глупо выходит, когда банальная минимизация таких Терминалов уменьшает большую нагрузку на CPU почти до нуля. Зачем такой нерационально кушающий GUI - непонятно.

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

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