【笔记】平面

news2024/10/3 18:35:13

一、平面及其方程(3个条件,4种表达)

F ( x , y , z ) F(x,y,z) F(x,y,z)为平面方程:

  • 在这个平面上的点满足 F ( x , y , z ) = 0 F(x,y,z)=0 F(x,y,z)=0
  • 不在这个平面上的点不满足 F ( x , y , z ) = 0 F(x,y,z)=0 F(x,y,z)=0

归根结底,就是要三个点。变化有很多,可能是三个平面内的点,也可能是截点,也可能连成平面内线段后确定法向搞点法式

1.点法式

用平面法线和平面上的一个向量来确定平面。

平面方程: a ( x 0 − x ) + b ( y 0 − y ) + c ( z 0 − z ) = 0 a(x_0-x)+b(y_0-y)+c(z_0-z)=0 a(x0x)+b(y0y)+c(z0z)=0

P Q ⋅ n = 0 \mathbf{PQ}\cdot \mathbf n=0 PQn=0

  • 法线 n = ( a , b , c ) \mathbf{n}=(a,b,c) n=(a,b,c)
  • 法线和平面交点 Q = ( x 0 , y 0 , z 0 ) Q=(x_0,y_0,z_0) Q=(x0,y0,z0)
  • 平面上其他一点 P = ( x , y , z ) P=(x,y,z) P=(x,y,z)
  • P Q = ( x 0 − x , y 0 − y , z 0 − z ) \mathbf{PQ}=(x_0-x,y_0-y,z_0-z) PQ=(x0x,y0y,z0z)

2.一般式

A x + B y + C z + D = 0 Ax+By+Cz+D=0 Ax+By+Cz+D=0

3.三点式

用平面上不共线的三点确定一个平面。

已知: A ( x 1 , y 1 , z 1 ) , B ( x 2 , y 2 , z 2 ) , C ( x 3 , y 3 , z 3 ) A(x_1,y_1,z_1),B(x_2,y_2,z_2),C(x_3,y_3,z_3) A(x1,y1,z1),B(x2,y2,z2),C(x3,y3,z3),在平面上任取一点 P ( x , y , z ) P(x,y,z) P(x,y,z)

P A = ( x 1 − x , y 1 − y , z 1 − z ) \mathbf{PA}=(x_1-x,y_1-y,z_1-z) PA=(x1x,y1y,z1z)

A B = ( x 2 − x 1 , y 2 − y 1 , z 2 − z 1 ) \mathbf{AB}=(x_2-x_1,y_2-y_1,z_2-z_1) AB=(x2x1,y2y1,z2z1)

A C = ( x 3 − x 1 , y 3 − y 1 , z 3 − z 1 ) \mathbf{AC}=(x_3-x_1,y_3-y_1,z_3-z_1) AC=(x3x1,y3y1,z3z1)

[ P A , A B , A C ] = 0 [\mathbf{PA},\mathbf{AB},\mathbf{AC}]=0 [PA,AB,AC]=0
( x 1 − x y 1 − y z 1 − z x 2 − x 1 y 2 − y 1 z 2 − z 1 x 3 − x 1 y 3 − y 1 z 3 − z 1 ) = 0 \left(\begin{array}{l} x_1-x&y_1-y&z_1-z\\ x_2-x_1&y_2-y_1&z_2-z_1\\ x_3-x_1&y_3-y_1&z_3-z_1 \end{array} \right)=0 x1xx2x1x3x1y1yy2y1y3y1z1zz2z1z3z1 =0

也可以直接根据 A B × A C \mathbf{AB}\times\mathbf{AC} AB×AC构造法向量,然后用点法式。

4.截距式

若平面和三坐标轴分别相交于A(a,0,0),B(0,b,0),C(0,0,c),则从上面的三点式可以得:
( a − x − y − z − a b 0 − a 0 c ) = 0 b c x + a c y + a b z = a b c x a + y b + z c = 1 \left(\begin{array}{l} a-x&-y&-z\\ -a&b&0\\ -a&0&c \end{array} \right)=0 \\ bcx+acy+abz=abc\\ \frac xa+\frac yb+\frac zc=1 axaayb0z0c =0bcx+acy+abz=abcax+by+cz=1
对于一般式: A x + B y + C z = D Ax+By+Cz=D Ax+By+Cz=D

=> A D x + B D y + C D z = 1 \frac ADx+\frac BDy+\frac CDz=1 DAx+DBy+DCz=1

A D = 1 a ; B D = 1 b ; C D = 1 c \frac AD=\frac 1a;\frac BD=\frac 1b;\frac CD=\frac1c DA=a1;DB=b1;DC=c1

二、平面和平面的关系

假设有两个平面,平面方程分别为 A 1 x + B 1 y + C 1 z + D 1 = 0 , A 2 x + B 2 y + C 2 z + D 2 = 0 A_1x+B_1y+C_1z+D_1=0,A_2x+B_2y+C_2z+D_2=0 A1x+B1y+C1z+D1=0,A2x+B2y+C2z+D2=0

