Я хотел бы реализовать алгоритм Коэна-Сазерленда с динамическим отсечением объема в трехмерном пространстве. (то есть с 27 регионами). Предположим, у меня есть что-то вроде этого:
glBegin(GL_LINES);
glVertex3f(x1, y1, z1);
glVertex3f(x2, y2, z2);
glEnd();
В принципе, любой алгоритм будет в порядке, если он выполняет 3D-отсечение.
Хорошо, я совершенно не понимаю, чего вы пытаетесь достичь. Но вот основное краткое изложение, openGL будет автоматически обрезать строки которые не видны. Как вы думаете, он будет отображать линии за пределами вашего экрана?
Если вы хотите реализовать отсечение произвольного трехмерного пространства, вам придется самостоятельно вычислять и вычислять начальную и конечную точки. Это вы можете добавить в openGL, который в терминах не будет отображать биты, которых нет на экране.
Других решений пока нет …