OpenGL 入門 二維點,線,面

2021-07-24 06:34:10 字數 2403 閱讀 6672

opengl 畫簡單的圖形,不用知道太多為什麼,先實踐,後面慢慢遠離,

windows下opengl的配置參考

opengl講解文章推薦

/*

標準座標系

以螢幕中心為原點(0, 0, 0)。

你面對螢幕,你的右邊是x正軸,上面是y正軸,螢幕指向你的為z正軸。

長度單位這樣來定: 視窗範圍按此單位恰好是(-1,-1)到(1,1)。

*/#include

#include

#include

void mydisplay(void)

; float point2 = ;

glbegin(gl_lines);

glvertex2fv(point1);

glvertex2fv(point2);

glend();

// 重新整理opengl命令佇列

glortho2d函式是opengl中的二維裁剪函式

gluortho2d函式等於是定義了比例尺,確定了多少個畫素表示座標系中的單位一。

座標系改變了,此時

座標原點為左下角

寬,高是自己定義的大小

當畫圖時,座標位置超出了範圍就看不到了

*/#include

#include

#include

#include

const

int width = 400;

const

int height = 400;

const glfloat pi = 3.1415926536f;

void mydisplay(void)

; int p2 = ;

int p3 = ;

int p4 = ;

int p5 = ;

glbegin(gl_line_loop);

glvertex2iv(p1);

glvertex2iv(p2);

glvertex2iv(p3);

glvertex2iv(p4);

glvertex2iv(p5);

glend();

// 繪製多邊形,n足夠大就會變成圓形

int cx = width / 2; //中心點

int cy = height / 2;

int r = 100; // 半徑長

通過一些數學函式等,可以畫出任意的曲線

const glfloat pi = 3.1415926536f;

void mydisplay(void)

; float pointx2 = ;

float pointy1 = ;

float pointy2 = ;

glbegin(gl_lines); // 畫直線

glvertex2fv(pointx1);

glvertex2fv(pointx2);

glvertex2fv(pointy1);

glvertex2fv(pointy2);

glend();

glcolor3f(0.0f, 1.0f, 0.0f);

float x;

float deltax = 0.05f; // 橫座標間隔

glbegin(gl_line_strip); // 不閉合折線

for (x = -1.0f; x <= 1.0f; x += deltax) // 畫出正弦曲線

opengl畫點線面

1 關於點 點的大小預設為1個畫素,但也可以改變之。改變的命令為glpointsize,其函式原型如下 void glpointsize glfloat size size必須大於0.0f,預設值為1.0f,單位為 畫素 注意 對於具體的opengl實現,點的大小都有個限度的,如果設定的size超過...

OpenGL修行 點線面模式設定

線多邊形 通過glpointsize 函式即可實現點的大小控制,我畫了兩個大小不同的點,還是挺明顯的。線的寬窄可以通過gllinewidth 函式來進行控制,大家可以通過下面兩條線來進行對比。void display2 虛線繪製的時候就需要使用glenable 來進行虛線模式的開啟。乙個多邊形你可以...

二維計算幾何模板(點,線)

include include include include include include include include include include include define e exp 1.0 define mod 1000000007 define inf 0x7fffffff d...