”;
A sphere is a perfectly round geometrical object in a three-dimensional space that is the surface of a completely round shaped ball.
A sphere is defined as the set of points that are all at the same distance r from a given point in a 3D space. This distance r is the radius of the sphere and the given point is the centre of the sphere.
Sphere in JavaFX
In JavaFX, a sphere is represented by a class named Sphere. This class belongs to the package javafx.scene.shape. By instantiating this class, you can create a sphere node in JavaFX.
This class has a property named radiusof double datatype. It represents the radius of a Sphere. To draw a Sphere, you need to set values to this property by passing it to the constructor of this class at the time of instantiation; Or, by using a setter method named setRadius().
Steps to Draw 3D Sphere
Follow the steps given below to Draw a Sphere (3D) in JavaFX.
Step 1: Creating a Sphere
Create a Sphere in JavaFX by instantiating the class named Sphere, which belongs to a package javafx.scene.shape. You can instantiate this class in the start() method as follows.
public class ClassName extends Application { @Override public void start(Stage primaryStage) throws Exception { //Creating an object of the class Sphere Sphere sphere = new Sphere(); } }
Step 2: Setting Properties to the Sphere
Set the radius of the Sphere using the method named setRadius() as shown below.
//Setting the radius of the Sphere sphere.setRadius(300.0);
Step 3: Creating a Group Object
Instantiate the Group class by passing sphere object as a parameter to its constructor, as shown below −
Group root = new Group(sphere);
Step 4: Launching an Application
Once the 3D object is created, launch the JavaFX application by following the steps below −
-
Instantiate the class named Scene by passing the Group object as a parameter value to its constructor. You can also pass dimensions of the application screen as optional parameters to the constructor.
-
Set the title to the stage using the setTitle() method of the Stage class.
-
Add a scene object to the stage using the setScene() method of the class named Stage.
-
Display the contents of the scene using the method named show().
-
Lastly, the application is launched with the help of the launch() method within the Application class.
Example
The following program shows how to generate a Sphere using JavaFX. Save this code in a file with the name SphereExample.java.
import javafx.application.Application; import javafx.scene.Group; import javafx.scene.Scene; import javafx.stage.Stage; import javafx.scene.shape.Sphere; public class SphereExample extends Application { @Override public void start(Stage stage) { //Drawing a Sphere Sphere sphere = new Sphere(); //Setting the properties of the Sphere sphere.setRadius(50.0); sphere.setTranslateX(200); sphere.setTranslateY(150); //Creating a Group object Group root = new Group(sphere); //Creating a scene object Scene scene = new Scene(root, 600, 300); //Setting title to the Stage stage.setTitle("Drawing a Sphere - draw fill"); //Adding scene to the stage stage.setScene(scene); //Displaying the contents of the stage stage.show(); } public static void main(String args[]){ launch(args); } }
Compile and execute the saved java file from the command prompt using the following commands.
javac --module-path %PATH_TO_FX% --add-modules javafx.controls SphereExample.java java --module-path %PATH_TO_FX% --add-modules javafx.controls SphereExample
Output
On executing, the above program generates a JavaFX window displaying a Sphere as shown below.
Example
In the following program, we are applying some CSS in JavaFX by colouring the scene of JavaFX application. Save this code in a file with the name CSSSphereExample.java.
import javafx.application.Application; import javafx.scene.Group; import javafx.scene.Scene; import javafx.stage.Stage; import javafx.scene.paint.Color; import javafx.scene.shape.Sphere; public class CSSSphereExample extends Application { @Override public void start(Stage stage) { //Drawing a Sphere Sphere sphere = new Sphere(); //Setting the properties of the Sphere sphere.setRadius(50.0); sphere.setTranslateX(100); sphere.setTranslateY(150); //Creating a Group object Group root = new Group(sphere); //Creating a scene object Scene scene = new Scene(root, 300, 300); scene.setFill(Color.ORANGE); //Setting title to the Stage stage.setTitle("Drawing a Sphere"); //Adding scene to the stage stage.setScene(scene); //Displaying the contents of the stage stage.show(); } public static void main(String args[]){ launch(args); } }
Compile and execute the saved java file from the command prompt using the following commands.
javac --module-path %PATH_TO_FX% --add-modules javafx.controls CSSSphereExample.java java --module-path %PATH_TO_FX% --add-modules javafx.controls CSSSphereExample
Output
On executing, the above program generates a JavaFX window displaying a Sphere as shown below.
”;