« | September 2025 | » | 日 | 一 | 二 | 三 | 四 | 五 | 六 | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | | | | | |
| 公告 |
☆★☆★☆★☆★☆★☆ 生活的点点记录,以及一些体会...........
喜欢是淡淡的爱,爱是深深的喜欢.
时间会见证一切.......................
欢迎大家指出错误,共同进步..........
期待中..............................
☆★☆★☆★☆★☆★☆ |
Blog信息 |
blog名称: 日志总数:162 评论数量:312 留言数量:0 访问次数:946846 建立时间:2005年5月17日 |

| |
[work]agg study. 文章收藏
oceanblue 发表于 2009/5/9 21:58:08 |
/*
类型:原创
作者:陈亮
Email : clzzclzz@hotmail.com
*/
前言:
自已写的算法和主流太有差距了,所以找了个很棒的2D绘图引擎—–AGG,准备用它做项目。AGG的主要思想就是,建一个窗口,然后把客户区当成一块位图区域,然后向里面添像素,最后把它显示出来。。
画线:
1.打开例子的中Purl Api工程,就有画线的例子,这里画的是一个三角形.主要代码如下。
/*agg::rendering_buffer是AGG的管理像素内存的低层类, 一般要与像素格式类配合使用,如agg::pixfmt_bgra32……..*/
agg::rendering_buffer rbuf;
/*初如化 rbuf, buf就是客户区位图的指针,width,height是位图宽度与高度,因为上面创建位图时用的是32位的位图格式,所以要 -width*4,4表示(RGBA–4BYTE) 因为windowsGDI的座标系与AGG的正好是反的所以加了-号*/
rbuf.attach((unsigned char*)buf, width, height, -width*4);
/*因为上面创建位图时用的是32位的位图格式,所以这里要用agg::pixfmt_bgra32类*/ agg::pixfmt_bgra32 pixf(rbuf);
/*agg::renderer_base主要是AGG渲染的基础类,比agg::pixfmt_bgra32类多了管理边框的功能*/ agg::renderer_base<agg::pixfmt_bgra32> renb(pixf);
/*agg::renderer_base.clear将所有像素清除为指定颜色*/
renb.clear(agg::rgba8(255, 255, 255, 255));
/*agg::renderer_scanline_aa_solid类可以将直线渲染为实心色的*/ agg::renderer_scanline_aa_solid<agg::renderer_base<agg::pixfmt_bgra32> > ren(renb);
/*agg::rasterizer_scanline_aa是AGG的核心类,用于光删化图形*/ agg::rasterizer_scanline_aa<> ras;
/*agg::scanline_p8用于渲染*/ agg::scanline_p8 sl;
/*下面三行代码画三角形*/
ras.move_to_d(20.7, 34.15); ras.line_to_d(398.23, 123.43); ras.line_to_d(165.45, 401.87); /*设三角形的填充颜色,通过ren设置*/ ren.color(agg::rgba8(80, 90, 60));
/*agg::render_scanlines 通过调用本函数渲染图形*/ agg::render_scanlines(ras, sl, ren); //============================================================
|
|
回复:agg study. 文章收藏
bin_rong(游客)发表评论于2011/7/15 9:54:19 |
最近在学AGG,求指点,可否?QQ:820875104 |
|
回复:agg study. 文章收藏
cc(游客)发表评论于2010/4/6 1:20:28 |
|
回复:agg study. 文章收藏
youke(游客)发表评论于2010/1/7 23:17:10 |
接触过AGG,正打算要学习,希望能交流一下qq:908262698 |
|
回复:agg study. 文章收藏
Kane(游客)发表评论于2009/8/7 22:06:07 |
最近也在学习AGG,可以一起交流学习经验么?共同用好这个东东,我的QQ:85449744 |
|
回复:agg study. 文章收藏
eric_chen(游客)发表评论于2009/8/3 14:33:25 |
Picasso版本更新http://picasso-graphic.googlecode.com/files/picasso_0.9_beta1.zip |
|
回复:agg study. 文章收藏
rty(游客)发表评论于2009/6/18 14:13:29 |
这有个更好的http://picasso-graphic.googlecode.com/files/picasso_0.8_pre_alpha.zip |
|
» 1 »
|