This is an assignment that focuses on investigation on the going of a C++ SFML program. The assignment also provides hints that are helpful.,Investigation on the going of a C++ SFML program,Your own choice of language:,Youâ€™ve got two options:,1.Â Â Â Firstly, use the solution extracted from the zip file and run as normal in Visual Studio,., 2.Â Â Â Then, use the executable (make sure the AriaDebugVC14.dll is in the same folder). However, you may get an warning about the program trying to access the network â€“ allow this â€“ the program hasnâ€™t got any certificates etc, show windows will throw a warning.,For both, make sure MobileSim is open and a map is loaded first.,Whats going on with this program?,The program is barebones, it contains a small webserver library (Crow), a JSON library (rapidjson). Also, Boost (a set of C++ libraries similar to the STL, that makes this solution 8gb+). If you look at the main.cpp, youâ€™ll see Aria is set up as standard, a server is created, andÂ a request to â€˜http://127.0.0.1:18080/â€™ will serve a JSON string as the response body currently containing:,The absolute position of the robot in the map (donâ€™t use this unless you really have to), The relative position of the robot (robot odometry), The ,odometry data,, from week 4, All readings from the 16 sonar sensors,This might be all the data that youâ€™ll require., You can extend this program, if you need any more data from Aria. Take a look at the rapidjson section, it should all look self-explanatory., C++ SFML,Iâ€™ve uploaded the â€™64 bit SFML and Ariaâ€™, which will contain the general structure to create a real time GUI., Take a look online and the documentation of SFML to understand how to create objects. Also, update the movement based on what the robot is doing., You may be able to extend SFML into a separate class (like the robot actions) but creating the GUI in the main.cpp, and getting the data from â€˜robotâ€™ instead of â€˜myRobotâ€™ is still fine.,Some hints:,Â·Â Â Â Â Â Â Â Like most programming tasks, break the problem down into small chunks and think of how you would solve it initially, take a look at StackOverflow or any documentation. For example, if you know you need to get data from the webpage, you can use a module called â€˜urllib3â€™ then parse the response body (the data) using â€˜jsonâ€™ module to get the data into a array., Â·Â Â Â Â Additionally, think about how things would work procedurally, i.e get the data, parse the data, do scattergram, do line segments, do occupancy grid, update plots/graphics.,Â·Â Â Â Â Â Â Â If you get the single plot/image working first, you can easily extend it to real time. For those using Python I suggest you look at the matplotlib animation module that may help you., Â·Â Â Â Â Â Â Â You could also use the odometry data instead of the robots position, or compare the two to show the â€˜uncertaintiesâ€™ (if there are any) in the readings., Â·Â Â Â Â Â Â Â NOTE: you may NOT use any module/library that creates the occupancy grid, or the creates the line segments functionality for you. I know the modules that will help you do this and will be looking through your code.,Attachments,Click Here To Download,
Delivering a high-quality product at a reasonable price is not enough anymore.
That’s why we have developed 5 beneficial guarantees that will make your experience with our service enjoyable, easy, and safe.
You have to be 100% sure of the quality of your product to give a money-back guarantee. This describes us perfectly. Make sure that this guarantee is totally transparent.Read more
Each paper is composed from scratch, according to your instructions. It is then checked by our plagiarism-detection software. There is no gap where plagiarism could squeeze in.Read more
Thanks to our free revisions, there is no way for you to be unsatisfied. We will work on your paper until you are completely happy with the result.Read more
Your email is safe, as we store it according to international data protection rules. Your bank details are secure, as we use only reliable payment systems.Read more
By sending us your money, you buy the service we provide. Check out our terms and conditions if you prefer business talks to be laid out in official language.Read more