void agg_renderer<T0,T1>::process(point_symbolizer const& sym,
                              mapnik::feature_impl & feature,
                              proj_transform const& prj_trans)
{
    composite_mode_e comp_op = get<composite_mode_e>(sym, keys::comp_op, feature, src_over);

    render_point_symbolizer(
        sym, feature, prj_trans, common_,
        [&](pixel_position const& pos, marker const& marker, 
            agg::trans_affine const& tr, double opacity) {
            render_marker(pos, marker, tr, opacity, comp_op);
        });
}
Ejemplo n.º 2
0
void render_thunk_extractor::operator()(point_symbolizer const& sym) const
{
    composite_mode_e comp_op = get<composite_mode_e>(sym, keys::comp_op, feature_, common_.vars_, src_over);

    render_point_symbolizer(
        sym, feature_, prj_trans_, common_,
        [&](pixel_position const& pos, marker const& marker,
            agg::trans_affine const& tr, double opacity) {
            point_render_thunk thunk(pos, marker, tr, opacity, comp_op);
            thunks_.push_back(std::make_shared<render_thunk>(std::move(thunk)));
        });

    update_box();
}
Ejemplo n.º 3
0
void cairo_renderer<T>::process(point_symbolizer const& sym,
                                  mapnik::feature_impl & feature,
                                  proj_transform const& prj_trans)
{
    composite_mode_e comp_op = get<composite_mode_e>(sym, keys::comp_op, feature, common_.vars_, src_over);

    cairo_save_restore guard(context_);
    context_.set_operator(comp_op);

    render_point_symbolizer(
        sym, feature, prj_trans, common_,
        [this](pixel_position const& pos, marker const& marker,
            agg::trans_affine const& tr, double opacity) {
            render_marker(pos, marker, tr, opacity);
        });
}