Problem

Out of a plane or two coplanar vectors we can extract three not identical points in 3D. Not all points may be in the same straight line. Let's call this three points
P1 = (x1/y1/z1)
P2 = (x2/y2/z2)
P3 = (x3/y3/z3)

with P1 ≠ P2 ≠ P3
We are looking for a perpendicular vector to the plane, which these ponits define:
V = (xv/yv/zv)

Solution

The cartesian product of two vectors produce the coordinates of their perpendicular vektor.

|P1-P2| x |P2-P3| = V

Script

! Vektor 1: A = (ax,ay,az)

ax = x1-x2
ay = y1-y2
az = z1-z2

! Vektor 2
: B = (bx,by,bz)
bx = x2-x3
by = y2-y3
bz = z2-z3

! Solution 1
!
perpendicular Vektor to A and B:
! v = (vx,vy,vz)

vx = by*az - bz*ay
vy = bz*ax - bx*az
vz = bx*ay - by*ax

! Solution 2
! perpendicular Vektor
to A and B:
! V = (vx,vy,vz)

vx = ay*bz - az*by
vy = az*bx - ax*bz
vz = ax*by - ay*bx