问题标签 [line-segment]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 三.js点线段距离
在 Three.js 中,我有一个简单的方法可以找到一个点(即我的相机的位置)和一条无限延伸的线之间的距离。但是,我真正需要的是找到一个点和由两点组成的一条线段之间的距离。注意:我使用的是 Three.js,它有 3 个空间维度:x、y 和 z。
这是我在 Three.js 中使用的点到线段公式:
3d - 从一组 3d 线段中查找边界
我有一组n
3d
线段 [(p1_start,p1_end), (p2_start,p2_end),....(pn_start,pn_end)]
。(我相信它们应该是相交的......)这些线段代表一个(封闭的)边界。我正在寻找有效的算法来生成这个边界,即找到边界段的顺序:( [pj_start,pj_end, ...p1_start, p1_end.....]
段可以通过它们的末端连接:开始到开始,开始到结束,结束到开始,结束到结束)我想开始从任意段,比如说s = (pm_start, pm_end)
,在所有其他段中找到距离pm_start
或 pm_end
最小的段,并根据计算出的最小距离添加该段末端,并为所有段继续这种方式这种方法的复杂性不好,任何人都可以提出有效的建议这个问题的算法
python - 将具有未排序内容的元组快速排序到链中
我想对元组列表 [(0, 9), (5, 4), (2, 9), (7, 4), (7, 2)] 进行排序以得到 [(0, 9), ( 2, 9), (7, 2), (7, 4), (5, 4)]。
更具体地说,我有一组要连接成链(折线)的边(线段)。边缘的顺序是随机的,我想对它们进行排序。每条边都有两个节点,起点和终点,它们可能与最终链中的方向匹配,也可能不匹配。下面的代码可以工作,但速度非常慢,尤其是当我必须多次调用这个函数时。在我的例子中,节点是自定义 Node 类的实例,而不是整数。平均而言,可能有大约 10 条边要连接。我必须在 Ironpython 中运行它。请问有没有什么好方法可以提高这个速度?非常感谢!
克里斯
geometry - 如何使用 2D 无限线作为可以通过邻近度查询的关联容器的键?
我有数千条线段,我想通过共线性进行聚类。一种方法是使用无限行的键创建一个关联容器。有了这样一个容器,我可以使用线段的集合作为值,并通过确定它是一个线段的无限线并插入相应的 bin 来添加线段。
给定这样的设置,表征无限行以支持查询给定行附近的行键的数据结构的能力的最佳方法是什么?
例如,我正在考虑使用点的 R-tree(在这个项目的其他地方,我已经在使用 Boost.Geometry R-trees),其中每个点都是无限线的 x 截距和 y 截距。但是,这只适用于非垂直和非水平线。我可以将垂直线和水平线作为特殊情况处理,但是我将无法像查询非轴附近的线那样轻松查询“靠近”垂直或水平线的线通过对 R 树中的截取点进行 2D 范围查询来对齐线。
我想知道是否有一些优雅的方式来处理这个问题。如何将无限的 2D 线表示为点,使水平线和垂直线与任何其他类型的线没有什么不同,并且彼此靠近的线映射到彼此靠近的点?
python - Paraview 使用“宽度”数据从 CSV 创建线段
我想在 Paraview 中创建线段。每个线段的输入数据格式为:x0,y0,z0,x1,y1,z1,width 我尝试过使用“Line”命令,例如:
但是,我找不到指定每个线段宽度的方法。您的帮助将不胜感激。最好的问候,哈米德·拉贾比。
algorithm - 确定多边形顶点之间的线段是否为“内部”多边形
我正在尝试找到一种有效的算法,该算法可以检查简单(编辑:simple concave)多边形中两个顶点之间的线是否包含位于多边形域之外的点。我能找到的最接近的问题是这个:https ://stackoverflow.com/a/36378838/12135804
但我不确定答案是否完全正确。可能是,在这种情况下,如果有人可以澄清那将是很好的。
我希望红线失败,绿线成功。我知道不能天真地测试中点,因为这在每种情况下都不起作用,但是在多边形域外的线上找到任何点都应该取消它的资格。
我感谢任何和所有的帮助!
编辑:忘记包含数学堆栈交换的交叉链接: https ://math.stackexchange.com/q/4040059/892519