青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

AGG入門(一) - 配置開(kāi)發(fā)環(huán)境

AGG是一個(gè)高效的、高質(zhì)量的、開(kāi)源的矢量圖形庫(kù),類似的有:GTK+的Cairo,Microsoft的GDI+。在三者中,AGG的性能是最高的(不討論Skia和Direct2D,他們有OGL和DX的硬件加速,繪圖速度根本不是一個(gè)檔次的)。讓我們細(xì)數(shù)一下他的優(yōu)缺點(diǎn):
  • 優(yōu)點(diǎn):效率高,質(zhì)量高(有反鋸齒),功能強(qiáng)大,跨平臺(tái)和平臺(tái)GUI支持,……
  • 缺點(diǎn):沒(méi)有硬件加速,文檔少,門檻有那么點(diǎn)高,……
 

一、準(zhǔn)備

 

二、工作

  1. 在VC6里新建一個(gè)工程“AGG”,類型為靜態(tài)庫(kù)Win32 Static Library

  2. 將下列源文件都加入工程:

    1. ./src/ 目錄下所有cpp文件【核心庫(kù)】*
    2. ./src/ctrl/ 目錄下所有cpp文件【控件庫(kù)】*
    3. ./src/platform/ 下對(duì)應(yīng)平臺(tái)目錄(win32)下的所有cpp文件【平臺(tái)支持庫(kù)】*
    4. ./font_freetype/ 下所有的cpp文件【Freetype字體支持庫(kù)】
    5. ./font_win32_tt/ 下所有的cpp文件【Truetype字體支持庫(kù)】*
    6. ./gpc/ 下所有的cpp文件【Generic Polygon Clipper裁切庫(kù)】
  3. 將下列目錄加入Tools(工具)菜單– Options(選項(xiàng))菜單 – Directory(目錄)選項(xiàng)卡中的Include Files目錄列表中:

    1. ./include/ *
    2. ./font_freetype/
    3. ./font_win32_tt/ *
    4. ./gpc/
  4. 選擇配置為Win32 Release,編譯

  5. 編譯成功后,Tools(工具)菜單– Options(選項(xiàng))菜單 – Directory(目錄)選項(xiàng)卡中的Library Files目錄列表中加入 【工程所在目錄】\Release\

  6. 沒(méi)有成功編譯的童鞋,獎(jiǎng)勵(lì)已經(jīng)編譯好的AGG.lib一枚…… AGG.zip

三、測(cè)試

  1. 新建一個(gè)Win32 Application 空工程,新建一源文件,加入下面的代碼:
    #include <agg_pixfmt_rgb.h>
    #include <agg_renderer_base.h>
    #include <platform/agg_platform_support.h>

    class the_application : public agg::platform_support
    {
    public:
        the_application(agg::pix_format_e format, bool flip_y) : 
            agg::platform_support(format, flip_y),
            pix_fmt(rbuf_window()),
            ren_bas(pix_fmt) //初始化渲染器
        { }

        virtual void on_draw()
        {
            ren_bas.reset_clipping(true);
            ren_bas.clear(agg::rgba8(204, 204, 204));
        }

    private:
        agg::pixfmt_rgb24 pix_fmt;
        agg::renderer_base<agg::pixfmt_rgb24> ren_bas;

    };

    int agg_main(int argc, char* argv[])
    {
        the_application app(agg::pix_format_rgb24, true);
        app.caption("AGG Test");
        
        if(app.init(500, 500, agg::window_resize)) {
            return app.run();
        }
        return -1;
    }
  2. 在【工程】菜單 - 【設(shè)置】菜單 - 【連接】選項(xiàng)卡 - 【對(duì)象/庫(kù)模塊】文本框 中加入AGG.lib
  3. 編譯運(yùn)行,不出意外,可以得到下面的結(jié)果:

posted on 2012-07-24 16:28 Shihira 閱讀(7144) 評(píng)論(13)  編輯 收藏 引用 所屬分類: 圖形編程

評(píng)論

# re: AGG入門(一) - 配置開(kāi)發(fā)環(huán)境 2012-07-15 22:32 戰(zhàn)魂小筑

來(lái)圍觀下經(jīng)典的樓主,都用win7了,還抓著vc6不放啊?  回復(fù)  更多評(píng)論   

# re: AGG入門(一) - 配置開(kāi)發(fā)環(huán)境 2012-07-15 22:42 Shihira

@戰(zhàn)魂小筑
Win7就由得它Win7吧
VC6是最“落后”的編譯器,能通過(guò)它的編譯,那些代碼就是已經(jīng)不含什么新標(biāo)準(zhǔn)的特性。這樣不但能跨編譯器,還能跨平臺(tái),夠穩(wěn)定  回復(fù)  更多評(píng)論   

# re: AGG入門(一) - 配置開(kāi)發(fā)環(huán)境 2012-07-16 09:22 戰(zhàn)魂小筑

@Shihira
GCC現(xiàn)在兼容性很好了, VC代碼只要不是特別晦澀的模板都沒(méi)問(wèn)題.
除非做硬件, 否則還是盡量升級(jí)版本

VC6怕的就是BUG...當(dāng)年被折騰慘了  回復(fù)  更多評(píng)論   

# re: AGG入門(一) - 配置開(kāi)發(fā)環(huán)境 2012-07-16 09:36 Shihira

@戰(zhàn)魂小筑
實(shí)際上……偶也用Code::Blocks中,但是它的函數(shù)提示非常之不好用,稍微用宏替一下,就像Win32API里的:
#ifdef _UNICODE
#define .... ....W
#else
#define .... ....A
#endif
他就不讓提示了
至于VC6,升了Intel編譯器,用了Visual Assist X,倒也沒(méi)什么不好,我也習(xí)慣了它的界面  回復(fù)  更多評(píng)論   

# re: AGG入門(一) - 配置開(kāi)發(fā)環(huán)境 2012-07-16 09:38 戰(zhàn)魂小筑

@Shihira
老兄, 用一把vs2010, 你會(huì)愛(ài)上她的. 超級(jí)高效了
不像很多人用過(guò)2003后就把之后.net版本VC都否定了, 現(xiàn)在已經(jīng)改的很好了  回復(fù)  更多評(píng)論   

# re: AGG入門(一) - 配置開(kāi)發(fā)環(huán)境 2012-07-16 09:59 Shihira

@戰(zhàn)魂小筑
因?yàn)槲矣眠^(guò)2008 在我的老爺機(jī)上運(yùn)行起來(lái)那叫一個(gè)卡 然后之后的版本我都不敢用了 或許我可以試一下 謝謝你的建議  回復(fù)  更多評(píng)論   

# re: AGG入門(一) - 配置開(kāi)發(fā)環(huán)境 2012-07-16 13:17 imjj

skia 不用硬件加速也比 agg 要好一些吧,至少更新比較勤快,有人在專門維護(hù) agg 都多久了……  回復(fù)  更多評(píng)論   

# re: AGG入門(一) - 配置開(kāi)發(fā)環(huán)境 2012-07-16 20:44 Shihira

@imjj
skia是好東西,只不過(guò)他移植編譯神馬的有點(diǎn)繁...至于AGG……因?yàn)槟居杏辛Φ墓局С郑淅淝迩澹芫脹](méi)更新啦
不過(guò)不可否認(rèn)他也是好東西,適應(yīng)能力很強(qiáng)  回復(fù)  更多評(píng)論   

# re: AGG入門(一) - 配置開(kāi)發(fā)環(huán)境 2013-02-19 12:11 crax

你好 agg是個(gè)非常優(yōu)秀的庫(kù) 一直想拿來(lái)應(yīng)用到項(xiàng)目中 目前的示例好像都是基于agg自身的框加 博主能否提供在其它環(huán)境下使用的示例。如在mfc中 或是在其它的開(kāi)源框架使用的示例。  回復(fù)  更多評(píng)論   

# re: AGG入門(一) - 配置開(kāi)發(fā)環(huán)境 2013-06-09 16:41 yanghl03

