Operación de intersección de formas 2D (objetos)
Esta operación toma dos o más formas como entradas y devuelve el área de intersección entre ellas como se muestra a continuación.
Puede realizar una operación de intersección en las formas utilizando el método denominado intersect(). Dado que este es un método estático, debe llamarlo usando el nombre de la clase (Shape o sus subclases) como se muestra a continuación.
Shape shape = Shape.intersect(circle1, circle2);
A continuación se muestra un ejemplo de la operación de intersección. Aquí, estamos dibujando dos círculos y realizando una operación de intersección en ellos.
Guarde este código en un archivo con el nombre IntersectionExample.java
Ejemplo
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.paint.Color;
import javafx.stage.Stage;
import javafx.scene.shape.Circle;
import javafx.scene.shape.Shape;
public class IntersectionExample extends Application {
@Override
public void start(Stage stage) {
//Drawing Circle1
Circle circle1 = new Circle();
//Setting the position of the circle
circle1.setCenterX(250.0f);
circle1.setCenterY(135.0f);
//Setting the radius of the circle
circle1.setRadius(100.0f);
//Setting the color of the circle
circle1.setFill(Color.DARKSLATEBLUE);
//Drawing Circle2
Circle circle2 = new Circle();
//Setting the position of the circle
circle2.setCenterX(350.0f);
circle2.setCenterY(135.0f);
//Setting the radius of the circle
circle2.setRadius(100.0f);
//Setting the color of the circle
circle2.setFill(Color.BLUE);
//Performing intersection operation on the circle
Shape shape = Shape.intersect(circle1, circle2);
//Setting the fill color to the result
shape.setFill(Color.DARKSLATEBLUE);
//Creating a Group object
Group root = new Group(shape);
//Creating a scene object
Scene scene = new Scene(root, 600, 300);
//Setting title to the Stage
stage.setTitle("Intersection Example");
//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 y ejecute el archivo java guardado desde el símbolo del sistema utilizando los siguientes comandos.
javac IntersectionExample.java
java IntersectionExample
Al ejecutarse, el programa anterior genera una ventana JavaFX que muestra la siguiente salida: