Sunday, October 25, 2009

qhull 組み込みメモ(1)

qhullをスタティックライブラリにして,プログラム内で使おうと試みている.
しかし,構造や関数の意味がわからず,苦戦中.
とりあえずここまでの知見をメモ.

・実行について
qh_new_qhull関数を呼び出すことは,実行ファイルを実行したときと同じ.
qh_new_qhullの引数は次元,母点の数,母点,なんかのフラグ,オプション,出力ファイル,エラーファイル.
母点は,1次元配列で要素数は「次元 x 母点の数」,各母点の位置を母点単位で配列に格納しておく.

c++上での呼び出しは以下を記述する.(付属のqhull_interface.cppに書いてある)

#if defined(__cplusplus)
extern "C"
{
#endif
#include
#include
#include "qhull/qhull.h"
#include "qhull/mem.h"
#include "qhull/qset.h"
#include "qhull/geom.h"
#include "qhull/merge.h"
#include "qhull/poly.h"
#include "qhull/io.h"
#include "qhull/stat.h"
#if defined(__cplusplus)
}
#endif

・変数について
Voronoiを計算した場合,ボロノイ頂点数はqh num_goodに入っている.また,face数はqh num_facesに入っている.

なぞが多い.
使うまでには時間がかかりそう.
ソース読めばできると思っていたが,そんなに簡単なソースではなかった.

No comments: