本文主要是介绍OpenGL梁友栋-Barsky算法裁剪线段,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
使用C++语言
裁剪线段P1(3,3),P2(-2,-1),裁剪窗口为wxl=0,wxr=2,wyb=0,wyt=2。
// 梁友栋-barsky算法.cpp : 定义控制台应用程序的入口点。
//#include "stdafx.h"#include <GL/glut.h>
#include <iostream>
#include <cmath>
#include <algorithm>
double wxl = 0, wxr = 2, wyb = 0, wyt = 2;void clipLine(double x1, double y1, double x2, double y2) {}void display() {glClear(GL_COLOR_BUFFER_BIT);glColor3f(1.0, 1.0, 1.0);// 定义线段P1(3,3)到P2(-2,-1)double x1 = 3, y1 = 3;double x2 = -2, y2 = -1;// 裁剪线段clipLine(x1, y1, x2, y2);glFlush();
}int main(int argc, char** argv) {glutInit(&argc, argv);glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);glutInitWindowSize(400, 400);glutCreateWindow("Liang-Barsky Line Clipping");glClearColor(0.0, 0.0, 0.0, 1.0);gluOrtho2D(-5, 5, -5, 5);glutDisplayFunc(display);glutMainLoop();return 0;
}
这篇关于OpenGL梁友栋-Barsky算法裁剪线段的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!