Lienzo vs. Etiquetas - página 4

 
Maxim Kuznetsov:

Obviamente, el lienzo (BitMap) se redibuja/copia en su totalidad, pero sólo las etiquetas han cambiado. ¿Por qué debería sorprenderme?

El lienzo es simplemente conveniente y moderadamente rápido.

Dmitry Fedoseev:
Y sin ninguna prueba comparativa es obvio que la etiqueta simple producirá el texto más rápido.

Por supuesto, lo sabía antes. Pero estaba convencido de que utilizar Kanvas es la forma más rápida de salir. Al mismo tiempo, era terriblemente lento en el probador (al emitir los datos del Asesor Experto que se estaba probando), especialmente en los ticks. El uso de etiquetas arregló la situación, por supuesto. Así que decidí averiguar lo lento que es realmente Kanvas en comparación con Labels. Resulta ser 321 veces más lento, si esta medición es creíble.

 
Mihail Matkovskij:

Por supuesto, ya lo sabía antes. Pero estaba convencido de que utilizar Kanvas era la forma más rápida de salida. Sin embargo, en el probador (cuando la salida de los datos de la EA bajo prueba) fue terriblemente lento, especialmente en las garrapatas. El uso de etiquetas arregló la situación, por supuesto. Así que decidí averiguar lo lento que es realmente Kanvas en comparación con Labels. Resulta que 321 veces, si esta medición es creíble.

¿No hay muchos narradores de fantasía en el mundo?

 
Dmitry Fedoseev:

¿No hay muchos narradores de fantasía en el mundo?

¡Eso es seguro!

 
Maxim Kuznetsov:

Obviamente, el lienzo (BitMap) se redibuja/copia en su totalidad, pero sólo las etiquetas han cambiado. ¿Por qué debería sorprenderme?

El lienzo es simplemente fácil de usar y moderadamente rápido.

¿Por qué redibujar todo el mapa de bits?
para demostrar que es más lento que redibujar la etiqueta?

Para que la comparación sea correcta, también hay que redibujar sólo una parte del mapa de bits, el tamaño del marcador.

 
Taras Slobodyanik:

¿Por qué redibujar todo el mapa de bits?
para demostrar que es más lento que redibujar la etiqueta?

Para que la comparación sea correcta, también hay que redibujar sólo una parte del mapa de bits, el tamaño de la etiqueta.

En realidad, así es como se actualiza:

todo a la vez

 
Maxim Kuznetsov:

así es como se actualiza:

todo a la vez.

¿se refresca o se redibuja?
Nunca he visto una ralentización al refrescar.

 
Taras Slobodyanik:

Entonces, ¿se actualiza o se redibuja?
Nunca he visto ningún retraso al actualizar.

Si nunca has visto los frenos al trabajar con OBJ_BITMAP_LABEL, es importante decir dónde. Si cuando se trabaja en la terminal, sí. El retraso es insignificante. Pero si se toma el trabajo en el probador y también Modelo: Todos los ticks o OHLC en M1, el paso constante del array m_pixels usando ResourceCreate es muy notable. Las operaciones de píxeles suelen considerarse las más costosas de cualquier programa.

 
Maxim Kuznetsov:

así es como se actualiza:

todo a la vez

Eh, recuerdo que se podía editar el lienzo en el buffer de video con un pixel, pero es tan poco interesante(

 
Dmitry Fedoseev:

No hay muchos fantasiosos que cuenten historias en el mundo, ¿verdad?

Dmitry, antes de juzgar algo hay que entender dónde empezó todo...

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

Errores, fallos, preguntas

Mihail Matkovskij, 2021.03.07 14:02

El comentario produce líneas de longitud completamente diferente (visualmente) mientras que su longitud es exactamente la misma

Comentario

Código:

void OnStart() {
  string str[5], res="";
  StringInit(str[0], 50, 'a');
  StringInit(str[1], 50, 'X');
  StringInit(str[2], 50, '=');
  StringInit(str[3], 50, ' ');
  StringInit(str[4], 50, ':');
  for (int i = 0; i < 5; i++) 
    res += str[i] + "\n";
  Comment(res);
}

¿Cómo puedo dar salida a las líneas con elcomentario, que visualmente eran de la misma longitud? Por ejemplo, quiero dar salida a una tabla que tiene tres columnas de manera que las columnas estén igualmente espaciadas verticalmente.

Si no me equivoco, en algún lugar de la línea decía cincuenta filas...
 
Alexey Viktorov:

Dimitri, antes de juzgar algo hay que entender dónde empezó todo...

Si no me equivoco, en algún lugar de la línea decía cincuenta líneas...

¡Mejor hacer un ejemplo en el que una pantalla basada en Canvas supere a la pantalla de Etiquetas! Como, si quieres refutar mis afirmaciones, entonces por la ley de la lógica tienes que demostrar lo contrario. ¿Funcionará...?