void AttributeFilter::filter(PointView& view) { if (m_value == m_value) for (PointId i = 0; i < view.size(); ++i) view.setField(m_dim, i, m_value); else UpdateGEOSBuffer(view); }
void AttributeFilter::filter(PointBuffer& buffer) { for (auto& dim_par : m_dimensions) { if (dim_par.second.isogr) { UpdateGEOSBuffer(buffer, dim_par.second); } else { for (PointId i = 0; i < buffer.size(); ++i) { double v = boost::lexical_cast<double>(dim_par.second.value); buffer.setField(dim_par.second.dim, i, v); } } } }