]> gitweb.michael.orlitzky.com - spline3.git/commitdiff
Inline Tetrahedron functions volume, b0, b1, b2, and b3 (Ben Lippmeier).
authorMichael Orlitzky <michael@orlitzky.com>
Wed, 26 Oct 2011 12:49:22 +0000 (08:49 -0400)
committerMichael Orlitzky <michael@orlitzky.com>
Wed, 26 Oct 2011 12:49:22 +0000 (08:49 -0400)
src/Tetrahedron.hs

index f1614f9004b8a984b8e29ff3095072f1c16a72a4..a9e6c2c6c299a9ec8df42af3a3b137b5c97728b1 100644 (file)
@@ -308,6 +308,7 @@ det p0 p1 p2 p3 =
 
 -- | Computed using the formula from Lai & Schumaker, Definition 15.4,
 --   page 436.
+{-# INLINE volume #-}
 volume :: Tetrahedron -> Double
 volume t
        | v0' == v1' = 0
@@ -325,6 +326,7 @@ volume t
 
 
 -- | The barycentric coordinates of a point with respect to v0.
+{-# INLINE b0 #-}
 b0 :: Tetrahedron -> (RealFunction Point)
 b0 t point = (volume inner_tetrahedron) / (precomputed_volume t)
              where
@@ -332,6 +334,7 @@ b0 t point = (volume inner_tetrahedron) / (precomputed_volume t)
 
 
 -- | The barycentric coordinates of a point with respect to v1.
+{-# INLINE b1 #-}
 b1 :: Tetrahedron -> (RealFunction Point)
 b1 t point = (volume inner_tetrahedron) / (precomputed_volume t)
              where
@@ -339,6 +342,7 @@ b1 t point = (volume inner_tetrahedron) / (precomputed_volume t)
 
 
 -- | The barycentric coordinates of a point with respect to v2.
+{-# INLINE b2 #-}
 b2 :: Tetrahedron -> (RealFunction Point)
 b2 t point = (volume inner_tetrahedron) / (precomputed_volume t)
              where
@@ -346,6 +350,7 @@ b2 t point = (volume inner_tetrahedron) / (precomputed_volume t)
 
 
 -- | The barycentric coordinates of a point with respect to v3.
+{-# INLINE b3 #-}
 b3 :: Tetrahedron -> (RealFunction Point)
 b3 t point = (volume inner_tetrahedron) / (precomputed_volume t)
              where