lisa-marie mueller

lisa-marie mueller

bullet pont

BIM management

Tracking ROI

2020-05-15

When putting time into the development of custom tools for your firm, it's critical to track usage and ROI. This week, take a look at how to incorporate traking this data into your plug-in.

Strategic Planning Part 2

2020-02-28

Following up on my January Post, I discuss some lessons learned through the next stage of our process. I present my thoughts from two points of view: as a leader of the Automation team and as a team member of the Innovation and Maintenance teams.

Strategic Planning Part 1

2020-01-10

While we set goals in our personal lives, we participate in Strategic Planning in our professional lives. This week I discuss some lessons learned from our first team-wide Design Technology group strategic planning session.

bullet pont

Curtain Wall Randomizer

WPF Sliders Part 2

2020-08-28

This week, we look at some additional features you can add to the sliders in your UI with WPF including the option to lock and reset slider values.

WPF Sliders Part 1

2020-08-21

This week, I discuss the use of sliders when creating your UI with WPF. We look at using multiple connected sliders and discuss setting slider values by moving the sliders and entering the quantity in a text box.

Input Validation for WPF User Interfaces

2020-08-07

When you allow for users to select inputs to use in your plug-in it's important to confirm that elements are of the type that your program expects so you do not throw errors.

Delete Mullions

2020-07-31

The method to delete the mullions is fairly simple but allows us to allow flexibility for a variety of uses.

Randomize Curtain Wall Panel Types

2020-07-24

Now that we have all the valid types of panels, we can randomly select a type for each panel to change the material, color, or profile.

Get Valid Curtain Wall Panel Types

2020-07-17

We're back to randomizing curtain walls. This week, we gather all the valid curtain wall panel types.

Randomly Delete Curtain Wall Grid Line Segments

2020-06-19

This week create a random number generator and we randomly delete grid lines based on used entered probabilities.

Create Curtain Wall Panel Grid Lines

2020-06-12

This week we look at how we can adjust the position of the curtain wall grids based on the minimum curtain wall panel width and height to create our horizontal and vertical grids.

Curtain Wall Panel Min and Max

2020-06-05

After removing all the grids, we need to place new ones. This week, we take a look at which coordinates to use for placing the grids.

Delete Curtain Grid Lines

2020-05-29

This week I start the next series looking at curtain walls. We start by figuring out how to delete all the grid lines in a CurtainGrid.

bullet pont

Dynamo to C#

Levels From Excel Part 2

2021-05-21

Using a popular Dynamo script which create levels in Revit from an Excel document as a guide, I will show how you can relate your Dynamo workflow to C# and start coding.

Levels From Excel Part 1

2021-05-14

Using a popular Dynamo script which create levels in Revit from an Excel document as a guide, I will show how you can relate your Dynamo workflow to C# and start coding.

bullet pont

Material Tags

Place Material Tag

2020-11-20

The last step is to place our material tags. We do run into one challange which is that the tags show with '?' until you nudge them in the view.

Tag Location Part 2

2020-11-06

To make sure the tag falls within our interior elevation view, we check to see if the wall's endpoints are inside or outside of our view and adjust accordingly.

Tag Location Part 1

2020-10-30

A simple way to find the center of the wall is to add the two endpoints of the wall's location curve and divide them by two.

Collect Elements In View

2020-10-23

The first step to tagging our elements is collecting all the elements we need. This week we filter for interior elevation views and collect all the walls in those views.

bullet pont

Other

Export OBJ Using C#

2020-12-11

Guest writer Andreas Brake summarizes how to export an OBJ in C# based on the process we used in our hackathon project, StreamVR

Async Operations for Revit Plug-ins

2020-10-16

Guest writer Andreas Brake discusses asynchronous operations in Revit plug-ins.

bullet pont

Python For Dynamo

Managing Data Types (python for Dynamo)

2020-12-18

This week, I discuss one type of python node I use to manage data types more easily when working on Dynamo graphs.

bullet pont

Python for Dynamo

Filtering with Revit Parameters (python for Dynamo)

2020-05-22

One task that can be challenging in Dynamo is filtering lists. This post covers how to filter lists based on parameter names and values. Copy and paste the code into a Python node and use it in your graphs.

bullet pont

StreamVR

Streaming information between the RevitAPI and a VR application (StreamVR)

2020-07-10

I'm excited to welcome guest writer Andreas Brake to discuss the technical details of our VR application and Revit plug-in and share how we set up communication between the RevitAPI and StreamVR

Lessons Learned Developing a VR app in Unity in 7 Days (StreamVR)

2020-07-03

This week I am discussing 3 lessons I learned from making a VR application in only 7 days for the ENGworks hackathon.

bullet pont

TextHelpers

Format Selector - Read and Re-assign Properties

2020-10-02

The final step to wrap up the series is to read the saved properties and re-assign these properties to a different TextNote.

Format Selector - Container to Save Properties

2020-09-25

In order to allow us to save the text properties for future use, even after a user closes the Revit session, we can save out the data to a seperate file.

Format Selector - Text Properties

2020-09-18

We take the first step to creating our format selector and painter by determining which text format items to save.

Change Text Case

2020-09-11

I start looking at text formatting with the Revit API by putting together a plug-in that allows you to select TextNotes and make the text to all upper case.

bullet pont

Zero Touch Nodes

Webhook Node (to track ROI)

2021-01-22

This week, review how to use a webhook in a Zero Touch Node to track script usage and ROI.

Custom Dropdown Menu (Part 2)

2021-01-15

This week, we complete our custom dropdown menu Zero Touch Nodes by using filtered element collectors.

