Dynamo for Revit: Python Scripting
3h 37mIntermediate2018-12-14
Authors

Jeremy Graham
Registered Architect
Course details
Can't find the Dynamo node you need? Python allows you to create powerful custom nodes that extend the functionality of Dynamo and solve your Revit modeling challenges in smarter, faster ways. This course introduces the Python programming language to designers who want to do more with Dynamo. First, learn the basics of Python, including data types, conditionals, and loops, while interacting directly with Dynamo Geometry library. Then find out how to extend the functionality with Dynamo with libraries such as the Revit API. In chapter four, you put your new skills to work. Instructor and BIM expert Jeremy Graham shows how to use Python and the Revit API to filter elements, access parameters, and create custom views.
Note: This course uses Dynamo 2.0.1 and Revit 2019. For best results, it helps to have the same versions of the software.
Learning objectives
Importing the Dynamo Geometry library
Python basics: variables, conditionals, operators, loops, and functions
Using and extending Python modules
Accessing the Revit API with Python
Revit and Dynamo conversions
Creating a collector in the Revit API
Getting Revit parameters with the Revit API
Adjusting elements with the Revit API
Creating views with the Revit API
Note: This course uses Dynamo 2.0.1 and Revit 2019. For best results, it helps to have the same versions of the software.
Learning objectives
Importing the Dynamo Geometry library
Python basics: variables, conditionals, operators, loops, and functions
Using and extending Python modules
Accessing the Revit API with Python
Revit and Dynamo conversions
Creating a collector in the Revit API
Getting Revit parameters with the Revit API
Adjusting elements with the Revit API
Creating views with the Revit API
Skills covered
DynamoComputational DesignRevitArchitectural VisualizationCivil EngineeringBIMPythonAutodesk3D ModelingVisualization and Real-TimeAECProduct and ManufacturingAnimation and IllustrationProgramming LanguagesOpen SourceSoftware DevelopmentDeep Dive (X:Y)
Concepts
0. Introduction
- 01 - Jumping into Python and Dynamo
- 02 - What you should know
- 03 - Exercise files
1. Dynamo and Python
- 04 - The Python node basics
- 05 - What is OOP
- 06 - Importing the Dynamo library
2. Python Basics
- 07 - Defining variables
- 08 - Numbers
- 09 - Strings
- 10 - Working with lists
- 11 - Making decisions with conditionals
- 12 - Control with operators
- 13 - Logical operators
- 14 - Looping with the for loop
- 15 - Looping with the while loop
- 16 - Break and continue
- 17 - Nested loops
- 18 - Dictionaries
- 19 - Try and except
- 20 - Defining functions
3. Working with Libraries
- 21 - Built-in Python modules
- 22 - Extending Python modules
- 23 - Saving our own module
- 24 - What is IronPython
- 25 - Accessing Revit nodes
- 26 - Importing the Revit API
- 27 - Working with the Revit API
- 28 - Revit conversions
- 29 - Dynamo conversions
- 30 - Navigating the Revit API
4. Revit API
- 31 - Collecting elements
- 32 - Creating a collector
- 33 - Getting Revit parameters
- 34 - Setting Revit parameters
- 35 - Creating line-driven elements
- 36 - Element locations
- 37 - Adjusting elements
- 38 - Creating a view
- 39 - View bounding boxes
- 40 - Revit API and IronPython types
Conclusion
- 41 - Next steps