『splitLine()』キター!!!!!

つーか、貴様がこっそり作っているソフトウェアの関数名を出されても誰も付いて来れんて。
…気を取り直して。

splitLine()関数とは、現在私が独自に開発しているCADソフトウェアにおいて、中核を担う関数のひとつである。今朝の段階で依然プログラム上に実装されていなかった機能は2種類存在し、その一方がこれだったという訳だ。早い話が‘画面上に存在する選択された線分を、データ構造レベルでバラバラにぶった切る’というだけの機能なのだが、線分の交差判定や交点算出が(諸々の事情により)恐ろしく面倒で、かつ大量のデータを一気に処理せねばならない都合上、凄まじい量のポインタの繋ぎ換えミスやその他のバグが蓄積していた。
今日はひたすらそれらを退治した結果、ようやく正常に動作するレベルまで至ったという訳。少なくとも、重複点の削除やリスト操作に関しては完璧に実装されている(気がする)。

残された機能は‘選択された線分のうち結合可能なものをくっつける’という、分割処理に比べれば圧倒的に楽な処理だけである(※結合処理は要素数がどんどん減っていく反面、分割処理はひたすら要素数が増え続けるので圧倒的に面倒くさい)。これが完成すれば、今年度目標としている研究成果の約3割程度が達成されたことになる(予定)。

コメントを残す

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>