MCPcopy Create free account
hub / github.com/MapServer/MapServer / render_scanline_aa

Function render_scanline_aa

renderers/agg/include/agg_renderer_scanline.h:153–175  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

151 template<class Scanline, class BaseRenderer,
152 class SpanAllocator, class SpanGenerator>
153 void render_scanline_aa(const Scanline& sl, BaseRenderer& ren,
154 SpanAllocator& alloc, SpanGenerator& span_gen)
155 {
156 int y = sl.y();
157
158 unsigned num_spans = sl.num_spans();
159 typename Scanline::const_iterator span = sl.begin();
160 for(;;)
161 {
162 int x = span->x;
163 int len = span->len;
164 const typename Scanline::cover_type* covers = span->covers;
165
166 if(len < 0) len = -len;
167 typename BaseRenderer::color_type* colors = alloc.allocate(len);
168 span_gen.generate(colors, x, y, len);
169 ren.blend_color_hspan(x, y, len, colors,
170 (span->len < 0) ? 0 : covers, *covers);
171
172 if(--num_spans == 0) break;
173 ++span;
174 }
175 }
176
177 //=====================================================render_scanlines_aa
178 template<class Rasterizer, class Scanline, class BaseRenderer,

Callers 2

render_scanlines_aaFunction · 0.85
renderMethod · 0.85

Calls 6

yMethod · 0.45
num_spansMethod · 0.45
beginMethod · 0.45
allocateMethod · 0.45
generateMethod · 0.45
blend_color_hspanMethod · 0.45

Tested by

no test coverage detected