実はあるのかもしれないけど、LWのモデラーにはリロードが無いっぽい
リロードするためだけにプラグインを作るのはどうかと思ったので、LScriptで作ることにした
で、LScriptにはリロードするコマンドが無かった ・・・_| ̄|○
SaveCmdListで作られるコマンドリストにはリロードするコマンドあるんだけど、
LScriptにはモデラーコマンドを実行するコマンドも無いのね・・・_| ̄|○
「ユーザーコマンドに登録すればいいじゃん」、と自画自賛しつつ登録しようとしたら、REVERTコマンドの引数が
ファイル名ということに気づいた。登録できないじゃん・・・_| ̄| ...((○
というわけで、LScriptでモデラーコマンドを実行できるプラグインを作った
リロードする為だけにプラグインを作ったみたいなので、ピボットポイントを設定するスクリプトも作った。使わないけど
ちょっぴりだけどLScriptで出来ることが増えます
*「RunCmd.p」は、LScriptでモデラーコマンドを発行出来るように
する為のプラグインです、単体では役に立ちません。
cmdseq("ModelerCommand", sCommand)
(使用例1)
//オブジェクトをリロードするスクリプト
main
{
obj = Mesh(0);
if( nil == obj.filename )
{
error("Unnamed object");
}
else
{
cmd = "REVERT " + obj.filename;
cmdseq("ModelerCommand", cmd);
}
}
(使用例2)
//ピボットをメッシュの中心に設定するスクリプト
main
{
ly = lyrfg();
bb = boundingbox(ly[1]);
if( nil == bb )
{
error("Not any points");
}
else
{
piv[1] = (bb[1].x + bb[2].x) * 0.5;
piv[2] = (bb[1].y + bb[2].y) * 0.5;
piv[3] = (bb[1].z + bb[2].z) * 0.5;
cmd = format("SETPIVOT <$1 $2 $3>" , piv[1], piv[2], piv[3]);
cmdseq("ModelerCommand", cmd);
}
}