CategorizeRevitWalls. A definition and sample Revit file. This definition illustrates how Topologic can be used to correctly assign Revit Wall Types based on whether they are interior or exterior. (ZIP)
DynaClip. A port of the Clipper library to Dynamo. (ZIP)
Bin Packing. These set of custom nodes and example definitions 3D packs items in bins and converts them to Cells. (ZIP)
Angle Between Two Edges. This custom node returns the angle, in degrees, between the two input Edges. (ZIP)
Are Vertices co-planar. This custom node returns True if the input list of Vertices are co-planar within a tolerance, otherwise it returns False. (ZIP)
Wire Cycles. This custom node returns the closed cycles within the input Wire. Because this method can be exponential and is NP Complete, it can be limited by the input maximum number of edges. (ZIP)
Topology By Faces. These two custom nodes return the highest possible order Topology from the input list of Faces. Use TopologyByFaces which internally calls TopologyBF (ZIP)
Vertex Control. This custom node returns the control values of the input Graph Vertices (see https://en.wikipedia.org/wiki/Space_syntax). A custom definition, an example workflow, and a research paper explaining the concept are included. (ZIP)
Wire Dual Graph. This custom node creates a Wire or a list of Edges that represent the dual graph of the input Wire. (ZIP)
Transfer Dictionaries. This custom node transfers dictionaries from the Cells of the input Cluster to the Cells of the input Topology. The values of the input Key are merged correctly and separated by a comma. (ZIP)
Cell Divide. This custom node divides the input Cell according to the input programme and returns a CellComplex. (ZIP)
Cell Shared Edge Cells. This custom node returns a list of Cells that share and Edge with the input Cell. Dynamo: (DYF). Grasshopper: (ZIP)
Wire Faces. This custom node returns a list of Faces derived from the closed circuits found in the input Wire. (DYF)
Wire Remove Non-manifold Edges. This custom node removes all the non-manifold Edges found in the input Wire. (DYF)
DynaSpace/Topologic. This example workflow illustrates how to integrate DynaSpace and Topologic. (ZIP)
Minimum Spanning Tree. This custom node, based on a found python code, outputs a wire representing the Minimum Spanning Tree of the input graph. (ZIP)
Diversion Workflow. This example workflow diverts a straight line around an obstacle. This experiment diverts a straight line around an arbitrary obstacle (concave or convex polygon). The path always diverts in 90 degree increments. The path avoids the bounding box of the polygon as oriented perpendicular to the path. The path chooses to go left or right based on the shortest path. (DYN)
TestFit2Topologic Workflow. All files needed to illustrate a TestFit to Topologic workflow. This workflow takes as input a TestFit RSD file and outputs a Cluster of Cells categorised by their TestFit type. (ZIP)
CellComplex Utilities. A collection of Dynamo custom nodes to derive specific Faces from a CellComplex. These include: CellComplexBy3DArray.dyf CellComplexExternalFaces.dyf and CellComplexInternalFaces.dyf. A demo definition file (CellComplexTower.dyn) is also included. (ZIP)
Topology Display. This custom node makes it far easier to display any topology with custom colors, transparency and with or without edges. (DYF)
Graph Utilities. A collection of Dynamo custom nodes to compute some Graph metrics. These include: GraphAdjacencyMatrix, GraphIsConnected, GraphIsRegular, GraphIsBipartite. (ZIP)
Graph Shortcuts. This custom node and sample definition illustrate how to create optimized shortest paths through a graph by creating shortcuts around a certain set of vertices with a specified custom dictionary value. (DYN, DYF)
Stanford Bunny. This definition illustrates how to convert a mesh into a Topologic entity. For this definition, you need the MeshToolkit package from the Package Manager and the following Stanford Bunny OBJ file. (OBJ) (DYN)
Optimising Location of Atrium. This definition illustrates how to use Dual Graph and topology to opitmize the number of connected Cells and the remnant exterior wall area of an atrium Cell that is imposed on a CellComplex. This definition is meant to be used with Autodesk's Project Refinery or other optimisation engines. (DYN)
Voroni 3D. This definition illustrates how to slice a Cuboid into a set of Voronoi Cells based on a list of points. (DYN)
Shortest Paths. This definition illustrates how to use the Graph class to find shortest paths in a CellComplex. (DYN)
Shortest Paths By Key. This definition illustrates how to use the Graph class to find shortest paths in a CellComplex by Key. (DYN)
Spread/Growth. This definition and custom node illustrate how to use the Graph class to simulate spread/growth within a CellComplex. (ZIP)
Content and Dictionary. This definition illustrates how to use the Content/Context system and Dictionary to store custom attributes in topologies. (DYN)
Topological Queries. This definition illustrates how to determine attributes based on topologic queries of custom dictionaries. (DYN)
Boolean By Dictionary. This definition illustrates how to perform a Boolean operation based on the Topology type as encoded in its custom dictionary. (DYN)
Webinar: Introduction to Topologic - 25 February 2019 (LINK)
As the Topologic slogan says: Build, Connect, Analyse. With Topologic, you can think about your building, not only as an assembly of physical components, but as a logical, spatial, and hierarchical configuration with rich and robust topological connections among its sub-parts. Topologic not only builds topologies that are both manifold and non-manifold, it also connects them in very robust ways. Once you have built and connected a robust topology, you can analyse it using your chosen simulation method. We have included TopologicEnergy to illustrate how you can use EnergyPlus and OpenStudio to analyse the thermal performance of a building modelled in Topologic.
Is Topologic limited to straight edges and planar faces?
Not at all. All Topologic entities can be easily converted to the host application's entities (i.e. Dynamo geometries) through a simple node/method called Topology.Geometry. However, be aware that Topologic is not designed to be a bi-directional entity converter. For example, a Dynamo Helix can be converted to a Topologic Edge, but if that Edge is converted immediately back to Dynamo, it will become a continuous curve of an identical geometry, but not a "Helix" geometry type.
We are a group of busy researchers with daytime jobs. That said, we welcome any enquiries regarding offering training and workshops on Topologic especially for medium to large firms that are looking to use Topologic on a "live project". We are planning to conduct occasional training webinars. To be informed of these events, follow us on twitter (@NonManifold). Finally, we have a set of tutorials available below on this page for self-paced learning.
Yes. Topologic is free to use on commercial and non-commercial projects. If you wish to distribute your software linked to Topologic, please read carefully the licensing terms on the software webpage. Contact us for any clarification.
Topologic is the result of a research project funded by the Leverhulme Trust, led by Dr. Wassim Jabi in collaboration with Prof. Robert Aish, Dr. Simon Lannon, Dr. Aikaterini Chatzivasileiadi, and Dr. Nicholas Mario Wardhana. Nicholas holds a Ph.D. in Computer Science and is the software developer on the project. The software development work is being conducted at Cardiff University in collaboration with UCL. Robert Aish had a long track record of developing parametric design methods and tools and specifically the application of non-manifold topology as a lightweight form of architectural modelling, publishing a paper at the AAG conference in 2013. In parallel, Dr. Wassim Jabi, Reader at the Welsh School of Architecture, Cardiff University, had been researching parametric design thinking and the role of building performance simulation in the early design stages. TopologicEnergy code is based on the DSOS code developed by Dr. Wassim Jabi.
No, we do not. Topologic does not have any instrumentation in it. It does NOT send any data to the Topologic team. However, please be aware that Dynamo itself sends data to the Dynamo team: "Dynamo contains an instrumentation system that anonymously reports usage data to the Dynamo team. This data will be used to enhance the usability of the product. Aggregated summaries of the data will be shared back with the Dynamo community." (from https://github.com/DynamoDS/Dynamo/blob/master/README.md)
Why is Dynamo able to load TopologicEnergy, but fails to load Topologic?
This may happen because TopologicEnergy internally uses Topologic. Therefore, Dynamo may have already recognised the code inside Topologic, and is rejecting another attempt to load the code. To solve this issue, please remove TopologicEnergy from Dynamo by selecting Settings -> Manage Node and Package Paths. Select the path to TopologicEnergy.dll, press the minus (-) button, press Accept Changes, and then close Dynamo. After reopening Dynamo, please load Topologic first before loading TopologicEnergy.
Why is Dynamo unable to load Topologic and TopologicEnergy (or crashes soon after)?
This could happen due to two reasons. On some occasions, Dynamo Studio fails to load Topologic DLLs. When Dynamo Studio succeeds to load Topologic, it may crash due to incompatibility issues. Please note that, at the moment, Topologic is only supported for Dynamo Sandbox (i.e. Dynamo for Revit) v. 2.0.1 or newer.
A second possibility is the existence of .NET code that Dynamo does not recognise. This should occur only on the development side and not go through to the release versions of the library. If you are using Dynamo Sandbox v. 2.0.1 or newer and this happens, it may mean that we may have a bug in Topologic and therefore please contact us at email@example.com.
Why is Dynamo unable to display any geometry or even the home grid?
This may have to do with your graphics card configuration. Please ensure that Dynamo is running with graphics hardware acceleration. For example, if you are using an NVIDIA graphics card, in the NVIDIA control panel, go to 3D settings -> Manage 3D Settings, and select the Program Settings tab. Please configure this option as follows.
Select a program to customise:set this to the path to your Dynamo executable file, e.g. C:\Program Files\Dynamo\Dynamo Core\2\DynamoSandbox.exe
Select the preferred graphics processor for this program: set this to High-performance NVIDIA processor
Why is Dynamo crashing when running a definition that uses Topologic Nodes?
No one is perfect and we may have a bug in our code. However, Dynamo also has some bugs and we have noticed in some cases that the crash is due to Dynamo code and is not 'caught' with an exception. Therefore, you may experience Dynamo crashing without the usual warning. Always set your definitions to run in Manual mode and save your definitions often especially before you run them. We continue to test our software, investigate all bugs and report them to our team and the Dynamo team as appropriate. If you experience a bug or a crash, please create the simplest definition that replicates this bug and submit it to us either on the website forum or directly to firstname.lastname@example.org.
To de-install Topologic, first open Dynamo and go to Settings then Manage Nodes and Package Paths... From there select the Topologic.dll and press the minus (-) sign to delete it. Do the same for TopologicEnergy.dll. Quit Dynamo. Then in the File Explorer navigate to the installation folder of Topologic (this is usually C:\Program Files\Topologic) and delete the whole folder.