Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Algorithm 检查点是否位于随机框内_Algorithm_Geometry - Fatal编程技术网

Algorithm 检查点是否位于随机框内

Algorithm 检查点是否位于随机框内,algorithm,geometry,Algorithm,Geometry,编辑:我已经找到了一个解决方案。如果你将来遇到这种情况,需要类似的服务,请随时与我联系 -- 如何检查给定坐标是否等于随机点,而不是在平面上生成随机点?还是在随机边界框内 例如,您有一个具有整数坐标的平面。该平面以某种方式填充了随机边界框(使用公式而不是数据生成)。目标是检查给定的(x,y)是否在其中一个框内 我可以找到很多关于如何生成随机点的参考资料,但没有太多关于以这种更向后的方式进行的参考资料(我想你会称之为“函数式”) 我成功地制作了一个算法,将平面分割成100x100个正方形,每个正方

编辑:我已经找到了一个解决方案。如果你将来遇到这种情况,需要类似的服务,请随时与我联系

--

如何检查给定坐标是否等于随机点,而不是在平面上生成随机点?还是在随机边界框内

例如,您有一个具有整数坐标的平面。该平面以某种方式填充了随机边界框(使用公式而不是数据生成)。目标是检查给定的(x,y)是否在其中一个框内

我可以找到很多关于如何生成随机点的参考资料,但没有太多关于以这种更向后的方式进行的参考资料(我想你会称之为“函数式”)

我成功地制作了一个算法,将平面分割成100x100个正方形,每个正方形内都有一个随机放置的边界框。但是,有没有可能用一种更有机地放置盒子的算法呢

编辑:下面是一个示例算法,我用于一个简单的“100x100网格内的随机点”(从内存中,可能缺少一些内容):


嗯,我不知道我是否完全理解你的问题,但是知道在二维欧几里德空间中绘制的给定点M(x,y)是否位于由两个相反点a(xa,ya)和B(xb,yb)表示的框内的条件非常简单

让我们定义一个函数isInsideTheBox(x,y,xa,ya,xb,yb),如果M在框内,则返回
true
,否则返回
false

bool isInsideTheBox(int x, int y, int xa, int ya, int xb, int yb) 
{
    // We assume xa < xb and ya < yb
    return (x >= xa && x <= xb && y >= ya && y <= yb); 
}
bool-isInsideTheBox(intx,inty,intxa,intya,intxb,intyb)
{
//我们假设xareturn(x>=xa&&x=ya&&y我在回答这个问题:检查一个点是否超过一个随机点

如果坐标是实坐标,重叠的概率为零,这个问题实际上是无用的。所以我假设离散坐标

如果问题涉及已经绘制的随机点,唯一的方法是在绘制时记住容器中的随机点(数组、排序、列表、搜索树、哈希表)

如果问题涉及可能在该位置绘制的点,则在整个域中(分布为非零)答案为“真”。您需要对域进行几何建模,以执行点入…查询



如果问题是关于伪随机点或准随机点,我认为没有任何捷径,你应该继续处理真正随机的情况(除非生成器非常差)。

你想确切知道什么?知道给定点(x,y)是否在布丁框中的条件是什么?或者随机放置框的算法是什么?“有机地”:是一个你有自己理解的术语,我们不同意。关于“检查给定坐标是否等于随机点”的相同注释。请解释。“有机地”"与我描述的网格样式相反。所有东西都是整数,没有实数。我更喜欢不重叠。更好地解释问题比添加悬赏更有可能得到好答案。
需要解释什么部分?
输入是什么?随机点/框从何而来?是
四边形吗s?矩形?面向Iso?需要考虑哪些资源需求?是的,我知道如何检查给定点是否在框内。我的问题是,有什么样的算法可以生成一组有机(非网格)随机点,并检查您是否在该点上(或在框内,易于修改)@LegendLength您可以理解我们的困惑,因为您的问题的标题是“检查随机框中是否有点”在我的示例算法中,它既可以确定点的位置,也可以检查你是否在其中一个点上。它适用于无限大的平面,不存储任何数据。它可以很容易地修改为检查边界框,而不是降落在准确的点上。但它仅限于每100x100个网格正方形一个。我想要更多的“organi”c',如中所示,您可能有5个点随机相邻,这是不可能使用网格方法的。
bool isInsideTheBox(int x, int y, int xa, int ya, int xb, int yb) 
{
    // We assume xa < xb and ya < yb
    return (x >= xa && x <= xb && y >= ya && y <= yb); 
}