Java 三角方程不';不能使用输入变量
我使用三角学在屏幕上移动一个对象,出于某种原因,“x1”起作用,但“y1”不起作用,除非值Java 三角方程不';不能使用输入变量,java,math,trigonometry,Java,Math,Trigonometry,我使用三角学在屏幕上移动一个对象,出于某种原因,“x1”起作用,但“y1”不起作用,除非值x1=200y1=200 我知道这是方程的问题,而不是别的问题 建造商: public Note_1(double x0,double y0,double x1,double y1, double x2,double y2){ sX = x0;sY = y0;img_1x = x1;img_1y = y1; img_2x = x2;img_2y = y2; }
x1=200代码>y1=200代码>
我知道这是方程的问题,而不是别的问题
建造商:
public Note_1(double x0,double y0,double x1,double y1,
double x2,double y2){
sX = x0;sY = y0;img_1x = x1;img_1y = y1;
img_2x = x2;img_2y = y2;
}
使用的方法:
public static double getAmp(double sx,double fx){
double amp = (fx-sx)/2;
return amp;
}
public static double getPeriod(double sx,double fx){
double period = 360/(fx-sx);
return period;
}
public static double getYDistplace(double sy,double fy){
double yDisplace = (sy+fy)/2;
return yDisplace;
}
计算代码:
@Override
protected void setup(){
a = getAmp(sX,img_2x);
period = getPeriod(sX,img_2x);
yDist = getYDisplace(sY,img_2y);
}
@Override
protected void calculate(){
obj.setX(obj.getX()+2);
img_x1 = obj.getX();
obj.setY(a*Math.cos(period*(img_x1+sX)/100)+yDist);
}
Math.sin
和Math.cos
以弧度计算,但我看到你用360除以数量。也许这是一个涉及度和弧度的问题?你说得对,这是一个涉及弧度的问题,结果是period
把计算搞砸了。周期的正确计算是Math.toRadians((360/(fx-sx))+(2*Math.PI))代码>