One of the ways that Onshapers like to have fun is to participate in friendly software programming contests. Every summer, we hold a Custom Feature Hackathon, where participants create a valuable (or at least creative) new Onshape feature using FeatureScript.
FeatureScript is a programming language created by Onshape for building and working with 3D parametric models. All the standard features in Onshape (such as Extrude, Fillet, and Helix) are implemented using FeatureScript, which is also publicly available to all users of Onshape. CAD users can now implement modeling functionality that is custom to their businesses.
The hackathon is timed to coincide with the arrival of Onshape’s flock of motivated and enthusiastic summer interns. These exceptionally talented interns are undergraduates with majors in Mechanical, Computer and Electrical Engineering. For many of them, this job is their first exposure to Onshape. Interns bring fresh perspectives and new ideas.
The annual event also gives us an opportunity to see how folks new to Onshape approach FeatureScript.
This year, the Onshape Custom Feature Hackathon had 5 entries:
- Automagic Pipe-Fitting Feature: Ethan Keller (API Engineer) implemented a feature that automatically determines the right pipe connector to use, based on a selection of pipes. It also displays errors if there are intersections between the standard connector and the pipes.
- House Design Feature Set: Kori Ryter (Principal Engineer) and Jon Sorrells (Mobile Team Lead) wrote a set of features to build a floor plan using a “furniture-first” design approach. The layout of the furniture and walkspaces, using “Furniture” features and “Walkspace” features comes first. Then, walls are placed around the furniture and walkspaces, using “Wall” features, to create the building shape and dimensions. This reverses the usual floor plan design process of starting with an exterior house shape and designing furniture layouts to fit the building. Kori is using these features to design a floor plan for the custom house she will be building soon (land prep has started!).
3. Custom Box Insert: Gabe Maayan (Intern, FeatureScript) built a feature that builds a standing container with custom inserts for board games. Gabe also 3D printed some of the designs.
4. 3-Way Profile Extrusion & Intersection: Simon Bass (Intern, Architecture Team) and Hernán Gallegos (Intern, Training Team) explored the idea of creating a 3D shape given three intersecting isometric profiles.
5. Minecraft Importer : David Charatan (Intern, Modeling Team) and Nick Wee (Intern, Enterprise Team) channeled their love for Minecraft and built a feature that could import shapes from Minecraft and model them in Onshape.
At the end of the hackathon, Onshapers voted for their favorite designs. The winners were Ethan’s Automagic Pipe-Fitting feature and Kori and Jon’s house design feature.
Of course, the medals were also designed with Onshape and 3D printed.
While this contest was meant to be fun, it also demonstrated the power of FeatureScript. Onshape users can create highly customized features for their company’s own specialized needs or to share with whomever they designate. And these features are first-class citizens just like the built-in features in Onshape – not tacked-on, limited-functionally macros as in other systems.
Interested in learning more about creating custom features in Onshape with FeatureScript? Click here.