1ピクセルのストロークでポリゴンを描画しようとしています。ポリゴン全体が100でスケーリングされるため、線幅を0.01に設定しました。ただし、何らかの理由で、ポリゴンは1ではなく100ピクセルのように見える画面上の線幅で描画されます。
GeneralPath
多角形として使用しています。図形の描画に同じアプローチを使用すると、細い線が描画されLine2D
ます。
g2d.scale(100, 100);
g2d.setStroke(new BasicStroke(0.01f));
g2d.draw(theShape);
新しい情報:以前にGraphics2Dオブジェクトに0.02fのBasicStrokeが設定されていたため、setStrokeラインを削除すると2ピクセルのラインが正しく取得されます。
これが実際のsetStrokeラインです
g.setStroke(new BasicStroke((float) (1f / getRoot().scaleX)));