线段-多边形相交

2024-04-19

问候,

我想检测一个线段是否只“接触”多边形或穿过它。

人物

解释了我的疑问。如何知道情况A和B的区别? 请注意,在这两种情况下,红线在两个顶点处穿过多边形,一个顶点与外部相接触,另一个顶点与内部相交。我有一个段-段相交算法,但我不知道如何正确使用它。任何帮助表示赞赏。


我认为可能没有比在低级别计算细节更容易的方法了。 首先,您需要强大的代码来计算两个线段之间的交集。 这是讨论的(用代码)here http://cs.smith.edu/~orourke/books/compgeom.html。一旦有了交点,你需要 计算多边形边界如何与这些区域的邻域中的线段相互作用 交叉点。这本质上是 重复LeftOf( )计算,使用我书中的符号。 在您的图像中,线段穿过顶点b,而相邻的顶点a and c(在连续序列中(a,b,c)) 都在同一侧b。因此,该段 不渗透到邻域的多边形内部b。但如果a and c位于该段的相对两侧,那么它必须穿透。

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

线段-多边形相交 的相关文章

  • 贝塞尔曲线的均匀离散化

    我需要离散一条三阶贝塞尔曲线 其中的点沿曲线均匀分布 该曲线由四个点 p0 p1 p2 p3 和 0 point t 1 t 1 t 1 t p0 3 1 t 1 t t p1 3 1 t t t p2 t t t p3 我的第一个想法是离
  • 找到覆盖在 3D 高度图上的圆的一组点

    我有 NxN 值的高度图 我想找到一个给定点 A 红点 其 x 和 y 坐标给定 并且 z 从数据中已知 因此 A 是曲面的顶点 位于圆周上的一组点以 A 为中心 以 R 为半径的圆的形状 它是覆盖在数据点描述的假想表面上的圆形 布 灰色
  • 线段与多边形的交点

    我必须在 MATLAB 中创建一个执行以下任务的函数 Input p多边形的形式 p x1 y1 x2 y2 x3 y3 x4 y4 s具有从 A 到 B 的段的结构体 s struct A x y B u w Return 1 一个整数
  • python 将平行线偏移到给定线

    我想绘制给定 X Y 坐标的平行线 下面的代码有助于绘制 import numpy as np import matplotlib pyplot as plt x 187 879 722 322 y 341 344 112 112 newX
  • 二维圆最近邻的最佳动态数据结构

    标题是最大的问题 我有一组圆 每个圆都有一个圆心 C 和半径 r 两个圆之间的距离是它们的圆心之间的欧几里得距离减去它们的半径 对于圆 a 和 b d ab C a C b r a r b 请注意 如果圆圈重叠 则该值可能为负 那么 查找集
  • 在 Three.js 中生成带有折痕角度的平滑着色的顶点法线

    我在 Three js 中有几个对象JSON 模型格式 https github com mrdoob three js wiki JSON Model format 3 1 它指定顶点位置和面 有时是三角形 有时是四边形 有时具有材质索引
  • 如何在三个 JS 网格中对共面三角形进行分组?

    我正在开发一种建模工具 可以让您直接操作网格 例如 您可以抓住一张脸并将其拖动 用户对 脸 的感知可能是多个共面三角形 例如 立方体的顶 面 实际上是两个三角形 它们被拖到一起形成一个正方形 为了实现这一点 我想收集任何特定三角形的所有共面
  • 如何找到2个以上用户的匹配时间间隔

    从给定的不同用户的时间间隔中找到最合适的时间 Rows 5 fid userid FromDateTime ToDateTime flag 62 1 2012 07 18 01 48 20 2012 07 18 02 55 20 1 63
  • 如何判断一个点是否在一组区间内?

    我正在寻找最快的方法来确定线上的点是否在该线的子集中 我得到了一个整数 Point 并且我还有一个 列表 点 用整数表示 3 10 1000 等 间隔 我用 2 个整数表示 2 10 是从 2 到 10 的所有整数 50 60 等 在此示例
  • 用乌龟画一个超椭圆

    显然 任何可以通过其他方式绘制的形状都可以由海龟绘制 圆形和正方形很容易 rt 1 fd 0 and if ticks mod 100 0 rt 90 fd 1 超级椭圆没那么多 规则的省略号也不是微不足道的 维基百科关于超椭圆的文章 ht
  • 高维中的凸包,找到多面体的顶点

    假设我有一个 6 维空间中的点云 我可以根据需要使其密集 这些点位于低维多面体的表面上 即点向量 x1 x2 x6 看起来是共面的 我想找到这个未知多面体的顶点 我当前的尝试通过 Python 中的 scipy 接口使用 qhull 算法
  • 从用于计算三角形和外接圆的 Swingworker 中重新绘制小程序

    我正在尝试复制找到的小程序here http www diku dk hjemmesider studerende duff Fortune 作为练习的一部分 该小程序使用 财富 的算法来生成两者 Voronoi 图和 Delaunay 三
  • 如何正确计算Delta机器人的直接运动学?

    我正在尝试为 Delta 机器人进行一个简单的模拟 并且我想使用正向运动学 直接运动学 通过传递 3 个角度来计算末端执行器在空间中的位置 我已经开始了Trossen 机器人论坛 Delta 机器人教程 http forums trosse
  • 如何计算逆运动学[关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我想知道如何使用逆运动学计算旋转角度 我计划将其用于实时 3D 动画 有人知道一些详细介绍具体解决方案的好文献吗 以下资源调查了逆运动学问题的一些流行
  • 汉明立方体顶点上的查询点

    我有 N 个点 仅位于 D 维立方体的顶点上 其中 D 约为 3 A vertex may not contain any point So every point has coordinates in 0 1 D I am only in
  • 线段-多边形相交

    问候 我想检测一个线段是否只 接触 多边形或穿过它 人物 解释了我的疑问 如何知道情况A和B的区别 请注意 在这两种情况下 红线在两个顶点处穿过多边形 一个顶点与外部相接触 另一个顶点与内部相交 我有一个段 段相交算法 但我不知道如何正确使
  • 如何确定多边形点列表是否按顺时针顺序排列?

    有了一个点列表 如何找到它们是否按顺时针顺序排列 例如 point 0 5 0 point 1 6 4 point 2 4 5 point 3 1 5 point 4 1 0 会说它是逆时针的 或者对某些人来说是逆时针的 对于非凸多边形 例
  • 是否有一种仅使用极坐标来查找附近点的算法?

    假设我有一个点向量作为极坐标 假设其中一个点充当探针 我想找到一定距离内的所有其他点 是否有一种算法可以在不将它们转换为笛卡尔形式的情况下执行此操作 您正在寻找极坐标的距离 你可以在这里找到公式link http math ucsd edu
  • 判断一个点是否在多面体内部

    我试图确定某个特定点是否位于多面体内部 在我当前的实现中 我正在研究的方法采用我们正在寻找多面体面的数组 在本例中为三角形 但稍后可能是其他多边形 的点 我一直在尝试根据这里找到的信息进行工作 http softsurfer com Arc
  • 相机姿态估计(OpenCV PnP)

    我正在尝试使用网络摄像头从具有已知全球位置的四个基准点的图像中获取全局姿态估计 我检查了许多 stackexchange 问题和一些论文 但似乎无法得到正确的解决方案 我得到的位置数字是可重复的 但与相机移动绝不成线性比例 仅供参考 我正在

随机推荐