Rendering学習日記

日々、3DCGの世界は進歩しています。勉強して理解したことをまとめていきます。RenderMan互換レンダラーやグローバル・イルミネーション。いろんなことに好奇心を持って、面白くなる。目指せShader書き!!
ありがとうございます。

オブジェクトパネル

メタセコイアのMetasequoia Python APIいろいろと実験をしながら、納得していく必要があります。オブジェクトの情報を取得する方法について勉強しています。触りながら、いろいろ実験ですね。
いろんなサイトを参考にしながら勉強しています。サクサクできる方はすばらしいです。ありがとうございます。
#obj_info.py
#ログの消去
MQSystem.clearLog()
# ドキュメントを取得
doc = MQSystem.getDocument()
# オブジェクト数を取得
obj_num = doc.numObject
MQSystem.println(" オブジェクト数 : " + str(obj_num))
# インデックス0番のオブジェクトを取得
obj = doc.object[0]
# オブジェクトの頂点数を取得
ver_num = obj.numVertex
MQSystem.println(" 頂点数 : " + str(ver_num))
# オブジェクトの面数を取得
poly_num = obj.numFace
MQSystem.println(" 面数 : " + str(poly_num))
#1 つめのオブジェクトにおいて選択している頂点を調べる
for i in range(len(obj.vertex)):
if obj.vertex[i].select:
MQSystem.println(" 選択頂点番号" + str(i))
  • -
  • -

メッセージボックス

Metasequoia Pythonの練習。こんなこともできるのかと試してみる。

#メッセージボックス
a="Hello Metasequoia!!"
MQSystem.messageBox(a)


日本語も出るし、警告音も出ます。
#メッセージボックスその2
MQSystem.messageBox('日本語')
MQSystem.messageBox('日本語2')
MQSystem.messageBox('日本語3')


地道に前に進みます。
ありがとうございます。
  • -
  • -

頂点の座標を求める

メタセコイアで物体を作っておいて、移動ツールで頂点をクリックする。次のスクリプトを実行すると選択されている頂点の座標位置が求められる。複数選択したときも表示出力します。
ありがとうございます。
#現在のオブジェクトの選択した頂点の座標を求める
#select_v1.py
obj=MQSystem.getDocument().object[MQSystem.getDocument().currentObjectIndex]

MQSystem.println("カレントオブジェクト %s" % obj.name)

for vtx in obj.vertex:
if vtx.select: #vertexが選択されているならば,Trueであるならば
pos=vtx.getPos()
MQSystem.println("\tx %f y %f z %f" % (pos.x,pos.y,pos.z))
  • -
  • -
<< 20/30 >>