First attempts to add cutouts to the interface
This week I continued my work with Wenzhong on adding finger joints as a option for creating output with Roco. We made some progress in figuring out how to create our own custom tabs as a method of adding the finger joints, however our current method required modifications in several parts of the output process for Roco. In the future, we intend to attempt to modify our finger joint tabs so that they can be added in the same manner as normal tabs.
Additionally this week, I worked on the problem of adding cutouts to the Roco web interface. This problem presents a challenge in multiple ways. Mainly, the interface was designed to handle geometries with faces, but cutouts do not have faces, and are rather cut edges. Additionally, the interface currently only allows you to make connections between edges, but adding cutout requires connections between face ports and mount ports. To solve this problem, I decided that it would be best to have cutouts (and in the future other decorations) added directly to faces, instead of having the user add them as a component and then make a connection. This makes more intuitive sense, and will prevent the user from having to perform uneccessary steps just to add cutouts.
So far, I have added the options to add cutouts directly to a face. This addition is reflected in the component, and shows up in the drawing. However, there are still issues with the 3D view, as the addition of holes in the face seems to break the triangulation method currently used to draw the faces. I will be attempting to fix this in the coming week.