2012-05-02 3 views
1

반원 30 픽셀과 20 픽셀 떨어진 두 개의 원을 그렸다고합니다. 줄의 교차점을 얻을 수 있습니다. 이 교차를 방지하려면 어떻게해야합니까?Java : 여러 모양의 윤곽 만들기

다양한 그래픽 필터링을 시도해 보았지만 적절한 내용을 찾지 못했습니다.

답변

3

당신은 작업을 할 java.awt.geom.Area 클래스를 사용할 수 있습니다 (이 질문은이 서클에 한정되는 것은 아니다). add(), intersect(), subtract() 메소드를 가지고있다.

하나의 영역 (양쪽 타원의 합)을 만들고 다른 영역 (양쪽 타원의 교차점)을 뺍니다.


근무 코드 :

int x = 200; int y = 200; 
Ellipse2D.Double first = new Ellipse2D.Double(x,y,75,75); 
Ellipse2D.Double second = new Ellipse2D.Double(x+25,y,75,75); 
Area circles = new Area(first); 
circles.add(new Area(second)); 

graphics2D.draw(circles); 

Two Circles

+0

와는 어떻게 다음이 새로운 영역을 그릴까요? –

+1

모양이 같으므로 Graphics2D의 public void draw (Shape s) 메서드를 사용하여 결과 영역을 전달합니다. – StanislavL

+0

아 물론 물론, 모양 그리기 Graphics2D입니다. 음, 작동하지 않는 것 같습니다. 별도로 그려지기 때문에 여전히 두 서클을 그리는 중입니다. 이 질문에 내가 확인해 보도록하겠습니다. –