

Day
01
pyRevit
Challenge
⬤
⬤
⬤
⬤
⬤
⬤
⬤
⬤
⬤
⬤
⬤
⬤
⬤
⬤
⬤
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
21-Day pyRevit Challenge
Mon
Tue
Wed
Thr
Fri
Sat
Sun
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Tool Of The Day:
"The Warnings Snitch"
Today we're looking into Revit warnings so we can solve them faster and more efficiently. Ready to jump in?
You're About To Learn:
>>>
How To Get Warnings
>>>
How to Read Warning Info
>>>
How to use pyRevit Forms
>>>
How to use pyRevit Linkify
>>>
How to Modify User Selection

Let's Create "The Warnings Snitch" Using
P.R.O.C.E.S.S. Method
The 7-Step Framework To Guide Your Development Process.
PLAN
Warnings Issue in Revit…
If you ever had to solve warnings in Revit, then you know how bad it is…
Autodesk gave us a menu where we can see a list of warnings but can't even select anything…
Very inefficient. We deserve better.
Let's create a custom tool that will list all elements with warnings and give us better control to select elements.
The goal is to locate and select warning elements faster so we can focus on solving them instead of playing hide-seek.
It might save 10s each time, but it will accumulate to hours in the long run and reduce a lot of frustration.
Let's build it.
RESEARCH
Here's some extra help
Based on research:
People who study in groups always perform significantly better on critical-thinking tasks than those studying alone.
Therefore, you'll be part of a LinkedIn group made only for challenge participants. You can make friends, share your progress, share your awesome tools and keep each other accountable.
>>>
Learn Together
Share With Each Other
Keep Each Accountable
Documentation
Get Warnings - Document.GetWarnings
Code Snippets
1.How To Get All Warnings
2.How To Read Warnings
Examples on GitHub
a
b
c
YouTube Tutorials
a
b
c
P.S.
You don't have to read and watch everything in research.
OUTLINE

Get Warnings
Get all warnings in the project.
Sort By Warning Type
Iterate over warnings and use its warning description to sort similar warnings in a dictionary.
Select Warning Type From List
Create a simple UI pyRevit form so user can filter warnings that are currently interested in.
Iterative Report
Create a simple interactive report so user can select elements with warnings.
Select Warning Elements
Modify user selection to desired elements.
CODE
Remember: your goal is to create proof of concept as fast as possible.
Don't try to make it perfect. Skip steps if necessary. Just make it work.
Let's create a simplified version without any UI forms.
We just want to:
Get all warnings
Iterate over them (for-loop)
Read their information
Create interactive button (linkify)
The goal is to verify that
a) We can do it
b) It can be useful
CODE (Fast-n-Dirty Style)
EDIT
Only once you have a proof-of-concept you can focus on
refactoring your code to complete all steps and make it
more structured, optimized and easier to read.
We know that we can get to the end so we can take a step back and rewrite the whole tool to include selection.
…
Headline
Headline
STRESS-TEST
Private LinkedIn Group
Based on research:
People who study in groups always perform significantly better on critical-thinking tasks than those studying alone.
Therefore, you'll be part of a LinkedIn group made only for challenge participants. You can make friends, share your progress, share your awesome tools and keep each other accountable.
>>>
Learn Together
Share With Each Other
Keep Each Accountable
Case #1 - Break UI Form
Here is some text about today's challenge…
Case #2 - Try Other Revit versions
Here is some text about today's challenge…
Case #3 - Try Other Revit versions
Here is some text about today's challenge…

