PuzzleMaster6262 wrote:

Nice design! What file types can POV export? Also if you wanted to really push the limits, make it void

I made it as a CSG... not a mesh. Here is the code if you want to play with it.

#include "colors.inc"

global_settings { assumed_gamma 2.2 }

camera {

location <7, 4, -8>*5

direction <0, 0, 1.2071>

look_at <0, -.05, 0>

angle 16

}

declare cut = .1;

global_settings {

radiosity {

pretrace_start 0.08

pretrace_end 0.01

count 35

nearest_count 5

error_bound 0.8

recursion_limit 3

low_error_factor 0.5

gray_threshold 0.0

minimum_reuse 0.015

brightness 1

adc_bailout 0.01/2

}

}

sky_sphere {

pigment {

gradient y

color_map {

[0 color Blue*.5+White*.5]

[1 color White*1]

}

scale 2

translate -1

rotate x*-145

rotate y*30

rotate z*180

}

}

declare core = union{

difference {

sphere {<0,0,0>, sqrt(2)+1.8}

sphere {<0,0,0>, sqrt(2)+1.7}

intersection {

plane {<-1,0,0>,sqrt(2)-8*cut}

plane {<1,0,0>,sqrt(2)-8*cut}

}

intersection {

plane {<0,-1,0>,sqrt(2)-8*cut}

plane {<0,1,0>,sqrt(2)-8*cut}

}

intersection {

plane {<0,0,-1>,sqrt(2)-8*cut}

plane {<0,0,1>,sqrt(2)-8*cut}

}

}

difference {

union {

difference {

box {<-sqrt(2)-2+cut,-sqrt(2)-2+cut,-sqrt(2)-2+cut>,<sqrt(2)+2-cut,sqrt(2)+2-cut,sqrt(2)+2-cut>}

intersection {

plane {<-1,0,0>,sqrt(2)+cut/sqrt(2)}

plane {<1,0,0>,sqrt(2)+cut/sqrt(2)}

}

intersection {

plane {<0,-1,0>,sqrt(2)+cut/sqrt(2)}

plane {<0,1,0>,sqrt(2)+cut/sqrt(2)}

}

intersection {

plane {<0,0,-1>,sqrt(2)+cut/sqrt(2)}

plane {<0,0,1>,sqrt(2)+cut/sqrt(2)}

}

}

sphere {<0,0,0>, sqrt(2)+1.3}

}

difference {

plane {<1,0,0>,sqrt(2)+cut/sqrt(2)}

plane {<1,0,0>,sqrt(2)-cut/sqrt(2)}

}

difference {

plane {<0,1,0>,sqrt(2)+cut/sqrt(2)}

plane {<0,1,0>,sqrt(2)-cut/sqrt(2)}

}

difference {

plane {<0,0,1>,sqrt(2)+cut/sqrt(2)}

plane {<0,0,1>,sqrt(2)-cut/sqrt(2)}

}

difference {

plane {<-1,0,0>,sqrt(2)+cut/sqrt(2)}

plane {<-1,0,0>,sqrt(2)-cut/sqrt(2)}

}

difference {

plane {<0,-1,0>,sqrt(2)+cut/sqrt(2)}

plane {<0,-1,0>,sqrt(2)-cut/sqrt(2)}

}

difference {

plane {<0,0,-1>,sqrt(2)+cut/sqrt(2)}

plane {<0,0,-1>,sqrt(2)-cut/sqrt(2)}

}

cylinder {<-10,0,0>,<10,0,0>, sqrt(2)-cut}

cylinder {<0,-10,0>,<0,10,0>, sqrt(2)-cut}

cylinder {<0,0,-10>,<0,0,10>, sqrt(2)-cut}

}

pigment { color red 0 green 0 blue 1 }

finish {

ambient 0.0

diffuse 0.8

phong 1

}

}

declare core1 = union {

difference {

sphere {<0,0,0>, sqrt(2)+1.801}

sphere {<0,0,0>, sqrt(2)+1.699}

plane {<1,0,0>,sqrt(2)-8.001*cut}

plane {<0,1,0>,sqrt(2)-8.001*cut}

plane {<0,0,1>,sqrt(2)-8.001*cut}

}

intersection {

cylinder {<-10,0,0>,<10,0,0>, sqrt(2)-2*cut}

sphere {<0,0,0>, sqrt(2)+1.302}

}

intersection {

cylinder {<-10,0,0>,<10,0,0>, cut}

sphere {<0,0,0>, sqrt(2)+1.55}

}

intersection {

cylinder {<-10,.75,0>,<10,.751,0>, cut}

sphere {<0,0,0>, sqrt(2)+1.55}

}

intersection {

cylinder {<-10,-.75,0>,<10,-.75,0>, cut}

sphere {<0,0,0>, sqrt(2)+1.55}

}

intersection {

cylinder {<0,-10,0>,<0,10,0>, sqrt(2)-2*cut}

sphere {<0,0,0>, sqrt(2)+1.302}

}

intersection {

cylinder {<0,-10,0>,<0,10,0>, cut}

sphere {<0,0,0>, sqrt(2)+1.55}

}

intersection {

cylinder {<0,-10,.75>,<0,10,.75>, cut}

sphere {<0,0,0>, sqrt(2)+1.55}

}

intersection {

cylinder {<0,-10,-.75>,<0,10,-.75>, cut}

sphere {<0,0,0>, sqrt(2)+1.55}

}

intersection {

cylinder {<0,0,-10>,<0,0,10>, sqrt(2)-2*cut}

sphere {<0,0,0>, sqrt(2)+1.302}

}

intersection {

cylinder {<0,0,-10>,<0,0,10>, cut}

sphere {<0,0,0>, sqrt(2)+1.55}

}

intersection {

cylinder {<.75,0,-10>,<.75,0,10>, cut}

sphere {<0,0,0>, sqrt(2)+1.55}

}

intersection {

cylinder {<-.75,0,-10>,<-.75,0,10>, cut}

sphere {<0,0,0>, sqrt(2)+1.55}

}

difference {

union {

difference {

box {<-sqrt(2)-2.001+cut,-sqrt(2)-2.001+cut,-sqrt(2)-2.001+cut>,<sqrt(2)+2.001-cut,sqrt(2)+2.001-cut,sqrt(2)+2.001-cut>}

intersection {

plane {<-1,0,0>,sqrt(2)+cut/sqrt(2)}

plane {<1,0,0>,sqrt(2)+cut/sqrt(2)}

}

intersection {

plane {<0,-1,0>,sqrt(2)+cut/sqrt(2)}

plane {<0,1,0>,sqrt(2)+cut/sqrt(2)}

}

intersection {

plane {<0,0,-1>,sqrt(2)+cut/sqrt(2)}

plane {<0,0,1>,sqrt(2)+cut/sqrt(2)}

}

}

sphere {<0,0,0>, sqrt(2)+1.301}

}

plane {<1,0,0>,-sqrt(2)+cut/sqrt(2)-.001}

plane {<0,1,0>,-sqrt(2)+cut/sqrt(2)-.001}

plane {<0,0,1>,-sqrt(2)+cut/sqrt(2)-.001}

}

pigment { color red 1 green 0 blue 0 }

finish {

ambient 0.0

diffuse 0.8

phong 1

}

}