1.垂直

两平面垂直的时候两平面对应法向量也垂直。

n 1 ⋅ n 2 = 0 \mathbf{n_1}\cdot \mathbf{n_2}=0 n1n2=0

2.平行(不重叠)

n 1 / / n 2 \mathbf{n_1}//\mathbf{n_2} n1//n2

  • n 1 = k n 2 ( k ≠ 0 ) \mathbf{n_1}=k\mathbf{n_2}(k\ne 0) n1=kn2(k=0)
  • n 1 × n 2 = 0 \mathbf{n_1}\times\mathbf{n_2}=0 n1×n2=0
  • A 1 A 2 = B 1 B 2 = C 1 C 2 = λ , D 1 D 2 ≠ λ \frac{A_1}{A_2}=\frac{B_1}{B_2}=\frac{C_1}{C_2}=\lambda,\frac{D_1}{D_2}\ne \lambda A2A1=B2B1=C2C1=λ,D2D1=λ

3.重叠

n 1 = n 2 \mathbf{n_1}=\mathbf{n_2} n1=n2

  • n 1 = k n 2 \mathbf{n_1}=k\mathbf{n_2} n1=kn2
  • A 1 A 2 = B 1 B 2 = C 1 C 2 = D 1 D 2 = λ \frac{A_1}{A_2}=\frac{B_1}{B_2}=\frac{C_1}{C_2}=\frac{D_1}{D_2}=\lambda A2A1=B2B1=C2C1=D2D1=λ

4.相交

不平行,可能垂直的状态。

  • n 1 ≠ k n 2 \mathbf{n_1}\ne k\mathbf{n_2} n1=kn2
  • n 1 × n 2 ≠ 0 \mathbf{n_1}\times\mathbf{n_2}\ne0 n1×n2=0

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python 课程23-LibROSA

前言 LibROSA 是一个用于音频分析的 Python 库,特别擅长音乐信号处理和音频特征提取。它提供了广泛的工具来处理音频文件,包括加载、变换、特征提取、可视化等功能。LibROSA 在音乐信息检索(MIR)、机器学习中的音频预处理和音频信…

java发送邮件email实战

1.首先在项目中增加依赖&#xff0c;在pom文件中添加如下坐标 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-mail</artifactId></dependency>2.发邮件工具类如下 package com.example.demo.…

安卓13默认使用大鼠标 与配置分析 andriod13默认使用大鼠标 与配置分析

总纲 android13 rom 开发总纲说明 文章目录 1.前言2.问题分析3.代码分析4.代码修改5.彩蛋1.前言 android13里面的鼠标貌似比以前版本的鼠标小了,有些客户想要把这个鼠标改大。这个功能,android有现成的,就在这里,设置 =》无障碍 =》色彩和动画 =》 大号鼠标指针。 我们通过…

JavaWeb - 8 - 请求响应 分层解耦

请求响应 请求&#xff08;HttpServletRequest&#xff09;&#xff1a;获取请求数据 响应&#xff08;HttpServletResponse&#xff09;&#xff1a;设置响应数据 BS架构&#xff1a;Browser/Server&#xff0c;浏览器/服务器架构模式。客户端只需要浏览器&#xff0c;应用程…

【解决方案】关于 UART 接收数据时丢失数据的解决办法——环形缓冲存储区

文章目录 UART 通信丢失数据的常见原因总结串口&#xff08;UART&#xff09;数据丢失 Bug 的复现引入环形队列解决数据丢失问题总结 在嵌入式系统和物联网&#xff08;IoT&#xff09;设备中&#xff0c;串行通信是一种非常普遍且重要的数据传输方式。无论是通过 UART、RS-232…

【Godot4.3】基于中心点连线的矩形重叠检测

概述 这个方法是我自己想到的&#xff0c;经典的矩形重叠&#xff08;碰撞&#xff09;检测&#xff0c;是一段很复杂的逻辑判断&#xff0c;而根据两个矩形中点连线&#xff0c;与两个矩形宽度和高度之和一半的比较&#xff0c;就可以判断两个矩形是否重叠&#xff0c;并且能…

SQL进阶技巧:统计各时段观看直播的人数

目录 0 需求描述 1 数据准备 2 问题分析 3 小结 如果觉得本文对你有帮助&#xff0c;那么不妨也可以选择去看看我的博客专栏 &#xff0c;部分内容如下&#xff1a; 数字化建设通关指南 专栏 原价99&#xff0c;现在活动价39.9&#xff0c;十一国庆后将上升至59.9&#…

TransFormer 视频笔记

TransFormer BasicsAttention单头注意力 single head attentionQ&#xff1a; query 查寻矩阵 128*12288K key matrix 128*12288SoftMax 归一 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/19e3cf1ea28442eca60d5fc1303921f4.png)Value matrix 12288*12288 MLP Bas…

边缘概率 | 条件概率

关于什么是边缘概率分布和条件概率分布&#xff0c;在理论上&#xff0c;我自己也还没有理解&#xff0c;那么现在就根据我学习到的理解方式来记录一下&#xff0c;有错误指出&#xff0c;请大家指正&#xff01;&#xff01;&#xff01; 例如&#xff0c;一个箱子里有十个乒乓…

YOLO11改进|上采样篇|引入CARAFE上采样模块

目录 一、CARAFE上采样模块1.1CARAFE上采样模块介绍1.2CARAFE核心代码 五、添加MLCA注意力机制5.1STEP15.2STEP25.3STEP35.4STEP4 六、yaml文件与运行6.1yaml文件6.2运行成功截图 一、CARAFE上采样模块 1.1CARAFE上采样模块介绍 CARAFE 的主要思想&#xff1a; 将特征图的上采…

C# (.net6)实现Redis发布和订阅简单案例

概念&#xff1a; 在 .NET 6 中使用 Redis 的/订发布阅模式。发布/订阅&#xff08;Pub/Sub&#xff09;是 Redis 支持的一种消息传递模式&#xff0c;其中一个或多个发布者向一个或多个订阅者发送消息,Redis 客户端可以订阅任意数量的频道。 多个客户端可以订阅一个相同的频道…

【Java】—— 集合框架:Collection接口中的方法与迭代器(Iterator)

目录 1. 集合框架概述 1.1 生活中的容器 1.2 数组的特点与弊端 1.3 Java集合框架体系 1.4 集合的使用场景 2. Collection接口及方法 2.1 添加 2.2 判断 2.3 删除 2.4 其它 3. Iterator(迭代器)接口 3.1 Iterator接口 3.2 迭代器的执行原理 3.3 foreach循环 1. 集…

【rust/egui/android】在android中使用egui库

文章目录 说在前面AndroidStudio安装编译安装运行问题 说在前面 操作系统&#xff1a;windows11java版本&#xff1a;23android sdk版本&#xff1a;35android ndk版本&#xff1a;22rust版本&#xff1a; AndroidStudio安装 安装AndroidStudio是为了安装sdk、ndk&#xff0c;…

【Matlab绘图】从Excel导入表格并进行三维绘图

前言 今天手头上拿到一份论文的xlsx数据&#xff0c;要求使用MATLAB绘制进行三维图标坐标绘制。那么我们来看看如何使用如下数据进行绘图。 如上数据所示&#xff0c;数据是一个30行25列的数据&#xff0c;数据的内容是论文某项模型模拟的结果&#xff0c;我们希望把横坐标x取…

【ADC】ADC 系统失调和增益误差的校准方法

概述 本文学习于TI 高精度实验室课程&#xff0c;讨论如何计算增益和偏移误差并通过校准消除。首先对数据转换器系统进行偏移和增益误差计算&#xff0c;然后讨论几种校准此误差的方法。最后介绍一些难以校准的误差源。 文章目录 概述一、误差校准原理与方法二、实际应用问题举…

Linux进程概念二

我们利用fork函数来辅助我们讲解进程 首先认识两个调用进程地址的函数&#xff1a;getpid(),和getppid()&#xff0c;他们分别可以调用自己的pid和父进程的pid fork()可以在代码层面来创建子进程&#xff0c;一般而言&#xff0c;父进程fork出来的子进程与父进程代码和数据相…

【Docker】配置文件

问题 学习Docker期间会涉及到docker的很多配置文件&#xff0c;可能会涉及到的会有&#xff1a; /usr/lib/systemd/system/docker.service 【docker用于被systemd管理的配置文件】 /etc/systemd/system/docker.service.d【覆盖配置文件的存放处】 /etc/systemd/system/mul…

[Cocoa]_[初级]_[绘制文本如何设置断行效果]

场景 在开发Cocoa程序时&#xff0c;表格NSTableView是经常使用的控件。其基于View Base的视图单元格模式就是使用NSCell或其子类来控制每个单元格的呈现。当一个单元格里的文字过多时&#xff0c;需要截断超出宽度的文字&#xff0c;怎么实现&#xff1f; 说明 Cocoa下的文本…

【java数据结构】顺序表

【java数据结构】顺序表 一、了解List接口二、顺序表2.1 线性表2.2 顺序表2.2.1 顺序表接口的实现给数组增加新元素判断数组数据是否为满在 pos 位置新增元素判定是否包含某个元素查找某个元素对应的位置获取 pos 位置的元素给 pos 位置的元素设为 value删除第一次出现的关键字…

Manim:使用Python绘制数学动画

Manim是一个由3Blue1Brown的Grant Sanderson开发的开源框架&#xff0c;用户可以通过编写Python代码来创建数学动画&#xff0c;适用于教学、科研和科普宣传等多个领域。 Manim的核心功能之一是动画效果的创建和控制。它提供了多种动画效果&#xff0c;如创建、变换、淡入淡出…