module Main where --import Cube --import Face --import Grid --import Misc (flatten) --import Point --import RealFunction --import Tetrahedron --import ThreeDimensional trilinear :: [[[Double]]] trilinear = [ [ [ 1, 2, 3 ], [ 1, 3, 5 ], [ 1, 4, 7 ] ], [ [ 1, 2, 3 ], [ 1, 4, 7 ], [ 1, 6, 11 ] ], [ [ 1, 2, 3 ], [ 1, 5, 9 ], [ 1, 8, 15 ]]] zeros :: [[[Double]]] zeros = [ [ [ 0, 0, 0 ], [ 0, 0, 0 ], [ 0, 0, 0 ] ], -- [ [ 0, 0, 0 ], [ 0, 0, 0 ], [ 0, 0, 0 ] ], -- [ [ 0, 0, 0 ], [ 0, 0, 0 ], [ 0, 0, 0 ]]] dummy :: [[[Double]]] dummy = [ [ [ 0, 1, 2 ], [ 3, 4, 5 ], [ 6, 7, 8 ] ], -- [ [ 9, 10, 11 ], [ 12, 13, 14 ], [ 15, 16, 17 ] ], -- [ [ 18, 19, 20 ], [ 21, 22, 23 ], [ 24, 25, 26 ]]] --find_point_value :: RealFunction Point --find_point_value p = poly p -- where -- g0 = make_grid 1 trilinear -- the_cubes = flatten (cubes g0) -- good_cubes = filter ((flip contains_point) p) the_cubes -- target_cube = head good_cubes -- good_tets = filter ((flip contains_point) p) (tetrahedrons target_cube) -- target_tetrahedron = head good_tets -- poly = polynomial target_tetrahedron main :: IO () main = do putStrLn "Hello, World." -- print $ find_point_value (0,0,0) -- print $ find_point_value (1,0,0) -- print $ find_point_value (2,0,0) -- print $ find_point_value (0,1,0) -- print $ find_point_value (1,1,0) -- print $ find_point_value (2,1,0) -- print $ find_point_value (0,2,0) -- print $ find_point_value (1,2,0) -- print $ find_point_value (2,2,0) -- print $ find_point_value (0,0,1) -- print $ find_point_value (1,0,1) -- print $ find_point_value (2,0,1) -- print $ find_point_value (0,1,1) -- print $ find_point_value (1,1,1) -- print $ find_point_value (2,1,1) -- print $ find_point_value (0,2,1) -- print $ find_point_value (1,2,1) -- print $ find_point_value (2,2,1) -- print $ find_point_value (0,0,2) -- print $ find_point_value (1,0,2) -- print $ find_point_value (2,0,2) -- print $ find_point_value (0,1,2) -- print $ find_point_value (1,1,2) -- print $ find_point_value (2,1,2) -- print $ find_point_value (0,2,2) -- print $ find_point_value (1,2,2) -- print $ find_point_value (2,2,2)