Fix PointSymbolizer collision bounding boxes.
This commit is contained in:
parent
b1bc5a51b3
commit
fe526fd3d6
3 changed files with 3 additions and 2 deletions
|
@ -72,7 +72,7 @@ void agg_renderer<T>::process(point_symbolizer const& sym,
|
|||
evaluate_transform(tr, feature, sym.get_image_transform());
|
||||
agg::trans_affine_translation recenter(-center.x, -center.y);
|
||||
agg::trans_affine recenter_tr = recenter * tr;
|
||||
box2d<double> label_ext = bbox * recenter_tr;
|
||||
box2d<double> label_ext = bbox * recenter_tr * agg::trans_affine_scaling(scale_factor_);
|
||||
|
||||
for (unsigned i=0; i<feature.num_geometries(); ++i)
|
||||
{
|
||||
|
|
|
@ -697,6 +697,7 @@ void cairo_renderer_base::process(point_symbolizer const& sym,
|
|||
box2d<double> label_ext (-dx, -dy, dx, dy);
|
||||
label_ext *= tr;
|
||||
label_ext *= agg::trans_affine_translation(x,y);
|
||||
label_ext *= agg::trans_affine_scaling(scale_factor_);
|
||||
if (sym.get_allow_overlap() ||
|
||||
detector_->has_placement(label_ext))
|
||||
{
|
||||
|
|
|
@ -74,7 +74,7 @@ void grid_renderer<T>::process(point_symbolizer const& sym,
|
|||
|
||||
agg::trans_affine_translation recenter(-center.x, -center.y);
|
||||
agg::trans_affine recenter_tr = recenter * tr;
|
||||
box2d<double> label_ext = bbox * recenter_tr;
|
||||
box2d<double> label_ext = bbox * recenter_tr * agg::trans_affine_scaling(scale_factor_) ;
|
||||
|
||||
for (unsigned i=0; i<feature.num_geometries(); ++i)
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue