私には、ユーザーが星を描くことができるプログラムを作成するタスクがあります。星は、サイズや腕の量が異なる場合があります。私が基本的な星を扱っていたとき、私はGeneralPathとポイントのテーブルでそれをしていました:
int xPoints[] = { 55, 67, 109, 73, 83, 55, 27, 37, 1, 43 };
int yPoints[] = { 0, 36, 36, 54, 96, 72, 96, 54, 36, 36 };
Graphics2D g2d = ( Graphics2D ) g;
GeneralPath star = new GeneralPath();
star.moveTo( xPoints[ 0 ], yPoints[ 0 ] );
for ( int k = 1; k < xPoints.length; k++ )
star.lineTo( xPoints[ k ], yPoints[ k ] );
star.closePath();
g2d.fill( star );
内側と外側の半径が変化し、腕の数が異なる星を描くには、どの方法を選択すればよいですか?これは私が取得する必要があるものです: