青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Shuffy

不斷的學習,不斷的思考,才能不斷的進步.Let's do better together!
posts - 102, comments - 43, trackbacks - 0, articles - 19

剪裁區域

     In OpenGL when you create a window to draw in we must specify the coordinate system we want to use and how to map the specified coordinates into physical screen coordinates. We would be using the 2D Cartesian coordinate system with the origin 0,0 at the centre of the screen. Before we can start plotting points, lines and shapes in a window we must also specify how to translate coordinate pairs into screen coordinates, by specifying the clipping area i.e the region of Cartesian space that occupies the window. 

視口

The clipping area height and width will rarely match the width and height of the window in pixels. The coordinate system must therefore be mapped from logical Cartesian coordinates to physical screen coordinates. This mapping is specified by a setting known as the viewport, which is the region within the window's client area that is used for drawing the clipping area. 

頂點和基本圖元

A vertex is nothing more than a coordinate in 2D or 3D space. In both 2D and 3D, when we draw an object we compose it with several smaller shapes called primitives which as 1 or 2 dimensional entities such as points, lines, and polygons. Each corner of an object composed of primitives is a vertex

基本圖形繪制程序

1,CCY457OpenGLView.h中加入下列變量:

BOOL m_bPoint;        //Status of Point
    BOOL m_bLine;        //Status of Line
    BOOL m_bPolygon;    //Status of Polygon
    BOOL m_bTriangle;    //Status of Triangle

2,并且加入四個菜單項及其對應的事件處理程序。

void CCY457OpenGLView::OnShapesPoint() 
{
//畫點
    m_bPoint = TRUE;
    m_bLine 
= FALSE;
    m_bPolygon 
= FALSE;
    m_bTriangle 
= FALSE;
    InvalidateRect(NULL,FALSE);    
}
void CCY457OpenGLView::OnShapesLine() 
{
//畫線
    m_bPoint = FALSE;
    m_bLine 
= TRUE;
    m_bPolygon 
= FALSE;
    m_bTriangle 
= FALSE;        
    InvalidateRect(NULL,FALSE);    
}
void CCY457OpenGLView::OnShapesPolygon() 
{
//畫多邊形
    m_bPoint = FALSE;
    m_bLine     
= FALSE;
    m_bPolygon 
= TRUE;
    m_bTriangle 
= FALSE;        
    InvalidateRect(NULL,FALSE);    
}
void CCY457OpenGLView::OnShapesTriangle() 
{
//畫三角形
    m_bPoint = FALSE;
    m_bLine     
= FALSE;
    m_bPolygon 
= FALSE;
    m_bTriangle 
= TRUE;        
    InvalidateRect(NULL,FALSE);    
}

3,修改第二篇文章中的OnSize()函數,因為本文中只繪制2維圖形.

void CCY457OpenGLView::OnSize(UINT nType, int cx, int cy) 
{
    CView::OnSize(nType, cx, cy);
    GLdouble aspect_ratio; 
// width/height ratio
    if ( 0 >= cx || 0 >= cy )
    {
        
return;
    }
    
// select the full client area
    ::glViewport(00, cx, cy);
    
// compute the aspect ratio
    
// this will keep all dimension scales equal
    aspect_ratio = (GLdouble)cx/(GLdouble)cy;
    
// select the projection matrix and clear it
    ::glMatrixMode(GL_PROJECTION);
    ::glLoadIdentity();
    
// select the viewing volume
    
//::gluPerspective(45.0f, aspect_ratio, .01f, 200.0f);
    ::gluOrtho2D(-10.0f10.0f-10.0f10.0f);    
    
// switch back to the modelview matrix and clear it
    ::glMatrixMode(GL_MODELVIEW);
    ::glLoadIdentity();
}

4,RenderScene中加入具體的繪制代碼:

