设三维空间中两点a,b,则他们的坐标为a (xa ya za),b (xb yb zb),则他们之间的距离定义为线段ab的长度,计算代码为
double dx=xb-xa;
double dy=yb-ya;
double dz=zb-za;
double length=sqrt(dx*dx+dy*dy+dz*dz);
如果两点是xy平面上的点,则z分量为0,那么
double length=sqrt(dx*dx+dy*dy);
如果以向量的形式来写则a, b为两个向量A, B,则a b距离定义为向量A减去向量B得到向量AB的模(长度)
vec3 A(xa,ya,za);
vec3 B(xb,yb,zb);
vec3 AB=B-A;
double length=AB.length();
许多开源数学及图形图像库(Ogre OpenSceneGraph OpenCV Eigen vmtah)都有自己的三维数学库实现,包括向量的加减,点乘叉乘,向量取模,单位化,插值基本上解析几何的向量运算都有实现。