MCPcopy Create free account
hub / github.com/comaps/comaps / GetSelectedFeatureRect

Method GetSelectedFeatureRect

libs/drape/overlay_tree.cpp:449–470  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

447}
448
449bool OverlayTree::GetSelectedFeatureRect(ScreenBase const & screen, m2::RectD & featureRect)
450{
451 if (!m_selectedFeatureID.IsValid())
452 return false;
453
454 auto resultRect = m2::RectD::GetEmptyRect();
455 for (auto it = m_overlayIdCache.lower_bound(OverlayID::GetLowerKey(m_selectedFeatureID));
456 it != m_overlayIdCache.end() && it->first.m_featureId == m_selectedFeatureID; ++it)
457 {
458 for (auto const & handle : it->second)
459 if (handle->IsVisible())
460 resultRect.Add(handle->GetPixelRect(screen, screen.isPerspective()));
461 }
462
463 if (resultRect.IsValid())
464 {
465 featureRect = resultRect;
466 return true;
467 }
468
469 return false;
470}
471
472void OverlayTree::Select(m2::PointD const & glbPoint, TOverlayContainer & result) const
473{

Callers 1

OnNewVisibleViewportMethod · 0.80

Calls 6

isPerspectiveMethod · 0.80
IsValidMethod · 0.45
endMethod · 0.45
IsVisibleMethod · 0.45
AddMethod · 0.45
GetPixelRectMethod · 0.45

Tested by

no test coverage detected