Boolean3: GeometryClass

Boolean3 - superclass: GeometryClass; super-superclass:node - classID:#(7bc209af, 1bbac5f) 

> MAXWrapper > ノード > GeometryClass > Boolean3

   

 

   

ジオメトリ オブジェクト - クイック ナビゲーション

   

   

Boolean3 / BooleanObject2 合成オブジェクト クラスを使用すると、合成ブール演算オブジェクトを作成できます。

エイリアス:

Boolean3
BooleanObject2

コンストラクタ:

コンストラクタはありません。以下を使用します。

startObjectCreation BooleanObject2

   

プロパティ

.iconsize: float

   

.materialOption: integer

ブール演算のマテリアルの設定:

0 - オペランド マテリアルを適用する

1 - 元のマテリアルを保持する

   

.displayOption: integer

ブール演算の表示の設定:

0 - 結果

1 - オペランド

2 - 選択されたオペランド

   

.displayAsShaded: integer

[シェーディングで表示](Display as Shaded)の設定:

0 - オフ

1 - オン

   

.objects: maxObject array

ReferenceTarget オブジェクトとしてブール演算内にオペランドを含む配列。

   

.operation: int array

.objects 配列内の対応する各オペランドのオペランド タイプを含む配列:

0 - 和

1 - 交差

2 - 減算

3 - 合成

4 - アタッチ

5 - 挿入

   

.option: int array

各オペランドの[形跡](Imprint)/[クッキー](Cookie)オプションを含みます。

0 - オプションなし

1 - 形跡

2 - クッキー

   

.operand_tm: maxObject array

ブール演算オペランドの位置コントローラの配列です。

   

メソッド(BooleanObject2 インタフェースから):

<integer>GetNumOperands()

ブール演算内のオペランド数を返します。

   

<bool>GetOperandName <index>index <&TSTR>nameout

nameout is Out parameter

指定したインデックスのオペランド名を取得します。

   

<bool>SetOperandName <index>index <&TSTR>name

name is In parameter

指定したインデックスのオペランド名を設定します。

   

<bool>GetOperandType <index>index <&enum>type

type enums: {#system|#generated}

type is Out parameter

指定したインデックスのオペランド タイプを取得します。

   

<bool>GetNumChildren <index>index <&integer>count

count is Out parameter

指定したインデックスのオペランドの子の名前を取得します。

   

<bool>GetOperationType <index>index <&enum>type

type enums: {#union|#intersection|#subtraction|#merge|#attach|#insert}

type is Out parameter

指定したインデックスのオペランドの演算タイプを取得します。

   

<bool>SetOperationType <index>index <enum>type

type enums: {#union|#intersection|#subtraction|#merge|#attach|#insert}

指定したインデックスのオペランドの演算タイプを設定します。

   

<bool>GetOperationOption <index>index <&enum>option

option enums: {#none|#imprint|#cookie}

option is Out parameter

指定したインデックスのオペランドの演算オプションを取得します。

   

<bool>SetOperationOption <index>index <enum>option

option enums: {#none|#imprint|#cookie}

指定したインデックスのオペランドの演算オプションを設定します。

   

<bool>GetSolo <index>operandIndex <&bool>solo

solo is Out parameter

指定したインデックスのオペランドのソロ設定を取得します。

   

<bool>SetSolo <index>operandIndex <bool>solo

指定したインデックスのオペランドのソロ設定を設定します。

   

<bool>GetSoloOperandIndex <&index>operandIndex

operandIndex is Out parameter

   

<bool>GetDisable <index>operandIndex <&bool>disable
disable is Out parameter

指定したインデックスのオペランドの無効な設定を取得します。

   

bool>SetDisable <index>operandIndex <bool>disable

指定したインデックスのオペランドの無効な設定を設定します。

   

<bool>HasSubdivs <index>operandIndex <time>time <&bool>sub

sub is Out parameter

指定したインデックスのオペランドにサブディビジョンがあるかどうかを示します。

   

<bool>GetSubdivs <index>index <time>time <&integer>subdivs <&interval>valid

 subdivs is Out parameter

 valid is In and Out parameter

指定した時刻および有効性に対する、指定したインデックスのオペランドのサブディビジョンを取得します。

   

<bool>SetSubdivs <index>index <time>time <integer>subdivs

指定した時刻に対する、指定したインデックスのオペランドのサブディビジョン数を設定します。

   

<bool>RemoveOperand <index>operandIndex

指定したオペランドをブール演算から削除します。

   

<bool>AppendOperand <node>boolNode <node>operandNode <bool>hold

   

<bool>InsertOperand <node>boolNode <node>operandNode <index>where <bool>hold

   

例:
-- Create a couple of boxes, add them as operands with Union operation 
boxNum1 = Box lengthsegs:1 widthsegs:1 heightsegs:1 length:34.4026 width:35.2684 height:28.3108 mapcoords:on pos:[-9.23886,6.62539,0] isSelected:on
boxNum2 = Box lengthsegs:1 widthsegs:1 heightsegs:1 length:34.6151 width:39.1545 height:16.8113 mapcoords:on pos:[10.8141,-3.6636,5.99007] isSelected:on 
select boxNum1 
-- The following can use “BooleanObject2” or “Boolean3” 
StartObjectCreation Boolean3 
bool = $ 
-- Add Box2... 
bool.AppendOperand bool boxNum2 false 
-- Use it in a union 
bool.SetOperationType 2 #union 

-- Use it as subtraction 
bool.SetOperationType 2 #subtraction 

-- Delete both operands so have an empty boolean (makes icon appear) 
bool.RemoveOperand 2 
bool.RemoveOperand 1 
-- Set icon size big 
bool.iconSize = 200 
-- Set icon size tiny
bool.iconSize = 2