91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 9.82MB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2023-10-07
  • 語言: C/C++
  • 標簽: OpenGL??C++??

資源簡介

在C++環境下使用Opengl實現圓錐和圓錐的繪制,有靜態上點白色光源,使用方向鍵控制旋轉,點擊鼠標右鍵實現圓錐和圓柱間的轉換。

資源截圖

代碼片段和文件信息

#include?
#include
#include
#include
#include?
#include
using?namespace?std;

#define?PI?3.14159f
#define?RADIUS?50.0f
#define?BITMAP_ID?0x4D42 //?the?universal?bitmap?ID

//////?Texture?Information
BITMAPINFOHEADER bitmapInfoHeader; //?bitmap?info?header
unsigned?char* bitmapData; //?the?texture?data
unsigned?int texture; //?the?texture?object

bool?flags?=?true;
static?GLfloat?xRot?=?0.0f;
static?GLfloat?yRot?=?0.0f;
void?SpecialKeys(int?key?int?x?int?y);
void?ChangeSize(?GLsizei?w?GLsizei?h?);
void?SetupRC();

//?LoadBitmapFile
//?desc:?Returns?a?pointer?to?the?bitmap?image?of?the?bitmap?specified
//???????by?filename.?Also?returns?the?bitmap?header?information.
// ?No?support?for?8-bit?bitmaps.
unsigned?char?*LoadBitmapFile(char?*filename?BITMAPINFOHEADER?*bitmapInfoHeader)
{
FILE?*filePtr; //?the?file?pointer
BITMAPFILEHEADER bitmapFileHeader; //?bitmap?file?header
unsigned?char *bitmapImage; //?bitmap?image?data
int imageIdx?=?0; //?image?index?counter
unsigned?char tempRGB; //?swap?variable

//?open?filename?in?“read?binary“?mode
filePtr?=?fopen(filename?“rb“);
if?(filePtr?==?NULL)
return?NULL;

//?read?the?bitmap?file?header
fread(&bitmapFileHeader?sizeof(BITMAPFILEHEADER)?1?filePtr);

//?verify?that?this?is?a?bitmap?by?checking?for?the?universal?bitmap?id
if?(bitmapFileHeader.bfType?!=?BITMAP_ID)
{
fclose(filePtr);
return?NULL;
}

//?read?the?bitmap?information?header
fread(bitmapInfoHeader?sizeof(BITMAPINFOHEADER)?1?filePtr);

//?move?file?pointer?to?beginning?of?bitmap?data
fseek(filePtr?bitmapFileHeader.bfOffBits?SEEK_SET);

//?allocate?enough?memory?for?the?bitmap?image?data
bitmapImage?=?(unsigned?char*)malloc(bitmapInfoHeader->biSizeImage);

//?verify?memory?allocation
if?(!bitmapImage)
{
free(bitmapImage);
fclose(filePtr);
return?NULL;
}

//?read?in?the?bitmap?image?data
fread(bitmapImage?1?bitmapInfoHeader->biSizeImage?filePtr);

//?make?sure?bitmap?image?data?was?read
if?(bitmapImage?==?NULL)
{
fclose(filePtr);
return?NULL;
}

//?swap?the?R?and?B?values?to?get?RGB?since?the?bitmap?color?format?is?in?BGR
for?(imageIdx?=?0;?imageIdx?biSizeImage;?imageIdx+=3)
{
tempRGB?=?bitmapImage[imageIdx];
bitmapImage[imageIdx]?=?bitmapImage[imageIdx?+?2];
bitmapImage[imageIdx?+?2]?=?tempRGB;
}

//?close?the?file?and?return?the?bitmap?image?data
fclose(filePtr);
return?bitmapImage;
}
//定義光源
//光源結構
typedef?struct?tag_lightingStruct?{
GLfloat?ambient[4];
GLfloat?diffuse[4];
GLfloat?specular[4];
}?lightingStruct;
lightingStruct?coloredLighting?=?{{0.0?1.0?1.0?1.0}?{1.0?1.0?1.0?1.0}?{0.0?0.0?0.0?0.0}};
lightingStruct?*currentLighting;
//光源位置
GLfloat?light0_pos[]?=?{0.0?80.0?0.01.0};

