计算机图形学(第四版)- 输出图元-读书笔记P37



1.无论画什么,都是由以下格式出现。其中*可以为GL_POINTS、GL_LINES来描述所画物体。

glBegin(*);
    .......
glEnd();

   因此,一个点的描述格式为:

glBegin(GL_POINTS);
    glVertex*();
glEnd();

   一条线的描述格式为:

glBegin(GL_LINES);
    glVertex*();
    glVertex*();
glEnd();

2.画点函数  glVertex*();

glVertex*();可指定一个点位置的坐标值。其中*表示该函数要有后缀码,例如glVertex3f();glVertex2iv();

后缀码用来致命空间维数;坐标值变量的数据类型;可能的向量形式坐标描述。

空间维数可以为2、3、4;数据类型可以为i(整数)、s(短整数)、f(浮点数)、d(双精度浮点数);若使用矩阵形式坐标位置,则添加后缀码v(向量)。

因此glVertex3f(-78.05,909.72,14.60);   == 用3个浮点数表示的点,分别代表在x,y,z轴上的坐标值。

       int point1 [] = {50,100};

       glVertex2iv(point1);  == 用2个整数的矩阵形式描述的坐标值,分别代表在x,y轴上的坐标值。

一些画点的小栗子:

a.坐标用整数给出(2维世界)~~~~画出3个2维坐标的点

glBegin(GL_POINTS);
    glVertex2i(50,100);
    glVertex2i(75,150);
    glVertex2i(100,200);
glEnd();

b.坐标用整数给出(3维世界)~~~~画出2个3维坐标的点

glBegin(GL_POINTS);
    glVertex3f(-78.05,909.72,14.60); 
    glVertex3f(261.91,-5200.67,188.33);
glEnd();

c.坐标以矩阵形式给出

d.用C++类给出(也可以用结构体给出,此处略)



-----------------------------------------------------------------吐槽分割线----------------------------------------------------------

Hummm~编辑器太挫,写完我自己都不想看,虽然我的排版已经尽量对齐了,但还是很难图形结合的介绍。

(因为自己懒,又不想用AI画图,而且也找不到这本书的PDF版,截不了图吐舌头

不过想想,以前我看别人的技术博客,看得也挺累的。。。

那么,大家就凑合凑合看吧,用笔记一记,画一画,看起来更舒服喔:-O

恩,如果我开心的话说不定会补图上来再见

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值