global_settings { assumed_gamma 1 ambient_light rgb <1,1,1> } #declare ltime =2*clock+0; //twice along, once to show geometry, once to add up for integral //field point #declare fp = <0,0,-2.0>; // Declare parameterized line of charge here for 0; #declare counter=0; union{ #while(counter; cylinder { p1, p2,l_thick} #declare p1=p2; #declare s1=s2; #declare counter=counter+1; #end texture {pigment { color rgbt <.8,.0,.0,0> } finish{ambient 1 diffuse 1}}} #declare rc=; //dq to field point line cylinder{rc, fp,l_thick/3 texture {pigment { color rgbt <.6,.6,.6,.7> } finish{ambient 1 diffuse 1}}} //dE vector #declare dr=vlength(fp-rc); #declare E_v=(fp-rc)/(dr*dr*dr)*3; cylinder{fp, fp+.9*E_v,l_thick/3 texture {pigment { color rgbt <.0,.0,.9,0> } finish{ambient 1 diffuse 1}}} cone{fp+.9*E_v,l_thick, fp+E_v,0 texture {pigment { color rgbt <.0,.0,.9,0> } finish{ambient 1 diffuse 1}}} // hint of total distribution #declare s1=0; #declare p1=; union{ #while(s1<=1) #declare s2 = s1+dds; #declare p2=; cylinder { p1, p2,l_thick} #declare p1=p2; #declare s1=s2; //sneak in a little numerical integration here #declare rc=; #declare dr=vlength(fp-rc); #declare E_v=E_v+(fp-rc)/(dr*dr*dr)*.1; #end texture {pigment { color rgbt <.5,.0,.0,.95> } finish{ambient 1 diffuse 1}}} #else #declare lt2=ltime-1.0; #declare s1=0; #declare p1=; #declare E_v = <0,0,0>; union{ #while(s1<=lt2) #declare s2 = s1+dds; #declare p2=; cylinder { p1, p2,l_thick} #declare p1=p2; #declare s1=s2; //sneak in a little numerical integration here #declare rc=; #declare dr=vlength(fp-rc); #declare E_v=E_v+(fp-rc)/(dr*dr*dr)*.08; #end texture {pigment { color rgbt <.8,.0,.0,0> } finish{ambient 1 diffuse 1}}} cylinder{fp, fp+.9*E_v,l_thick/3 texture {pigment { color rgbt <.0,.0,.9,0> } finish{ambient 1 diffuse 1}}} cone{fp+.9*E_v,l_thick, fp+E_v,0 texture {pigment { color rgbt <.0,.0,.9,0> } finish{ambient 1 diffuse 1}}} #end #declare camera_scale=10; camera { location <-7, 3 , -8>*2.0 look_at fp angle 20 } //axis cylinder { -2*x, 2*x,l_thick/3 texture {pigment { color rgbt <.1,.1,.1,.5> } finish{ambient 1 diffuse 1}}} cylinder { -2*y, 2*y,l_thick/3 texture {pigment { color rgbt <.1,.1,.1,.5> } finish{ambient 1 diffuse 1}}} cylinder { z, -4*z,l_thick/3 texture {pigment { color rgbt <.1,.1,.1,.5> } finish{ambient 1 diffuse 1}}} //field point sphere{fp,l_thick texture {pigment { color rgbt <.9,.9,.9,.0> } finish{ambient 1 diffuse 1}}}