シェイプを使用Graphics2D.scale();
して描画すると、アウトラインの太さもスケーリングされます。
線の太さを変えずに描く方法はありますか? おそらく、上記の関数を使用する以外に、それをスケーリングする別の効率的な方法はありますか?
シェイプを使用Graphics2D.scale();
して描画すると、アウトラインの太さもスケーリングされます。
線の太さを変えずに描く方法はありますか? おそらく、上記の関数を使用する以外に、それをスケーリングする別の効率的な方法はありますか?
この質問も同様です。適切な線幅を設定するには、Stroke オブジェクトをいじる必要があるようです。
描画を線ベクトルのリストとして保存し、必要な線の太さを維持するために、さまざまなサイズで描画をスケーリングおよびレンダリングする必要があります。
私は自分の質問に対する解決策を見つけました。それがどれほど効率的かはわかりませんが、意図したとおりに機能します。
Area area = new Area(myShape); //myShape is the shape I want to scale
AffineTransform at = new AffineTransform();
at.scale(2,2);
area = area.createTransformedArea(at);
graphics2d.draw(area); //graphics2d is the Graphics2D instance to do the drawing
おそらく、これが良いアプローチであるかどうかについて、誰かが私に教えてくれるでしょうか?