B-Spline 样条学习笔记
(1) 对于clamped样条曲线,节点区间的数目等于曲线段的数目。
eg: B-样条曲线有11个控制点(即,n = 10), 3次P样条 (即, p=3) ,由 m=n+p+1 则有15 个节点 (m = 14),又因为是clamped曲线,则其中头四个(p+1)和最后四个节点(p+1个) 都相等,即节点区间分为:7段,有效节点有15-p-p = 9个,分为8段。
如果这8段是平均间隔,则是均匀的B-Spline曲线。否则称为不均匀的B-Spline曲线。
可以如下表示:clamped节点向量是u0(p+1), up+1, ..., um-p-1, um(p+1)。
一个clamped B-样条曲线经过第一个和最后一个控制点。实际上,它也与控制折线的第一边和最后一边相切。
(2)更低次曲线而仍然保持很多控制点, 即由m=n+p+1, 如果节点向量(m+1)不变,则如果B-spline曲线次数p减少,则控制点的数量(n+1)强增加;
(3) 曲线中的几个概念:控制点数量(n+1),节点数量(m+1),曲线次数p
是个由13个控制点 control points (即, n = 12)和18个节点(即, m = 17)定义的4次 (即, p = 4)B-样条曲线 ;
(4)一个p次B-样条曲线在简单节点上是 Cp-1 在其他空间是无限可微的;如果这个点是t个相邻控制点重合,在那个控制点上,连续性是Cp-t 。
即,如果p次曲线,且有p 个相邻控制点重合,则在那个控制点上,连续性是C0 。
增加一个内部节点的重复度会减小在该节点的非零基函数的数目。实际上,如果该节点的重复度是 k, 最多在该节点上有 p - k + 1 个非零函数。而且,在该节点的基函数是Cp-k 连续的。如果 k = p, 只有一个非零基函数在该节点上,只有一个控制点有非零系数。结果,曲线通过该点。
(5)因为B-样条曲线是许多曲线段的组合,每个定义于一个节点区间上,修改一个或多个节点位置会改变相应的曲线段和节点区间,因此改变曲线的形状。
B-Spline 样条学习笔记的更多相关文章
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- PHP-自定义模板-学习笔记
1. 开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2. 整体架构图 ...
- PHP-会员登录与注册例子解析-学习笔记
1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...
- 2014年暑假c#学习笔记目录
2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...
- JAVA GUI编程学习笔记目录
2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...
- seaJs学习笔记2 – seaJs组建库的使用
原文地址:seaJs学习笔记2 – seaJs组建库的使用 我觉得学习新东西并不是会使用它就够了的,会使用仅仅代表你看懂了,理解了,二不代表你深入了,彻悟了它的精髓. 所以不断的学习将是源源不断. 最 ...
- CSS学习笔记
CSS学习笔记 2016年12月15日整理 CSS基础 Chapter1 在console输入escape("宋体") ENTER 就会出现unicode编码 显示"%u ...
- HTML学习笔记
HTML学习笔记 2016年12月15日整理 Chapter1 URL(scheme://host.domain:port/path/filename) scheme: 定义因特网服务的类型,常见的为 ...
- DirectX Graphics Infrastructure(DXGI):最佳范例 学习笔记
今天要学习的这篇文章写的算是比较早的了,大概在DX11时代就写好了,当时龙书11版看得很潦草,并没有注意这篇文章,现在看12,觉得是跳不过去的一篇文章,地址如下: https://msdn.micro ...
随机推荐
- 差分进化算法-python实现
DEIndividual.py import numpy as np import ObjFunction class DEIndividual: ''' individual of differen ...
- WinForm中Application.Idle事件用法
Application.Idle 事件 描述:当应用程序完成处理并即将进入空闲状态时发生.如果您有必须执行的任务在线程变为空闲之前,请将它们附加到此事件. public partial class F ...
- Chrome经常新标签页打开http://destyy.com/qNHR3u
经常新标签页打开http://destyy.com/qNHR3u网址. 在历史记录里查询 chrome://history/?q=destyy.com ,发现最早访问是25日10点34分05.貌似那个 ...
- Linux C 一些函数 所属头文件
1. Linux中一些头文件的作用:<assert.h>:ANSI C.提供断言,assert(表达式)<glib.h>:GCC.GTK,GNOME的基础库,提供很多有用的函数 ...
- CentOS开机自启动
CentOS 配置的开机自启动. vim /etc/rc.local #!/bin/sh # # This script will be executed *after* all the other ...
- 3.Ehcache中储存缓存的方式
转自:https://www.cnblogs.com/crazylqy/p/4238148.html 目录 1 堆内存(MemoryStore) 1.1 指定可用内存 1.2 ...
- Windows Git 服务器 客户端 Delphi Git配置
装Git后本地单机版就有了版本管理功能. git 使用记录 git 客户端 这2个工具足够用. git for windows,http://git-scm.com/download/,Git-1.9 ...
- [jOOQ中文]3. 数据库版本管理工具Flyway
https://segmentfault.com/a/1190000010526452 在执行数据库迁移时,我们推荐使用jOOQ与Flyway - 数据库迁移轻松. 在本章中,我们将简单的来使用这两个 ...
- role是一个HTML5的属性
<form role="form"> role是一个HTML5的属性,role="form"告诉辅助设备(如屏幕阅读器)这个元素所扮演的角色是个表单 ...
- cp & scp
[cp & scp] Linux为我们提供了两个用于文件copy的命令,一个是cp,一个是scp,但是他们略有不同. cp --- 主要是用于在同一台电脑上,在不同的目录之间来回copy文 ...