他のスクリプトからの操作

投稿ツリー


このトピックの投稿一覧へ

通常 他のスクリプトからの操作

msg# 1
depth:
0
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2009/9/21 16:36
leo  新米 居住地: 東京  投稿数: 9
別のアプリケーションから書き出したpyファイルをBlenderのscriptingから呼び出して、
存在するカメラの位置と方向を変更したいのですが、うまくいきません。

Blender上で動かすファイル
read.py

from math import *
from Blender import Scene, Mesh, Window, Camera, Lamp
import os
import Blender

scn = Scene.New('myScene')
scn.makeCurrent()

msh = Mesh.Primitives.Cube(1.7)
obj = scn.objects.new(msh, 'myCube')
obj.loc = (0, 0, 1.5)
obj.rot = (0, 0, 40*pi/180)

lmpobj = Lamp.New('Spot')
lmpobj.setMode('Shadows')
lmpobj.setEnergy(0.7)
lmpobj.col = [1, 1, 1]
obj = scn.objects.new(lmpobj)
obj.loc = (0, 0, 10)

camobj = Camera.New()
camobj.scale = 35.0
obj = scn.objects.new(camobj, 'myCamera')
obj.loc = (0, -6.508, 5.344)
obj.rot = (55*pi/180, 0, 0)
scn.setCurrentCamera(obj)

os.system('.blender\scripts\d.py')



呼び出すファイル
d.py

from Blender import Camera
obj = Camera.Get('myCamera')
obj.loc = (-0.010339,0.029096,0.511219)
obj.rot = (-23.397274,6.665778,-7.234379)

#数値をこのファイルで変えたい


実行すると

from Blender import Camera
ImportError: No module named Blender

というエラーが出てカメラの値が変更されるどころか
インポートができません。
Blenderモジュールはインポートしなくても使えるのではなかったでしょうか。
呼び出す側のBlender上で最初に動かす方は問題なく働くのですが、
呼び出したファイルでBlender関連のAPIを使うと同じようなエラーが出ます。

ファイルの場所はいずれも.blender\scripts
でBlenderは2.49a、Pythonは2.62、OSはXP SP3です。
投票数:18 平均点:2.22

  条件検索へ


ログイン

ユーザ名:

パスワード:



パスワード紛失

クイックリンク

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

●ニュース(英文)
BlenderNation

●Blenderコミュニティ
blenderartists.org

●Blender Q&A
- Blender Stack Exchange

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


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