计算机图形学学习笔记

简介: 计算机图形学的主要研究内容就是研究如何在计算机中表示图形、以及利用计算机进行图形的计算、处理和显示的相关原理与算法。

前言:每日记录自己学习计算机图形学的心得和体会,小弟才疏学浅,如有错误的地方,欢迎大佬们指正,感谢~


image.png

什么是计算机图形学

计算机图形学的主要研究内容就是研究如何在计算机中表示图形、以及利用计算机进行图形的计算、处理和显示的相关原理与算法。


什么是好的画面?

从技术层面简单的评判标准:直接看画面是否足够“亮”。体现了图形学中的全局光照是否做的好,如果光照做的好,画面就亮,相反就暗。


线性代数

向量

向量的两个基础内容,方向和长度。

一、单位向量

长度为一的向量,叫单位向量。

image.png

二、向量的和

image.png

三、向量点乘


image.png


image.png

点乘的作用

  1. 求夹角
    将两个向量归一化得单位向量,这单位向量的点乘就是夹角的余弦值。
  2. image.png
  3. 补充一下余弦定理和推导过程:

余弦定理公式:

image.png

image.png

求投影



image.png

接近和前后

cos在0°到180°上值的分布情况



image.png


相关文章
|
消息中间件 移动开发 JavaScript
JSBridge:混合开发中的双向通信[Android、iOS&JavaScript]
WebView 是移动端中的一个控件,它为 JS 运行提供了一个沙箱环境。WebView 能够加载指定的 url,拦截页面发出的各种请求等各种页面控制功能,JSB 的实现就依赖于 WebView 暴露的各种接口。由于历史原因,IOS以8为分界,Android以4.4为分界,分为高低两个版本。而它们的区别在于 —— 回调。高版本可以通过执行回调拿到 JS 执行完毕的返回值,然后准确进行下一步操作。而低版本无法执行回调!Hybrid App 的核心。
JSBridge:混合开发中的双向通信[Android、iOS&JavaScript]
|
计算机视觉
Mac-Mini 外接三个显示器教程
Mac-mini 官方只支持连接2个显示器,ctrl cv 复制粘贴代码和写博客的时候十分不方便,这时候需要外接第三个显示器,下面看看如何操作。
2041 0
Mac-Mini 外接三个显示器教程
|
存储 Kubernetes 安全
|
API
HarmonyOS 3.1/4项目在DevEco Studio 5.0(HarmonyOS NEXT)版本下使用的问题
有读者在使用《鸿蒙HarmonyOS应用开发入门》书中的源码时遇到问题,主要原因是使用的DevEco Studio版本不同所致。本文提供了三种解决方案:1) 降级DevEco Studio至3.1版本;2) 按照5.0版本修改书中示例;3) 等待并使用《鸿蒙之光HarmonyOS NEXT原生应用开发入门》升级版书籍。
1411 1
|
算法 项目管理
「软件项目管理」一文详解软件项目进度计划
该文章深入讲解了软件项目进度计划的制定方法,包括关键路径法(CPM)的基本概念、ES/LS/EF/LF关系图的绘制、浮动时间的计算以及时间压缩和资源优化技术,并通过实例演示了如何有效管理项目时间。
|
Linux 网络安全 Android开发
SSH神器: Termius介绍与使用
Termius是一款跨平台的SSH工具,提供美观的界面和便捷的操作,支持Android、Windows、macOS及Linux。它允许用户在不同设备间同步服务器连接,适合多设备切换工作。通过注册并关联GitHub学生账号,可以免费获取Termius使用权。软件功能包括SFTP文件传输,还有团队分享功能(需付费)。更多特色等待探索。官网:<https://www.termius.com/>
30529 0
SSH神器: Termius介绍与使用
|
存储 前端开发 中间件
『软件工程10』结构化系统分析:数据流图和字典案例分析
该文章通过具体案例分析了在软件工程中如何运用数据流图和数据字典来进行结构化系统分析,帮助明确系统的信息流程和数据定义。
『软件工程10』结构化系统分析:数据流图和字典案例分析
|
调度 项目管理 计算机视觉
『软件工程8』软件项目进度安排与跟踪,一招学会计算关键路径
该文章详细解释了如何在软件项目管理中安排进度与跟踪,特别是如何计算和利用关键路径方法(CPM)来优化项目时间管理。
|
关系型数据库 MySQL PHP
php wampserver的使用配置
本文介绍了WampServer在Windows系统下的配置和使用方法,包括如何修改PHP时区为中国标准时区PRC、更改Apache服务器端口号以避免冲突、设置起始页以及如何创建和管理虚拟目录。通过这些步骤,用户可以更有效地在本地环境中开发和测试PHP程序。
php wampserver的使用配置
|
存储 Go C语言
Python 的整数是怎么实现的?这篇文章告诉你答案
Python 的整数是怎么实现的?这篇文章告诉你答案
563 7

热门文章

最新文章