| 262 | } |
| 263 | |
| 264 | float WorldGeometry::polyOverlapArea(PolyF const& poly1, PolyF const& poly2) const { |
| 265 | float area = 0.0f; |
| 266 | for (auto const& p1 : splitPoly(poly1)) { |
| 267 | for (auto const& p2 : splitPoly(poly2)) |
| 268 | area += PolyF::clip(p1, p2).convexArea(); |
| 269 | } |
| 270 | return area; |
| 271 | } |
| 272 | |
| 273 | bool WorldGeometry::lineIntersectsRect(Line2F const& line, RectF const& rect) const { |
| 274 | for (auto l : splitLine(line)) { |