Welcome to the Onshape forum! Ask questions and join in the discussions about everything Onshape.
First time visiting? Here are some places to start:- Looking for a certain topic? Check out the categories filter or use Search (upper right).
- Need support? Ask a question to our Community Support category.
- Please submit support tickets for bugs but you can request improvements in the Product Feedback category.
- Be respectful, on topic and if you see a problem, Flag it.
If you would like to contact our Community Manager personally, feel free to send a private message or an email.
New Feature: Lefty Flip

After seeing loads of forum posts about the want for an assembly mirror, and lots of my team's gripes about wanting non-assembly mirrors that flip the original input parts instead of creating new ones to maintain the flow of downstream operations I decided to do something about it. This is not an assembly mirror feature. This is just a tribute.
I present to you Lefty Flip, which allows you to create left handed configurations of your parts while fully maintaining original part IDs, edge IDs, face IDs, pretty much everything I threw at it in one afternoon's worth of noodling. This means any mates you define at the assembly level for your right hand configurations of parts will also be defined for the left hand configuration when you change between them. Assuming you mated things any kind of reasonable.
To demonstrate I found a copy of a Fender Stratocaster assembly someone modeled and published on the public docs, but left out all the lefties.
And then applied the script to 3 part studios for the parts that would be flipped on a lefty guitar and none of the ones that wouldn't
Lefty Flipped.
Normally creating a left handed configuration of a product would require forethought and intent and good assembly structure and you'll still end up with a folder of suppressed mates at the end that you'll look back on later confused at how things are meant to relate to one another. Heaven help you if it isn't your model. Now you just need one feature and a configuration checkbox.
Just select the bodies you want to mirror in the part studio and optionally define a mate connector to center your flipping operation on. If nothing is selected it will use the part studio's origin as the center. It does do a left to right flip and not a front to back or top to bottom. Our company operates under Earth gravity but let me know if you work on parts for space and want the option for front to back or top to bottom flips and I might update this to add those at some point.
And because my team wouldn't live without it, it does sheet metal too. But only if you flip everything in the context at once because things were getting unstable when I tried to do only single pieces out of context. Probably that's your intent with a left handed sheet metal model in most cases anyway.
Now if only I was any good at drawing icons…
Comments
.
Oh cool, I didn't know you could reverse a scale transform and it would flip the part like this while keeping the id's. This is really awesome!
A nice default might be to mirror across the centroid of the part, this way the part stays where it was made.
You can get tons of nice icons here: svgrepo.com
.
Learn more about the Gospel of Christ ( Here )
CADSharp - We make custom features and integrated Onshape apps! Learn How to FeatureScript Here 🔴
I honestly thought it wasn't possible because the built in scale tool guards you from using negative bounds at all, so I didn't try it until rereading the documentation closer. The only real hint at this is the word "inversion" in the docs.
I had thought about doing the transform on the part's centroid but the larger intent was to allow multibody support first and foremost which is why I default about the origin. You'd have to pick a prime centroid otherwise or risk breaking rigid assembly inserts if every part individually flipped about their own centroid. The easy answer was to just allow mate connectors and let the user define their own points of reflection.
Ok. Can someone at Onshape explain why we don't have a 1st party version of this? Seems like this solves a lot of requests.
@Derek_Van_Allen_BD One question, how does this handle threaded parts? I assume with modeled threads you would get left handed threads instead of right, but if you use a hole feature things should be ok, right?
Assembly mirror is coming — it's surprisingly complicated to do it well, but we think we have a good solution.
@S1mon All Onshape would need to do is remove the negative restraint on the non-uniform scale inputs in the transform tool. However, if they did this, who is going to think to use negative numbers besides Derek. 😎
But for me, custom features are a solution, I don't see why users "need" first party there is a legit custom feature for it.
Oo, sounds like there is a plan in place for assembly mirror. Ty for the info @ilya_baran!
Learn more about the Gospel of Christ ( Here )
CADSharp - We make custom features and integrated Onshape apps! Learn How to FeatureScript Here 🔴
@S1mon Tried it just now, the non-geometric threads via hole tool and external thread do not invert orientation upon lefty flipping. No need to go and buy a whole stack of left hand fasteners for your shop drawings.
@ilya_baran judging by the nightmare of inverted fasteners that ended up in our Solidworks database pre-migration I understand completely the challenges of doing assembly mirrors robustly and the consequences of failing to do so. Looking forward to seeing the first party solution when it comes. There are times I think I'll still reach for a feature like this however where a left and right hand variant may not be as trivial as a strict mirroring of the whole part. Like if I was modeling specific plastic threads for fastener design where I need to have the geometry maintain chirality post-inversion. Using Lefty Flip I can simply define all of my orientation sensitive features post-flip and everything should still build correctly up through the assembly.
@MichaelPascoe You should see some of the cursed sheet metal forms I was able to birth into existence when I was testing the waters with the bounds of the scaling operation. If I'm reading the docs correctly these are affine transformations under the hood which is a much larger matrix of possible operations. If they ever expose the other values for me to play with you're gonna see some weird shit out of me.
Niiiice! Thanks
The Onsherpa | Reach peak Onshape productivity
www.theonsherpa.com
So cool! Thanks for sharing👍