Getting lighting to work in Revit can seem like one of those things that are ‘possible’, but ‘too hard for now…’ 

We are all busy, so it can be challenging to really dig down into some of these deeper Revit topics and develop a workflow that is both predictable and efficient. However, Revit Wants you to make the most of the information that you have embedded in your model. If you can see any usefulness in performing lighting calcs directly in Revit, you should check out the online training courses that Dan Stine is running with ElumTools (Lighting Analysts).

Daniel Stine is an incredibly knowledgeable and highly experienced Revit professional. It is incredible how many books he has authored and co-authored 🙂 Suffice to say that he definitely knows what he is talking about! See the outlines as linked below, and you can Register for the courses here.

Basic ElumTools for Interiors
March 9, 2017, noon-2pm CST

Basic ElumTools for Exteriors
March 16, 2017, noon-2pm CST

Main page:
ElumTools Software – Lighting Calculations in Revit by Lighting Analysts, Inc.

lightingcalcs-1090688

Selection Box is a new tool in Revit 2016 that allows you to quickly crop a 3D section box around selected elements (without installing any addins). However, it doesn’t always show up on the contextual ribbon. For example, if you are editing a family in-place… the tool doesn’t seem to be available.

However, we can work around this problem by simply adding the Selection Box tool to the Quick Access Toolbar.

  1. Select any object
  2. When you see the Selection Box tool in the ribbon, right-click on it and ‘Add to Quick Access Toolbar’
  3. Now, in various other modes in Revit, the tool will still be available 🙂

 

If you want to edit Revit view filters, you may be frustrated by the fact that the view Filter Edit Dialog box is sorted ‘historically’ – most recently created at the end of the list:

 

While we can‘t ‘sort’ this list in Revit 2015, we can use the first (alphabetical) list to directly access a Filter by using the Edit button:

Yet another one of these little things where it helps if you know What Revit Wants…

It can be pretty hard to track what is visible in a big federated model, and even harder to figure out when something has been changed or updated. Until now…

Check this little node out:

This gets five pieces of information and writes each of them to a View instance parameter. Currently, it works in the context of the currently active view in Revit. The information acquired is as follows:

  • current date / time
  • worksets currently opened
  • RVT links that are visible in the view
  • the file sizes of those links
  • the date modified for those links

The ‘list items’ are converted to a string with line breaks. Then when it is referenced in a Label in a View Title family (on the far right of image above), it basically shows up as a list.

Future applications of this can easily include reading the link status from the view parameter (by converting the string back to a list), comparing it to current link status, and then immediately showing what models have been updated and need to be reloaded…

Ever wanted to bulk duplicate views from one level to another level? There are various addins and ways to do this, but it is also relatively simple in Dynamo:

  1. Get views using Dynamo definition, and
  2. Get view element IDs and send them to clipboard
  3. Close Dynamo
  4. Select by ID… Paste the IDs
  5. Copy (Ctrl + C)
  6. Paste – Aligned to Selected Level

Using some Bakery nodes, the Dynamo definition would look something like this:

Associated links:
API
RevitAPI: How to resize cropbox of view? – AEC DevBlog
Copying Views Selected in Projec… – Autodesk Community
2012 Filtering for all instances, of all types, of a particular family.

