在具有固定欧氏距离的圆上生成点[MATLAB]

时间:2017-05-22 08:10:19

标签: matlab

我想在圆上生成n等距点。任意两个相邻点之间的欧几里德距离是固定的x单位。如果我增加n,则欧几里德距离仍应为x。这意味着圆的半径必须增加。但是,这里的问题是圆的半径应该只是10的倍数。

到目前为止,我已经提出了这段代码,但我无法弄清楚如何将欧几里德距离保持到x,并且仅当10n时,才能将半径保持为 r = 50; % radius NumCNs = 100; % number of points dd = r*exp((0:1/(NumCNs-1):1)*pi*2*1i)'; % location of the points XCor = real(dd); YCor = imag(dd); plot(XCor , YCor , '*'); 的倍数增加。

export PATH="/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin:$PATH"

如果不可能同时满足这两个标准,那么无论如何都必须保持欧几里德距离。

任何人都可以帮助我吗?

提前谢谢。

1 个答案:

答案 0 :(得分:2)

这些点将形成一个规则的凸多边形。外接圆的半径由等式r=x/(2*sin(pi/n))给出,其中n是点数,x点之间的距离和r圆的半径。< / p>

您不能总是同时满足这两个标准,因此您应该使用此公式来计算圆的半径。