在上两节的时候,曾经提到agg::rasterizer_scanline_aa也支持画线,但是很遗憾,我们调用该类的move_to,line_to函数完全没有任何的效果,画线,是画不成的了,但是这里面其实是我们根本就没有设置线段的宽度,线段的端点形状,没有办法调用agg::conv_stroke啊!!并且还有一个问题,使用move_to替换掉move_to_d,之后,根本就无法渲染出来,并且尝试渲染一个矩形,惨败啊!!
代码如下:
//Scanline Rasterizer光栅化,说她是画册,描述了所有我们即将描绘图案,颜色,线条,
//但是并不切确,因为她只是一个容器,一个记载线段,标志,详细参数的规格说明书,
//连草图都不是,她更像是一张菜谱,里面记录了食材,记录了烹饪的过程,仅此而已。
agg::rasterizer_scanline_aa<> ras;
agg::scanline_u8 sl;
ras.reset();
//构建三角形,并且填充颜色为蓝色,支持浮点数
ras.move_to_d(500,500);
ras.line_to_d(500,600);
ras.line_to_d(700,700);
rensl.color(agg::rgba8(0,0,255));
agg::render_scanlines(ras,sl,rensl);
ras.reset();
时间: 2024-08-02 19:17:43