declare piece = union {

difference{

box {<sqrt(2)-cut/sqrt(2),sqrt(2)-cut/sqrt(2),-sqrt(2)-2+cut>,<-sqrt(2)+cut/sqrt(2),-sqrt(2)+cut/sqrt(2),0>}

sphere {<0,0,0>,sqrt(2)+1.95}

cylinder {<0,0,-10>,<0,0,10>, .85+2+cut/sqrt(2) translate <0,2*sqrt(2)+1,0>}

cylinder {<0,0,-10>,<0,0,10>, .85+2+cut/sqrt(2) translate <0,-2*sqrt(2)-1,0>}

cylinder {<0,0,-10>,<0,0,10>, .85+2+cut/sqrt(2) translate <2*sqrt(2)+1,0,0>}

cylinder {<0,0,-10>,<0,0,10>, .85+2+cut/sqrt(2) translate <-2*sqrt(2)-1,0,>}

}

difference {

union{

intersection {

difference {

cylinder {<0,0,-10>,<0,0,0>,sqrt(2)-3.5*cut}

sphere {<0,0,0>,sqrt(2)+1.3+cut}

}

sphere {<0,0,0>,sqrt(2)+1.7-cut}

}

difference {

cylinder {<0,0,-sqrt(2)-2+cut+.001>,<0,0,0>,.6}

sphere {<0,0,0>,sqrt(2)+1.3+cut+.001}

}

}

intersection {

sphere {<0,0,0>, sqrt(2)+1.56}

union {

box {<-10,-cut-.001,-10>,<10,+cut+.001,10>}

box {<-10,.75-cut-.001,-10>,<10,.75+cut+.001,10>}

box {<-10,-.75-cut-.001,-10>,<10,-.75+cut+.001,10>}

box {<-cut-.001,-10,-10>,<+cut+.001,10,10>}

box {<.75-cut-.001,-10,-10>,<.75+cut+.001,10,10>}

box {<-.75-cut-.001,-10,-10>,<-.75+cut+.001,10,10>}

}

}

}

pigment {Gray}

finish {

ambient 0.0

diffuse 0.8

phong 1

}

}

declare piece2 = difference{

union {

intersection {

sphere {<0,0,0>,sqrt(2)+1.94}

plane {<-1,1,0>,-1.5*cut}

plane {<-1,-1,0>,-1.5*cut}

}

intersection {

box {<sqrt(2)-cut/sqrt(2),sqrt(2)-cut/sqrt(2),-sqrt(2)-2+cut>,<-sqrt(2)+cut/sqrt(2),-sqrt(2)+cut/sqrt(2),0>}

cylinder {<0,0,-10>,<0,0,10>, .85+2-.05 translate <2*sqrt(2)+1,0,0>}

}

}

sphere {<0,0,0>,sqrt(2)+1.86}

cylinder {<0,0,-10>,<0,0,10>, .61}

plane {<-1,0,0>,0 rotate -y*22.2}

pigment {Green}

finish {

ambient -0.2

diffuse 0.8

phong 1

}

}

declare face = union {

object {piece}

object {piece2}

object {piece2 rotate z*90}

object {piece2 rotate z*-90}

object {piece2 rotate z*180}

}

object {core}

object {core1}

object {face}

object {face rotate x*45}

object {face rotate x*90}

object {face rotate x*135}

object {face rotate x*180}

object {face rotate x*225}

object {face rotate x*270}

object {face rotate x*315}

object {face rotate y*45}

object {face rotate y*90}

object {face rotate y*135}

object {face rotate y*225}

object {face rotate y*270}

object {face rotate y*315}

object {face rotate x*90 rotate z*45}

object {face rotate x*90 rotate z*135}

object {face rotate x*90 rotate z*225}

object {face rotate x*90 rotate z*315}

light_source { <-10, 3, -20> color red .1 green .1 blue .1 }

light_source { <10, 3, -20> color red .5 green .5 blue .1 }