1) Вообще плоскость должна задаваться 3 точками. 4 могут не образовать плоскость. Давайте считать что у нас есть 3 точки: A, B, C
2) Создадим вектора AB и AC (оба соответственно лежат в плоскости, так как соединяют вершины, лежащие на этой плоскости)
3) Возмем cross-product от AB и AC (это третий вектор, который точно перпендикулярен и AB и AC). Что такое cross-product и как его считать можно нагуглить. Так вот, помимо прочего cross-product будет нормалью плоскости (то есть перпендикулярен любой прямой, лежащей в плоскости)
4) Проверим, что обе точки отрезка лежат по одну сторону относительно плоскости (зная нормаль и координаты это можно посчитать. Координаты - это у нас точка A, так как и AB и AC, и cross-product выходят из нее и направлены в разные стороны). Как считать - я честно не помню. Но опять же можн найти.
5) Если в пункте 4 выяснилось что обе точки нашего отрезка лежат по одну сторону от плоскости, значит отрезок плоскость не пересекает.
6) Все готово, дело за малым - осталось лишь найти пересечение прямой, на которой лежит отрезок, и плоскости. Все данные у нас есть. Решение, опять же, можно найти.
ЗЫ
Извините что даю только теорию, но я совсем давно этим занимался. Кстати, когда занимался, я все что мне нужно было находил здесь:
http://www.enlight.ru/faq3d/content.htm