如何在两条直道之间生成随机坐标? [关闭]

问题描述 投票:1回答:1

我有一个固定坐标的向量,并且Y轴(向下和向上)的增加决定了我一个区域,我需要计算随机坐标.Image by the vector (black) coordinates and random coordinates (blue)

我可以生成一个函数来确定我需要工作的区域之间的差距。但我不知道如何生成属于我需要的区域的随机坐标。

我正在寻找如何实现它的想法。

c vector random coordinates
1个回答
0
投票

如果您有N线段和N+1点,并且您的“直线”被定义为点p[i]p[i+1]之间的线段,那么您可以执行以下操作:

  1. 通过选择0到N之间的点i(不包括)随机选择一个线段。
  2. 随机选择一个介于0和1之间的数字a,它确定新点将沿线段落在哪里。评估一个新点v = a*p[i] + (1-a)*p[i+1]
  3. 随机选择yymin之间的一些噪音ymax(可能是-2到2或任何你的范围)并评估新的点q=v+<0,y>

如果我理解你正确的问题,这些q值就是你所追求的点。

相反,如果你想要生成随机点,这些点的最小二乘最小化线拟合那些点是你的黑线,那么这是一个更难的问题,我现在没有时间。

© www.soinside.com 2019 - 2024. All rights reserved.