Merlin Radixin Moesin

Here is the script that generated this.
plot
noframe
window 120.0;
background white;
slab 70;
read mol "mona.pdb";
readsurf id1 "merl.srf" using potential;
transform in molecule mol
by centre position in molecule mol
@standard.rot
@rotation.file
by translation -70 0 5
;
set maptype 1;
set surfrange -10 0 10;
set mapramp from red to blue through white;
drawsurf id;
read mol2 "mona.pdb";
readsurf id2 "rad.srf" potential;
transform in molecule mol2
by centre position in molecule mol2
@standard.rot
@rotation.file
by translation 2 0 5
;
drawsurf id2;
read mol3 "mona.pdb";
readsurf id3 "moe.srf" potential;
transform in molecule mol3
by centre position in molecule mol3
@standard.rot
@rotation.file
by translation 70 0 5
;
drawsurf id3;
end_plot
"standard.rot" contains the rotation matrix that will be applied to each surface. In this case, it is
by rotation x 180.0
by rotation z -29.0000
by rotation y 19.0000
by rotation x 86.0000
by rotation y 6
by translation 0.25 3 3
by rotation
0.991596 -0.0524154 -0.118277
-7.35227e-05 0.914019 -0.405672
0.129371 0.402271 0.906334
The script that generates the movie file is not nearly as elegant as a single Povray command. It uses Raster3d to raytrace the images. I personally think the surfaces look MUCH better using Raster3d (render), than POVRay.
#!/bin/sh
#Parameters
#size="800x300"
infile=grasp.ams
width=800
height=300
size=$width"x"$height
start=0
stop=359
delta=5
#Generate frames
angle=$start
while [ $angle -le $stop ] ; do
echo "by rotation x " $angle > rotation.file
outfile=`printf frame-%03d.png $angle `
#This next line refers to Povscript+, which is called Molscript
molscript -r < $infile > ms.rd
#This part adds the floor and back wall
cat << end-floor>> ms.rd
15
6
-.5 -.6 -.5 0 -.7 .5 .5 -.6 -.5 0 0 0
9
15
6
0 0 -1.5 .5 0 -1.5 .5 .5 -1.5 .1 .1 .7
9
end-floor
render -size $size < ms.rd > $outfile
angle=`expr $angle + $delta`
done
#Make movie -- There are better ways to do this.
# Especially in Windows.
#convert -delay 5 -loop 0 frame-???.png movie.gif
exit
#Cleanup -- leave first frame
angle=`expr $start + $delta`
while [ $angle -le $stop ] ; do
outfile=`printf frame-%03d.png $angle `
rm -f $outfile
angle=`expr $angle + $delta`
done