OpenTTD Source  20240917-master-g9ab0a47812
geometry_func.hpp
Go to the documentation of this file.
1 /*
2  * This file is part of OpenTTD.
3  * OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
4  * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
5  * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
6  */
7 
10 #ifndef GEOMETRY_FUNC_HPP
11 #define GEOMETRY_FUNC_HPP
12 
13 #include "geometry_type.hpp"
14 
15 [[nodiscard]] Dimension maxdim(const Dimension &d1, const Dimension &d2);
16 
22 inline bool IsEmptyRect(const Rect &r)
23 {
24  return (r.left | r.top | r.right | r.bottom) == 0;
25 }
26 
27 Rect BoundingRect(const Rect &r1, const Rect &r2);
28 
29 #endif /* GEOMETRY_FUNC_HPP */
Dimension
Dimensions (a width and height) of a rectangle in 2D.
Definition: geometry_type.hpp:30
IsEmptyRect
bool IsEmptyRect(const Rect &r)
Check if a rectangle is empty.
Definition: geometry_func.hpp:22
BoundingRect
Rect BoundingRect(const Rect &r1, const Rect &r2)
Compute the bounding rectangle around two rectangles.
Definition: geometry_func.cpp:36
geometry_type.hpp
maxdim
Dimension maxdim(const Dimension &d1, const Dimension &d2)
Compute bounding box of both dimensions.
Definition: geometry_func.cpp:22
Rect
Specification of a rectangle with absolute coordinates of all edges.
Definition: geometry_type.hpp:75