Пример #1
0
        /// <summary>
        /// Constructor for the path map generator GUI. Takes the subfield list which is
        /// created by the split function in the main form.
        /// </summary>
        /// <param name="fields">List of subfields</param>
        public PathMapGenerator(List<Field> fields)
        {
            InitializeComponent();

            rend = new Renderer(FieldView);
            wallsRend = new PolygonRenderable(Color.Brown, true);
            objectsRend = new PolygonRenderable(Color.Blue, true);
            regionsRend = new PolygonRenderable(Color.Yellow, 0.5f, true);
            fieldsRend = new PolygonRenderable(Color.Gray);
            pointRend = new PointRenderable();
            pointRend.Show = false;
            lines = new List<PathRenderable>();
            rend.AddRenderable(wallsRend);
            rend.AddRenderable(objectsRend);
            rend.AddRenderable(regionsRend);
            rend.AddRenderable(fieldsRend);
            rend.AddRenderable(pointRend);

            originalTool = rend.Tool;
            polyTool = new ClickTool();
            polyTool.clicked += new EventHandler<ClickedEventArgs>(FieldViewClick);
            rend.Tool = polyTool;
            complete = false;
            PRMs = new List<PRMAlgorithm>();

            rend.OnFormShown();

            this.fields = fields;
            f = fields[0];
            count = 1;
            LoadNext();
        }
Пример #2
0
 /// <summary>
 /// Activates the tool, and turns off all others
 /// </summary>
 /// <param name="toolToActivate"></param>
 public void DeactivateAllToolsExcept(IRenderTool toolToActivate)
 {
     foreach (IRenderTool tool in tools)
     {
         tool.IsActive = false;
     }
     ActivateTool(toolToActivate);
 }
Пример #3
0
 /// <summary>
 /// This adds a tool object to the list of items to render by the renderable, and optionally activates it
 /// </summary>
 /// <param name="tool"></param>
 /// <param name="activate"></param>
 public void AddTool(IRenderTool tool, bool activate)
 {
     tools.Add(tool);
     if (activate)
     {
         this.ActivateTool(tool);
     }
 }
Пример #4
0
 public void DisableTool(IRenderTool tool)
 {
     if (!disabledTools.Contains(tool))
     {
         enabledTools.Remove(tool);
         disabledTools.Add(tool);
         BuildContextMenu();
     }
 }
Пример #5
0
        public void Initialize(List <IRenderTool> toolList, IRenderTool activeTool)
        {
            foreach (IRenderTool tool in toolList)
            {
                disabledTools.Add(tool);
            }
            if (activeTool != null)
            {
                EnableTool(activeTool);
            }

            BuildContextMenu();
        }
Пример #6
0
 /// <summary>
 /// Changes toolToDeactivate to deactivated
 /// </summary>
 /// <param name="toolToDeactivate"></param>
 public void DeactivateTool(IRenderTool toolToDeactivate)
 {
     foreach (IRenderTool tool in tools)
     {
         if (tool == toolToDeactivate)
         {
             tool.IsActive = false;
             if (toolChanged != null)
             {
                 toolChanged(this, new ToolChangedArgs(tool, false));
             }
         }
     }
     control.Cursor = Cursors.Default;
 }
Пример #7
0
 /// <summary>
 /// Changes toolToActivate to active
 /// </summary>
 /// <param name="toolToActivate"></param>
 public void ActivateTool(IRenderTool toolToActivate)
 {
     foreach (IRenderTool tool in tools)
     {
         if (tool == toolToActivate)
         {
             tool.IsActive = true;
             if (toolChanged != null)
             {
                 toolChanged(this, new ToolChangedArgs(tool, true));
             }
         }
         //control.Cursor = tool.Cursor;
     }
 }
Пример #8
0
        public void Initialize(List<IRenderTool> toolList, IRenderTool activeTool)
        {
            foreach (IRenderTool tool in toolList)
            {
                disabledTools.Add(tool);
            }
            if (activeTool!=null)
                EnableTool(activeTool);

            BuildContextMenu();
        }
Пример #9
0
 public void EnableTool(IRenderTool tool)
 {
     if (!enabledTools.Contains(tool))
     {
         enabledTools.Add(tool);
         disabledTools.Remove(tool);
         BuildContextMenu();
     }
 }
Пример #10
0
 public void AddConflict(IRenderTool tool)
 {
     conflicts.Add(tool);
 }
Пример #11
0
 public void AddTools(Renderer renderer,IRenderTool tool)
 {
     renderer.AddTool(tool);
 }
Пример #12
0
 public void RemoveTools(Renderer renderer, IRenderTool tool)
 {
     renderer.RemoveTool(tool);
 }
Пример #13
0
 public ToolChangedArgs(IRenderTool tool, bool active)
 {
     this.changedTool = tool;
     this.active = active;
 }
