ジャンプ先: 概要. 戻り値. 関連. フラグ. Python 例.

概要

polyBoolOp( poly poly , [caching=boolean], [constructionHistory=boolean], [name=string], [nodeState=int], [object=boolean], [operation=int])

注: オブジェクトの名前と引数を表す文字列は、カンマで区切る必要があります。これはシノプシスに示されていません。

polyBoolOp は、取り消し可能、照会可能、および編集可能です。

入力ポリゴン間のブール演算(論理和、論理積、論理差)によって、新しいポリゴンを作成します。
論理差の場合に限り、オブジェクトを選択する順序が重要になります
(結果 = オブジェクト 1 - オブジェクト 2)。
コマンド ラインでオブジェクトを指定しない場合は、アクティブ リストのオブジェクトを使用します。

戻り値

string[]オブジェクト名とノード名

照会モードでは、戻り値のタイプは照会されたフラグに基づきます。

関連

polyCBoolOp, polySeparate, polyUnite

フラグ

caching, constructionHistory, name, nodeState, object, operation
ロング ネーム(ショート ネーム) 引数タイプ プロパティ
object(o) boolean create
結果のオブジェクト、またはディペンデンシー ノードのみを作成します(適切な場合)。
operation(op) int create
1 = 論理和、2 = 論理差、3 = 論理積
共通のフラグ
caching(cch) boolean createedit
すべてのアトリビュートのキャッシングを切り替えることで、再計算を不要にします。
constructionHistory(ch) boolean createquery
コンストラクション ヒストリをオンまたはオフにします(適切な場合)。コンストラクション ヒストリがオンの場合、対応するノードがメッシュのヒストリ チェーンに挿入されます。コンストラクション ヒストリがオフの場合、操作オブジェクト上に直接行われます。
注: コンストラクション ヒストリがすでにオブジェクトにある場合は、このフラグは無視され、ノードは必ずヒストリ チェーンに挿入されます。
name(n) string create
作成されるノードに名前をつけます。
nodeState(nds) int createqueryedit
ノードの評価方法を定義します。
  • 0: Normal
  • 1: PassThrough
  • 2: Blocking
  • 3: 内部的に無効。有効にすると、Normal 状態に戻ります。
  • 4: 内部的に無効。有効にすると、PassThrough 状態に戻ります。
  • 5: 内部的に無効。有効にすると、Blocking 状態に戻ります。

フラグはコマンドの作成モードで表示できます フラグはコマンドの編集モードで表示できます
フラグはコマンドの照会モードで表示できます フラグに複数の引数を指定し、タプルまたはリストとして渡すことができます。

Python 例

import maya.cmds as cmds

# Union
cmds.polyCube( n='Cube1', w=1, h=10, d=1 )
cmds.polyCube( n='cub1', w=3, h=3, d=3 )
cmds.polyBoolOp( 'cub1', 'Cube1', op=1, n='result1' )

# Difference
cmds.polyCube( n='Cube2', w=1, h=10, d=1 )
cmds.polyCube( n='cub2', w=3, h=3, d=3 )
cmds.polyBoolOp( 'cub2', 'Cube2', op=2, n='result2' )
cmds.move( 5, 0, 0, 'result2' )

# Intersection
cmds.polyCube( n='Cube3', w=1, h=10, d=1 )
cmds.polyCube( n='cub3', w=3, h=3, d=3 )
cmds.polyBoolOp( 'cub3', 'Cube3', op=3, n='result3' )
cmds.move( 10, 0, 0, 'result3' )