/// <summary> /// Creates a new ball at position 0,0 /// </summary> /// <param name="graphicsDevice">Graphics device to load the </param> public Ball(GraphicsDevice graphicsDevice) { X = 0; Y = 0; speedX = 0.5f; speedY = 0.5f; accelerationSpeed = 1.0f; speedCap = 5f; resistance = 0.3f; if (accelerometer == null) { accelerometer = new Accelerometer(); accelerometer.Start(); } using (var stream = TitleContainer.OpenStream("Content/balle.png")) { sprite = Texture2D.FromStream(graphicsDevice, stream); } }
public void Dispose() { if (_sensor != null) _sensor.Dispose(); _sensor = null; }
public AccelerometerShakeDetection() { var sensor = new Accelerometer(); if (sensor.State == SensorState.NotSupported) throw new NotSupportedException("Accelerometer not supported on this device"); _sensor = sensor; }
public Ship(Game game, Vector2 PosicaoInicial, Texture2D texture, SoundEffect SoundShip) : base(game, PosicaoInicial, texture) { _game = game; ShipSound = SoundShip; ShipSound.Play(); SpriteX = 0; SpriteY = 0; PosicaoX = (int)PosicaoInicial.X; PosicaoY = (int)PosicaoInicial.Y; Vida = 100; accelReading = new Vector3(); accelSensor = new Accelerometer(); accelSensor.ReadingChanged += new EventHandler<AccelerometerReadingEventArgs>(AccelerometerReadingChanged); try { accelSensor.Start(); accelActive = true; } catch (AccelerometerFailedException e) { accelActive = false; } catch (UnauthorizedAccessException e) { accelActive = false; } }
public Accelerometro() { InitializeComponent(); accelerometer = new Accelerometer(); accelerometer.TimeBetweenUpdates = TimeSpan.FromMilliseconds(100); accelerometer.Start(); myFile = IsolatedStorageFile.GetUserStoreForApplication(); if (!myFile.FileExists("Impo.txt")) { IsolatedStorageFileStream dataFile = myFile.CreateFile("Impo.txt"); dataFile.Close(); } Wb = new WebBrowser(); Connesso = false; Carica(); System.Windows.Threading.DispatcherTimer dt = new System.Windows.Threading.DispatcherTimer(); dt.Interval = new TimeSpan(0, 0, 0, 0, 250); // 500 Milliseconds dt.Tick += new EventHandler(dt_Tick); dt.Start(); }
// Constructor public MainPage() { InitializeComponent(); statusLocked.Visibility = System.Windows.Visibility.Collapsed; statusUnlocked.Visibility = System.Windows.Visibility.Collapsed; accelstatus.Visibility = System.Windows.Visibility.Collapsed; timer = new DispatcherTimer(); timer.Interval = new TimeSpan(0, 0, 0, 0, 25); timer.Tick += new EventHandler(timer_Tick); timer.Start(); if (Accelerometer.IsSupported) { Accelerometer sens = new Accelerometer(); sens.CurrentValueChanged += new EventHandler<SensorReadingEventArgs<AccelerometerReading>>(sens_CurrentValueChanged); sens.Start(); } else { //It's disabled accelstatus.IsChecked = true; statusLocked.Visibility = System.Windows.Visibility.Visible; statusUnlocked.Visibility = System.Windows.Visibility.Collapsed; } }
public override void Execute(params string[] args) { this.HasCallback = false; // This uses an AsyncCallback this.successCallback = args[0]; this.errorCallback = args[1]; try { if (this.accelerometer == null) { this.accelerometer = new Accelerometer(); } this.accelerometer.ReadingChanged += this.AccelerometerReadingChanged; this.accelerometer.Start(); } catch (UnauthorizedAccessException unauthorizedAccessException) { this.CallbackName = this.errorCallback; this.CallbackArgs = new[] { unauthorizedAccessException.Message }; this.SendAsyncResponse(); } catch (AccelerometerFailedException accelerometerFailedException) { this.CallbackName = this.errorCallback; this.CallbackArgs = new[] { accelerometerFailedException.Message }; this.SendAsyncResponse(); } }
private void Aceloro(Accelerometer sender, AccelerometerReadingChangedEventArgs args) { //gamescreen.batcherBridge.drawText(50f, 50f, 50f, 50f,1, args.Reading.AccelerationX.ToString(), 1f, 1f, 1f, 1f, "ns"); //if(!Settings.vibrate) // Game.Update1((float)args.Reading.AccelerationX*2, (float)args.Reading.AccelerationY, (float)args.Reading.AccelerationZ); }
public ScheduleView() { InitializeComponent(); this.accelerometer = new Accelerometer(); this.accelerometer.CurrentValueChanged += Accelerometer_CurrentValueChanged; }
static partial void StartMonitoring() { accelerometer = new Accelerometer { TimeBetweenUpdates = TimeSpan.FromMilliseconds((long)Interval) }; accelerometer.CurrentValueChanged += AccelerometerOnCurrentValueChanged; accelerometer.Start(); }
public ShapePage() { InitializeComponent(); if (accelerometer == null) { accelerometer = new Accelerometer(); accelerometer.TimeBetweenUpdates = TimeSpan.FromMilliseconds(20); accelerometer.CurrentValueChanged += new EventHandler<SensorReadingEventArgs<AccelerometerReading>>(accelerometer_CurrentValueChanged); accelerometer.Start(); } BitmapImage bi = new BitmapImage(); using (var store = IsolatedStorageFile.GetUserStoreForApplication()) { /*var filestream = store.OpenFile("image.jpg", System.IO.FileMode.Open, System.IO.FileAccess.Read); var imageAsBitmap = Microsoft.Phone.PictureDecoder.DecodeJpeg(filestream); image2.Source = imageAsBitmap;*/ if (store.FileExists("tempJPEG2")) { using (IsolatedStorageFileStream fileStream = store.OpenFile("tempJPEG2", System.IO.FileMode.Open, System.IO.FileAccess.Read)) { bi.SetSource(fileStream); image2.Source = bi; } } else { var filestream = store.OpenFile("image.jpg", System.IO.FileMode.Open, System.IO.FileAccess.Read); var imageAsBitmap = Microsoft.Phone.PictureDecoder.DecodeJpeg(filestream); image2.Source = imageAsBitmap; } } stickerNum = 0; }
public WP7Input() { #region Accelerometer support mAccValues = new Vector3(); mAccMeter = new Accelerometer(); mAccMeter.ReadingChanged += new EventHandler<AccelerometerReadingEventArgs>(AccMeterChange); // event services when accelerometer settings change // This function is defined in Game1_Accelerometer. try { mAccMeter.Start(); // Starts the acceleromter sampling } catch (AccelerometerFailedException ex) { System.Diagnostics.Debug.WriteLine("Accelerometer Starting failed!: " + ex.ToString()); } #endregion #region Gesture support //mPinchHasBegin = false; //TouchPanel.EnabledGestures = GestureType.Tap | // GestureType.DoubleTap | // GestureType.Hold | // GestureType.Flick | // GestureType.Pinch | // GestureType.FreeDrag | // GestureType.PinchComplete; #endregion }
protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e) { accel = new Accelerometer(); accel.Start(); SetupObservable(); }
//get accelerometer values private void Accelerometer_Click(object sender, RoutedEventArgs e) { accelerometer = new Accelerometer(); accelerometer.TimeBetweenUpdates = TimeSpan.FromMilliseconds(20); accelerometer.CurrentValueChanged += new EventHandler<SensorReadingEventArgs<AccelerometerReading>>(accelerometer_valuechanged); accelerometer.Start(); }
// Constructor public MainPage() { InitializeComponent(); // Sample code to localize the ApplicationBar //BuildLocalizedApplicationBar(); timer = new DispatcherTimer(); timer.Tick += timer_Tick; timer.Interval = TimeSpan.FromMilliseconds(66); if (Accelerometer.IsSupported) { accelSensor = new Accelerometer(); accelSensor.TimeBetweenUpdates = TimeSpan.FromMilliseconds(66); } if (Compass.IsSupported) { compassSensor = new Compass(); compassSensor.TimeBetweenUpdates = TimeSpan.FromMilliseconds(66); compassSensor.Calibrate += compassSensor_Calibrate; } if (Gyroscope.IsSupported) { gyroSensor = new Gyroscope(); gyroSensor.TimeBetweenUpdates = TimeSpan.FromMilliseconds(66); } }
public ShakeDetector() { if (Accelerometer.IsSupported) { var sensor = new Accelerometer(); _sensor = sensor; } }
partial void Initialize() { if (IsSupported) { _sensor = new Accelerometer(); _sensor.CurrentValueChanged += OnSensorValueChanged; } }
void AccelerometerCancel() { if (_accelerometer != null) { _accelerometer.Stop(); _accelerometer.Dispose(); _accelerometer = null; } }
public void Stop() { if (sensor != null) { sensor.Stop(); sensor.ReadingChanged -= this.HandleSensorReadingChanged; sensor = null; } }
static AccelerometerSensor() { MaxValue = 0.6f; MinValue = -MaxValue; accelerometer = new Accelerometer(); accelerometer.ReadingChanged += accelerometer_ReadingChanged; accelerometer.Start(); }
public void Init() { if (!Accelerometer.IsSupported) { // The device on which the application is running does not support // the accelerometer sensor. Alert the user and hide the // application bar. statusTextBlock.Text = "device does not support compass"; ApplicationBar.IsVisible = false; } else { // Initialize the timer and add Tick event handler, but don't start it yet. timer = new DispatcherTimer(); timer.Interval = TimeSpan.FromMilliseconds(80); timer.Tick += new EventHandler(timer_Tick); } //MainPage.communicator if (accelerometer == null) { // Instantiate the accelerometer. accelerometer = new Accelerometer(); // Specify the desired time between updates. The sensor accepts // intervals in multiples of 20 ms. accelerometer.TimeBetweenUpdates = TimeSpan.FromMilliseconds(200); // The sensor may not support the requested time between updates. // The TimeBetweenUpdates property reflects the actual rate. timeBetweenUpdatesTextBlock.Text = accelerometer.TimeBetweenUpdates.TotalMilliseconds + " ms"; accelerometer.CurrentValueChanged += new EventHandler<SensorReadingEventArgs<AccelerometerReading>>(accelerometer_CurrentValueChanged); } try { statusTextBlock.Text = "starting accelerometer."; accelerometer.Start(); timer.Start(); } catch (InvalidOperationException) { statusTextBlock.Text = "unable to start accelerometer."; } // string deviceId = Convert.ToBase64String((byte[])DeviceExtendedProperties.GetValue("DeviceUniqueId")); // string deviceName = DeviceStatus.DeviceName.ToString(); // Debug.WriteLine("DeviceID=" + deviceId); // Debug.WriteLine("DeviceName=" + deviceName); // DeviceInfo deviceInfo = new DeviceInfo(); // deviceInfo.DeviceId = deviceId; // deviceInfo.DeviceName = deviceName; // communicator = new Communicator(deviceInfo); // communicator.SearchComputers(); }
static partial void StopMonitoring() { if (accelerometer != null) { accelerometer.CurrentValueChanged -= AccelerometerOnCurrentValueChanged; accelerometer.Stop(); accelerometer = null; } }
public PredictionView() { InitializeComponent(); this.DataContext = App.ScheduleViewModel; this.accelerometer = new Accelerometer(); this.accelerometer.CurrentValueChanged += Accelerometer_CurrentValueChanged; }
public Player() { this.InTrap = false; this.Color = Color.White; this.Position = new Vector2(480 / 2 - w / 2, 750); //yay magic numbers accelerometer = new Accelerometer(); accelerometer.CurrentValueChanged += new EventHandler<SensorReadingEventArgs<AccelerometerReading>>(accelerometer_CurrentValueChanged); accelerometer.Start(); }
private void InitAccelerometer() { if (_accelerometer == null) { // Instantiate the Accelerometer. _accelerometer = new Accelerometer(); _accelerometer.TimeBetweenUpdates = TimeSpan.FromMilliseconds(300); _accelerometer.CurrentValueChanged += new EventHandler<SensorReadingEventArgs<AccelerometerReading>>(accelerometer_CurrentValueChanged); } }
private void UserControl_Loaded(object sender, RoutedEventArgs e) { if (!DesignerProperties.IsInDesignTool) { accelerometer = new Accelerometer(); accelerometer.CurrentValueChanged += new EventHandler<SensorReadingEventArgs<AccelerometerReading>>(acc_CurrentValueChanged); accelerometer.Start(); } }
public MainPage() { InitializeComponent(); SupportedOrientations = SupportedPageOrientation.Portrait; ball.SetValue(Canvas.LeftProperty, ContentGrid.Width / 2); ball.SetValue(Canvas.TopProperty, ContentGrid.Height / 2); _ac = new Accelerometer(); _ac.CurrentValueChanged +=new EventHandler<SensorReadingEventArgs<AccelerometerReading>>(_ac_CurrentValueChanged); }
public XNAInputService() { accelerometer = Accelerometer.GetDefault(); gyrometer = Gyrometer.GetDefault(); inclinometer = Inclinometer.GetDefault(); keyboardState = oldKeyboardState = new KeyboardState(); mouseState = oldMouseState = new MouseState(); oldTouchCollection = touchCollection = new Touch[0]; xboxStates = oldXboxStates = new GamePadState[4]; }
public Sensors() { InitializeComponent(); if (Accelerometer.IsSupported) { var acc = new Accelerometer(); acc.Start(); acc.CurrentValueChanged += acc_CurrentValueChanged; } }
// Constructor public MainPage() { InitializeComponent(); // Sample code to localize the ApplicationBar //BuildLocalizedApplicationBar(); Accelerometer accelerometer = new Accelerometer(); accelerometer.TimeBetweenUpdates = TimeSpan.FromMilliseconds(20); accelerometer.CurrentValueChanged += new EventHandler<SensorReadingEventArgs<AccelerometerReading>>(LeituraAcelerometro); accelerometer.Start(); }
private async void _myAcc_ReadingChanged(Accelerometer sender, AccelerometerReadingChangedEventArgs args) { // update the UI with the reading. /* * The () => {} construct is called a lambda expression * This is an anonymous function that can be used to create delegate methods * of passed as arguments or returned as the value of a function call. * In this case, the Accelerometer thread is asking the UI thread * to update some display information from the readings. */ await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () => { // update the UI from here. AccelerometerReading reading = args.Reading; updateUI(reading); } ); }
private async void ReadingChanged(Accelerometer sender, AccelerometerReadingChangedEventArgs args) { await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () => { AccelerometerReading reading = args.Reading; //Update class X,Y,Z values this.AccelX = reading.AccelerationX; this.AccelY = reading.AccelerationY; this.AccelZ = reading.AccelerationZ; //Update UI X,Y,Z values and Direction this.SetDirection(); /* * this.TextBoxX.Text = String.Format("{0,5:0.00}", reading.AccelerationX); * this.TextBoxY.Text = String.Format("{0,5:0.00}", reading.AccelerationY); * this.TextBoxZ.Text = String.Format("{0,5:0.00}", reading.AccelerationZ); */ }); }
public async Task Monitor(SensorSpeed sensorSpeed) { if (!TestSupported) { return; } var tcs = new TaskCompletionSource <AccelerometerData>(); Accelerometer.ReadingChanged += Accelerometer_ReadingChanged; Accelerometer.Start(sensorSpeed); void Accelerometer_ReadingChanged(AccelerometerChangedEventArgs e) { tcs.TrySetResult(e.Reading); } var d = await tcs.Task; Accelerometer.Stop(); Accelerometer.ReadingChanged -= Accelerometer_ReadingChanged; }
public void ToggleAccelerometer() { try { if (Accelerometer.IsMonitoring) { Accelerometer.Stop(); } else { Accelerometer.Start(speed); } } catch (FeatureNotSupportedException fns) { //lmao } catch (Exception ex) { //lmao 2 the electric bungaloo } }
public static IObservable <Vector3> GetAccelerometer() { var accelerometer = Accelerometer.GetDefault(); if (null == accelerometer) { return(FakeAccelerometer.GetAccelerometer()); } var accelerometerReadingAsObservable = Observable.FromEventPattern <AccelerometerReadingChangedEventArgs>(accelerometer, "ReadingChanged"); var vector3FromAccelerometerEventArgs = from args in accelerometerReadingAsObservable select new Vector3 { X = args.EventArgs.Reading.AccelerationX, Y = args.EventArgs.Reading.AccelerationY, Z = args.EventArgs.Reading.AccelerationZ }; return(vector3FromAccelerometerEventArgs.ObserveOnDispatcher()); }
protected override void OnNavigatedTo(NavigationEventArgs e) { // Get two instances of the accelerometer: // One that returns the raw accelerometer data accelerometerOriginal = Accelerometer.GetDefault(rootPage.AccelerometerReadingType); // Other on which the 'ReadingTransform' is updated so that data returned aligns with the request transformation. accelerometerReadingTransform = Accelerometer.GetDefault(rootPage.AccelerometerReadingType); if (accelerometerOriginal == null || accelerometerReadingTransform == null) { rootPage.NotifyUser(rootPage.AccelerometerReadingType + " accelerometer not found", NotifyType.ErrorMessage); } else { rootPage.NotifyUser(rootPage.AccelerometerReadingType + " accelerometer ready", NotifyType.StatusMessage); ScenarioEnableButton.IsEnabled = true; } // Register for orientation change displayInformation = DisplayInformation.GetForCurrentView(); displayInformation.OrientationChanged += displayInformation_OrientationChanged; }
public void ToggleAccelerometer() { try { if (Accelerometer.IsMonitoring) { Accelerometer.Stop(); } else { Accelerometer.Start(speed); } } catch (FeatureNotSupportedException fnsEx) { DisplayAlert("Not supported", "Shake detection is not supported on your device", "Ok"); } catch (Exception ex) { // Other error has occurred. } }
private void InitializeAccelerometer() { try { Accelerometer.Start(SensorSpeed.Normal); Accelerometer.ReadingChanged += Accelerometer_ReadingChangedAntic; //Accelerometer.ReadingChanged += Accelerometer_ReadingChanged; } catch (FeatureNotSupportedException) { DisplayAlert("Alert", "Accelerometer Unavailable", "OK"); circularGaugeX.Value = 0; circularGaugeY.Value = 0; circularGaugeZ.Value = 0; ChartX.Chart.Title.Text = "Accelerometer Unavailable"; ChartX.Chart.Title.Color = Color.Red; ChartY.Chart.Title.Text = "Accelerometer Unavailable"; ChartY.Chart.Title.Color = Color.Red; ChartZ.Chart.Title.Text = "Accelerometer Unavailable"; ChartZ.Chart.Title.Color = Color.Red; } }
private void _accelerometer_ReadingChanged(Accelerometer sender, AccelerometerReadingChangedEventArgs args) { try { _currentReading = args.Reading; if (ShutterinoLogic.Instance.TakesPhotos && _currentReading.Timestamp.UtcTicks > _lastPhotoTime + RateLimiter && DeltaRoll < Precision && DeltaPitch < Precision) { Callibrate(); // record current reading for future reference _lastPhotoTime = _currentReading.Timestamp.UtcTicks; Task.Run(async() => await ShutterinoLogic.Instance.SuggestPhotoOpportunity(this)); } } catch (Exception ex) { // LOG Status = ex.ToString(); } }
private void Form1_Load(object sender, EventArgs e) { accel = new Accelerometer(); accel.Attach += new AttachEventHandler(accel_Attach); accel.Detach += new DetachEventHandler(accel_Detach); accel.AccelerationChange += new AccelerationChangeEventHandler(accel_AccelerationChange); label1.Text = "Attach a Phidget Accelerometer..."; label2.Text = ""; label6.Text = ""; label7.Text = ""; label8.Text = ""; accel.open(); formDrawingSurface = new Bitmap(panel1.ClientRectangle.Width, panel1.ClientRectangle.Height, System.Drawing.Imaging.PixelFormat.Format24bppRgb); rectBounds = new Rectangle(0, 0, formDrawingSurface.Width, formDrawingSurface.Height); rectBounds.Inflate(-1, -1); xFilt = new double[7]; yFilt = new double[7]; zFilt = new double[7]; xCenter = rectBounds.Width / 2; yCenter = rectBounds.Height / 2; x1Old = xCenter; y1Old = yCenter; xyAxisPen = new Pen(Color.Black, 2); circlePen = new Pen(Color.DarkBlue, 2); circleDiameter = formDrawingSurface.Width / 2; circleRadius = circleDiameter / 2; circleRectangle = new Rectangle((int)xCenter - circleRadius, (int)yCenter - circleRadius, circleDiameter, circleDiameter); }
private void getAccelerometerData() { accelerometer = Accelerometer.GetDefault(); if (accelerometer != null) { // Select a report interval that is both suitable for the purposes of the app and supported by the sensor. // This value will be used later to activate the sensor. uint minReportInterval = accelerometer.MinimumReportInterval; desiredReportInterval = minReportInterval > 16 ? minReportInterval : 16; accelerometer.ReportInterval = desiredReportInterval; //add event for accelerometer readings accelerometer.ReadingChanged += new TypedEventHandler <Accelerometer, AccelerometerReadingChangedEventArgs>(ReadingChanged); } else { MessageDialog ms = new MessageDialog("No accelerometer Found"); ms.ShowAsync(); } }
public void ToggleAccelerometer(bool isToggled) { try { if (isToggled) { Accelerometer.Start(speed); } else { Accelerometer.Stop(); } } catch (FeatureNotSupportedException) { ShowNotSupportedError(); } catch (Exception ex) { ShowError(ex.Message); } }
/// <summary> /// Allows the game to run logic such as updating the world, /// checking for collisions, gathering input and playing audio. /// </summary> /// <param name="gameTime">Provides a snapshot of timing values.</param> protected override void Update(GameTime gameTime) { base.Update(gameTime); touchCollection = TouchPanel.GetState(); accelerometerState = Accelerometer.GetState(); // Use X axis to determine if the Zune is being viewed from the // left or right side. // Leave fixed for now, need to rethink recalculating marble // positions when screen is rotated. if (accelerometerState.Acceleration.X >= 0.0 && accelerometerState.Acceleration.X < 1.0) { screenOrientation = ScreenOrientation.LandscapeRight; screenRotation = 4.72f; } else { screenOrientation = ScreenOrientation.LandscapeLeft; screenRotation = 1.57f; } if (screenOrientation != priorScreenOrientation) { if (GameState == GameState.Play2D) { mainGame.RecalculateMarblePositions(); } priorScreenOrientation = screenOrientation; } if (NextGameState != GameState.None) { ChangeGameState(); } }
public void ToggleAccelerometer() { try { if (Accelerometer.IsMonitoring) { Accelerometer.Stop(); } else { Accelerometer.Start(speed); } } catch (FeatureNotSupportedException fnsEx) { // Feature not supported on device } catch (Exception ex) { // Other error has occurred. } }
private async void checkForAccelerometer() { MessageDialog msgDialog = new MessageDialog(""); myAccel = Accelerometer.GetDefault(); if (myAccel == null) { msgDialog.Content = "No accelerometer present"; await msgDialog.ShowAsync(); } else { // Establish the report interval uint minReportInterval = myAccel.MinimumReportInterval; _desiredReportInterval = minReportInterval > 100 ? minReportInterval : 100; myAccel.ReportInterval = _desiredReportInterval; myAccel.ReadingChanged += MyAccel_ReadingChanged; myAccel.Shaken += MyAccel_Shaken; // maybe not dispatcherTimer.Start(); } }
public MainPage() { this.InitializeComponent(); this.NavigationCacheMode = NavigationCacheMode.Required; this.Accelerometer = Accelerometer.GetDefault(); this.Accelerometer.ReadingChanged += (snd, args) => { this.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () => { var x = args.Reading.AccelerationX; var y = args.Reading.AccelerationY; var z = args.Reading.AccelerationZ; this.tbX.Text = x + ""; this.tbY.Text = y + ""; this.tbZ.Text = z + ""; }); }; }
public Uncle_sprite() { //uncledata = data; // 创建走的动画 List <CCSpriteFrame> _runFream = new List <CCSpriteFrame>(); CCSpriteFrameCache.sharedSpriteFrameCache().addSpriteFramesWithFile(@"plist/zhengyu"); CCSpriteBatchNode sheet = CCSpriteBatchNode.batchNodeWithFile(@"plist/Images/zhengyu"); this.addChild(sheet); for (int i = 1; i <= 4; i++) { _runFream.Add(CCSpriteFrameCache.sharedSpriteFrameCache().spriteFrameByName(String.Format("MM0{0}.png", i))); } _run = CCAnimate.actionWithAnimation(CCAnimation.animationWithFrames(_runFream, 0.12f)); List <CCSpriteFrame> _actackFream = new List <CCSpriteFrame>(); // 创建攻击时候动作 for (int i = 1; i <= 5; i++) { _actackFream.Add(CCSpriteFrameCache.sharedSpriteFrameCache().spriteFrameByName(String.Format("Mthrow0{0}.png", i))); } _actack = CCAnimate.actionWithAnimation(CCAnimation.animationWithFrames(_actackFream, 0.3f)); position = new CCPoint(100, 100); // 初始化开始帧 base.initWithSpriteFrame(_runFream[0]); // 如果手机倾斜 if (Accelerometer.IsSupported) { gSensor = new Accelerometer(); gSensor.CurrentValueChanged += new EventHandler <SensorReadingEventArgs <AccelerometerReading> >(gSensor_CurrentValueChanged); gSensor.Start(); } }
private void SetupAccelorometer() { m_accelerometer = Accelerometer.GetDefault(); if (m_accelerometer != null) { m_accelerometer.ReadingChanged += (s, e) => Dispatcher.BeginInvoke(() => { var reading = m_accelerometer.GetCurrentReading(); m_accReading = reading; m_angle = Math.Atan2(-reading.AccelerationX, reading.AccelerationY) * 180.0 / Math.PI; Microsoft.Phone.Controls.PageOrientation orientation = (App.Current.RootVisual as PhoneApplicationFrame).Orientation; if (!OrientationIsLandscape()) { landscapeMessageBorder.Visibility = Visibility.Visible; } else { landscapeMessageBorder.Visibility = Visibility.Collapsed; } }); } }
protected override void OnNavigatedTo(NavigationEventArgs e) { _accelerometer = Accelerometer.GetDefault(rootPage.AccelerometerReadingType); if (_accelerometer != null) { // Select a report interval that is both suitable for the purposes of the app and supported by the sensor. // This value will be used later to activate the sensor. _desiredReportInterval = Math.Max(_accelerometer.MinimumReportInterval, 16); // Set up a DispatchTimer _dispatcherTimer = new DispatcherTimer(); _dispatcherTimer.Tick += DisplayCurrentReading; _dispatcherTimer.Interval = TimeSpan.FromMilliseconds(_desiredReportInterval); rootPage.NotifyUser(rootPage.AccelerometerReadingType + " accelerometer ready", NotifyType.StatusMessage); ScenarioEnableButton.IsEnabled = true; } else { rootPage.NotifyUser(rootPage.AccelerometerReadingType + " accelerometer not found", NotifyType.ErrorMessage); } }
public IObservable <MotionReading> WhenReadingTaken() => this.observable ?? Observable.Create <MotionReading>(ob => { var handler = new EventHandler <AccelerometerDataUpdatedEventArgs>((sender, args) => ob.OnNext(new MotionReading(args.X, args.Y, args.Z)) ); var sensor = new Accelerometer { Interval = 250 }; sensor.DataUpdated += handler; sensor.Start(); return(() => { sensor.Stop(); sensor.DataUpdated -= handler; sensor.Dispose(); }); }) .Publish() .RefCount();
//private IReadOnlyList<GeofenceStateChangeReport> ReportList; /// <summary> /// Background task entry point. /// </summary> /// <param name="taskInstance"></param> public void Run(IBackgroundTaskInstance taskInstance) { _accelerometer = Accelerometer.GetDefault(); #region Check Manual Trigger try { _manualTrigger = (bool)ApplicationData.Current.LocalSettings.Values["ManualTrigger"]; } catch (Exception) { _manualTrigger = false; } #endregion if (null != _accelerometer) { _sampleCount = 0; // Select a report interval that is both suitable for the purposes of the app and supported by the sensor. uint minReportIntervalMsecs = _accelerometer.MinimumReportInterval; _accelerometer.ReportInterval = minReportIntervalMsecs > 16 ? minReportIntervalMsecs : 16; // Subscribe to accelerometer ReadingChanged events. _accelerometer.ReadingChanged += new TypedEventHandler <Accelerometer, AccelerometerReadingChangedEventArgs>(ReadingChanged); // Take a deferral that is released when the task is completed. _deferral = taskInstance.GetDeferral(); // Get notified when the task is canceled. taskInstance.Canceled += new BackgroundTaskCanceledEventHandler(OnCanceled); // Store a setting so that the app knows that the task is running. ApplicationData.Current.LocalSettings.Values["IsBackgroundTaskActive"] = true; } GeofenceMonitor.Current.GeofenceStateChanged += OnGeoFenceStateChanged; }
async void SensorValueChanged(object sender, X2CodingLab.SensorTag.SensorValueChangedEventArgs e) { await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, async() => { switch (e.Origin) { case SensorName.Accelerometer: // WebSockets MessageWebSocket webSocket = messageWebSocket; if (webSocket == null) { Uri server = new Uri("ws://localhost:8181"); webSocket = new MessageWebSocket(); webSocket.Control.MessageType = SocketMessageType.Utf8; webSocket.MessageReceived += MessageReceived; webSocket.Closed += Closed; await webSocket.ConnectAsync(server); messageWebSocket = webSocket; messageWriter = new DataWriter(webSocket.OutputStream); } string message = null; //byte[] accValue = await acc.ReadValue(); double[] accAxis = Accelerometer.CalculateCoordinates(e.RawData, 1 / 64.0); double xRaw = accAxis[0] / 4; double yRaw = accAxis[1] / 4; message = "SET RAW_INPUT " + xRaw.ToString("0.00000") + "," + yRaw.ToString("0.00000"); info.Text = message; messageWriter.WriteString(message); await messageWriter.StoreAsync(); break; } }); }
public void Start(SensorType sensorType, int interval) { switch (sensorType) { case SensorType.Accelerometer: accelerometer = Accelerometer.GetDefault(); if (accelerometer != null) { accelerometer.ReadingChanged += Accelerometer_ReadingChanged; } break; case SensorType.Gyroscope: gyrometer = Gyrometer.GetDefault(); if (gyrometer != null) { gyrometer.ReadingChanged += Gyrometer_ReadingChanged; } break; case SensorType.Magntometer: magnetometer = Magnetometer.GetDefault(); if (magnetometer != null) { magnetometer.ReadingChanged += Magnetometer_ReadingChanged; } break; case SensorType.Altimeter: altimeter = Altimeter.GetDefault(); if (altimeter != null) { altimeter.ReadingChanged += Altimeter_ReadingChanged; } break; } sensorTypeStatus[sensorType] = true; }
public void ToggleAccelerometer() { try { if (Accelerometer.IsMonitoring) { Accelerometer.Stop(); } else { Accelerometer.Start(SensorSpeed.Game); } } catch (FeatureNotSupportedException) { Toast.MakeText(Application.Context, "Feature not supported on device", ToastLength.Short).Show(); } catch (System.Exception ex) { Toast.MakeText(Application.Context, "Other error has occurred" + ex.Message, ToastLength.Short).Show(); } }
public DeviceMotionService() { try { accelerometer = Accelerometer.GetDefault(); gyrometer = Gyrometer.GetDefault(); compass = Compass.GetDefault(); magnetometer = Magnetometer.GetDefault(); } catch (Exception ex) { Debug.WriteLine(ex.Message); } sensorStatus = new Dictionary <MotionSensorType, bool>() { { MotionSensorType.Accelerometer, false }, { MotionSensorType.Gyroscope, false }, { MotionSensorType.Magnetometer, false }, { MotionSensorType.Compass, false } }; }
// Constructor public MainPage() { InitializeComponent(); AccelerometerSensor = new Accelerometer(); AccelerometerSensor.CurrentValueChanged += new EventHandler <SensorReadingEventArgs <AccelerometerReading> >(AccelerometerSensor_ReadingChanged); AccelerometerStartup(); if ((PhotoCamera.IsCameraTypeSupported(CameraType.Primary) == true)) { viewfinderCanvas.Visibility = Visibility.Visible; var cam = new Microsoft.Devices.PhotoCamera(CameraType.Primary); if (Orientation == PageOrientation.PortraitUp || Orientation == PageOrientation.PortraitDown || Orientation == PageOrientation.Portrait) { // Rotate for LandscapeRight orientation. viewfinderBrush.RelativeTransform = new CompositeTransform() { CenterX = 0.5, CenterY = 0.5, Rotation = 90 }; } viewfinderBrush.SetSource(cam); } }
private void StopButtonOnClicked(object sender, EventArgs e) { if (!Accelerometer.IsMonitoring) { return; } try { Accelerometer.ReadingChanged -= OnReadingChanged; Accelerometer.Stop(); LabelX.Text = LabelY.Text = LabelZ.Text = ""; StartButton.IsEnabled = true; StopButton.IsEnabled = false; } catch (Exception ex) { Debug.WriteLine($"{ex}"); } }
private void StartServiceButtonOnClick(object sender, EventArgs e) { _startServiceButton.Enabled = false; _startServiceButton.Click -= StartServiceButtonOnClick; StartService(_startServiceIntent); Log.Info(Tag, "User started tracking."); try { Accelerometer.Start(SensorSpeed.UI); } catch (Exception ex) { Log.Error(Tag, ex.ToString()); } _isStarted = true; _stopServiceButton.Click += StopServiceButtonOnClick; _stopServiceButton.Enabled = true; _sendButton.Enabled = false; }
public Scenario3_Polling() { this.InitializeComponent(); _accelerometer = Accelerometer.GetDefault(); if (_accelerometer != null) { // Select a report interval that is both suitable for the purposes of the app and supported by the sensor. // This value will be used later to activate the sensor. uint minReportInterval = _accelerometer.MinimumReportInterval; _desiredReportInterval = minReportInterval > 16 ? minReportInterval : 16; // Set up a DispatchTimer _dispatcherTimer = new DispatcherTimer(); _dispatcherTimer.Tick += DisplayCurrentReading; _dispatcherTimer.Interval = new TimeSpan(0, 0, 0, 0, (int)_desiredReportInterval); } else { rootPage.NotifyUser("No accelerometer found", NotifyType.ErrorMessage); } }
public Sensors() { _locator = new Geolocator { ReportInterval = 250 }; _locator.StatusChanged += Locator_StatusChanged; _locator.PositionChanged += Locator_PositionChanged; _accelerometor = Accelerometer.GetDefault(AccelerometerReadingType.Standard); if (_accelerometor != null) { _accelerometor.ReadingChanged += Accelerometor_ReadingChanged; } _gyrometer = Gyrometer.GetDefault(); if (_gyrometer != null) { _gyrometer.ReadingChanged += _gyrometer_ReadingChanged; } }