/

/

11-dream-picker

/

/

11-dream-picker

Day

11

pyRevit

Challenge

Day

11

pyRevit

Challenge

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

21-Day pyRevit Challenge

Mon

Tue

Wed

Thr

Fri

Sat

Sun

Tool Of The Day:

"Dream Picker"

Watch Bonus Training:
- Follow pyRevit FastTrack Setup
- Watch P.R.O.C.E.S.S. Masterclass

Selecting the right elements is often half the problem solved and in Revit that can be a challenge…

So let's create a Dream Picker tool so you can select desired elements with your own rules.

Today We're Practicing:

>>>

pyRevit Selection✨

>>>

Revit API Selection✨

>>>

pyRvit WarningBar✨

>>>

Advanced ISelectionFilter✨

Let's Create

"Dream Picker"

Using 7-Step PROCESS

Let's Create

"Dream Picker"

Using 7-Step PROCESS

.

.

.

.

.

.

.

PLAN

Ready. Aim. SELECT!

Every Revit user is tired of smashing tab key multiple times for every selected element…

The Goal for Today:

Learn about Revit API/pyRevit Selection so you can create custom selection tools and know how to use this concept in all your future pyRevit tools.

.

.

.

.

.

.

.

RESEARCH

Coding CheatSheet

Here's everything you might need for today's challenge.

Coding Blocks

pyRevit Selection

Get Selected Elements

Pick Objects (Multiple)

Set Selection in Revit UI

pyrevit - WarningBar

Filter Elements (python logic)

Pick Object (Single)

PickPoint

Advanced: ISelectionFIlter

pyRevit Selection

Filter Elements (python logic)

Get Selected Elements

Pick Object (Single)

Pick Objects (Multiple)

PickPoint

Set Selection in Revit UI

Advanced: ISelectionFIlter

pyrevit - WarningBar

Revit API Docs
pyRevit Dev Docs
Extra:
Notes

🔸Today's Tool

The goal for today is to understand pyRevit/Revit API selection so you can apply it in your future tools.

.

.

.

.

.

.

.

RESEARCH

Coding CheatSheet

Here's everything you might need for today's challenge.

Coding Blocks

pyRevit Selection

Filter Elements (python logic)

Get Selected Elements

Pick Object (Single)

Pick Objects (Multiple)

PickPoint

Set Selection in Revit UI

Advanced: ISelectionFIlter

pyrevit - WarningBar

Revit API Docs
pyRevit Dev Docs
Extra:
Notes

🔸Today's Tool

The goal for today is to understand pyRevit/Revit API selection so you can apply it in your future tools.

.

.

.

.

.

.

.

OUTLINE

Step-by-Step Plan

Break down logic of the tool idea into smaller chunks so it's easier to brainstorm, find hidden steps and code.

1

Get Selected
Elements

card-background

5

Set New
Selection

card-background

2

Pick
Single Object

card-background

*

Optionally: pyRevit
WarningBar

card-background

3

Pick
Multiple Object

card-background

4

Filter Out
Elements

card-background

.

.

.

.

.

.

.

OUTLINE

Step-by-Step Plan

Break down logic of the tool idea into smaller chunks so it's easier to brainstorm, find hidden steps and code.

1

Get Selected
Elements

card-background

5

Set New
Selection

card-background

2

Pick
Single Object

card-background

*

Optionally: pyRevit
WarningBar

card-background

3

Pick
Multiple Object

card-background

4

Filter Out
Elements

card-background

NB!

TRY BUILDING
THIS TOOL YOURSELF
DON'T RUSH TO SOLUTION

Unless… You're a Beginner


According to GENERATION EFFECT

The Harder You Work, The Deeper It'll be Wired in Your Brain

NB!

TRY BUILDING
THIS TOOL YOURSELF
DON'T RUSH TO SOLUTION

Unless… You're a Beginner


According to GENERATION EFFECT

The Harder You Work, The Deeper
It'll be Wired in Your Brain

.

.

.

.

.

.

.

CODE

Code Quick-n-Dirty.

The Goal is to create a proof of concept. Don't try to make it perfect. Skip steps if necessary. Keep it ugly. Keep it slow. JUST. MAKE. IT. WORK…

Proof Of Concept

SCRIPT: PROOF OF CONCEPT

.

.

.

.

.

.

.

CODE

Code Quick-n-Dirty

The Goal is to create a proof of concept. Don't try to make it perfect. Skip steps if necessary. Keep it ugly. Keep it slow. JUST. MAKE. IT. WORK…

Proof Of Concept

SCRIPT: PROOF OF CONCEPT

.

.

.

.

.

.

.

EDIT

Refactor Everything

Once proof-of-concept works - we can focus on all steps to make everything more structured, optimized and easier to read.

REFACTOR CODE

REFACTORED CODE

.

.

.

.

.

.

.

EDIT

Refactor Everything

Once proof-of-concept works - we can focus on all steps to make everything more structured, optimized and easier to read.

REFACTOR CODE

REFACTORED CODE

.

.

.

.

.

.

.

STRESS-TEST

Time To Break It!

Don't rush sharing your tools.

Try breaking it before your team does it… You don't want to hear how your tools fails at the cost of your reputation.

https://www.loom.com/share/d9a77a1949f54c95a90ec1778062c575

Final Code

AI Prompt - Stress Test

.

.

.

.

.

.

.

SHIP

Submit Your Code.

Congratulations! Another tool is complete.

Now let's reflect on what we've learnt and submit your code to keep track of your progress.

.

.

.

.

.

.

.

SHIP

Submit Your Code.

Congratulations! Another tool is complete.

Now let's reflect on what we've learnt and submit your code to keep track of your progress.

Time To Celebrate

Share Your Win On LinkedIn
With #pyRevitChallenge

I'll Embed You Here!


Below it's just a placeholder for now…

© 2023-2026 EF Learn Revit API

© 2023-2026 EF Learn Revit API

© 2023-2026 EF Learn Revit API