卒業研究


OpenGLによる結び目の近傍抜き出しソフトウェア

A tool for construction of knots using OpenGL



資料(前期)

  • CGと線形代数1(.odp) CGと線形代数2(.odp) CGと線形代数3(.odp) CGと線形代数4(.odp)
  • CGと線形代数5(.odp) CGと線形代数6(.odp) CGと線形代数7(.odp) CGと線形代数8(.odp)


  • ---中間発表用---                            ---卒研発表会用---

  • レジュメ(.pdf) スライド(.odp)                         レジュメ(.pdf) スライド(.odp)


  • 成果物(試作物)

    ---Java3D---                              ---OpenGL(c++)---

  • Java3Dのアプレット                             (水色の)ウィンドウを表示するだけのプログラム
  • アプレットのソース                              冬のお楽しみの宿題のプログラムをいじったもの






  • 成果物(結び目関連)

  • prog3.cpp 結び目(ただの線分の連続)をマウスから入力するプログラム
  • prog4.cpp 3に続き、交点を認識するプログラム
  • prog5.cpp 4に続き、交点を考慮した頂点の情報をコマンドラインに表示するプログラム(失敗)
  • prog6.cpp 5に続き、端点が共に交点の場合、その線分の中点を新たな頂点とするプログラム(中点は良かったが失敗)
  • prog7.cpp 6に続き、交点を形成する4つの線分の情報を整理しようとして失敗したプログラム
  • prog8.cpp 5,6に続き、交点を形成する4つの線分の情報を整理して成功したプログラム
  • prog9.cpp 8に続き、交点に関わる線分は赤・青で塗り、交点に関わらない線分は緑で塗るプログラム
  • prog10.cpp 9に続き、交点の上下情報をコマンドラインから入力するプログラム(入力インターフェイスはここで完成)


  • prog11.cpp 10に続き、交点の上下情報を考慮して線分を色分けして表示するプログラム
  • prog12.cpp 11に続き、線分による結び目を3次元で表示するプログラム
  • prog13.cpp 12に続き、領域を把握して表示しようとして失敗したプログラム
  • prog14.cpp 13に続き、領域の候補を把握して表示するプログラム
  • prog15.cpp 14に続き、領域を把握して各領域を色別に表示する表示するプログラム
  • prog16.cpp 15に続き、図形の外に三角形を配置して表示するプログラム
  • prog17.cpp 16に続き、図形の外の三角形と、図形を、8本の線分で接続したものを表示するプログラム
  • prog18.cpp 17に続き、交点の認識の仕方を改良したプログラム
  • prog19.cpp 17,18に続き、図形の外の三角形と、図形を、8本の線分で接続することで新たに出来た領域を8個表示するプログラム
  • prog20.cpp 19に続き、図形の外周把握・図形の外の領域把握のバグ除去、領域の候補から領域を決定する部分を改良したプログラム
  • prog21.cpp 20に続き、図形の外の三角形と、図形との、領域把握に関するバグを直そうと奮闘したプログラム
  • prog22.cpp 21に続き、図形外の領域把握・領域の候補の把握・領域の候補から領域を決定する部分を修正したプログラム


  • prog23.cpp 22に続き、全ての領域を三角形分割しようとして失敗したプログラム
  • prog24.cpp 23に続き、三角形分割の改良、領域の頂点数が3つでも、3点が1直線上にある余計な領域の排除したプログラム
  • prog25.cpp 24に続き、3次元空間に三角柱を作り、四面体分割を計3回施した四面体のデータを把握したプログラム
  • prog26.cpp 25に続き、四面体群から近傍となる四面体を把握したプログラム
  • prog27.cpp
  • prog28.cpp 27に続き、更にパワーアップしたプログラム
  • prog29.cpp 28に続き、卒研発表会に用いたプログラム


  • prog_output.cpp 近傍のデータファイルを読み込み、3次元で近傍を表示するプログラム
  • prog_output2.cpp "prog_output"とやることは全く同じで、データの格納形式が少し異なるプログラム
  • prog_output4.cpp 卒研発表会に用いたプログラム


  • 近傍抜き出しに必要なもの一式↓↓

  • neighborhood_set.zip プログラムの動作の説明、実装する上でのアイディアを書いたメモ付き






  • 近傍抜き出しの歴史

  • g-2007 加藤さん
  • g-2007 田村さん
  • g-2006 伊藤さん
  • g-2005 曽根さん



  • 3/13までの目標:「3次元CGの基礎と応用」、「CGのための線形代数」の本を読む!

    4/6までの目標:Java3DとOpenGLで色々なCGを作る!

    12月までの目標:近傍抜きだしソフトウェアの完成!!


  • 3年生への宿題ページ