Custom Dropdown Menu (Part 1)

2021-01-08

This week, I cover Zero Touch Nodes for the first time as we start the process to make a custom dropdown menu node.

bullet pont

dynamo vs plug-ins

Dynamo vs. Plug-Ins (Part Four)

2019-08-09

The final post in a four part series exploring automation in Revit through Dynamo vs Plug-Ins. Learn about some steps to implmenting plug-ins and the importance of testing.

Dynamo vs. Plug-Ins (Part Three)

2019-08-07

The third post in a four part series exploring automation in Revit through Dynamo vs Plug-Ins. I discuss the learning curve and some key benefits to using plug-ins.

Dynamo vs. Plug-Ins (Part Two)

2019-08-02

The second post in a four part series exploring automation in Revit through Dynamo vs Plug-Ins. Hear the story of our Dynamo Script Library launch.

Dynamo vs. Plug-Ins (Part One)

2019-07-31

The first post in a four part series exploring automation in Revit through Dynamo vs Plug-Ins

bullet pont

elevation by wall plug-in

User Wall Selection

2020-05-01

The final step for our exterior elevations plug-in is to allow users to select the walls they want to create elevations for by selecting the walls in Revit. This week we walk through the steps to collect user selected walls.

Align Elevation Markers to Curved Walls

2020-04-24

Now that we have the wall normal of the curved wall, we can align the elevation marker.

Finding the Wall Normal for Curved Walls

2020-04-17

To place and align an exterior elevation marker to curved walls we need to find the wall's normal. The Orientation property of a curved wall does not return the wall's normal so we must find it another way.

Align ViewSection CropBox to Wall CropBox

2020-04-11

To save time, we want our program to adjust the ViewSection's CropBox so that it aligns with that of the wall. This week we go over the steps it takes to update the CropBox.

Rotating Elevation Markers

2020-03-27

Since we placed the elevation ViewSection on the first available index of the Marker, we need to rotate the marker to face the wall. We use the wall normal and ViewSection direction to find the angle used to rotate the Marker.

Phases

2020-03-13

There are lots of different parameters that store phases and it is different for Elements, ViewSections, and Rooms. This week, I discuss phases and when to remember setting them.

Elevation by Wall

2020-03-06

Using exterior elevation views for drawings like storefront legends becomes faster when you can select a wall and get an elevation view cropped to the wall. Today we take the first step by placing our elevation at the center of the wall.

bullet pont

experiences

Finding a New Room

2019-07-22

When someone makes you feel like the outsider in the room, it’s time to find a new room. At BILT North America, I found that new room. I found a community.

Welcome

2019-07-14

Let's build the next thing together. Discover tools for Revit and DynamoBIM that optimize your workflows.

bullet pont

interior elevation plug-in

WinForms ComboBox

2020-02-07

Continuing on the topic of user interfaces, I discuss using a WinForms ComboBox to allow input for the Create Interior Elevation Tool I have been working on.

Rename Views

2019-12-13

On our path to automating interior elevations, we want to rename the elevations to coorespond to the room and cardinal direction. This week we set up a couple methods in a Utility class so we can more easily rename the elevations next week.

Coordinate System Utilities

2019-12-06

On our path to automating interior elevations, we want to rename the elevations to coorespond to the room and cardinal direction. This week we set up a couple methods in a Utility class so we can more easily rename the elevations next week.

Creating FilledRegions

2019-11-22

On our path to automating interior elevations, we create a filled region to mask extents of our view. We use inverse matrices to adjust the coordinate system and create our marking region boundaries.

Resizing CropBoxes

2019-11-15

On our path to automating interior elevations, we use linear algebra to adjust the coordinates of our CropBox between the project and view's coordinates. We also discover an InvalidArgumentException to accomidate.

View Templates

2019-11-08

We look at changing the Revit parameters for our automated interior elevation process. This week we set the view template.

Phases & Goal 1 Complete

2019-11-01

We complete Goal #1 on our path to automating the interior elevation process. This week we adjust the phase of our elevation markers and views and execute our program.

ViewPlanId & Levels

2019-10-25

We continue on our path to automating the interior elevation process. This week we find the ViewPlanId, adjust for multiple levels, and place our elevation views.

ViewFamilyTypeId

2019-10-18

We continue on our path to automating the interior elevation process. This week we find the ViewFamilyTypeId which is the last parameter we need to place the ElevationMarker.

Finding Centroids & Considering Exceptions

2019-10-11

We continue on our path to automating the interior elevation process. This week we find the center of the rooms and look at which exceptions we need to consider to not crash our program.

Filtered Element Collector

2019-10-04

Let's take the first step to automating the interior elevation process. This week we cover the Filtered Element Collector class.

bullet pont

learn coding

Steps to Learn to Code 2

2019-08-23

There are many flexible options that teach you how to code. Explore three different options that you can consider

Steps to Learn to Code 1

2019-08-19

Architects and designers need resources that allow them to learn to code while keeping their current responsibilities.

bullet pont

rename interior elevation plug-in

WinForms DataGrid

2020-01-31

As you start developing plug-ins for Revit, you will likely find that you will want to add a user interface for inputs. This week, I discuss using a WinForms DataGrid for the rename interior elevation plug-in I started.

Is Point In Room

2020-01-17

I wanted to create a stand-alone plug-in that renames interior elevation views after they have been created and updates their name based on the room name. The key feature is finding out what room the elevation is located in and this week we do just that.

bullet pont

vacation

Gone Painting

2021-02-05

I am taking a few weeks off to focus on a watercolor class and some additional projects.