樓主你好,我的AGG庫(kù)編譯通過(guò)了,但測(cè)試的時(shí)候出問(wèn)題了,麻煩你幫我看一下,錯(cuò)誤如下:
AGG.lib(agg_platform_support.obj) : error LNK2001: unresolved external symbol "int __cdecl agg_main(int,char * * const)" (?agg_main@@YAHHQAPAD@Z)
F:\3D city map\AGG\Release\testAGG.exe : fatal error LNK1120: 1 unresolved externals

謝謝了
  回復(fù)  更多評(píng)論   

# re: AGG入門(一) - 配置開(kāi)發(fā)環(huán)境 2013-10-28 12:33 Shihira

@yanghl03
是這樣的。你在你的源文件里需要用agg_main函數(shù)來(lái)代替main或WinMain函數(shù),因?yàn)閃inMain函數(shù)已經(jīng)在agg_platform_support.cpp里被寫好了,在里面將會(huì)調(diào)用agg_main。  回復(fù)  更多評(píng)論   

# re: AGG入門(一) - 配置開(kāi)發(fā)環(huán)境 2014-06-20 10:55 JackMichaelis

編譯靜態(tài)庫(kù)的過(guò)程報(bào)錯(cuò):找不到ft2build.h  回復(fù)  更多評(píng)論   

# re: AGG入門(一) - 配置開(kāi)發(fā)環(huán)境 2014-06-21 00:06 Shihria

@JackMichaelis
我沒(méi)有遇到這樣的情況,可能你需要安裝一個(gè)freetype2到電腦上  回復(fù)  更多評(píng)論   

導(dǎo)航

統(tǒng)計(jì)

公告

留言簿(2)

隨筆分類

搜索

最新隨筆

最新評(píng)論

閱讀排行榜

