# 2D Shapes(Objects) - Union Operation

This operation takes two or more shapes as inputs and returns the area occupied by them combinedly as shown below. You can perform union operation on the shapes using the method called union(). Since this is a static method, you should call it using the class name (Shape or its subclasses) as shown below.

```Shape shape = Shape.subtract(circle1, circle2);
```

## Example

Following is an example of the union operation. In here, we are drawing two circles and performing a union operation on them. Save this code in a file with the name unionExample.java.

```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 UnionExample 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

//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

//Setting the color of the circle
circle2.setFill(Color.BLUE);

//Performing union operation on the circle
Shape shape = Shape.union(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("Union Example");

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 UnionExample.java
java UnionExample
```

On executing, the above program generates a JavaFX window displaying the following output − javafx_2d_shapes.htm