GazeDataProcessor.cs 1 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
using System;
using System.Windows;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Tobii.Research;

namespace GazeWebSocketServer
{
    class GazeDataProcessor
    {
        readonly float screenHeight;
        readonly float screenWidth;

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

        public GazeData Extract(GazeDataEventArgs e)
        {
            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);
            return data;
        }
    }
}