No he podido encontrar esto en la documentación, tal vez buscando términos incorrectos.
Estoy creando un diagrama de burbujas en JSL. Todo funciona bien, pero quiero poder controlar:
- El tamaño del paso de interpolación. Los gráficos de burbujas parecen interpolar el movimiento entre puntos reales. Quiero llevar la interpolación a cero (solo mostrar los puntos medidos reales).
- ¿Cómo inicio y detengo la animación desde JSL? Quiero generar la trama, luego iniciar automáticamente la animación en el tiempo 0 y ejecutar una vez a través del tiempo Tfinal, es decir, controlar el botón Reproducir / Pausa.
¡Gracias!
Pasé más tiempo mirando el índice de secuencias de comandos y encontré suficiente para responder mis preguntas ...
Primero, cree el diagrama de burbujas como un objeto:
bp = Bubble Plot(
X( :X ),
Y( :Y ),
Time( :Time ),
ID( :Ball ),
Bubble Size( plotBallD ),
Time Index( 1 ), ...
Importante arriba para establecer el Índice de tiempo (1) para asegurarse de que la animación comience en el primer paso.
A continuación, encontré el comando "Ir":
bp << Go;
Esto inicia la animación desde el primer fotograma (o donde haya especificado por el índice de tiempo). Sin embargo, esto inicia la animación en movimiento y continúa sin parar.
Puedes detener la animación con:
bp << Stop;
pero no puedes decir dónde te estás deteniendo. Quería una función StartAtFirstStepEndAtLastStep. Para hacer esto, tuve que hacer alguna manipulación manual:
// ensure we are stopped
bp << Stop;
// reset to first time index (just in case)
bp << Time Index (1);
// wait to be sure processing is caught up
wait(0.5);
// now loop through the steps. Here I assume nSteps.
for (i=1, i<=nSteps, i++,
// specify delay between each step
wait(.1);
// step the display using the Step command
bp << Step;
// Important. Need to update the window here. If you don't, graphics will update in background.
bp << Update Window;
);
¡Eso lo hace! El script se ejecuta y solo se muestran las burbujas reales de los datos en pasos de tiempo específicos. Esto también evita la otra pregunta que planteé inicialmente, que era cómo ajustar la interpolación que JMP hace entre los pasos para hacer que la animación sea más fluida. No quería esa función.
Entonces, en el espíritu de responder a mi propia pregunta (aunque deseo haber hecho un trabajo adicional por adelantado), ¡estoy llamando a esto Respondido!