評(píng)論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            美女主播一区| 一本色道久久综合| 免费试看一区| 久久久一区二区三区| 欧美中文字幕久久| 久久精品一级爱片| 免费观看成人www动漫视频| 久久夜色精品国产欧美乱| 狼狼综合久久久久综合网| 欧美大色视频| 欧美日韩国产三区| 国产精品日本一区二区| 国产在线精品一区二区夜色| 亚洲高清不卡一区| 亚洲视频 欧洲视频| 亚洲欧美视频在线| 久久久国产成人精品| 欧美成人国产一区二区| 亚洲日本一区二区| 亚洲国产精品电影| 亚洲一区二区三区四区五区午夜| 午夜精品婷婷| 欧美成人精品1314www| 欧美午夜精品久久久久免费视 | 在线午夜精品| 香港成人在线视频| 亚洲美女在线视频| 久久久久久网站| 亚洲人人精品| 久久久免费精品| 亚洲午夜黄色| 一区二区欧美国产| 久久国产手机看片| 亚洲免费电影在线观看| 欧美一区二区在线观看| 欧美日韩国产综合网| 伊人蜜桃色噜噜激情综合| 亚洲香蕉成视频在线观看 | 亚洲国产精品一区二区久| 亚洲一区二区三区三| 免费的成人av| 亚洲欧美综合一区| 欧美日韩亚洲一区三区| 亚洲日本中文字幕| 模特精品在线| 久久国产精品久久精品国产| 国产精品久久午夜夜伦鲁鲁| 99精品久久| 欧美国产欧美综合| 久久久久久亚洲精品杨幂换脸| 国产精品久久久久久久久免费樱桃| 亚洲欧洲精品一区二区三区| 久久久久一本一区二区青青蜜月| 99视频精品全部免费在线| 免费人成精品欧美精品| 红桃视频国产一区| 久久亚洲欧美| 久久精彩视频| 国内精品久久久久久 | 久久精品论坛| 国内精品久久久| 久久久午夜电影| 欧美一级网站| 伊伊综合在线| 久久综合影视| 久久综合中文色婷婷| 影院欧美亚洲| 亚洲电影免费在线观看| 欧美大片在线看| 日韩一级黄色av| 日韩一级黄色大片| 国产精品久久久99| 久久国产手机看片| 噜噜爱69成人精品| 一区二区三区毛片| 中文精品在线| 国产亚洲欧美激情| 免费久久99精品国产| 欧美国产大片| 亚洲制服丝袜在线| 欧美一区二区三区免费看| 在线不卡视频| 99re8这里有精品热视频免费| 欧美在线免费| 亚洲视频国产视频| 欧美无砖砖区免费| 久久人人爽人人| 欧美成人a视频| 亚洲欧美日韩成人| 久久久一区二区三区| 一区二区三区不卡视频在线观看| 国产精品99久久久久久久女警| 国产精品私人影院| 欧美激情日韩| 国产美女精品| 亚洲第一主播视频| 国产精品久久久久aaaa樱花| 麻豆久久久9性大片| 欧美日韩免费观看一区三区| 久久久国产午夜精品| 欧美精品1区2区| 久久精品99国产精品日本| 免费av成人在线| 欧美一级网站| 欧美精品在线视频| 久久精品亚洲一区| 欧美日韩国产一区| 牛人盗摄一区二区三区视频| 国产精品国产三级国产aⅴ浪潮| 久久亚洲春色中文字幕| 欧美三级在线视频| 欧美激情一区二区三区成人| 国产麻豆精品久久一二三| 亚洲国产日韩在线| 伊大人香蕉综合8在线视| 亚洲在线国产日韩欧美| 一区二区欧美视频| 久久亚洲精品视频| 久久精品中文| 国产伦精品一区二区三区| 99视频一区二区三区| 最新国产成人av网站网址麻豆| 欧美一级免费视频| 久久成人免费电影| 国产精品久久中文| 一本色道久久综合精品竹菊| 亚洲欧洲另类国产综合| 久久久久91| 久久久蜜臀国产一区二区| 国产精品视频九色porn| 99在线精品观看| 一本久久知道综合久久| 欧美极品一区| 最新日韩在线视频| 亚洲精品国产拍免费91在线| 欧美+亚洲+精品+三区| 欧美成人免费播放| 亚洲国产激情| 欧美成人dvd在线视频| 最新国产の精品合集bt伙计| 91久久在线播放| 欧美激情久久久| 亚洲美女黄色| 亚洲制服少妇| 国产欧美日韩三区| 久久成人免费| 欧美v亚洲v综合ⅴ国产v| 亚洲国产成人不卡| 欧美大香线蕉线伊人久久国产精品| 亚洲黄色视屏| 久久久精品日韩| 99热精品在线| 欧美日韩精品欧美日韩精品| 亚洲美女中文字幕| 午夜视频久久久久久| 国产日韩专区在线| 狂野欧美性猛交xxxx巴西| 91久久久久久久久| 亚洲欧美成人一区二区三区| 国产精品一区视频网站| 久久久久国产精品厨房| 亚洲黄色三级| 久久国产手机看片| 亚洲人成网站在线观看播放| 欧美日韩午夜| 久久国产精品久久国产精品| 亚洲经典视频在线观看| 亚洲综合国产精品| 激情综合自拍| 欧美日韩一区二区在线 | 蜜桃视频一区| 亚洲精品久久久久久久久久久| 亚洲伊人伊色伊影伊综合网| 黄色成人在线观看| 欧美日韩成人激情| 久久国产福利国产秒拍| 亚洲精品免费一区二区三区| 久久成人综合网| 99精品黄色片免费大全| 好吊色欧美一区二区三区视频| 欧美精品日韩| 久久青青草综合| 亚洲一区免费在线观看| 欧美激情一区二区久久久| 久久电影一区| 亚洲午夜激情网站| 亚洲片在线观看| 国产综合色在线| 国产精品久久99| 欧美精品在线观看| 欧美 日韩 国产 一区| 欧美一区二区三区四区在线观看 | 一区二区三区四区五区精品| 国产欧美一区二区三区在线看蜜臀| 另类亚洲自拍| 欧美一区深夜视频| 亚洲自拍偷拍色片视频| 99精品视频一区| 亚洲区免费影片| 欧美国产亚洲视频|