OpenGL 鼠标交互响应事件
uses
gl,glu,glut;
procedure InitEnvironment;cdecl;
begin
glClearColor(0.6,0.6,0.6,);//设置清屏颜色灰色
glClear(GL_COLOR_BUFFER_BIT);
glPointSize();/设置点的大小
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluOrtho2D(,,,);
end;
procedure mydisplay;cdecl;
begin
glClear(GL_COLOR_BUFFER_BIT);
glFlush();
end;
procedure OnMouse(button,state,x,y:longint);cdecl;
begin
if (button=GLUT_LEFT_BUTTON)and(state=GLUT_DOWN)then//如果鼠标左键按下
begin
glColor3f(,,);//红色
glBegin(GL_POINTS);
glVertex2f(x,-y);//画点
glEnd();
glFlush();
end;
if (button=GLUT_MIDDLE_BUTTON)and(state=GLUT_DOWN)then//如果鼠标滚轮按下
begin
glColor3f(,,);//原谅色
glBegin(GL_POINTS);
glVertex2f(x,-y);//画点
glEnd();
glFlush();
end;
if (button=GLUT_RIGHT_BUTTON)and(state=GLUT_DOWN)then//如果鼠标右键按下
begin
glColor3f(,,);//蓝色
glBegin(GL_POINTS);
glVertex2f(x,-y);//画点
glEnd();
glFlush();
end;
end;
begin
glutInit(@argc,argv);
glutInitDisplayMode(GLUT_RGB or GLUT_SINGLE);
glutInitWindowPosition(,);
glutInitWindowSize(,);//设置窗口大小
glutCreateWindow('OpenGL');//建立窗口
InitEnvironment();
glutMouseFunc(@OnMouse);//鼠标键盘事件注册
glutDisplayFunc(@myDisplay);//调用主过程
glutMainLoop();
end.
OpenGL 鼠标交互响应事件的更多相关文章
- OpenGL键盘交互响应事件
GLUT允许我们编写程序,在里面加入键盘输入控制,包括了普通键,和其他特殊键(如F1,UP).在这一章里我们将学习如何去检测哪个键被按下,可以从GLUT里得到些什么信息,和如何处理键盘输入. 处理 ...
- OpenGL(十六) 鼠标、键盘交互响应事件
OpenGL中通过鼠标和键盘跟程序交互的实现需要实现注册鼠标和键盘响应事件,在一定条件下,该事件被触发,事件里的程序被执行,达到交互的目的. 通过glutMouseFunc(&OnMouse) ...
- 3D Slicer Modify Mouse Event 修改3D Slicer中的鼠标响应事件
在3D Slicer中,我们如果想在自己写的插件中来修改默认的鼠标响应事件的话,就需要先将原有的响应事件链接删除,然后建立自定义的响应事件链接,然后将自己要实现的功能写在响应事件函数中. 比如Slic ...
- 从零开始openGL——三、模型加载及鼠标交互实现
前言 在上篇文章中,介绍了基本图形的绘制.这篇博客中将介绍模型的加载.绘制以及鼠标交互的实现. 模型加载 模型存储 要实现模型的读取.绘制,我们首先需要知道模型是如何存储在文件中的. 通常模型是由网格 ...
- CSS鼠标响应事件经过、移动、点击示例介绍
本文为大家介绍下CSS 鼠标响应事件:鼠标经过CSS.鼠标移动CSS.鼠标点击CSS以及示例,喜欢的朋友可以参考下 几种鼠标触发CSS事件. 说明: onMouseDown 按下鼠标时触发 onM ...
- cocos2d JS 鼠标响应事件
对于PC和超级本,添加鼠标事件的的处理,可以加强用户的体验,其处理逻辑与触摸事件基本一样,多了一些鼠标特有的事件响应 如滚轮事件(onMouseScroll) cc.eventManager.addL ...
- mfc 鼠标、键盘响应事件
一.基本目标 1.有一个基本的MFC程序,点击“关闭”则“关闭”这个程序,这点没什么好讲的,把自带的“取消”按钮,右键->属性的Caption改成“关闭”二字就可以了 2.鼠标在对话框中移动,则 ...
- 3D场景中的鼠标响应事件
原文:3D场景中的鼠标响应事件 今天要讲的是3D场景中的鼠标响应事件的处理,首先Button的响应是大家熟知的,只要加上一个click事件,然后写一个响应的处理时间就行了.对于二维平面上的一些控件也很 ...
- OSX 鼠标和键盘事件
本文转自:http://www.macdev.io/ebook/event.html 事件分发过程 OSX 与用户交互的主要外设是鼠标,键盘.鼠标键盘的活动会产生底层系统事件.这个事件首先传递到IOK ...
随机推荐
- NX二次开发-NXOPEN将工程图转成PDF文件
NX9+VS2012 #include <uf.h> #include <uf_draw.h> #include <NXOpen/PrintPDFBuilder.hxx& ...
- 由于某些原因无法博客搬家,现在换马甲了 http://blog.csdn.net/qq_32066409
由于位置原因无法博客搬家,现在换马甲到csdn了地址如下http://blog.csdn.net/qq_32066409
- function attributes, MDK
The keyword format is either of the following: __attribute__((attribute1, attribute2, ...)) __attrib ...
- ActiveMQ任意文件写入漏洞(CVE-2016-3088)
上传webshell 容器用vulhub的 PUT一个jsp文件 MOVE到api目录 默认的ActiveMQ账号密码均为admin,首先访问http://your-ip:8161/admin/tes ...
- VS新建工程或者新建项时 出现未定义标识符号
VS新建工程或者新建项时 出现未定义标识符号,编译之后不影响运行,但是看着很不舒服,影响效率. 解决办法:属性--->VC++目录-->包含目录-->编辑,将自己所用QT的inclu ...
- anjs 分词器初步使用
由于ik没有歧义分词的功能,打算用anjs 对前端传递过来的数据用anjs进行分词 anjs 操作文档官网地址:http://nlpchina.github.io/ansj_seg/ 刚刚开始由于ja ...
- C++数据类型之字符串类型&布尔类型&数据的输入
字符串型 **作用**:用于表示一串字符 **两种风格** 1. **C风格字符串**: char 变量名 [ ] = "字符串值" 2.**C++风格字符串**: stri ...
- codis 使用
1:Jedis与Redisson对比 2.1. 概况对比 Jedis是Redis的Java实现的客户端,其API提供了比较全面的Redis命令的支持:Redisson实现了分布式和可扩展的Java数据 ...
- vc枚举本机端口信息
关于查看本机端口信息,可能大多数人都知道在cmd下的netstat 命令,殊不知该命令在底层也是调用相关api来实现的,相关函数有:GetTcpTableGetExtendedTcpTableGetU ...
- 深度探索C++对象模型之第一章:关于对象之C++对象模型
一.C和C++对比: C语言的Point3d: 数据成员定义在结构体之内,存在一组各个以功能为导向的函数中,共同处理外部的数据. typedef struct point3d { float x; f ...