| 77 | O = A + ((B - A) / (V1 + V2)) * V1; |
| 78 | return 1; } |
| 79 | bool plane_plane_intersect(P(A), P(nA), P(B), P(nB), |
| 80 | point3d &P, point3d &Q) { |
| 81 | point3d n = nA * nB; |
| 82 | if (n.isZero()) return false; |
| 83 | point3d v = n * nA; |
| 84 | P = A + (n * nA) * ((B - A) % nB / (v % nB)); |
| 85 | Q = P + n; |
| 86 | return true; } |
| 87 | double line_line_distance(L(A, B), L(C, D), point3d &E, |
| 88 | point3d &F) { |
| 89 | point3d w = (C-A), v = (B-A), u = (D-C), |