まあ、そんなわけで、ワタシだってそれなりに忙しいのである。
ここ最近は、ウルティマに続いて、独創的な、ちょ~高性能プログラム"EVANCE RRAP"にも手を入れていた。
気になっていたところを徹底的に安定性を高め、さらに高性能化させていたのだ。
で、今回解説する、ウルティマの新コマンドなんだが、実は、"EVANCE RRAP"から拝借したものである。(笑)
ウルティマの最も肝となるコマンドは、前にもこのブログで書いたことがあると思うが、"DeleteCurveKinks_Rebuild"というコマンドである。
これを使うことでポリラインなどをキンクのない三次元曲線に変換が可能になることで、エヴァンスでは、柔軟なモデリングが可能になるわけである。
…が、このコマンドには、弱点があった。
それというのは、次数1か2ばかりで構成された曲線だと非常に具合がいいのだが、それに、次数3が加わった曲線だと、正直、いまひとつだったのである。(笑)
たとえば、こんな感じの曲線である。
見たとおり、2本の直線(次数1)に次数3の曲線をくっつけた(ジョインした)曲線である。
これに旧バージョンの"DeleteCurveKinks_Rebuild"をかけると、
黒い線が元の線、オレンジ色のが新しくできた線である。
こんな感じで、どんなに設定で、「CVPoint数」を増やしても、元が次数3の曲線だった部分は、そのままである。
なぜといって、そういう設計だったからである。(爆)
特に気になるのは、次数1の直線と次数3の曲線の合わせ目の、次数3の曲線側がキンクを外したことによって、コントロールポイントの位置は同じでもバインドがあまくなるので、たわんでしまうところである。
もとの形状に近づけるには、コントロールポイントの修正が不可欠だった。
答え一発、カシオミニ~♪。
…ちょっと旧いが、新コマンド"DeleteCurveKinksForRRAP"では、この通りである。
コントロールポイントはリビルドしたように均一に配置され、さらには、元の曲線に近い形状に近づけるべく再計算するというプログラムが入れてあるのだ。(笑)
"EVANCE RRAP"ではとくに、コントロールポイントが均一になることが求められたので作ったのだが、非常に具合がいいので、ウルティマにも大盤振る舞いである。
なんだか、「ジュエリーCADブログリンク」も、「ジュエリーCAD」に関係ないブログばかりになってしまっているが、それも時代なんだろう。(笑)
いよいよ「ジュエリーCAD」もオワコンの様相を呈してきているが、「エヴァンス」は、まわりの空気などお構いなく進化し続けるんだよ。