私はこれにどのようにアプローチするか分からない: 私は単位の方向に関して長さ1のセグメントを「曲げる」必要があります。 曲げの強さは、セグメントの長さに対して1 / yです。 変換は、セグメント上のすべてのポイントに対して定義する必要があり、長さは保持されるべきです。 次のことを覚えておいてください:
回答:
回答№1は1私はあなたがセグメントを曲げたいと思うそれは、一定の曲率kを持つことになります。つまり、半径1 / kの円の長さ1の弧になるでしょう。次に、セグメントの点(0、t)
(1 - cos(kt))/k , sin(kt)/k
kの値が小さい場合(すなわち、曲率ゼロの事故による除算を防ぐために、次の式(これは上記のk = 0付近のテイラー展開)でマップします。
k t^2 / 2 , t - k^2 t^3 / 6
編集: あなたのコメントに続いて:
あなたの方向ベクトルが(x、y)であると仮定すると、円弧の終わりにその接ベクトルを与える対応する曲率の値(t = 1)は次のように与えられます:
k = atan2(x, y)