2022年4月26日 星期二

尖🦉-圖學筆記 Week10

◇實作背景貼圖:

    1.將freeglut資料夾、OpenCV-2.1.0裝好 (需重開codeblocek)。並開一個新的Glut專案。

    2.將OpenCV三個(目錄 / Lib 目錄 方法)設定完成。

    3.複製上周最後的程式碼 (texture)、下載一張earth.jpg放到freeglut\bin資料夾。

    4.利用

            glBegin(GL_POLYGON);

                glTexCoord2f( 0 , 1); glVertex2f( -1, -1);  左下,記得貼圖是逆時針座標和頂點不一樣

            glEnd();

       將圖片定位。


◇ 將貼圖貼到圓球:

    1.建立一個新專案。

    2.新增程式碼:

        先設好空指標: GLUquadric * sphere = NULL; ///指標,指到二次曲面

        在display()函式:

        設貼圖: gluQuadricTexture(sphere,1);///指標,是否開啟

        畫圓: gluSphere(sphere1   ,30    ,30);

               分別為指標, 半徑, 直切(似經度),堆疊(似緯度)

        在main()裡:

          準備好2次曲面: sphere = gluNewQuadric();

    3.使地球可以旋轉:

        在display()裡 : glPushMartrix();glPopMartrix(); 之間加入glRotatef(angle, 0 , 0 , 1);

        並設好angle

        在main函式裡放好:

            glutIdleFunc(display);///有空idle呼叫display

    4.新增: glRotatef(90, 1 , 0 , 0);///把地球轉正,使他能按照赤道旋轉。

       在main裡:glEnable(GL_DEPTH_TEST);///開啟深度功能


沒有留言:

張貼留言

VERY BEAUTIFUL, VERY POWERFUL

一.     一樣先安裝且設定好freeglut,OpecCV, 開啟CodeBlocks建立新專案 week11_gundam,                 把 MyGundam.zip下載解壓縮後的data資料夾放到freeglut/bin裡面 把week09_openc...