+ remove "fast" rasterizer as it produces suboptimal results

This commit is contained in:
Artem Pavlenko 2012-05-07 14:39:39 +01:00
parent 1bf6510aeb
commit 449a40685a

View file

@ -63,49 +63,12 @@ void agg_renderer<T>::process(line_symbolizer const& sym,
agg::rendering_buffer buf(current_buffer_->raw_data(),width_,height_, width_ * 4);
box2d<double> ext = query_extent_ * 1.0;
if (sym.get_rasterizer() == RASTERIZER_FAST)
{
/*
typedef agg::renderer_base<aa_renderer::pixel_format_type> ren_base;
typedef agg::renderer_outline_aa<ren_base> renderer_type;
typedef agg::rasterizer_outline_aa<renderer_type> rasterizer_type;
//typedef agg::conv_clip_polyline<geometry_type> clipped_geometry_type;
//typedef coord_transform2<CoordTransform,clipped_geometry_type> path_type;
agg::line_profile_aa profile;
profile.width(stroke_.get_width() * scale_factor_);
ren_base base_ren(pixf);
renderer_type ren(base_ren, profile);
ren.color(agg::rgba8(r, g, b, int(a*stroke_.get_opacity())));
//ren.clip_box(0,0,width_,height_);
rasterizer_type ras(ren);
ras.line_join(agg::outline_miter_accurate_join);
ras.round_cap(true);
for (unsigned i=0;i<feature->num_geometries();++i)
{
geometry_type & geom = feature->get_geometry(i);
if (geom.num_points() > 1)
{
clipped_geometry_type clipped(geom);
clipped.clip_box(ext.minx(),ext.miny(),ext.maxx(),ext.maxy());
path_type path(t_,clipped,prj_trans);
ras.add_path(path);
}
}
*/
}
else
{
ras_ptr->reset();
set_gamma_method(stroke_, ras_ptr);
//metawriter_with_properties writer = sym.get_metawriter();
typedef boost::mpl::vector<clip_line_tag,transform_tag, offset_transform_tag, affine_transform_tag, smooth_tag, dash_tag, stroke_tag> conv_types;
vertex_converter<box2d<double>,rasterizer,line_symbolizer, proj_transform, CoordTransform,conv_types>
converter(ext,*ras_ptr,sym,t_,prj_trans,scale_factor_);
converter(query_extent_,*ras_ptr,sym,t_,prj_trans,scale_factor_);
if (sym.clip()) converter.set<clip_line_tag>(); // optional clip (default: true)
converter.set<transform_tag>(); // always transform
@ -159,7 +122,6 @@ void agg_renderer<T>::process(line_symbolizer const& sym,
ren.color(agg::rgba8(r, g, b, int(a * stroke_.get_opacity())));
ren.render(*ras_ptr);
}
}
}