1
我一直工作在一個小遊戲在Slick2D 這裏的JavaDoc:http://slick.ninjacave.com/javadoc/overview-summary.htmlSlick2D ClassCastException異常
的代碼塊這是給我的問題:
public void move(){
this.shape = (Ellipse)this.shape.transform(Transform.createTranslateTransform((float)(speed*Math.sin(angle)),(float)(speed*Math.cos(angle)*-1)));
this.posx = this.posx+(float)(speed*Math.sin(angle));
this.posy = this.posy+(float)(speed*Math.cos(angle)*-1);
updateShape();
}
這是錯誤:
java.lang.ClassCastException: org.newdawn.slick.geom.Polygon cannot be cast to org.newdawn.slick.geom.Ellipse
什麼讓我失望是.. shape.transform()返回一個抽象的Shape類,它是爲了被鑄造成一個特定的形狀。我在一個不同的類中使用Polygon做了同樣的事情,並且它工作正常。
如果任何人有這樣的經驗,它的大加讚賞,谷歌並沒有幫助我太多
編輯* 哦,對不起,我忘了,包括this.shape的創建:
Ellipse shape;
...
shape = new Ellipse(diameter/2,diameter/2,posx,posy);
那麼,這比預期容易,謝謝 – EyeOfTheHawks
@EyeOfTheHawks高興地聽到它。不用謝。 – Prabhakaran