//------------------------------------------------------------------------------------------// // The Lunar Interior //------------------------------------------------------------------------------------------// // Lights/Camera //------------------------------------------------------------------------------------------// #include "textures.inc" camera {location <0,1000,-4000> look_at <0,0,3>} //Illuminate Limb light_source {<-10000,0,-2000> color rgb <1,1,1>} light_source {<-10000,2000,-2000> color rgb <1,1,1>} //Illuminate Interior light_source {<6000,1000,-18000> color rgb <1,1,1>} light_source {<2000,4000,-5000> color rgb <1,1,1>} plane { <0,0,1>, 10 texture {Starfield} } //------------------------------------------------------------------------------------------// // CRUST AND SURFACE //------------------------------------------------------------------------------------------// #declare Crust = difference { sphere { <0,0,0>, 1740.0 pigment {image_map {png "./03_Moon_Surface.png" map_type 1 interpolate 2}} finish {ambient 0 diffuse 1} rotate <0,230,0> } sphere {<0,0,0>, 1738.0 pigment {color rgb <0,0,0>}} box {<0,-2000,0>, <2000,2000,-2000> pigment {color rgb <0,0,0>} finish {brilliance 1.0}} } // end difference //------------------------------------------------------------------------------------------// // Inner Core //------------------------------------------------------------------------------------------// #declare Inner_Core = sphere { <0,0,0>, 500. texture {Silver_Metal normal {bumps scale 250} finish {phong 200.0} } } //------------------------------------------------------------------------------------------// // Cartoon Image //------------------------------------------------------------------------------------------// #declare Cartoon = difference { sphere {<0,0,0>, 1738.0 pigment {color rgb <0.82,0.87,0.611>}} sphere {<0,0,0>, 500.0 pigment {color rgb <0.82,0.87,0.611>}} box { <-1738,-1738,0>, <1738,1738,-1738> translate <0,1738,0> pigment {image_map {png "./Lunar_Cartoon.png" map_type 0 interpolate 2} scale <1738,1738*2,1> rotate<0,0,0>} translate <0,-1738,0> } // end box } // end difference //------------------------------------------------------------------------------------------// // Seismic wavefield image //------------------------------------------------------------------------------------------// #declare Waves = difference { sphere {<0,0,0>, 1738.0 pigment {color rgb <0.82,0.87,0.611>}} sphere {<0,0,0>, 500.0 pigment {color rgb <0.82,0.87,0.611>}} box {<0,-1738,1738>, <1738,1738,-1738> translate <0,1738,0> pigment {image_map {png "./Lunar_Backdrop_1.png" map_type 0 interpolate 2} scale <1738,1738*2,1> rotate<0,90,0>} translate <0,-1738,0> } // end box } //------------------------------------------------------------------------------------------// // Put them together and display //------------------------------------------------------------------------------------------// #declare Moon = union { object {Crust} object {Inner_Core} object {Cartoon} object {Waves} } object{Moon rotate<0,25,0> } //------------------------------------------------------------------------------------------//