Java 处理三角代码不起作用

Java 处理三角代码不起作用,java,animation,rotation,processing,trigonometry,Java,Animation,Rotation,Processing,Trigonometry,我的处理代码基于Daniel Shiffman的《代码的本质》中的振荡章节,主要是他根据移动器的前进方向(鼠标)旋转移动器的例子。 它不起作用,尽管我很确定这是个小错误。矩形正好飞出屏幕。 书本中的示例(不完整): void display(){ 浮动角度=速度.heading2D; 笔划(0);填充(175);pushMatrix();矩形模式(中心); 翻译(位置x,位置y); 旋转(角度); rect(0,0,30,10); popMatrix(); } 我的代码: void show(

我的处理代码基于Daniel Shiffman的《代码的本质》中的振荡章节,主要是他根据移动器的前进方向(鼠标)旋转移动器的例子。 它不起作用,尽管我很确定这是个小错误。矩形正好飞出屏幕。 书本中的示例(不完整):

void display(){
浮动角度=速度.heading2D;
笔划(0);填充(175);pushMatrix();矩形模式(中心);
翻译(位置x,位置y);
旋转(角度);
rect(0,0,30,10);
popMatrix();
}
我的代码:

void show(){
角度=速度。头部2d();
矩形模式(中心);
pushMatrix();
翻译(位置x,位置y);
旋转(角度);
填充(255,20,20150);
rect(location.x,location.y,carSize,carSize);
popMatrix();
}
设置和绘制:

Car;
无效设置(){
汽车=新车();
}
作废提款(){
鼠标=新的PVector(mouseX,mouseY);
背景(255);
car.show();
汽车。移动();
car.update();
}

我终于明白了。而不是

 translate(location.x,location.y);  
 rect(location.x,location.y,40,40);  
它必须是:

 translate(location.x,location.y);  
 rect(0,0,40,40);    

因为平移已经将原点移到了对象的位置,而这正是我想要绘制它(0,0)的地方。

你能发布一个吗?与其只发布没有任何
setup()
draw()
函数的整个类(这意味着我们无法运行代码),不如将您的问题缩小到几个示例代码行。抱歉,我会更改它。另外,我也不知道translate(location.x,location.y)的作用