bool validate() const
 {
     mapnik::request m_req(width_,height_,extent_);
     mapnik::image_32 im(m_->width(),m_->height());
     mapnik::attributes variables;
     m_req.set_buffer_size(m_->buffer_size());
     mapnik::projection map_proj(m_->srs(),true);
     double scale_denom = mapnik::scale_denominator(m_req.scale(),map_proj.is_geographic());
     scale_denom *= scale_factor_;
     mapnik::agg_renderer<mapnik::image_32> ren(*m_,m_req,variables,im,scale_factor_);
     ren.start_map_processing(*m_);
     std::vector<mapnik::layer> const& layers = m_->layers();
     process_layers(ren,m_req,map_proj,layers,scale_denom);
     ren.end_map_processing(*m_);
     if (!preview_.empty()) {
         std::clog << "preview available at " << preview_ << "\n";
         mapnik::save_to_file(im,preview_);
     }
     return true;
 }
 void operator()() const
 {
     if (preview_.empty()) {
         for (unsigned i=0;i<iterations_;++i)
         {
             mapnik::request m_req(width_,height_,extent_);
             mapnik::image_32 im(m_->width(),m_->height());
             mapnik::attributes variables;
             m_req.set_buffer_size(m_->buffer_size());
             mapnik::projection map_proj(m_->srs(),true);
             double scale_denom = mapnik::scale_denominator(m_req.scale(),map_proj.is_geographic());
             scale_denom *= scale_factor_;
             mapnik::agg_renderer<mapnik::image_32> ren(*m_,m_req,variables,im,scale_factor_);
             ren.start_map_processing(*m_);
             std::vector<mapnik::layer> const& layers = m_->layers();
             process_layers(ren,m_req,map_proj,layers,scale_denom);
             ren.end_map_processing(*m_);
         }            
     }
 }
Ejemplo n.º 3
0
double Map::scale_denominator() const
{
    projection map_proj(srs_);
    return mapnik::scale_denominator( scale(), map_proj.is_geographic());
}