//繪制圓錐
void?Cone()
{
float?texLeft; //?left?texture?coordinate?

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件??????38912??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\Debug\使用OpenGL繪制圓柱和圓錐.exe

?????文件?????427628??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\Debug\使用OpenGL繪制圓柱和圓錐.ilk

?????文件?????633856??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\Debug\使用OpenGL繪制圓柱和圓錐.pdb

?????文件???46465024??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\ipch\使用opengl繪制圓柱和圓錐-5013c5b6\使用opengl繪制圓柱和圓錐-df36b874.ipch

?????文件????????722??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\使用OpenGL繪制圓柱和圓錐\Debug\cl.command.1.tlog

?????文件??????15028??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\使用OpenGL繪制圓柱和圓錐\Debug\CL.read.1.tlog

?????文件????????422??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\使用OpenGL繪制圓柱和圓錐\Debug\CL.write.1.tlog

?????文件??????????2??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\使用OpenGL繪制圓柱和圓錐\Debug\link-cvtres.read.1.tlog

?????文件??????????2??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\使用OpenGL繪制圓柱和圓錐\Debug\link-cvtres.write.1.tlog

?????文件??????????2??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\使用OpenGL繪制圓柱和圓錐\Debug\link.5536-cvtres.read.1.tlog

?????文件??????????2??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\使用OpenGL繪制圓柱和圓錐\Debug\link.5536-cvtres.write.1.tlog

?????文件??????????2??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\使用OpenGL繪制圓柱和圓錐\Debug\link.5536.read.1.tlog

?????文件??????????2??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\使用OpenGL繪制圓柱和圓錐\Debug\link.5536.write.1.tlog

?????文件???????1644??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\使用OpenGL繪制圓柱和圓錐\Debug\link.command.1.tlog

?????文件???????3322??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\使用OpenGL繪制圓柱和圓錐\Debug\link.read.1.tlog

?????文件????????888??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\使用OpenGL繪制圓柱和圓錐\Debug\link.write.1.tlog

?????文件????????450??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\使用OpenGL繪制圓柱和圓錐\Debug\mt.command.1.tlog

?????文件????????446??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\使用OpenGL繪制圓柱和圓錐\Debug\mt.read.1.tlog

?????文件????????378??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\使用OpenGL繪制圓柱和圓錐\Debug\mt.write.1.tlog

?????文件????????640??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\使用OpenGL繪制圓柱和圓錐\Debug\rc.command.1.tlog

?????文件????????350??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\使用OpenGL繪制圓柱和圓錐\Debug\rc.read.1.tlog

?????文件????????358??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\使用OpenGL繪制圓柱和圓錐\Debug\rc.write.1.tlog

?????文件?????510976??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\使用OpenGL繪制圓柱和圓錐\Debug\vc100.idb

?????文件?????282624??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\使用OpenGL繪制圓柱和圓錐\Debug\vc100.pdb

?????文件????????406??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\使用OpenGL繪制圓柱和圓錐\Debug\使用OpenGL繪制圓柱和圓錐.exe.embed.manifest

?????文件????????472??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\使用OpenGL繪制圓柱和圓錐\Debug\使用OpenGL繪制圓柱和圓錐.exe.embed.manifest.res

?????文件????????381??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\使用OpenGL繪制圓柱和圓錐\Debug\使用OpenGL繪制圓柱和圓錐.exe.intermediate.manifest

?????文件?????????77??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\使用OpenGL繪制圓柱和圓錐\Debug\使用OpenGL繪制圓柱和圓錐.lastbuildstate

?????文件???????4491??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\使用OpenGL繪制圓柱和圓錐\Debug\使用OpenGL繪制圓柱和圓錐.log

?????文件????????220??2011-11-08?17:16??使用OpenGL繪制圓柱和圓錐\使用OpenGL繪制圓柱和圓錐\Debug\使用OpenGL繪制圓柱和圓錐_manifest.rc

............此處省略17個文件信息

評論

共有 條評論