Symbols for Lighting Fixtures Showing in Plan
Back in 2010 I was asked to create a face-based lighting fixture that, when placed on a wall, would display a symbol in plan view. “No problem,” I thought, and happily set out to work on it. Little did I know that it couldn’t be done. Had I “known,” I might not have even tried. But as it turns out, it was possible after all.
The Issue
If you have a face-based lighting fixture family with a nested annotation, you will see the annotation in a project’s plan view when you place the lighting fixture in a ceiling, but not if you place it onto a wall.
It seems to be something that people would like to be able to do, yet, apparently, cannot in Revit. A quick search in Google will show that this is an old wish.

The issue lies within the chosen Revit family category. In certain family categories, a face-based family will display the option Maintain Annotation Orientation.

When checked, this option allows the nested annotation to rotate so that it shows both ways – when the family is placed vertically or horizontally, e.g. on a wall or in a ceiling. Lighting Devices, Fire Alarm Devices and Electrical Fixtures are examples of family categories that have the Maintain Annotation Orientation option. In other family categories, like Generic Models, Lighting Fixtures or Specialty Equipment, that same option isn’t available. In the latter categories, a nested annotation will display in a project’s plan view only if the family is placed on a horizontal plane, like a ceiling.
The images below show the two annotations nested within two families. The first family is set as a Lighting Device and has the option Maintain Annotation Orientation checked. The annotation then displays without a problem in plan view when the family is placed onto a wall. The second family is set as a Lighting Fixture. As such, there is no annotation orientation option.

The result is that when placed onto a wall, the annotation fails to display in plan view. The annotation will still display in plan view if we place the Lighting Fixture on a ceiling, but that’s not what we are after here.


While you could, for example, create a detail item to serve as the annotation when the family is placed on a wall, you would lose the automatic scaling afforded by a symbol created as a generic annotation.

Alternatively, you could change the Revit category in order to display the Maintain Annotation Orientation option. You could switch from Lighting Fixtures to Lighting Devices, for example, but we then lose access to other category specific features that we might require.
The Solution
The method described next works around the limitation of not having the Maintain Annotation Orientation in some Revit family categories. It allows the exit sign family shown above – faced-based light fixture – to display a symbol when viewed in plan.
In order to see the symbol in plan view, the nested annotation needs to be placed in a plane perpendicular to the plan view when the host family (Lighting Fixture) is placed in a project. And to do that, we need the nested annotation to be placed within the Lighting Fixture family as shown on the right in the image below. Unfortunately, Revit only allows for placing the nested symbol as shown on the left.

We will route around this limitation by first inserting the annotation family into another face-based family, and using this intermediary face-based family to place the annotation the way we want into the final Lighting Fixture.

The only key requirement for the intermediary family (aside from being face-based), is that it needs to be set as shared for the symbol to display in the project. With that done, now the family does what we want when placed in a project. Also note that, when placing the intermediary family into the Lighting Fixture family, you can’t see the annotation. But fear not, the force – sorry, the reference planes of the intermediary family will be there with you.

From here you can develop on top of this method to have a family that displays one symbol when hosted on a wall and another one when hosted on a ceiling (e.g. a camera), choose to allow your symbols to be tagged, and so on.


