Пример #1
0
void Draw3D()
{
    glMatrixMode(GL_PROJECTION);
    glLoadIdentity();
    gluPerspective( 70, W/(double)H, 0.01, 10000 );
    glMatrixMode(GL_MODELVIEW);
    glLoadIdentity();
    ReinitCamera();
    glMatrixMode(GL_PROJECTION);
    glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
    glBindTexture(GL_TEXTURE_2D,texture1);
    glTexImage2D(GL_TEXTURE_2D,0,GL_RGBA,256,256,0,GL_RGBA,GL_UNSIGNED_BYTE,texturedata.ptr());
    glPointSize(3);
    glColor3f(1.0,1.0,1.0);
    glBegin(GL_POINTS);
        for(int i = 0; i<1000; i++)
        glVertex3f(points[i][0], points[i][1], points[i][2]);
    glEnd();
    glColor3f(1.0,1.0,1.0);
    glBegin(GL_QUADS);
        glTexCoord2f(0,0); glVertex3f(-128,-128,128);
        glTexCoord2f(1,0); glVertex3f(128,-128,128);
        glTexCoord2f(1,1); glVertex3f(128,128,128);
        glTexCoord2f(0,1); glVertex3f(-128,128,128);
    glEnd();
    glBegin(GL_QUADS);
        glTexCoord2f(0,0); glVertex3f(-128,-128,-128);
        glTexCoord2f(1,0); glVertex3f(128,-128,-128);
        glTexCoord2f(1,1); glVertex3f(128,128,-128);
        glTexCoord2f(0,1); glVertex3f(-128,128,-128);
    glEnd();
    glBegin(GL_QUADS);
        glTexCoord2f(0,0); glVertex3f(128,-128,-128);
        glTexCoord2f(1,0); glVertex3f(128,-128,128);
        glTexCoord2f(1,1); glVertex3f(128,128,128);
        glTexCoord2f(0,1); glVertex3f(128,128,-128);
    glEnd();
     glBegin(GL_QUADS);
        glTexCoord2f(0,0); glVertex3f(-128,-128,-128);
        glTexCoord2f(1,0); glVertex3f(-128,-128,128);
        glTexCoord2f(1,1); glVertex3f(-128,128,128);
        glTexCoord2f(0,1); glVertex3f(-128,128,-128);
    glEnd();
     glBegin(GL_QUADS);
        glTexCoord2f(0,0); glVertex3f(-128,-128,128);
        glTexCoord2f(1,0); glVertex3f(128,-128,128);
        glTexCoord2f(1,1); glVertex3f(128,-128,-128);
        glTexCoord2f(0,1); glVertex3f(-128,-128,-128);
    glEnd();
     glBegin(GL_QUADS);
        glTexCoord2f(0,0); glVertex3f(-128,128,128);
        glTexCoord2f(1,0); glVertex3f(128,128,128);
        glTexCoord2f(1,1); glVertex3f(128,128,-128);
        glTexCoord2f(0,1); glVertex3f(-128,128,-128);
    glEnd();
}
Пример #2
0
void ReSizeGLScene(int Width, int Height)
{
	glViewport(0,0,Width,Height);	
    glMatrixMode(GL_PROJECTION);
	glLoadIdentity();
    if( CurrMode == M_2D )
	    glOrtho(0,W,H,0,0,1);
    if( CurrMode == M_3D )
        gluPerspective( 70, W/(double)H, 0.1, 1000 );
    glMatrixMode(GL_MODELVIEW);
    glLoadIdentity(); 
    ReinitCamera();
    W = Width;
    H = Height;
}
Пример #3
0
void Viewer::InitCamera()
{
	m_pCamera = new Camera(ORTHO);

	m_pWorldManager->SetCameraPointer(m_pCamera);
	m_pWorldManager->m_eCameraType = ORTHO;

	m_fUpright[0] = 0.0f;
	m_fUpright[1] = 0.0f;
	m_fUpright[2] = -1.0f;

	m_fAim[0] = 5.0f;
	m_fAim[1] = -1.0f;
	m_fAim[2] = 35.0f;
	
	m_fEye[0] = 5.0f;
	m_fEye[1] = 12.0f;
	m_fEye[2] = 35.0f;

	ReinitCamera(ORTHO, -6.0f, 17.0f, 13.0f, 36.0f, 1.0f, 1000.0f);
}