POV-Ray : Newsgroups : povray.binaries.images : reduction to the essentials : reduction to the essentials Server Time
7 Nov 2024 00:19:49 EST (-0500)
  reduction to the essentials  
From: Norbert Kern
Date: 8 Jul 2017 13:05:01
Message: <web.59610f6fdda8b45d98e703220@news.povray.org>
Abstracts are nice, especially those true to the motto "reduction to the
essentials".
Here I variated a nice scene of Christian Perle (
http://chris.silmor.de/ray/POVImgs2.html ).
Essential here is a max_trace_level higher than 5.

Code is short enough to show it here -

// A variation of:

// Inside the box
// 9/2016 Christian Perle
// http://chris.silmor.de/ray/pov2/inner_box.html
// http://chris.silmor.de/ray/POVImgs2.html // for further images and sources

#version 3.7;

global_settings {
        assumed_gamma 1
        max_trace_level 28
}

camera {
        perspective
 location <-0.24,0.2,-1.3>
 direction 1.2*z
 look_at <0,-0.05,1>
 rotate <0,0,-11>
        right x*image_width/image_height
}

#macro RoundBox ()

#local A = <-0.5,-0.5,-0.5>;
#local B = <0.5,0.5,0.5>;
#local Edge = 0.01;
#local AA = <min (A.x,B.x),min (A.y,B.y),min (A.z,B.z)>;
#local BB = <max (A.x,B.x),max (A.y,B.y),max (A.z,B.z)>;
#local LBF = AA;
#local RBF = <BB.x,AA.y,AA.z>;
#local RBB = <BB.x,AA.y,BB.z>;
#local LBB = <AA.x,AA.y,BB.z>;
#local LTF = <AA.x,BB.y,AA.z>;
#local RTF = <BB.x,BB.y,AA.z>;
#local RTB = BB;
#local LTB = <AA.x,BB.y,BB.z>;

merge {
        sphere {LBF, Edge}
        sphere {RBF, Edge}
        sphere {RBB, Edge}
        sphere {LBB, Edge}
        sphere {LTF, Edge}
        sphere {RTF, Edge}
        sphere {RTB, Edge}
        sphere {LTB, Edge}
        cylinder {LBF, RBF, Edge}
        cylinder {LBB, RBB, Edge}
        cylinder {LTB, RTB, Edge}
        cylinder {LTF, RTF, Edge}
        cylinder {LBF, LTF, Edge}
        cylinder {RBF, RTF, Edge}
        cylinder {RBB, RTB, Edge}
        cylinder {LBB, LTB, Edge}
        cylinder {LTB, LTF, Edge}
        cylinder {LBB, LBF, Edge}
        cylinder {RTB, RTF, Edge}
        cylinder {RBB, RBF, Edge}
        box {AA-Edge*x, BB+Edge*x}
        box {AA-Edge*y, BB+Edge*y}
        box {AA-Edge*z, BB+Edge*z}
}

#end

#declare RotBox =
object {
 RoundBox ()
 rotate 45*x
 rotate 35.26438968*z
}

merge {
 object {RotBox scale 0.9 interior {ior 1}}
 object {RotBox translate <1,0,0> interior {ior 1.5}}
 object {RotBox translate <-1,0,0> interior {ior 2}}
 object {RotBox translate <0,1,0> interior {ior 2.5}}
 object {RotBox translate <0,-1,0> interior {ior 3}}
 object {RotBox translate <0,0,2.5> interior {ior 3.5}}
 object {RotBox translate <0,0,-2.5> interior {ior 4}}
 hollow
 pigment {color rgb 0.05}
 finish {
  reflection 1
  phong 1
  phong_size 20
  irid {0.3 thickness 0.45}
 }
 rotate 90*x
}

Norbert


Post a reply to this message


Attachments:
Download 'inside the box_nk.jpg' (875 KB)

Preview of image 'inside the box_nk.jpg'
inside the box_nk.jpg


 

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.