【几何】平面方程

文章目录

  • 平面方程
    • 一般式
    • 截距式
    • 点法式
    • 法线式

平面方程

平面方程是用一个方程来表示平面,平面上的所有点代入方程,方程都成立。因为用法的不同,平面方程一般有四种表现形式。

一般式

n ⃗ = ( A , B , C ) \vec n=(A,B,C) n =(A,B,C) 为平面的法线, p 0 ( x 0 , y 0 , z 0 ) p_0(x_0, y_0, z_0) p0(x0,y0,z0) p ( x , y , z ) p(x, y, z) p(x,y,z) 为平面上两点。我们知道两个垂直向量的点乘为0,则平面的法线和平面上两点组成向量的点乘也为0,则 n ⃗ ∗ p 0 p → = 0 \vec n * \overrightarrow {p_0p} = 0 n p0p =0 , 可以得出
n ⃗ ∗ ( p − p 0 ) = 0 n ⃗ ∗ p − n ⃗ ∗ p 0 = 0 由于 n ⃗ 和 p 0 已知,设常数 D = − n ⃗ ∗ p 0 , 则 n ⃗ ∗ p + D = 0 A ∗ x + B ∗ y + C ∗ z + D = 0 \vec n * (p - p_0) = 0 \\ \vec n * p - \vec n * p_0 = 0 \\ 由于\vec n和p_0已知,设常数D = -\vec n * p_0,则 \\ \vec n * p + D = 0 \\ A*x+B*y+C*z+D=0 n (pp0)=0n pn p0=0由于n p0已知,设常数D=n p0,n p+D=0Ax+By+Cz+D=0
平面的一般式为 A ∗ x + B ∗ y + C ∗ z + D = 0 A*x+B*y+C*z+D=0 Ax+By+Cz+D=0,其中 ( A , B , C ) (A, B, C) (A,B,C)为平面的法线, − D -D D为原点 o ( 0 , 0 , 0 ) o(0,0,0) o(0,0,0)到平面的垂直距离, n ⃗ ∗ p 0 = n ⃗ ∗ o p 0 → \vec n * p_0 = \vec n * \overrightarrow {op_0} n p0=n op0 ,为 o p 0 → \overrightarrow {op_0} op0 n ⃗ \vec n n 方向上的投影距离。

截距式

现在已知平面的一般式为 A ∗ x + B ∗ y + C ∗ z + D = 0 A*x+B*y+C*z+D=0 Ax+By+Cz+D=0

a = − D / A , b = − D / B , c = − D / C a=-D/A,b=-D/B,c=-D/C a=D/A,b=D/B,c=D/C, 则 A = − D / a , B = − D / b , c = − D / C A=-D/a,B=-D/b,c=-D/C A=D/a,B=D/b,c=D/C, 原式可改为
− D a ∗ x − D b ∗ y − D c ∗ z + D = 0 − D ∗ ( 1 a ∗ x + 1 b ∗ y + 1 c ∗ z ) + D = 0 1 a ∗ x + 1 b ∗ y + 1 c ∗ z = 1 -\frac{D}{a}*x-\frac{D}{b}*y-\frac{D}{c}*z+D=0 \\ -D*(\frac{1}{a}*x+\frac{1}{b}*y+\frac{1}{c}*z)+D=0 \\ \frac{1}{a}*x+\frac{1}{b}*y+\frac{1}{c}*z=1 \\ aDxbDycDz+D=0D(a1x+b1y+c1z)+D=0a1x+b1y+c1z=1
平面的截距式为 1 a ∗ x + 1 b ∗ y + 1 c ∗ z = 1 \frac{1}{a}*x+\frac{1}{b}*y+\frac{1}{c}*z=1 a1x+b1y+c1z=1,其中 a , b , c a,b,c a,b,c分别为平面与xyz轴的交点。

点法式

已知平面的法线 n ⃗ \vec n n 和平面上的两点 p 、 p 0 p、p_0 pp0 ,求平面的方程。和上面一般式的求取过程是一样的,只不过得到的最后的表达方式不同。
n ⃗ ∗ ( p − p 0 ) = 0 A ∗ ( x − x 0 ) + B ∗ ( y − y 0 ) + C ∗ ( c − c 0 ) = 0 \vec n * (p - p_0) = 0 \\ A*(x-x_0)+B*(y-y_0)+C*(c-c_0)=0 n (pp0)=0A(xx0)+B(yy0)+C(cc0)=0
平面的点法式为 A ∗ ( x − x 0 ) + B ∗ ( y − y 0 ) + C ∗ ( c − c 0 ) = 0 A*(x-x_0)+B*(y-y_0)+C*(c-c_0)=0 A(xx0)+B(yy0)+C(cc0)=0,其中 ( A , B , C ) (A, B, C) (A,B,C)为平面的法线, ( x 0 , y 0 , z 0 ) (x_0,y_0,z_0) (x0,y0,z0) 为平面上的一点。

法线式

已知平面的法线和原点到平面的距离,求平面的方程。法线式和一般式几乎是一样的。

n ⃗ = ( A , B , C ) \vec n=(A,B,C) n =(A,B,C) ,那么 n ⃗ \vec n n 与xyz三个坐标轴的余弦值是多少呢?

n ⃗ \vec n n 与xyz的夹角分别为 α , β , γ \alpha,\beta,\gamma α,β,γ ,则
cos ⁡ α = ( A , B , C ) ∗ ( 1 , 0 , 0 ) = A cos ⁡ β = ( A , B , C ) ∗ ( 0 , 1 , 0 ) = B cos ⁡ γ = ( A , B , C ) ∗ ( 0 , 0 , 1 ) = C 则 cos ⁡ α ∗ x + cos ⁡ β ∗ y + cos ⁡ γ ∗ z + D = 0 设 p = − D , 得 cos ⁡ α ∗ x + cos ⁡ β ∗ y + cos ⁡ γ ∗ z = p \cos \alpha=(A,B,C)*(1,0,0)=A \\ \cos \beta=(A,B,C)*(0,1,0)=B \\ \cos \gamma=(A,B,C)*(0,0,1)=C \\ 则\cos \alpha*x+\cos \beta*y+\cos \gamma*z+D=0 \\ 设p=-D,得 \cos \alpha*x+\cos \beta*y+\cos \gamma*z=p cosα=(A,B,C)(1,0,0)=Acosβ=(A,B,C)(0,1,0)=Bcosγ=(A,B,C)(0,0,1)=Ccosαx+cosβy+cosγz+D=0p=D,cosαx+cosβy+cosγz=p
平面的法线式为 cos ⁡ α ∗ x + cos ⁡ β ∗ y + cos ⁡ γ ∗ z = p \cos \alpha*x+\cos \beta*y+\cos \gamma*z=p cosαx+cosβy+cosγz=p ,其中 ( cos ⁡ α , cos ⁡ β , cos ⁡ γ ) (\cos \alpha,\cos \beta,\cos \gamma) (cosα,cosβ,cosγ) 为平面的法线, p p p 为原点离平面的垂直距离。

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

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

相关文章

信号处理--基于FBCSP滤波方法的运动想象分类

目录 理论 工具 方法 代码获取 理论 通用空间模式 (CSP) 算法可以用来有效构建最佳空间滤波器区分,然后实现运动想象的数据中的脑电信号的区分。然而,空间滤波器性能的好坏主要取决于其工作频带。如果脑电信号没有经过滤波或者滤波的频带范围不合适…

Django 铺垫

【一】基础知识点 【1】web框架的本质 Web框架本质上可以看成是一个功能强大的socket服务端用户的浏览器可以看成是拥有可视化界面的socket客服端两种通过网络请求实现数据交互 【2】浏览器发送请求 (1)HTTP协议 HTTP协议是超文本传输协议&#xff…

【云开发笔记No.15】持续改进与反馈

一、引言 在产品研发过程中,反馈机制是确保项目顺利进行并最终达到预期目标的关键环节。它不仅能够及时发现和纠正开发过程中的问题,还能促进团队成员之间的有效沟通,提高开发效率。持续改进作为现代研发管理的重要理念,与反馈机…

RabbitMQ的事务机制

想要保证发送者一定能把消息发送给RabbitMQ,一种是通过Confirm机制,另一种就是通过事务机制。 RabbitMQ的事务机制,允许生产者将一组操作打包成一个原子事务单元,要么全部执行成功,要么全部失败。事务提供了一种确保消…

wireshark下载

一、官网下载 www.wireshark.org 二、各版本链接 链接:Index of /download/

FPGA使用XADC测量外部模拟输入电压

一、XADC简介 1.1、特性 Xilinx系列的FPGA中都包含了一个内置的XADC,我们可以通过这个XADC进行一些精度不高的外部模拟信号采样以及FPGA片内传感器信号采集。XADC的分辨率为12位,采样率为1MSPS。 1.2、结构框图 两片XADC,ADC A可用于片内…

SpringJPA 做分页条件查询

前言: 相信小伙伴们的项目很多都用到SpringJPA框架的吧,对于单表的增删改查利用jpa是很方便的,但是对于条件查询并且分页 是不是很多小伙伴不经常写到. 今天我整理了一下在这里分享一下. 话不多说直接上代码: Controller: RestController public class ProductInstanceContr…

12 React 组件通信 兄弟组件之间通信

12 React 组件通信 兄弟组件之间通信 在React中实现兄弟组件通信相对于父子组件通信来说稍微复杂一些,因为React本身是基于单向数据流的,兄弟组件之间并没有直接的通信途径。不过可以通过以下几种方式实现兄弟组件通信: 通过共同的父组件传递…

Apache HTTP服务器(Linux离线编译安装)

Apache HTTP服务器(Linux离线编译安装) Apache是普通服务器,本身只支持html即普通网页。可以通过插件支持PHP,还可以与Tomcat连通(单向Apache连接Tomcat,就是说通过Apache可以访问Tomcat资源。反之不然)。 Apache和Tomcat都可以做为独立的w…

8个常见的数据可视化错误以及如何避免它们

在当今以数据驱动为主导的世界里,清晰且具有洞察力的数据可视化至关重要。然而,在创建数据可视化时很容易犯错误,这可能导致对数据的错误解读。本文将探讨一些常见的糟糕数据可视化示例,并提供如何避免这些错误的建议。 本文总结了…

Javascript由浅到深

关注我,持续分享逻辑思维&管理思维; 可提供大厂面试辅导、及定制化求职/在职/管理/架构辅导; 有意找工作的同学,请参考博主的原创:《面试官心得--面试前应该如何准备》,《面试官心得--面试时如何进行自…

蓝桥杯day11刷题日记

P8615 [蓝桥杯 2014 国 C] 拼接平方数 思路:先把数据范围内的平方数打上标记,然后就是遍历这个区间,转成字符串(好拆数据),用substr拆开数据,再强转成整数类型,最后查看拆开的数据是…

【WPF应用13】WPF基本控件-DockPanel布局详解与示例

引言 WPF (Windows Presentation Foundation) 是微软 .NET 框架的一个组成部分,它用于构建桌面应用程序的用户界面。在 WPF 中,控件是构建用户界面的基本元素,而布局控件则负责安排其他控件的位置和大小。DockPanel 是 WPF 中的一个布局控件&…

如何使用PHP和RabbitMQ实现消息队列?

前言 今天我们来做个小试验,用PHP和RabbitMQ实现消息队列功能。 前期准备,需要安装好docker、docker-compose的运行环境。 如何使用docker部署php服务_php如何使用docker发布-CSDN博客 一、安装RabbitMQ 1、创建相关目录,执行如下命令。…

计算机网络⑦ —— 网络层协议

1. ARP协议 在传输⼀个 IP 数据报的时候,确定了源 IP 地址和⽬标 IP 地址后,就会通过主机路由表确定 IP 数据包下⼀跳。然⽽,⽹络层的下⼀层是数据链路层,所以我们还要知道下⼀跳的 MAC 地址。由于主机的路由表中可以找到下⼀跳的…

手撕算法-接雨水

描述 分析 i位置能积累的雨水量,等于其左右两边最大高度的最小值。为了能获取i位置左右两边的最大高度。使用动态规划。两个dp数组: leftMaxrightMax 其中 leftMax[i] 代表i位置左边的最大高度rightMax[i] 代表i位置右边的最大高度 初始状态&#x…

npm 包管理工具:常用命令详解与使用指南

npm常用命令的更详细解释和使用场景: npm init 详细说明:此命令用于初始化一个新的Node.js项目。它会创建一个package.json文件,其中包含项目的基本信息,如名称、版本、描述、入口点(main file)、测试命令、…

Python Flask 自定义过滤器

{{ data.list | li2 }} li2就是自定义的 from flask import Flask, render_templateapp Flask(__name__)app.route("/index") def index():data {name: "张三","age": 18,list: [123123, 41, 123]}return render_template("index2.html…

[AIGC] 使用Spring Boot进行单元测试:一份指南

在现代软件开发过程中,确认你的应用正确运行是至关重要的一步。Spring Boot提供了一组实用工具和注解来辅助你在测试你的应用时,使得这个过程变得简单。下面就来分享一下如何在Spring Boot中进行单元测试。 文章目录 为什么需要单元测试Spring Boot单元测…

Redis中RDB中的文件写入

RDB文件的创建与载入。 有两个Redis命令可以用于生成RDB文件,一个是SAVE,另一个是BGSAVE. SAVE命令会阻塞Redis服务器进程,直到RDB文件创建完毕为止,在服务器进程阻塞期间,服务器 不能处理任何命令请求: 127.0.0.1:6…