在下面的例子中,你可以看到最靠近相机的原子实际上比其他原子小,尽管事实应该是相反的。不是吗?
这里是 MWE:
size(700);
import solids;
import texcolors;
import three;
currentprojection=orthographic (
camera=(8,4,4),
up=(0,0,1),
target=(2,2,2),
zoom=1.0
);
// save predefined 2D orientation vectors
pair NN=N;
pair SS=S;
pair EE=E;
pair WW=W;
//%Atom positions
triple Atom1 = (-1.1547, -2., 3.26599);
triple Atom2 = (-1.1547, 2., 3.26599);
triple Atom3 = (2.3094, 0., 3.26599);
triple Atom4 = (0,0,0);
triple[] atoms={
Atom1,Atom2,Atom3,Atom4,
};
draw((1.3094,0,2.26599)--(3.3094,0,4.26599),(7bp)+green,Arrow3(size=30bp));
real cylR=0.062;
material baseM = material(gray(0.5), black, gray(0.6), black);
void Connect(guide3 g){
draw(surface(
cylinder(
point(g,0),cylR,arclength(g),point(g,1)-point(g,0)
)),baseM
);
}
//%connections from Atom1 to all others
Connect(Atom1--Atom2);
Connect(Atom1--Atom3);
Connect(Atom1--Atom4);
//%connections from Atom2 to Atom2+n
Connect(Atom2--Atom3);
Connect(Atom2--Atom4);
//%connections from Atom3 to Atom4
Connect(Atom3--Atom4);
material m = material(gray(0.5), black, RoyalBlue, black);
// material m2 = material(
void drawSpheres(triple[] C, real R, pen p=currentpen){
for(int i=0;i<C.length;++i){
draw(surface(sphere(C[i],R)),m);
}
}
drawSpheres(atoms,0.5,RoyalBlue);