OpenGL 橡皮筋技術

2021-08-31 10:24:03 字數 1272 閱讀 2819

後天圖形學考試,整理了下實驗課上的opengl關於橡皮筋實驗的**。

簡單實現了如下功能:

1.右鍵選單功能響應

2.右鍵選擇畫折線或矩形,可儲存(書上例子演變)

3.可選取畫線或畫矩形的顏色,線寬,畫素大小

#include #include #define num 100 //折線的最大折線段  

int flag = 0; //標記是否已經開始繪製折線

int rflag = 0; //標記是否已經完成乙個矩形

int function = 1; //標記選擇的功能是畫折線還是矩形

int winwidth = 800, winheight = 600; //視窗的寬度和高度

int mou***, mousey; //用於記錄當前滑鼠的位置

int n = 0; //用於記錄折線有幾段

int m = 0; //用於記錄矩形個數

//線性結構體

struct linenode line[num];

//矩形結構體

struct rectangle rect[num];

static glsizei imode = 1;

void initial(void)

void changesize(int w, int h)

void processmenu1(int value)

void processmenu2(int value)

void display()

if (function == 1)

//動態繪製滑鼠動作

if (flag == 1)

} else

//動態繪製滑鼠動作

if (rflag == 1)

} glutswapbuffers(); //交換緩衝區

}

void mouseplot(glint button, glint action, glint xmouse, glint ymouse)

else

} }

else

else

} }

}

void passivemousemove(glint xmouse, glint ymouse)

int main(int argc, char *argv)

CRectTracker 橡皮筋類

crecttracker 俗稱 橡皮筋 類 是乙個非常有意思的類。你在windows中,在桌面上用滑鼠拖拽,便可以看到乙個虛線的矩形框,它便是橡皮筋.它可以用做顯示邊界,你也可以扽它的八個角用來放大縮小,做框選使用。如何通過程式設計來實現這種功能呢?這就是crecttracker類的作用 介紹橡皮筋...

iOS橡皮筋回彈

在html主頁面的header標籤中引入inbounce.js,即。當引入此檔案之後,ios端整個頁面都無法滑動或滾動,若想滾動的元素能夠實現滾動效果,則需要對滾動區域設定固定的高度,即height max height,同時也要設定overflow auto,實現頁面滑動。為防止ios端頁面滾動發...

MFC橡皮筋矩形框技術

在網上看過很多用在mfc對話方塊的介面上用滑鼠畫矩形框的例子,感覺有點亂,同時又達到我想要的效果,經過不斷的嘗試以及改進,才終於達到我想要的效果。這部分程式主要實現在對話方塊介面上的picture控制項內用滑鼠拖動畫矩形框並顯示,框大小隨意,且每次void ccv10dlg onlbuttondow...