]> gitweb.michael.orlitzky.com - spline3.git/blob - src/Main.hs
Set zoom to 4x.
[spline3.git] / src / Main.hs
1 module Main
2 where
3
4 import Data.Array.Repa (
5 DIM3,
6 Z(..),
7 (:.)(..),
8 )
9
10 import System.Environment (getArgs)
11
12 import Cube (tetrahedron)
13 import Grid (cube_at, make_grid, zoom)
14 import PolynomialArray (make_polynomial_array)
15 import Tetrahedron (polynomial)
16 import Values (read_values_3d, write_values_1d)
17
18 mri_shape :: DIM3
19 mri_shape = (Z :. 256 :. 256 :. 1)
20
21
22
23
24 main :: IO ()
25 main = do
26 args <- getArgs
27 let color = head args
28 let in_file = "./data/MRbrain.40." ++ color
29 let out_file = "MRbrain.40." ++ color ++ ".out"
30 mridata <- read_values_3d mri_shape in_file
31
32 let g = make_grid 1 mridata
33 let polynomials = make_polynomial_array (255,255,0,23)
34 [ ((i,j,k,tet), polynomial t) | i <- [0..255],
35 j <- [0..255],
36 k <- [0],
37 tet <- [0..23],
38 let c = cube_at g i j k,
39 let t = tetrahedron c tet ]
40
41 let output = zoom g polynomials (4,4,1)
42 write_values_1d output out_file