0
我的意思是用五角形畫出從頂點到中心的線條。這些'武器'正在繪製正確,但是當我嘗試連接頂點時,它被錯誤地繪製。爲了連接線條,我在循環中放置了另一個繪圖函數,如下所示,它應該將繪製的第一條線的終點座標作爲起點,並繪製迭代中繪製的下一個「手臂」的終點座標,作爲其終點。我在這裏錯過了什麼嗎?我錯誤地在第二次抽籤中使用'i +角度'?爲什麼這段代碼不允許我連接繪圖的頂點?
for (int i = 0; i < arms; i += angle) {
double endPointX = armLength * Math.cos(i*angle-Math.PI/2);
double endPointY = armLength * Math.sin(i*angle-Math.PI/2);
double endPointX2 = armLength * Math.cos((i+angle)*angle-Math.PI/2);
double endPointY2 = armLength * Math.sin((i+angle)*angle-Math.PI/2);
g2d.drawLine(centreX, centreY,centreX+ (int) endPointX,centreY+ (int) endPointY);
g2d.drawLine(centreX+ (int) endPointX,centreY+ (int) endPointY, (int) endPointX2,(int) endPointY2);
}
角度似乎是度。使用'double angleRad = Math.toRadians(angleDeg)'將角度轉換爲弧度,然後在任何三角函數中使用它,例如'sin'或'cos' – Marco13 2014-10-08 16:45:03
它應該是'(i + 1)* angle' instad '第(i +角度)* angle' – Marco13 2014-10-08 16:55:13