From 44d030b9cab970fe197555d87fc821f154c3b204 Mon Sep 17 00:00:00 2001 From: Ben Cragg <bcvery1@gmail.com> Date: Tue, 29 Jan 2019 11:33:12 +0000 Subject: [PATCH] normalising before getting bigger/smaller --- geometry.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/geometry.go b/geometry.go index a3d0996..80682ab 100644 --- a/geometry.go +++ b/geometry.go @@ -415,8 +415,8 @@ func minCircle(c, d Circle) Circle { // Union returns the minimal Circle which covers both `c` and `d`. func (c Circle) Union(d Circle) Circle { - biggerC := maxCircle(c, d) - smallerC := minCircle(c, d) + biggerC := maxCircle(c.Norm(), d.Norm()) + smallerC := minCircle(c.Norm(), d.Norm()) // Get distance between centers dist := c.Center.To(d.Center).Len() @@ -445,8 +445,8 @@ func (c Circle) Union(d Circle) Circle { // centers. func (c Circle) Intersect(d Circle) Circle { // Check if one of the circles encompasses the other; if so, return that one - biggerC := maxCircle(c, d) - smallerC := minCircle(c, d) + biggerC := maxCircle(c.Norm(), d.Norm()) + smallerC := minCircle(c.Norm(), d.Norm()) if biggerC.Radius >= biggerC.Center.To(smallerC.Center).Len()+smallerC.Radius { return biggerC -- GitLab