Sandbox Topology is a set of tools for Grasshopper 0.9 that facilitate the topological analysis and filtering of line, polyline, mesh and brep networks.
On various occasions during a computational design process, low-level control over the sub-elements that make up the design geometry might become necessary as well as decision making based on the adjacency of faces, valency of nodes, or connectivity between points. Usage examples include design for fabrication, line and mesh networks for dynamic relaxation, path analysis, planarization of polygon networks, optimization, etc.
This is the first attempt to combine separate tools, which I have informally developed over the course of some 2-3 years alongside projects in academia and practice, and to release them into the Grasshopper ecosystem. While the development of custom digital tools that are specific to design projects has become a very common process, there isn't usually the time to collect, prepare, and release a "clean" version of such a developed tool. However, having encountered similar tasks of topological network analysis in different projects often enough, I do think that this time is the time...
Others, of course, have also addressed some of the issues and scenarios that are included here, such as Daniel Piker's Topologizer for line networks or David Rutten's Brep Topology component. However, topological network analysis being a common topic, I do think that it deserves an organized toolbox in the form of its very own Grasshopper addon.
The add-on consists of four groups of components that relate to the analysis of line, (closed) polyline, mesh, and brep networks. Each group contains components that perform the topological analysis and components for filtering based on the information obtained by the analysis. While Brep and Mesh analysis mostly utilize built-in Rhino Common functionality, Line and Polyline analysis rely on custom developed TopologicalPoint and PLine classes.
In the spirit of the Grasshopper community that thrives on knowledge sharing, I made the add-on open source (MIT license). The repository for the code development is publicly available for download and contribution on Github.
- In Grasshopper, choose File > Special Folders > Components folder. Save the gha file there.
- Right-click the file > Properties > make sure there is no "blocked" text
- Restart Rhino and Grasshopper
- Example files can be found here.
While I have tested this project, it is the first release and therefore might still contain bugs. Please use it "as is", it does not come with warranties. If you see room for improvement feel free to contact me or even consider contributing to the repository.
PS: The title image is from wikipedia (https://en.wikipedia.org/wiki/File:NetworkTopology-Star.png) and currently serves as a placeholder...