Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.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
在具有固定欧氏距离的圆上生成点[MATLAB]_Matlab - Fatal编程技术网

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

在具有固定欧氏距离的圆上生成点[MATLAB],matlab,Matlab,我想在圆上生成n等距点。任意两个相邻点之间的欧几里德距离是固定的x单位。如果我增加n,欧几里德距离仍应为x。这意味着圆的半径必须增加。然而,这里的要点是圆的半径应该是10的倍数 到目前为止,我已经提出了这个代码,但我无法弄清楚如何保持到x的欧几里德距离,并且只有当n增加时,才能保持半径为10的倍数 r = 50; % radius NumCNs = 100; % number of points dd

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

到目前为止,我已经提出了这个代码,但我无法弄清楚如何保持到
x
的欧几里德距离,并且只有当
n
增加时,才能保持半径为
10
的倍数

    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 , '*');
如果不可能同时满足这两个标准,那么无论如何都必须保持欧几里得距离

有人能帮我吗


提前谢谢。

这些点将形成正凸多边形。外切圆的半径由方程
r=x/(2*sin(pi/n))
给出,其中
n
是点数,
x
点之间的距离和
r
圆的半径

您不能总是同时满足这两个条件,因此您应该使用此方程来计算圆的半径