noralogコンテンツへスキップnoralognoralogは「一歩を踏み出しかねている誰かの背中を押そう」をコンセプトに体験談やハウツーの例をまとめます。LinksTweetPocketオブジェクトの座標を揃えるためのパネルをつくってみました。コードを実行すると、3DビューのプロパティパネルにArrangementという名前のパネルが追加されます。適当なオブジェクトにobj1とobj2という名前をつけて、ボタンを押すと整列が実行されます。仕様X、Y、Zごとに、整列を実行するボタンをパネルに配置するボタンを押すと、シーンに配置されている”obj1′′と”obj2′′というオブジェクトに対して整列を実行する整列はobj1を基準として行う。context):self.layout.operator("my.arrangexbutton")self.layout.operator("my.arrangeybutton")self.layout.operator("my.arrangezbutton")ボタンを配置するためのパネルを定義するクラスです。bl_~の値にパネルの名前や配置先などを指定しています。今回は3Dビュー上のNキーを押すと表示されるプロパティシェルフに表示する設定にしてあります。draw()内で、self.layout.operator()に追加するボタンのクラスを渡します。obj1.location.xreturn{'FINISHED'}どの座標軸の場合もほぼ同じ内容です。bl~でパネルのときと同様に、ボタンの名前や表示名を設定します。bl_idnameで大文字を指定するとエラーが起きてしまうので全て小文字で指定してあります。execute()内にボタンを押したときの処理を記述しています。今回は単純にobj2の座標値をobj1の座標値に置き換えているだけです。classes:bpy.utils.register_class(cls)一通りクラスの用意が出来たら、Blenderから扱えるようにbpy.utils.register_class()を使って登録処理をします。最初に作成したクラス一覧のタプルを用意して、ループを使ってから全てのクラスを登録するようにします。この処理は他のスクリプトをつくる場合でも共通の処理のようです。コメントをキャンセルメールアドレスが公開されることはありません。コメント名前メールアドレスサイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。環境を変えることの強力さこの記事を書いた人は......noraイラストや木工が好きなのんびり屋です。足を出すことができない人の背中を押せるようなことができたら良いなぁと思いながらブログをつくっていますー。