Mid strictifying
This commit is contained in:
+9
-9
@@ -15,7 +15,7 @@ import Control.Lens
|
||||
translateXY :: Float -> Float -> Polyhedra -> Polyhedra
|
||||
translateXY x y = pyFaces %~ map (map $ first tran)
|
||||
where
|
||||
tran (a,b,c) = (a+x,b+y,c)
|
||||
tran (V3 a b c) = (V3 (a+x) (b+y) (c))
|
||||
|
||||
rotateXY :: Float -> Polyhedra -> Polyhedra
|
||||
rotateXY a = over pyFaces $ map $ map $ first $ rotate3 a
|
||||
@@ -49,7 +49,7 @@ faceEdges xs = zipWith addNormal xs (tail xs ++ [head xs])
|
||||
|
||||
rhombus :: Point3 -> Point3 -> [Point3]
|
||||
rhombus a b =
|
||||
[(0,0,0)
|
||||
[(V3 0 0 0)
|
||||
,a
|
||||
,a +.+.+ b
|
||||
,b
|
||||
@@ -58,16 +58,16 @@ rhombus a b =
|
||||
boxXYZ :: Float -> Float -> Float -> [[Point3]]
|
||||
boxXYZ x y z =
|
||||
[ bottomFace
|
||||
, map (+.+.+ (0,0,z)) $ reverse bottomFace
|
||||
, map (+.+.+ (V3 0 0 z)) $ reverse bottomFace
|
||||
, frontFace
|
||||
, map (+.+.+ (0,y,0)) $ reverse frontFace
|
||||
, map (+.+.+ (V3 0 y 0)) $ reverse frontFace
|
||||
, sideFace
|
||||
, map (+.+.+ (x,0,0)) $ reverse sideFace
|
||||
, map (+.+.+ (V3 x 0 0)) $ reverse sideFace
|
||||
]
|
||||
where
|
||||
bottomFace = rhombus (0,y,0) (x,0,0)
|
||||
frontFace = rhombus (x,0,0) (0,0,z)
|
||||
sideFace = rhombus (0,0,z) (0,y,0)
|
||||
bottomFace = rhombus (V3 0 y 0) (V3 x 0 0)
|
||||
frontFace = rhombus (V3 x 0 0) (V3 0 0 z)
|
||||
sideFace = rhombus (V3 0 0 z) (V3 0 y 0)
|
||||
boxABC :: Point3 -> Point3 -> Point3 -> [[Point3]]
|
||||
boxABC a b c =
|
||||
[ faceNC
|
||||
@@ -98,7 +98,7 @@ polyToEdges = constructEdges . map (map fst) . _pyFaces
|
||||
|
||||
-- rendering for silhouette
|
||||
polyToRender :: Polyhedra -> [RenderType]
|
||||
polyToRender = map (Render3 . flat4) . polyToEdges
|
||||
polyToRender = map (Render3 . tflat4) . polyToEdges
|
||||
-- rendering for shape
|
||||
polyToGeoRender :: Polyhedra -> [RenderType]
|
||||
polyToGeoRender = map (Render3 . polyToTris . map fst) . _pyFaces
|
||||
|
||||
Reference in New Issue
Block a user