Cat2,
Код программы:
Modul1.vb
Imports Leap
Imports LeapMotion
Module Module1
Sub Main()
Dim cntrl As New Controller '
Dim listener As New LeapListener '
Dim fingX, fingY As Double '
'Здесь нужна задержка по времени перед проверкой подключения ЛипМоушена. Поэтому забил костыль в виде принудительного пользовательского ввода
Console.WriteLine("Press any key")
Console.ReadLine()
If (cntrl.IsConnected) Then
Dim frame0 As New Frame
Dim frame1 As New Frame
Console.WriteLine("Leap is connected. Press any key")
Console.ReadLine()
Dim i As Int32 = 1 ' Просто переменная для создания бесконечного цикла
While (i > 0)
frame0 = cntrl.Frame ' Фрейм- это текущий снимок телеметрии с устройства
frame1 = cntrl.Frame(1) ' Фрейм(1) - это истрические данные с устройства которые были на предыдущем шаге
fingX = frame0.Fingers(0).TipPosition.x ' Позиция по Х
fingY = frame0.Fingers(0).TipPosition.y ' Позиция по У
Console.WriteLine("Pos X:" + fingX.ToString() + "Pos Y:" + fingY.ToString()) 'Вывод на экран
End While
Console.WriteLine("Press Enter to quit...")
Console.ReadLine()
End If
End Sub
End Module
LeapListener.vb
Imports Leap
Public Class LeapListener
Inherits Listener
Public Overrides Sub OnInit(cntrlr As Controller)
Console.WriteLine("Initialized")
End Sub
Public Overrides Sub OnConnect(cntrlr As Controller)
Console.WriteLine("Connected")
End Sub
Public Overrides Sub OnDisconnect(cntrlr As Controller)
Console.WriteLine("Disconnected")
End Sub
Public Overrides Sub OnExit(cntrlr As Controller)
Console.WriteLine("Exited")
End Sub
Private currentTime As Long
Private previousTime As Long
Private timeChange As Long
Public Overrides Sub OnFrame(cntrlr As Controller)
' Get the current frame.
Dim currentFrame As Frame = cntrlr.Frame
Dim fingX, fingY As Long
currentTime = currentFrame.Timestamp
timeChange = currentTime - previousTime
'fing = currentFrame.Fingers(0).TipPosition.x
fingX = currentFrame.Fingers(0).TipPosition.x
fingY = currentFrame.Fingers(0).TipPosition.y
Console.WriteLine("Pos X:" + fingX + "Pos Y:" + fingY)
End Sub
End Class
MouseCursor.vb
Public Class MouseCursor
Private Declare Function SetCursorPos Lib "user32" (x As Integer, y As Integer) As Boolean
Public Shared Sub MoveCursor(x As Integer, y As Integer)
SetCursorPos(x, y)
End Sub
End Class