1

Java 描画Panel(ではなく)で既に描画したもの (線など) を回転させる方法を考えていJPanelます。

3本の線を結んで作成した三角形を回転させようとしています:

g.drawLine(size, size, 2*size, size);
g.drawLine(size, size,size+size/2, size+(int)(size/2 * Math.sqrt(3)));
g.drawLine(2*size, size,size+size/2, size+(int)(size/2 * Math.sqrt(3)));

どうやってそれを回転させますか?

4

2 に答える 2

0

graphics2D と Polygon を使用する

Graphics2D g2 = (Graphics2D) g;
int x2Points[] = {0, 100, 0, 100}; //these are the X coordinates
int y2Points[] = {0, 50, 50, 0}; //these are the Y coordinates
GeneralPath polyline = 
        new GeneralPath(GeneralPath.WIND_EVEN_ODD, x2Points.length);

polyline.moveTo (x2Points[0], y2Points[0]);

for (int index = 1; index < x2Points.length; index++) {
         polyline.lineTo(x2Points[index], y2Points[index]);
};

g2.draw(polyline);

回転させたい場合は、やり直して前に追加します

g2.rotate(Math.toRadians(angle), centerX, centerY);

ここで、「角度」は回転させたい量で、(centerX, centerY) は回転させたい点の座標です。

これが役立つことを願っています

于 2013-10-20T21:27:59.743 に答える