謄箸IPO

投稿ツリー


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

通常 謄箸IPO

msg# 1.2
depth:
1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 .2 | 投稿日時 2006/9/8 22:40
num  新米   投稿数: 3
こんにちはnumと申します。
今更ですがテキストファイルからipoに取り込む方法としてこんな感じではいかがでしょう?(以下は一つのオブジェクトのみの分なのでオブジェクトが複数ある場合は、この処理を繰り返す必要があります)

例えば
1 objectA 0 2
2 objectA 10 5
3 objectA 15 7
4 objectA 20 9
...

のような感じで書かれdata.txtというファイルがあったとして

import Blender
from string import atof,atoi,split 

file ='d:\\data.txt'

objA =Blender.Object.Get("Cube")
ipoA = Blender.Ipo.New("Object", "A_IPO")

pxA = ipoA.addCurve('LocX')
pyA = ipoA.addCurve('LocY')

f=open(file,'r')
fr=f.readline()
while fr!="":
  frdata=split(fr," ")
  
  t=atoi(frdata[0])
  xA=atof(frdata[2])
  yA=atof(frdata[3])
  pxA.addBezier((t, xA))
  pyA.addBezier((t, yA))
  
  fr=f.readline()

pxA.update()
pyA.update()

objA.setIpo(ipoA)

Blender.Redraw()
f.close()

(さっき投稿してみたところ、上のスクリプトからインデントが消えてしまいますね。while fr!="":の次の行からfr=f.readline()までスペースかTABでインデントしてあげてください。使いなれていなくてすいません)
投票数:8 平均点:3.75

  条件検索へ


ログイン

ユーザ名:

パスワード:



パスワード紛失

クイックリンク

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

●ニュース(英文)
BlenderNation

●Blenderコミュニティ
blenderartists.org

●Blender Q&A
- Blender Stack Exchange

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


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