譯 GLUT教程 重整子窗體

2022-07-22 03:09:11 字數 929 閱讀 3726

lighthouse3d.com >> glut tutorial >> subwindows >> reshape subwindows

重整函式的**需要處理兩件事:修改子窗體的大小,重新計算投影每個子窗體的投影矩陣.在我們的情況中,我們不需要渲染任何幾何圖案到主窗體,所以我們可以跳過重新計算投影矩陣這一步.

先來介紹修改大小和重定位子窗體的函式原型.

void glutpositionwindow(int x, int y);

void glutreshapewindow(int width, int height);

x, y - 窗體的左上角

width, heith - 窗體的畫素維度

這裡有兩個函式可以作用到當前窗體,所以我們必須設定乙個特殊的窗體來作為當前窗體.為了這個,我們要把窗體id傳入glutsetwindows.原型如下:

void glutsetwindow(int windowidentifier);

windowidentifier - 建立窗體的返回值

如果我們需要知道哪個窗體是當前窗體(獲得焦點),我們可以用glutgetwindow函式.

int glutgetwindow();

該函式的返回值是當前窗體(獲得焦點)的id.

在定位和更改窗體大小之前,我們必須設定每個子窗體為當前窗體.下面**提供了重整函式,用到changesize函式.上一節說過,我們要定義乙個**來專門給主窗體重整窗體.這樣已經足夠了,因為使用者預設只能更改主窗體.

在我們的示例中,投影和所有子窗體類似,我們將會定義乙個函式來實現,並在每個子窗體呼叫它.

int w,h, border=6

;...

void setprojection(int w1, int

h1)void changesize(int w1,int

h1)

譯 GLUT教程 安裝

lighthouse3d.com glut tutorial basics setup 你需要什麼 要用glut庫開發c c 程式,要用到以下三個檔案 glut.h 這是你的程式要用到的包含標頭檔案.一般放到c program files microsoft visual studio 11.0 v...

譯 GLUT教程 筆劃字型

lighthouse3d.com glut tutorial fonts stroke fonts 筆劃字型是用線條生成的.跟位圖字型相反,筆劃字型看上去像三維對,例如,字型可以旋轉,測量和轉化.本節我們將會使用glut函式來生成一些筆劃字型到螢幕.基礎函式是glutstrokecharacter....

譯 GLUT教程 子選單

lighthouse3d.com glut tutorial pop up menus sub menus 上一節我們介紹了如何建立普通選單和如果繫結使用者選定的選單到處理事件.下面來介紹分層子選單.子選單的建立和選單用的是同乙個函式.建立後插入到選單的函式glutaddsubmenu原型如下 vo...