Week11 2018/05/04
(1) 主題 : 貼圖
(2) 實做 : OpenCV 讀圖、秀圖
(3) 實做 : OpenGL 貼圖
----------------------------------------------------------------------------------------------
Class practice1 試試看別人的程式如何動Texture.exe
下載 data.zip, windows.zip, glut32.dll 三個檔案
2. 把相對應的檔案放在對應的位置
3. 開啟Texture.exe,開啟後為下圖 :
4. glColor4f () -->可調整燈光的顏色
glTexCoord2f() --> 貼圖座標
glVertex3f() --> 頂點座標
----------------------------------------------------------------------------------------------
Class practice2 在專案內讀入圖檔
1. 先從 moodle 下載 OpenCV-2.1.0-win32-vs2008.exe
3. 新增一個 glut 專案,在主程式裡增加以下程式碼:
#include <opencv/highgui.h>///(1)呼叫外掛OpenCV的High GUI
IplImage * img = NULL;///(2)宣告變數指數
int main(int argc, char *argv[])
{
img = cvLoadImage("image.jpg");///(3)OpenCV讀入圖檔
glutInit(&argc, argv);
glutInitWindowSize(640,480);
但執行後會發現無法執行,因需要置入OpenCV的連結
4. 完成以下的操作:
a. 複製以下的連結
b. 在專案黨上面按下右鍵找到 "Build options..."
c. 跟著以下的步驟,貼上剛剛複製的連結
d. 複製上面 lib 的連結,以下方的步驟貼在相對應的位置( Linker裡)
e. 完成下列步驟 ,加入 cv210, cxcore210, highgui210
5. 再次執行後會得到下列的圖 :
6. 加入程式,第一個參數為視窗名稱,第二個為圖檔
#include <opencv/highgui.h>///(1)呼叫外掛OpenCV的High GUI
IplImage * img = NULL;///(2)宣告變數指數
int main(int argc, char *argv[])
{
img = cvLoadImage("image.jpg");///(3)OpenCV讀入圖檔
cvShowImage("week10",img);///(4)秀出圖檔
7. 下載一張圖片存入 C:\Users\asus-user\Desktop\freeglut\bin 裡,並把圖檔改名為image
8. 再次執行程式為下圖 :
----------------------------------------------------------------------------------------------
Class practice3 執行會動的地球
1. 先從 moodle 下載 myEarth.zip
2. 更改我們的工作目錄
#include <opencv/highgui.h>///(1)呼叫外掛,opencv 的 High GUI
#include <opencv/cv.h>
#include <GL/glut.h>
#include <stdio.h>
GLUquadric* quad;
GLuint id;
float angle=0;
static void display(void)
{
glClear(GL_DEPTH_TEST);
glClear(GL_DEPTH_TEST | GL_DEPTH_BUFFER_BIT);
glPushMatrix();
glRotated(90,1,0,0);
glRotated(angle,0,0,1);
glTranslated(-2.4,1.2,-6);
gluQuadricTexture(quad,1);
gluSphere(quad,1,30,30);
glPopMatrix();
glFlush();
}





















沒有留言:
張貼留言