O = Intersect(zAxis, xAxis)
A_x = (4, 0, 0)
B_y = (0, 4, 0)
f = Line(O, A_x)
g = Line(O, B_y)
A_0: (0, 4, 0)
i = OrthogonalLine(A_0, xOyPlane)
r: z = 0
A = Point(i)
u: (1, -1, 2)
m = Segment(A_0, A)
a = Line(A, u)
B_0: (1, -3, 0)
j = OrthogonalLine(B_0, xOyPlane)
B = Point(j)
l = Segment(B, B_0)
v: (-1, -3, 3)
b = Line(B, v)
M: (3, 2, 1)
p = Plane(M, b)
q = Plane(M, a)
n = IntersectPath(q, p)
Q = Intersect(n, b)
P = Intersect(n, a)
h = Segment(Q, M)