Graphics2D で描画するときは、AffineTransform を使用します。描画する前に Shape を変換するために使用します。rx と ry は回転であると想定されていますが、描画するとき、形状は回転ではなく剪断されます。ローテーションを強制するにはどうすればよいですか? デフォルトのコンストラクターを使用してから、回転、スケーリング、および変換を呼び出してみましたが、形状は本来のようには見えませんでした。
transform = new AffineTransform(sx, rx, ry, sy, tx, ty);
transform.createTransformedShape(shape); // Where shape is a GeneralPath instance