当前位置:编程学习 > C#/ASP.NET >>

一道数学题,算法实现

知道了一个点的坐标“(x,y)”,以这个点为圆心,以“r”为半径,得到一个圆。然后在这个圆上均匀的分布“十个”点,求这“十个点”的坐标。

请问,算法实现思想是怎样的???

谢谢,CSDN网友:feixuyue

他的方法:
取个起始叫a0;每次加36度;
xn=x+r*sin(a0+n*36*math.pi/180);
yn=y+r*cos(a0+n*36*math.pi/180);

大家还有其它方法吗?
坐标轴的原点在“左上角”,向右为“X”轴,向下为“Y”轴。上面的方法,如果圆心是“坐标”原点就好了。 --------------------编程问答-------------------- xn=x+r*sin(a0+n*36*math.pi/180);
yn=y+r*cos(a0+n*36*math.pi/180);

坐标轴平移。 --------------------编程问答-------------------- 是啊,圆心是不是圆点并不重要啊. --------------------编程问答-------------------- 如果你对起始点没有要求,就直接令a0=0
公式就可以简化为:
xn=x+r*sin(n*0.2*math.pi);
yn=y+r*cos(n*0.2*math.pi);
--------------------编程问答-------------------- 横坐标:Xn=x+r*sin(Ax+n*360/N*math.pi/180);
      纵坐标:Yn=y+r*cos(Ay+n*360/N*math.pi/180);
--------------------编程问答-------------------- 做个循环
横坐标:Xn=x+r*sin(Ax+n*360/N*math.pi/180);
  纵坐标:Yn=y+r*cos(Ay+n*360/N*math.pi/180);
--------------------编程问答-------------------- --------------------编程问答-------------------- 计算机图形学。 --------------------编程问答--------------------
引用 5 楼 jamsxfl 的回复:
做个循环
横坐标:Xn=x+r*sin(Ax+n*360/N*math.pi/180);
  纵坐标:Yn=y+r*cos(Ay+n*360/N*math.pi/180);


--------------------编程问答--------------------
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,