user1828433
user1828433

Reputation: 252

Determine if points are closely coplanar

I have 4 3d points (x,y,z), and I want to know if those points are close to be coplanar. I constructed 3 vectors AB, AC and AD and calculated the absolute value of the determinant which is here the same as the volume. I know that if the volume is 0 then the points are coplanar, but I want also to know if those points are closely coplanar ( I may choose a threshold for instance).

Any help will be appreciated,

Upvotes: 0

Views: 628

Answers (2)

MBo
MBo

Reputation: 80187

Use some normalization of the volume (determinant). For example, divide it by some function of tetrahedron facets' area (I chose arbitrary one to keep dimension)

Vnorm = Abs (V) / (S1 + S2 + S3 + S4)3/2

Another approach: divide squared distance from D vertice to ABC plane by ABC area (or distance by ABC perimeter)

Upvotes: 1

Gerard Rozsavolgyi
Gerard Rozsavolgyi

Reputation: 5064

You can compute the cross-product of vectors AB and AC, obtaining a N1 vector, normal to (ABC) plane. In the same way, compute the cross-product of vectors AB and AD obtaining a N2 vector, normal to (ABD) plane. The scalar product N1.N2 = |N1|.|N2|.cos(X) where X is the angle between the two normal vectors. X should be zero if your points are exactly coplanar. You can compute X with Arccos function. Unities for X are radians. If X is lower than pi/180 for example you have an angle lower than 1 degree, so points nearly coplanar. You have to decide the exact desired threshold for this angle.

Upvotes: 0

Related Questions