Funktionsimplementierung:
1. Implementierung der ImageLoader-Klasse zum Laden von Bildern:
1) Blockierungswarteschlange zum Speichern von Bildern verwenden: BlockingQueue images = new ArrayBlockingQueue<>(2);
2) Verwenden Sie image eof, um das Ende der Bildwarteschlange anzuzeigen: Image eof = new WritableImage(1, 1);
3) Lesen Sie das angegebene Bild in einer Schleife. Da es sich um eine blockierende Warteschlange handelt, wird der Thread automatisch blockiert, wenn die Warteschlange voll ist.
2. Implementierung des Spezialeffekts am Beispiel von Lichtbogenschaltbildern: Definieren Sie zunächst den Spezialeffekt „LengthTransition“-Änderung: Legen Sie die Änderungszeit und die Beziehung zwischen der Anzahl der Bogenmaße und der Zeit fest.
Stellen Sie dann den Bildkaskadeneffekt ein:
FadeTransition ft = new FadeTransition(Duration.seconds(0.2), mask2);
Führen Sie abschließend diese beiden Spezialeffekte gleichzeitig aus:
ParallelTransition pt = new ParallelTransition(lt, ft);
Darstellung: