计算机图形学-GAMES101-11

news/2025/2/26 6:17:37

显式几何的表示方法

Point Cloud

  • 使用一系列点表示物体的表面。
  • 理论上可以表达空间中任何物体。
  • 如物体扫描会得到空间中一系列点,但在建模时我们要提取出大量多边形的面。
  • 点云对密度要求很高,因此不常使用。在这里插入图片描述

Polygon Mesh

  • 使用三角形表示物体。
  • 涉及三角形之间的连接关系。
    在这里插入图片描述
     obj模型文件格式:
    在这里插入图片描述
     v表示按顺序排列的顶点位置数据,在上图中是一个立方体的8个顶点数据。一个立方体具有六个面,使用vn定义法线,在上图中vn不止六个是因为建模软件产生的数据冗余。使用vt表示不同面上顶点的纹理坐标,6个面4个顶点最多有24个vt数据。最后的f表示连接关系,每一行代表一个三角形,用三个顶点的数据表示,每个顶点的数据格式是:顶点序号/顶点纹理坐标序号/顶点法线序号。

Bezier Curve

 用一系列控制点定义一条曲线,控制点定义曲线需要满足的性质:
在这里插入图片描述
 离散时间t,计算曲线上的点。
在这里插入图片描述
 递归算法即可求解:
在这里插入图片描述
 插值计算过程:
在这里插入图片描述
emsp;计算过程:
在这里插入图片描述
 N+1个控制点,组合为多项式。
在这里插入图片描述
 使用三维空间中的点,即可插值出三维空间中的曲线。
在这里插入图片描述
 曲线的性质:
在这里插入图片描述
 形成的曲线一定在控制点形状的凸包内
在这里插入图片描述

Piecewise Bezier Curves

 当控制点太多时,想要调整一条曲线很复杂:
在这里插入图片描述
 为什么要使用那么多控制点呢?使用多条曲线拼接一条长曲线不就行了?
在这里插入图片描述
 使用每四个点(起点-终点-两个弯曲控制点)形成一个曲线:
在这里插入图片描述
 如上图所示,我们使用黑色的起点-终点和两个蓝色的弯曲控制点来表示一条曲线。要注意的是,我们想要连接起来的曲线连续。因为我们知道Bezaer曲线在起点和终点处的切线方向分别都等于它们和对应控制点的连线,因此我们需要使得前一条曲线的终点和对应控制点的连线经过后一条曲线起点的控制点,当然这里说的两条曲线分别的终点和起点其实是一个点,我们要求这三点共线,并且中间拿个点应该是两个控制点的终点,这样才能保证切线的大小相同。最终我们保证了多条曲线在变换方向和大小上的连续。
 以上保证了曲线的C1连续,工业上使用C2连续。
在这里插入图片描述

样条曲线:

在这里插入图片描述
 B样条:
在这里插入图片描述

Bezier Surfaces

在这里插入图片描述


http://www.niftyadmin.cn/n/341644.html

相关文章

Java SE 的运算符和控制流语句:深入探索核心编程技巧

Java SE 的运算符和控制流语句:深入探索核心编程技巧 0. 引言1. 运算符1.1 算术运算符1.2 赋值运算符1.3 比较运算符1.4 逻辑运算符1.5 位运算符 2. 控制流程语句3. 结论 0. 引言 Java是一门广泛应用的编程语言,具备强大的功能和灵活的语法。其中&#…

什么是跨链交易?

每个区块链都是一个完整的数字环境,其中所有应用程序都通过底层网络连接。但随着区块链网络的不断增加,以及区块链之间缺乏连接,人们对跨链基础设施的需求越来越高,以提供用户在多个区块链网络之间的互操作性。 没有跨链基础设施&…

使用自定义协议在浏览器打开电脑中的客户端

需求:点击web页面中开始会议按钮时需要拉起电脑中安装的会议客户端,如果电脑没有安装则跳转到客户端的下载页面,有则打开客户端 代码如下: protocolCheck.js function check(uri, failCb, successCb, unsupportedCb) {function failCallback() {failCb && failCb();}…

ctfshow吃瓜杯 web

文章目录 热身ATTup代码审计phar反序列化 shellmeshellme_Revenge 热身 <?php/* # -*- coding: utf-8 -*- # Author: h1xa # Date: 2020-09-16 11:25:09 # Last Modified by: h1xa # Last Modified time: 2020-09-18 16:53:59 # link: https://ctfer.com*/include(&qu…

对比AMD和英特尔显卡的区别

✨求关注~ &#x1f600;博客&#xff1a;www.protaos.com AMD和英特尔都是著名的半导体公司&#xff0c;它们都生产处理器和显卡。在显卡领域&#xff0c;AMD生产Radeon系列显卡&#xff0c;而英特尔则生产Intel HD Graphics和Intel Iris Graphics系列显卡。 使用群体对比&…

Mongodb 6.0 变化的配置参数与连接的方式变化

开头还是介绍一下群&#xff0c;如果感兴趣polardb ,mongodb ,mysql ,postgresql ,redis 等有问题&#xff0c;有需求都可以加群群内有各大数据库行业大咖&#xff0c;CTO&#xff0c;可以解决你的问题。加群请联系 liuaustin3 &#xff0c;在新加的朋友会分到2群&#xff08;共…

建筑电力需求弹性评价方法

建筑需求响应控制及应用技术,许鹏, 陈永保, 李为林 编 建筑负荷需求响应的介绍 建筑能源需求响应的国内外研究现状 建筑电力需求弹性量化 典型建筑电力需求弹性特性及其需求响应策略研究 概述 随着建筑技术的发展,建筑不单只是在节能、舒适方面得到提升,建筑与电网的交互式…

玩客云刷NAS

测试路由器支持IPV6 参考 这里 我用的是TPlink WDR7660 支持IPV6 主要设置桥模式 玩客云刷写固件 参考 这里 还有这里 玩客云固定IP 参考这里 sudo armbian-config 选择Network 选择有线网络->ip 选择static 然后根据自己情况进行设置 点击OK即可 更新国内源 参考这里 证书…