diff options
author | Robert Vollmert <rvollmert@gmx.net> | 2009-11-13 22:05:59 +0100 |
---|---|---|
committer | Robert Vollmert <rvollmert@gmx.net> | 2009-11-13 22:51:34 +0100 |
commit | bb4f0a1ac81da867dbe57bfaea364b69fb02d68a (patch) | |
tree | f7278f31bc269f7b527276722200c28b1e832947 /crawl-ref/source/coord-circle.cc | |
parent | d15c5257fbe4fc12651fa1b59745550d87f4df8d (diff) | |
download | crawl-ref-bb4f0a1ac81da867dbe57bfaea364b69fb02d68a.tar.gz crawl-ref-bb4f0a1ac81da867dbe57bfaea364b69fb02d68a.zip |
Add translating constructor to circle_def.
Diffstat (limited to 'crawl-ref/source/coord-circle.cc')
-rw-r--r-- | crawl-ref/source/coord-circle.cc | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/crawl-ref/source/coord-circle.cc b/crawl-ref/source/coord-circle.cc index a4d98ad505..d43f41cfd1 100644 --- a/crawl-ref/source/coord-circle.cc +++ b/crawl-ref/source/coord-circle.cc @@ -33,6 +33,14 @@ circle_def::circle_def() init(LOS_MAX_RADIUS, C_ROUND); } +circle_def::circle_def(const coord_def& origin_, const circle_def& bds) + : los_radius(bds.los_radius), shape(bds.shape), + origin(origin_), radius(bds.radius), radius_sq(bds.radius_sq) +{ + // Set up bounding box. + init_bbox(); +} + circle_def::circle_def(int param, circle_type ctype) : los_radius(false), origin(coord_def(0,0)) { @@ -69,6 +77,11 @@ void circle_def::init(int param, circle_type ctype) radius = param; radius_sq = radius * radius; } + init_bbox(); +} + +void circle_def::init_bbox() +{ bbox = rect_def(origin - coord_def(radius, radius), origin + coord_def(radius, radius)); if (!origin.origin()) |