#x + y + 2z = 5
v1 = [ 3,0,-4 ]; # first spanning vector
v2 = [ 0,3,-4 ]; # second spanning vector
b = [-1, -1, 10]; # The vector to project
v3 = cross(v1,v2)/3 # # The normal vector
# projection of b onto v3
p1 = dot(b,v3)/dot(v3,v3)*v3
[ 88/41 88/41 66/41 ] # To verify that it worked
p2 = b - p1
[ -129/41 -129/41 344/41] # To verify that it worked
# to verify that it worked by showing that the projections add to the original vector
p1 + p2