Dynamo Development - London Hackathon 2019
There are multiple ways to improve Dynamo creating your custom functionality, with varying levels of difficulty. Learn the basic of custom development and more advance improvement using c#.
- Learn about the different types of custom Dynamo nodes.
- Lear how to set up the Visual Studio environment for development and debugging with Dynamo
- Learn how to develop, test and deploy a Zero Touch node
- Learn how to implement a custom UI
- Learn how to develop, test and deploy explicit custom Dynamo nodes
- Lear how to publish your nodes using the package manager
Table of Contents
Get a high-level understanding of the different approaches to follow in order to customize and create new features on Dynamo.
Section to briefly introduce and/or refresh what Custom Nested Nodes are and their benefits/disadvantages.
Python is one of the best first options to use text-base programming within the Dynamo environment.
Learn to develop custom nodes in Dynamo using ZeroTouch.
Learn to develop nodes with custom UI in Dynamo using Explicit nodes.
Power-up your development by extending Dynamo's capabilities by adding your custom logic and UI on top of Dynamo.
Tools we’ll use
Visual Studio Templates
One of the most daunting process if you are not familiar with Visual Studio or C#, is how to setup your environment to seamlessly develop for Dynamo. The ZeroTouch Nodes > Setup chapter goes in detail on how to configure Visual Studio an it is a highly recommended reading.
Although is important to understand how and why Dynamo requires a particular setup for Visual Studio, it would be nuts to do it every time you want ot create a new project or even just a quick test. That's where the Dynamo Development Starter Kit can come in handy. This project is a Visual Studio Extension that adds some Dynamo Project Templates to your environment, so setting a new Dynamo project is just a matter of a couple of clicks to have it up an running.
- C# Interfaces: https://www.tutorialspoint.com/csharp/csharp_interfaces.htm
- C# Classes : https://www.tutorialspoint.com/csharp/csharp_classes.htm
- C# Namespaces: https://www.tutorialspoint.com/csharp/csharp_namespaces.htm
- WPF Tutorial: https://www.tutorialspoint.com//wpf/index.htm
Dynamo & Revit API
- Revit API online documentation
- Dynamo Primer: http://dynamoprimer.com/en/09_Custom-Nodes/9-1_Introduction.html
- How to Create Your Own Nodes: https://github.com/DynamoDS/Dynamo/wiki/How-To-Create-Your-Own-Nodes
- Zero Touch Plugin Development: https://github.com/DynamoDS/Dynamo/wiki/Zero-Touch-Plugin-Development
- Adding Icons for a Zero Touch Assembly: https://github.com/DynamoDS/Dynamo/wiki/Add-Icons-for-a-Zero-Touch-Assembly
It also recaps some of the contents taught during the Dynamo Developer Workshop on AU Las Vegas 2018.