(* SiF4 computation; coordinates and radii from SiF40zb7.exe, 13.02.2012/29.05.2013 *)

t={{0.00000,0.00000,0.00000,0.59372},{1.71129,0.00000,0.00000,1.11757},{2.99074,0.00000,0.00000,0.16188},{3.29787,-0.86867,0.00000,0.75948},{3.29787,0.43434,0.75229,0.75948},{3.29787,0.43434,-0.75229,0.75948},{-0.57043,1.61342,0.00000,1.11757},{-0.99691,2.81970,0.00000,0.16188},{-1.91828,2.81970,0.00000,0.75948},{-0.68979,3.25404,0.75229,0.75948},{-0.68979,3.25404,-0.75229,0.75948},{-0.57043,-0.80671,1.39726,1.11757},{-0.99691,-1.40985,2.44193,0.16188},{-1.91828,-1.40985,2.44193,0.75948},{-0.68979,-2.27852,2.44193,0.75948},{-0.68979,-0.97551,3.19422,0.75948},{-0.57043,-0.80671,-1.39726,1.11757},{-0.99691,-1.40985,-2.44193,0.16188},{-1.91828,-1.40985,-2.44193,0.75948},{-0.68979,-0.97551,-3.19422,0.75948},{-0.68979,-2.27852,-2.44193,0.75948}};
u={{0.00000,0.00000,0.00000},{2.99074,0.00000,0.00000},{-0.99691,2.81970,0.00000},{-0.99691,-1.40985,2.44193},{-0.99691,-1.40985,-2.44193}};

x=Table[t[[i,1]],{i,1,21}];
y=Table[t[[i,2]],{i,1,21}];
z=Table[t[[i,3]],{i,1,21}];
r=Table[t[[i,4]],{i,1,21}];

(* xy plane, inspect overlaps *)
plot2=Table[Graphics[{Circle[{x[[i]],y[[i]]},r[[i]]]}],{i,1,21}];

plot2a=Graphics[{Disk[{x[[3]],y[[3]]},0.08], Disk[{x[[8]],y[[8]]},0.08], Disk[{x[[13]],y[[13]]},0.08], Disk[{x[[18]],y[[18]]},0.08], Disk[{0,0},0.1],{Thickness[0.006],Line[{{x[[8]],y[[8]]},{0,0}}],Line[{{0,0},{t[[3,1]],t[[3,2]]}}],Line[{{0,0},{t[[18,1]],t[[18,2]]}}],Line[{{0,0},{t[[13,1]],t[[13,2]]}}] }} ];

Show[plot2,plot2a,{AspectRatio -> Automatic,Axes -> True,GridLines -> Automatic, PlotRange -> {{-4.75,4.75},{-4.75,4.75}}, Frame -> True}]

(* Electron domains, turn model with mouse *)
plot2b=Table[Graphics3D[{Sphere[{x[[i]],y[[i]],z[[i]]},r[[i]]]}],{i,1,21}];
Show[plot2b,{AspectRatio -> Automatic,SphericalRegion->True}]

(* Make Stereopair *)
t1=Table[{x[[i]],y[[i]],z[[i]]},{i,1,21}];
t=t1.RotationMatrix[9*π/40,{0,1,0}];

plot3=Table[Graphics[{Circle[{t[[i,1]],t[[i,2]]},r[[i]]]}],{i,1,21}];

plot3a=Graphics[{Disk[{t[[3,1]],t[[3,2]]},0.08], Disk[{t[[8,1]],t[[8,2]]},0.08], Disk[{t[[13,1]],t[[13,2]]},0.08], Disk[{t[[18,1]],t[[18,2]]},0.08], Disk[{0,0},0.1],{Thickness[0.008],Line[{{t[[8,1]],t[[8,2]]},{0,0}}],Line[{{0,0},{t[[3,1]],t[[3,2]]}}],Line[{{0,0},{t[[18,1]],t[[18,2]]}}],Line[{{0,0},{t[[13,1]],t[[13,2]]}}] }} ];

t1=t;
t=t1.RotationMatrix[π/20,{0,1,0}];
plot4=Table[Graphics[{Circle[{t[[i,1]],t[[i,2]]},r[[i]]]}],{i,1,21}];

plot4a=Graphics[{Disk[{t[[3,1]],t[[3,2]]},0.08], Disk[{t[[8,1]],t[[8,2]]},0.08], Disk[{t[[13,1]],t[[13,2]]},0.08], Disk[{t[[18,1]],t[[18,2]]},0.08], Disk[{0,0},0.1],{Thickness[0.008],Line[{{t[[8,1]],t[[8,2]]},{0,0}}],Line[{{0,0},{t[[3,1]],t[[3,2]]}}],Line[{{0,0},{t[[18,1]],t[[18,2]]}}],Line[{{0,0},{t[[13,1]],t[[13,2]]}}] }} ];

Plota=Table[{0},{i,1,2}]; Plotb=Plota;
Plota[[1]]=plot3;
Plota[[2]]=plot4;
Plotb[[1]]=plot3a;
Plotb[[2]]=plot4a;
Table[Show[Plota[[i]],Plotb[[i]],{AspectRatio -> Automatic, ImageSize->{300,300}}],{i,1,2}]