資源簡介
可以運行的artoolkit的例子,適合新手學習。在計算機配置好以后就可以運行了。簡單易懂,可以學習學習

代碼片段和文件信息
//?oneDemo.cpp?:?定義控制臺應用程序的入口點。
//
#include?“stdafx.h“
#ifdef?_WIN32
#include?
#endif
#include?
#include?
#ifndef?__APPLE__
#include?
#include?
#else
#include?
#include?
#endif
#include?
#include?
#include?
#include?
#include?“3DS.H“
#include?“Texture.h“
#include?
//
//?Camera?configuration.
//
#ifdef?_WIN32
char *vconf?=?“Data\\WDM_camera_flipV.xml“;
#else
char *vconf?=?““;
#endif
int?????????????xsize?ysize;
int?????????????thresh?=?100;
int?????????????count?=?0;
char???????????*cparam_name????=?“../Bin/Data/camera_para.dat“;
ARParam?????????cparam;
char???????????*patt_name??????=?“../Bin/Data/patt.hiro“;
int?????????????patt_id;
double??????????patt_width?????=?100.0;
double??????????patt_center[2]?=?{0.0?0.0};
double??????????patt_trans[3][4];
C3DSModel g_3dsmodel;
float scale;
bool isshow?=?false;
static?void???init();
static?void???cleanup();
static?void???keyEvent(?unsigned?char?key?int?x?int?y);
static?void???mainLoop();
static?void???draw();
int?main(int?argc?char?**argv)
{
glutInit(&argc?argv);
init();
//加載3DS模型文件
if(!g_3dsmodel.Load(“../Bin/Data/DC10.3DS“))
{
//printf(“加載3ds文件失敗!“);
exit(0);
}?
//設置比例
scale?=?1.0;
????arVideoCapStart();
????argMainLoop(?NULL?keyEvent?mainLoop?);
return?(0);
}
static?void???keyEvent(?unsigned?char?key?int?x?int?y)
{
if?(key?==?0x1b)//?判斷ESC鍵是否按下
{
cleanup();
exit(0);//?結束程序? ???
}
if?(?key?==‘-‘)//?判斷按鍵‘-‘是否按下
{
scale?-=?0.05;
if(scale?<=?0.01)
scale?=?0.01;
}
if?(key?==?‘+‘)//?判斷按鍵‘+‘是否按下
{
scale?+=?0.05;
if(scale?>=?100)
scale?=?100;
}
}
static?void?mainLoop()
{
????ARUint8?????????*dataPtr;
????ARMarkerInfo????*marker_info;
????int?????????????marker_num;
????int?????????????j?k;
????if(?(dataPtr?=?(ARUint8?*)arVideoGetImage())?==?NULL?)
{
????????arUtilSleep(10);
????????return;
????}
????if(?count?==?0?)?
arUtilTimerReset();
????count++;
????argDrawMode2D();
????argDispImage(?dataPtr?00?);
????if(?arDetectMarker(dataPtr?thresh?&marker_info?&marker_num)?0?)?
{
????????cleanup();
????????exit(0);
????}
????arVideoCapNext();
{
k?=?-1;
for(?j?=?0;?j? {
if(?patt_id?==?marker_info[j].id?)?
{
if(?k?==?-1?)
{
k?=?j;
}
else?if(?marker_info[k].cf? {
k?=?j;
}
}
}
if(?k?==?-1?)?
{
argSwapBuffers();
return;
}
arGetTransMat(&marker_info[k]?patt_center?patt_width?patt_trans);
}
????draw();
????argSwapBuffers();
}
static?void?init(?void?)
{
????ARParam??wparam;
????if(?arVideoOpen(?vconf?)?0?)?
{
exit(0);
}
????if(?arVideoInqSize(&xsize?&ysize)?0?)?
{
exit(0);
}
????if(?arParamLoad(cpara
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????13640??2011-05-25?15:13??AR3DS\AR3DS\3DS.CPP
?????文件???????4783??2011-03-14?09:53??AR3DS\AR3DS\3DS.H
?????文件???????4541??2011-04-26?14:51??AR3DS\AR3DS\AR3DS.vcproj
?????文件???????1427??2011-05-27?10:34??AR3DS\AR3DS\AR3DS.vcproj.PC-201101181029.Administrator.user
?????文件???????4892??2011-05-27?10:32??AR3DS\AR3DS\ARLoad3DS.cpp
?????文件????????212??2010-11-04?14:08??AR3DS\AR3DS\stdafx.cpp
?????文件????????207??2011-04-26?14:17??AR3DS\AR3DS\stdafx.h
?????文件???????8581??2011-04-26?14:18??AR3DS\AR3DS\Texture.cpp
?????文件????????544??2011-03-16?16:02??AR3DS\AR3DS\Texture.h
?????文件???14101504??2011-05-27?10:34??AR3DS\AR3DS.ncb
?????文件????????880??2011-04-26?14:14??AR3DS\AR3DS.sln
????..A..H.?????14848??2011-05-27?10:34??AR3DS\AR3DS.suo
?????文件?????200704??2011-05-27?10:32??AR3DS\Bin\AR3DS.exe
?????文件????????136??2004-11-04?16:50??AR3DS\Bin\Data\camera_para.dat
?????文件??????38047??2005-10-19?15:33??AR3DS\Bin\Data\DC10.3DS
?????文件??????12484??2004-11-04?16:50??AR3DS\Bin\Data\patt.hiro
?????文件????????476??2010-10-26?20:51??AR3DS\Bin\Data\WDM_camera.xm
?????文件????????506??2010-11-05?15:20??AR3DS\Bin\Data\WDM_camera_flipV.xm
?????文件??????77824??2005-05-17?19:33??AR3DS\Bin\DSVL.dll
?????文件?????385024??2005-05-17?19:33??AR3DS\Bin\DSVLd.dll
?????文件?????237568??2005-05-17?19:33??AR3DS\Bin\glut32.dll
?????文件????1077289??2002-10-30?17:05??AR3DS\Bin\js32.dll
?????文件??????81408??2009-11-23?18:37??AR3DS\Bin\lib3ds-2_0.dll
?????文件??????20480??2010-10-28?12:26??AR3DS\Bin\libARvideo.dll
?????文件??????33792??2010-11-04?15:36??AR3DS\Bin\libARvideod.dll
?????文件?????499712??2008-12-09?17:58??AR3DS\Bin\msvcp71.dll
?????文件?????765952??2005-07-16?02:40??AR3DS\Bin\msvcp71d.dll
?????文件?????348160??2008-12-09?17:58??AR3DS\Bin\msvcr71.dll
?????文件?????544768??2005-07-15?14:39??AR3DS\Bin\msvcr71d.dll
?????文件????1048576??2011-05-27?10:32??AR3DS\BinAR3DS.pch
............此處省略7個文件信息
- 上一篇:一鍵gohost支持win7
- 下一篇:思科網絡實驗室CCNA實驗指南
評論
共有 條評論