// CYcell.fe // Triply periodic minimal surface C(Y) from Fischer and Koch // Programmer: Ken Brakke, brakke@susqu.edu, http://www.susqu.edu /* Commands: gogo - typical evolution transforms off - show just single fundamental region setcolor - to color one side yellow, as in my web page. To turn off showing all the edges in the graphics display, hit the "e" key in the graphics window. */ // 180 degree rotations about respective edges view_transform_generators 9 swap_colors 1. 0 0. 0. 0 -1 0 0 0. 0 -1. 0.5 0 0 0 1 swap_colors -1. 0. 0. 1.25 0. 0. 1. -0.25 0. 1. 0. 0.25 0 0 0 1 swap_colors 0. 0. 1. 0.25 0. -1. 0. 0.25 1. 0. 0. -0.25 0 0 0 1 swap_colors -1. 0. 0 0.5 0. 1. 0 0. 0 0 -1 0 0 0 0 1 swap_colors 0. 0. 1. 0.25 0. -1. 0. 1.25 1. 0. 0. -0.25 0 0 0 1 swap_colors 0. 1. 0. -0.25 1. 0. 0. 0.25 0. 0. -1. 0.25 0 0 0 1 swap_colors -1 0 0 0 0 -1. 0. 0.5 0 0. 1. 0. 0 0 0 1 swap_colors 0. 1. 0. -0.25 1. 0. 0. 0.25 0. 0. -1. 1.25 0 0 0 1 swap_colors -1. 0. 0. 0.25 0. 0. 1. -0.25 0. 1. 0. 0.25 0 0 0 1 vertices 1 1/8 0 1/4 fixed 2 5/8 0 1/4 fixed 3 5/8 1/8 3/8 fixed 4 1/4 1/8 0 fixed 5 1/4 5/8 0 fixed 6 3/8 5/8 1/8 fixed 7 0 1/4 1/8 fixed 8 0 1/4 5/8 fixed 9 1/8 3/8 5/8 fixed edges 1 1 2 fixed 2 2 3 fixed 3 3 4 fixed 4 4 5 fixed 5 5 6 fixed 6 6 7 fixed 7 7 8 fixed 8 8 9 fixed 9 9 1 fixed faces 1 1 2 3 4 5 6 7 8 9 read hessian_normal gogo := { refine edge where valence==1; g 5; u; r; g 10; r; g 10; r; g 10; hessian; hessian; } mgen := { foreach edge ee where fixed do printf "rot[%g,%g,%g,%g,%g,%g]\n",ee.vertex[1].x,ee.vertex[1].y, ee.vertex[1].z,ee.vertex[2].x,ee.vertex[2].y,ee.vertex[2].z; } setcolor := { set facet backcolor yellow }