How to find a point which is outside a bunch of planes in 3D?

58 Views Asked by At

I would like to find an arbitrary $\mathbf{p} \in \mathbb{R}^3$ point which is not included in any of planes defined by surface normals $\mathbf{s}_1, \mathbf{s}_2,..., \mathbf{s}_m \in \mathbb{R}^3$ ($m \ge 1$ is a finite integer). All of these planes contain a given $\mathbf{p}_0 \in \mathbb{R}^3$ point. Is there any chance to obtain the coordinates of such a $\mathbf{p}$ vector?

1

There are 1 best solutions below

9
On BEST ANSWER

Suppose the $z$ axis does not lie in any of the planes. Then find the points on that axis that are the intersections of the axis with the planes. Add $1$ to the largest $z$ coordinate to get a point (on the $z$ axis) on none of the planes.

If by (infinitesimal) chance the $z$ axis lies in one of the planes you can easily and deterministically find a line to use instead. One brute force way to do this is to choose $M$ vectors no triple of which are linearly dependent. None of your $m$ planes can contain more than two of these, so for large enough $M$ (you figure out how large) one of those lines will be in none of the planes. Use that one instead of the $z$ axis.