曲線は、ある t の値に対して、点P(x, y) が定まるものです。 これを実現するクラスを作ります。
全ソースです。
public class MyCurve {
public double x, y;
public double x1, y1, x2, y2;
// コンストラクタ
public MyCurve() {
x = y = 0;
x1 = y1 = x2 = y2 = 0;
}
// 曲線上の2点の座標を求める
public void p(double t1, double t2) {
p(t1);
x1 = x;
y1 = y;
p(t2);
x2 = x;
y2 = y;
}
// (x, y) = (x(t), y(t))
public void p(double t) {
x = t;
y = t;
}
}
p(t) で点の座標を求めます。 個々の式は、このメソッドをオーバーライドします。
// (x, y) = (x(t), y(t))
public void p(double t) {
x = t;
y = t;
}
また、曲線上の2点の座標を求めるメソッドを作っておきます。
// 曲線上の2点の座標を求める
public void p(double t1, double t2) {
p(t1);
x1 = x;
y1 = y;
p(t2);
x2 = x;
y2 = y;
}