you might try something like this-(use alt-arrow to rotate round, ctrl to move in and out, shift to move leftrightupdown)-
Private Sub mylayoutprogramfrm_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
VALUE = radius / 10
If InputEngine.IsKeyPressed(TrueVision3D.CONST_TV_KEY.TV_KEY_UP) And InputEngine.IsKeyPressed(TrueVision3D.CONST_TV_KEY.TV_KEY_ALT_LEFT) Then
V_Ang = V_Ang + 1
End If
If InputEngine.IsKeyPressed(TrueVision3D.CONST_TV_KEY.TV_KEY_DOWN) And InputEngine.IsKeyPressed(TrueVision3D.CONST_TV_KEY.TV_KEY_ALT_LEFT) Then
V_Ang = V_Ang - 1
End If
If InputEngine.IsKeyPressed(TrueVision3D.CONST_TV_KEY.TV_KEY_LEFT) And InputEngine.IsKeyPressed(TrueVision3D.CONST_TV_KEY.TV_KEY_ALT_LEFT) Then
H_Ang = H_Ang - 1
End If
If InputEngine.IsKeyPressed(TrueVision3D.CONST_TV_KEY.TV_KEY_RIGHT) And InputEngine.IsKeyPressed(TrueVision3D.CONST_TV_KEY.TV_KEY_ALT_LEFT) Then
H_Ang = H_Ang + 1
End If
If InputEngine.IsKeyPressed(TrueVision3D.CONST_TV_KEY.TV_KEY_UP) And InputEngine.IsKeyPressed(TrueVision3D.CONST_TV_KEY.TV_KEY_LEFTCONTROL) Then
radius = radius - VALUE
End If
If InputEngine.IsKeyPressed(TrueVision3D.CONST_TV_KEY.TV_KEY_DOWN) And InputEngine.IsKeyPressed(TrueVision3D.CONST_TV_KEY.TV_KEY_LEFTCONTROL) Then
radius = radius + VALUE
End If
campos = tvmath.MoveAroundPoint(camlookat, radius, H_Ang, V_Ang)
cam.SetCamera(campos.x, campos.y, campos.z, camlookat.x, camlookat.y, camlookat.z)
VALUE = radius / 10
TS1 = radius / 10
TS2 = radius / 10
If InputEngine.IsKeyPressed(TrueVision3D.CONST_TV_KEY.TV_KEY_RIGHT) And InputEngine.IsKeyPressed(TrueVision3D.CONST_TV_KEY.TV_KEY_LEFTSHIFT) = True Then
TS1 = TS1 + VALUE
cam.MoveRelative(0, 0, -TS1 / 2)
End If
If InputEngine.IsKeyPressed(TrueVision3D.CONST_TV_KEY.TV_KEY_LEFT) And InputEngine.IsKeyPressed(TrueVision3D.CONST_TV_KEY.TV_KEY_LEFTSHIFT) = True Then
TS1 = TS1 + VALUE
cam.MoveRelative(0, 0, TS1 / 2)
End If
If InputEngine.IsKeyPressed(TrueVision3D.CONST_TV_KEY.TV_KEY_DOWN) And InputEngine.IsKeyPressed(TrueVision3D.CONST_TV_KEY.TV_KEY_LEFTSHIFT) = True Then
TS2 = TS2 + VALUE
cam.MoveRelative(0, TS2 / 2, 0)
End If
If InputEngine.IsKeyPressed(TrueVision3D.CONST_TV_KEY.TV_KEY_UP) And InputEngine.IsKeyPressed(TrueVision3D.CONST_TV_KEY.TV_KEY_LEFTSHIFT) = True Then
TS2 = TS2 + VALUE
cam.MoveRelative(0, -TS2 / 2, 0)
End If
campos = cam.GetPosition()
camlookat = cam.GetLookAt()
End Sub