|
|
#include "transforms.inc"
#macro MarkOrigin (Rad) //mark origin
cylinder { -100*y 0*y Rad pigment {rgb .5} finish {ambient .8}}
cylinder { -100*z 0*z Rad pigment {rgb .5} finish {ambient .8}}
cylinder { -100*x 0*x Rad pigment {rgb .5} finish {ambient .8}}
cylinder { 0*y 100*y Rad pigment {rgb <0,1,0>} finish {ambient .8}}
cylinder { 0*z 100*z Rad pigment {rgb <0,0,1>} finish {ambient .8}}
cylinder { 0*x 100*x Rad pigment {rgb <1,0,0>} finish {ambient .8}}
#end
#macro ShowSpline ( TheSpline, TheRadius, Grain, TheColor )
union {
#local i=0;#while(i<Grain)
cylinder {
TheSpline((i+1)/Grain)+.00001,
TheSpline(i/Grain),
TheRadius
pigment { rgb TheColor }
finish { ambient 1 }
}
sphere {
TheSpline(i/Grain),
TheRadius
pigment { rgb TheColor }
finish { ambient 1 }
}
#local i=i+1;#end
}
#end
MarkOrigin ( .005 )
#local P0 = <-1,0,0>;
#local P1 = <0,1,0>;
#local P2 = <1,0,0>;
#local Trans =
transform {
//
};
#local Spl =
spline { natural_spline
0/2 vtransform ( P0, Trans )
1/2 vtransform ( P1, Trans )
2/2 vtransform ( P2, Trans )
};
ShowSpline ( Spl, .01, 100, <1,0,1> )
#local Trans =
transform {
rotate z*30
translate <1,1,0>
};
#local Spl =
spline { natural_spline
0/2 vtransform ( P0, Trans )
1/2 vtransform ( P1, Trans )
2/2 vtransform ( P2, Trans )
};
ShowSpline ( Spl, .01, 100, <1,1,0> )
camera {
location vrotate ( <0, 0, -10>, < 5, 0, 0> )
look_at vrotate ( <0, 0, 0>, < 0, 0, 0> )
right x*image_width/image_height
angle 32
}
Post a reply to this message
|
|