Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Java

Giải thích phép Intersect trên hình 2D trong JavaFX


Phép toán này nhận hai hoặc nhiều hình dạng làm đầu vào và trả về diện tích giao nhau giữa chúng như hình dưới.

Giải thích phép Intersect trên hình 2D trong JavaFX

Phương thức tĩnh intersect() của lớp javafx.scene.shape.Shape chấp nhận hai đối tượng Shape và trả về kết quả của phép giao hai đối tượng cho trước.

Ví dụ

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 JavaFXIntersectExample extends Application { 
  public void start(Stage stage) { 
    // Vẽ circle1
    Circle circle1 = new Circle(); 
    circle1.setCenterX(230.0f); 
    circle1.setCenterY(100.0f); 
    circle1.setRadius(75.0f); 
    circle1.setFill(Color.DARKRED); 
    // Vẽ Circle2
    Circle circle2 = new Circle(); 
    circle2.setCenterX(280.0f); 
    circle2.setCenterY(170.0f); 
    circle2.setRadius(75.0f); 
    circle2.setFill(Color.DARKRED); 
    // Vẽ Circle3
    Circle circle3 = new Circle(); 
    circle3.setCenterX(330.0f); 
    circle3.setCenterY(100.0f); 
    circle3.setRadius(75.0f); 
    circle3.setFill(Color.DARKRED); 
    // Phép Intersect
    Shape intersect = Shape.intersect(circle1, circle2); 
    intersect = Shape.intersect(intersect, circle3); 
    intersect.setFill(Color.RED); 
    // Thiết lập Stage
    Group root = new Group(circle1, circle2, circle3, intersect); 
    Scene scene = new Scene(root, 595, 300); 
    stage.setTitle("Intersect Operation"); 
    stage.setScene(scene); 
    stage.show(); 
  } 
  public static void main(String args[]){ 
    launch(args); 
  } 
}

Kết quả

Giải thích phép Intersect trên hình 2D trong JavaFX