def dist_vect(a,b):
x=a.co[0]-b.co[0]
y=a.co[1]-b.co[1]
z=a.co[2]-b.co[2]
return (x*x+y*y+z*z)**0.5
def ordonnequad(a,b,c,d):
d0= [ [dist_vect(a,b),0],
[dist_vect(a,c),1],
[dist_vect(a,d),2],
[dist_vect(b,c),3],
[dist_vect(b,d),4],
[dist_vect(c,d),5],
]
d2=[[d0[0][0]+d0[3][0]+d0[5][0]+d0[2][0],0], ## a,b,c,d
[d0[0][0]+d0[4][0]+d0[5][0]+d0[1][0],1],
## a,b,d,c
[d0[2][0]+d0[4][0]+d0[3][0]+d0[1][0],2]
## a,d,b,c
]
d2.sort()
if d2[0][1]==0:
return a,b,c,d
elif d2[0][1]==1:
return a,b,d,c
elif d2[0][1]==2:
return a,d,b,c
|