垂直于给定点的线段

2024-01-06

我想计算给定线上与给定点垂直的点。

我有一条线段AB,在线段外有一个点C。我想计算AB上的点D,使得CD垂直于AB。

我必须找到D点。

它非常类似于this https://stackoverflow.com/questions/1811549/perpendicular-on-a-line-from-a-given-point,但我也想考虑 Z 坐标,因为它在 3D 空间中没有正确显示。


证明: D点在垂直于AB的直线CD上,当然D属于AB。 记下两个向量 CD.AB = 0 的点积,并将 D 属于 AB 的事实表示为 D=A+t(B-A)。

我们最终得到 3 个方程:

 Dx=Ax+t(Bx-Ax)
 Dy=Ay+t(By-Ay)
(Dx-Cx)(Bx-Ax)+(Dy-Cy)(By-Ay)=0

将前两个方程代入第三个方程可得:

(Ax+t(Bx-Ax)-Cx)(Bx-Ax)+(Ay+t(By-Ay)-Cy)(By-Ay)=0

分布求解 t 给出:

(Ax-Cx)(Bx-Ax)+t(Bx-Ax)(Bx-Ax)+(Ay-Cy)(By-Ay)+t(By-Ay)(By-Ay)=0

这使:

t= -[(Ax-Cx)(Bx-Ax)+(Ay-Cy)(By-Ay)]/[(Bx-Ax)^2+(By-Ay)^2]

摆脱消极迹象:

t=[(Cx-Ax)(Bx-Ax)+(Cy-Ay)(By-Ay)]/[(Bx-Ax)^2+(By-Ay)^2]

一旦有了 t,您就可以从前两个方程算出 D 的坐标。

 Dx=Ax+t(Bx-Ax)
 Dy=Ay+t(By-Ay)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

