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二次开发-输入X向量Y向量输出一个3*3矩阵UF_MTX3_initialize
NX9+VS2012 #include <uf.h> #include <uf_csys.h> #include <uf_mtx.h> UF_initialize( ...
- 2018-2019-2-20175323 java实验四 Android程序设计
(一)安装及配置Andriod Studio,执行HelloWorld 我选择的安装网址下载了3.2.0版本的Andriod Studio 此处应该选择cancel 报错 点击所给链接,安装相应SDK ...
- unittest(1)
一.unittest核心概念 1.unittest四个核心概念 unittest四个核心概念包括:TestCase.TestSuite.TestRunner.Test Fixture TestCase ...
- PyQt5 安装及简单实例 -- 标签设置
- 1 - PyQt5安装,鉴于pip工具,安装其实很简单, 如下:(最好将pip索引配置成国内镜像,速度比默认的快得多) pip3 isntall PyQt5 - 2 - 利用Pycha ...
- Window sevice +OWIN+webapi
webapi正常都托管在iis上,这里引入owin,将其托管在window服务上. 第一步:创建一个服务,这里就不多描述. 第二步:引入OWIN 2.1引入bll 2.2加入api路由配置 publi ...
- 随笔记录 linux命令 2019.7.29
系统命令 一. type 查看命令是内部命令还是内部命令 help 帮助 man 在线帮助 cd 切换目录 pwd 查看所在路径 stat 查看文件详细信息 ls ...
- Font Awesome (Mark)
Font Awesome为您提供可缩放的矢量图标,您可以使用CSS所提供的所有特性对它们进行更改,包括:大小.颜色.阴影或者其它任何支持的效果. 一个字库,675个图标 仅一个Font Awesome ...
- drop database出现1010
> drop database glc; ERROR (HY000): Error dropping database (can't rmdir './glc/', errno: 17) Fri ...
- Erlang学习记录:转义
转义 转义序列 含义 整数编码 \b 退格符 8 \d 删除符 127 \e 换码符 27 \f 换页符 12 \n 换行符 10 \r 回车符 13 \s 空格符 32 \t 制表符 9 \v 垂直 ...
- Elasticsearch日志之删除索引
1.查询索引 [root@ecs-- elasticsearch]# curl -XGET http://localhost:9200/* {,,},},},,,},},},,,},},},,,},} ...