Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

最近の作業部屋活動履歴

2023-04-16
2023-03-24
2023-03-22
2023-01-25

最近のWikiの更新 (Recent Changes)

2023-04-16
2023-03-24
2023-01-25
2023-01-08
2023-01-07

Wikiガイド(Guide)

サイドバー (Side Bar)

ポリゴン形状に対して光線追跡するプログラム

概要

Rhinoceros の 3dm形式を読み書きできるライブラリ OpenNurbs には、幾何計算に関する機能も多く含まれています。その中に、ポリゴンに対する干渉を計算できるクラス ON_RTree があり、 これを利用するとポリゴンと半直線との交点計算ができるようなので、試しに光線追跡プログラムを作ってみました。 計算条件は json形式のファイルで設定します。プログラムはコマンドライン引数の1つめにjsonファイルを指定することで起動します。 形状データは Binary STL 形式で指定します。光源は平行光源、またはosram形式のray file を設定できます。

ライセンス:Boostライセンス

使用しているライブラリ

JSONをC++で扱えるライブラリです。 計算条件 設定ファイル読み込みに使用しています。
  • OpenNURBS (Permissiveな独自ライセンス)
Rhinoceros の 3dm形式を読み書きできるライブラリです。 幾何計算に関する機能も多く含まれるため、活用させていただいております。
  • CxImage (zlib/libpng ライセンス)
画像処理ライブラリです。 試しに作ってみた簡易CG作成機能の結果をpng形式で書き出すために使用しています。
  • ptypes (zlib/libpng ライセンス)
マルチスレッド、ネットワーク等を扱うためのライブラリです。 光線追跡を並列計算するために使用しています。

修正履歴

  • 2015/11/26 バグ修正

ダウンロード