垂直于给定点的线段 的相关文章

  • 计算机如何评估巨大的数字?

    例如 如果我输入一个值 1234567 98787878 Wolfram Alpha 可以为我提供许多细节 这包括小数近似 总长度 最后一位数字等等 您如何评估如此大的数字 据我了解 编程语言必须具有特殊的数据类型才能存储数字 更不用说将其
  • 如何在 C# 中将 BigInteger 转换为 pow Double?

    我尝试使用BigInteger Pow计算类似 10 12345 987654321 的方法 但此方法只接受整数作为指数 如下所示 BigInteger Pow BigInteger x int y 那么如何在上述方法中使用双数作为指数呢
  • 带孔的多边形三角剖分

    我正在寻找一种算法或库 更好 将多边形分解为三角形 我将在 Direct3D 应用程序中使用这些三角形 最好的可用选项是什么 这是我到目前为止发现的 本 迪斯科的笔记 http www vterrain org Implementation
  • 透视变形矩形的比例

    给定一张被透视扭曲的矩形的二维图片 我知道这个形状原本是一个矩形 但我不知道它原来的大小 如果我知道这张图片中角点的像素坐标 我如何计算原始比例 即矩形的商 宽度 高度 背景 目标是自动使矩形文档的照片不失真 边缘检测可能会通过霍夫变换完成
  • 哪种编程语言或库可以处理无限级数?

    哪种编程语言或库能够处理无限级数 例如几何级数或调和级数 它可能必须有一些众所周知的系列的数据库 并在收敛的情况下自动给出适当的值 并且可能在发散的情况下生成异常 例如 在 Python 中 它可能如下所示 sum 0 sign 1 0 f
  • 在现代 x86-64 上计算 64 位整数的整数 Log10 的最快方法是什么?

    标题 我找到了大量 32 位示例 但没有找到完整的 64 位示例 使用这个帖子 https codegolf stackexchange com questions 47290 fastest way to compute order of
  • 将球面坐标转换为笛卡尔坐标然后再转换回笛卡尔坐标并不能给出所需的输出

    我正在尝试编写两个函数来将笛卡尔坐标转换为球面坐标 反之亦然 以下是我用于转换的方程式 也可以在此找到维基百科页面 https en wikipedia org wiki Spherical coordinate system And 这是
  • 如何使用NSDecimalNumber?

    我正在构建一个需要对金钱进行计算的应用程序 我想知道如何正确使用 NSDecimalNumber 特别是如何从整数 浮点数和双精度数初始化它 我只发现它很容易使用 decimalNumberWithString 方法 这 initWith
  • 从基本矩阵中查找单应矩阵

    我正在尝试计算单应性矩阵H给定一组对应关系和基本矩阵F 根据对极几何原理 我知道这可以通过对极线和对极线的叉积来完成F from 极点几何 http www cs unc edu marc tutorial node44 html e ij
  • Python OverflowError:数学范围错误[重复]

    这个问题在这里已经有答案了 当我尝试这个计算时 出现溢出错误 output math exp 1391 12694245 100 我知道发生这种情况是因为使用的数字 超出了双精度数的范围 但有什么方法可以解决这个问题并获得输出值 有人可以帮
  • Java 中的数学方程如何工作?

    当我做这样的事情时 int test 5 3 4 1 2 我得到 9 我怀疑这是因为 int 向下舍入 但是 当我这样做时 float test 5 3 4 1 2 我也得到 9 但是 当我这样做时 float test1 5 float
  • ValueError:数学域错误,不断弹出

    我时常收到此消息 我尝试了所有的变化 改变我使用 sqrt 的方式 一步一步地做 等等 但这个错误仍然不断出现 这可能是一个菜鸟错误 我没有注意到 因为我是 python 和 ubuntu 的新手 这是我的源代码 一个非常简单的程序 To
  • ID3和C4.5:“增益比”如何标准化“增益”?

    ID3算法使用 信息增益 度量 C4 5 使用 增益比 度量 即信息增益除以SplitInfo 然而SplitInfo对于记录在不同结果之间平均分配的分割 该值较高 否则较低 我的问题是 这如何帮助解决信息增益偏向于具有多种结果的分裂的问题
  • 在小于 O(n) 的时间内检查凸多边形交集?

    我有 2 个凸多边形 2d 我想检查这 2 个多边形是否相交 事实上 我会多次移动和旋转多边形 所以我也可以做一些预计算来获得这个问题的快速答案 我正在寻找一种低复杂度的算法 我知道可以检查一个点是否位于 O log n 的凸多边形中 我想
  • 如何将时间间隔划分为不同长度的部分?

    我有一个从 0 到t 我想把这个区间分成一个以2 25 2 25 1 5为周期的累积序列 方法如下 input start 0 stop 19 output sequence 0 2 25 4 5 6 8 25 10 5 12 14 25
  • Math.random() 解释

    这是一个非常简单的 Java 尽管可能适用于所有编程 问题 Math random 返回 0 到 1 之间的数字 如果我想返回零到百之间的整数 我会这样做 int Math floor Math random 101 在一到一百之间 我会这
  • 是否有任何算法可以计算给定定义形状的坐标的形状面积?

    所以我有一些接收 N 个随机数的函数2D点 是否有任何算法可以计算输入点定义的形状面积 你想要计算多边形的面积 http local wasp uwa edu au pbourke geometry polyarea 取自链接 转换为 C
  • 在 R 中根据时间序列数据制作 3D 曲面

    我有一个大型数据集 我想从中制作 3D 表面 我希望 x 轴为日期 y 轴为时间 24 小时 z 轴 高度 为我的值 我是 R 初学者 所以越简单越好 http www quantmod com examples chartSeries3d
  • Godot 3d 得到向前矢量

    我想知道是否有办法获取 godot 3d 中空间节点的前向向量 统一起来 这就是transform forward Godot 给了我一个旋转向量 但我不知道如何将其转换为方向向量 戈多版本的transform forward是什么 前进是
  • 最小对的总和

    Given 2N点 in a 2D plane 你必须将它们分组为N pairs使得所有对的点之间的距离的总和是最小可能值 所需的输出只是总和 换句话说 如果a1 a2 an分别是第一对 第二对 和第 n 对点之间的距离 则 a1 a2 a

随机推荐

  • 使用意图发送操作从 Android 应用程序共享图像是行不通的:(

    i m use Intent sharingIntent new Intent Intent ACTION SEND Uri screenshotUri Uri parse file res drawable u png sharingIn
  • 如何在Mysql Workbench GUI中查看表内容?

    如何在 Mysql Workbench GUI 中查看表内容 我的意思是 不是从命令行 首先从主屏幕打开到服务器的连接 SQL IDE 然后使用架构树中的上下文菜单来运行仅从所选表中选择行的查询 附加的限制是为了避免意外读取太多行 可以在首
  • 将消费计划上的 Azure Function App 设置为 64 位

    您可用于功能的新 消耗 层计划不允许您通过门户更改进程位数 我可以通过其他方式将进程翻转为 64 位 因为 DocDB 访问需要它 您可以通过 API 进行设置 但请注意 直到您看到该选项显示在门户中之前 它才得到正式支持 这是一个简单的方
  • iPhone Safari:滚动 html 容器内的列表

    我对此主题进行了大量研究 但尚未找到令人满意的答案 如何在其他 html 内容中制作可滚动列表 iPhone SDK 仪表板列表 如果我在 html 正文中创建一个列表并尝试滚动整个页面就会滚动 我知道有这种 双指 滚动 但这不是我想要的
  • 如何动态改变html元素的值?

    我试图在页面加载时在 UI 上加载初始参数虚拟数据 以便我可以使用真实数据进行自定义 因此在下面的代码中 当我在 UI 上更改并发送请求时 它总是采用最初加载到页面的 memberid 任何想法代码有什么问题吗 主要 html
  • 如何在opencart产品中设置自定义价格?

    我已经下载了最新版本的opencart 3 0 2 0 我的产品的定价取决于各种选项 即 尺寸 颜色 数量 对于数量 有没有默认设置价格范围的功能 例如1 500件一个价格 从501 1000折扣价 我的产品是腕带 所以我根据text他们想
  • 在技​​术绘图中绘制距离箭头

    我想在我的一幅图中指出距离 我想到的是他们在技术图纸中的做法 显示一个双头箭头 其旁边的距离为文本 Example from matplotlib pyplot import hlines 7 0 2 linestyles dashed h
  • 如何使用 ImageSharp 清除图像的 EXIF 数据?

    我发现一个 GitHub 问题 显示如何通过将其 ExifProfile 设置为 null 来删除图像的 exif 数据 SixLabors ImageSharp Image image Image Load imagePath remov
  • Kill -3 或 jstack :有什么区别?

    我想获取在 jboss 服务器上运行的 Web 应用程序的线程转储 我为我的问题找到了两个解决方案 使用unix命令 kill 3 使用JDK中存在的jstack工具 谁能向我解释这两种方法之间的区别 提前致谢 The jstack命令可以
  • 为什么 html 标签(s、strong)在 jasper 报告中不起作用?

    我添加了静态文本 html 标签 但单击预览后粗体和删除线无法正确显示 此外 当从数据库加载数据时 它无法正确显示 有什么解决办法吗 Jasper Report不支持所有html标签 支持的标签定义在样式文本示例 http jasperre
  • 导出的 pdf 中缺少 Jupyter 笔记本 matplotlib 数字

    在 jupyter 笔记本中生成 pdf 时 一切都很好 但我想将内联数字保留在 pdf 以及笔记本中 这是我的代码 matplotlib notebook import matplotlib pyplot as plt import nu
  • Xcode 7.3 - 警告未显示且无法搜索项目

    自从我升级到 Xcode 7 3 以来 我注意到在搜索工作区时总是 没有结果 并且警告窗格中也没有显示任何警告 有时它会工作几分钟然后再次死机 重新启动我的电脑 Xcode 然后重新安装都没有帮助 还有其他人遇到过这种情况或找到解决方案 解
  • 错误:预期声明说明符或“list_node”之前的“...”

    我有一个 Catalog h 文件 typedef struct node list node struct node operationdesc op ptr list node next 和一个 parser h 与此 include
  • 为什么我需要 DJANGO_SETTINGS_MODULE 设置?

    每次通过 SSH 登录服务器时 我都需要输入以下内容 export DJANGO SETTINGS MODULE settings 如果我不使用manage py模块就会失败 我的manage py添加了以下代码 if notificati
  • 在数据库上创建程序集时部署 SQL CLR 项目失败

    我用来创建程序集的服务器上的文件夹中有一个包含 3 个 dll 文件的文件夹 我首先尝试了以下代码 并收到一个错误 表示在服务器上找不到 system data datasetextensions dll 文件 我将 dll 从我的计算机复
  • 如何共享对 Firebase Analytics 数据的访问而不暴露 Firebase 的其余部分?

    我知道如何向 Firebase 项目添加协作者 并且可以为每个协作者分配特定的角色 这些角色与某些权限相关联 然而 似乎没有一个角色符合我的要求 我想与非技术营销人员共享 Firebase Analytics 的访问权限 我必须避免将 Fi
  • IIS - 以编程方式重置 SSL 会话

    我有一个 IIS 7 5 Web 应用程序 客户端使用双向 又称双向 SSL 连接到该应用程序 客户端证书由智能卡提供 我需要让网络应用程序超时 当超时发生时 我想销毁 SSL 会话 假设在 IIS 上 从而强制客户端重新进行身份验证 如何
  • 原型点击、鼠标悬停和鼠标移开不能一起工作?

    我正在尝试做一个非常简单的按钮 它根据鼠标悬停 鼠标移出和改变颜色 单击 我正在原型中执行此操作 奇怪的是如果我使用鼠标悬停和鼠标移出 单击按钮后 按钮不会变为白色 似乎是因为鼠标移开 这是我的代码 izzy observe mouseov
  • 可以发出 cURL 请求并获取所采用的路由(类似于traceroute)

    我有一个带有标头参数的 GET 请求 我想检查我的应用程序正在使用哪个数据库实例 有没有办法构建一个 cURL 请求来告诉我我的请求要去哪里 我知道有一个traceroute显示所有服务器跃点的命令 但是有没有类似于使用 cURL 的东西呢
  • 垂直于给定点的线段

    我想计算给定线上与给定点垂直的点 我有一条线段AB 在线段外有一个点C 我想计算AB上的点D 使得CD垂直于AB 我必须找到D点 它非常类似于this https stackoverflow com questions 1811549 pe