Revit MEP Forum
Welcome to Autodesk’s Revit MEP Forums. Share your knowledge, ask questions, and explore popular Revit MEP topics.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Revit Family Mirroring

16 REPLIES 16
SOLVED
Reply
Message 1 of 17
leopoldo_andradeXPVL7
712 Views, 16 Replies

Revit Family Mirroring

It is very common to download a family of a product directly from the manufacturer and then use it in the project, in my case working with MEP, most of the families I download contain connectors in order to after design the piping or cable routing. 

 

When an object has been mirrored in Revit, the family is completely flipped around, even the connectors. Here is a top view of a family with the correct connector to the left

leopoldo_andradeXPVL7_0-1711368236910.png

And once we mirror the object now you can see the image of how the connector changes the position, something that should not happen since in reality this wont happen.

leopoldo_andradeXPVL7_1-1711368337855.png

is there a way to design families that once mirrored they keep the same location of the components? How can manufacturers guarantee that when they share their 3d models objects are not being used incorrectly for the design phase?

16 REPLIES 16
Message 2 of 17


@leopoldo_andradeXPVL7 wrote:

And once we mirror the object now you can see the image of how the connector changes the position, something that should not happen since in reality this wont happen.


The command is called Mirror because if you looked at the object in a mirror it would be flipped left/right, so in reality that would happen

 


@leopoldo_andradeXPVL7 wrote:

is there a way to design families that once mirrored they keep the same location of the components?

By definition that would not be mirroring.

 

You can use yes/no parameters to control visibility of multiple connector spuds so you can decide whether you want the connector on the left of the right etc. Or you could create more types in the family or duplicate families.

If manufacturers have "left" and "right" versions of their products they would usually define these as discrete products with different product/model references (e.g. including an RH or LH code within the product reference), so in Revit these would properly be different families or family types rather than just mirrored by the user within the project.

 

At least that's my opinion.

Message 3 of 17

I agree with @iainsavage. Not all equipment is available in a "mirrored" version and if it is, it's usually not an exact mirror.

 


@leopoldo_andradeXPVL7 wrote:

How can manufacturers guarantee that when they share their 3d models objects are not being used incorrectly for the design phase?


They have absolutely no control of their families once they get downloaded. It is up to the user to use proper modeling techniques and not modify or use said families in ways outside of their specific criteria.

Message 4 of 17

You are correct  @iainsavageabout the mirror function, but what I think should be considered is the fact that a real product does not mirror, it can be designed in multiple configurations, rotated or moved, but not mirrored.

 

Additionally when a model is downloaded from a manufacturer and inserted into a collaborative model, where a lot of members are working, it becomes very complex and unreliable, just to imagine that the members are not mirroring families.

 

At the end will result in a model with hundreds of families, and not being able to predict if the families are the original (as designed from manufacturer) or a mirrored one.

 

Additionally from the comment of @RSomppi, I agree that families downloaded should not be modified, but in my case I am considering only mirroring a family inside a project instead of modifying the family

 

 

 

Message 5 of 17

"I think should be considered is the fact that a real product does not mirror, it can be designed in multiple configurations"

That is what I said - if there is a left and right handed version of a product then there should be different versions of the family or different types within the family.

 

"where a lot of members are working, it becomes very complex and unreliable, just to imagine that the members are not mirroring families"

I don't think you can expect Revit, or any other software, from preventing users from doing things that they shouldn't do. There is no substitute for competent personnel.

Blocks in Autocad would have the same limitation.

 

"At the end will result in a model with hundreds of families, and not being able to predict if the families are the original (as designed from manufacturer) or a mirrored one."

Same response as previous paragraph.

 

"in my case I am considering only mirroring a family inside a project instead of modifying the family"

That is a modification.

Moreover what you are suggesting in your initial post is that the some parts of the family should mirror, but other parts shouldn't? - that would be even more of a modification and how would Revit possibly know which parts to mirror and which parts to not mirror?

Again it sounds to me that what you need to do is find or make different versions of families for left and right handed versions of equipment.

 

Here's an example from a product which I've used in the past:

iainsavage_0-1711445164566.png

 

 

 

Message 6 of 17


@leopoldo_andradeXPVL7 wrote:

Additionally from the comment of @RSomppi, I agree that families downloaded should not be modified, but in my case I am considering only mirroring a family inside a project instead of modifying the family


In your case, it is not a mirrored version. It's a left hand/right hand configuration and you NEED to verify that the manufacturer actually provides an opposite handed version and obtain, or make, another family. A mirrored copy will not schedule as left hand or right hand.

Message 7 of 17

You can use add-ins and dynamo to check models for mirrored elements. This would be the only way I can think of to ensure that your families are not mirrored within the project.

 

https://forums.autodesk.com/t5/revit-architecture-forum/can-we-use-revit-checker-to-check-if-an-elem...

Message 8 of 17

It would be a good idea to have a "Allow Mirroring" tick box like the "Always Verical" flag.

In Fabrication Parts in Revit the Content Author can set a Property to prevent a user mirroring a component.

Useful for Smoke Dampers and none symetrical fittings.

djthompson_0-1711556948309.png

 

Message 9 of 17
iainsavage
in reply to: djthompson

That seems like a good suggestion for the Ideas forum, however if I understand @leopoldo_andradeXPVL7 post correctly they do want to be able to mirror a family but have only certain parts in the family not mirroring?

If its simply a case of not mirroring at all, and assuming that an Idea might not be implemented for years (if ever), just issue a directive to staff and write it into the BEP to not mirror families. Any competent staff would surely then comply? If the staff are not competent or trustworthy then what other inaccuracies could they be introducing into the model?

Message 10 of 17

What you need to do is using nested families with flip function in them.  Nest them in the main family then you can create different types and mirror specific components for each type and using visibility parameters to keep components on-off properly.

Message 11 of 17
RSomppi
in reply to: ToanDN


@ToanDN wrote:

What you need to do is using nested families with flip function in them.  Nest them in the main family then you can create different types and mirror specific components for each type and using visibility parameters to keep components on-off properly.


This may work by using types to control the mirroring so one can schedule it correctly. It is still reliant on the opposite hand type being available from the manufacturer.

Message 12 of 17
ToanDN
in reply to: RSomppi


@RSomppi wrote:


This may work by using types to control the mirroring so one can schedule it correctly. It is still reliant on the opposite hand type being available from the manufacturer.


Those are two different things altogether.  One is a technical workflow, the other is a product design.  The workflow is to create a family that meets the product design and specifications.

Message 13 of 17
RSomppi
in reply to: ToanDN


@ToanDN wrote:
Those are two different things altogether.  One is a technical workflow, the other is a product design.

Disagree.

 

If the product isn't available, doesn't that invalidate the workflow? Representation of a product that isn't availble doesn't do anyone any good.

Message 14 of 17
ToanDN
in reply to: RSomppi


@RSomppi wrote:

@ToanDN wrote:
Those are two different things altogether.  One is a technical workflow, the other is a product design.

Disagree.

 

If the product isn't available, doesn't that invalidate the workflow? Representation of a product that isn't availble doesn't do anyone any good.


I don't care if you agree or not.  A technical workflow is universal.  A product design is specific.  One can use the same workflow to create families for different vendors which have different specifications. 

 

The question in the topic is about the workflow, not about the product and I answered as such.

 

 

Message 15 of 17
RSomppi
in reply to: ToanDN


@ToanDN wrote:
The question in the topic is about the workflow, not about the product and I answered as such.

Some of us responding here care enough to warn against using such workflows haphazardly.

 

What good does it do for anyone to design a project with equipment that doesn't even exist? Knowledge can be a dangerous thing in the hands of the naive.

Message 16 of 17

Hello,

 

One suggestion is to exclude the critical components from the to-be mirrored group.

It is essential to note that an automatic function would be highly complex considering which components are connected and how they should be rerouted if one component is not mirrored.

Fábio Sato
Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.

EESignature

Message 17 of 17
robert2JCCH
in reply to: RSomppi


@RSomppi wrote:

@ToanDN wrote:

What you need to do is using nested families with flip function in them.  Nest them in the main family then you can create different types and mirror specific components for each type and using visibility parameters to keep components on-off properly.


This may work by using types to control the mirroring so one can schedule it correctly. It is still reliant on the opposite hand type being available from the manufacturer.


I'm reading this as "Introduce a corrective technical measure that compensates for the Mirror tool's inability to maintain real-world component orientation (as that's not what Mirror was ever intended to do)", not "Provide a feature in the family that makes assumptions of the manufacturer". 

 

I get the concern of trading one potential error source (the mirror command) for a different potential error source (flip controls on a family without real-world handing ability or with handing designations in the scheduled model number). As @curtisridenour mentioned tools exist to diagnose for possible mirroring errors, whereas it's more difficult to track down flip toggles on a whole-model basis.

 

I do think there are use cases where flip toggles are a practical and useful application. We use @ToanDN 's method for plumbing fixture families as a method to fix hot/cold handing when fixture/pipe combinations are mirrored to match mirrored unit types since it's often more convenient than creating hand-adjusted mirrored model groups.

 

 

To address a question of the original poster: the manufacturer can guarantee absolutely nothing about how their model family is used by the end-users. That is the consequence of a software environment where objects are editable. They cannot prevent their family from having geometry modified, parameters modified, logos removed, name changed, etc. There are things available (locking, formula-generated values) that would make editing more difficult and could serve as passive warnings to a modeler to not dramatically change parts of the family file. They are, at the end of the day, just speedbumps.

 

The responsibility falls on the modeler to understand what they are using, how to properly use it, how to make changes if certain values/assumptions from the initial file are erroneous, when their own assumptions on the file are erroneous, and how all of that affects the scope of their design.

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk Design & Make Report


Autodesk Design & Make Report