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

 
Реter Konow:

Mi algoritmo funciona bien. Es rápido (15-20 microsegundos). El tuyo no funciona correctamente. ¿Estás sugiriendo que debería rehacer mi algoritmo según tu ejemplo)?


Ya está, Peter, me estás aburriendo con tu impenetrabilidad.

No puedo soportarlo más.

Yo gano. ¡Su algoritmo es perfecto!

 
Nikolai Semko:


Ya está, Peter, me estás aburriendo con tu impenetrabilidad.

No puedo soportarlo más.

Yo gano. ¡Su algoritmo es perfecto!

El mío no es perfecto. Es más correcto.

La moraleja de esta fábula es: ¡ni la sintaxis, ni el lenguaje, ni el estilo, ni el cumplimiento de las normas! El desarrollador manda.

 
Реter Konow:

El mío no es perfecto. Es simplemente más fiel.

OK tu sección en espacio rgb es más recta que la mía.
 
Nikolai Semko:
OK tu sección en espacio rgb es más sencilla que la mía.

De acuerdo. El tema era interesante y útil.

 
La gente se quedó sin palabras...
 
Алексей Тарабанов:
La gente se quedó sin palabras...
Por supuesto que sí. No había más tontos que yo.
 
Nikolai Semko:
Ya lo creo. Soy el único que se engaña.

Vamos... Ha nacido una función útil:

Foro sobre trading, sistemas de trading automatizados y pruebas de estrategias de trading

Función de descomposición del color.

Nikolai Semko, 2018.10.15 22:21

...

Aquí está la única función necesaria y más versátil para trabajar con el gradiente:

union rgb {uint clr; uchar c[4];};
void Gradient(uint clr1,uint clr2,uint &arr[],uint size)
  {
   if(size==0) return;
   ArrayResize(arr,size);
   arr[0]=clr1; 
   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=1;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;
     }
  }

Como genera todos los algoritmos dados aquí en dos líneas. Es el más rápido, ya que sólo hay una operación "+" en el bucle, ni siquiera la multiplicación. Además, esta función da mezclas de dos colores cualesquiera, no sólo calcula los tonos de uno.


 
Artyom Trishkin:

Vamos... Ha nacido una función útil:


Sí, pero personalmente es poco probable que lo utilice, ya que soy tacaño para generar un array intermedio de varios KB para el gradiente dinámico. Para la estática es ciertamente útil. Pero tengo la mayoría de los dinámicos y calcular el gradiente sobre la marcha sin arrays.
De todos modos, Andrei Hatimlansky tenía razón. Pyotr me ha estado estafando durante tiempo como un tonto.
 
Artyom Trishkin:

Vamos... Ha nacido una función útil:

ya que genera todos los algoritmos dados aquí en dos líneas. Es el más rápido, ya que sólo hay una operación "+" en el bucle, ni siquiera la multiplicación. Además, esta función da mezclas de dos colores cualesquiera, no sólo calcula los tonos de uno.

Es muy posible... Colores, melodías y sonidos... Las cotizaciones actuales y sus cambios, por cierto, suenan bastante bien.

¿Qué aspecto tienen en color? ¿Y qué sería, armonía de colores o cacofonía?

 
aleger:

Bien podría ser... Colores, melodías y sonidos... Por cierto, las citas actuales y sus cambios suenan muy bien.

¿Y qué aspecto tienen en color? ¿Y qué sería, armonía de colores o cacofonía?

Le diste una idea a Peter. Veamos qué tipo de "Petrofonia" será.

Razón de la queja: