Computer-aided design (CAD) gave engineers the power to design models virtually without needing to hand draw blueprints or test out multiple 3D printed physical models, saving time and space. But there's still room to grow with other technologies.
Onshape is revolutionizing the CAD industry as the first cloud-based 3D CAD modeling program that allows real-time collaboration throughout the design process. Looking to the future, it is likely that augmented reality is the next frontier — and the next breakthrough for the industry. Augmented reality will allow for a CAD developer to display any given 3D model in the real world, as if the model is physically there through the lens of the device.
Over the summer as an Onshape Mobile Developer intern, specializing in Android development, I was most interested in improving the cloud-native platform’s AR capabilities. I knew I wanted to be part of this movement to create game-changing technology for the industry. And this was the perfect opportunity for me to help build a prototype that integrates AR into the Onshape Android app — all before I began my studies at Cornell University.
Augmented Reality Integration with CAD
Why do we need augmented reality in CAD software?
If you were designing the interior of a robot, instead of visualizing various possible designs in your head, you would see the models in the physical environment. This is the closest we can get to 3D printing a physical model and test out a design without needing the materials or time to do so, making the design process more efficient and cost-effective.
Often, it is hard to picture how a design would look once it’s in the real world. Let’s say we were using Onshape to design a piece of furniture for a client. With AR, one can design the piece of furniture and immediately show how it fits in the environment. Or a company’s client could see how a design would look in the physical world and be able to provide feedback on the design.
These are just some reasons for CAD systems to become compatible with AR solutions. So, during my internship I focused on doing just that with Onshape.
I began by exploring ARCore, a software development kit created by Google and used for many Android apps that include augmented reality. You can think of it as a set of tools used to get information about the camera’s movements (i.e. the relative translation and rotation) and then map that to the model’s movement.
AR mode allows you to see Onshape models in the real world.
For example, if you were to move the camera to the left, ARCore detects that movement and moves the model to the right. Conversely, a movement of the camera to the right would make the model move to the left. This rule applies to any translation or rotation of the camera. Every bit of movement of the camera corresponds to a change in the model’s position in order to create the AR effect.
The prototype feature is activated by a button that turns on AR mode, rendering the camera in the background and placing the model into 3D space. You can then walk around the model with the camera as it is anchored in place. Furthermore, the integration allows the user to edit the model outside of AR mode, and then toggle on the AR mode to see the changes instantaneously, without having to republish the model or compile it into an object file to be rendered separately.
The Onshape team is looking into adding the following features in the future:
Markup and design reviews in AR mode. With this capability, one can annotate a model while it is in 3D space in the real world.
Split view between the regular Onshape mode and AR mode. That way, one can make changes to the model in the regular Onshape app, but also have an augmented reality live display available for them to reference while designing.
Aligning/snapping the model to real world planes.
Editing and collaboration features available in AR mode.
A Penchant for Coding
Before diving into AR, I had dabbled with computer programming languages for about a decade.
I began coding when I was 7 years old. My father, who is a software engineer, showed me the basics of HTML and Java. I found it exciting to be able to print a few words in a console and display images and text on a website with only a few lines of code.
In the following years, I began getting serious with my studies in the summer before eighth grade. I took courses on object-oriented programming, data structures and advanced algorithms at KTBYTE Computer Science Academy, which is based in Lexington, Massachusetts..
The defining moment that made me realize my passion for computer science was when I got a job as a junior instructor at KTBYTE before my junior year at Acton-Boxborough Regional High School, in Acton, Massachusetts.
By teaching and explaining the concepts I had learned to others allowed me to interact with the material in a way I had never before. It solidified my knowledge of these concepts, and immensely improved my public speaking and presentation skills.
Fun fact: Andrew Chen can solve a Rubik’s Cube in 8 seconds.
It was also around this time that I picked up small software development projects, such as creating an Android app that trains Rubik’s Cube solvers to memorize and execute algorithms faster. I also used Unity C# to develop a computer game, an Indie 3D Platformer called Ryse.
I realized I wanted to further explore software development after getting accepted into college during my senior year of high school. Now as a freshman at Cornell University, I am pursuing a B.S. in computer science from the College of Engineering.
Embracing Game-Changing Tech at Onshape
I came to know Onshape through a friend in the community as I was planning for college. I was hooked after learning about Onshape’s work with creating a cloud-based CAD system with real-time collaboration. Onshape’s mission and its parent company’s commitment to “creating digital solutions for real-world business challenges” are what inspired me to apply for a chance to spend my summer working here.
I received the opportunity to interview, and was pleasantly surprised to be accepted. Now I was able to test the skills I had learned throughout high school. This time it was my ticket to begin a new experience.
My internship this summer taught me a lot of technical skills, and about Onshape and the CAD industry. Onshape embraces change, which is the only way it will be able to expand and create new cutting-edge technology. In this case, the AR prototype could be game-changing for the future of CAD, by integrating augmented reality directly into the Onshape app. Understanding this broader impact and being a part of it has helped me jumpstart my career.
I entered this field to make an impact on the world, and Onshape, with its commitment to bettering the future of the CAD industry, gave me the tools to work toward that. The company fosters an environment of innovation and change, and encourages everyone — including its interns — to work and live by that message.