曲线
曲线、曲面主要分为两种:
,如圆、椭圆、双曲线、圆柱、圆球等。
,只有一些数据点,称为“型值点”。
常见二次曲线的绘制
(1)曲线的方程取参数方程。
(2)将曲线分割成很多短线段,用这些短线段来逼近曲线。
/*正弦曲线*/
#include <>
#include <>
#define PI
main()
{
int dlt,x;
float n0,s0,n,s,ds,dn;
int gdriver=DETECT,gmode;
initgraph(&gdriver,&gmode,"");
setbkcolor(15);
setcolor(4);
dlt=3;
ds = sin(2 * dlt * PI/640);
dn= cos(2 * dlt * PI/640);
s0 = 0;
n0 = 1;
line (0,240,640,240);
moveto(0,240);
x=0;
while(x<640)
{
s = s0 * dn + n0 * ds;
n= n0 * dn- s0 * ds;
x = x + dlt;
o(x, 240 – 160* s);
s0 = s;
n0 = n;
}
getch();
closegraph();
}
曲线参数表示:
参数表示:曲线上任一点的坐标均表示成给定参数的函数。假定用t表示参数,平面曲线上任一点P可表示为:
空间曲线上任一三维点P可表示为:
参数表示例子:
直线
圆
参数表示的优点:
1)有更大的自由度来控制曲线、曲面的形状
2)对曲线、曲面进行变换,可对其参数方程直接进行几何变换。
3)便于处理斜率为无穷大的情形,不会因此而中断计算。
4)便于用户把低维空间中曲线、曲面扩展到高维空间去。
5)规格化的参数变量t∈[0, 1],使其相应的几何分量是有界的,而不必用另外的参数去定义边界。
6)易于用矢量和矩阵表示几何分量,简化了计算。
位置矢量、切矢量
曲线上任一点的位置矢量可表示为: P(t)=[x(t), y(t), z(t)];
北航计算机图形学8 来自淘豆网m.daumloan.com转载请标明出处.