bool OverlayHandle::IsIntersect(ScreenBase const & screen, ref_ptr<OverlayHandle> const h) const { Rects const & ar1 = GetExtendedPixelShape(screen); Rects const & ar2 = h->GetExtendedPixelShape(screen); for (size_t i = 0; i < ar1.size(); ++i) for (size_t j = 0; j < ar2.size(); ++j) if (ar1[i].IsIntersect(ar2[j])) return true; return false; }