// The central orb, radius 1 // Last edited on 2019-04-12 16:02:26 by stolfilocal // Requires // Defines // earth #include "earth-layer.inc" #macro matte_tx(clr) texture{ pigment{ color rgb clr } finish{ diffuse 0.9 ambient 0.1 } } #end // Equatorial radius of the top of each layer #declare earth_r_inner_core = 1221.5; #declare earth_r_outer_core = 3481.0; #declare earth_r_lower_mantle = 3000.0; #declare earth_r_upper_mantle = 5718.0; #declare earth_r_crust = 6378.0; // Plus 8 km, minus #declare earth_r_surface = earth_r_crust + 2; // For map texturing. // Relative flattening of the top of each layer #declare earth_f_inner_core = 0.0025; #declare earth_f_outer_core = 0.0028; // Guessed. #declare earth_f_lower_mantle = 0.0029; // Guessed. #declare earth_f_upper_mantle = 0.0030; // Guessed. #declare earth_f_crust = 0.0030; // Guessed. #declare earth_f_surface = 0.0030; // Interior colors for layers #declare earth_tx_inner_core = matte_tx( < 1.000, 0.980, 0.900 > ) #declare earth_tx_outer_core = matte_tx( < 1.000, 0.950, 0.800 > ) #declare earth_tx_lower_mantle = matte_tx( < 1.000, 0.300, 0.000 > ) #declare earth_tx_upper_mantle = matte_tx( < 0.750, 0.100, 0.000 > ) #declare earth_tx_crust = matte_tx( < 0.300, 0.200, 0.000 > ) #declare earth = union{ object{ earth_layer(0.0, earth_r_inner_core, 0.0025, earth_tx_inner_core) } object{ earth_layer(earth_r_inner_core, earth_r_outer_core, 0.0028, earth_tx_outer_core) } object{ earth_layer(earth_r_outer_core, earth_r_lower_mantle, 0.0029, earth_tx_lower_mantle) } object{ earth_layer(earth_r_lower_mantle, earth_r_upper_mantle, 0.0030, earth_tx_upper_mantle) } object{ earth_layer(earth_r_upper_mantle, earth_r_crust, 0.0030, earth_tx_crust) } }