Pov-Ray source for smoothblock-peoplenet
#version 3.6
#include "colors.inc"
#include "textures.inc"
#include "metals.inc"
camera
{
location <-3,4,-5>
look_at <0,0.5,0>
focal_point <0,0.5,0>
aperture 0.35
blur_samples 800
confidence 0.95
variance 1/200
}
sky_sphere { pigment { White } }
#declare peoplenet_logo=union {
prism {
bezier_spline
0, 1, 48,
<0,0>, <1,5.6>, <12,8.2>, <22.4,8>,
<22.4,8>, <32.4,7.8>, <42,4.7>, <42,0.7>,
<42,0.7>, <42.1,-4>, <32,-6.8>, <22.1,-6.5>,
<22.1,-6.5>, <9.2,-6>, <5.8,-2.2>, <5.4,-1.8>,
<5.4,-1.8>, <5.2,-1.6>, <5.4,-1.5>, <5.7,-1.7>,
<5.7,-1.7>, <6.1,-1.95>, <9.2,-4.1>, <16.2,-4.6>,
<16.2,-4.6>, <28.3,-5.2>, <38.2,-3>, <38,0>,
<38,0>, <37.1,5.5>, <5.95,6.95>, <2.6,-1.4>,
<2.6,-1.4>, <1.8,-3.5>, <5.8,-5.4>, <7.9,-6.35>,
<7.9,-6.35>, <10.25,-7.2>, <14.15,-7.85>, <16.7,-8.1>,
<16.7,-8.1>, <17.15,-8.2>, <17.1,-8.6>, <16.6,-8.52>,
<16.6,-8.52>, <2.2,-7.2>, <-0.45,-2.1>, <0,0>
translate <-19,0,0>
}
cylinder {
<-2,0,0>,<-2,1,0>,2.5
}
difference {
cylinder { <0,0,0>,<0,0.9,0>,1 }
cylinder { <0.6,-1,0>,<0.6,2,0>,1.5 }
translate <0.7,0,0>
scale <34,1,34>
translate <0,0,-6>
}
}
#declare ablockpiece = superellipsoid { <0.2, 0.2> scale 0.48 translate <0.5,0.5,0.5> }
#declare atallblock= union {
object { ablockpiece }
object { ablockpiece translate <0,-0.5,0> } // Union rounded blocks together with vertical offset to create a tall block with uniformly rounded corners
object { ablockpiece translate <0,-1.0,0> } // Union rounded blocks together with vertical offset to create a tall block with uniformly rounded corners
object { ablockpiece translate <0,-1.5,0> } // Union rounded blocks together with vertical offset to create a tall block with uniformly rounded corners
}
#declare ablock=difference {
object { atallblock }
object { peoplenet_logo scale <0.013,0.1,0.013> translate <0.45,0.93,0.55> pigment { rgb <0.5,0.5,1.0> } finish { ambient 0.5 } }
}
#declare hot_lava = pigment {
marble
color_map {
[0.00 color Black]
[0.2 color Red]
[1.0 color Yellow]
}
scale 40
}
#declare R1 = seed(1);
#declare I=-20;
#while (I<30)
#declare J=-20;
#while (J < 30)
#if (I=0)
#if (J = 6)
object { ablock translate <I,rand(R1)*1.5,J> pigment { rgb <0.8,0.8,3> } finish { ambient 0.5 diffuse 0.0 reflection 0.3 } }
#else
object { ablock translate <I,rand(R1)*1.5,J> pigment { rgb <0.6,0.6,0.8> } finish { Dull reflection 0.3 } }
#end
#else
object { ablock translate <I,rand(R1)*1.5,J> pigment { rgb <0.6,0.6,0.8> } finish { Dull reflection 0.3 } }
#end
#declare J=J+1;
#end
#declare I=I+1;
#end
plane { y,-2000 pigment { hot_lava } finish { ambient 1.0 } }
light_source {
0*x
color rgb <5,0,0>
translate <0,-1999,0>
}
light_source {
0*x
color rgb 0.2
area_light
<32, 0, 0> <0, 0, 32>
4, 4
adaptive 0
jitter
circular
orient
translate <0, 200, 0>
}