File:Terraplan11.png
Terraplan11.png (800 × 600 pixels, file size: 364 KB, MIME type: image/png)
Captions
Summary
[edit]DescriptionTerraplan11.png |
English: Terestric, habitabile planet, Earth analog or Earth twin |
Date | |
Source | Own work |
Author | Merikanto |
POV-Ray 3.7 source code
//
// Earth, Tellus or Terra - like planet
// Earth analog or Earth twin
//
// POV-Ray 3.7 source code
//
// 18.4.2022 0000.0000
- include "colors.inc"
- include "functions.inc"
background { color 0 }
camera {
// location <0, 0, -3>
location <0, -3, -2> *0.7
look_at <0, 0, 0>
}
light_source { <10, 0, -50>*1000*1000*1000 color White*2}
sky_sphere
{
pigment
{
bozo
colour_map
{
[ 0.85 color rgb 0 ]
[ 0.9 color rgb 1 ]
}
scale .0004
}
}
- declare f_crackle2 = function {pattern {crackle metric 2 form <-1,1,0>}}
- declare f_crackle3 = function{ pigment {crackle metric 2 form <-1,1,0>turbulence 0.5}
}
- declare landsea_rate_1=0.5;
//#declare landsea_tex1= agate;
- declare func_landsea_tex_1=function {
f_wrinkles(x,y,z)*(.56-0.004) + f_wrinkles(x*3,y*3,z*3)*0.3 + f_wrinkles(x*10,y*10,z*10)*0.1
+ f_wrinkles(x*10,y*10,z*10)*0.03 + f_wrinkles(x*10,y*10,z*10)*0.01
+ f_wrinkles(x*10,y*10,z*10)*0.003 + f_wrinkles(x*10,y*10,z*10)*0.001
// f_wrinkles(x,y,z)*1
}
- declare func_land1_height_1= function {
abs(1+ exp( f_granite(x/3,y/3,z/3) *f_granite(x*3,y*3,z*3))*-f_crackle3(x,y,z).gray) /3
+f_granite(x*20,y*20,z*20)/100
+f_agate(x*20,y*20,z*20)/100
}
- declare func_sea1_height_1= function {
abs(1+ exp( f_granite(x/3,y/3,z/3) *f_granite(x*3,y*3,z*3))*-f_crackle3(x,y,z).gray) /3
+f_granite(x*20,y*20,z*20)/100
+f_agate(x*20,y*20,z*20)/100
}
#declare vegetation_map_1 =
color_map {
[0.0 rgb <0.01, 0.08, 0.02>]
[0.15 rgb <0.01, 0.08, 0.02>]
[0.26 rgb <0.09, 0.14, 0.04>]
[0.5 rgb <0.32, 0.29, 0.15>]
[0.6 rgb <0.39, 0.34, 0.31>]
[1.0 rgb <0.39, 0.34, 0.31 >]
}
#declare land1= texture {
pigment {Green}
pigment { function {func_land1_height_1(x,y,z)} color_map { vegetation_map_1 } }
finish {ambient 0}
normal { function {func_land1_height_1(x,y,z)} 3 }
}
- declare depth_map_1 = color_map {
[0 color rgb <0.2,0.2,0.7>]
// [0.05 color rgb <0.5,0.5,1>*0.5]
[0.15 color rgb <0,0,0.5>]
[0.3 color rgb <0,0,1/3>]
[0 color rgb <0,0,1/6>]
}
- declare sea1= texture {
pigment {
function {func_sea1_height_1(x,y,z)}
color_map {depth_map_1 }
}
finish {ambient 0}
// normal { function {func_sea1_height_1(x,y,z)} 3 }
}
//#declare land0= texture {pigment {color rgb Green } finish {ambient 0} }
//#declare sea0= texture {pigment {color rgb Blue } finish {ambient 0} }
- declare plantex1= texture {
function { func_landsea_tex_1(x,y,z) }
texture_map {
[0 land1]
[landsea_rate_1 land1]
[landsea_rate_1 sea1]
[1 sea1]
}
}
- declare carree1= union {
sphere{0,1}
//plane {z,0}
texture { plantex1 }
}
#declare bigcloud1=pigment {
//wrinkles
// crackle
granite
// agate
// turbulence 1
//scale 0.05
//scale 0.1
scale 1/3
turbulence 0.5
scale 3
turbulence 1
//sine_wave
scallop_wave
/*
pigment_map {
[0 color rgbt <1,1,1,1>]
[0.1 color rgbt <1,1,1,1>]
[1 color rgbt <1,1,1,0>]
}
*/
pigment_map {
[0 color rgbt <1,1,1,0>*2]
[0.95 color rgbt <1,1,1,1>]
[1 color rgbt <1,1,1,1>]
}
}
#declare bigcloud2=pigment {
granite
// agate
// turbulence 1
scale 0.2
scale 1/5
turbulence 0.5
scale 5
pigment_map {
[0 color rgbt <1,1,1,1>]
[0.2 color rgbt <1,1,1,1>]
[1 color rgbt <1,1,1,0>*2]
}
}
#declare bigcloud3=pigment {
granite
// agate
// turbulence 1
//bozo
// leopard
//spiral1 5
// spiral2 10
// crackle
// spotted
scale 0.3
scale 5
warp {turbulence 1}
scale 1/5
//scale 0.2
//scale 1/5
// turbulence 1
// warp {repeat }
pigment_map {
[0 color rgbt <1,1,1,1>]
[0.4 color rgbt <1,1,1,1>]
[0.8 color rgbt <1,1,1,0>*2]
[1 color rgbt <1,1,1,0>*2]
}
}
- declare kloud1=sphere { <0, 0, 0>, 1.0
texture {
pigment{
gradient y
scale 2
translate y*1
scale 1/3
turbulence 0.2
scale 3
// turbulence 1
pigment_map {
[0 color rgbt <1,1,1,1>]
[0.02 bigcloud1]
[0.15 bigcloud1]
[0.35 color rgbt <1,1,1,1>]
[0.45 color rgbt <1,1,1,1>]
[0.5 bigcloud3]
[0.55 color rgbt <1,1,1,1>]
[0.65 color rgbt <1,1,1,1>]
[0.85 bigcloud1]
[0.97 bigcloud1]
[1 color rgbt <1,1,1,1>]
}
}
finish {ambient 0}
}
}
#declare litecloud1=pigment {
//wrinkles
granite
// agate
// crackle
//turbulence 0.5
scale 1/2
turbulence 1
// rotate x*90
rotate y*90
pigment_map {
[0 color rgbt <1,1,1,1>]
[0.3 color rgbt <1,1,1,1>]
[1 color rgbt <1,1,1,0>*2]
}
}
#declare litecloud2=pigment {
wrinkles
// granite
// agate
// crackle
//turbulence 0.5
scale 1/100
turbulence 1
// rotate x*90
rotate y*90
pigment_map {
[0 color rgbt <1,1,1,1>]
[0.7 color rgbt <1,1,1,1>]
[1 color rgbt <1,1,1,0>*3]
}
}
#declare smallcloud1=pigment {
wrinkles
// granite
// agate
// crackle
//turbulence 0.5
scale 0.1
scale 1/5
turbulence 1
// rotate x*90
rotate y*90
scale 5
pigment_map {
[0 color rgbt <1,1,1,1>]
[0.3 color rgbt <1,1,1,1>]
[1 litecloud1]
}
}
- declare kloud2=sphere { <0, 0, 0>, 1.0
texture {
pigment{
gradient y
scale 2
translate y*1
scale 1/3
turbulence 0.5
scale 3
// turbulence 1
pigment_map {
[0 litecloud2]
[0.15 smallcloud1]
[0.35 litecloud2]
[0.45 litecloud2]
[0.5 smallcloud1]
[0.55 litecloud2]
[0.65 litecloud2]
[0.85 smallcloud1]
[1 litecloud2 ]
}
}
finish {ambient 0}
}
}
#declare atm_thickness1 = 0.02;
- declare atm_color1 = rgb <pow(460/650, 4), pow(460/555, 4), 1>;
- declare atm_amount1=1;
- declare atm_density1 = density
{
function
{
1*exp(-6.7*(sqrt(x*x+(y)*(y)+z*z)- 1 - 0.00001)/atm_thickness1)
}
}
- declare atm_media1 = media
{
method 3
intervals 3
samples 3
scattering
{ 4
color atm_amount1*atm_color1/atm_thickness1
// extinction 1
}
density {atm_density1}
}
- declare atmos1 = difference
{
sphere {0, 1.00001 + atm_thickness1}
// sphere {0, 1.00001}
hollow
pigment {rgbt 1}
interior {media{atm_media1}}
}
- declare icepig1= pigment {
gradient y
scale 10
warp {turbulence 0.25}
scale 1/10
color_map {
[0.00 color rgb <1,1,1>]
[0.03 color rgb <1,1,1>]
[0.04 color rgbt 1]
[0.5 color rgbt 1]
[0.965 color rgbt 1]
[0.975 color rgb <1,1,1>]
[1.00 color rgb <1,1,1>]
}
scale 2
translate y*1
}
- declare icetex1=texture {
pigment { icepig1}
finish {ambient 0}
}
- declare ice1=
object {
sphere {
0,1
}
texture { icetex1}
scale 1.0005
}
union {
object {carree1}
object {ice1}
object { kloud1 scale 1.002 }
object { kloud2 scale 1.001 }
object {atmos1}
}
Licensing
[edit]- You are free:
- to share – to copy, distribute and transmit the work
- to remix – to adapt the work
- Under the following conditions:
- attribution – You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
- share alike – If you remix, transform, or build upon the material, you must distribute your contributions under the same or compatible license as the original.
File history
Click on a date/time to view the file as it appeared at that time.
Date/Time | Thumbnail | Dimensions | User | Comment | |
---|---|---|---|---|---|
current | 12:31, 18 April 2023 | 800 × 600 (364 KB) | Merikanto (talk | contribs) | Uploaded own work with UploadWizard |
You cannot overwrite this file.
File usage on Commons
There are no pages that use this file.
Metadata
This file contains additional information such as Exif metadata which may have been added by the digital camera, scanner, or software program used to create or digitize it. If the file has been modified from its original state, some details such as the timestamp may not fully reflect those of the original file. The timestamp is only as accurate as the clock in the camera, and it may be completely wrong.
PNG file comment |
|
---|---|
File change date and time | 09:21, 18 April 2023 |
Software used |