private void _brick_BrickChanged(object sender, BrickChangedEventArgs e) { Debug.WriteLine("Brick changed!"); this._distanceMeasured = (int)e.Ports[InputPort.Four].SIValue; txtDistance.Text = this._distanceMeasured.ToString(); Debug.WriteLine(this._distanceMeasured.ToString()); }
//stuff that happen every time the sensor values change private void _brick_BrickChanged(object sender, BrickChangedEventArgs e) { var buttonpressed = _brick.Ports[InputPort.One].SIValue; var xcoordinate = _brick.Ports[InputPort.A].SIValue; var ycoordinate = _brick.Ports[InputPort.B].SIValue; //create comma sperated list of data string LogValues = buttonpressed.ToString() + "," + xcoordinate.ToString() +","+ ycoordinate.ToString(); //add to list LogList.Add(LogValues); }
void brick_BrickChanged(object sender, BrickChangedEventArgs e) { // hack to workaround XAML trying to typecast the Port dictionary to something unbindable... List<KeyValue> temp = new List<KeyValue>(); foreach(KeyValuePair<InputPort, Port> p in e.Ports) temp.Add(new KeyValue { Key = p.Key, Value = p.Value }); InputPorts.DataContext = temp; Buttons.DataContext = null; Buttons.DataContext = e.Buttons; }
void _brick_BrickChanged(object sender, BrickChangedEventArgs e) { MotorA.Update(_brick); MotorB.Update(_brick); MotorC.Update(_brick); MotorD.Update(_brick); InputOne.Update(_brick); InputTwo.Update(_brick); InputThree.Update(_brick); InputFour.Update(_brick); }
private void OnBrickChanged(BrickChangedEventArgs e) { EventHandler <BrickChangedEventArgs> handler = BrickChanged; if (handler != null) { if (_context == SynchronizationContext.Current) { handler(this, e); } else { _context.Post(delegate { handler(this, e); }, null); } } }
private void _brick_BrickChanged(object sender, BrickChangedEventArgs e) { string rawIrValue = e.Ports[InputPort.One].SIValue.ToString(); int iButton; if (Int32.TryParse(rawIrValue, out iButton)) { _data.ActiveButton = iButton; } string rawUsValue = e.Ports[InputPort.Two].SIValue.ToString(); int iDistance; if (Int32.TryParse(rawUsValue, out iDistance)) { _data.UltrasonicSensorData = iDistance; } string rawColorValue = e.Ports[InputPort.Three].SIValue.ToString(); int iColor; if (Int32.TryParse(rawColorValue, out iColor)) { _data.ColorSensorData = iColor; } string rawGyroValue = e.Ports[InputPort.Four].SIValue.ToString(); int iGyro; if (Int32.TryParse(rawGyroValue, out iGyro)) { if(!_gyroOffsetInit) { _gyroOffsetInit = true; _gyroOffset = iGyro; } _data.Angle = iGyro - _gyroOffset; } string rawTachoValue = e.Ports[_driveSensorPortLeft].SIValue.ToString(); int iTacho; if (Int32.TryParse(rawTachoValue, out iTacho)) { _data.TachoLeftWheel = iTacho; } }
void _brick_BrickChanged(object sender, BrickChangedEventArgs e) { double x, y; int density = 240; _sensorMotorPos = e.Ports[InputPort.A].SIValue; _infraSensor = e.Ports[InputPort.Three].SIValue; _ultraSensor = e.Ports[InputPort.Four].SIValue; e.Ports[InputPort.Four].SetMode(1); txtInfra.Text = "Infra: " + _infraSensor; txtUltra.Text = "Ultra: " + _ultraSensor; txtMotor.Text = "Motor: " + _sensorMotorPos; if (_scan) { if (_scanEdge) { _brick.DirectCommand.StepMotorAtSpeedAsync(OutputPort.A, 25, 10, true); if (_sensorMotorPos >= _sensorStartPos + 80) _scanEdge = false; } else { _brick.DirectCommand.StepMotorAtSpeedAsync(OutputPort.A, -30, 10, true); if (_sensorMotorPos <= _sensorStartPos - 80) _scanEdge = true; } DrawLine( new SensorMeasuremntDisplay(_sensorMotorPos, _infraSensor, density).x, new SensorMeasuremntDisplay(_sensorMotorPos, _infraSensor, density).y, canvInfra); if (_ultraSensor != 255) { DrawLine( new SensorMeasuremntDisplay(_sensorMotorPos, _ultraSensor, density).x, new SensorMeasuremntDisplay(_sensorMotorPos, _ultraSensor, density).y, canvUltra); } } }
private void Brick_BrickChanged(object sender, BrickChangedEventArgs e) { brick.Ports[InputPort.Four].SetMode(InfraredMode.Proximity); Console.WriteLine(brick.Ports[InputPort.Four].SIValue); brick.DirectCommand.PlayToneAsync(20, 442, 1000); }
private void brick_BrickChanged(object sender, BrickChangedEventArgs e) { _portText.Clear(); foreach(Port port in e.Ports.Values) { _portText.AppendFormat("{0}: {1}, {2}, {3}", port.Name, port.Type, port.Mode, port.SIValue); _portText.AppendLine(); } _ports.Text = _portText.ToString(); }
void brick_BrickChanged(object sender, BrickChangedEventArgs e) { InputPorts.DataContext = e.Ports; }
private void OnBrickChanged(BrickChangedEventArgs e) { EventHandler<BrickChangedEventArgs> handler = BrickChanged; if(handler != null) { if(_context == SynchronizationContext.Current) handler(this, e); else _context.Post(delegate { handler(this, e); }, null); } }
/* * _brick_BrickChanged is an event handler that will fire when ever the brick's color sensor reveives new data. */ void _brick_BrickChanged(object sender, BrickChangedEventArgs e) { //System.Console.WriteLine("\nIn MaveNavigatorIntermediate()"); double lightSensorValue = e.Ports[InputPort.One].SIValue; if (traversingArc) { if (lightSensorValue < darkColorSIValue) // black in current { // Possible node found traversingArc = false; } else if (lightSensorValue > lightColorSIValue) { // Target found targetReached = true; traversingArc = false; MakeTone(1000); Task.Delay(500).Wait(); MakeTone(1000); Task.Delay(500).Wait(); MakeTone(1000); Task.Delay(500).Wait(); } else { TraverseArc(lightSensorValue); } } //System.Console.WriteLine("Leaving MaveNavigatorIntermediate()\n"); }
private void _brick_BrickChanged(object sender, BrickChangedEventArgs e) { Debug.WriteLine("algo ocurrió!"); }
static void _brick_BrickChanged(object sender, BrickChangedEventArgs e) { System.Console.WriteLine(e.Ports[InputPort.One].SIValue); }