Exemplo n.º 1
0
        /// <summary>
        /// Runs the userEvent.xml example. Invokes the external triggers every few time steps.
        /// </summary>
        static void RunUserEvent()
        {
            Simulator sim       = new Simulator();
            String    scene     = "userEvent";
            String    mengePath = @"E:\work\projects\menge_fork\";
            String    behaveXml = String.Format(@"{0}examples\core\{1}\{1}B.xml", mengePath, scene);
            String    sceneXml  = String.Format(@"{0}examples\core\{1}\{1}S.xml", mengePath, scene);

            if (sim.Initialize(behaveXml, sceneXml, "orca"))
            {
                System.Console.WriteLine("Simulator has {0} external triggers", sim.Triggers.Count);
                System.Console.WriteLine("New simulator created.");
                System.Console.WriteLine("\t{0} agents", sim.AgentCount);
                for (int i = 0; i < 20; ++i)
                {
                    if (i % 3 == 0)
                    {
                        int             triggerIndex = (i / 3) % sim.Triggers.Count;
                        ExternalTrigger trigger      = sim.Triggers[triggerIndex];
                        System.Console.WriteLine("Firing trigger: {0}", trigger.Name);
                        trigger.Fire();
                    }
                    System.Console.WriteLine("Step {0}", i + 1);
                    if (!sim.DoStep())
                    {
                        System.Console.WriteLine("Simulation done...quitting");
                        break;
                    }
                    for (int a = 0; a < sim.AgentCount; ++a)
                    {
                        Agent   agt = sim.GetAgent(a);
                        Vector3 p   = agt.Position;
                        Vector3 v   = agt.Velocity;
                        System.Console.WriteLine("\tAgent {0} at ({1}, {2} moving a5 {3} m/s)", a, p.X, p.Z, v.Length());
                    }
                }
            }
            else
            {
                System.Console.WriteLine("Error initializing simulation");
            }
        }
Exemplo n.º 2
0
 /// <summary>
 /// Enable or Disable external triggering
 /// </summary>
 /// <param name="externalTrigger">Channels to enable external triggering, if any</param>
 public void SetExternalTrigger(ExternalTrigger externalTrigger)
 {
     SendCommandWithErrorOnlyResponse("PM:TRIG:EXTernal " + ((int)externalTrigger).ToString());
 }
Exemplo n.º 3
0
        private void cmbExternalTrigger_SelectedIndexChanged(object sender, EventArgs e)
        {
            ExternalTrigger triggerState = (ExternalTrigger)cmbExternalTrigger.SelectedIndex;

            Newport.SetExternalTrigger(triggerState);
        }