OpenGL入门笔记(十二)成员变量区:
OpenGL入门笔记(十二)GLuint
base;
OpenGL入门笔记(十二)GLfloatcnt1;
OpenGL入门笔记(十二)GLfloatcnt2;
OpenGL入门笔记(十二)

OpenGL入门笔记(十二)成员函数区:
OpenGL入门笔记(十二)GLvoidCOpenGLDemoView::glPrint(
constchar*fmt,OpenGL入门笔记(十二))//CustomGL"Print"Routine
OpenGL入门笔记(十二)OpenGL入门笔记(十二)
OpenGL入门笔记(十二){
OpenGL入门笔记(十二)
chartext[256];//HoldsOurString
OpenGL入门笔记(十二)
va_listap;//PointerToListOfArguments
OpenGL入门笔记(十二)

OpenGL入门笔记(十二)
if(fmt==NULL)//IfThere'sNoText
OpenGL入门笔记(十二)
return;//DoNothing
OpenGL入门笔记(十二)

OpenGL入门笔记(十二)va_start(ap,fmt);
//ParsesTheStringForVariables
OpenGL入门笔记(十二)
vsprintf(text,fmt,ap);//AndConvertsSymbolsToActualNumbers
OpenGL入门笔记(十二)
va_end(ap);//ResultsAreStoredInText
OpenGL入门笔记(十二)

OpenGL入门笔记(十二)glPushAttrib(GL_LIST_BIT);
//PushesTheDisplayListBits
OpenGL入门笔记(十二)
glListBase(base);//SetsTheBaseCharacterto32
OpenGL入门笔记(十二)
glCallLists(strlen(text),GL_UNSIGNED_BYTE,text);//DrawsTheDisplayListText
OpenGL入门笔记(十二)
glPopAttrib();//PopsTheDisplayListBits
OpenGL入门笔记(十二)
}

OpenGL入门笔记(十二)
OpenGL入门笔记(十二)GLvoidCOpenGLDemoView::BuildFont(GLvoid)
OpenGL入门笔记(十二)OpenGL入门笔记(十二)
OpenGL入门笔记(十二){
OpenGL入门笔记(十二)HFONTfont;
//WindowsFontID
OpenGL入门笔记(十二)
HFONToldfont;//UsedForGoodHouseKeeping
OpenGL入门笔记(十二)

OpenGL入门笔记(十二)
base=glGenLists(96);//StorageFor96Characters
OpenGL入门笔记(十二)

OpenGL入门笔记(十二)font
=CreateFont(-24,//HeightOfFont
OpenGL入门笔记(十二)
0,//WidthOfFont
OpenGL入门笔记(十二)
0,//AngleOfEscapement
OpenGL入门笔记(十二)
0,//OrientationAngle
OpenGL入门笔记(十二)
FW_BOLD,//FontWeight
OpenGL入门笔记(十二)
FALSE,//Italic
OpenGL入门笔记(十二)
FALSE,//Underline
OpenGL入门笔记(十二)
FALSE,//Strikeout
OpenGL入门笔记(十二)
ANSI_CHARSET,//CharacterSetIdentifier
OpenGL入门笔记(十二)
OUT_TT_PRECIS,//OutputPrecision
OpenGL入门笔记(十二)
CLIP_DEFAULT_PRECIS,//ClippingPrecision
OpenGL入门笔记(十二)
ANTIALIASED_QUALITY,//OutputQuality
OpenGL入门笔记(十二)
FF_DONTCARE|DEFAULT_PITCH,//FamilyAndPitch
OpenGL入门笔记(十二)
"CourierNew");//FontName
OpenGL入门笔记(十二)
HDChDC=::GetDC(this->m_hWnd);
OpenGL入门笔记(十二)oldfont
=(HFONT)SelectObject(hDC,font);//SelectsTheFontWeWant
OpenGL入门笔记(十二)
wglUseFontBitmaps(hDC,0,255,base);//Builds96CharactersStartingAtCharacter32
OpenGL入门笔记(十二)
SelectObject(hDC,oldfont);//SelectsTheFontWeWant
OpenGL入门笔记(十二)
DeleteObject(font);//DeleteTheFont
OpenGL入门笔记(十二)
}

OpenGL入门笔记(十二)GLvoidCOpenGLDemoView::KillFont(GLvoid)
OpenGL入门笔记(十二)OpenGL入门笔记(十二)
OpenGL入门笔记(十二){
OpenGL入门笔记(十二)glDeleteLists(
base,96);
OpenGL入门笔记(十二)}

OpenGL入门笔记(十二)GLvoidCOpenGLDemoView::KillFont(GLvoid)
OpenGL入门笔记(十二)OpenGL入门笔记(十二)
OpenGL入门笔记(十二){
OpenGL入门笔记(十二)glDeleteLists(
base,96);
OpenGL入门笔记(十二)}

OpenGL入门笔记(十二)
OpenGL入门笔记(十二)
intCOpenGLDemoView::DrawGLScene()
OpenGL入门笔记(十二)OpenGL入门笔记(十二)
OpenGL入门笔记(十二){//Here'sWhereWeDoAllTheDrawing
OpenGL入门笔记(十二)
glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);//ClearScreenAndDepthBuffer
OpenGL入门笔记(十二)
glLoadIdentity();//ResetTheCurrentModelviewMatrix
OpenGL入门笔记(十二)
glTranslatef(0.0f,0.0f,-1.0f);//MoveOneUnitIntoTheScreen
OpenGL入门笔记(十二)
//PulsingColorsBasedOnTextPosition
OpenGL入门笔记(十二)
glColor3f(1.0f*float(cos(cnt1)),1.0f*float(sin(cnt2)),1.0f-0.5f*float(cos(cnt1+cnt2)));
OpenGL入门笔记(十二)
//PositionTheTextOnTheScreen
OpenGL入门笔记(十二)
glRasterPos2f(-0.45f+0.05f*float(cos(cnt1)),0.32f*float(sin(cnt2)));
OpenGL入门笔记(十二)glPrint(
"ActiveOpenGLText-%7.2f",cnt1);//PrintGLTextToTheScreen
OpenGL入门笔记(十二)
cnt1+=0.051f;//IncreaseTheFirstCounter
OpenGL入门笔记(十二)
cnt2+=0.005f;//IncreaseTheFirstCounter
OpenGL入门笔记(十二)
returnTRUE;//EverythingWentOK
OpenGL入门笔记(十二)
//EverythingWentOK
OpenGL入门笔记(十二)
}

OpenGL入门笔记(十二)
OpenGL入门笔记(十二)

OpenGL入门笔记(十二)

相关文章: