本书在广泛结合OpenGL并注重图形应用编程的基础上,介绍了计算机图形学的经典核心体系:图形系统、二维图形生成、几何变换、二维与三维观察、三维对象(实体造型与曲线曲面)、真实感图形技术、交互技术及动画。
本书主要介绍计算机图形学经典理论知识,同时每一章都给出一至两个OpenGL编程实例来帮助读者更好地理解相关知识与技术,使读者能快速掌握如何生成二维图形与三维图形。
书后有两个附录,分别为含有8个实验的课程实验指导与3套模拟试题及其答案。
目录第1章计算机图形学概述1.1什么是计算机图形学1.2计算机生成的图片用在哪里1.2.1艺术、娱乐和出版行业1.2.2计算机图形学、感知和图像处理1.2.3过程监视1.2.4仿真显示1.2.5计算机辅助设计1.2.6科学分析与体可视化1.3计算机图形学中制作图像的基本元素1.3.1折线1.3.2文本1.3.3填充区域1.3.4光栅图像1.3.5光栅图像的灰度和色彩表达1.4图形显示设备1.4.1线画显示1.4.2光栅显示器1.4.3视频卡/3D加速器1.4.4其他的光栅显示设备1.4.5硬拷贝光栅设备1.5图形输入的基本单元和设备1.5.1逻辑上的输入图形基元类型1.5.2物理输入设备的类型本章小结本章习题进一步阅读第2章OpenGL绘图入门2.1生成图像初步2.1.1设备无关的编程和OpenGL2.1.2窗口的编程2.1.3如何打开一个窗口画图2.2OpenGL的基本图形元素2.2.1几个点丛绘制的例子2.3OpenGL中的直线绘制2.3.1绘制折线和多边形2.3.2使用moveTo()和lineTo()绘制线段2.3.3绘制边校正的矩形2.3.4边校正矩形的长宽比2.3.5填充多边形2.3.6OpenGL中的其他图形元素2.4与鼠标和键盘的交互2.4.1用鼠标交互2.4.2键盘交互2.5程序中的菜单设计与使用本章小结案例分析进一步阅读第3章更多的绘图工具3.1概述3.2世界窗口和视口3.2.1窗口到视口的映射3.3裁减线3.3.1如何裁减一条线3.3.2Cohen-Sutherland裁减算法3.4正多边形、圆和圆弧3.4.1正多边形3.4.2正n边形的变种3.4.3绘制圆弧和圆3.4.4曲线的逐次细化3.5曲线的参数形式3.5.1曲线的参数形式3.5.2绘制参数曲线3.5.3极坐标形状本章小结案例分析进一步阅读第4章图形学中的向量工具4.1概述4.2向量回顾4.2.1向量基本运算法则4.2.2向量线性组合4.2.3向量的度量和单位向量4.3点积4.3.1点积的性质4.3.2两个向量的夹角4.3.3b·c的符号和正交性4.3.4二维正交向量4.3.5正交投影和点到直线的距离4.3.6投影的应用:反射4.4两个向量的叉积4.4.1叉积的几何解释4.4.2求平面的法向量4.4.3判断平面多边形的凸性4.5重要几何对象的表示4.5.1坐标系统和坐标框架4.5.2点的仿射组合4.5.3两个点的线性插值4.5.4使用内插的艺术和动画4.5.5预览:用二次、三次内插生成贝塞尔曲线4.5.6表示直线和平面4.6求两个线段的交点4.6.1直线求交的应用:过三点的圆4.7直线和平面求交及裁剪4.8多边形求交问题4.8.1处理凸多边形和凸多面体4.8.2射线与凸多边形的交点以及裁剪问题4.8.3Cyrus-Beck裁剪算法4.8.4更高级的裁剪问题本章小结案例分析进一步阅读第5章物体变换5.1概述5.2几何变换初步52.1点和物体变换5.2.2仿射变换5.2.3二维基本仿射变换的几何效果5.2.4仿射变换的逆变换5.2.5组合一个仿射变换5.2.6二维组合变换的实例5.2.7仿射变换的一些有用的性质5.3三维仿射变换5.3.1基本三维变换5.3.2组合一个三维仿射变换5.3.3旋转的组合5.34总结三维仿射变换的性质5.4如何实现坐标系变换5.5在程序中使用仿射变换j.5.1为后面的使用保存CT5.6使用OpenGL绘制电维场景5.6.1观察过程和图形绘制管道概述5.6.2OpenGL中的建模和视点工具5.6.3用OpenGL绘制基本形状5.6.4使用sDI。
从文件中读取一个场景的描述本章小结案例分析进一步阅读第6章使用多边形网格建
2025/3/20 3:15:07 56.37MB Computer Graphics
1
DELLPowerEdgeR740服务器彩页,针对工作负载加速进行了优化PowerEdgeR740旨在加快应用程序性能,从而利用加速器卡和存储可扩展性。
双插槽2U平台可优化平衡资源,为要求最严苛的环境提供支持。
R740可扩展的企业体系结构可扩展到三个300WGPU或六个150WGPU。
借助多达16个2.5英寸驱动器或8个3.5英寸驱动器,R740可提供多样性功能以适应几乎任何应用程序,并为VDI部署提供完美平台。
2025/3/14 14:48:11 319KB R740 服务器 R740 彩页
1
功能介绍如下:1、获取本地歌曲列表,实现歌曲播放功能。
2、利用硬件加速感应器,摇动手机实现切换歌曲的功能3、利用jsoup解析网页数据,从网络获取歌曲列表,同时实现歌曲和歌词下载到手机本地的功能。
4、通知栏提醒,实现仿QQ音乐播放器的通知栏功能.涉及的技术有:1、jsoup解析网络网页,从而获取需要的数据2、android中访问网络,获取文件到本地的网络请求技术,以及下载文件到本地实现断点下载3、线程池4、图片缓存5、service一直在后台运行6、手机硬件加速器7、notification通知栏设计8、自定义广播9、android系统文件管理音乐播放器的讲述博文地址:http://blog.csdn.net/u010156024/article/details/47685141
2025/3/9 14:32:53 3.71MB 音乐播放器
1
SDK模拟器加速响应速度,适用于intel(x86)CPU,API19以上
1
最新键盘加速器让你玩游戏更加轻松操作简单
2025/1/25 21:47:30 118KB 键盘加速器
1
STM32F103系列微控制器是基于ARMCortex-M3内核的高效能、低成本芯片,广泛应用于各种嵌入式系统设计。
本例程集成了多种关键功能,旨在为开发者提供一个强大的开发平台,帮助他们快速实现项目。
以下是各功能模块的详细解释:1.**FreeRTOS操作系统**:FreeRTOS是一款轻量级实时操作系统(RTOS),适用于资源有限的嵌入式设备。
它提供了任务调度、信号量、互斥锁等多任务管理机制,确保了系统的实时性和高效率。
在STM32F103上运行FreeRTOS,可以充分利用其多线程能力,实现复杂的软件架构。
2.**MPU6050DMP**:MPU6050是一款六轴惯性测量单元(IMU),集成了三轴陀螺仪和三轴加速度计。
DMP(数字运动处理器)是其内置的硬件加速器,可以处理传感器数据融合,提供姿态解算。
在本例程中,MPU6050DMP用于获取设备的姿态、角速度和加速度信息,适用于运动控制和导航应用。
3.**USART通信**:通用同步/异步收发传输器(USART)是STM32中的串行通信接口,用于与外部设备进行数据交换。
在项目中,USART可能用于设备配置、数据传输或者与其他MCU通信。
4.**Timer输入捕获**:STM32的定时器支持输入捕获模式,可以精确测量输入信号的脉冲宽度或频率。
在例程中,这可能用于电机控制、测速或距离测量(如通过计算超声波脉冲往返时间)。
5.**KS103测距模块**:KS103通常是指一款超声波测距模块,利用超声波的反射特性来测量物体的距离。
结合Timer输入捕获功能,可以实现精确的距离测量,例如在自动化设备或安全系统中。
6.**烟雾检测**:虽然在描述中提到烟雾检测,但没有提供具体实现的细节。
一般而言,烟雾检测可能通过光电传感器或电化学传感器实现,将检测到的信号转化为电信号并处理,以报警或触发其他响应。
这个综合示例涵盖了嵌入式系统开发中的多个关键部分,包括实时操作系统、传感器数据处理、串行通信以及物理世界的测量。
对于想要在STM32F103平台上进行复杂项目开发的工程师来说,这是一个宝贵的资源,可以减少重复工作,提高开发效率。
通过学习和参考这个例程,开发者能够更好地理解和应用这些技术,解决实际问题。
2025/1/21 16:03:14 10.62MB FREERTOS MPU6050DMP stm32F103 usart
1
mquery:为恶意软件分析师提供快速的Yara查询曾经有过寻找恶意软件样本的麻烦吗?Mquery是便于分析人员使用的WebGUI,可以浏览您的数字仓库。
它可用于在眨眼间搜索TB的恶意软件:对2.1M文件的查询在,我们使用,通过ngram加速查询。
演示版即将创建公共实例,敬请期待...快速开始1.安装并启动最简单的方法是使用docker-compose:gitclone--recurse-submoduleshttps://github.com/CERT-Polska/mquery.gitcdmqueryvim.env#optional-
2025/1/13 5:37:28 1.4MB database malware yara security-automation
1
代码借鉴,放送,不要说分数的问题了1、Android团队提供的示例项目  如果不是从学习AndroidSDK中提供的那些样例代码开始,可能没有更好的方法来掌握在Android这个框架上开发。
由Android的核心开发团队提供了15个优秀的示例项目,包含了游戏、图像处理、时间显示、开始菜单快捷方式等。
  2、RemoteDroid  RemoteDroid是一个Android应用,能够让用户使用自己的无线网络使用无线键盘、触摸屏操作手机。
这个项目为开发者提供了如网络连接、触摸屏手指运动等很好的样例。
  3、TorProxy和Shadow  TorProxy应用实现了Android手机无线电电传通讯(TOR),和Shadow应用一起使用,可以使用手机匿名上网。
从该项目源代码中,可以掌握socket连接、管理cookie等方法。
    4、AndroidSMSPopup  SMSPopup可以截获短信内容显示在一个泡泡形状的窗口中。
从这个项目中可以掌握到如何使用内置的短信SMS接口。
  5、StandupTimer  StandupTimer应用用于控制站立会议时间,类似秒表倒计时,可以提醒每个人的讲话时间已到,从而保证每个与会者使用时间一样。
从该项目的代码中,可以学会如何使用时间函数。
另外,这个项目的代码是采用视图view、模型model严格分离的设计思路。
    6、Foursquare  是Foursquare.com的一个客户端应用,该应用主要分为两个模块:API(com.joelapenna.foursquare)和界面前端(com.joelapenna.foursquared)两部分。
从该项目代码中,可以学会如何同步、多线程、HTTP连接等技术。
  7、Pedometer  Pedometer应用用于记录你每天走路步数的。
尽管记录不一定精准,但是从这个项目中,可以学习几个不同的技术:加速器交互、语音更新、后台运行服务等。
  8、OpenSudoku-android  OpenSudoku是一个简单的九宫格数独游戏。
从代码中可以学习到如何在视图中显示表格数据,以及如何和一个网站交互等技术。
  9、ConnectBot  ConnectBot是Android平台的一个客户端安全壳应用。
从该项目代码中,可以学习到很多Android安全方面的内容,这些是你在开发应用时经常需要考虑的安全问题。
  10、WordPress的Android应用  当然在最后不能不提WordPress的Android应用了,这是WordPress官方开发团队提供的一个项目。
从代码中可以学习到XMLRPC调用(当然还有更多的优秀内容)。
  ================================================================================================本资料共包含以下附件:10个经典的Android开源应用项目.rar
2024/12/25 17:08:12 9.69MB Shadow Android SMSPopup Standup
1
好用的STM32F412工程模板STM32F412的新型大量数据获取模式(BAM),为数据处理进行了功耗优化,将DynamicEfficiency提升到了一个新的水平。
BAM允许通信外设实现批量数据交换,同时器件的其它部分(包括CPU)可保持在省电模式。
性能:在100MHz频率下,从Flash存储器执行时,STM32F412能够提供125DMIPS/339CoreMark性能,并且利用意法半导体的ART加速器实现FLASH零等待状态。
DSP指令和浮点运算单元扩大了产品的应用范围。
功效:ST该系列产品采用意法半导体90nm工艺,使用ART加速器和动态功耗调整功能,从Flash存储器执行指令,运行模式下可实现低至112µA/MHz的电流消耗。
停机模式下,功耗低至18µA。
集成度:STM32F412器件内置高达512至1024KB的Flash存储器和高达256KB的SRAM。
具备从48到144引脚各类封装。
4路USART,速度高达12.5Mbit/s5路SPI(I²S多路传输),速度高达50Mbit/s4个I²C,高达1Mbps2xCAN(支持2.0B)1个SDIO,运行于高达48MHz,所有封装都提供1个USB2.0OTG全速(FS)2个全双工I²S,最高32-bit/192kHz3个单工I²S,最高32-bit/192kHz2个数字滤波器,用于∑Δ调制器4个PDM接口,支持立体声麦克风速度高达2.4MSPS的12位ADC,14个定时器,频率高达100MHz的16和32位定时器硬件随机数发生器
2024/12/20 9:55:40 712KB STM32 STM32F4 工程模板
1
DLAU:FPGA上的可扩展深度学习加速器单元
2024/10/6 0:38:55 745KB 研究论文
1
共 35 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