Discussão do artigo "Estudando a Classe CCanvas. Como Desenhar Objetos Transparentes"

 

Novo artigo Estudando a Classe CCanvas. Como Desenhar Objetos Transparentes foi publicado:

Você precisa mais do que os gráficos estranhos de médias móveis? Você quer desenhar algo mais bonito do que um retângulo preenchido simples em seu terminal? Gráficos atraentes podem ser desenhados no terminal. Isso pode ser implementado através da classe CСanvas, que é usada para criar gráficos personalizados. Com esta classe você pode implementar a transparência, misturar cores e produzir uma ilusão de transparência por meio da sobreposição e mistura de cores.

Desenhar no MetaTrader 5 é simples e você precisa saber de apenas algumas nuances. Uma das nuances é de como a tela do terminal é desenhada. Mais precisamente, nós estamos interessados ​​na forma como os gráficos são produzidos na tela. Por exemplo, um gráfico pode ser exibido em primeiro plano ou no fundo. A saída de cores na tela dependerá do visor gráfico. Alguns objetos gráficos podem mudar de cor nas áreas de sobreposição ou de interseção.

Antes de prosseguir diretamente para o desenho usando a classe CCanvas, vamos analisar algumas definições relacionadas com o processamento de cores. Por exemplo, vamos descobrir o significado de Alpha.

Na minha opinião, a implementação da transparência é a tecnologia mais importante, que pode vivificar uma imagem. Por exemplo, a transparência pode ser utilizada para implementar uma interface mais atraente, com uma transição de cor suave ou sombras. A sombra adiciona o conceito de dimensão de um objeto gráfico e suaviza visualmente as bordas do objeto.


5. A Ilusão da Transparência

Agora nós podemos proceder para a aplicação prática da transparência.

Vamos desenhar uma série de retângulos preenchidos (script "xor.mq5"). Para ilustrar a diferença dos métodos de processamento de cor, vamos aplicar três telas horizontais não sobrepostas no topo da tabela.

O primeiro é processado usando COLOR_FORMAT_XRGB_NOALPHA, o segundo - COLOR_FORMAT_ARGB_RAW e o terceiro - COLOR_FORMAT_ARGB_NORMALIZE. Em seguida, gradualmente alteramos a transparência de 255 (totalmente opaco) a 0 (totalmente transparente). Vamos chamar nosso script de "Illusion.mq5".

O vídeo mostra como o script "Illusion.mq5" funciona:


Fig. 11. Funcionamento do script illusion.mq5

Autor: Karputov Vladimir

 
Matéria excelente. Obrigado!