-- Implicit CAD. Copyright (C) 2011, Christopher Olah (chris@colah.ca) -- Copyright (C) 2016 Julia Longtin (julial@turinglace.com) -- Released under the GNU AGPLV3+, see LICENSE module Graphics.Implicit.Export.Symbolic.Rebound3 (rebound3) where import Graphics.Implicit.Definitions(BoxedObj3, ℝ3) import Data.VectorSpace((^-^), (^+^), (^/)) -- | Slightly stretch the bounding box of an object, in order to -- ensure that during mesh generation, there are no problems because -- values are right at the edge. rebound3 :: BoxedObj3 -> BoxedObj3 rebound3 (obj, (a,b)) = let d :: ℝ3 d = (b ^-^ a) ^/ 10 in (obj, (a ^-^ d, b ^+^ d))