1
#ifndef SEEN_Geom_CONVEX_HULL_H
2
#define SEEN_Geom_CONVEX_HULL_H
4
/* ex:set et ts=4 sw=4: */
7
* A class representing the convex hull of a set of points.
9
* Copyright 2004 MenTaLguY <mental@rydia.net>
11
* This code is licensed under the GNU GPL; see COPYING for more information.
14
#include <libnr/rect.h>
20
explicit ConvexHull(Point const &p) : _bounds(p, p) {}
22
Point midpoint() const {
23
return _bounds.midpoint();
26
void add(Point const &p) {
29
void add(Rect const &p) {
30
// Note that this is a hack. when convexhull actually works
31
// you will need to add all four points.
32
_bounds.expandTo(p.min());
33
_bounds.expandTo(p.max());
35
void add(ConvexHull const &h) {
36
_bounds.expandTo(h._bounds);
39
Rect const &bounds() const {
47
} /* namespace Geom */