
2019.08.12 - 2019.10.12
Max Script 基本文法:条件分岐・エラー回避処理
目次
・
トップ
・
「MaxScriptヘルプ」の見かた
・
コメントの記述
・
デバッグ用に変数の値などを表示したい
■MaxScript 基本文法
|
変数 |
演算子 |
文字列 |
配列 |
ループ |
条件分岐・エラー回避処理 |
関数(Function) |
条件分岐
if文
ヘルプ
[HELP] MAXScript 言語リファレンス > プログラム フロー制御 > If 式
[HELP] よくある質問と回答 > MAXScript の構文と用語 > If...Then および If...Do を使用するのはどのような場合ですか。
if … then … else
Max Scriptのサンプル
- --[例1]
- a = 10
- b = 10
- if (a != b ) then (
- print "この行は通過しません"
- ) else (
- print "この行は通過します"
- )
if … do …
else を使わない場合、if…do…を使うことが推奨されています。
Max Scriptのサンプル
- --[例2]
- a = 10
- b = 10
- if ( a == b ) do (
- print "この行は通過します"
- )
case文
ヘルプ
[HELP] MAXScript 言語リファレンス > プログラム フロー制御 > Case 式
Max Scriptのサンプル1
case文を使う場合。
変数「takasa」の値が 「1の場合」、「2の場合」、「3の場合」、「それ以外の場合」 の4つの処理に振り分ける例。
- case takasa of (
- 1:$.pos.z = 10
- 2:$.pos.z = 20
- 3:$.pos.z = 30
- default:$.pos.z = 0
- )
Max Scriptのサンプル2
条件判定で処理を振り分ける例。
変数「takasa」の値 が 「0 未満の場合」、「0 の場合」、「0 を超える場合」の3つの処理に振り分ける例。
- case takasa of(
- (takasa < 0 ):$.pos.z = 10
- (takassa == 0 ):$pos.z = 20
- (talasa > 0):$pos.z = 30
- )
Max Scriptのサンプル
処理内容が複数行にわたる場合は()でくくります。
- a = 1
- case a of(
- 1:(
- print "1";
- print "2";
- )
- 2:(
- print "a";
- print "b";
- )
- default: print "A";
- )
真と偽
解説とメモ
プログラミングにおいて、「真」「偽」という言葉が使われることがあります。
「真」は 「true」。「偽」は 「false」、の意味として理解しておけばほぼ問題ありません。
if 文では then ( の後に記述する処理は、「条件が真の場合」に実行される処理を記述します。
したがって下記のサンプルでは、if文に条件式を記していませんが true のときの処理が実行されます。
Max Scriptのサンプル
- flag = true
- if (flag) then (
- --trueのときの処理
- print "通過します"
- )
エラー回避処理
解説とメモ
エラーが発生したときは正常時とは異なる処理をさせたい場合、「try ~ catch文」で処理を振り分けることができます。
ヘルプ
[HELP]MAXScript 言語リファレンス > プログラム フロー制御 > Try 式
Max Scriptのサンプル
- try(
- select $nothing
- ) catch (
- format "存在しないオブジェクト名です\n"
- )
-