File:Kepler-169 planets animation 2 1 1 1.ogg
Kepler-169_planets_animation_2_1_1_1.ogg (Ogg Theora video file, length 1 min 23 s, 800 × 600 pixels, 903 kbps, file size: 8.97 MB)
Captions
Summary
[edit]DescriptionKepler-169 planets animation 2 1 1 1.ogg |
English: Kepler-169 planets animation |
Date | |
Source | Own work |
Author | Merikanto |
POV-ray 3.8 source code for linux
INI
Input_File_Name="trap4.pov"
Initial_Frame = 1
Final_Frame = 2000
Initial_Clock = 0.0
Final_Clock = 1.0
Antialias=Off
Antialias_Threshold=0.3
Antialias_Depth=2
Quality=11
Cyclic_Animation=on
Pause_when_Done=off
POV
//////////////////////////
//
// planet system rendering test v B2.0 with POV-Ray 3.8 for linux
//
// 20.01.2024 version B2.0 rel 0000.00010a1
//
////////////////////////////
- declare clock1=clock;
- include "functions.inc"
- include "rand.inc"
camera {
// location <0,0,10>*-7
// location <10,0,0>*15
location <0,10,0>*15
look_at 0
angle 40
// up -3/10
// right -10/10
//up -x
rotate x*90
rotate y*10
}
sky_sphere
{
pigment {
bozo
//granite
// wrinkles
// dents
scale 0.001
color_map
{
[0 color rgb 0]
[0.8 color rgb 0]
[1 color rgb 1]
}
}
}
- declare samples1=2;
- macro star2(xloc1, yloc1, zloc1,size1,color1, color2)
union {
sphere {
0, 1
pigment { color rgb color2 }
finish {ambient color2*2}
scale 0.25
}
sphere {
0, 1
pigment { color rgbf 1 }
hollow
interior {
media {
emission 5
method 3
intervals 2
samples samples1
// emission_type 2
// emission_extinction 2
density {
// spherical
//function {exp(-sqrt(x*x+y*y+z*z))}
function { 1/(6000)*pow( sqrt(x*x+y*y+z*z),-4 ) *f_granite(atan(x/y),atan(y/x),atan(z/x))
*pow( sqrt(x*x+y*y+z*z),-4 )
}
// function {pow(1*f_spherical(x,y,z),4)*0.33 }
// scallop_wave
// function {pow( (2*(sqrt(x*x+y*y+z*z))) ,-1) }
// function {pow(f_spherical(x,y,z),2)*f_wrinkles(x*1000,y*1000,z*1000) }
// function {f_wrinkles(x*10,y*10,z*10) }
color_map {
[ 0.0 rgb 0.0 ]
// [ 0.2 rgb color1*0.05 ]
// [ 0.6 rgb color1*0.5 ]
[ 1.0 rgb color2*2 ]
}
}
}
// absorbing stuff#declare samples1=30;
}
}
scale size1
translate x*xloc1
translate y*yloc1
translate z*zloc1
} // juunion
- end
- macro print_string(str1, col1, x1, y1)
text {
ttf "timrom.ttf" str1 0.1, 0
pigment { color rgb col1 }
finish {ambient 1}
scale 3
translate x*x1
translate y*y1
translate z*0.2
}
- end
- macro print_caption(str1, x1, y1, skale1)
text {
ttf "timrom.ttf" str1 0.1, 0
pigment { color rgb <1,1,1> }
finish {ambient 1}
scale 3*skale1
translate x*x1
translate y*y1
translate z*0.3
}
- end
- macro star01 (xloc1, yloc1, zloc1, size1, name1, color1, color2)
object {
sphere {0,1}
texture {
pigment {
wrinkles
scale 1/10
turbulence 0.5
color_map {
[0 color rgb color1]
[1 color rgb color2]
}
}
finish { diffuse 0.6 ambient 1}
}
scale size1
translate x*xloc1
translate y*yloc1
translate z*zloc1
}
- end
- macro planet01 (xloc1, yloc1,zloc1, size1, name1, color1, color2)
object {
sphere {0,1}
texture {
pigment {
wrinkles
scale y/3
color_map {
[0 color rgb color1]
[1 color rgb color2]
}
}
finish { diffuse 0.6 ambient 1}
}
scale size1
translate x*xloc1
translate y*yloc1
translate z*zloc1
}
- end
- declare pig_clouds_1= pigment {
wrinkles
//omega 0.5
//lambda 0.5
scale 1/5
turbulence 1
scale 3
warp { turbulence 0.5}
scale 1/3
scale 10
warp { turbulence 0.5}
scale 1/10
}
- declare clouds_1= object {
#declare randi1= SRand(0) ;
#declare randi2= SRand(1) ;
#declare randi3= SRand(2) ;
#declare randi4= SRand(3) ;
sphere {0,1.005}
texture {
pigment {
//pig_clouds_1
wrinkles
// granite
warp { turbulence 0.5 }
turbulence randi1
turbulence 0.5
scale 1/4
rotate x*randi1*180
rotate y*randi1*360
color_map {
[0 color rgbt <1,1,1,1>]
[0.3 color rgbt <1,1,1,1>]
[1 color rgbt <1,1,1,0>*1]
}
}
// normal { pigment_pattern { pig_clouds_1 } 0.1 }
finish { ambient 0 diffuse 0.42 brilliance 0.4}
}
}
// rayleigh based atm
- declare atm_thickness1 = 0.01;
- declare atm_color1 = rgb <pow(460/650, 4), pow(460/555, 4), 1>;
- declare atm_amount1=0.01;
- declare atm_density1 = density
{
function
{
// 1*exp(-3*(sqrt((x*x)+(y*y)+(z*z))-1-0.0001)/atm_thickness1)
1*exp(-3*(sqrt((x*x)+(y*y)+(z*z))-1-0.0001)/atm_thickness1)
}
color_map {
[ 0.0 rgb 0.0 ]
// [ 0.5294*0.25e-6 rgb atm_color1*0.07 ]
[ 0.5471*0.71e-6 rgb atm_color1*1 ]
[ (1+0.001)/(1+atm_thickness1) rgb <0.0, 0.0, 0.0> ]
}
}
- 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 atmos_1 = difference
{
sphere {0, 1.00001 + atm_thickness1}
// sphere {0, 1.00001}
hollow
pigment {rgbt 1}
interior {media{atm_media1}}
}
- declare rings_1=object {
#declare randi1= SRand(0) ;
#declare randi2= SRand(1) ;
#declare randi3= SRand(2) ;
#declare randi4= SRand(3) ;
torus { 2, 0.5 scale y/100
texture {
pigment {
//onion
//function {f_onion(x,y,z)}
function {f_granite(f_onion(x,y,z),randi1,randi2) }
color_map {
[0 color rgbt <1,1,1,0.95> ]
[1 color rgbt <1,1,1,0.2>*1 ] }
}
}
finish {diffuse 0.6 phong 0.3}
}
} // rings
- macro planet_base_1 (xloc1, yloc1,zloc1, size1, type1, inclination1)
#declare randi1= SRand(0) ;
#declare randi2= SRand(1) ;
#declare randi3= SRand(2) ;
#declare randi4= SRand(3) ;
object {
sphere {0,1}
#if(type1="unconfirmed")
texture {
pigment
{
wrinkles
scale 1/3
turbulence randi2/5
rotate z*inclination1
color_map {
[0 color rgbt <0,0,1,0.8>]
[1 color rgbt <0,0,0.5,0.8>]
}
}
finish { diffuse 0.6 ambient 0 phong 0.0}
}
#end
#if (type1="basic")
#declare type1="base";
#end
#if(type1="base")
texture {
pigment
{
wrinkles
scale 1/3
turbulence randi2/5
rotate z*inclination1
color_map {
[0 color rgb <0.741176, 0.486275, 0.423529>]
[1 color rgb <0.305882, 0.121569, 0.0862745>]
}
}
finish { diffuse 0.6 ambient 0 phong 0.1}
}
#end
#if (type1="stone")
#declare type1="rock";
#end
#if(type1="rock")
texture {
pigment
{
wrinkles
warp { turbulence 0.2}
scale 1/3
octaves 60
turbulence randi2/5
rotate z*inclination1
color_map {
[0 color rgb <0.521569, 0.431373, 0.337255>+randi3/10]
[1 color rgb <0.807843, 0.588235, 0.415686>*1.0-randi2/10]
}
}
finish { diffuse 0.6 ambient 0 phong 0.05 specular 0.1 }
}
#end
#if (type1="ocean")
#declare type1="water";
#end
#if(type1="water")
texture {
pigment
{
wrinkles
scale y/3
turbulence randi2/5
rotate z*inclination1
color_map {
[0 color rgb <0.239216, 0.380392, 0.568627>]
[1 color rgb <0.960784, 0.992157, 0.992157>]
}
}
finish { diffuse 0.6 ambient 0}
}
#end
#if(type1="ice")
texture {
pigment
{
wrinkles
//scale y/3
// turbulence randi2/5
rotate z*inclination1
color_map {
[0 color rgb 1]
[1 color rgb 0.9]
}
}
finish { diffuse 0.6 ambient 0}
}
#end
#if(type1="asteroids")
texture {
pigment
{
//wrinkles
granite
//scale y/3
// turbulence randi2/5
//rotate z*inclination1
color_map {
[0 color rgbt <1,1,1,1>]
[0.7 color rgbt <1,1,1,1>]
[0.7 color rgbt <1,1,1,0>]
[1 color rgbt <1,1,1,0>]
}
}
finish { diffuse 0.6 ambient 0}
}
#end
#if (type1="minineptune")
#declare type1="minineptune";
#end
#if(type1="gasdwarf")
texture {
pigment
{
function { f_granite (y,randi1*f_wrinkles(x,y,z), randi2)}
rotate z*inclination1
color_map {
[0 color rgb <0.670588, 0.866667, 0.894118>]
[1 color rgb <0.254902, 0.72549, 0.792157>]
}
}
finish { diffuse 0.6 ambient 0}
}
#end
#if(type1="neptune")
texture {
pigment
{
//granite
function { f_granite (y,randi1, randi2)}
scale y/3
// turbulence randi2/5
rotate z*inclination1
color_map {
[0 color rgb <0.827451, 0.960784, 0.968627>]
[1 color rgb <0.662745, 0.819608, 0.87451>]
}
}
finish { diffuse 0.6 ambient 0}
}
#end
#if(type1="saturn")
texture {
pigment
{
//wrinkles
function { f_granite (y,randi1, randi2)}
// turbulence randi2/5
rotate z*inclination1
// scale y/5
color_map {
[0 color rgb <0.941176, 0.827451, 0.529412>]
[1 color rgb <0.701961, 0.592157, 0.407843>]
}
}
finish { diffuse 0.6 ambient 0}
}
#end
#if (type1="gasgiant")
#declare type1="gas";
#end
#if (type1="giant")
#declare type1="gas";
#end
#if (type1="jupiter")
#declare type1="gas";
#end
#if(type1="gas")
texture {
pigment
{
function { f_agate (y,randi1, randi2)}
//wrinkles
// turbulence randi2/5
rotate z*inclination1
// scale y/5
color_map {
[0 color rgb <0.764706, 0.615686, 0.466667>]
[1 color rgb <0.960784, 0.960784, 0.992157>]
}
}
finish { diffuse 0.6 ambient 0}
}
#end
// objekt modifiers
scale size1
translate x*xloc1
translate y*yloc1
translate z*zloc1
}
- end
///////// parameters of planet system
// Kepler-169
- declare calculate_radius1=0;
- declare numplanets1=5;
- declare systemname1="Kepler-169";
- declare names1=array[numplanets1]{"b", "c", "d", "e","f" }
- declare distances1=array[numplanets1]{0.04, 0.062,0.075, 0.105, 0.359 }
- declare periods1=array[numplanets1]{ 3.2505, 6.1954, 8.348 , 13.767, 87.09}
- declare radiuses1=array[numplanets1]{1.11,1.19,1.62, 2.30, 2.55 } // will be estimate only
- declare masses1=array[numplanets1]{ 0,0,0,0,0}
- declare anglespeeds1=array[numplanets1]{ 1,1,1,1,1 }
- declare confirmed1=array[numplanets1]{ 1,1,1,1,1}
- declare types1=array[numplanets1]{"rock" ,"rock" ,"ocean", "gasdwarf", "gasdwarf" }
//#declare types1=array[numplanets1]{"basic", "basic","basic","basic","basic" }
- declare radiuscoeff1=1.0;
/*
// TOI-1136
- declare calculate_radius1=0;
- declare numplanets1=7;
- declare systemname1="TOI-1136";
- declare names1=array[numplanets1]{"b", "c", "d", "e","f", "g", "h?" }
- declare distances1=array[numplanets1]{0.05106, 0.0669, 0.1062, 0.139, 0.174, 0.229, 0.36}
- declare radiuses1=array[numplanets1]{ 1.9, 2.879, 4.627, 2.639, 3.88, 2.53, 2.68} // will be estimate only
- declare masses1=array[numplanets1]{ 3.5, 6.32, 8.35, 6.07, 9.7, 5.6, 9}
- declare confirmed1=array[numplanets1]{ 1,1,1,1,1,1,9}
- declare types1=array[numplanets1]{"gasdwarf" ,"gasdwarf" ,"gasdwarf", "gasdwarf", "gasdwarf", "gasdwarf" ,"unconfirmed" }
//#declare types1=array[numplanets1]{"basic", "basic","basic","basic","basic" }
- declare radiuscoeff1=1.0;
// Tau Ceti
- declare calculate_radius1=1;
- declare numplanets1=6;
- declare systemname1="Tau Ceti";
- declare names1=array[numplanets1]{"g", "h", "e", "f", "asteroids", "giant?" }
- declare distances1=array[numplanets1]{ 0.133,0.243, 0.538, 1.334,3,12}
- declare radiuses1=array[numplanets1]{0,0,0,0,0,0 } // will be estimate only
- declare masses1=array[numplanets1]{1.75,1.83, 3.93, 3.93 ,10, 30}
- declare types1=array[numplanets1]{"gasdwarf" ,"gasdwarf" ,"gasdwarf", "gasdwarf", "asteroids", "gas" }
//#declare types1=array[numplanets1]{"basic", "basic","basic","basic","basic" }
- declare radiuscoeff1=1.5;
//## Kepler-292
// https://exoplanetarchive.ipac.caltech.edu/overview/Kepler-292
- declare numplanets1=5;
- declare systemname1="Kepler-292";
- declare names1=array[numplanets1]{"b", "c", "d", "e", "f" }
- declare distances1=array[numplanets1]{ 0.035 , 0.045, 0.068, 0.097, 0.141 }
- declare radiuses1=array[numplanets1]{ 1.41 , 1.59, 2.30, 2.56, 2.57 }
//#declare masses1=array[numplanets1]{}
- declare types1=array[numplanets1]{"rock", "rock" ,"gasdwarf" ,"gasdwarf" ,"gasdwarf" }
//#declare types1=array[numplanets1]{"basic", "basic","basic","basic","basic" }
- declare radiuscoeff1=1.5;
//## Kepler-296
- declare numplanets1=5;
- declare systemname1="Kepler-296";
- declare names1=array[numplanets1]{"b", "c", "d", "e", "f" }
- declare distances1=array[numplanets1]{ 0.079 , 0.0521 , 0.118 , 0.169 , 0.255 }
- declare radiuses1=array[numplanets1]{ 1.61, 2.00, 2.09, 1.53, 1.80 }
//#declare masses1=array[numplanets1]{}
//#declare types1=array[numplanets1]{"rock", "water" ,"water" ,"rock" ,"water" }
- declare types1=array[numplanets1]{"basic", "basic","basic","basic","basic" }
- declare radiuscoeff1=1.5;
//## kepler-186
- declare numplanets1=5;
- declare systemname1="Kepler-186";
- declare names1=array[numplanets1]{"b", "c", "d", "e", "f" }
- declare distances1=array[numplanets1]{0.0378 , 0.0574 ,0.0861 , 0.1216 , 0.432 }
- declare radiuses1=array[numplanets1]{1.08,1.25, 1.39, 1.33, 1.17}
- declare masses1=array[numplanets1]{1.24, 2.1, 2.54, 2.15, 1.71}
- declare types1=array[numplanets1]{"rock", "rock" ,"rock" ,"rock" ,"rock" }
- declare radiuscoeff1=2;
- /
//////////////////////////////////////7
//#declare starx1=-40;
- declare starx1=0;
- declare dmax1=60 ; //abs(starx1)*2-30;
- declare starsize1=10;
- declare planetoffset1=starsize1*1;
//star01(starx1,0.0,1.0,starsize1,"star1",<1,1,0>, <1,1,0.5>)
//#declare starcolor1 = <1,1,0>;
//#declare starcolor2 = <1,1,0.5>;
- declare starcolor1 = <1.0,0.637,0.34>;
- declare starcolor2 = <1.0,0.637,0.34>*0.95;
//#declare starcolor1 = <1.0,0.898,0.813>*1.05;
//#declare starcolor2 = <1.0,0.898,0.813>*0.95;
- declare starsize1 =10;
light_source {
<0,0,0>
color rgb <1,1,1>*2.0
looks_like {
//sphere {0,1 texture { pigment {color rgb 1} } finish {ambient 1} }
star2(0, 0,0, starsize1,starcolor1, starcolor2)
}
}
- declare beginx1=distances1[0];
- declare endx1=distances1[numplanets1-1];
- declare dfx1=log(endx1)-log(beginx1);
- declare dkx1=dmax1/dfx1;
- declare color1=<0.368627, 0.317647, 0.258824>;
- declare color2=<0.956863, 0.701961, 0.470588>;
//print_caption(systemname1, -10, 8,1.5)
#declare col1=<1,1,1>;
//#print_string("Radius Re: ",col1, starx1, -11)
- declare maxperiod1=periods1[numplanets1-1];
- declare anglespeed_ratio_1=maxperiod1/360;
- for (nn,0,(numplanets1-1) )
#declare anglespeeds1[nn]=(360*maxperiod1)/periods1[nn];
- end
- for (nn,0,(numplanets1-1) )
#if (calculate_radius1=1)
// assumed to be 50 perc rock, 50 water
#declare radiuses1[nn]=pow ( masses1[nn],0.27)*1.5;
#end
#declare planetx1=distances1[nn];
#declare planetr1=radiuses1[nn]*radiuscoeff1;
#declare dpx1=log(planetx1)-log(beginx1);
//#declare sitex0=starx1+starsize1+planetoffset1+dpx1*dkx1;
//#declare sitex0=starsize1+planetoffset1+dpx1*dkx1;
#declare sitex0=nn*10+10;
//#declare angle1=72*nn;
#declare angle1=anglespeeds1[nn]*clock1;
#declare orbit_inclination1=0;
#declare sitex1=sitex0*cos(radians(angle1));
#declare sitey1=sitex0*sin(radians(angle1));
#declare sitez1=cos(orbit_inclination1);
#declare type1=types1[nn];
#declare randi1= SRand(0) ;
#declare randi2= SRand(1) ;
#declare randi3= SRand(2) ;
#declare randi4= SRand(3) ;
#declare inclination1=randi1*90;
//#macro planet_base_1 (xloc1, yloc1,zloc1, size1, type1, inclination1)
// planet01(sitex1,sitey1,sitez1, planetr1,"b",color1, color2)
planet_base_1 (sitex1, sitey1, sitez1,planetr1, type1, inclination1)
// object { clouds_1 scale planetr1 translate x*sitex1}
// object { atmos_1 scale planetr1 translate x*sitex1}
// object { rings_1 rotate z*inclination1 scale 1 scale planetr1 translate x*sitex1}
// #declare col1=<1,0,0>;
// print_string(names1[nn], col1, sitex1-1, -8)
// #declare rstring1=concat ( str(radiuses1[nn],3,1 ),"") ;
// #declare col1=<1,1,1>;
// #print_string(rstring1,col1, sitex1-1, -11)
- end
animation making script, need install to linux libtheora, ffmpeg ....
ffmpeg -y -framerate 24 -pattern_type glob -i '*.png' -c:v libtheora -q:v 9 -c:a libvorbis -q:a 4 planets.ogv
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 | 11:33, 30 January 2024 | 1 min 23 s, 800 × 600 (8.97 MB) | 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.
Transcode status
Update transcode statusMetadata
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.
Software used |
---|