For some time, I have worked around Revit's dumb host element quirks and accepted them; however, they really do need to be addressed. Right now, the biggest gripe is with ceiling-hosted families. This is probably a great example of something programmed without understanding how users might approach it. The default template has a ceiling element, an unattached reference plane, and a Reference level. Seeing this, I would assume the level actually mattered, and thus would think to model something like this. However, nothing here works as expected. The reference level has 0 connection to the real level data. It's essentially there for Level association but not actually reading or controlling any real elevation. Where most families use this for the host, this does not. You can almost ignore that it's even there and just model from the ceiling. I know this, and generally have avoided ceiling-hosted elements anyway, but we have a lot of designers who want to control lighting fixtures by AFF not offset from the ceiling, and that is logical; it's how designers work, and this family template even makes it seem possible. There is even precedence with the multi-level family template (which i have tried as an alternative but since ceilings aren't on a datum typically and are modeled to be offset from a level not their own, this doesn't work). Most fixtures are better off being face-based, but when creating hanging fixtures, this is a desirable feature. Especially if (for example) the aff could be a type or instance, allowing for easily changing AFF across the project without worrying about where the top base sits, as it would be attached to the ceiling above. I imagine this is possible in general, but maybe not in Revit's code. If not, then at the very least, maybe make it clear which elements actually are real level references and use something more like the room calculation point to signify level association. What would be even better, if possible, would be to have a way for face-based elements to be aware of their levels and faces. For example, if I place a fixture on the ceiling, the face host understands its face is a ceiling and is aware and able to reference the level below, allowing for using this AFF feature.
Show More