ホーム / モデリング / CGaudiBody / 関数 / Reflect
Reflect
定義
Reflect(P As CGaudiPoint, vec As CGaudiVector) As Boolean戻り値
| True | 成功 | |
| False | 失敗 |
引数
| P | 鏡面上の点 | |
| vec | 鏡面の法線ベクトル |
解説
引数で指定された鏡面(面上の点(P)と法線ベクトル(vec))でCGaudiBodyが映される位置に移動します。実行例
Dim Femtet As New CFemtetDim Gaudi As CGaudi
Dim Point0 As New CGaudiPoint
Dim Point1 As New CGaudiPoint
Dim Pnt As New CGaudiPoint
Dim Vec As New CGaudiVector
Dim Body0 As CGaudiBody
Dim Body1(0) As CGaudiBody
Dim newBody() As CGaudiBody
'新規プロジェクト作成
If Femtet.OpenNewProject() = False Then
Femtet.ShowLastError
End If
'Femtet.Gaudiを変数Gaudiに代入して使いやすくする
Set Gaudi = Femtet.Gaudi
'直方体の作成
Point0.SetCoord 0, 0, 0
Set Body0 = Gaudi.CreateBox(Point0, 5, 5, 10)
'円柱の作成
Point1.SetCoord 5#, 2.5, 0
Set Body1(0) = Gaudi.CreateCylinder(Point1, 2.5, 10)
'ブーリアン差
Body0.Subtract Body1, newBody, True
'回転
Pnt.SetCoord 5, 0, 0
Vec.SetCoord 1, 0, 0
If newBody(0).Reflect(Pnt, Vec) = False Then
Femtet.ShowLastError
End If
![]() |
![]() |




