【发布时间】:2014-11-18 09:10:57
【问题描述】:
我一直在使用下面的代码来绘制一个旋转的多边形:
public static void renderPoly(Graphics g, double cx, double cy, int sides, double radius, double rotation){
Graphics2D g2d = (Graphics2D) g;
double deltaAngle = (Math.PI * 2) / sides;
double angle;
double lastX = cx + radius * Math.cos(0 - rotation);
double lastY = cy + radius * Math.sin(0 - rotation);
for(int n = 1; n <= sides; n++){
angle = deltaAngle * n;
double x = cx + radius * Math.cos(angle - rotation);
double y = cx + radius * Math.cos(angle - rotation);
g2d.drawLine((int)lastX, (int)lastY, (int)x, (int)y);
lastX = x;
lastY = y;
};
};
不幸的是,当我调用它时,这对我不起作用:
renderPoly(g, 15, 15, 3, 5, Math.toRadians(-90));
我的代码出了什么问题?谢谢。
【问题讨论】:
标签: java rendering render draw