スクリプトで「断面ビューポートで構造用図形として扱う」を設定する方法。

自前の木造用ツールでモデリングをしていて、構造材が断面ビューポートで構造用図形として扱われていないことに気づいたのですが、割と初期のころに対応したつもりが該当するコードが見当たりません。

以前、うまくいったのかどうかも思い出せず、改めて設定することに。

VS:Function Reference Appendix

エディタで条件設定することで、「断面ビューポートで構造用図形として扱う」は'asStructure'というパラメーターに対応するということまでは突きとめたのですが、それをどう設定すればよいか分かりません。

いろいろ試してもうまくいかないので他の方法を探してみます。

VWのリファレンスが載っているサイトに「VS:Function Reference Appendix(関数リファレンス付録)」というページがあります。

いろいろなパラメーターが載っていて、対応するパラメーターを設定すればいろんなことができるのでは、と思われます。

例えば添景を作成するスクリプトをつくる際に、参考にしたコードに

vs.SetObjectVariableHandle(hTextureBitMap2, 528, hImage2) 

という一行があります。先程のページの528番、

画像1

'Default Image Fill Flip'に画像を設定しているらしいことは分かるのですが、実際何を行っているのかよく分かりません。ただ、こいつを使うとパラメーターを設定できるっぽいことは分かりました。

Mark Object as Structural

先程のリファレンスをしつこく探してみると、それっぽいパラメーターを見つけました。

画像2

702番です。

試しに

vs.SetObjectVariableHandle(h, 702, True)

なんかをいろいろ試行錯誤しても、一向に「断面ビューポートで構造用図形として扱う」が設定されません。

うーん、これじゃないのかなー、と一度諦めたのですが、何かの拍子に次の関数があるのを見つけました。

あっ、さっきのやつはハンドルを指定する専用なのかも。BOOLEANならこっちを使うといいのでは?(さっきのリファレンスの右側にもObjectVariableBooleanと書いているではないですか)

それで試してみたらうまくいきました。

画像3

パラメータを直接設定できた、ということは、他にもいろいろ応用が効きそうです。

(もしかしたら同じことを試したことがあるような気もします・・・。記憶力がカスなので、また同じことをしないようにnoteに書いておく。)

選択図形をまとめて「断面ビューポートで構造用図形として扱う」にするスクリプトもつくっておこう。

この記事が気に入ったらサポートをしてみませんか?