<< Metasequoia PythonのバージョンはPython2.2 戻る メタセコイアからRIB出力 ライト設定 >>

直線の始点、終点の座標を求める

Metasequoia Pythonで
メタセコイアの「面の作成」で「辺」をクリックし、一本の直線を描画する。オブジェクトパネルで、オブジェクト名をobj1_lightとする。
この直線がRenderManのライトの向きにしようかと検討中。
それで、始点と終点の座標を出力するスクリプトを作ってみた。
ありがとうございます。
助かります。
以下はMetasequoia Pythonスクリプトです。
オブジェクト名にlightを含む文字列であること。頂点は2個以内であること。で、座標を出力します。

#face_index22.py
class S(str):
def __contains__(self,x):
for i in range(len(self)):
if self.startswith(x,i): return 1



doc=MQSystem.getDocument()
out=MQSystem.println

#obj=doc.object[doc.currentObjectIndex]
#out(str(obj.numFace))
#out(str(obj.numVertex))
#out(str(obj.name))

num = doc.numObject

for n in range(0,num):
obj = doc.object[n]
out(str(obj.name))
if obj is None: continue

for face in obj.face:
for aIndex in face.index:
out(str(aIndex))

if obj.numVertex>2: continue
if "light" in S(str(obj.name)):
for k in range(0,obj.numVertex):
out(str(obj.vertex[k].pos.x)+","+str(obj.vertex[k].pos.y)+","+str(obj.vertex[k].pos.z))

  • -
  • -

<< Metasequoia PythonのバージョンはPython2.2 戻る メタセコイアからRIB出力 ライト設定 >>