|
![](/i/fill.gif) |
Here you go with yet another sword!
#declare BladeL =1.3
#declare BladeEL=2
#declare BladeD =0.025
#declare BladeW =0.1
#declare Blade=difference{
union{
prism{
linear_spline
0,BladeL,5
<0,-BladeD>,<BladeW,0>,<0,BladeD>,<-BladeW,0>,<0,-BladeD>
}
triangle{<0,BladeL,-BladeD>,<BladeW,BladeL,0>,<0,BladeEL,0>}
triangle{<BladeW,BladeL,0>,<0,BladeL,BladeD>,<0,BladeEL,0>}
triangle{<0,BladeL,BladeD>,<-BladeW,BladeL,0>,<0,BladeEL,0>}
triangle{<-BladeW,BladeL,0>,<0,BladeL,-BladeD>,<0,BladeEL,0>}
}
union{
#declare BloodStreamL =BladeL/2
#declare BloodStreamEL=BladeL/5*4
cylinder{0,y*BloodStreamL,BladeD scale <2,1,0.5> translate z*BladeD}
cylinder{0,y*BloodStreamL,BladeD scale <2,1,0.5> translate z*(-BladeD)}
cone{y*BloodStreamL,BladeD,y*BloodStreamEL,0 scale <2,1,0.5> translate
z*BladeD}
cone{y*BloodStreamL,BladeD,y*BloodStreamEL,0 scale <2,1,0.5> translate
z*(-BladeD)}
}
texture{T_Silver_2C}
}
#declare SHW =BladeW*3
#declare SHSL=BladeL*0.3
#declare SHSW=BladeW*0.8
#declare SHL =BladeL*0.2
#declare SHD =BladeD*2
#declare SwordHandle=union{
mesh{
#declare SHEP=<-SHW-SHSW,SHSL,0>
triangle{<-SHW,0,-SHD>,<-SHW,0,SHD>,SHEP}
triangle{<-SHW+SHSW*2,0,-SHD>,<-SHW+SHSW*2,0,SHD>,SHEP}
triangle{<-SHW,0,-SHD>,<-SHW+SHSW*2,0,-SHD>,SHEP}
triangle{<-SHW,0,SHD>,<-SHW+SHSW*2,0,-SHD>,SHEP}
#declare SHEP=<SHW+SHSW,SHSL,0>
triangle{<SHW,0,-SHD>,<SHW,0,SHD>,SHEP}
triangle{<SHW-SHSW*2,0,-SHD>,<SHW-SHSW*2,0,SHD>,SHEP}
triangle{<SHW,0,-SHD>,<SHW-SHSW*2,0,-SHD>,SHEP}
triangle{<SHW,0,SHD>,<SHW-SHSW*2,0,-SHD>,SHEP}
#declare SHEP=<0,BladeL*0.1,0>
triangle{<-SHW,0,-SHD>,<-SHW,0, SHD>,SHEP}
triangle{< SHW,0,-SHD>,< SHW,0, SHD>,SHEP}
triangle{<-SHW,0,-SHD>,< SHW,0,-SHD>,SHEP}
triangle{<-SHW,0, SHD>,< SHW,0, SHD>,SHEP}
}
box{<-SHW,-BladeW,-SHD>,<SHW,0,SHD>}
prism{
linear_spline
-SHD,SHD,5
<-SHW,0>,<-BladeD,-BladeW>,<BladeD,-BladeW>,<SHW,0>,<-SHW,0>
rotate x*(-90)
translate y*(-BladeW)
}
cylinder{ <0,-BladeW*2,0>,<0,-BladeW*2-SHL,0>,SHD}
sphere{ <0,-BladeW*2-SHL,0>,BladeD*3}
texture{T_Gold_3B}
}
#declare Sword=union{
object{Blade}
object{SwordHandle}
}
#declare SHPW=0.18*3
#declare SHP1=0.1*3
#declare SHPH=0.02*3
#declare SHPD=0.02
#declare SwordHandle1Prot=difference{
box{<-BladeW-SHPW,-SHPH,0>,<BladeW+SHPW,SHPH,SHPD>}
union{
sphere{<BladeW+SHP1/3, SHP1+SHPH/2.2,0>,SHP1} sphere{<BladeW+SHP1*2.12,
SHP1*4,0>,SHP1*4}
sphere{<BladeW+SHP1/3,-SHP1-SHPH/2.2,0>,SHP1}
sphere{<BladeW+SHP1*2.12,-SHP1*4,0>,SHP1*4}
sphere{<-BladeW-SHP1/3, SHP1+SHPH/2.2,0>,SHP1} sphere{<-BladeW-SHP1*2.12,
SHP1*4,0>,SHP1*4}
sphere{<-BladeW-SHP1/3,-SHP1-SHPH/2.2,0>,SHP1}
sphere{<-BladeW-SHP1*2.12,-SHP1*4,0>,SHP1*4}
}
}
#declare SHCW=BladeW
#declare SHCD=BladeD*3
#declare SHCQ=SHCD*0.7
#declare SHCH=0.015
#declare SwordHandle1Cent=prism{
linear_spline
-SHCH,SHCH,9
<SHCQ,-SHCD>,<SHCW,-SHPD>,<SHCW,SHPD>,<SHCQ,SHCD>,<-SHCQ,SHCD>,<-SHCW,SHPD>,<-SHCW,-SHPD>,<-SHCQ,-SHCD>,<SHCQ,-SHCD>
rotate x*90
}
#declare SwordHandle1=union{
object{SwordHandle1Cent}
object{SwordHandle1Prot}
#declare I=0
#while (I<=15)
torus{SHCD,SHCD/3 translate y*(-SHCH-I*SHCD/2)}
#declare I=I+1.5
#end
sphere{<0,-SHCH-6.5*SHCD,0>,SHCD*1.8}
texture {T_Gold_3D}
}
#declare Sword1=union{object{Blade} object{SwordHandle1}}
Post a reply to this message
|
![](/i/fill.gif) |