Name 値

Name クラスは、名前の特性を定義します。Name は、主に関数呼び出しでオプション セットの 1 つを指定するパラメータとして使用されます。

リテラル

#<var_name>

Name リテラルの詳細は、「名前」を参照してください。

コンストラクタ:

<string> as name

文字列値を名前に変換します。

演算子

<name> == <name>
<name> != <name>
<name> < <name>
<name> > <name>
<name> <= <name>
<name> >= <name>

名前の比較は、アルファベットで行われます(大文字小文字は区別しません)。これにより、配列ソート関数を使用して名前順に配列をソートできます。

メソッド

copy <name>

名前値の新しいコピーを作成します。

<name> makeValidName <string>

指定した文字列から有効な名前値の名前を返します。すべてのスペースおよび句読点はアンダースコア「_」文字で置き換えられます。これは、ロールアウト コントロールまたはスクリプト化された Paramblock2 パラメータを文字列から安全に作成する場合に役立つことがあります。

3ds Max 2018 以降で使用可能です。

以下のスクリプトは、Name クラスのさまざまなリテラル、コンストラクタ、演算子の使用例を示します。

スクリプト:

    -- name test bed
    name1=#Hello-- set variable to name literal
    name2="HELLO"as name-- convert string to name
    if name1 == name2 do print"names are equal"-- compare the names
    box_props=getpropnames box-- get the properties of box class
    sort box_props-- sort the property names

出力:

    #Hello-- result of line 2
    #Hello-- result of line 3
    "names are equal"-- output from line 4
    "names are equal"-- result of line 4
    -- following are the results of lines 5 and 6
    #(#height, #length, #lengthsegs, #width, #widthsegs, #mapCoords, #heightsegs)
    #(#height, #heightsegs, #length, #lengthsegs, #mapCoords, #width, #widthsegs)