A função de decompor a cor em tons. - página 10

 
Реter Konow:

Nikolai, isso soa como um jardim de infância. A afirmação "4 vezes mais rápido" não é válida, pois não está comprovada.


  1. Comente a linha em sua versão de minha solução no MT5 e você verá a diferença.

Esta linha afeta o desenho de todo o retângulo por alguma razão. Mas não é a minha falha. Confira.

Continuando a analisar as falhas que você tem. Eu quero ver se é realmente por causa do meu algoritmo.


E desligue a cintilação desnecessária dos números. Retire todas as coisas desnecessárias. Deixe um simples retângulo com um gradiente de uma cor original ser exibido uma vez. Sem artifícios desnecessários.

Peter, eu escrevi "4 vezes mais rápido" depois de fornecer o código com provas. Eu não entendo o que mais é necessário.

Eu desliguei tudo - a falha continua. Eu vi esta falha antes mesmo de fazer este dodger. Se você inserir meu gradiente, esta falha não está lá nem mesmo com a saliência textual. Isto já está demonstrado por mim no código anexo a este post.

 
Yury Kulikov:

Vou me juntar às "acusações", não poderia aceitar :)

Um bom exemplo de como não programar. Se é assim que sua GUI inteira está escrita, não a veremos por um tempo. :(

Cada linha é uma "obra-prima": tal pilha de erros e bloqueios, tanta esperança de que o mql4 funcione. Agora entendo porque o mt4 está sendo usado.

Penso que a publicação de tais códigos e a reação subseqüente às críticas não está respeitando a audiência do fórum. Eles não querem lhe fazer mal, eles querem ajudá-lo.

Quanto à comparação de algoritmos, você pode compará-los visualmente. Não é como se você oferecesse provas em números de que seu algoritmo dá sombras 99% próximas a "sombras de janelas".

À esquerda é mais ou menos a sua abordagem, à direita éNikolai Semko. (Um script NikolaiSemko modificado foi usado).


Você pegou este roteiro? Você o instalou no MT4? Verificou-o? Você o comparou? (Todos estão ansiosos para participar das acusações)))).

Quanto ao roteiro - não é o meu algoritmo. Nikolai o modificou sem saber como. Ele é quem deve falar sobre estas fotos.

 
Nikolai Semko:
De modo geral, uma função para obter uma variedade de gradientes entre duas cores é mais útil. Como é mais simples e mais útil na prática.

Se você precisar de um gradiente de uma cor para o branco ou para o preto, você pode obtê-los desta forma com esta função.


Eu lhe disse que sim. Desligue a cintilação desnecessária. Produzir um único retângulo. Você tem aí um problema de desenho que não tem nada a ver com meu algoritmo. Eu o apontei para você. Resolva o problema.

 
Реter Konow:

Eu lhe disse que sim. Desligue a cintilação desnecessária. Produzir um único retângulo. Você tem aí um problema de desenho que não tem nada a ver com meu algoritmo. Eu o apontei para você. Descubra-o.

Peter, basta de palavras. Prove-o com o código com visualização, como eu fiz. Repito, não mudei sua função, mas apenas tirei um valor uint dele em vez de um fio.
Por favor, me forneça finalmente o exemplo de funcionamento de sua função sem cordas na MQL5!

 
Yury Kulikov:

Vou me juntar às "acusações", não poderia aceitar :)

Um bom exemplo de como não programar. Se é assim que sua GUI inteira está escrita, não a veremos por um tempo. :(

Cada linha é uma "obra-prima": tal pilha de erros e bloqueios, tanta esperança de que o mql4 funcione. Agora entendo porque o mt4 está sendo usado.

Penso que a publicação de tais códigos e a reação subseqüente às críticas não está respeitando a audiência do fórum. Eles não querem lhe fazer mal, eles querem ajudá-lo.

Quanto à comparação de algoritmos, você pode compará-los visualmente. Não é como se você oferecesse provas em números de que seu algoritmo dá sombras 99% próximas a "sombras de janelas".

À esquerda é mais ou menos a sua abordagem, à direita éNikolai Semko. (Um script NikolaiSemko modificado foi usado).


Por que você está colocando estes gifs? Você quer causar uma impressão? Infelizmente, você terá que se esforçar mais. Sou muito sofisticado em gráficos. É melhor pegar meu algoritmo, colocá-lo no mt4 e imprimir as cores. Em seguida, verifique com a paleta de cores, estimado MENTOR.

 
Nikolai Semko:

Peter, basta de palavras. Prove com código com visualização, como eu fiz. Repito: eu não mudei sua função, mas apenas puxei o valor uint dele em vez de string

Estou em processo de tradução do meu código para o MT5. Eu lhe mostrarei quando terminar.

 
Nikolai Semko:
De modo geral, a função de obter uma matriz de gradientes entre duas cores é mais útil.

Provavelmente seria um pouco mais rápido dessa maneira:

void Gradient(uint clr1,uint clr2,uint &arr[],uint size)
  {
   if(size==0) return;
   ArrayResize(arr,size);
   rgb c1,c2;
   c1.clr=clr1;
   c2.clr=clr2;
   double R1=c1.c[2],G1=c1.c[1],B1=c1.c[0];
   double R2=c2.c[2],G2=c2.c[1],B2=c2.c[0];
   double deltaR=(R2-R1)/(size-1);
   double deltaG=(G2-G1)/(size-1);
   double deltaB=(B2-B1)/(size-1);
   R1 += 0.4999;
   G1 += 0.4999;
   B1 += 0.4999;
   for(uint i=0;i<size;i++)
     {
      R1+=deltaR; c1.c[2]=uchar (R1);
      G1+=deltaG; c1.c[1]=uchar (G1);
      B1+=deltaB; c1.c[0]=uchar (B1);
      arr[i]=c1.clr;
     }
  }
 
Nikolai Semko:

Peter, basta de palavras. Prove com código com visualização, como eu fiz. Repito - eu não mudei sua função, mas apenas puxei o valor uint dele em vez de string

Por que você não compara com a paleta de cores? É realmente tão difícil?

E por que o comentário de uma linha com saída de texto muda o desenho de todo o retângulo?

 
Реter Konow:

Por que você não verifica com a paleta de cores? Quão difícil pode ser?

Você poderia ao menos lançar um link ou algo assim. Com o que comparar.

 
Todas as falhas parecem ter ocorrido quando mudei para o MT5. Não há nada parecido no MT4. A natureza exigente do MT5 é muito maior, o que cria problemas. Mas isso não significa que a solução não seja boa. Você só precisa ajustar o código.