曲线曲面 - 连续性, 坐标变换矩阵

连续性
有两种:参数连续性(Parametric Continuity)、几何连续性(Geometric Continuity)
参数连续性:
零阶参数连续性,记为C^0,指相邻两段曲线在结合点处具有相同的坐标

一阶参数连续性,记为C^1, 指相邻两段曲线在结合点处具有相同的一阶导数;

二阶参数连续性,记为C^2, 指相邻两段曲线在结合点处具有相同的二阶导数;

几何连续性:

与参数连续性不同的是,几何连续性只要求参数成比例而非相等。

零阶几何连续性,记为G^0, 指相邻两段曲线在结合点处具有相同的坐标;

一阶几何连续性,记为G^1, 指相邻两段曲线在结合点处的一阶导数成比例、但大小不一定相等;

二阶几何连续性,记为G^2, 指相邻两段曲线在结合点处的一阶导数成比例、二阶导数成比例,即曲率一致,但大小不一定相等;

通常C连续能保证G连续,但是反过来不一定成立。

平移变换,旋转变换
平移变换的坐标表示为
\left\{\begin{matrix} X^=X + Tx & & \\ Y^=Y + Ty & & \\ Z^=Z + Tz & & \end{matrix}\right.
平移变化矩阵为:\begin{bmatrix} 1 &0 &1 &^{_{Tx}} \\ 0 &1 &0 &^{_{Ty}} \\ 1 &0 &0 &^{_{Tz}} \\ 1 &0 &0 &1 \end{bmatrix}

式中  ^{_{Tx}} ,  ^{_{Ty}} ,  ^{_{Tz}} 就是平移参数。绕 x 轴旋转(\beta为正向角),旋转变换
\left\{\begin{matrix} x'=x{^{}} & & \\ y'=ycos\beta - zsin\beta & & \\ z'=ysin\beta - zcos\beta & & \end{matrix}\right.
围绕 x 轴旋转(\beta为正向角)的三维变换矩阵为T=\begin{bmatrix} 1 &0 &0 &0 \\ 0 &cos\beta &-sin\beta &0 \\ 0 &sin\beta &cos\beta &0 \\ 0 & 0& 0& 0& \end{bmatrix}



围绕 y 轴旋转(\beta为正向角)的三维变换矩阵为T=\begin{bmatrix} cos\beta &0 &sin\beta &0 \\ 0 &1 &0 &0 \\ -sin\beta &0 &cos\beta &0 \\ 0 & 0& 0& 1& \end{bmatrix}



围绕z 轴旋转(\beta为正向角)的三维变换矩阵为T=\begin{bmatrix} cos\beta &-sin\beta &0 &0 \\ sin\beta &cos\beta &0 &0 \\ 0 & 0 & 1 &0 \\ 0 &0 &0 & 1 \end{bmatrix}



投影变换

投影就是从投影中心发出射线,经过三维物体上的每个点后,与投影面相交所形成的交点的集合,因此把三维坐标转化为二维坐标的过程称为投影变换。根据投影中心与投影面之间的距离的不同,投影可分为平行投影和透视投影。投影中心到投影面的距离为有限值时,得到的投影为透视投影,若此距离为无穷大,则投影为平行投影。平行投影又可分为正投影和斜投影。投影方向不垂直于投影面的平行投影称为斜投影,投影方向垂直于投影面的平行投影称为正交投影。

所谓正交投影,是指仅使用物体顶点的x坐标和y坐标进行绘制,几何意义上认为是将物体投影到XOY 表面内。设空间中的一点P(x,y,z) , 该点在XOY 平面上的正交投影坐标为P’(x’,y’), 其中
正交投影:
\left\{\begin{matrix} {x}'=x\\ {y}'=y \end{matrix}\right.

斜投影:
\left\{\begin{matrix} {x}'=x -z/(2\sqrt{2})) \\ {y}'=y -z/(2\sqrt{2})) \end{matrix}\right.

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/435013.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

css-通用样式按钮加号

1.实现 2.代码 html <div class"addF">&#xff0b;</div> css .addF{width:40px;font-size:25px;font-weight:600;background-color:rgb(64, 158, 255);text-align:center;color:white;height:34px;border-radius:3px;line-height:34px; }

Windows下 OracleXE_21 数据库的下载与安装

Oracle 数据库的下载与安装 数据库安装包下载数据库安装访问数据库进行测试Navicat连接数据库 1. 数据库安装包的下载 1.1 下载地址 Oracle Database Express Edition | Oracle 中国 1.2 点击“下载 Oracle Database XE”按钮&#xff0c;进去到下载页面&#xff08;选择对…

ES基础-ES优化

优化-硬件选择 Elasticsearch 的基础是 Lucene&#xff0c;所有的索引和文档数据是存储在本地的磁盘中 磁盘在现代服务器上通常都是瓶颈。Elasticsearch重度使用磁盘&#xff0c;你的磁盘能处理的吞吐量越大&#xff0c;你的节点就越稳定。这里有一些优化磁盘I/O的技巧&#x…

数据处理分类、数据仓库产生原因

个人看书学习心得及日常复习思考记录&#xff0c;个人随笔。 数据处理分类 操作型数据处理&#xff08;基础&#xff09; 操作型数据处理主要完成数据的收集、整理、存储、查询和增删改操作等&#xff0c;主要由一般工作人员和基层管理人员完成。 联机事务处理系统&#xff…

ELF 1技术贴|在NXP源码基础上适配开发板的按键功能

本次源代码适配是在NXP i.MX6ULL EVK评估板的Linux内核源代码&#xff08;特定版本号为Linux-imx_4.1.15&#xff09;的基础中展开的。 首要任务集中在对功能接口引脚配置的精细调整&#xff0c;确保其能无缝匹配至ELF 1开发板。接下来&#xff0c;我们将详细阐述适配过程中关…

Maven对项目构建过程中的每个步骤的详细介绍

1. 概述 Maven除了管理项目的依赖以外&#xff0c;还能对项目的构建过程进行管理。除了使用命令行以外&#xff0c;我们平时经常用IDEA图形化界面进行操作&#xff0c;如图所示&#xff1a; 本文将详细描述Maven对项目构建过程中的每一个阶段。 2. 构建过程 注意&#xff1…

垂直分表、分布式Id详细介绍、模板引擎FreeMarker、对象存储服务MinIO(黑马头条Day02)

目录 垂直分表 分布式ID 为什么需要分布式ID 分布式ID需要满足的条件 常见的分布式ID算法有哪些 项目中具体如何使用分布式ID 模板引擎FreeMarker freemarker简介 对象存储服务MinIO MinIO简介 MinIO的优点 本项目中使用的FreeMarker和MinIO示例 今天在学习黑马头…

短视频矩阵系统技术开发商--支持技术资质核验(自研独立saas框架开发)

短视频矩阵系统是一种能够帮助用户快速制作、发布和推广短视频的系统。 &#x1f347;&#x1f347;它通常包括以下部分&#xff1a; 短视频矩阵系统#短视频矩阵系统源头#短视频矩阵系统源头开发#短视频矩阵系统软件#短视频矩阵系统技术#2024互联网风口项目短视频矩阵系统带动…

ORACLE RAC反应卡顿时enq: SV - contention和latch: row cache objects的分析

某客户数据库系统使用ORACLE RAC 11G版本&#xff0c;两个节点。在上午8点钟之后&#xff0c;业务开始大量进行时&#xff0c;出现严重的卡顿问题&#xff1b;在工程师分析后&#xff0c;发现当时出现了很多异常等待数据&#xff0c;如典型的enq: SV - contention 、enq: TX - …

【Java JVM】Class 文件

Java 的口号 “一次编写, 到处运行 (Write Once, Run Anywhere)” 的基础: JVM 和 所有平台都统一支持的程序存储格式 – 字节码 (Byte Code)。 只要在对应的平台安装对应的 JVM, 将我们编写的源码编译为 Class 文件, 就能达到了一次编写, 导出运行的目标, 中间的所有细节由不同…

微服务基础

目录 一、单体架构 二、分布式架构 三、微服务 四、微服务结构 五、SpringCloud 六、服务拆分 七、远程调用 一、单体架构 单体架构就是将业务的所有功能都集中在一个项目中进行开发&#xff0c;并打成一个包进行部署。 他的优点很明显&#xff0c;就是架构简单&#xff…

微信小程序(五十二)开屏页面效果

注释很详细&#xff0c;直接上代码 上一篇 新增内容&#xff1a; 1.使用控件模拟开屏界面 2.倒计时逻辑 3.布局方法 4.TabBar隐藏复现 源码&#xff1a; components/openPage/openPage.wxml <view class"openPage-box"><image src"{{imagePath}}"…

单细胞联合BulkRNA分析思路|加个MR锦上添花,增强验证~

今天给大家分享一篇IF7.3的单细胞MR的文章&#xff0c;2023年12月发表在Frontiers in Immunology&#xff1a;An integrative analysis of single-cell and bulk transcriptome and bidirectional mendelian randomization analysis identified C1Q as a novel stimulated risk…

力扣刷题Days11第二题--141. 环形链表(js)

目录 1,题目 2&#xff0c;代码 2.1快慢指针 2.2&#xff0c;哈希表 3&#xff0c;学习与总结 3.1自己尝试写快慢指针 反思 1,题目 给你一个链表的头节点 head &#xff0c;判断链表中是否有环。 如果链表中有某个节点&#xff0c;可以通过连续跟踪 next 指针再次到达&…

【视频转码】基于RK3588的视频转码探索

传统的视频转码服务基本都是基于X86下CPU、GPU转码&#xff0c;对硬件性能、功耗、成本来说都比较高。从技术角度来说现有视频转码技术有&#xff1a; 视频编码转变&#xff1a; 1. H.264 > H.265 保持视频分辨率、清晰度不变情况下&#xff0c;更改视频压缩方式&#xff0…

hyperf 二十五 数据迁移 一

教程&#xff1a;Hyperf 版本说明 一 生成迁移 php bin/hyperf.php gen:migration create_users_table 执行文件&#xff1a;Hyperf\Database\Commands\Migrations\GenMigrateCommand 功能&#xff1a;创建迁移文件 参数&#xff1a; name 文件名称 选项&#xff1a; c…

【JS】关于this的使用

this 前言一、this是什么&#xff1f;二、做什么&#xff1f;1.全局环境2.函数环境3.new实例对象4.apply、bind、call绑定4.1 apply()4.2 call()4.3 bind() 三、为什么用this&#xff1f;四、如何改变this&#xff1f;五、应用场景&#xff1f;总结 前言 痛点 经常写Vue项目&a…

day36 贪心算法part5

435. 无重叠区间 中等 给定一个区间的集合 intervals &#xff0c;其中 intervals[i] [starti, endi] 。返回 需要移除区间的最小数量&#xff0c;使剩余区间互不重叠 。 气球问题稍加改动就可ac 一个交叉区间里&#xff0c;最终只能保留一个&#xff0c;其他的全部要去掉。…

软考66-上午题-【面向对象技术】-小结+杂题

一、杂题 真题1&#xff1a; 真题2&#xff1a; 真题4&#xff1a; 真题5&#xff1a; 真题6&#xff1a; 二、面向对象设计-总结 2-1、考题分析 选择题&#xff1a;11道&#xff08;11分&#xff09; 综合分析题&#xff1a;2道&#xff08;30分&#xff09; java程序设计…

Common Sense Machines(CSM):立志成为图像生成适用于游戏引擎的3D资产AI产品

详细说明 Common Sense Machines&#xff08;CMS&#xff09;&#xff1a;立志成为图像生成适用于游戏引擎的3D资产AI产品-喜好儿aigc详细说明&#xff1a;https://heehel.com/CSM-3d 官方网站&#xff1a;https://www.csm.ai/ 使用体验网址&#xff1a;https://3d.csm.ai/ 来…