Пример #14
0
 /// <summary>
 /// Changes toolToDeactivate to deactivated
 /// </summary>
 /// <param name="toolToDeactivate"></param>
 public void DeactivateTool(IRenderTool toolToDeactivate)
 {
     foreach (IRenderTool tool in tools)
     {
         if (tool == toolToDeactivate)
         {
             tool.IsActive = false;
             if (toolChanged != null) toolChanged(this, new ToolChangedArgs(tool, false));
         }
     }
     control.Cursor = Cursors.Default;
 }
Пример #15
0
 /// <summary>
 /// This adds a tool object to the list of items to render by the renderable, and optionally activates it
 /// </summary>
 /// <param name="tool"></param>
 /// <param name="activate"></param>
 public void AddTool(IRenderTool tool, bool activate)
 {
     tools.Add(tool);
     if (activate) this.ActivateTool(tool);
 }
Пример #16
0
 /// <summary>
 /// Changes toolToActivate to active
 /// </summary>
 /// <param name="toolToActivate"></param>
 public void ActivateTool(IRenderTool toolToActivate)
 {
     foreach (IRenderTool tool in tools)
     {
         if (tool == toolToActivate)
         {
             tool.IsActive = true;
             if (toolChanged != null) toolChanged(this, new ToolChangedArgs(tool, true));
         }
         //control.Cursor = tool.Cursor;
     }
 }
Пример #17
0
 public EnableModeArgs(IRenderTool t, string m)
 {
     tool = t;
     mode = m;
 }
Пример #18
0
 public ToolChangedArgs(IRenderTool tool, bool active)
 {
     this.changedTool = tool;
     this.active      = active;
 }
Пример #19
0
 /// <summary>
 /// This adds a tool object to the list of items to render by the renderable.
 /// </summary>
 /// <param name="renderable"></param>
 public void AddTool(IRenderTool tool)
 {
     tools.Add(tool);
 }
Пример #20
0
 public void RemoveTool(IRenderTool tool)
 {
     tools.Remove(tool);
 }
Пример #21
0
 public ToolEnabledArgs(IRenderTool tool)
 {
     toolEnabled = tool;
 }
Пример #22
0
 public EnableModeArgs(IRenderTool t, string m)
 {
     tool = t;
     mode = m;
 }
Пример #23
0
 /// <summary>
 /// This adds a tool object to the list of items to render by the renderable.       
 /// </summary>
 /// <param name="renderable"></param>
 public void AddTool(IRenderTool tool)
 {
     tools.Add(tool);
 }
Пример #24
0
 public ToolDisabledArgs(IRenderTool tool)
 {
     toolDisabled = tool;
 }
Пример #25
0
 /// <summary>
 /// Activates the tool, and turns off all others
 /// </summary>
 /// <param name="toolToActivate"></param>
 public void DeactivateAllToolsExcept(IRenderTool toolToActivate)
 {
     foreach (IRenderTool tool in tools)
         tool.IsActive = false;
     ActivateTool(toolToActivate);
 }
Пример #26
0
        public MainGUI()
        {
            InitializeComponent();
            rend = new Renderer(FieldView);
            ocgridRend = new OccupancyGridRenderable("Grid SLAM Map", Color.Red);
            firstPointRend = new PointRenderable();
            firstPointRend.Show = false;
            newPolyRend = new PathRenderable();
            wallsRend = new PolygonRenderable(Color.Brown, true);
            objectsRend = new PolygonRenderable(Color.Blue, true);
            regionsRend = new PolygonRenderable(Color.Yellow, 0.5f, true);
            fieldsRend = new PolygonRenderable(Color.Gray);
            selectedPolyRend = new PolygonRenderable(Color.Black);
            selectedPolyRend.LineThickness = 2F;
            rend.AddRenderable(ocgridRend);
            rend.AddRenderable(firstPointRend);
            rend.AddRenderable(newPolyRend);
            rend.AddRenderable(wallsRend);
            rend.AddRenderable(objectsRend);
            rend.AddRenderable(regionsRend);
            rend.AddRenderable(fieldsRend);
            rend.AddRenderable(selectedPolyRend);

            mainField = new Field("main");
            subFields = new Dictionary<string, Polygon>();
            selectedPoly = new List<Polygon>();

            originalTool = rend.Tool;
            polyTool = new ClickTool();
            polyTool.clicked += new EventHandler<ClickedEventArgs>(FieldViewClick);

            newPoly = new Polygon();
            accRobot = false;
            ocgridShow = true;

            Ctrl_press.Hide();
        }
Пример #27
0
 public void RemoveTool(IRenderTool tool)
 {
     tools.Remove(tool);
 }
Пример #28
0
 public void RemoveTools(Renderer renderer, IRenderTool tool)
 {
     renderer.RemoveTool(tool);
 }
Пример #29
0
 public void AddConflict(IRenderTool tool)
 {
     conflicts.Add(tool);
 }
Пример #30
0
 public void AddTools(Renderer renderer, IRenderTool tool)
 {
     renderer.AddTool(tool);
 }