How to add your knowledge

Creating a Fill Pattern Override by Phase

    Table of contents
    1. 1. Part 1
    2. 2. Part 2
    3. 3. Part 3

    Part 1

     
    You want to know how to override a hatch depending on phasing of the object, in this case a Wall.
    To be honest, it cannot be done. But you can get close... For arguments sake, let's say you're starting on a blank project without any template.
     
    I created a Project File with two OOTB Phases: Existing and new. Both have a Plan View Level 1. Then I created a simple square box in Phase Existing and added some Walls in Phase New.
    I created a Section View in Phase New to top it off, see image 1.
     
     
    Then I created a Phase Override to show new only. Set existing and temporary to not show, image 2. This is not directly needed for the example at hand but can come in handy when you are working on large projects.
     
     
    At this time you can't filter on Phasing, so you need to work around that.
    Create an extra project parameter to filter on. Go to Manage > Project Parameters > Add > Project Parameter > Create a parameter of the Yes/No category. Name it "override wall hatch" or something. Apply it to the category Walls, see image 3.
     
     
    Open a new 3D View which has all walls in them, temporary apply the Phase Filter "New Only" to only show the Walls created in Phase New, see image 4.
     
     
    Select all Walls visible, check OFF the parameter "override existing hatch", image 5.
     
     
    Now you can create a View Filter for the section / elevation views by filtering for the yes/no to equals No, see image 6.
     
     
    To do this, take the following steps:
    a. Go to the Section / Elevation View in which you want to apply the filter.
    b. Go to Visibility Graphic Overrides, Filter Tab.
    c. Click Edit / New. Create a new Filter.
    d. Apply the filter to category Walls.
    e. Select the "override wall hatch"-parameter that you just created and set it to Equals "Yes". Now click OK. This filter will select all Walls which have been marked by the "override wall hatch"-parameter.
    f. In the Filter Tab of the Visibility / Graphics box, select the Cut Pattern and set it to non-visible or any other override you might like (image 7).
     
     
    Image 8 shows the desired effect.
     
     
    BIG WARNING: This is NOT a automatic method. You need to keep checking if all the parameters are applied correctly. Besides that, Revit has some quirks when it comes to System Families using Yes/No-parameters. More on that on the next part.
     

    Part 2

    In the part, I showed a method of overriding hatch patterns based on a Yes/No parameter. I also stated that this is a manual usage and should be very thoroughly checked before issuing the documents. But there is a way to (sort of) automate the process of checking using schedules.
     


     

    How to check if all parameters are applied correctly? Well there can be a limited amount of scenarios here:

    1. All existing walls have parameter "override wall hatch" applied, none of the new walls have it. So everything is fine and works as aspected.

    2. Somebody (not you off course) accidentally checked the parameter "override wall hatch" to one or more new Walls. Result: some new walls get overridden like shown in image 9.
     
     
    3. Somebody accidentally unchecked the parameter "override wall hatch" for an existing wall resulting this wall to have the wrong hatch, see image 10.
     
     
    4. This is a tricky one: there is no value applied yet. Using this method you are bound to run in a weird bug: A yes/no parameter can actually have 3 values: Yes (1), No (0) and <null>(not defined), see image 11. </null>
    <null/>
    <null/>
    This never happens for loadable families because either Yes or No is already applied in the Family Editor. Newly created System Families however ALWAYS start with the value <null>. For this image, I created a new Wall in the Existing Phase. Doesn't matter how you do it, by using the new Wall command or the Create Similar command: result is the same.</null>
    A <null><null>-value is a programmatic term for a value that's supposed to be there but isn't (a Yes/No is supposed to be either Yes or No, 1 or 0). But since it's not defined it's neither of them. What is it? Well, I don't know, but Revit sees it as less then 0. So you can use it in a schedule.</null></null>
     
    So go to View > Schedule > Add a Wall Schedule. Name it "check override new walls" (or something less lengthy). Set the Phase to New and the Phase Filter to New only.
    Go to Fields tab > Add the system parameter "Type" and your custom "override wall hatch" parameter to list and identify all Walls created in the Phase "New" with this parameter applied, see image 12.
     

    Go to Filter tab > Add a filter and filter on "override existing hatch" to equal Yes, see image 13.
     
     
    This way you are showing all Walls created in Phase New which have the "override existing hatch" applied (which is wrong, since these walls are New).
    So, if all is well there shouldn't be ANY walls in this schedule. To check this, go to Plan View New and check the "override wall hatch" for any Wall created in Phase New, see image 14.
     
     
    So this takes care of the "accidental" override of New Walls. Now to check if you correctly applied the filter parameter to all existing walls:
     
    Duplicate the Schedule View and rename it to "check override existing walls" (or something). Set the Phase to Existing. This will show all Walls created in this Phase.
    Go to the Filter Tab. Change the Filter for the "override wall hatch" to "Less then or equal to" No. This will filter for 2 things:
    1. Existing Walls that have the "override wall hatch" parameter not checked (value = No or 0), see image 15.
     
     
    2.. Exising Walls having the "override wall hatch" not applied (value = <null>or less then 0), see image 16.</null>
    <null/>
     
    So now we have all the bases covered: you can use these schedules to check whether you applied the corect parameters in reference to the Phase the Wall was created in.
    The third part of this weblog will deal with making this all look nice and work user-friendly.
     

    Part 3

    So, here it is: the final part on how to create a hatch override based on Phasing of the overridden Walls.

    In the first part I showed the methods on how to override hatch by using Yes/No Parameters combined with a View Filter. The second part showed how to set up schedules to check the proper usage of these parameters.
     
    This method can be used on a lot of things. Combined with the View Filters, it's a very powerful tool. But you don't want to go by an immense set of Schedules one by one to check your model. So you place them on your sheets. But this creates two new problems:
    1. If you're working on a big project with, in this case, a lot of Walls, the Schedules will fill up fast and clutter your sheet.
    2. When everything is OK, you also don't want to have a bunch of empty Schedule titles and headers sitting there on your sheet, see image 17. Placing them on a separate sheet isn't an option, since that way it isn't "live" on the model. I like to look at my Plan View Sheet and see if there is any problem here.
     
     
    Luckily, there is a solution for both problems:
    1. To keep the Schedule size manageable you can use the Sorting settings in the Properties. Go to the Sorting tab of the Schedule View and Sort by the parameter "override wall hatch". After this, check off "Itemize every instance". This will group all walls into 1 Row, see image 18. This off course makes the schedule a lot more clear. But it also let's you edit the "override wall hatch" parameter for all walls in the schedule at once.
     
     
    2. There is an exception to the general rule in Revit that there cannot be any empty views in your sheet. You've guessed it: it IS possible to have empty schedules on a sheet.
     
    In order to do this, go to the Schedule, open the Appearence Tab from the Properties and uncheck both "Show Title" and "Show Headers", see image 19.
     
     
    Having done this, you will see that all sheets have magically disappeared from the sheet, see image 20. Not completely though, hover with your mouse pointer above the area the schedules are supposed to be and you'll find that you can still select them.
     
     
    But they will only show up if you have a problem with a Wall, like in image 21. Here, I "accidently" checked the "override wall hatch" for a new Wall, which makes this schedule pop up. You're right, it doesn't show it's headers, so you're kind of in the dark on what's going on. Right click > Edit schedule to find out.
     
     
    Like I said before: it's not a completely automated check, but it's pretty close in my book! Happy Reviting!!
     
     
    This 3 part article was originally posted to the Revit Forum Blog by Martijn de Riet in response to a question posted to this thread at Revitforum.org.
     
    Reposted by Autodesk with permission from the original author.