Copying Views
RevitCat: Copying Views Between Revit Projects

    Ever had that annoying problem of your entire dwg showing up in Section Views, regardless of where it is cut? If so, check out this tip from Chad at Revit KB:
    …if you link the DWG into an In-Place Mass instead, then when the section cuts through the Mass/DWG it will only show just the elements which are being cut by the section.

    when placed inside a Mass, that Mass can then be Phased which also means the DWG inside it will too.

    via
    https://plus.google.com/app/basic/stream/z12zslgqpmqedbufj22wxlrybve1xpb0i

    One of the biggest challenges for many long-time Revit users is that initial ‘starting point’ of getting into Dynamo. It takes a bit of time and effort to make that transition…

    Happily, as with Revit, the community is the key. The community is full of people who are providing free packages, definitions, and code, and free advice to new users. But where can we find all of this info? Check out this post on Kyle Martin’s blog. He gives some great tips on how to integrate Dynamo learning into your daily work.

    Here are a couple of comments I enjoyed:

    • been using Dynamo for less than a year with no prior visual programming experience and it has made a significant impact on the way I approach production
    • Dynamo adds an additional layer of control to overcome Revit limitations by providing the capability to gather and restructure information and elements in the model, thus creating the potential for repetitive task automation

    I added some of the feeds he mentioned to my super aggregator feed at:
    http://www.inoreader.com/stream/user/1005975985/tag/REVIT_FEEDS_RSS/view/html

    Full post at:
    Getting Started with Dynamo — Kyle C Martin

    I have also reproduced some of his links here:
    … the tutorials on the Learn page of 

    the Dynamo website
    the Primer 
    the Dynamo Blog
    The Dynamo Community Forum

     … there are many blogs produced by pure Dynamo enthusiasts that have helped me in my journey. I highly recommend that you check them out if you are looking for answers or inspiration:

    Proving Ground (io) & The Proving Ground (org)
    Archi-Lab
    Buildz
    Havard Vasshaug’s blog
    Simply Complex
    What Revit Wants
    Sixty Second Revit
    AEC, You and Me
    Jostein Olsen’s blog
    Revit beyond BIM
    Enjoy Revit
    Serial_NonStandard
    Kyle Morin’s blog
    The Revit Kid
    The Revit Saver
    SolAmour’s extensive list of resources

    Listen to the Dynamo Team explain the history and recent popularity of Dynamo on the Designalyze Podcast.

    I’ve had a bit of struggle with Package Manager lately, but I’m happy to report I was able to get a new version of Bakery uploaded today. I’m pretty sure my issue was ‘too many backups in the dyfbackup folder’, so that may help you if you are having problems uploading. The new version is 2015.10.291:

    Recently, I have made an effort to reduce dependencies, but there are still a couple like archi-lab and Clockwork.

    Here is a list of my main nodes, with these comments

    • some have been forked or imported directly from other packages (see note about dependencies above), and full credit goes to those people who made the original versions
    • some are sub-nodes of main parent nodes that I have yet to go through and hide from the library. I have a big habit (bad?) of making nodes to handle one item and then using them in List.Maps.

    Anyhow, here they are:
    Boolean Input to Variable String Output
    Bruteforce Get Elem ID and Two Parameters and Make List of Strings
    Bruteforce Get Parameter Value by Name
    Bruteforce Get Parameter Values when Multiple Entries
    Bruteforce Get Parameter via String Split for Single element
    Bruteforce Get Parameter via String Split V2
    Bruteforce Get Two Parameters and Join to One String
    Built In Name Lister
    Check DYF folder for Dependencies in Package Folders
    Check for Duplicate Parameter Values and Make Selection Set
    Check for SetParameter Nulls and Report Info on Elements
    Check if Elements are Inplace ( In-place Families )
    Check Project Shared Parameter against benchmark GUID
    Check Reference Level Offsets against a Tolerance Input
    Check Specific Shared Parameter has correct GUID
    Clean List of Indices to Remove Negative Values
    Clean Warning Types from Error Report HTML
    Collect all FamilyInstance using Element Types
    Collect All Tags in Project
    Collect Elements from List of Category Names
    Collect Elements in Rooms and Show Detailed List
    Collect from Link using Category and Parameter Value
    Collect Tag Elements in Specific View and Send Ids to Clipboard
    Combine Column from Three Excel Files into One Long Column
    Compare Two Columns From Excel and Report Differences
    Compare Two Lists by Item and Return Item Differences
    Compare View Filters added to Two Views or Templates
    Convert Category Name to Built In Category Name
    Convert List into List of Strings with Line Breaks
    Convert String with Line Breaks into List of Strings
    Copy Parameter to Parameter in List of Elements
    Copy Parameters Node for Nesting Process
    Copy Property to Parameter for List of Elements
    Copy Workset Name to Target Parameter
    Create Floors From Rooms v1
    Create Floors From Rooms v2
    Cycle Entries of one List by List of Lengths
    Cycle One Item Into List to Match Length of Other List
    Design Option Summary
    Design Option and Design OptionSet
    Document Design Option Sets
    Document Design Options
    Document Phases
    Does this Document Contain Category
    Duplicate View and Isolate Elements
    Duplicate View and Rename and Isolate Elements
    Duplicate View and Rename and Isolate for System Types
    Element List check for Inplace Families
    Element Name Universal
    Element Type for Element Lists
    Element Type for Linked File Element Lists
    Element Type for Linked File Large Lists
    Enumerate Worksharing Display Modes for Document
    Example FFE Category List for a project
    Export Family and Type Name with One Type Parameter to Excel
    Export Images using many input variables
    Export to Image using Directory and View Parameter
    Extract Specific Tag Entries from XML as Unique List
    File List from File Path showing Files in SubDirs
    File List from File Path
    File Size in MB from File Path
    Filter a List by a Given Value with second list passthrough
    Filter Element List by Parameter Value
    Filter Element List by Type Parameter Value
    Filter Items in List by String Contains and Return List and Unmatched
    Filter One List by String Search in Another List
    Filter Revit Selection to View Crop Elements and Names
    Filter Views with Two Criteria and Return Views
    Find Nearest Revit Level for a Given Z value
    Find Pipe Insulation on Workset – Get Host Pipes – Save to Selection
    Find Revit Level for Points by Elevation
    Find Sheets and Views Where an Element is Visible
    Find Worksets that contain Revit Link Instances
    Flat List to List of Strings
    Flatten List and Replace Null with NULL VALUE
    From File Path into RVT Build Information
    Get Actual Elements from Linked Tag Ids
    Get All Revisions
    Get All Revit Links as Element List
    Get Boundary Curve for One Room by Perimeter
    Get Boundary Curves from Room List
    Get Build Number and Worksharing from RVT file
    Get Build Number from All RVTs in a Folder
    Get Categories from Elements
    Get Categories with Builtins
    Get Categories
    Get Design Option Element by Set Name and Option Name
    Get Element Parameters and Split to Names and Values
    Get Element Position Rotate Mirror
    Get Element Room parameter from API
    Get Elements and Types for Certain Categories in Links
    Get Elements from Link Document Using Category
    Get Elements in Link using Name Search and Category
    Get Elements Parameter List and Show Unique Values
    Get Family and Type List for Project
    Get Family from Element
    Get Family List for this project
    Get Host Pipe ID from Pipe Insulation
    Get Indices of Null Values
    Get Info from a Linked Element Tag
    Get Link Document from Link Instance Id
    Get Linked Element from Element Id and Doc
    Get Linked RVT Documents
    Get List of Elements at OriginalNestingLevel
    Get list of GUIDs for a Specific Shared Parameter Name
    Get List of Linked Elements from Id and Doc
    Get Open Worksets and Write to View Parameter
    Get Open Worksets
    Get Project Location Details
    Get Pure Filename from Revit Link Name String
    Get Revit Link Names from an Element List
    Get Revit Selection and Delete
    Get Room Geometry and Filter by Level Elevation
    Get RVT Link Filenames with Element and Type Workset Info
    Get Sheet Element from View
    Get Standard Views as single list
    Get System Related Properties of Element
    Get Tagged Linked Element Id
    Get Two Parameters and Join to One String
    Get Type Parameter for Tagged Linked Element
    Get View Dependency as Internal not String
    Get View Parameter and Parse for Locate32 Search
    Get View Template for View
    Get Viewport Elements Using View Name Search
    Get Workset Info for RVT files without opening
    Get Worksets with all Properties
    If Equal Return Index using IndexOf
    ImageSettings Export Ranges
    ImageSettings File Types
    ImageSettings Fit Direction Type
    ImageSettings Image Resolution
    ImageSettings Zoom Fit Type
    Inplace Family Check Faster
    Is Family Instance InPlace
    Join Two single Strings to One single String
    List All Views
    List Design Option Information
    List Detailed View Information for a List of Views
    List Duct and Pipe Related Elements
    List DWG Link Information
    List Elements in View across Revit Links
    List Groups
    List Import Information
    List Nodes in DYFs for an Entire Folder
    List of Duct and Pipe Categories as Built in names
    List of float double to list of Int
    List of Model Elements simplified with Annotation removed
    List of Model Elements simplified
    List of System Related Categories
    List Parameter Info with Shared Parameter GUIDs
    List Phase Information
    List Revit Link Instances Visible in Active View
    List Revit Links Visible in View
    List Room Names from API and show failures
    List Shared Parameter GUIDs only
    List the View Worksets of All Tags in Project
    List Unique Categories Present in Set of Elements
    List View Filter Information for View or Template
    List Views not on Sheets
    List.RemoveItemsFromOtherList
    Load Selection Set as Elements
    Make Unique Identifier and Set it to Parameter
    Match Link Level with Level in Host using Elevation
    Mirror an Element
    Mirror Element Using Origin and Normal Vector
    One Face to Polycurve Outline
    one Room to its PolyCurves
    Parse and Split String to a List
    Parse CSV Text of Elem IDs to Actual Revit Elements
    Parse Error Report and Provide Summary List
    Parse IFC File
    Parse Revit Error Report HTML and Output Summary
    Parse Revit Journal File
    Place Family by Point Cloud
    Place Free Instances to Match Project by Category
    Polycurve to Nearest Revit Level by Elevation
    Process Family Type Excel Sheet and Get a Value To Write
    Project Base Point Details
    Read CSV to Flat List
    Remove Characters from end of single String
    Remove Chars from End of Single String
    Remove Empty Strings from List
    Remove Equal Items from List and Preserve Counts
    Remove First and Last Characters from String
    Remove First Revision from Each Sheet
    Remove List from List by Item not Value
    Remove Revision From Sheet subnode for listMap
    Rename Families by Replacing Prefix
    Rename Families with a Prefix
    Rename View by Replacing Prefix
    Rename Views by Appending Selected Suffix
    Report Dynamo Package Details by Folder
    Report on Inplace Families
    Report Revit Link Worksets
    Report RVT Links Visible in Views on Sheets
    Room to Element Geometry Test for Preflight
    Rooms to PolyCurves
    Rotate Families Around Origin by Angle
    RVT Information for All RVTs in a Folder
    Search for Certain Build Number in Folder of RVTs
    Search for Generic Annotation on Sheet and Copy Id to Clipboard
    Search for Type Parameter Value in List of Elements and Return Elements
    Search One List Based on Second List and Get Values
    Select based on a single builtin name
    Send Element IDs to Clipboard
    Set Design Option by View Parameter
    Set Instance Parameter by Type Parameter
    Set List of Values to List of Elements for One Parameter
    Set One Parameter to Many Elements
    Set OriginalNesting Level Parameter for all FamilyInstances
    Set OriginalNestingLevel Parameter to Element
    Set Parameter of View based on a Character in Sheet Number
    Set Visible RVT Links to Parameter for Current View
    Set Workset for a Single Element
    Set Worksharing Display Mode for View
    Show Dependency Nodes for one DYF
    Show Element Workset as Internal db name
    Show List of Revit Links that are never visible on Sheets
    String Replace using RegEx
    String Search All Element.Parameters for a Single Element
    Summary and Node Search for a Folder of DYFs
    Summary of Selected Parameter Values for Duct and Pipe Elements
    Summary of System Related Elements
    Summary of Unique Values present in List
    Transpose Data within Excel Sheet
    UUID GUID Generator for Lists
    View Statistics
    View Templates for View List
    Write Empty Linked Tag Information to Excel
    Write Parameters from One Element List to Another
    Write Shared Parameter Check to Excel
    Write to Excel using only Data and File Path Inputs