ネームスペースを除去する

 
 
 

特定のネームスペースからノードを除去してから、予約したネームスペースをシーンから完全に除去することが必要になる状況があります。たとえば、次のような状況です。

ネームスペースを除去する際には、リファレンス オブジェクト ネームスペースまたは読み込まれたオブジェクト ネームスペースを親シーン内に存在するネームスペースとマージすることもできます。重複したネームスペースが発生すると、それらのネームスペースがマージされ、重複したオブジェクト名に番号を使用して増分的に接尾辞が付けられます。

ネームスペース エディタ(Namespace Editor)または MEL コマンドを使用してネームスペースを除去できます。

ネームスペース エディタを使ってネームスペースを除去する

  1. ネームスペースを使用するオブジェクト/ノードを選択して、ノードのネームスペースを決定します。

    オブジェクト/ノードのネームスペースがチャネル ボックス(Channel Box)アウトライナ(Outliner)にハイライト表示されます。たとえば、ネームスペースを割り当てたオブジェクトの名前は次のように表示されます。

    spaceJunk:pSphere1
    
  2. ネームスペース エディタ(Namespace Editor)で除去するネームスペースを選択します。
  3. 削除(Delete)ボタンをクリックします。

    除去するネームスペースにノードが含まれている場合は削除:(Delete:)ネームスペース ウィンドウが表示されます。

  4. 削除:(Delete:)ネームスペース ウィンドウで、次のいずれかをクリックします。
    • ルートとマージする(Merge with Root)は、ネームスペースをマージし、削除したネームスペースに含まれていたノードをルート ネームスペースに移動します。
    • ペアレントとマージする(Merge with Parent)は、ネームスペースをマージし、削除したネームスペースに含まれていたノードを直接の親ネームスペースに移動します。
    • 削除(Delete)は、ネームスペースとネームスペースに含まれているノードを削除します。

MEL コマンドを使用してネームスペースを除去する

次の 2 つのプロシージャでは、namespace MEL コマンドを使用してシーンの既存のネームスペースからノードを除去する方法を示します。ネームスペースとそのコンテンツを除去することも、ネームスペースを除去してそのコンテンツをルート ネームスペースまたは親ネームスペースとマージすることもできます。

シーンのすべてのノードに対して指定したネームスペースを除去するには

  1. ネームスペースを使用するオブジェクト/ノードを選択して、ノードのネームスペースを決定します。

    選択したオブジェクト/ノードのネームスペースは、チャネル ボックス(Channel Box)アウトライナ(Outliner)などに表示されます。割り当てられたネームスペースを持つオブジェクトの名前が次のように表示されます。

    spaceJunk:pSphere1
    

    この例では、ネームスペースが spaceJunk になります。

  2. コマンド ライン(Command Line)で、次の操作を実行します。
    • spaceJunk ネームスペースを除去して spaceJunk ネームスペース内に存在するノードをルート ネームスペースとマージするには、次のように入力します。
      namespace -mergeNamespaceWithRoot -removeNamespace "spaceJunk";
    • spaceJunk ネームスペースを除去して spaceJunk ネームスペース内に存在するノードを親ネームスペースとマージするには、次のように入力します。
      namespace -mergeNamespaceWithParent -removeNamespace "spaceJunk";
    • spaceJunk ネームスペース内に存在するノードを移動して既定のネームスペース内に配置します。
      namespace -mv “spaceJunk” “:” -f
      

      spaceJunk ネームスペースを持っていたノードは指定されたネームスペースを持たなくなります。ここで、: は既定のネームスペースを示し、-f フラグはネーミング コンフリクトが発生しても強制的にコマンドを実行します。結果として、同一の名前のノードには増分番号が割り当てられます。

ファイルから予約済みのネームスペースを除去するには

注:予約済みのネームスペースを除去するには、まずそのネームスペースに既存シーンのノードがないことを確認する必要があります。詳細については、上記のプロシージャを参照してください。
  1. 予約済みのネームスペースを除去する前に、その名前を調べることが必要です。シーン内のネームスペースを特定する方法については、Maya ヘルプの namespaceInfo を参照してください。この例では、除去するネームスペースを spaceJunk とします。
  2. コマンド ラインに次のテキスト文字列を入力して、予約済みのネームスペース spaceJunk をシーンから除去します。
    namespace -rm “spaceJunk”
    
    注:

    ネームスペースには名前を付けることができないため、シーンで現在使用している既存のネームスペースと競合します。

関連項目