osgEarth 2.1.1
|
#include <AGG.h>
Public Member Functions | |
renderer (rendering_buffer &rbuf) | |
void | clear (const rgba8 &c) |
void | pixel (int x, int y, const rgba8 &c) |
rgba8 | pixel (int x, int y) const |
void | render (const scanline &sl, const rgba8 &c) |
rendering_buffer & | rbuf () |
Private Attributes | |
rendering_buffer * | m_rbuf |
Span | m_span |
agg::renderer< Span >::renderer | ( | rendering_buffer & | rbuf | ) | [inline] |
void agg::renderer< Span >::clear | ( | const rgba8 & | c | ) | [inline] |
void agg::renderer< Span >::pixel | ( | int | x, |
int | y, | ||
const rgba8 & | c | ||
) | [inline] |
rgba8 agg::renderer< Span >::pixel | ( | int | x, |
int | y | ||
) | const [inline] |
rendering_buffer& agg::renderer< Span >::rbuf | ( | ) | [inline] |
void agg::renderer< Span >::render | ( | const scanline & | sl, |
const rgba8 & | c | ||
) | [inline] |
Definition at line 444 of file AGG.h.
{ if(sl.y() < 0 || sl.y() >= int(m_rbuf->height())) { return; } unsigned num_spans = sl.num_spans(); int base_x = sl.base_x(); unsigned char* row = m_rbuf->row(sl.y()); scanline::iterator span(sl); do { int x = span.next() + base_x; const int8u* covers = span.covers(); int num_pix = span.num_pix(); if(x < 0) { num_pix += x; if(num_pix <= 0) continue; covers -= x; x = 0; } if(x + num_pix >= int(m_rbuf->width())) { num_pix = m_rbuf->width() - x; if(num_pix <= 0) continue; } m_span.render(row, x, num_pix, covers, c); } while(--num_spans); }
rendering_buffer* agg::renderer< Span >::m_rbuf [private] |
Span agg::renderer< Span >::m_span [private] |