KVSプログラムの作成
KVSを使ったプログラムを作成するには次の点に注意するとよいかも?
* クラス名と同じヘッダファイルをインクルードする
例)kvs::Vector3d クラスを使いたい場合には
<kvs/Vector3> をインクルードする
* サンプルプログラムを参考にする
サンプルプログラムダウンロードしたソースファイルの中にたくさん用意されています.
(ダウンロードの際に作成されたディレクトリ内の)/Example
というディレクトリ内にサンプルプログラムがあります.
* 使用したいクラスにどんなメンバ関数があるのか知りたい場合
ソースファイルの中からヘッダファイルを探してみることがわかりやすいかと思います.
ヘッダファイルは基本的にクラスメイト同じ名前で作成されています.
ダウンロードの際に作成されたディレクトリ内の
Source/Core
内に存在しています.
ファイルを探すコマンド find を使って,ダウンロードの際に作成されたディレクトリへ移動して
$ find . -name "探したいクラス名"
で探すと探せると思います.
例) RayCastingRendererのメンバについて調べたい場合は
$ find . -name "RayCastingRenderer*"
でヘッダファイル RayCastingRenderer.h がどこにあるのか調べられます.
KVS内で定義されている型
KVSでは,型の名前を以下のように名前を変えて使用しています.
KVS内での型名 |
KVS内での型名 C言語での型名 |
---|---|
kvs::Int8 | char |
kvs::UInt8 | unsigned char |
kvs::Int16 | short |
kvs::UInt16 | unsigned short |
kvs::Int32 | int |
kvs::UInt32 | unsigned int |
kvs::Real32 | float |
kvs::Real64 | double |
kvs::Real128 | long double |
このTutorial の構成
本 Tutorial は以下のような構成です.
-
*3次元ベクトルの演算
- -- ベクトルクラスについて
- -- 例 3次元ベクトルの演算
- -- 問題 ベクトルの直交性
-
*行列クラス
- -- 行列クラスについて
-
*行列の演算(行列クラスの応用)
- -- 例 行列の演算
- -- 問題 標準系を求めよう
-
*乱数生成
- -- 例 モンテカルロ法を使って円周率を求める
- -- 問題 円上にランダムに点を生成し,plot してみよう
-
*オブジェクトについて
- -- オブジェクト
- -- FLDファイル
- -- 問題 ボリュームデータの記述について
-
*構造型ボリュームデータの作成
- -- 例 構造型ボリュームデータ
- -- 問題 KVSML形式のボリュームデータを作成しよう
-
*面データの可視化
- -- 例 面データの可視化
- -- 問題 ワイヤーフレーム表示
-
*等値面の可視化
- -- 例 等値面の可視化
- -- 問題 複数等値面の描画
-
*可視化パイプライン
- -- 可視化パイプライン
-
*レイキャスティングの実装
- -- 例 ボリュームデータのレイキャスティング
-
*PBVRの実装
- -- 例 粒子ベース・ボリュームレンダリングの実装
- -- 問題 可視化パイプラインを使ってプログラムを作ろう
-
*付録:プログラム集
Updated at April 12, 2017
at May 17, 2021