#include <stdlib.h>
#include <GL/glut.h>
void init(void)
{
//背景
glClearColor(0.0, 0.0, 0.0, 0.0);
glShadeModel(GL_FLAT);
}
void draw_triangle(void)
{
//绘制三角形
// glBegin(GL_LINE_LOOP)所有点首尾相接
glBegin(GL_LINE_LOOP);
glVertex2f(0.0, 25.0);
glVertex2f(25.0, -25.0);
glVertex2f(-25.0, -25.0);
glEnd();
}
//display
void display(void)
{
glClear(GL_COLOR_BUFFER_BIT);
glLoadIdentity();
glColor3f(1.0, 1.0, 1.0);
draw_triangle();
//glEnable用于启用各种功能
// //void glEnable(GLenum cap)
//GL_LINE_STIPPLE执行后画虚线;一种cap取值
glEnable(GL_LINE_STIPPLE);
glLineStipple(1, 0xF0F0);
//函数原型:void glLineStipple( GLint factor, GLushort pattern );
glLoadIdentity();
//平移 (x,y,z)
glTranslatef(-20.0, 0.0, 0.0);
draw_triangle();
//画线
glLineStipple(1, 0xF00F);
//当前矩阵恢复成一个单位矩阵
glLoadIdentity();
//缩放xyz
glScalef(1.5, 0.5, 1.0);
draw_triangle();
glLineStipple(1, 0x8888);
glLoadIdentity();
//旋转(角度/默认逆时针 旋转方向向量)
glRotatef(90.0, 0.0, 0.0, 1
三角形平移旋转与缩放
最新推荐文章于 2023-02-05 00:08:47 发布