雛形を利用して、色々なグラフを描きます。
媒介変数表示のグラフを描きます。 雛形(MyApp.h")は、既に媒介変数表示ですから、そのまま使います。 ここでは、変更した所だけ載せます。
x = y2 の場合、x = t * t, y = t です。
// 曲線
class MyCurve2 : public MyCurve{
public:
double fx(double t){
return t * t;
}
double fy(double t){
return t;
}
};
実行画面です。
中心 (cx, cy)、半径 r の円です。
// 曲線
class MyCurve2 : public MyCurve{
public:
double cx, cy, r;
double fx(double t){
return r * cos(t) + cx;
}
double fy(double t){
return r * sin(t) + cy;
}
// コンストラクタ
MyCurve2(){
cx = 0;
cy = 0;
r = 1;
}
void set(double a, double b, double r1){
cx = a;
cy = b;
r = r1;
}
};
実行画面です。
// 曲線
class MyCurve2 : public MyCurve{
public:
double r;
double fx(double t){
return r * (t - sin(t));
}
double fy(double t){
return r * (1 - cos(t));
}
// コンストラクタ
MyCurve2(){
r = 1;
}
void set(double r1){
r = r1;
}
};
実行画面です。
// 曲線
class MyCurve2 : public MyCurve{
public:
double rc;
double rm;
double fx(double t){
return (rc + rm) * cos(t) - rm * cos((rc / rm + 1) * t);
}
double fy(double t){
return (rc + rm) * sin(t) - rm * sin((rc / rm + 1) * t);
}
// コンストラクタ
MyCurve2(){
rc = 2;
rm = 1;
}
void set(double rc1, double rm1){
rc = rc1;
rm = rm1;
}
};
rc = 4, rm = 1
// 曲線
class MyCurve2 : public MyCurve{
public:
double rc;
double rm;
double fx(double t){
return (rc - rm) * cos(t) + rm * cos((rc / rm - 1) * t);
}
double fy(double t){
return (rc - rm) * sin(t) - rm * sin((rc / rm - 1) * t);
}
// コンストラクタ
MyCurve2(){
rc = 4;
rm = 1;
}
void set(double rc1, double rm1){
rc = rc1;
rm = rm1;
}
};
// 曲線
class MyCurve2 : public MyCurve{
public:
double a;
double b;
double fx(double t){
return sin(a * t);
}
double fy(double t){
return sin(b * t);
}
// コンストラクタ
MyCurve2(){
a = 2;
b = 3;
}
void set(double a1, double b1){
a = a1;
b = b1;
}
};
// 曲線
class MyCurve2 : public MyCurve{
public:
double fx(double t){
return 3 * t / (1 + pow(t, 3));
}
double fy(double t){
return 3 * pow(t, 2) / (1 + pow(t, 3));
}
};
// 曲線
class MyCurve2 : public MyCurve{
public:
double fx(double t){
return pow(cos(t), 3);
}
double fy(double t){
return pow(sin(t), 3);
}
};