Page 6 - UNL Senior Design Annual Report 2018-19
P. 6
Computer Science and Engineering
The team was tasked with implementing
a variety of measuring tools to aid in the verification, and saving of measurements
using augmented reality. The team delivered 3 tools: ruler, pitch, and the area tool. The ruler tool measures lines drawn between two user- selected points. The pitch tool is able to measure the degree of deviation from a horizontal plane. Finally, the area tool, is able to find the area measure of a user-drawn polygon.
Aside from feature parity between the iOS application and Android, the team was also
able to implement a number of development procedures—such as automated build testing —to ensure a working build was always remotely available. Automated unit testing was also put in place for certain methods of the application.
As rendering anything in Sceneform and 3D vectors in general was still relatively new to us, setting Sceneform up was the first challenge we had. We first used OpenGL to render any new objects in the 3D scene to get a grasp of how the tool should work, then, after consulting CompanyCam’s Dr. Dan for help, we then reverted back to using Sceneform to render objects as the interfaces and classes that came with it were much more useful with regards to the project.
The next tool that we worked on was the pitch tool that measures the degree of deviation from a horizontal plane. A major challenge was to create an entirely new CustomPlane class, as the basic functions in Google’s ARCore only identifies vertical planes and horizontal planes. So, the solution was to create a CustomPlane class to identify planes with varying degrees
of slant. Starting from Release 4, we tackled
the Area Measure tool once measurements
from the RulerTool were completed. This tool is tricky to implement as the structure behind the vertices of an area in Sceneform is very different from measuring the area of a polygon in 2D.
In Sceneform, vertices are nodes/anchors and the first node would serve as a parent to any subsequent new vertices added to the polygon which are child nodes to the parent node. Dr Dan provided guidance and some documentation for the algorithm behind measuring polygons.
Sponsor: CompanyCam Project: CompanyCam
6
The Team
Zack Blase
Luis Ramirez Brooke Lampe Sing Chew Jianzhi Lou Yuki Shiratori
Squad Lead and Development Manager Product Manager