/* distance v1 to line-piece v2-v3 in 3D */ float PdistVL3Dfl(float *v1, float *v2, float *v3) { float lambda, cp[3], len; lambda= lambda_cp_line_ex(v1, v2, v3, cp); if(lambda <= 0.0f) return VecLenf(v1, v2); else if(lambda >= 1.0f) return VecLenf(v1, v3); else return VecLenf(v1, cp); }