Comments
7 November 2012 2:19 pm Andrei Bejenaru
So once again the nested families saved our souls. Great post, I’ll try this detailed tutorial as soon as I decide to use hosted families. All the families I place in the MEP model aren’t hosted. If we take the example of the exit lighting fixture, this family has 2 nested familes: the one that includes the geometry of the ligthting fixture placed on a reference line and the other, the annotation symbol placed horizontaly. The reference line gets a rotation parameter that helps place the family in horizontal or vertical and this way the annotation family is always horizontal.
8 November 2012 8:15 am Maria
This is well put together. Thanks for sharing.
Maria
8 November 2012 3:23 pm Jacob Farley
Excellent, thanks for sharing, this is how I have been doing my Electrical Families. Nice to get confirmation that I am on the right track.
9 November 2012 8:05 am Ekko Nap
posted a link on revitforum.org
It’s a must read.
10 November 2012 10:00 am REVIT Czar
There is another way to create that family. Simply create on the “Front” elevation view the symbology on a “Symbolic Line” set rather than a detailline. From there you just make the visability of the 3D model unviewable from the Plan view. Then you will have the linework in plan view and the 3d everywhere else.
11 November 2012 5:51 am Jose Fandos
@REVIT Czar, symbolic or model lines won’t automatically scale with other symbols, as mentioned in the post. You won’t be able to create solid areas, like in the symbol used in the example. I hope that clears it.
@Ekko Nap Thanks for posting a link!
Having said that, the reference line method has other useful uses, like when you want to rotate a symbol (like a camera symbol).
@Andrei Thanks! Glad you liked the post. You can do this as well with a reference line, as you suggest. You can save some file size with with a reference line, but you will require interaction from the person using the family. The method described here “just works”
15 November 2012 8:31 am GMcDowellJr
This method also works to get the annotations to show up on sloped surfaces (like a sloped ceiling) by attaching the face based annotation to a reference line whose parametric angle equals the angle of the slope.
The only downside to this method is the annotation family, now being treated as a model element, schedules along with whatever category you’ve assigned it to.
16 November 2012 12:21 am Jose Fandos
@GMcDowellJr Yes, though as mentioned to Andrei, there is the need to edit the properties of the family within the project (to enter the slope’s angle). It is unfortunate that a reporting parameter couldn’t be used to read this information directly from the project. The double counting is something that needs to be dealt with. There are a number of ways to do so, but I don’t have any links to point to right now.
19 November 2012 9:12 pm dmalagon
what if I need to keep the color of the symbol to its correspondent system is there any way to do so??
20 November 2012 12:17 am Jose Fandos
@dmalagon Have you tried using filters?
20 November 2012 6:41 pm dmalagon
You are absolutely right Jose, I just realized I had missed my fixtures in the filtering criteria, reason why it was displaying my fixtures black instead of the system color. Thanks for your piece of advice.
Something else I found, make sure you select the appropriate family type for your intermediate face based family or your symbol might not show what is expected!!
21 November 2012 9:56 am Heather
Quick question for you, as this is similar to something I’m working on. I am setting up families of certain types of equipment that should never be mirrored because the door swings are always in a certain orientation. Is there a way to set up the family so that you can *never* mirror the family when it’s inserted into the model?
22 November 2012 3:38 am Martijn van der Kooij
Hi,
I’m trying to do this using the Revit 2012 API. But When I try to insert the intermediate family with “this.Doc.FamilyCreate.NewFamilyInstance” method with the view “Front” . Then I get a “Only a 2D family can be placed on a specific view.” error.
I’m I wrong when i think that the insertion in the view is a key point in this? Or should I use one of the other NewFamilyInstance methods?
3 December 2012 5:22 am Jose Fandos
@dmalagon Glad it helped. @heather Not that I can think of right now. @Martijn The intermediate family, being face-based, can be placed on a face that’s perpendicular to the plan view, but you would have to check in ADN for how to go about it.
@Andrei, a correction to my previous comment, yes, you can place the intermediate family onto a reference line, but the symbol by itself wouldn’t work.
16 December 2012 9:29 pm Bill Knittle
Awesome workaround. The only thing that I would recommend is setting the intermediate Family Category to Light Fixture for use in MEP projects. The Mechanical, Electrical, and Plumbing settings for a View’s Discipline parameter will halftone the intermediate family when set to the Generic Model category. As mentioned in a previous comment, you have to add criteria to the intermediate family to Filter them out in a Light Fixture Schedule. I simply added the value “Symbol” to the Type Comments and set my Schedule to Filter by Type Comments>does not equal>Symbol.
18 December 2012 4:00 pm Chris Lenden Barnes
It worked for me, but now my ‘Clearance Zone’ element around my Distribution Switchboard now has one side greyed out solid instead of the transparrent one that was there prior to applying this fix.
18 December 2012 6:47 pm Chris Lenden Barnes
Oops! Sorry I had section box cutting through my clearance space. So all is good now. I am starting to fix up all my face based families now. Thanks for this tip.
18 December 2012 7:02 pm Chris Lenden Barnes
If you apply the same keynote coding to both the Intermediary family and the Model family then apply a description you have only one item show up in your scheduling, but your count will show 2 items. (Just hide your count from view and your schedule is perfect).
18 December 2012 8:15 pm Chris Lenden Barnes
Note:
When applying this method to a family with multiple family types, I noticed that the symbol moves frm side to side (similar to an off set command). Any one else managed to fix this?
30 December 2012 4:09 pm James
I knew it was possible, but I just could not figure it out.
Add a comment