// Last edited on 2024-05-01 21:43:57 by stolfi #macro scene(ux, uy, uz) #local R = 5.0; union{ sphere{ <0,0,0>, R texture{ txg } } object{ gab_norm_vec(R, ux, uy, uz, txv) } translate 7*z } #end #macro gab_norm_vec(R, ux, uy, uz, tx) #local dir = < ux, uy, uz >; #local pos = R*dir; #local rad = rad_arrow; union{ sphere{ pos, 1.5*rad texture{ tx } } object{ garrow(pos, dir, tx) } } #end