Sería excepcionalmente bueno si JMP permitiera que los cuadros de marco tuvieran un tipo de visualización de muestreo y retención. Específicamente, deberían renderizarse una vez y solo volver a renderizarse para eventos como cambios de tamaño, cambios de estado de fila (para cualquier segmento de marcador que esté vinculado al estado de fila de una tabla) o enviando el < <<>
Lo que me gustaría ver es que el siguiente ejemplo de script no imprima ningún número más de una vez mientras se desplaza , durante la representación inicial y eso es todo (esto también se aplicaría a los segmentos de marcador si están presentes).
La razón principal de esto es que si estoy trazando muchos gráficos con millones de puntos de datos, no me importa esperar varios segundos para la representación inicial (eso es lo esperado), pero es inaceptable que cada evento de desplazamiento requiera varios segundos de representación: representar solo una vez y simplemente volver a pintar el mapa de bits en una ubicación diferente al desplazarse.
NOTA: Si los desarrolladores están preocupados por el consumo de memoria al almacenar mapas de bits en la RAM, NO SE PREOCUPEN. Dejen que el usuario se preocupe por eso al configurar los cuadros. Por ejemplo, si intento crear un gráfico que tendría 1.000.000.000 x 1.000.000.000 píxeles para renderizar, déjenme intentarlo y hacer que se bloquee JMP. No deberían impedirnos tener la característica necesaria simplemente por la razón de que podría permitirnos hacer que se bloquee JMP en circunstancias estúpidas. Permitan que sea solo opcional (es decir, solo llamando a <
Solo para reiterar, sería genial si un FrameBox tuviera un método (como <
A continuación se muestra un ejemplo del mal comportamiento actual: los números se imprimen varias veces, lo que indica que el paso de representación se realiza en cada evento de desplazamiento:
Names Default to Here( 1 );
New Window( "Test",
V Scroll Box(
vlb = V List Box()
)
);
For( i = 1, i <= 100, i++,
Eval( Eval Expr(
vlb << Append(
Graph Box(
X Scale( 0, 1 ),
Y Scale( 0, 1 ),
Pen Color( "Blue" );
Line( [1 0], [0 1] );
Print( Expr( i ) )
)
)
) )
)
He aquí un ejemplo del inaceptable tiempo de espera asociado con este "volver a renderizar en cada evento de desplazamiento" / "volver a renderizar en cada oportunidad posible" (solo intente desplazarse aquí...)
Names Default to Here( 1 );
ns = New Namespace();
ns:table = New Table( "TEST",
New Column( "X", "Numeric", <<FORMULA></FORMULA>
<P> </P>
<P> </P>
<P> </P>Hola @ErraticAttack , ¡Gracias por su sugerencia! Hemos capturado su solicitud y la tomaremos en consideración.
Gran ejemplo.
Genial: JMP sabe qué cuadros de marco son visibles y omite los demás.