アーティストのためのMaya Python入門 第12回「if文を使ってみよう」

コードのおさらい

from maya import cmds

# lsのtypeフラグを使わないフィルタリング
nodes = cmds.ls(selection=True, dag=True, type="transform")
joints = []
meshes = []
for node in nodes:
    if cmds.nodeType(node) == "joint":
        joints.append(node)
    if cmds.nodeType(node) == "mesh":
        meshes.append(node)
cmds.select(joints) # ジョイントのみ選択
cmds.select(meshes) # メッシュのみ選択
        
# 選択したtransformノードのスケールが1.0を超えるものを抽出し、1.0に修正する
nodes = cmds.ls(selection=True, dag=True, type="transform")
for node in nodes:
    scaleX = cmds.getAttr(node + ".scaleX")
    if 1.0 < scaleX:
        cmds.setAttr(node + ".scaleX", 1.0)

Pythonのおすすめ書籍

関連記事

  1. キューブ1個で15分で作る!ビル景観のプロトタイピング!

    2021-07-21

  2. Dashスクリプトで等間隔&ランダム配置

    2022-10-13

  3. 再帰関数を使って末端ジョイントを取得しよう!

    2021-01-08

  4. アーティストのためのMaya Python入門 第6回「renameコマンドを使って、名前を変更しよう!」

    2020-10-03

コメントをお待ちしています。

コメント

ABOUT

テクニカルアーティストの為のまとめサイトです。

本サイトでは、『YouTube ✕ Blog』を中心に
情報発信をしていきます。

また、テクニカルアーティストとしての様々な
ライフハック記事も投稿予定です。

限定情報会員

PATREONでは、限定情報やサンプルファイルの配布も行っています。登録頂けると更新頑張れます。支援の方よろしくお願いします。


免責事項

本ウェブサイト内で公開している全ての情報の有用性や安全性については当方は一切の保証を与えるものではありません。
利用したことによって引き起こる直接および間接的な損害に対して当方は一切責任を負うものではありません。
全て自己責任でご使用ください。

3DCGBOOK出版

BOOTHで技術書を販売利しております。







スポンサー

ページ上部へ戻る