Transform Propertiesの効果を頂点データに反映させる方法
- このフォーラムに新しいトピックを立てることはできません
- このフォーラムではゲスト投稿が禁止されています
7件表示
(全7件)
すべてのコメント一覧へ
投稿ツリー
-
Transform Propertiesの効果を頂点データに反映させる方法
(mona2009, 2009/5/12 21:15)
-
Re: Transform Propertiesの効果を頂点データに反映させる方法
(uimac, 2009/5/12 22:21)
-
Re: Transform Propertiesの効果を頂点データに反映させる方法
(mona2009, 2009/5/13 0:18)
-
Re: Transform Propertiesの効果を頂点データに反映させる方法
(uimac, 2009/5/13 0:45)
-
Re: Transform Propertiesの効果を頂点データに反映させる方法
(mona2009, 2009/5/13 1:11)
-
Re: Transform Propertiesの効果を頂点データに反映させる方法
(uimac, 2009/5/13 1:17)
-
Re: Transform Propertiesの効果を頂点データに反映させる方法
(mona2009, 2009/5/13 21:57)
mona2009
投稿数: 7
またまた初歩的な質問で申し訳ございません。
SphereオブジェクトをTransform Propertiesでスケーリングしてから
以下のプログラムで頂点を出力したのですが、出力された頂点データはスケーリングされていない状態の球でした。
以下のプログラムだと頂点データはTransform Propertiesの影響を受けないようです。
Transform Propertiesの効果を頂点データに反映させる方法はないものでしょうか。
SphereオブジェクトをTransform Propertiesでスケーリングしてから
以下のプログラムで頂点を出力したのですが、出力された頂点データはスケーリングされていない状態の球でした。
以下のプログラムだと頂点データはTransform Propertiesの影響を受けないようです。
Transform Propertiesの効果を頂点データに反映させる方法はないものでしょうか。
(前略)
file = open(filename, 'wb')
scn = Blender.Scene.GetCurrent()
object = scn.objects.active
if not object or object.type != 'Mesh':
BPyMessages.Error_NoMeshActive()
return
mesh = object.getData(mesh=True)
file.write("static GLfloat " + object.name + "_vertData[] = {\n")
for face in mesh.faces:
file.write("\t" + str(face.verts[0].co.x) + ", " + str(face.verts[0].co.y) + ", " + str(face.verts[0].co.z) + ", ")
file.write(str(face.verts[1].co.x) + ", " + str(face.verts[1].co.y) + ", " + str(face.verts[1].co.z) + ", ")
file.write(str(face.verts[2].co.x) + ", " + str(face.verts[2].co.y) + ", " + str(face.verts[2].co.z) + ",\n")
file.write("};\n\n")
(後略)
投票数:6
平均点:6.67
uimac
投稿数: 49
引用:とあるように、meshはスケーリングされていません。
以下のどれかで可能と思います。
1.エディットモードで拡大する
2.Object.getSize(space)をmeshの頂点とかに上手く掛ける
3.オブジェクトモードで選択してCtrl-A[Scale and Rotation to Obdata]
3が一番お手軽なのですが、これをやる場合、shapekey付きのmeshには出来ません。
…が、私改造のBlenderなら出来ます(宣伝
SphereオブジェクトをTransform Propertiesでスケーリング
以下のどれかで可能と思います。
1.エディットモードで拡大する
2.Object.getSize(space)をmeshの頂点とかに上手く掛ける
3.オブジェクトモードで選択してCtrl-A[Scale and Rotation to Obdata]
3が一番お手軽なのですが、これをやる場合、shapekey付きのmeshには出来ません。
…が、私改造のBlenderなら出来ます(宣伝
投票数:9
平均点:6.67
Re: Transform Propertiesの効果を頂点データに反映させる方法
msg# 1.1.1
mona2009
投稿数: 7
超早速のご返信感謝いたします。
なるほど。3の方法が一般的そうですね。
2がスマートだと思いますけどObject.getSize(space)の情報だけではやりにくそうですね。
Meshの頂点座標を全て参照してMeshの大きさを求めて、Object.getSize(space)をその大きさで割った値をかければいいかも。
Transform PropertiesがAPIで取得できればいいんですけど
なるほど。3の方法が一般的そうですね。
2がスマートだと思いますけどObject.getSize(space)の情報だけではやりにくそうですね。
Meshの頂点座標を全て参照してMeshの大きさを求めて、Object.getSize(space)をその大きさで割った値をかければいいかも。
Transform PropertiesがAPIで取得できればいいんですけど
投票数:5
平均点:4.00
Re: Transform Propertiesの効果を頂点データに反映させる方法
msg# 1.1.1.1
uimac
投稿数: 49
Object.getSize(space)で返ってくるのは、AABBじゃなくて、
TransformPropertiesの値とか返ってきますよ。
親オブジェクト無し
親オブジェクト有り
TransformPropertiesの値とか返ってきますよ。
親オブジェクト無し
import Blender
print Blender.Object.GetSelected()[0].getSize('localspace') #default
import Blender
print Blender.Object.GetSelected()[0].getSize('worldspace')
投票数:9
平均点:5.56
Re: Transform Propertiesの効果を頂点データに反映させる方法
msg# 1.1.1.1.1
mona2009
投稿数: 7
説明不足でした。
Transform PropertiesのScaleX, ScaleY, ScaleZを取得したいってことです。
たぶん、Object.getSize(space)で返って来るのはTransform PropertiesのDimX, DimY, DimZだと想像しています。
Transform PropertiesのScaleX, ScaleY, ScaleZを取得したいってことです。
たぶん、Object.getSize(space)で返って来るのはTransform PropertiesのDimX, DimY, DimZだと想像しています。
投票数:9
平均点:3.33
Re: Transform Propertiesの効果を頂点データに反映させる方法
msg# 1.1.1.1.1.1
uimac
投稿数: 49
コピペで実行できるので、想像じゃなくて、やってみてください。
投票数:7
平均点:5.71
Re: Transform Propertiesの効果を頂点データに反映させる方法
msg# 1.1.1.1.1.1.1
mona2009
投稿数: 7
あ、本当にScaleX, ScaleY, ScaleZ が返ってきますね。
http://www.blender.org/documentation/243PythonDoc/Object.Object-class.html#getSize
> Returns the object's size.
と書かれているのでDimの方が返ってくると思っていました。
おかげさまでこの件解決いたしました。
ありがとうございました。
http://www.blender.org/documentation/243PythonDoc/Object.Object-class.html#getSize
> Returns the object's size.
と書かれているのでDimの方が返ってくると思っていました。
おかげさまでこの件解決いたしました。
ありがとうございました。
投票数:8
平均点:5.00
7件表示
(全0件)
すべてのコメント一覧へ
ログイン
クイックリンク
2021/07/01版
●Blender.org
BlenderFoundation
- Blenderのダウンロード
- 公式チュート等
- 公式マニュアル(和訳)
●ニュース(英文)
BlenderNation
●Blenderコミュニティ
blenderartists.org
●Blender Q&A
- Blender Stack Exchange
●テストビルド
Buildbot(自動生成)
●開発関連
公式開発サイト
Blender開発blog
Blender Wiki
●Blender.org
BlenderFoundation
- Blenderのダウンロード
- 公式チュート等
- 公式マニュアル(和訳)
●ニュース(英文)
BlenderNation
●Blenderコミュニティ
blenderartists.org
●Blender Q&A
- Blender Stack Exchange
●テストビルド
Buildbot(自動生成)
●開発関連
公式開発サイト
Blender開発blog
Blender Wiki