Skip to content
This repository
Browse code

implemented a rotating guarddog rectangle for mapping :) will be impr…

…oved
  • Loading branch information...
commit ec695baa85b1dec68beb9fa745e56c0a66cc15a5 1 parent 6e99de6
Ammar Qammaz authored
BIN  MotorFoundation/Arduino/libRoboVisionSensorLib.a
Binary file not shown
7 MotorFoundation/MotorHAL.h
@@ -7,6 +7,13 @@
7 7 #ifdef __cplusplus
8 8 extern "C" {
9 9 #endif
  10 +
  11 +extern unsigned int robot_height; // mm
  12 +extern unsigned int robot_length; // mm
  13 +extern unsigned int robot_width; // mm
  14 +extern unsigned int motors_distance; // mm
  15 +extern unsigned int wheel_diameter; // mm
  16 +
10 17
11 18 unsigned int RobotInit(char * md23_device_id,char * arduino_device_id);
12 19 unsigned int RobotClose();
4 MotorFoundation/MotorHAL.layout
@@ -2,9 +2,9 @@
2 2 <CodeBlocks_layout_file>
3 3 <ActiveTarget name="Release" />
4 4 <File name="MotorHAL.c" open="1" top="0" tabpos="1">
5   - <Cursor position="1822" topLine="30" />
  5 + <Cursor position="361" topLine="0" />
6 6 </File>
7 7 <File name="MotorHAL.h" open="1" top="0" tabpos="2">
8   - <Cursor position="59" topLine="0" />
  8 + <Cursor position="279" topLine="0" />
9 9 </File>
10 10 </CodeBlocks_layout_file>
4 RoboVisionX.workspace
@@ -9,7 +9,7 @@
9 9 <Project filename="VideoInput/VideoInput.cbp" />
10 10 <Project filename="RoboKernel/RoboKernel.cbp" />
11 11 <Project filename="WorldMapping/MasterWorld/MasterWorld.cbp" />
12   - <Project filename="VisualCortex/VisualCortex.cbp" active="1" />
13   - <Project filename="RoboVisionX/RoboVisionX.cbp" />
  12 + <Project filename="VisualCortex/VisualCortex.cbp" />
  13 + <Project filename="RoboVisionX/RoboVisionX.cbp" active="1" />
14 14 </Workspace>
15 15 </CodeBlocks_workspace_file>
151 RoboVisionX/MapOverview.cpp
@@ -5,8 +5,11 @@
5 5 #include <wx/intl.h>
6 6 //*)
7 7
  8 +#include <math.h>
  9 +
8 10 #include "../RoboKernel/RoboKernel.h"
9 11 #include "../WorldMapping/MasterpathPlanning/MasterpathPlanning.h"
  12 +#include "../MotorFoundation/MotorHAL.h"
10 13
11 14
12 15 #include <wx/dc.h>
@@ -21,6 +24,8 @@ unsigned int map_box_size=4;
21 24 unsigned int map_box_size_half=2;
22 25
23 26
  27 +#define PI 3.14159265
  28 +
24 29 wxBitmap *draw_area=0;
25 30 unsigned int draw_area_width=866;
26 31 unsigned int draw_area_height=500;
@@ -45,6 +50,9 @@ const long MapOverview::ID_CHECKBOX1 = wxNewId();
45 50 const long MapOverview::ID_BUTTON1 = wxNewId();
46 51 const long MapOverview::ID_BUTTON2 = wxNewId();
47 52 const long MapOverview::ID_BUTTON3 = wxNewId();
  53 +const long MapOverview::ID_STATICTEXT2 = wxNewId();
  54 +const long MapOverview::ID_SPINCTRL1 = wxNewId();
  55 +const long MapOverview::ID_TIMER1 = wxNewId();
48 56 //*)
49 57
50 58 BEGIN_EVENT_TABLE(MapOverview,wxFrame)
@@ -67,15 +75,22 @@ MapOverview::MapOverview(wxWindow* parent,wxWindowID id,const wxPoint& pos,const
67 75 StaticText3 = new wxStaticText(this, ID_STATICTEXT3, _("Target Position"), wxPoint(304,536), wxDefaultSize, 0, _T("ID_STATICTEXT3"));
68 76 TextTargetPosX = new wxTextCtrl(this, ID_TEXTCTRL3, _("0"), wxPoint(400,532), wxSize(48,27), 0, wxDefaultValidator, _T("ID_TEXTCTRL3"));
69 77 TextTargetPosY = new wxTextCtrl(this, ID_TEXTCTRL4, _("0"), wxPoint(448,532), wxSize(48,27), 0, wxDefaultValidator, _T("ID_TEXTCTRL4"));
70   - CheckBoxAutoUpdate = new wxCheckBox(this, ID_CHECKBOX1, _("Auto Update"), wxPoint(672,536), wxDefaultSize, 0, wxDefaultValidator, _T("ID_CHECKBOX1"));
  78 + CheckBoxAutoUpdate = new wxCheckBox(this, ID_CHECKBOX1, _("Auto Update"), wxPoint(688,533), wxDefaultSize, 0, wxDefaultValidator, _T("ID_CHECKBOX1"));
71 79 CheckBoxAutoUpdate->SetValue(false);
72   - ButtonExecute = new wxButton(this, ID_BUTTON1, _("Execute"), wxPoint(808,528), wxDefaultSize, 0, wxDefaultValidator, _T("ID_BUTTON1"));
  80 + ButtonExecute = new wxButton(this, ID_BUTTON1, _("Execute"), wxPoint(800,520), wxSize(104,48), 0, wxDefaultValidator, _T("ID_BUTTON1"));
73 81 ButtonSetCurPos = new wxButton(this, ID_BUTTON2, _("Set"), wxPoint(248,530), wxSize(32,29), 0, wxDefaultValidator, _T("ID_BUTTON2"));
74 82 ButtonSetTargetPos = new wxButton(this, ID_BUTTON3, _("Set"), wxPoint(496,530), wxSize(32,29), 0, wxDefaultValidator, _T("ID_BUTTON3"));
  83 + StaticText2 = new wxStaticText(this, ID_STATICTEXT2, _("Rotation"), wxPoint(544,536), wxDefaultSize, 0, _T("ID_STATICTEXT2"));
  84 + SpinCtrlOrientation = new wxSpinCtrl(this, ID_SPINCTRL1, _T("0"), wxPoint(608,532), wxSize(56,27), 0, -360, 360, 0, _T("ID_SPINCTRL1"));
  85 + SpinCtrlOrientation->SetValue(_T("0"));
  86 + Timer1.SetOwner(this, ID_TIMER1);
  87 + Timer1.Start(100, false);
75 88
76 89 Connect(ID_BUTTON1,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&MapOverview::OnButtonExecuteClick);
77 90 Connect(ID_BUTTON2,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&MapOverview::OnButtonSetCurPosClick);
78 91 Connect(ID_BUTTON3,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&MapOverview::OnButtonSetTargetPosClick);
  92 + Connect(ID_SPINCTRL1,wxEVT_COMMAND_SPINCTRL_UPDATED,(wxObjectEventFunction)&MapOverview::OnSpinCtrlOrientationChange);
  93 + Connect(ID_TIMER1,wxEVT_TIMER,(wxObjectEventFunction)&MapOverview::OnTimer1Trigger);
79 94 //*)
80 95
81 96 draw_area = new wxBitmap(draw_area_width,draw_area_height,-1);
@@ -128,19 +143,127 @@ void DrawSolvePath(wxMemoryDC &mem)
128 143 return;
129 144 }
130 145
131   -void DrawStartPoint(wxMemoryDC &mem,unsigned int startx,unsigned int starty)
  146 +void DrawStartPoint(wxMemoryDC &mem,unsigned int startx,unsigned int starty,float heading)
132 147 {
133 148 wxBrush greenback(wxColour(0,255,0),wxSOLID);
134 149 wxPen green(wxColour(0,255,0),1,wxSOLID);
135 150
  151 + fprintf(stderr,"Drawing Start point @ %u,%u heading %0.2f\n",startx,starty,heading);
  152 +
  153 + // We have a box sized 6x12
  154 + // and want to rotate it accordign to heading
  155 + /*
  156 +
  157 + |
  158 + | * X',Y'
  159 + | - * X,Y
  160 + | r - -
  161 + | - -
  162 + | - - r
  163 + | - -
  164 + |_-_________________
  165 +
  166 + (old coordinates are (x, y) and the new coordinates are (x', y'))
  167 +
  168 + q = initial angle, f = angle of rotation.
  169 +
  170 + x = r cos q
  171 + y = r sin q
  172 +
  173 + x' = r cos ( q + f ) = r cos q cos f - r sin q sin f
  174 + y' = r sin ( q + w ) = r sin q cos f + r cos q sin f
  175 +
  176 + hence:
  177 + x' = x cos f - y sin f
  178 + y' = y cos f + x sin f
  179 +
  180 +
  181 + We also asume
  182 +
  183 +-,- 0,+ + . -
  184 +
  185 + XL,YL
  186 +X4,Y4________________ X1,Y1
  187 + | |
  188 +XB | * | XF
  189 + YB| | YF
  190 + |________________|
  191 +X3,Y3 X2,Y2
  192 +-.+ 0,- + , +
  193 + XR,YR
  194 + */
  195 +
  196 + float box_width = robot_length/1000;
  197 + float box_height = robot_width/1000;
  198 +
  199 +
  200 + float XA1 = 0.0+box_width/2 ;
  201 + float YA1 = 0.0-box_height/2 ;
  202 + float XA2 = 0.0+box_width/2 ;
  203 + float YA2 = 0.0+box_height/2 ;
  204 + float XA3 = 0.0-box_width/2 ;
  205 + float YA3 = 0.0+box_height/2 ;
  206 + float XA4 = 0.0-box_width/2 ;
  207 + float YA4 = 0.0-box_height/2 ;
  208 +
  209 + float XAF = 0.0+box_width/2 ;
  210 + float YAF = 0.0;
  211 + float XAB= 0.0-box_width/2 ;
  212 + float YAB = 0.0;
  213 + float XAR = 0.0;
  214 + float YAR = 0.0+box_height/2 ;
  215 + float XAL = 0.0 ;
  216 + float YAL = 0.0-box_height/2 ;
  217 +
  218 + float XB1 , YB1, XB2, YB2, XB3 , YB3, XB4, YB4 , XBF, YBF , XBB, YBB , XBR, YBR , XBL, YBL ;
  219 +
  220 + XB1 = startx + (XA1 * cos(heading*PI/180)) - (YA1 * sin(heading*PI/180));
  221 + YB1 = starty + (YA1 * cos(heading*PI/180)) + (XA1 * sin(heading*PI/180));
  222 +
  223 +
  224 + XB2 = startx + XA2 * cos(heading*PI/180) - YA2 * sin(heading*PI/180);
  225 + YB2 = starty + YA2 * cos(heading*PI/180) + XA2 * sin(heading*PI/180);
  226 +
  227 +
  228 + XB3 = startx + XA3 * cos(heading*PI/180) - YA3 * sin(heading*PI/180);
  229 + YB3 = starty + YA3 * cos(heading*PI/180) + XA3 * sin(heading*PI/180);
  230 +
  231 +
  232 + XB4 = startx + XA4 * cos(heading*PI/180) - YA4 * sin(heading*PI/180);
  233 + YB4 = starty + YA4 * cos(heading*PI/180) + XA4 * sin(heading*PI/180);
  234 +
  235 + XBF = startx + XAF * cos(heading*PI/180) - YAF * sin(heading*PI/180);
  236 + YBF = starty + YAF * cos(heading*PI/180) + XAF * sin(heading*PI/180);
  237 +
  238 + XBB = startx + XAB * cos(heading*PI/180) - YAB * sin(heading*PI/180);
  239 + YBB = starty + YAB * cos(heading*PI/180) + XAB * sin(heading*PI/180);
  240 +
  241 + XBR = startx + XAR * cos(heading*PI/180) - YAR * sin(heading*PI/180);
  242 + YBR = starty + YAR * cos(heading*PI/180) + XAR * sin(heading*PI/180);
  243 +
  244 + XBL = startx + XAL * cos(heading*PI/180) - YAL * sin(heading*PI/180);
  245 + YBL = starty + YAL * cos(heading*PI/180) + XAL * sin(heading*PI/180);
  246 +
  247 +
  248 + fprintf(stderr,"We have points %0.2f,%0.2f %0.2f,%0.2f %0.2f,%0.2f %0.2f,%0.2f \n",XB1,YB1,XB2,YB2,XB3,YB3,XB4,YB4);
136 249
137 250 if ( (startx!=0) || (starty!=0) )
138 251 {
  252 + mem.SetPen(green);
  253 + mem.SetBrush(greenback);
  254 +
  255 + mem.DrawLine((signed int)XB1,(signed int)YB1,(signed int)XB2,(signed int)YB2);
  256 + mem.DrawLine((signed int)XB2,(signed int)YB2,(signed int)XB3,(signed int)YB3);
  257 + mem.DrawLine((signed int)XB3,(signed int)YB3,(signed int)XB4,(signed int)YB4);
  258 + mem.DrawLine((signed int)XB4,(signed int)YB4,(signed int)XB1,(signed int)YB1);
  259 +
  260 + //ARROW
  261 + mem.DrawLine((signed int)XBB,(signed int)YBB,(signed int)XBF,(signed int)YBF);
  262 + mem.DrawLine((signed int)XBF,(signed int)YBF,(signed int)XBL,(signed int)YBL);
  263 + mem.DrawLine((signed int)XBF,(signed int)YBF,(signed int)XBR,(signed int)YBR);
139 264
140   - mem.SetPen(green);
141   - mem.SetBrush(greenback);
142 265
143   - mem.DrawRectangle(startx*map_box_size-3,starty*map_box_size-3,map_box_size+6,map_box_size+6);
  266 + mem.DrawRectangle(startx*map_box_size-3,starty*map_box_size-3,map_box_size+6,map_box_size+6);
144 267 }
145 268 }
146 269
@@ -185,9 +308,9 @@ void DrawWorld(wxMemoryDC &mem,struct Map *floorplancopy)
185 308 mem.SetPen(black);
186 309 mem.SetBrush(whiteback);
187 310
188   - for (int y =0; y<draw_area_actual_pointsY; y++ )
  311 + for (unsigned int y =0; y<draw_area_actual_pointsY; y++ )
189 312 {
190   - for (int x =0; x<draw_area_actual_pointsX; x++ )
  313 + for (unsigned int x =0; x<draw_area_actual_pointsX; x++ )
191 314 {
192 315
193 316 obj = ObstacleExists(GetWorldHandler(),x,y);
@@ -231,7 +354,7 @@ void DrawWorld(wxMemoryDC &mem,struct Map *floorplancopy)
231 354 unsigned int startx=0,starty=0;
232 355 GetAgentLocation(GetWorldHandler(),OURROBOT,&startx,&starty);
233 356
234   - DrawStartPoint(mem,startx,starty);
  357 + DrawStartPoint(mem,startx,starty,GetAgentHeading(GetWorldHandler(),OURROBOT));
235 358
236 359
237 360 }
@@ -345,3 +468,13 @@ void MapOverview::OnButtonSetTargetPosClick(wxCommandEvent& event)
345 468 {
346 469 set_point_flag=2;
347 470 }
  471 +
  472 +void MapOverview::OnTimer1Trigger(wxTimerEvent& event)
  473 +{
  474 +}
  475 +
  476 +void MapOverview::OnSpinCtrlOrientationChange(wxSpinEvent& event)
  477 +{
  478 + SetAgentHeading(GetWorldHandler(),OURROBOT,(float) SpinCtrlOrientation->GetValue());
  479 + Refresh();
  480 +}
10 RoboVisionX/MapOverview.h
@@ -2,12 +2,14 @@
2 2 #define MAPOVERVIEW_H
3 3
4 4 //(*Headers(MapOverview)
  5 +#include <wx/spinctrl.h>
5 6 #include <wx/checkbox.h>
6 7 #include <wx/button.h>
7 8 #include <wx/statbox.h>
8 9 #include <wx/frame.h>
9 10 #include <wx/stattext.h>
10 11 #include <wx/textctrl.h>
  12 +#include <wx/timer.h>
11 13 //*)
12 14
13 15 class MapOverview: public wxFrame
@@ -20,13 +22,16 @@ class MapOverview: public wxFrame
20 22 //(*Declarations(MapOverview)
21 23 wxButton* ButtonExecute;
22 24 wxTextCtrl* TextTargetPosX;
  25 + wxSpinCtrl* SpinCtrlOrientation;
23 26 wxCheckBox* CheckBoxAutoUpdate;
24 27 wxStaticText* StaticText1;
  28 + wxTimer Timer1;
25 29 wxButton* ButtonSetTargetPos;
26 30 wxTextCtrl* TextCurPosX;
27 31 wxButton* ButtonSetCurPos;
28 32 wxStaticText* StaticText3;
29 33 wxStaticBox* StaticBox1;
  34 + wxStaticText* StaticText2;
30 35 wxTextCtrl* TextTargetPosY;
31 36 wxTextCtrl* TextCurPosY;
32 37 //*)
@@ -45,6 +50,9 @@ class MapOverview: public wxFrame
45 50 static const long ID_BUTTON1;
46 51 static const long ID_BUTTON2;
47 52 static const long ID_BUTTON3;
  53 + static const long ID_STATICTEXT2;
  54 + static const long ID_SPINCTRL1;
  55 + static const long ID_TIMER1;
48 56 //*)
49 57
50 58 private:
@@ -53,6 +61,8 @@ class MapOverview: public wxFrame
53 61 void OnButtonExecuteClick(wxCommandEvent& event);
54 62 void OnButtonSetCurPosClick(wxCommandEvent& event);
55 63 void OnButtonSetTargetPosClick(wxCommandEvent& event);
  64 + void OnTimer1Trigger(wxTimerEvent& event);
  65 + void OnSpinCtrlOrientationChange(wxSpinEvent& event);
56 66 //*)
57 67
58 68 void OnPaint(wxPaintEvent& event);
43 RoboVisionX/RoboVisionX.depend
@@ -636,7 +636,7 @@
636 636
637 637 1314284222 /usr/include/wx-2.8/wx/gtk/textctrl.h
638 638
639   -1326843154 /home/ammar/Documents/Programming/RoboVision/VisualCortex/VisualCortex.h
  639 +1333557760 /home/ammar/Documents/Programming/RoboVision/VisualCortex/VisualCortex.h
640 640
641 641 1324775140 source:/home/ammar/Documents/Programming/RoboVision/RoboVisionX/FeedScreenMemory.cpp
642 642 "FeedScreenMemory.h"
@@ -1513,7 +1513,7 @@
1513 1513 "wx/defs.h"
1514 1514 "wx/object.h"
1515 1515
1516   -1324782999 /home/ammar/Documents/Programming/RoboVision/MotorFoundation/MotorHAL.h
  1516 +1333930768 /home/ammar/Documents/Programming/RoboVision/MotorFoundation/MotorHAL.h
1517 1517 "../WorldMapping/MasterpathPlanning/MasterpathPlanning.h"
1518 1518
1519 1519 1289554847 /home/ammar/Documents/Programming/RoboVision/WorldMapping/MasterpathPlanning/MasterpathPlanning.h
@@ -1602,11 +1602,12 @@
1602 1602
1603 1603 1323564375 /home/ammar/Documents/Programming/RoboVision/WorldMapping/MasterWorld/MasterWorld.h
1604 1604
1605   -1333667554 source:/home/ammar/Documents/Programming/RoboVision/RoboVisionX/MapOverview.cpp
  1605 +1333928136 source:/home/ammar/Documents/Programming/RoboVision/RoboVisionX/MapOverview.cpp
1606 1606 "MapOverview.h"
1607 1607 "RoboVisionXMain.h"
1608 1608 <wx/string.h>
1609 1609 <wx/intl.h>
  1610 + <math.h>
1610 1611 "../RoboKernel/RoboKernel.h"
1611 1612 "../WorldMapping/MasterpathPlanning/MasterpathPlanning.h"
1612 1613 <wx/dc.h>
@@ -1615,11 +1616,45 @@
1615 1616 <wx/colour.h>
1616 1617 <wx/utils.h>
1617 1618
1618   -1333661169 /home/ammar/Documents/Programming/RoboVision/RoboVisionX/MapOverview.h
  1619 +1333917095 /home/ammar/Documents/Programming/RoboVision/RoboVisionX/MapOverview.h
  1620 + <wx/spinctrl.h>
1619 1621 <wx/checkbox.h>
1620 1622 <wx/button.h>
1621 1623 <wx/statbox.h>
1622 1624 <wx/frame.h>
1623 1625 <wx/stattext.h>
1624 1626 <wx/textctrl.h>
  1627 + <wx/timer.h>
  1628 +
  1629 +1314284222 /usr/include/wx-2.8/wx/spinctrl.h
  1630 + "wx/defs.h"
  1631 + "wx/spinbutt.h"
  1632 + "wx/generic/spinctlg.h"
  1633 + "wx/msw/spinctrl.h"
  1634 + "wx/os2/spinctrl.h"
  1635 + "wx/gtk/spinctrl.h"
  1636 + "wx/gtk1/spinctrl.h"
  1637 + "wx/generic/spinctlg.h"
  1638 + "wx/mac/spinctrl.h"
  1639 + "wx/generic/spinctlg.h"
  1640 +
  1641 +1314284222 /usr/include/wx-2.8/wx/spinbutt.h
  1642 + "wx/defs.h"
  1643 + "wx/control.h"
  1644 + "wx/event.h"
  1645 + "wx/univ/spinbutt.h"
  1646 + "wx/msw/spinbutt.h"
  1647 + "wx/motif/spinbutt.h"
  1648 + "wx/gtk/spinbutt.h"
  1649 + "wx/gtk1/spinbutt.h"
  1650 + "wx/mac/spinbutt.h"
  1651 + "wx/cocoa/spinbutt.h"
  1652 + "wx/os2/spinbutt.h"
  1653 +
  1654 +1314284222 /usr/include/wx-2.8/wx/gtk/spinbutt.h
  1655 +
  1656 +1314284222 /usr/include/wx-2.8/wx/generic/spinctlg.h
  1657 + "wx/textctrl.h"
  1658 +
  1659 +1314284222 /usr/include/wx-2.8/wx/gtk/spinctrl.h
1625 1660
12 RoboVisionX/RoboVisionX.layout
@@ -2,7 +2,7 @@
2 2 <CodeBlocks_layout_file>
3 3 <ActiveTarget name="Release" />
4 4 <File name="CortexSettings.cpp" open="1" top="0" tabpos="6">
5   - <Cursor position="28442" topLine="371" />
  5 + <Cursor position="32706" topLine="470" />
6 6 </File>
7 7 <File name="CortexSettings.h" open="1" top="0" tabpos="7">
8 8 <Cursor position="254" topLine="0" />
@@ -19,11 +19,11 @@
19 19 <File name="FramesOSD.h" open="1" top="0" tabpos="13">
20 20 <Cursor position="475" topLine="0" />
21 21 </File>
22   - <File name="MapOverview.cpp" open="1" top="0" tabpos="14">
23   - <Cursor position="9624" topLine="300" />
  22 + <File name="MapOverview.cpp" open="1" top="1" tabpos="14">
  23 + <Cursor position="12334" topLine="356" />
24 24 </File>
25 25 <File name="MapOverview.h" open="1" top="0" tabpos="15">
26   - <Cursor position="1558" topLine="18" />
  26 + <Cursor position="1889" topLine="1" />
27 27 </File>
28 28 <File name="RememberImage.cpp" open="1" top="0" tabpos="8">
29 29 <Cursor position="2953" topLine="34" />
@@ -37,8 +37,8 @@
37 37 <File name="RoboVisionXApp.h" open="1" top="0" tabpos="3">
38 38 <Cursor position="0" topLine="0" />
39 39 </File>
40   - <File name="RoboVisionXMain.cpp" open="1" top="1" tabpos="1">
41   - <Cursor position="4588" topLine="111" />
  40 + <File name="RoboVisionXMain.cpp" open="1" top="0" tabpos="1">
  41 + <Cursor position="4988" topLine="111" />
42 42 </File>
43 43 <File name="RoboVisionXMain.h" open="1" top="0" tabpos="2">
44 44 <Cursor position="783" topLine="135" />
21 RoboVisionX/wxsmith/MapOverview.wxs
@@ -40,11 +40,12 @@
40 40 </object>
41 41 <object class="wxCheckBox" name="ID_CHECKBOX1" variable="CheckBoxAutoUpdate" member="yes">
42 42 <label>Auto Update</label>
43   - <pos>672,536</pos>
  43 + <pos>688,533</pos>
44 44 </object>
45 45 <object class="wxButton" name="ID_BUTTON1" variable="ButtonExecute" member="yes">
46 46 <label>Execute</label>
47   - <pos>808,528</pos>
  47 + <pos>800,520</pos>
  48 + <size>104,48</size>
48 49 <handler function="OnButtonExecuteClick" entry="EVT_BUTTON" />
49 50 </object>
50 51 <object class="wxButton" name="ID_BUTTON2" variable="ButtonSetCurPos" member="yes">
@@ -59,5 +60,21 @@
59 60 <size>32,29</size>
60 61 <handler function="OnButtonSetTargetPosClick" entry="EVT_BUTTON" />
61 62 </object>
  63 + <object class="wxStaticText" name="ID_STATICTEXT2" variable="StaticText2" member="yes">
  64 + <label>Rotation</label>
  65 + <pos>544,536</pos>
  66 + </object>
  67 + <object class="wxSpinCtrl" name="ID_SPINCTRL1" variable="SpinCtrlOrientation" member="yes">
  68 + <value>0</value>
  69 + <min>-360</min>
  70 + <max>360</max>
  71 + <pos>608,532</pos>
  72 + <size>56,27</size>
  73 + <handler function="OnSpinCtrlOrientationChange" entry="EVT_SPINCTRL" />
  74 + </object>
  75 + <object class="wxTimer" name="ID_TIMER1" variable="Timer1" member="yes">
  76 + <interval>100</interval>
  77 + <handler function="OnTimer1Trigger" entry="EVT_TIMER" />
  78 + </object>
62 79 </object>
63 80 </wxsmith>
2  VisualCortex/VisualCortex.depend
@@ -186,7 +186,7 @@
186 186 "VisCortexTimer.h"
187 187 "StateSetting.h"
188 188
189   -1333835826 source:/home/ammar/Documents/Programming/RoboVision/VisualCortex/VisualCortex.c
  189 +1333840397 source:/home/ammar/Documents/Programming/RoboVision/VisualCortex/VisualCortex.c
190 190 "VisualCortex.h"
191 191 "VisionMemory.h"
192 192 "Precalculations.h"
58 VisualCortex/VisualCortex.layout
@@ -2,19 +2,19 @@
2 2 <CodeBlocks_layout_file>
3 3 <ActiveTarget name="Release" />
4 4 <File name="CameraPose.c" open="1" top="0" tabpos="44">
5   - <Cursor position="918" topLine="114" />
  5 + <Cursor position="918" topLine="0" />
6 6 </File>
7 7 <File name="CameraPose.h" open="1" top="0" tabpos="43">
8 8 <Cursor position="862" topLine="0" />
9 9 </File>
10 10 <File name="DisparityDepthMap.c" open="1" top="0" tabpos="7">
11   - <Cursor position="2909" topLine="95" />
  11 + <Cursor position="31354" topLine="682" />
12 12 </File>
13 13 <File name="DisparityDepthMap.h" open="1" top="0" tabpos="8">
14 14 <Cursor position="89" topLine="0" />
15 15 </File>
16 16 <File name="DisparityDepthMap_Heuristics.c" open="1" top="0" tabpos="26">
17   - <Cursor position="15298" topLine="415" />
  17 + <Cursor position="4507" topLine="120" />
18 18 </File>
19 19 <File name="DisparityDepthMap_Heuristics.h" open="1" top="0" tabpos="34">
20 20 <Cursor position="1348" topLine="0" />
@@ -26,67 +26,67 @@
26 26 <Cursor position="209" topLine="0" />
27 27 </File>
28 28 <File name="FeatureExtraction.c" open="1" top="0" tabpos="14">
29   - <Cursor position="5302" topLine="0" />
  29 + <Cursor position="4247" topLine="149" />
30 30 </File>
31 31 <File name="FeatureExtraction.h" open="1" top="0" tabpos="15">
32 32 <Cursor position="162" topLine="0" />
33 33 </File>
34 34 <File name="FeatureLists.c" open="1" top="0" tabpos="38">
35   - <Cursor position="8403" topLine="0" />
  35 + <Cursor position="8403" topLine="180" />
36 36 </File>
37 37 <File name="FeatureLists.h" open="1" top="0" tabpos="30">
38 38 <Cursor position="647" topLine="0" />
39 39 </File>
40 40 <File name="FeatureTracking.c" open="1" top="0" tabpos="20">
41   - <Cursor position="288" topLine="0" />
  41 + <Cursor position="15232" topLine="358" />
42 42 </File>
43 43 <File name="FeatureTracking.h" open="1" top="0" tabpos="29">
44 44 <Cursor position="571" topLine="0" />
45 45 </File>
46 46 <File name="IntegralImageConversion.c" open="1" top="0" tabpos="21">
47   - <Cursor position="9868" topLine="306" />
  47 + <Cursor position="15090" topLine="378" />
48 48 </File>
49 49 <File name="IntegralImageConversion.h" open="1" top="0" tabpos="22">
50   - <Cursor position="850" topLine="0" />
  50 + <Cursor position="1084" topLine="0" />
51 51 </File>
52 52 <File name="LinearAlgebra.c" open="1" top="0" tabpos="25">
53   - <Cursor position="11545" topLine="351" />
  53 + <Cursor position="11545" topLine="218" />
54 54 </File>
55 55 <File name="LinearAlgebra.h" open="1" top="0" tabpos="31">
56 56 <Cursor position="261" topLine="0" />
57 57 </File>
58 58 <File name="Matrix.c" open="1" top="0" tabpos="45">
59   - <Cursor position="614" topLine="147" />
  59 + <Cursor position="614" topLine="0" />
60 60 </File>
61 61 <File name="Matrix.h" open="1" top="0" tabpos="46">
62 62 <Cursor position="180" topLine="0" />
63 63 </File>
64 64 <File name="MovementRegistration.c" open="1" top="0" tabpos="9">
65   - <Cursor position="1262" topLine="0" />
  65 + <Cursor position="3346" topLine="49" />
66 66 </File>
67 67 <File name="MovementRegistration.h" open="1" top="0" tabpos="10">
68 68 <Cursor position="633" topLine="0" />
69 69 </File>
70 70 <File name="PatchComparison.c" open="1" top="0" tabpos="32">
71   - <Cursor position="3843" topLine="63" />
  71 + <Cursor position="3843" topLine="39" />
72 72 </File>
73 73 <File name="PatchComparison.h" open="1" top="0" tabpos="33">
74 74 <Cursor position="133" topLine="0" />
75 75 </File>
76 76 <File name="PatternRecognition.c" open="1" top="0" tabpos="16">
77   - <Cursor position="6503" topLine="224" />
  77 + <Cursor position="6503" topLine="165" />
78 78 </File>
79 79 <File name="PatternRecognition.h" open="1" top="0" tabpos="17">
80 80 <Cursor position="299" topLine="0" />
81 81 </File>
82 82 <File name="Precalculations.c" open="1" top="0" tabpos="11">
83   - <Cursor position="817" topLine="2" />
  83 + <Cursor position="817" topLine="0" />
84 84 </File>
85 85 <File name="Precalculations.h" open="1" top="0" tabpos="35">
86 86 <Cursor position="350" topLine="0" />
87 87 </File>
88 88 <File name="StateSetting.c" open="1" top="0" tabpos="18">
89   - <Cursor position="3673" topLine="89" />
  89 + <Cursor position="3673" topLine="81" />
90 90 </File>
91 91 <File name="StateSetting.h" open="1" top="0" tabpos="19">
92 92 <Cursor position="141" topLine="0" />
@@ -98,52 +98,52 @@
98 98 <Cursor position="386" topLine="0" />
99 99 </File>
100 100 <File name="VideoInputAdapter.c" open="1" top="0" tabpos="36">
101   - <Cursor position="8936" topLine="236" />
  101 + <Cursor position="2990" topLine="85" />
102 102 </File>
103 103 <File name="VideoInputAdapter.h" open="1" top="0" tabpos="37">
104 104 <Cursor position="409" topLine="0" />
105 105 </File>
106 106 <File name="VisCortexConvolutionFilters.c" open="1" top="0" tabpos="27">
107   - <Cursor position="395" topLine="0" />
  107 + <Cursor position="5447" topLine="37" />
108 108 </File>
109 109 <File name="VisCortexConvolutionFilters.h" open="1" top="0" tabpos="28">
110   - <Cursor position="333" topLine="0" />
  110 + <Cursor position="122" topLine="0" />
111 111 </File>
112   - <File name="VisCortexFilters.c" open="1" top="1" tabpos="3">
113   - <Cursor position="6097" topLine="168" />
  112 + <File name="VisCortexFilters.c" open="1" top="0" tabpos="3">
  113 + <Cursor position="20106" topLine="652" />
114 114 </File>
115 115 <File name="VisCortexFilters.h" open="1" top="0" tabpos="4">
116   - <Cursor position="632" topLine="0" />
  116 + <Cursor position="698" topLine="0" />
117 117 </File>
118 118 <File name="VisCortexHeuristics.c" open="1" top="0" tabpos="24">
119   - <Cursor position="1626" topLine="0" />
  119 + <Cursor position="1326" topLine="33" />
120 120 </File>
121 121 <File name="VisCortexHeuristics.h" open="1" top="0" tabpos="23">
122   - <Cursor position="293" topLine="0" />
  122 + <Cursor position="324" topLine="0" />
123 123 </File>
124 124 <File name="VisCortexOptimizedConvolutionFilters.c" open="1" top="0" tabpos="39">
125 125 <Cursor position="1378" topLine="0" />
126 126 </File>
127 127 <File name="VisCortexOptimizedConvolutionFilters.h" open="1" top="0" tabpos="40">
128   - <Cursor position="243" topLine="0" />
  128 + <Cursor position="138" topLine="0" />
129 129 </File>
130 130 <File name="VisCortexTimer.c" open="1" top="0" tabpos="41">
131   - <Cursor position="1162" topLine="20" />
  131 + <Cursor position="1162" topLine="4" />
132 132 </File>
133 133 <File name="VisCortexTimer.h" open="1" top="0" tabpos="42">
134 134 <Cursor position="693" topLine="0" />
135 135 </File>
136 136 <File name="VisionMemory.c" open="1" top="0" tabpos="5">
137   - <Cursor position="12198" topLine="265" />
  137 + <Cursor position="25520" topLine="630" />
138 138 </File>
139 139 <File name="VisionMemory.h" open="1" top="0" tabpos="6">
140   - <Cursor position="1303" topLine="45" />
  140 + <Cursor position="4306" topLine="127" />
141 141 </File>
142 142 <File name="VisualCortex.c" open="1" top="0" tabpos="1">
143   - <Cursor position="8315" topLine="823" />
  143 + <Cursor position="25869" topLine="617" />
144 144 </File>
145 145 <File name="VisualCortex.h" open="1" top="0" tabpos="2">
146   - <Cursor position="1221" topLine="45" />
  146 + <Cursor position="1221" topLine="19" />
147 147 </File>
148 148 <File name="version.h" open="1" top="0" tabpos="49">
149 149 <Cursor position="0" topLine="0" />
BIN  WorldMapping/MasterWorld/libMasterWorld.a
Binary file not shown
4 WorldMapping/MasterpathPlanning/MasterpathPlanning.layout
@@ -8,7 +8,7 @@
8 8 <Cursor position="405" topLine="0" />
9 9 </File>
10 10 <File name="MasterpathPlanning.h" open="1" top="0" tabpos="2">
11   - <Cursor position="2334" topLine="94" />
  11 + <Cursor position="1568" topLine="67" />
12 12 </File>
13 13 <File name="NormalizePath.c" open="1" top="0" tabpos="7">
14 14 <Cursor position="8509" topLine="275" />
@@ -35,6 +35,6 @@
35 35 <Cursor position="0" topLine="0" />
36 36 </File>
37 37 <File name="main.c" open="1" top="0" tabpos="1">
38   - <Cursor position="319" topLine="348" />
  38 + <Cursor position="7074" topLine="308" />
39 39 </File>
40 40 </CodeBlocks_layout_file>
BIN  WorldMapping/MasterpathPlanning/libMasterpathPlanning.a
Binary file not shown

0 comments on commit ec695ba

Please sign in to comment.
Something went wrong with that request. Please try again.