半径 30 ピクセル、間隔 20 ピクセルの 2 つの円を描いたとします。あなたは線の交差を得るでしょう。このクロスオーバーを防ぐにはどうすればよいですか?
さまざまなグラフィック フィルタリングを調べてみましたが、適切なものが見つかりませんでした。
(この質問は2つのサークルに限定されません)
java.awt.geom.Area
クラスを使用して操作を実行できます。add()、intersect()、subtract() メソッドがあります。
1 つの領域 (両方の楕円の合計) を作成し、別の領域 (両方の楕円の交点) を減算します。
作業コード:
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);