packages feed

Rasterific 0.7.5.2 → 0.7.5.3

raw patch · 3 files changed

+12/−3 lines, 3 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

Files

Rasterific.cabal view
@@ -1,7 +1,7 @@ -- Initial Rasterific.cabal generated by cabal init.  For further 
 -- documentation, see http://haskell.org/cabal/users-guide/
 name:                Rasterific
-version:             0.7.5.2
+version:             0.7.5.3
 synopsis:            A pure haskell drawing engine.
 -- A longer description of the package.
 description:
@@ -38,7 +38,7 @@ Source-Repository this
     Type:      git
     Location:  git://github.com/Twinside/Rasterific.git
-    Tag:       v0.7.5.2
+    Tag:       v0.7.5.3
 
 flag embed_linear
   description: Embed a reduced version of Linear avoiding a (huge) dep
changelog view
@@ -1,6 +1,11 @@ Change log
 ==========
 
+v0.7.5.3 April 1st 2020
+-----------------------
+
+ * Fix to draw really small features (tweaked tolerance again...)
+
 v0.7.5.2 April 1st 2020
 -----------------------
 
src/Graphics/Rasterific/Operators.hs view
@@ -153,7 +153,11 @@ isNearby :: Point -> Point -> Bool
 {-# INLINE isNearby #-}
 isNearby p1 p2 =
-    squareDist < 0.1 ||
+    -- we keep really small distances because when drawing geometry
+    -- (possibly scaled) from a large model, every small line account
+    -- to the coverage, and discarding "small" lines will make artifact
+    -- because we didn't count coverage correctly.
+    squareDist < 0.0001 ||
     isNaN squareDist || isInfinite squareDist -- degenerate case protection
   where vec = p1 ^-^ p2
         squareDist = vec `dot` vec