当前位置: 首页 > news >正文

利用叉积计算向量的旋向及折线段的拐向

一、向量叉积

两个向量 u u u v v v的叉积写作 u × v = n ∥ u ∥ ∥ v ∥ s i n θ \mathbf{u \times v = n \left \| u \right \| \left \| v \right \| sin\theta } u×v=nuvsinθ
式中, n n n: 与 u u u v v v均垂直的单位向量,theta是两向量的夹角。
在这里插入图片描述
叉积的w长度可以解释成以 u u u v v v为边的四边形的面积。同样,三重积是以 u u u v v v w w w为边的平行六面体的体积。

二、向量的旋向

设平面内两向量 P 1 = ( x 1 , y 1 ) P_{1} =(x_1, y_1) P1=(x1,y1) P 2 = ( x 2 , y 2 ) P_{2} =(x_2, y_2) P2=(x2,y2)。由叉积定义,两向量叉积的模是原点o、 P 1 P_1 P1 P 2 P_2 P2组成的平行四边形的带符号的面积:
在这里插入图片描述
即: C = ∥ P 1 × P 2 ∥ = ∣ x 1 y 1 x 2 y 2 ∣ = x 1 y 2 − x 2 y 1 C=\left \| P_1\times P_2 \right \| = \begin{vmatrix} x_1 & y_1\\ x_2 & y_2 \end{vmatrix} = x_1y_2-x_2y_1 C=P1×P2= x1x2y1y2 =x1y2x2y1
叉积一个非常重要的性质是可以通过其模 C C C的符号判断两向量相互之间的顺时针、逆时针关系:

  1. C>0, 则 P 2 P_2 P2 P 1 P_1 P1的逆时针方向;
  2. C<0, 则 P 2 P_2 P2 P 1 P_1 P1的顺时针方向;
  3. C>0, 则 P 2 P_2 P2 P 1 P_1 P1共线,可能同向也可能反向;

三、折线段的拐向

折线段的拐向判断方法可以直接由向量叉积的性质推出。设 P 1 ( x 1 , y 1 ) P_1(x_1, y_1) P1(x1,y1) P 2 ( x 2 , y 2 ) P_2(x_2, y_2) P2(x2,y2) P 3 ( x 3 , y 3 ) P_3(x_3, y_3) P3(x3,y3),对于有公共端点 P 2 P_2 P2的线段 P 1 P 2 P_1P_2 P1P2 P 2 P 3 P_2P_3 P2P3,通过计算 C = ∥ ( P 2 − P 1 ) × ( P 3 − P 2 ) ∥ C=\left \| (P_2-P_1)\times \right (P_3-P_2)\| C=(P2P1)×(P3P2)的符号便可确定折线的拐向。

  1. 若C>0, P 1 P 2 P_1P_2 P1P2 P 2 P_2 P2点逆时针旋转后得到 P 2 P 3 P_2P_3 P2P3,此时 P 2 P_2 P2是凸点
  2. 若C<0, P 1 P 2 P_1P_2 P1P2 P 2 P_2 P2点顺时针旋转后得到 P 2 P 3 P_2P_3 P2P3,此时 P 2 P_2 P2是凹点
  3. 若C=0, P 1 、 P 2 、 P 3 P_1、P_2、P_3 P1P2P3三点共线
    在这里插入图片描述

相关文章:

利用叉积计算向量的旋向及折线段的拐向

一、向量叉积 两个向量 u u u、 v v v的叉积写作 u v n ∥ u ∥ ∥ v ∥ s i n θ \mathbf{u \times v n \left \| u \right \| \left \| v \right \| sin\theta } uvn∥u∥∥v∥sinθ 式中&#xff0c; n n n: 与 u u u、 v v v均垂直的单位向量&#xff0c;theta是两向量…...

Vmware 扩展硬盘空间后的操作-Ubuntu

在VMware中扩展了Ubuntu虚拟机的硬盘容量后&#xff0c;你需要在Ubuntu内部进行操作才能使用新增的空间。过程包括为增加的空间建立分区、格式化以及挂载该分区供使用。下面是具体的步骤&#xff1a; 首先登录到你的Ubuntu系统&#xff0c;用lsblk命令查看分区情况。这样你可以…...

Rust错误处理:Result

文章目录 简介错误匹配 Rust基础教程&#xff1a; 初步⚙ 所有权⚙ 结构体和枚举类⚙ 函数进阶⚙ 泛型和特征⚙ 并发和线程通信⚙ cargo包管理⚙ 可空类型Option Rust进阶教程&#xff1a; 用宏实现参数可变的函数⚙ 类函数宏 简介 Rust中没有提供类似try…catch之类…...

1410.HTML 实体解析器

​​题目来源&#xff1a; leetcode题目&#xff0c;网址&#xff1a;1410. HTML 实体解析器 - 力扣&#xff08;LeetCode&#xff09; 解题思路&#xff1a; 使用map存放特殊字符串及其应被替换为的字符串。然后遍历字符串替换 map 中的字符串即可。 解题代码&#xff1a; …...

Python通过串口收发文件

单位内外网是隔离的,USB对拷线被禁用,安全优盘使用太费事,就想到了通过串口传输文件. import serial from xmodem import XMODEM import osdef Send_File(filepath, portCOM8, baudrate115200):bn os.path.basename(filepath)filesize os.stat(filepath).st_sizestrSendFile…...

[crash] cxa_pure_virtual 崩溃分析与原理

摘要&#xff1a;工作过程中处理线上的崩溃时发现了一例cxa_pure_virtual相关的crash&#xff0c;直接看堆栈基本山很容易确认是有异步调用导致出发了ABI的异常。但是对于为什么会触发cxa_pure_virtual虽然有大致的猜测但是没有直接的证据&#xff0c;因此本文主要描述触发该类…...

2023年学习Go语言是否值得?探索Go语言的魅力

关注公众号【爱发白日梦的后端】分享技术干货、读书笔记、开源项目、实战经验、高效开发工具等&#xff0c;您的关注将是我的更新动力&#xff01; 作为一门流行且不断增长的编程语言&#xff0c;Go语言在2023年是否值得学习呢&#xff1f;让我们来看看学习Go语言的好处以及为何…...

【C++11】=default与=delete关键字使用详解

系列文章目录 C11新特性使用详解-持续更新 文章目录 系列文章目录一、default关键字1. 为什么要引入default关键字2. 注意事项3. 使用default关键字有什么好处4.实例代码 二、delete关键字1. 为什么要引入delete关键字2. 注意事项3. 使用场景3.1删除默认构造函数3.2 删除拷贝构…...

[开源]Web端的P2P文件传输工具,简单安全高效的P2P文件传输服务

一、开源项目简介 小鹿快传 - 在线P2P文件传输工具 小鹿快传是一款Web端的P2P文件传输工具&#xff0c;使用了WebRTC技术实现P2P连接和文件传输。 二、开源协议 使用MIT开源协议 三、界面展示 产品截图 四、功能概述 简单安全高效的P2P文件传输服务 小鹿快传是一款Web端…...

边缘计算多角色智能计量插座 x 资产显示标签:实现资产追踪与能耗管理的无缝结合

越来越多智慧园区、智慧工厂、智慧医院、智慧商业、智慧仓储物流等企业商家对精细化、多元化智能生态应用场景的提升&#xff0c;顺应国家节能减排、环保的时代潮流&#xff0c;设计一款基于融合以太网/WiFi/蓝牙智能控制的智能多角色插座应运而生&#xff0c;赋予智能插座以遥…...

chromium证书校验流程SM2WithSM3(C++源码说明)

文章目录 一、证书链二、证书链校验过程三、证书链签名校验图解四、C++源码4.1 编译TASSL4.2 代码一,直接读取签名值方法4.3 代码二(推荐)4.3.1 获取证书的签名数据4.3.2 获取证书的签名值4.3.3 从证书中获取公钥4.3.4 完整代码4.3.5 代码地址五、补充说明5.1 SM2的Z值算法以…...

3分钟使用 WebSocket 搭建属于自己的聊天室(WebSocket 原理、应用解析)

文章目录 WebSocket 的由来WebSocket 是什么WebSocket 优缺点优点缺点 WebSocket 适用场景主流浏览器对 WebSocket 的兼容性WebSocket 通信过程以及原理建立连接具体过程示例Sec-WebSocket-KeySec-WebSocket-Extensions 数据通信数据帧帧头&#xff08;Frame Header&#xff09…...

Jina AI 的 8K 向量模型上线 AWS Marketplace,支持本地部署!

在当前多模态 AI 和大模型技术风头正劲的背景下&#xff0c;Jina AI 始终领跑于创新前沿&#xff0c;技术领先。2023 年 10 月 30 日&#xff0c;Jina AI 隆重推出 jina-embeddings-v2&#xff0c;这是全球首款支持 8192 输入长度的开源向量大模型&#xff0c;其性能媲美 OpenA…...

ubuntu上查看各个进程的实时CPUMEM占用的办法

top常见参数top界面分析system monitorhtop1、查看htop的使用说明2、显示树状结构3、htop使用好文推荐top top的用法应该是最为普遍的 常见参数 -d 更新频率,top显示的界面几秒钟更新一次 -n 更新的次数,top显示的界面更新多少次之后就自动结束了 当然也可以将top日志通过…...

电大搜题——打开学习之门的最佳选择

在快节奏的现代社会&#xff0c;追求知识和学习成为愈发重要的需求。然而&#xff0c;许多人由于时间和机会的限制&#xff0c;无法实现自己的教育梦想。就在这个时候&#xff0c;安徽开放大学广播电视大学通过推出电大搜题微信公众号&#xff0c;为广大学子提供了一个便捷高效…...

[论文笔记] Scaling Laws for Neural Language Models

概览: 一、总结 计算量、数据集大小、模型参数量大小的幂律 与 训练损失呈现 线性关系。 三个参数同时放大时,如何得到最佳的性能? 更大的模型 需要 更少的样本 就能达到相同的效果。 </...

【每日OJ —— 622. 设计循环队列】

每日OJ —— 622. 设计循环队列 1.题目&#xff1a;622. 设计循环队列2.解法2.1.解法讲解2.1.1.算法讲解2.1.2.代码实现2.1.3.提交通过展示 1.题目&#xff1a;622. 设计循环队列 2.解法 1.本题有很多解法&#xff1a;可以使用数组&#xff0c;单链表&#xff0c;双链表&#x…...

【Vue】生命周期一文详解

目录 一、beforeCreate 下面是一个beforeCreate的简单使用示例&#xff1a; 在控制台输出before create hook。 二、created 下面是一个created的简单使用示例&#xff1a; 在控制台输出created hook。 三、beforeMount 下面是一个beforeMount的简单使用示例&#xff1…...

JVM垃圾回收相关算法

目录 一、前言 二、标记阶段&#xff1a;引用计数算法 三、标记阶段&#xff1a;可达性分析算法 &#xff08;一&#xff09;基本思路 &#xff08;二&#xff09;GC Roots对象 四、对象的finalization机制 五、MAT与JProfiler的GC Roots溯源 六、清除阶段&#xff1a;…...

crontab 无法激活、启动 pyenv failed to activate virtualenv

root crontab 无法激活、启动 pyenv crontab代码 30 1 * * * sh /data/work/roop/sh/startSwapFaceDev.sh > /dev/null 2>&1 sh核心代码 echo "${YELLOW}pyenv activate ${venv} ${NOCOLOR}" eval "$(pyenv init -)" eval "$(pyenv v…...

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…...

微信小程序之bind和catch

这两个呢&#xff0c;都是绑定事件用的&#xff0c;具体使用有些小区别。 官方文档&#xff1a; 事件冒泡处理不同 bind&#xff1a;绑定的事件会向上冒泡&#xff0c;即触发当前组件的事件后&#xff0c;还会继续触发父组件的相同事件。例如&#xff0c;有一个子视图绑定了b…...

Axios请求超时重发机制

Axios 超时重新请求实现方案 在 Axios 中实现超时重新请求可以通过以下几种方式&#xff1a; 1. 使用拦截器实现自动重试 import axios from axios;// 创建axios实例 const instance axios.create();// 设置超时时间 instance.defaults.timeout 5000;// 最大重试次数 cons…...

根据万维钢·精英日课6的内容,使用AI(2025)可以参考以下方法:

根据万维钢精英日课6的内容&#xff0c;使用AI&#xff08;2025&#xff09;可以参考以下方法&#xff1a; 四个洞见 模型已经比人聪明&#xff1a;以ChatGPT o3为代表的AI非常强大&#xff0c;能运用高级理论解释道理、引用最新学术论文&#xff0c;生成对顶尖科学家都有用的…...

OpenLayers 分屏对比(地图联动)

注&#xff1a;当前使用的是 ol 5.3.0 版本&#xff0c;天地图使用的key请到天地图官网申请&#xff0c;并替换为自己的key 地图分屏对比在WebGIS开发中是很常见的功能&#xff0c;和卷帘图层不一样的是&#xff0c;分屏对比是在各个地图中添加相同或者不同的图层进行对比查看。…...

JavaScript基础-API 和 Web API

在学习JavaScript的过程中&#xff0c;理解API&#xff08;应用程序接口&#xff09;和Web API的概念及其应用是非常重要的。这些工具极大地扩展了JavaScript的功能&#xff0c;使得开发者能够创建出功能丰富、交互性强的Web应用程序。本文将深入探讨JavaScript中的API与Web AP…...

作为测试我们应该关注redis哪些方面

1、功能测试 数据结构操作&#xff1a;验证字符串、列表、哈希、集合和有序的基本操作是否正确 持久化&#xff1a;测试aof和aof持久化机制&#xff0c;确保数据在开启后正确恢复。 事务&#xff1a;检查事务的原子性和回滚机制。 发布订阅&#xff1a;确保消息正确传递。 2、性…...

C++实现分布式网络通信框架RPC(2)——rpc发布端

有了上篇文章的项目的基本知识的了解&#xff0c;现在我们就开始构建项目。 目录 一、构建工程目录 二、本地服务发布成RPC服务 2.1理解RPC发布 2.2实现 三、Mprpc框架的基础类设计 3.1框架的初始化类 MprpcApplication 代码实现 3.2读取配置文件类 MprpcConfig 代码实现…...

Pydantic + Function Calling的结合

1、Pydantic Pydantic 是一个 Python 库&#xff0c;用于数据验证和设置管理&#xff0c;通过 Python 类型注解强制执行数据类型。它广泛用于 API 开发&#xff08;如 FastAPI&#xff09;、配置管理和数据解析&#xff0c;核心功能包括&#xff1a; 数据验证&#xff1a;通过…...

命令行关闭Windows防火墙

命令行关闭Windows防火墙 引言一、防火墙:被低估的"智能安检员"二、优先尝试!90%问题无需关闭防火墙方案1:程序白名单(解决软件误拦截)方案2:开放特定端口(解决网游/开发端口不通)三、命令行极速关闭方案方法一:PowerShell(推荐Win10/11)​方法二:CMD命令…...