CSVデータをIPOとしてインポートするスクリプト

  • このフォーラムに新しいトピックを立てることはできません
  • このフォーラムではゲスト投稿が禁止されています

投稿ツリー



前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 .2 | 投稿日時 2006/10/11 1:31
Hans  常連   投稿数: 52
アップロードさせていただきました:
Blenderを初めたてでまだあまりよく分かっていないのですが、Pythonでほしかった機能を作ったところうまく動いたため、初アップロードさせていただきました。剛体の運動シミュレーション結果をより視覚に訴えるムービーにBlenderで作成するときに、正確なデータに基づいたアニメーションを作成することを目的に作成しました。ぜひ一度お試しいただければ幸いと思います。

名前:
CSV IPO Importer v0.2 beta

ダウンロード:
:download: CSV_IPO_Importer_v0_2beta.zip

出来ること(機能):
CSVファイルのデータを基にIPOカーブを作成します。
ExcelやMatlabなどで計算させた結果データをBlenderのアニメーションで正確に表示したムービーを作成することを目的としています。結果データをCSV形式のファイルで保存しておき、このCSVファイルをこのスクリプトを使って読み込みます。そしてCSVデータに基づいてIPOカーブを作成します。

使うには:
1. こちらから「CSV_IPO_Importer_v0_2beta.zip」ファイルをダウンロードします。このZipファイルを解凍すると「CSV_IPO_Importer_v0_2beta.py」ファイルがあります。
2. Blenderを現在起動中の方は一度Blenderを終了します。
3. Blenderのインストールフォルダ(デフォルトで「Blender Foundation」)下の「Blender」→「.blender」→「scripts」フォルダに「CSV_IPO_Importer_v0_2beta.py」ファイルを配置します。(デフォルトでアドレスは「C:\Program Files\Blender Foundation\Blender\.blender\scripts」になります。)
4. これでこのスクリプトを使う準備が整いました。

使い方:
1. まず読み込ませるCSVファイルを作成します。CSVファイルは1列目に時間[sec]データを、2列目から任意の列までに位置や回転角データを格納させます。(CSVデータのサンプルファイルがZipファイルに添付してあります。)
2. Blenderを起動します。
3. CSVデータに基づいたアニメーションをさせたいオブジェクトを1つ選択します。
4. Window Typeを「3D View」から「Scripts Window」にします。
5. メニューから「Scripts」→「Animation」→「CSV IPO Importer v0.2 beta (.csv)」を選択します。
6. ファイル選択ウィンドウになります。読み込むCSVファイルを選択して「Import (.csv)」ボタンをクリックします。
7. 設定ウィンドウになります。「To what key do you want to import the columns:」ラベルの下にあるコンボボックスの数がCSVファイル内にある列数になっています。CSVファイルは1列目に時間[sec]データを格納したので1つ目のコンボボックスから「[Frame]」を選択します。同じようにして2列目にx座標データを格納したなら2つ目のコンボボックスから「LocX」を選択します。このようにしてどの列をどのIPOとして読み込むのかを設定をします。
8. 「Import」ボタンを選択します。
9. これでインポートされ、IPOカーブが作成されます。(インポートした結果の.blendサンプルファイルがZipファイルに添付してあります。)

履歴:
v0.1 beta (2006/10/11)
..初版
v0.2 beta (2006/10/13)
..デバッグ出力機能を追加(まんだ 様のご指摘)
投票数:2 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2006/10/11 1:40
Hans  常連   投稿数: 52
このスレッドを作成させていただきましたHansと申します。つかぬ事をお聞きして申し訳ありませんが、御サイト様の「Upload File :」にファイルアドレスを指定してアップロードしたかったのですが、ファイルアドレスを指定して「送信」を押すと次のページが真っ白になって投稿が成功いたしませんでした。何か設定のし忘れなどご指摘いただければ幸いと思います。
投票数:2 平均点:5.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2006/10/11 3:37
まんだ  長老 居住地: むかしは本州の西端  投稿数: 570
Hans さん、はじめまして。
CSVとCVSが頭の中でごっちゃになっているまんだです

Pythonスクリプトを公開してくださってありがとうございます。早速試してみました。すんなりサンプルの通り動くことは確認できました。「やったー」と思いましたが、欲しい機能(?)があります。私わがままですね

それは「デバッグ出力」。標準出力(またはエラー出力)として

1.IPOを作ったオブジェクト名
2.生成されたキーの数(=CSVの行数?)

等の情報が出てくるといいかも、なんて思いました。多分そういうのを排除する方向でこのプログラムを組まれたとは思いますが。出来れば出力をON/OFF出来るとかあるとすばらしいですね

