求助x和y坐标计算问题
如上图,知道a和b的长度,求1,2,3,4的x和y坐标,谢谢了
[解决办法]
楼主的描述不够清晰啊!
1 这段弧线是椭圆吗?
2 这些点的特征呢? 已知角度还是到a,b的距离?
3 那个顶点也不知道坐标啊。
[解决办法]
有曲线函数和点坐标才可以解决
[解决办法]
a与b好像是圆的半径吧
就一个值,怎么能计算,神也没办法!
除非知道旋转角度+半径,可以通过极坐标计算出各点的值
[解决办法]
那样的话,很简单:
我看图应是分3份,3,4夹角30度.那么3点坐标: 86.60,50.00, 2,4夹角60度, 2点坐标: 50.0 ,86.60.
用代码的话,查一下 Math里的三角函数。
[解决办法]
30度角的正弦函数值是1/2。就是其坐标的y值与半径的比。 余弦函数值是0.86(根号3的一半)。这是特殊角,一般都记住了。
楼主还是用代码计算吧。
[解决办法]
public class CalPosition
{
public static void main(String[] args)
{
double radius=100;
Circle c=new Circle(radius);//生成圆的对象。
double[] d=new double[2];
d= c.getCoordinate(90.0);//计算1点的坐标。
System.out.printf(" 1 点坐标是 x1 = %.2f\t y1 = %.2f\r\n", d[0], d[1]);
d= c.getCoordinate(60.0);//计算2点的坐标。
System.out.printf(" 2 点坐标是 x2 = %.2f\t y2 = %.2f\r\n", d[0], d[1]);
d= c.getCoordinate(30.0);//计算3点的坐标。
System.out.printf(" 3 点坐标是 x3 = %.2f\t y3 = %.2f\r\n", d[0], d[1]);
d= c.getCoordinate(0.0);//计算4点的坐标。
System.out.printf(" 4 点坐标是 x4 = %.2f\t y4 = %.2f\r\n", d[0], d[1]);
}
}
//类Circle 可根据给定角度,计算圆周上的点的坐标。可计算任意角度。
//
class Circle
{
private double radius;//半径。
public Circle()
{
radius=1.0;
}
public Circle(double radius)
{
this.radius=radius;
}
//计算给定角度的点的坐标,返回数组。
//
public double[] getCoordinate(double angle)
{
double[] d=new double[2];//d[0] x坐标,d[1] y坐标。
d[0]=radius*Math.cos(angle*Math.PI/180);//关键在这,把角度换成弧度。
d[1]=radius*Math.sin(angle*Math.PI/180);
return d;
}
}