Пример #1
0
        public AccelerationVector GetAccelerationVector()
        {
            HTCGSensorData data           = GetRawSensorData();
            double         htcScaleFactor = 1.0 / 1000.0 * 9.8;

            // Depending on our orientation, this needs to behave differently
            int orientation = Convert.ToInt32(Microsoft.WindowsMobile.Status.SystemState.GetValue(Microsoft.WindowsMobile.Status.SystemProperty.DisplayRotation));

            switch (orientation)
            {
            case 90:
            {
                return(new AccelerationVector(-data.TiltY, data.TiltX, data.TiltZ, htcScaleFactor));
            }

            case 180:
            {
                return(new AccelerationVector(-data.TiltX, -data.TiltY, data.TiltZ, htcScaleFactor));
            }

            case 270:
            {
                return(new AccelerationVector(data.TiltY, -data.TiltX, data.TiltZ, htcScaleFactor));
            }

            default:
            {
                return(new AccelerationVector(data.TiltX, data.TiltY, data.TiltZ, htcScaleFactor));
            }
            }
        }
Пример #2
0
 private static extern IntPtr HTCSensorGetDataOutput(IntPtr handle, out HTCGSensorData sensorData);
Пример #3
0
 private extern static IntPtr HTCSensorGetDataOutput(IntPtr handle, out HTCGSensorData sensorData);