19,469
社区成员
发帖
与我相关
我的任务
分享
glBegin(GL_POLYGON);
glVertex3f(m_p0.m_x,m_p0.m_y,m_p0.m_z);
glVertex3f(m_p1.m_x,m_p1.m_y,m_p1.m_z);
glVertex3f(m_p2.m_x,m_p2.m_y,m_p2.m_z);
glEnd();
#include <GL/glut.h>
#include <stdlib.h>
#include <windows.h>
#include "math.h"
//using namespace std;
#define PI 3.1415926
void myinit()
{
glClearColor(1.0, 1.0, 1.0, 0.0);
glShadeModel(GL_FLAT);
glEnable(GL_LINE_SMOOTH);
glHint(GL_LINE_SMOOTH_HINT, GL_DONT_CARE);
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
glEnable(GL_LINE_SMOOTH);
}
void resize(int w, int h)
{
glViewport(0,0,w,h);
GLfloat aspect = (GLfloat)w/(GLfloat)h;
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(0.0,0.0,20.0,0.0,0.0,0.0,0.0,1.0,0.0);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
float hh=20.0f;
glOrtho(-hh*aspect,hh*aspect,-hh,hh,0.0,40.0);
glMatrixMode(GL_MODELVIEW); //这句加一下
}
void mydraw()
{
float a[]={-10.0,0.0,10.0};
float b[]={10.0,0.0,0.0};
float c[]={-10.0,0.0,0.0};
glClear(GL_COLOR_BUFFER_BIT);
glLoadIdentity();
glColor3f(1.0, 0.0, 1.0);
glEnable(GL_POINT_SMOOTH);
glPointSize(1.0);
glBegin(GL_LINE_LOOP);
glVertex2fv(a);
glVertex2fv(b);
glVertex2fv(c);
glEnd();
glFlush();
}
int main(int argc, char** argv)
{
glutInit(&argc, argv);
glutInitDisplayMode (GLUT_SINGLE| GLUT_RGB);
glutInitWindowSize(600,600);
glutCreateWindow("PttoCircle");
myinit();
glutReshapeFunc(resize);
glutDisplayFunc(mydraw);
//glutKeyboardFunc(keyboard);
//glutMouseFunc(mouse);
//glutMotionFunc(mousemove);
//glutIdleFunc(Idlefn);
glutMainLoop();
return 0;
}