Openhaptics Toolkitバグ?

Posted by Hiroaki.S | Posted in 備忘録 | Posted on 02-09-2009

0

開発環境整えるだけで二日目.ほんと嫌い.
とりあえず通った.
原因はOpenhaptics Toolkit内で使用される
hdud.libとhlud.libのバグ(?).

どうやら最初にインストールされるライブラリファイルは信用できないらしい.
なので,
C:\Program Files\SensAble\3DTouch\utilities\src
内のHDU,HLUディレクトリ内のプログラムをビルドしてライブラリを作成しなおす.

キター.

これで意味不明なリンクエラーが出ません.
LINK2019 hogehogeと出るのは解決.
これはどう考えても俺のせいじゃないだろ.
ようやく研究が進められる.

以下はPHANToM Omniの動作確認用プログラムです.
動作確認といっても位置だけだから何とも言えないけど,
とりあえずPHANToMが認識されているかは確認できるはず.
ちゃんとPHANToMクラスを作ったものを作成しなければ.

//
//	PHANToM Training.cpp
//
//	ファントムの動作確認用
//	スタイラス位置を無限に取得し続けるだけ.
//

#include <windows.h>
#include <iostream>
using namespace std;

// Openhaptics
#include <HD/hd.h>
#include <HDU/hduVector.h>
#include <HDU/hduError.h>
#include <HD/hdScheduler.h>

#pragma comment(lib, "hd.lib")
#pragma comment(lib, "hl.lib")
#pragma comment(lib, "hdud.lib")
#pragma comment(lib, "hlud.lib")

// Global変数
HDdouble position[3] = {0.0, 0.0, 0.0};

int main()
{
	HDErrorInfo error;
	// 初期化及びエラー処理
	HHD hHD = hdInitDevice(HD_DEFAULT_DEVICE);
	if (HD_DEVICE_ERROR(error = hdGetError()))
    {
        hduPrintError(stderr, &error, "Failed to initialize haptic device");
        fprintf(stderr, "\nPress any key to quit.\n");
        getchar();
        exit(-1);
    }

	// スケジューラーのスタート
	hdStartScheduler();

	while (1){

		// フレームスタート
		hdBeginFrame (hdGetCurrentDevice());

		// スタイラスの現在位置を取得,表示
		hdGetDoublev (HD_CURRENT_POSITION, position);
		cout << position[0] << "," << position[1] << "," << position[2] << endl;

		// フレーム終了
		hdEndFrame(hdGetCurrentDevice());
	}

	return 0;
}

環境を整えるのが一番の敵

Posted by Hiroaki.S | Posted in 備忘録 | Posted on 01-09-2009

0

昨日の続きでまたOpenhapticsをいじっています.

正確にはまだいじっていません.

なんでプログラムは環境を整えるまでが大変なんだろう.

そろそろ慣れたいものです.

忘れないようにメモ

その1

#include <hogehoge>

の場合はVisual Studioが決めた場所から,

#include hogehoge

の場合はプロジェクトの場所から参照.

その2

Openhapticsを使うときはwindows.hも使うっぽい.

Openhaptics Toolkit

Posted by Hiroaki.S | Posted in 備忘録 | Posted on 31-08-2009

0

研究に使用するOpenhaptics Toolkit

どうやらVisual Studio 2008では動かない模様.

とりあえず2005をインストールしてコンパイルを試してみる.

動きそうな感じはする.が,各種エラーで止まる.

開発環境移ったからWindows Platform SDKとか入っていないことに気づく.

諸々の設定終了・・・

が,動かない!

どうやらプログラム側の問題らしい.