GazeDataProcessor.cs 1.13 KB
Newer Older
1 2 3 4 5 6 7 8
using System;
using System.Windows;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Tobii.Research;

9
namespace TrackerBridge
10
{
11
    public class GazeDataProcessor
12 13 14 15 16 17 18 19 20 21 22 23
    {
        readonly float screenHeight;
        readonly float screenWidth;

        public GazeDataProcessor()
        {
            screenHeight = Convert.ToSingle(SystemParameters.PrimaryScreenHeight);
            screenWidth = Convert.ToSingle(SystemParameters.PrimaryScreenWidth);
        }

        public GazeData Extract(GazeDataEventArgs e)
        {
24 25 26 27
            GazeData data = new GazeData(e.LeftEye.GazePoint.PositionOnDisplayArea.X * screenWidth,
                                         e.LeftEye.GazePoint.PositionOnDisplayArea.Y * screenHeight,
                                         e.RightEye.GazePoint.PositionOnDisplayArea.X * screenWidth,
                                         e.RightEye.GazePoint.PositionOnDisplayArea.Y * screenHeight,
28 29
                                         e.DeviceTimeStamp,
                                         e.SystemTimeStamp);
30 31 32 33
            return data;
        }
    }
}