媒介変数表示とグラフ

円の媒介変数表示

中心 \( (c_x, c_y) \)、半径 \( r \) の円の媒介変数表示です。

\[ \begin{cases} x = r \cos t + c_x \\ y = r \sin t + c_y \end{cases} \]

MyCircle.java

package myMath;

// 円の媒介変数表示

public class MyCircle extends MyCurve {

	// 中心・半径
	double cx, cy, r;

	// コンストラクタ
	public MyCircle() {
		cx = cy = 0;
		r = 1;
	}

	// 中心・半径
	public void set(double cx, double cy, double r) {
		this.cx = cx;
		this.cy = cy;
		this.r = r;
	}

	public void p(double t) {
		x = r * Math.cos(t) + cx;
		y = r * Math.sin(t) + cy;
	}
}

テスト

円を表示させます。

import java.awt.Color;
import java.awt.Graphics2D;

import myMath.MyCircle;
import myMath.Tpl20;

public class TestMyCircle extends Tpl20 {
	public void draw2(Graphics2D g2) {
		MyCircle pf = new MyCircle();

		draw(pf, 0, 2 * Math.PI);

		g2.setColor(Color.cyan);
		pf.set(1, 1, 1);
		draw(pf, 0, 2 * Math.PI);
	}
}

円が表示されますが、線分の集まりなのでギザギザ感があります。


[前へ] [戻る] [次へ]