当前位置: 首页 > news >正文

OpenGL给定直线起点和终点不同的颜色,使用中点Bresenham画线

用鼠标左键按下确定直线起点,鼠标左键抬起确定直线终点。放一部分代码。

// 中点Bresenham算法.cpp : 定义控制台应用程序的入口点。
//#include "stdafx.h"
#include <GL/glut.h>
#include <iostream>
#include <cmath>int windowWidth = 800;
int windowHeight = 600;int startX, startY, endX, endY;
bool isDrawing = false;void setPixel(int x, int y, float r, float g, float b) {glColor3f(r, g, b);glPointSize(5);//设置点的大小glBegin(GL_POINTS);glVertex2i(x, y);glEnd();
}void drawLine(int x0, int y0, int x1, int y1, float r0, float g0, float b0, float r1, float g1, float b1) {}void display() {glClear(GL_COLOR_BUFFER_BIT);glFlush();
}void mouse(int button, int state, int x, int y) {}int main(int argc, char** argv) {glutInit(&argc, argv);glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);glutInitWindowSize(windowWidth, windowHeight);glutCreateWindow("Color Gradient Line Drawing");glClearColor(0.0, 0.0, 0.0, 1.0);gluOrtho2D(0, windowWidth, 0, windowHeight);glutDisplayFunc(display);glutMouseFunc(mouse);glutMainLoop();return 0;
}

http://www.lryc.cn/news/353461.html

相关文章:

  • IT行业的现状与未来发展趋势:从云计算到量子计算的技术变革
  • 电脑远程控制另一台电脑怎么弄?
  • 软件设计师备考 | 案例专题之面向对象设计 概念与例题
  • UniApp 2.0可视化开发工具:引领前端开发新纪元
  • 前端调用浏览器录音功能且生成文件(vue)
  • 「大数据」Kappa架构
  • 详细分析Element Plus中的ElMessageBox弹窗用法(附Demo及模版)
  • Python自动化工具(桌面自动化、Web自动化、游戏辅助)
  • opencv进阶 ——(五)图像处理之马赛克
  • 电机控制系列模块解析(22)—— 零矢量刹车
  • 自定义一个SpringBoot场景启动器
  • UDP的报文结构和注意事项
  • rust语言一些规则学习
  • QML基本语法介绍
  • 学习和分享关于 Vue.js 的路由(vue-router)
  • 小猪APP分发:一站式免费应用推广解决方案
  • 新抖:抖音的数据分析平台,敢用深色系,别的真不敢!
  • 独享IP是原生IP吗?二者有何区别?
  • AI大模型探索之路-实战篇7:Function Calling技术实战:自动生成函数
  • Android14 - 绘制系统 - 概览
  • Add object from object library 从对象库中添加内置器件
  • 天诚公租房/人才公寓WiFi人脸识别物联网智能门锁解决方案
  • JAVA学习-练习试用Java实现“子集”
  • 揭秘《庆余年算法番外篇》:范闲如何使用维吉尼亚密码解密二皇子密信
  • Java进阶学习笔记11——多态
  • 注意力机制篇 | YOLOv8改进之引入用于目标检测的混合局部通道注意力MLCA
  • 百度生成数据库
  • 【SpringBoot】整合百度文字识别
  • Java如何设计一个功能
  • MySQL 字符字段长度设置详解:语法、注意事项和示例