diff --git a/projects/openttd_vs80.vcproj b/projects/openttd_vs80.vcproj
index 755b51371b..868b00e1a1 100644
--- a/projects/openttd_vs80.vcproj
+++ b/projects/openttd_vs80.vcproj
@@ -1695,6 +1695,14 @@
RelativePath=".\..\src\core\enum_type.hpp"
>
+
+
+
+
diff --git a/projects/openttd_vs90.vcproj b/projects/openttd_vs90.vcproj
index f0ebbcff15..552a59440f 100644
--- a/projects/openttd_vs90.vcproj
+++ b/projects/openttd_vs90.vcproj
@@ -1692,6 +1692,14 @@
RelativePath=".\..\src\core\enum_type.hpp"
>
+
+
+
+
diff --git a/source.list b/source.list
index f3ee7a5145..ab48bbd388 100644
--- a/source.list
+++ b/source.list
@@ -367,6 +367,8 @@ core/bitmath_func.hpp
core/endian_func.hpp
core/endian_type.hpp
core/enum_type.hpp
+core/geometry_func.cpp
+core/geometry_func.hpp
core/geometry_type.hpp
core/math_func.cpp
core/math_func.hpp
diff --git a/src/core/geometry_func.cpp b/src/core/geometry_func.cpp
new file mode 100644
index 0000000000..10198142a5
--- /dev/null
+++ b/src/core/geometry_func.cpp
@@ -0,0 +1,21 @@
+/* $Id$ */
+
+/** @file geometry_func.cpp Geometry functions. */
+
+#include "../stdafx.h"
+#include "geometry_func.hpp"
+#include "math_func.hpp"
+
+/**
+ * Compute bounding box of both dimensions.
+ * @param d1 First dimension.
+ * @param d2 Second dimension.
+ * @return The bounding box of both dimensions, the smallest dimension that surrounds both arguments.
+ */
+Dimension maxdim(const Dimension &d1, const Dimension &d2)
+{
+ Dimension d;
+ d.width = max(d1.width, d2.width);
+ d.height = max(d1.height, d2.height);
+ return d;
+}
diff --git a/src/core/geometry_func.hpp b/src/core/geometry_func.hpp
new file mode 100644
index 0000000000..0aa88457f3
--- /dev/null
+++ b/src/core/geometry_func.hpp
@@ -0,0 +1,12 @@
+/* $Id$ */
+
+/** @file geometry_func.hpp Geometry functions. */
+
+#ifndef GEOMETRY_FUNC_HPP
+#define GEOMETRY_FUNC_HPP
+
+#include "geometry_type.hpp"
+
+Dimension maxdim(const Dimension &d1, const Dimension &d2);
+
+#endif /* GEOMETRY_FUNC_HPP */
diff --git a/src/window_gui.h b/src/window_gui.h
index 853615905a..2821dfbd7f 100644
--- a/src/window_gui.h
+++ b/src/window_gui.h
@@ -5,7 +5,7 @@
#ifndef WINDOW_GUI_H
#define WINDOW_GUI_H
-#include "core/geometry_type.hpp"
+#include "core/geometry_func.hpp"
#include "vehicle_type.h"
#include "viewport_type.h"
#include "company_type.h"