| 132 | } |
| 133 | |
| 134 | void RenderBucket::RenderDebug(ref_ptr<GraphicsContext> context, ScreenBase const & screen, |
| 135 | ref_ptr<DebugRenderer> debugRectRenderer) const |
| 136 | { |
| 137 | ASSERT(!debugRectRenderer || !debugRectRenderer->IsEnabled() || m_overlay.empty(), (debugRectRenderer, debugRectRenderer->IsEnabled(), m_overlay.empty())); |
| 138 | |
| 139 | for (auto const & handle : m_overlay) |
| 140 | { |
| 141 | if (!screen.PixelRect().IsIntersect(handle->GetPixelRect(screen, false))) |
| 142 | continue; |
| 143 | |
| 144 | auto const & rects = handle->GetExtendedPixelShape(screen); |
| 145 | for (auto const & rect : rects) |
| 146 | { |
| 147 | if (screen.isPerspective() && !screen.PixelRectIn3d().IsIntersect(m2::RectD(rect))) |
| 148 | continue; |
| 149 | |
| 150 | auto color = dp::Color::Green(); |
| 151 | if (!handle->IsVisible()) |
| 152 | color = handle->IsReady() ? dp::Color::Red() : dp::Color::Yellow(); |
| 153 | |
| 154 | debugRectRenderer->DrawRect(context, screen, rect, color); |
| 155 | } |
| 156 | } |
| 157 | } |
| 158 | } // namespace dp |
no test coverage detected