MacroHelp
 

ホーム / モデリング / CGaudi / 関数 / FindBodyAll

FindBodyAll関数

定義

FindBodyAll (Points() As CGaudiPoint, BodyList() As CGaudiBody) As Boolean
  



[Python]
 FindBodyAll_py(CGaudiPoint[] Points)

戻り値

True   成功
False   失敗
  



[Python]
[0]   True:成功、False:失敗

[1][0~見つかったボディ数-1]

  指定された座標値を含むボディ(CGaudiBody)を返すための配列(動的配列)

引数

Points   座標配列
BodyList   指定された座標値を含むボディを返すための配列(動的配列)
  



[Python]
Points   座標配列

解説

指定された座標配列の全ての点を含むBodyを探します。
ボディが一つも見つからなかった場合や、BodyListが動的配列ではない場合は失敗します。
引数のPointsは静的配列でも動的配列でも構いません。

実行例

Dim Femtet As New CFemtet
Dim Gaudi As CGaudi
Dim Body1 As CGaudiBody
Dim Body2 As CGaudiBody
Dim FindBodies() As CGaudiBody
Dim Point(1) As New CGaudiPoint

'新規プロジェクト作成
If Femtet.OpenNewProject() = False Then
 Femtet.ShowLastError
End If

'Femtet.Gaudiを変数Gaudiに代入して使いやすくする
Set Gaudi = Femtet.Gaudi



'座標配列を設定
Point(0).SetCoord 0, 0, 0
Point(1).SetCoord 5, 5, 5

'ボディを作成
Set Body1 = Gaudi.CreateBox(Point(0), 3, 3, 3)
Set Body2 = Gaudi.CreateBox(Point(0), 8, 8, 8)

 

'指定された座標配列を含むボディを探す

If Gaudi.FindBodyAll(Point, FindBodies) = False Then

     FEMTET.ShowLastError

End If
 
'見つかったボディの色を紫色に変更

Dim i As Long

For i = 0 To UBound(FindBodies)

     FindBodies(i).Color = &HFF00FF

Next i