void CCY457OpenGLView::RenderScene ()
{
//繪制函數
    if(m_bPoint==TRUE)
    {
        glPointSize(
3.0f);
        glBegin(GL_POINTS);
            glVertex2f(
0.0f,0.0f);
            glVertex2f(
1.0f,0.0f);
            glVertex2f(
0.0f,1.0f);
        glEnd();
    }
    
else if(m_bLine==TRUE)
    {
        glBegin(GL_LINES);
            glVertex2f(
0.0f,0.0f);
            glVertex2f(
1.0f,0.0f);
        glEnd();
    }
    
else if(m_bTriangle==TRUE)
    {
        glBegin(GL_TRIANGLES);
            glVertex2f(
0.0f,0.0f);
            glVertex2f(
2.0f,0.0f);
            glVertex2f(
0.0f,2.0f);
        glEnd();
    }
    
else if(m_bPolygon==TRUE)
    {
        glBegin(GL_POLYGON);
            glVertex2f(
0.0f,0.0f);
            glVertex2f(
3.0f,0.0f);
            glVertex2f(
4.0f,3.0f);
            glVertex2f(
1.5f,6.0f);
            glVertex2f(
-1.0f,3.0f);
        glEnd();
    }
}

 

作者:洞庭散人

出處:http://phinecos.cnblogs.com/    

