3d 中点到线段的距离 (Python)

2024-02-19

我正在寻找可以计算 3D 中的点 (x_0,y_0,z_0) 到直线的距离的 Python 函数segment由其端点 (x_1,y_1,z_1) 和 (x_2,y_2,z_2) 定义。

我只找到了这个问题的 2D 解决方案。

There are solutions to finding a distance from a point to a line in 3d, but not to a line segment, like here: dist to segment

(图片取自计算特殊情况下点到线段的距离 https://stackoverflow.com/questions/46079554/calculate-distance-point-to-line-segment-with-special-cases)


这个答案改编自这里:在Python中计算点数组到线段之间的欧几里德距离,无需for循环 https://stackoverflow.com/questions/54442057/calculate-the-euclidian-distance-between-an-array-of-points-to-a-line-segment-in/54442561#54442561.

功能lineseg_dist返回点 p 到线段 [a,b] 的距离。p, a and b是 np.arrays。

import numpy as np

def lineseg_dist(p, a, b):

    # normalized tangent vector
    d = np.divide(b - a, np.linalg.norm(b - a))

    # signed parallel distance components
    s = np.dot(a - p, d)
    t = np.dot(p - b, d)

    # clamped parallel distance
    h = np.maximum.reduce([s, t, 0])

    # perpendicular distance component
    c = np.cross(p - a, d)

    return np.hypot(h, np.linalg.norm(c))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

3d 中点到线段的距离 (Python) 的相关文章

  • 打印 scrapy 请求的“响应”

    我正在尝试学习 scrapy 在遵循教程的同时 我正在尝试进行细微的调整 我想简单地从请求中获取响应内容 然后我会将响应传递到教程代码中 但我无法发出请求并获取响应内容 建议就好 from scrapy http import Respon
  • 替换字符串列表中的 \x00 的最佳方法?

    我有一个来自已解析 PE 文件的值列表 其中包括 x00每个部分末尾的空字节 我希望能够删除 x00字符串中的字节而不删除所有字节 x 文件中的 s 我试过做 replace and re sub 但并没有取得太大成功 使用Python 2
  • 如何在 Ubuntu 上安装 Python 模块

    我刚刚用Python写了一个函数 然后 我想将其做成模块并安装在我的 Ubuntu 11 04 上 这就是我所做的 创建 setup py 和 function py 文件 使用 Python2 7 setup py sdist 构建分发文
  • 使用 Django 的 post_save() 信号

    我有两张桌子 class Advertisement models Model created at models DateTimeField auto now add True author email models EmailField
  • Dask DataFrame 的逐行处理

    我需要处理一个大文件并更改一些值 我想做这样的事情 for index row in dataFrame iterrows foo doSomeStuffWith row lol doOtherStuffWith row dataFrame
  • 如何将条目中的部分文本加粗并更改其背景颜色?

    我正在创建一个基于 Tkinter 的 GUI 它有一个 Entry 小部件 我想将其文本的一部分加粗并更改其背景颜色 但我不知道我该怎么做 如果我使用文本小部件 我可以只使用标签 但看起来它们不能与条目小部件一起使用 此代码使用文本小部件
  • python中函数变量的作用域

    假设我们有两个函数 def ftpConnect ftp FTP server ftp login ftp cwd path def getFileList ftpConnect files ftp nlst print files 如果我
  • 当x轴不连续时如何删除冗余日期时间 pandas DatetimeIndex

    我想绘制一个 pandas 系列 其索引是无数的 DatatimeIndex 我的代码如下 import matplotlib dates as mdates index pd DatetimeIndex 2000 01 01 00 00
  • 如何在 Windows 上使用 Python 3.6 来安装 Python 2.7

    我想问一下如何使用pip install对于 Python 2 7 当我之前安装并使用 Python 3 6 时 我现在必须使用 Windows 上的 Python 版本 pip install 继续安装 Python 3 6 我需要使用以
  • 反加入熊猫

    我有两个表 我想附加它们 以便仅保留表 A 中的所有数据 并且仅在其键唯一时添加表 B 中的数据 键值在表 A 和 B 中是唯一的 但在某些情况下键将出现在表 A 和 B 中 我认为执行此操作的方法将涉及某种过滤联接 反联接 以获取表 B
  • Python While 循环,and (&) 运算符不起作用

    我正在努力寻找最大公因数 我写了一个糟糕的 运算密集型 算法 它将较低的值减一 使用 检查它是否均匀地划分了分子和分母 如果是 则退出程序 但是 我的 while 循环没有使用 and 运算符 因此一旦分子可整除 它就会停止 即使它不是正确
  • 在wxpython中使用wx.TextCtrl并在按钮单击后显示数据的简单示例 - wx新手

    我正在学习 python 并尝试使用 wxpython 进行 UI 开发 也没有 UI exp 我已经能够创建一个带有面板 按钮和文本输入框的框架 我希望能够在文本框中输入文本 并让程序在单击按钮后对输入框中的文本执行操作 我可以获得一些关
  • 在谷歌C​​olab中使用cv2.imshow()

    我正在尝试通过输入视频来对视频进行对象检测 cap cv2 VideoCapture video3 mp4 在处理部分之后 我想使用实时对象检测来显示视频 while True ret image np cap read Expand di
  • WindowsError:[错误 5] 访问被拒绝

    我一直在尝试终止一个进程 但我的所有选项都给出了 Windows 访问被拒绝错误 我通过以下方式打开进程 一个python脚本 test subprocess Popen sys executable testsc py 我想杀死那个进程
  • 使用 lambda 函数更改属性值

    我可以使用 lambda 函数循环遍历类对象列表并更改属性值 对于所有对象或满足特定条件的对象 吗 class Student object def init self name age self name name self age ag
  • 是否可以强制浮点数的指数或有效数匹配另一个浮点数(Python)?

    这是我前几天试图解决的一个有趣的问题 是否可以强制一个的有效数或指数float与另一个人一样float在Python中 出现这个问题是因为我试图重新调整一些数据 以便最小值和最大值与另一个数据集匹配 然而 我重新调整后的数据略有偏差 大约小
  • Pandas 在特定列将数据帧拆分为两个数据帧

    I have pandas我组成的 DataFrameconcat 一行由 96 个值组成 我想将 DataFrame 从值 72 中分离出来 这样 一行的前 72 个值存储在 Dataframe1 中 接下来的 24 个值存储在 Data
  • Google App Engine 中的自定义身份验证

    有谁知道或知道我可以在哪里学习如何使用 Python 和 Google App Engine 创建自定义身份验证流程 我不想使用 Google 帐户进行身份验证 并且希望能够创建自己的用户 如果不是专门针对 Google App Engin
  • 从时间序列生成日期特征

    我有一个数据框 其中包含如下列 Date temp data holiday day 01 01 2000 10000 0 1 02 01 2000 0 1 2 03 01 2000 2000 0 3 30 01 2000 200 0 30
  • 如何在SqlAlchemy中执行“左外连接”

    我需要执行这个查询 select field11 field12 from Table 1 t1 left outer join Table 2 t2 ON t2 tbl1 id t1 tbl1 id where t2 tbl2 id is

随机推荐

  • C# 中“枚举数”的定义

    C 中枚举数的含义是什么 枚举器可帮助您枚举 迭代 项目集合 您只需查看即可推断出目的IEnumerator 接口的成员 https msdn microsoft com en us library 78dfe2yb aspx 更具体地说
  • 在 zxing 片段库中打开/关闭手电筒

    我在我的应用程序中实现了 Zxing 条码扫描库 我使用过以下库 https code google com p barcodefraglibv2 https code google com p barcodefraglibv2 我想在扫描
  • 从放置在列表视图中的 edittext 获取数据

    我使用 Holder 创建了一个包含 textview 和 edittext 的列表 它看起来像 Textview Edittext Textview Edittext Textview Edittext 但我无法从每个 Edittext
  • 是否可以使用 Ruby 将一系列 PDF 合并为一个?

    我有一系列按顺序命名的 PDF 如下所示 01 foo pdf 02 bar pdf 03 baz pdf etc 使用 Ruby 是否可以将它们组合成一个大的 PDF 同时保持它们的顺序 我不介意安装任何必要的宝石来完成这项工作 如果这在
  • 从 URL 获取文件名

    在Java中 给定一个java net URL or a String形式为http www example com some path to a file xml 获取文件名 减去扩展名 的最简单方法是什么 所以 在这个例子中 我正在寻找
  • Rust 比赛的早期突破

    我想切换多种可能的情况x有一种情况 这里x 0 我想检查一些附加代码的结果以确定下一步要做什么 一种可能性是提前结束比赛 I d use break在 C 中执行此提前返回操作 但这在 Rust 中是不允许的 return从父函数返回 在本
  • 将 UIGesture 转发到后面的视图

    我正在开发 iPhone iOS 4 0 或更高版本 应用程序 并且在多个视图之间进行触摸处理时遇到一些问题 我有这样的视图结构 gt A superView gt SubView A gt SubView B exactly on top
  • Sage Pay 测试服务器不会加载 3D 安全页面

    我正在将 Sage Pay Direct 集成到网站中 目前 我正在测试模式下运行所有 内容 并且一切正常 除非我使用 3D Secure 测试付款 我在这里使用 Sage Pay 测试卡中的第一张卡详细信息 http www sagepa
  • 在 Web 组件 ShadowDOM 中使用 bootstrap

    使用 LitElement 在 Web 组件 shadowDOM 应用程序中使用大型 css 库 如 bootstrap 的最简单方法是什么 尝试了以下方法 在组件内使用链接标签 有效 但会创建 FOUC 无样式内容的闪存 将所有内容渲染到
  • Flask WTForms:如何将表单值返回到 Python 中?

    我想做的是获取 5 个不同字段的用户输入 然后让用户输入的内容可在 python 程序的其余部分中使用 到目前为止 我的代码如下所示 class ArtistsForm Form artist1 StringField Artist 1 v
  • 如何将图片从 url 上传到 Blobstore?

    Google App Engine 文件 API 现在支持以编程方式创建 blobstore blob 我正在尝试通过 http 获取图像并将其存储到 blobstore 中 file name files blobstore create
  • 更改 matplotlib 饼图中的线条属性

    我试图让 matplotlib 饼图上的线条变得更浅 因为我有很多切片 所以线条太粗 如下所示 I read 这个例子 https stackoverflow com questions 1915871 matplotlib control
  • haskell——有什么方法可以为大致元组同构的数据类型生成“派生”实例吗?

    假设我有一个像这样的数据类型 data D a D a a a 和一个类型类 class C c instance C c1 C c2 gt C c1 c2 然后 我希望能够写 data D a D a a a deriving C 并生成
  • 当原型在外部使用 $ 时,如何在 domready 内部使用 $ 进行 jQuery?

    我无法从 JSF 框架 RichFaces 3 3 3 中删除原型 如果我尝试 noConflict 并尝试接管 它会破坏我的应用程序框架 因为它与原型紧密耦合 那么有没有一种方法可以让我做到这一点 jQuery function some
  • 如何检查 s3 存储桶中是否存在特定文件

    我是 AWS 新手 我想检查 s3 中的文件夹中是否存在特定的 csv 如果有 我想阅读它 如果没有 我想创建一个 df 并将其上传到 s3 到目前为止我做了什么 list of files for key in s3 client lis
  • 用于打开可执行文件并捕捉到桌面左上角的脚本

    我只是想知道在 bat 文件中 是否有一种方法可以调用外部 bat 文件 甚至是 exe 并使其打开 以便它 捕捉 到屏幕的左上角 Cheers 没有直接的方法可以从 Windows 命令提示符定位窗口 您基本上有以下选择 使用 GUI 自
  • 我无法在 symfony2 中创建包

    我有 Windows 7 和WAMP http www wampserver com en 驱动器上的本地主机D 我正确安装了 Symfony2 当我打开时http 127 0 0 1 Symfony web config php我可以看到
  • 元素当前不可见,因此可能无法与之交互

    目前我正在尝试解析一个示例网站 在该站点中 有一个设置为 display none 为了应用CSS效果 我的意思是事实上选择 组件可见 我怎样才能设置该html的值select成分 这是我的代码 WebElement element dri
  • Java:如何随机化数组列表而不重复

    import java util Random public class Sudoku int SquareNumbers 4 3 5 8 7 6 1 2 9 8 7 6 2 1 9 3 4 5 2 1 9 4 3 5 7 8 6 5 2
  • 3d 中点到线段的距离 (Python)

    我正在寻找可以计算 3D 中的点 x 0 y 0 z 0 到直线的距离的 Python 函数segment由其端点 x 1 y 1 z 1 和 x 2 y 2 z 2 定义 我只找到了这个问题的 2D 解决方案 There are solu