CSVってファイル自体の信頼度は限りなく低い(タダのテキストですから)ような気がするのは私だけでしょうか。

あと、"Import"より、"Animation"カテゴリに、すなわち
引用:
Group: 'Animation'
と書いておくほうがより適切かと思います。

色々と注文を付けてしまいましたけど…
投票数:3 平均点:6.67
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2006/10/11 11:01
Hans  常連   投稿数: 52
>それは「デバッグ出力」。
デバッグ出力の必要性には気付いていませんでした。
>多分そういうのを排除する方向で
とんでもないです。がむしゃらに作ってしまったものです。
>標準出力(またはエラー出力)として
よくよく考えてみればその通りですね。標準出力できるようにスクリプトを改善しておきます。

>CSVってファイル自体の信頼度は限りなく低い(タダのテキストですから)ような気がするのは私だけでしょうか。
そうですね。プライベートに実験結果を処理するときには手軽でいいんですけどね。規格もないですしね。

>あと、"Import"より、"Animation"カテゴリに、
そうだったんですか。知りませんでした。すぐに適切なカテゴリに修正します。

追記 (2006/10/13)
簡単ではありますが修正いたしました。何かございましたらご指摘お願いいたします。
投票数:3 平均点:3.33
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2006/10/11 13:02
yamyam  管理人 居住地: そうや、うちはおおさかやー  投稿数: 4404
スクリプトを公開していただきありがとうございます。詳細な説明で使用もわかりやすいと思います。

ファイルのアップロードについてですが、この機能はローカルマシン上のファイルパスを指定するものですので、ネット上に公開されているファイルのアップロードはできません。お手数ですが、一度ローカルPC上にダウンロードされてから、アップロードをお願いします。

投票数:1 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2006/10/12 1:51
Hans  常連   投稿数: 52
ご指示の通りローカルマシン上のファイルパスを指定いたしましたが症状が変わりませんでした。
自分の投稿手順を列挙いたしますので、何度も申し訳ありませんがもう一度ご指示いただければ幸いと思います。
<投稿手順>
1. 「メッセージ:」欄に字を書く。
2. 「Upload File :」の「参照」を押してダイアログからデスクトップにあるファイルを選択する。
3. 「送信」を押す。

(他のスレッドに投稿されている記事を拝見しますと、フロッピのアイコンとファイル名のリンクのセットをよく見かけます。これが御サイト様のアップロード機能によるものと推測しています。他の記事をよく拝見しますと、このフロッピとリンクのセットの位置を記事内で自由に制御出来ているように見えます。しかし自分が投稿させていただいた文章の中にはこのような制御文字を含ませていないのでこの点が原因なのかと自分勝手ながら想像しています。)

投票数:2 平均点:10.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2006/10/13 8:32
yamyam  管理人 居住地: そうや、うちはおおさかやー  投稿数: 4404
ご報告ありがとうございます。原因がわかりました。
ファイル名に.が複数あるとだめなようです。
近いうちに対処したいと思います。お手数おかけしてすみませんでした。


投票数:1 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2006/10/13 10:15
Hans  常連   投稿数: 52
こちらこそお手数おかけいたしまして済みませんでした。
投票数:1 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2006/11/13 1:22
Hans  常連   投稿数: 52
このインポータスクリプトを使ってムービーを作成してみました。


http://video.google.com/videoplay?docid=6382969688763869073
(DeflectionModelを用いたStickSlipのシミュレーション結果)

動きは微妙な感じですが、一応摩擦のモデルを使って数式処理ソフト上で簡単にシミュレーションを実行して結果をCSVデータとして保存し、そのCSVファイルをインポータスクリプトを使ってBlenderに読み込んでIPOを作成し、ムービーを作成しました。一応シミュレーション結果を基に動いています。
投票数:1 平均点:10.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2006/11/13 11:06
yamyam  管理人 居住地: そうや、うちはおおさかやー  投稿数: 4404
拝見しました。非常に興味深いです。
物理の授業などで、生徒たちに視覚化してみせるといった用途も考えられますね。
投票数:1 平均点:0.00

  条件検索へ


ログイン

ユーザ名:

パスワード:



パスワード紛失

クイックリンク

2021/07/01版
●Blender.org
BlenderFoundation
- Blenderのダウンロード
- 公式チュート等
- 公式マニュアル(和訳)

●ニュース(英文)
BlenderNation

●Blenderコミュニティ
blenderartists.org

●Blender Q&A
- Blender Stack Exchange

●テストビルド
Buildbot(自動生成)


●開発関連
公式開発サイト
Blender開発blog
Blender Wiki