Sequential এবং Parallel Transitions

JavaFX Animation এবং Transitions - জাভাএফএক্স (JavaFx) - Java Technologies

299

JavaFX Transition হল একটি খুব শক্তিশালী ফিচার যা UI উপাদানগুলির মধ্যে অ্যানিমেশন এবং পরিবর্তন পরিচালনা করতে ব্যবহৃত হয়। JavaFX-এ দুটি প্রধান ধরণের ট্রানজিশন রয়েছে: Sequential Transitions এবং Parallel Transitions। এই দুটি ট্রানজিশন আপনাকে এক বা একাধিক UI উপাদানের মধ্যে অ্যানিমেশন তৈরি করতে সহায়তা করে।

1. Sequential Transitions (সিকোয়েন্সিয়াল ট্রানজিশন)

Sequential Transitions হল যখন একাধিক অ্যানিমেশন একে অপরের পরে পরপর চলে। একটি ট্রানজিশন শেষ হওয়ার পরই পরবর্তী ট্রানজিশন শুরু হয়। এটি সাধারণত একটি নির্দিষ্ট অর্ডারে অ্যানিমেশন ঘটানোর জন্য ব্যবহৃত হয়। JavaFX-এ, আপনি SequentialTransition ক্লাস ব্যবহার করে সিকোয়েন্সিয়াল ট্রানজিশন তৈরি করতে পারেন।

উদাহরণ: Sequential Transitions

import javafx.animation.ScaleTransition;
import javafx.animation.SequentialTransition;
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
import javafx.util.Duration;

public class SequentialTransitionExample extends Application {

    @Override
    public void start(Stage primaryStage) {
        // একটি বাটন তৈরি করা
        Button btn = new Button("Click Me");

        // প্রথম ট্রানজিশন (Scale)
        ScaleTransition scaleTransition = new ScaleTransition(Duration.seconds(1), btn);
        scaleTransition.setByX(2);
        scaleTransition.setByY(2);

        // দ্বিতীয় ট্রানজিশন (Rotate)
        javafx.animation.RotateTransition rotateTransition = new javafx.animation.RotateTransition(Duration.seconds(1), btn);
        rotateTransition.setByAngle(90);

        // SequentialTransition তৈরি করা
        SequentialTransition sequentialTransition = new SequentialTransition(btn, scaleTransition, rotateTransition);

        // বাটনে ইভেন্ট হ্যান্ডলার যোগ করা
        btn.setOnAction(event -> sequentialTransition.play()); // ট্রানজিশন শুরু করা

        // StackPane layout তৈরি করা
        StackPane root = new StackPane();
        root.getChildren().add(btn);

        // Scene তৈরি এবং সেট করা
        Scene scene = new Scene(root, 300, 250);
        primaryStage.setTitle("Sequential Transitions Example");
        primaryStage.setScene(scene);
        primaryStage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }
}

এখানে কী হচ্ছে?

  1. প্রথমে, ScaleTransition তৈরি করা হয়েছে যা বাটনটির আকার বাড়িয়ে দেয়।
  2. তারপর RotateTransition তৈরি করা হয়েছে যা বাটনটি 90 ডিগ্রি ঘুরিয়ে দেয়।
  3. এই দুটি ট্রানজিশনকে SequentialTransition এর মধ্যে যুক্ত করা হয়েছে, যার ফলে একটির পর একটি ট্রানজিশন হবে।
  4. বাটনটি ক্লিক করলে প্রথমে স্কেল অ্যানিমেশন চলবে এবং তারপরে রোটেট অ্যানিমেশন চালু হবে।

2. Parallel Transitions (প্যারালাল ট্রানজিশন)

Parallel Transitions হল যখন একাধিক অ্যানিমেশন একসাথে (একই সময়ে) চলে। JavaFX-এ, আপনি ParallelTransition ক্লাস ব্যবহার করে একাধিক ট্রানজিশন একসাথে চালাতে পারেন।

উদাহরণ: Parallel Transitions

import javafx.animation.FadeTransition;
import javafx.animation.ParallelTransition;
import javafx.animation.ScaleTransition;
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
import javafx.util.Duration;

public class ParallelTransitionExample extends Application {

    @Override
    public void start(Stage primaryStage) {
        // একটি বাটন তৈরি করা
        Button btn = new Button("Click Me");

        // প্রথম ট্রানজিশন (Scale)
        ScaleTransition scaleTransition = new ScaleTransition(Duration.seconds(2), btn);
        scaleTransition.setByX(2);
        scaleTransition.setByY(2);

        // দ্বিতীয় ট্রানজিশন (Fade)
        FadeTransition fadeTransition = new FadeTransition(Duration.seconds(2), btn);
        fadeTransition.setToValue(0); // ফেড আউট

        // ParallelTransition তৈরি করা
        ParallelTransition parallelTransition = new ParallelTransition(btn, scaleTransition, fadeTransition);

        // বাটনে ইভেন্ট হ্যান্ডলার যোগ করা
        btn.setOnAction(event -> parallelTransition.play()); // ট্রানজিশন শুরু করা

        // StackPane layout তৈরি করা
        StackPane root = new StackPane();
        root.getChildren().add(btn);

        // Scene তৈরি এবং সেট করা
        Scene scene = new Scene(root, 300, 250);
        primaryStage.setTitle("Parallel Transitions Example");
        primaryStage.setScene(scene);
        primaryStage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }
}

এখানে কী হচ্ছে?

  1. প্রথমে, ScaleTransition তৈরি করা হয়েছে যা বাটনটির আকার বাড়িয়ে দেয়।
  2. এরপর, FadeTransition তৈরি করা হয়েছে যা বাটনটি অদৃশ্য করে দেয়।
  3. ParallelTransition এর মধ্যে এই দুটি ট্রানজিশন একসাথে যুক্ত করা হয়েছে, যার ফলে দুটি ট্রানজিশন একে অপরের সাথে সমানভাবে চলে।

Comparing Sequential vs Parallel Transitions

  • Sequential Transition:
    • অ্যানিমেশন একে একে চলে
    • একটি অ্যানিমেশন শেষ হওয়ার পরে পরবর্তী অ্যানিমেশন শুরু হয়।
    • এটি সাধারণত অর্ডার বজায় রাখার জন্য ব্যবহৃত হয়।
  • Parallel Transition:
    • অ্যানিমেশন একসাথে চলে
    • দুটি বা আরও বেশি অ্যানিমেশন একসাথে চালানো হয়।
    • এটি দ্রুত ফলাফল পাওয়ার জন্য ব্যবহৃত হয়।

JavaFX Transition-এর অন্যান্য প্রকার:

JavaFX-এ আপনি বিভিন্ন ধরনের ট্রানজিশন ব্যবহার করতে পারেন, যেমন:

  • FadeTransition: উপাদানটির দৃশ্যমানতা পরিবর্তন করতে ব্যবহৃত হয়।
  • TranslateTransition: উপাদানটির স্থানান্তর বা পজিশন পরিবর্তন করতে ব্যবহৃত হয়।
  • RotateTransition: উপাদানটিকে ঘুরানোর জন্য ব্যবহৃত হয়।
  • ScaleTransition: উপাদানটির আকার পরিবর্তন করতে ব্যবহৃত হয়।
  • PathTransition: একটি নির্দিষ্ট পথ অনুসরণ করে উপাদানটির চলাচল করানোর জন্য ব্যবহৃত হয়।

সারাংশ:

  • Sequential Transitions একাধিক অ্যানিমেশনকে একটি নির্দিষ্ট অর্ডারে একে একে চালায়।
  • Parallel Transitions একাধিক অ্যানিমেশনকে একসাথে চালায়।
  • JavaFX-এ ট্রানজিশন ব্যবহার করে আপনি আপনার অ্যাপ্লিকেশনকে আরও ইন্টারঅ্যাকটিভ এবং আকর্ষণীয় করতে পারেন, যার মাধ্যমে ইউজারের অভিজ্ঞতা উন্নত হয়।
Content added By
Promotion

Are you sure to start over?

Loading...