addCurveToPoint は必要ありません。UIBezierPath を使用している場合は、addArcWithCenter:radius:startAngle:endAngle:clockwise が必要です。
これがあなたがすることです。長方形を描きます。必要なコーナー半径を計算します。各コーナーに円を描き、コーナー半径で各辺から挿入します。(各角の円の中心は、x と y の両方の角の半径によって各角から挿入されます。) 次に、四角形が各角の円に接触する点を接続して、一連の 4 本の線をマップします。
各円弧は 90 度 (ラジアンで pi/2) をカバーします。右上隅の範囲は 0 から pi/2 です。左上隅の角度は pi/2 から始まり、pi になります。左下隅の弧は pi から 3/2 pi の範囲になります。右下の円弧の角度は、3/2 pi から 2pi の範囲になります。
次のシーケンスを使用します。
moveToPoint addLineToPoint -- 最初の側
addArcWithCenter:radius:startAngle:endAngle:clockwise -- 最初の角を丸くします
lineToPoint -- 2 番目の辺、次の丸い角の始点まで
addArcWithCenter:radius:startAngle:endAngle:clockwise -- 2 番目の丸い角
lineToPoint -- 3 番目の辺、次の丸い角の始点まで
addArcWithCenter:radius:startAngle:endAngle:clockwise -- 3 番目の丸い角
lineToPoint -- 前側、最後に丸められた角の始点まで
addArcWithCenter:radius:startAngle:endAngle:clockwise -- 4 番目の丸みを帯びた角で、最初の側面に戻ります。
closePath