Opengl 顯示中文改進版

2021-08-26 15:33:01 字數 1170 閱讀 4766

opengl:顯示中文改進版

2023年07月09日

由於對這方面不是特別了解,基本上結合別人的**,再加些自己認為更好點的改進。

#define max_char 255

#define text_center 0

#define text_left 1

#define text_right 2

hfont createfont(char *facename, int height, int weight, bool italic,bool underline,bool strikeout)

struct fonts // 儲存輪廓字型

dword val; // 儲存顯示表的值(用來比較)

gluint listname; // 儲存顯示表的名稱

glyphmetricsfloat gmf; // 儲存字型的詳細資訊

};void show2dtext(const char *str,scoor coor,scolor color,int flag,double scale)

int i=0;

int j=0,k=0;

int ich;

double width =0;

glcolor3d(color.r,color.g,color.b);

while(i字型輪廓裝置聯絡dc

ich,//要轉換為顯示列表的第乙個字元

1,//要轉換為顯示列表的字元數

font.listname,//顯示列表的基數

0.0f,//指定與實際輪廓的最大偏移量

0.0,在z軸負方向的值

wgl_font_polygons, //指定顯示列表線段或多邊形

&font.gmf);

}width += listmap[ich].gmf.gmfcellincx;

} width*=scale;

switch(flag)

glpushmatrix();

gltranslated(coor.x,coor.y,0);

glpushattrib(gl_list_bit);

}glpopattrib();

glpopmatrix();

glenable(gl_texture_2d);

}

Beetle遊戲改進版

在執行這個遊戲時,最後螢幕上顯示的是如下圖所示。甲蟲情況變成了beetle 60aeb0。原來在system.out.println beetle 中實際上用到了tostring方法,為了清楚表達甲蟲的情況,要重寫這一方法。在beetle類中加入下面重寫的tosting 方法 public stri...

六 改進版(Hit UFO)

2 實現 專案位址 參考部落格 按 adapter模式 設計圖修改飛碟遊戲 使它同時支援物理運動與運動學 變換 運動 飛碟起始位置隨機生成 vector3 startpos new vector3 unityengine.random.range 70,70 unityengine.random.r...

氣泡排序改進版

普通的氣泡排序的演算法的平均時間複雜度為o n 2 通過對一些特殊情況的研究,我們得出了這個改進版的氣泡排序,所以它的時間複雜度是 沒錯,還是o n 2 否則就叫不叫氣泡排序早就改名了 氣泡排序的時間消費主要是在比較以及交換的次數上,每一趟冒泡都會將當前序列最大的數 冒 到序列的最後,然後序列縮小乙...