Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/368.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.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
Java 三角方程不';不能使用输入变量_Java_Math_Trigonometry - Fatal编程技术网

Java 三角方程不';不能使用输入变量

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”起作用,但“y1”不起作用,除非值
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))