La función de descomponer el color en matices. - página 10

 
Реter Konow:

Nikolai, eso suena a jardín de infancia. La afirmación "4 veces más rápido" no es válida, porque no está demostrada.


  1. Comenta la línea en tu versión de mi solución en MT5 y verás la diferencia.

Esta línea afecta al dibujo de todo el rectángulo por alguna razón. Pero no es mi problema. Compruébalo.

Siguiendo con la búsqueda de esos fallos que tienes. Quiero ver si realmente se debe a mi algoritmo.


Y desactiva el parpadeo innecesario de los números. Quita todas las cosas innecesarias. Que se muestre una vez un simple rectángulo con un degradado de un color original. Sin trucos innecesarios.

Peter, escribí "cuatro veces más rápido" después de proporcionar el código con pruebas. No entiendo qué más se necesita.

He apagado todo y el fallo continúa. Vi este fallo antes de hacer este esquivador. Si insertas mi degradado, este fallo no está ahí ni siquiera con el voladizo textual. Esto ya está demostrado por mí en el código adjunto en este post.

 
Yury Kulikov:

Me sumo a las "acusaciones", no podría soportarlo :)

Un buen ejemplo de cómo no programar. Si así es como está escrita toda la interfaz gráfica de usuario, no la veremos durante un tiempo. :(

Cada línea es una "obra maestra": tal montón de errores y meteduras de pata, tanta esperanza de que mql4 funcione. Ahora entiendo por qué se utiliza mt4.

Creo que la publicación de dichos códigos y la posterior reacción a las críticas no es respetuosa con el público del foro. No quieren hacerte daño, quieren ayudarte.

En cuanto a la comparación de los algoritmos, se pueden comparar visualmente. No es que hayas ofrecido una prueba en números de que tu algoritmo da tonos 99% cercanos a los "tonos de las ventanas".

A la izquierda está tu enfoque, a la derechael de Nikolai Semko. (Se utilizó un guión modificado de NikolaiSemko).


¿Tomaste este guión? ¿Lo has instalado en MT4? ¿Lo has comprobado? ¿Lo has comparado? (Todos están ansiosos por unirse a las acusaciones)).

En cuanto al guión, no es mi algoritmo. Nikolai lo modificó sin saber cómo. Es con él con quien hay que hablar de estas fotos.

 
Nikolai Semko:
En general, es más útil una función que obtenga una matriz de degradados entre dos colores. Ya que es más sencillo y útil en la práctica.

Si necesitas un degradado de un color a blanco o a negro, puedes conseguirlo con esta función.


Te lo dije. Desactive el parpadeo innecesario. Da salida a un solo rectángulo. Ahí tienes un problema de dibujo que no tiene nada que ver con mi algoritmo. Te lo he señalado. Resuélvelo.

 
Реter Konow:

Te lo dije. Apaga el parpadeo innecesario. Da salida a un solo rectángulo. Ahí tienes un problema de dibujo que no tiene nada que ver con mi algoritmo. Te lo he señalado. Resuélvelo.

Peter, basta de palabras. Demuéstralo con el código con visualización, como he hecho yo. Repito, no he cambiado tu función, sólo he sacado un valor uint de ella en lugar de una cadena.
¡Por favor, facilítame el ejemplo de trabajo de tu función sin cadenas en MQL5 de una vez!

 
Yury Kulikov:

Me sumo a las "acusaciones", no podría soportarlo :)

Un buen ejemplo de cómo no programar. Si así es como está escrita toda la interfaz gráfica de usuario, no la veremos durante un tiempo. :(

Cada línea es una "obra maestra": tal montón de errores y meteduras de pata, tanta esperanza de que mql4 funcione. Ahora entiendo por qué se utiliza mt4.

Creo que la publicación de dichos códigos y la posterior reacción a las críticas no es respetuosa con el público del foro. No quieren hacerte daño, quieren ayudarte.

En cuanto a la comparación de los algoritmos, se pueden comparar visualmente. No es que hayas ofrecido una prueba en números de que tu algoritmo da tonos 99% cercanos a los "tonos de las ventanas".

A la izquierda está tu enfoque, a la derechael de Nikolai Semko. (Se utilizó un guión modificado de NikolaiSemko).


¿Por qué pones estos gifs? ¿Quiere causar una buena impresión? Por desgracia, tendrás que esforzarte más. Soy demasiado sofisticado en los gráficos. Mejor tomar mi algoritmo, ponerlo en mt4 e imprimir los colores. Entonces, comprueba la paleta de colores, estimado MENTOR.

 
Nikolai Semko:

Peter, basta de palabras. Demuestra con código con visualización, como lo hice yo. Repito: no cambié su función, sólo saqué el valor uint de ella en lugar de la cadena

Estoy en proceso de traducción de mi código a MT5. Te lo mostraré cuando termine.

 
Nikolai Semko:
En general, la función para obtener una matriz de degradados entre dos colores es más útil.

Probablemente sería un poco más rápido de esa manera:

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 palabras. Demuestre con el código con la visualización, como lo hice. Repito - No he cambiado su función, pero sólo sacó el valor uint de ella en lugar de la cadena

¿Por qué no lo compruebas con la paleta de colores? ¿Es realmente tan difícil?

¿Y por qué comentar una línea con salida de texto cambia el dibujo de todo el rectángulo?

 
Реter Konow:

¿Por qué no lo compruebas con la paleta de colores? ¿Qué tan difícil puede ser?

Al menos podrías poner un enlace o algo así. Con qué compararlo.

 
Todos los fallos parecen haber ocurrido cuando cambié a MT5. No hay nada de eso en MT4. La exigencia de MT5 es mucho mayor, lo que crea problemas. Pero eso no significa que la solución no sea buena. Sólo hay que retocar el código.