スクリプトで「断面ビューポートで構造用図形として扱う」を設定する方法。
自前の木造用ツールでモデリングをしていて、構造材が断面ビューポートで構造用図形として扱われていないことに気づいたのですが、割と初期のころに対応したつもりが該当するコードが見当たりません。
以前、うまくいったのかどうかも思い出せず、改めて設定することに。
VS:Function Reference Appendix
エディタで条件設定することで、「断面ビューポートで構造用図形として扱う」は'asStructure'というパラメーターに対応するということまでは突きとめたのですが、それをどう設定すればよいか分かりません。
いろいろ試してもうまくいかないので他の方法を探してみます。
VWのリファレンスが載っているサイトに「VS:Function Reference Appendix(関数リファレンス付録)」というページがあります。
いろいろなパラメーターが載っていて、対応するパラメーターを設定すればいろんなことができるのでは、と思われます。
例えば添景を作成するスクリプトをつくる際に、参考にしたコードに
vs.SetObjectVariableHandle(hTextureBitMap2, 528, hImage2)
という一行があります。先程のページの528番、
'Default Image Fill Flip'に画像を設定しているらしいことは分かるのですが、実際何を行っているのかよく分かりません。ただ、こいつを使うとパラメーターを設定できるっぽいことは分かりました。
Mark Object as Structural
先程のリファレンスをしつこく探してみると、それっぽいパラメーターを見つけました。
702番です。
試しに
vs.SetObjectVariableHandle(h, 702, True)
なんかをいろいろ試行錯誤しても、一向に「断面ビューポートで構造用図形として扱う」が設定されません。
うーん、これじゃないのかなー、と一度諦めたのですが、何かの拍子に次の関数があるのを見つけました。
あっ、さっきのやつはハンドルを指定する専用なのかも。BOOLEANならこっちを使うといいのでは?(さっきのリファレンスの右側にもObjectVariableBooleanと書いているではないですか)
それで試してみたらうまくいきました。
パラメータを直接設定できた、ということは、他にもいろいろ応用が効きそうです。
(もしかしたら同じことを試したことがあるような気もします・・・。記憶力がカスなので、また同じことをしないようにnoteに書いておく。)
選択図形をまとめて「断面ビューポートで構造用図形として扱う」にするスクリプトもつくっておこう。
この記事が気に入ったらサポートをしてみませんか?