Blog Post 4 – Beginning the Project

Since my last blog post, our team has completed the project plan and began building our individual contributions to the project. Personally, I am responsible for accessing device permissions, camera access, location data, and position data. All of this information will need to be gathered persistently in order to make the AR functionality of our application run smoothly.

Location

So far I’ve spent most of my time writing code to gather the device’s location. I thought the simplest way to do this, and make testing the easiest would be to make a simple and mobile application the displayed the current location of the device when ran. I chose to write the application with Flutter and Dart, as that is what the entirety of our larger application will be written in. I was able to import the Dart geolocator package that appears to be a common tool used when dealing with location for Android. After reading some documentation and examples, I was able to produce a simple application with a singular action, that updates and displays the user’s location (to within 100 meters) when they click the button. The application seems to run as expected, I do not foresee any problems that will arise with integration at this particular time. One question I think the team and I will need to answer regarding getting the location, is when the location data should be gathered, and should it be gathered persistently (other possibilities include: every time the AR screen is opened, every time the larger application is opened).

Camera

After spending some time with the location, I made some attempts at accessing the camera. As it turns out, finding different ways to access the camera is not all that difficult at all. In fact, the example ‘Hello World’ application that is provided in the documentation for ARCore (the AR library that we are going to use for our AR functionality), access the camera in the exact way we need it to. Assuming that this will work for us, I believe my next step regarding the camera is to familiarize myself more with the ARCore code and communicate with the team member that is taking on rendering our application’s AR, to see if there are any modifications that need to be made as to how the camera is being used with the ‘Hello World’ app.

Positioning

Positioning is the most complicated of the sensor tasks that I need to deal with, and I’ve decided to save it for after I make good progress on camera access and location gathering. Positioning is worrisome to me because I’ve never dealt with gyroscopes or accelerometers. Without having any experience in this arena, I am fearful that the data I will need to collect will be very complicated. However, there is also a chance that a lot of this information will already be codded into the ‘Hello World’ AR app we are starting the build from. If that’s the case, then like the camera, my next step would be to figure out if and then how the functionality would need to be modified.

Leave a comment

Your email address will not be published. Required fields are marked *