本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。
原文鏈接:http://www.cnblogs.com/phinecos/archive/2008/11/05/1327343.html
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            一本色道久久综合亚洲精品小说| 裸体一区二区| 亚洲精品视频中文字幕| 欧美va亚洲va香蕉在线| 亚洲人成久久| 亚洲精品国产精品国自产观看| 美女精品网站| 99精品视频免费在线观看| 亚洲看片一区| 国产精品一区2区| 久久精品免费| 免费在线观看日韩欧美| 在线亚洲电影| 香蕉国产精品偷在线观看不卡| 国产一区自拍视频| 亚洲电影观看| 国产精品国产三级国产普通话三级 | 欧美在线观看网站| 尤物精品在线| 亚洲精品中文字幕有码专区| 国产精品www网站| 久久精品国产99精品国产亚洲性色| 欧美伊人久久大香线蕉综合69| 亚洲成人在线网| 亚洲精品一二区| 国产日韩精品入口| 欧美黄网免费在线观看| 欧美视频一区二区三区…| 久久久久久久久久久成人| 欧美**人妖| 欧美影视一区| 欧美久久影院| 久久久久久久一区二区三区| 欧美国产日韩xxxxx| 久久精品视频亚洲| 欧美日韩国产区| 久久免费观看视频| 国产精品v亚洲精品v日韩精品| 久久久亚洲人| 国产精品国产三级国产普通话99 | 欧美高清在线| 国产精品免费观看在线| 欧美电影专区| 国内精品国语自产拍在线观看| 91久久久在线| 亚洲国产精品黑人久久久| 亚洲综合大片69999| 夜夜嗨av一区二区三区四区 | 亚洲人成绝费网站色www| 国产一级精品aaaaa看| aa日韩免费精品视频一| 亚洲国产精品免费| 久久精品一本| 欧美在线免费看| 国产精品二区在线| 亚洲免费观看高清完整版在线观看熊| 狠色狠色综合久久| 欧美在线观看视频| 欧美在线网址| 国产精品亚洲产品| 亚洲永久在线| 亚洲综合电影| 欧美四级在线观看| 亚洲精品色图| av成人免费观看| 欧美精品日韩三级| 亚洲精品欧美专区| 亚洲视频一区| 欧美日韩在线精品| 一本色道久久综合亚洲精品婷婷 | 好看的av在线不卡观看| 性做久久久久久久免费看| 欧美一区二区三区四区在线观看地址| 欧美日韩在线一区二区| 一本色道久久综合亚洲精品按摩 | 一区二区三区久久网| 欧美精品一区视频| 亚洲毛片播放| 亚洲欧美一区二区激情| 国产精品亚洲综合色区韩国| 亚洲欧美日韩一区在线观看| 久久电影一区| 亚洲成色最大综合在线| 免费亚洲视频| 日韩亚洲欧美成人| 欧美一区二区视频97| 国产揄拍国内精品对白| 久久久久久久欧美精品| 欧美激情亚洲综合一区| 一本一本久久a久久精品牛牛影视| 欧美日韩国产一区精品一区| 亚洲视频在线观看一区| 久久尤物视频| 亚洲精品中文字幕在线| 国产精品美腿一区在线看| 久久精品日韩| 日韩视频免费观看高清完整版| 亚洲影视综合| 在线视频国产日韩| 欧美婷婷久久| 久久天天躁狠狠躁夜夜爽蜜月| 亚洲精品日韩激情在线电影| 欧美一级精品大片| 亚洲人成在线观看一区二区| 欧美性视频网站| 久久久亚洲国产美女国产盗摄| 亚洲精品美女| 久久综合久久综合九色| 在线一区二区三区做爰视频网站| 国产日韩欧美高清免费| 欧美激情精品久久久久久黑人| 亚洲欧美综合精品久久成人| 亚洲国产精品高清久久久| 欧美一区二区三区精品| 亚洲精品一二区| 国内偷自视频区视频综合| 欧美日韩一区二区精品| 久久婷婷国产麻豆91天堂| 一区二区三区欧美激情| 欧美电影免费观看| 久久精品1区| 亚洲一区二区三区四区五区午夜 | 欧美日韩福利在线观看| 久久久久国产精品一区二区| 亚洲视频网在线直播| 亚洲国产精品国自产拍av秋霞| 久久久久久久网站| 亚洲欧美在线高清| 中文在线资源观看网站视频免费不卡 | 欧美性大战久久久久久久| 毛片av中文字幕一区二区| 午夜国产精品视频| 一本色道88久久加勒比精品| 亚洲成色777777女色窝| 久久夜色精品国产噜噜av| 欧美影院在线播放| 亚洲欧美bt| 中文国产成人精品| 一本久久综合| 999亚洲国产精| 亚洲三级免费电影| 亚洲黄色大片| 亚洲国产综合在线| 在线日韩欧美视频| 亚洲成人资源网| 亚洲成人影音| 亚洲电影av| 亚洲黄色片网站| 亚洲破处大片| 亚洲免费激情| 一本久道久久综合婷婷鲸鱼| 99国产精品久久久久老师| 亚洲精品影视| 亚洲精品久久久久中文字幕欢迎你| 亚洲丰满在线| 亚洲欧洲精品一区二区三区 | 亚洲欧美日韩天堂一区二区| 在线观看亚洲精品视频| 国产亚洲亚洲| 在线精品视频一区二区| 亚洲国产精品成人综合色在线婷婷 | 一区二区三区三区在线| 亚洲特级毛片| 欧美在线1区| 老色鬼精品视频在线观看播放 | 亚洲国产精品国自产拍av秋霞| 亚洲国产成人精品女人久久久 | 99精品国产在热久久| 亚洲图片自拍偷拍| 午夜在线一区| 美国成人直播| 欧美日精品一区视频| 国产精品日本一区二区| 国产一本一道久久香蕉| 亚洲国产高清高潮精品美女| 99热这里只有精品8| 午夜免费在线观看精品视频| 久久九九免费视频| 亚洲国产经典视频| 亚洲视频视频在线| 久久日韩精品| 欧美四级在线| 樱花yy私人影院亚洲| 中文国产成人精品久久一| 久久精品天堂| 亚洲精品永久免费精品| 欧美在线视频观看免费网站| 女人香蕉久久**毛片精品| 国产精品久久久久aaaa| 在线日本成人| 午夜在线视频观看日韩17c| 免费久久99精品国产| 亚洲视频一二| 欧美大胆a视频| 国产视频综合在线| 在线综合欧美| 欧美福利视频| 欧美在线观看天堂一区二区三区| 欧美精品成人| 亚洲电影在线观看|