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.
Assemblies - I would love to see planes in assembly mode - what am I missing??
dave_franchino
Member Posts: 78 ✭✭
Hey folks,
I keep pounding my head against the wall in situations where I'd love to have the three primary planes to work with in an assembly. In general they're incredibly useful for cutting sections, assembling, etc.
Lately I'm working on a large assembly with a lot of symmetry - think of a table with (a lot of) legs. I start by assembling the table top (drawn centered at the origin) and I'd love to mate just one leg and them mirror that leg around the front and side planes to end up with a clean assembly that shows the table top and one leg used four times. But there is no way I can find to mirror that first leg around the center of the table top.
I must be missing something because this seems so basic and simple - the Onshape folks are pretty smart and I don't think they'd leave me high and dry.
So what's the work around? I know there's a way to mirror around a mate connector placed at the origin but I can't seem to control that in any repeatable fashion.
is there some logical reason why the good folks at Onshape don't simply plop the three primary planes at the start of an assembly model tree? It just feels like it would make life a lot easier!
What am I missing!!??
Comments
It's a bit of an Onshape quirk, basically the origin is "local" (i.e. doesn't "exist" in a higher level assembly and part origins don't exist in assemblies.
You basically got the answer already: mate connectors. You can literally hover over the origin, hold shift and orient the Z axis of a mate connector in any of the primary axes. If you are going to do this a lot it can be worth creating explicit mate connectors to make them easier to pick.
You mainly just need to get familiar with how mate connectors operate and how to quickly adjust them on the fly.
There are also other ways to manage it "upstream", some examples:
Here is a sample covering Eric's description. I was a little slow to make post. You can insert a surface to substitute for planes should you still not understand.
https://cad.onshape.com/documents/9a16e90e97ff0f49350854fe/w/8b1147e1bb96ce49e97d63d0/e/c9c5706e353183e5f69581ba
I'll keep trying to work with mate connectors… i have to say this one is frustrating. There's probably some technical reason why they don't just add planes to the root of an assembly - the origin is already there so it feels like this would be a pretty simple addition and would solve a lot of clunky work arounds. Like many of you I'm coming from Solidworks so that's my paradigm - I guess I simply need to unlearn this one. Ah well.
I favor @eric_pesty's first suggestion: explicit MC's owned by a part. They travel with the part wherever it goes, and can only be deleted within the PS where they were created. You are probably thinking about the symmetry of the eventual assembly when you're creating the part, so it's easy to add the MC's from the outset, and nearly as easy to return to the PS to add or adjust as needed .
I agree that the centre of the table top (implicit or explicitly added in the table part studio) is the cleanest mirror plane, because if the table top would move, the mirror would remain correct.
Otherwise, if it's just for sections, you could insert my public "Origin Mate connectors or Cube" at the top of your tree and mate/fix it to the origin.
the subassembly is configurable: you could choose to add the cube, or just the X/Y/Z mate connectors and you'll always have those to click.
I usually go the way Jelte described. You need to put one fixed part into your assembly first thing anyway. So why not mate it a mate connector and three planar surfaces?
I don't see why it would be bad to anchor the reference geometry to the origin. If it was owned by a part, it would move along with the part, as Edward pointed out, but that ain't necessarily a good thing. One would have to know in advance, which part will be the one, right? And then, every part may have it's own origin, that's only fair. If I want a reference in my assembly, I usually want it on the origin of the assembly, for all the parts or subassies to get positioned. And then we have assembly mirror: I can use it on a face of any part I like, but if I want to mirror the assembly as such, it's got to be the origin.
S, I usually use a kind of colour coded triad that looks like this and can be configured in currently three most common sizes:
https://cad.onshape.com/documents/96376d99360453c9de2818d5/w/bb399c6a9ca4dc119b98ab5b/e/597615ed102b15cf0e01db4d?configuration=List_zWIQeoGtq8ExSJ%3DTriadSize&renderMode=0&uiState=69314d8d66f3f1ac696dc8eb
It's well worth the effort to learn working with mates. I went through the same issue when transitioning from other CAD programs, but in a relatively short period of time I got used to OS methods and havent looked back. The mate connectors are quite flexible once you get used to them and require less input and less mates than previous CAD. You won't miss having default planes.
https://learn.onshape.com/courses/introduction-to-onshape-assemblies
https://cad.onshape.com/help/Content/mateconnector_a.htm?Highlight=mate%20connecter
After 9 years and nearly 6000 hours of Onshape I keep running into things that would just be made simpler if assemblies just had planes, but I don't mind too much since you can drop a mate connector on the origin and orient it to any of the planes you'd use anyway. The bigger challenge is that assembly origin doesn't would exist in higher-level assemblies. This matters even more now that assembly mirror exists. If you mirror about a mate connector on the origin it'll come apart in the next assembly up, which means that you need some actual geometry to either own a mate connector or just be the mirror plane. This could use some streamlining.
The Onsherpa | Reach peak Onshape productivity
www.theonsherpa.com
@EvanReese , @eric_pesty
I hate the idea of burying phantom surfaces or parts in my assembly just so I have a piece of geometry to select - that seems like a huge kluge.
Eric you said "You can literally hover over the origin, hold shift and orient the Z axis of a mate connector in any of the primary axes".
What am I missing when I try to do this???? This is one of the things that is making this very difficult - I must be doing something wrong because when I hover over the origin and hold the shift key down absolutely nothing happens - no matter what I do the Z axis ends up pointing up? I'd send a video of me doing this but you'd have to take my word that I'm desperately pressing the shift key and nothign happens.
What am I doing wrong?
Dave
The hover/shift thing only happens while you’re in the process of creating an implicit or explicit mate connector.
Simon Gatrall | Product Development Specialist | Open For Work
@S1mon - I'm sorry I'm confused - what is there OTHER than an implicit or explicit mate connector?
I am familiar with mate connectors that are explicitly created as an independent feature - and mate connectors that are created "on the fly" when I select geometry as assembly references. What am I missing?
Bottom line - I'm still struggling mightily without access to the three primary planes in assemblies. A previous response to this post said "just create mate connectors that you can use instead of the planes"
So I'm trying to "build" three mate connectors centered on the origin with the Z axis facing the three primary directions. Is there a way to control which way the Z axis faces when I select the origin as a reference point?
All of this feels like a pretty clunky work-around for just not putting the three primary planes in the root of an assembly. I'm trying to play along and learn what the Onshape engineers had in mind but it sounds like people are building phantom geometry they're sticking into parts which also feels like a bandage.
If there's a better approach I'm all ears and willing to try to learn.
I have to ask.. Why do you need three z axis?
… I suspect it is so as to use each MC as a plane to select for things like section views or assy-mirrors or whatever. You can't section or mirror on an MC's X or Y-Plane. Therefore, it takes three Z-Planes.
I'm all for assy-planes.
Ahh. Ok. That makes more sense. Thank you.
@martin_kopplow nailed it - I was trying to do an assembly mirror which would be a lot easier if there were planes in an assembly. But there aren't. So someone said - just use mate connectors but unless I'm missing something, if you do an assembly mirror around a mate connector it mirrors on the XY plane. I would be great if you could select which of the two axis on the mate connector formed the plane you want to mirror about but that doesn't seem to be possible.
So I am trying to create three mate connectors at the origin - each with the Z axis pointing in one of the three orthogonal directions. But I struggle to control which way the Z axis points - apparently you can toggle the shift key in some fashion and control the direction of the Z axis but I don't know how to do that.
Others appear to create some pickable geometry like three surfaces or a cube and mate that to the assembly first so they have something to pick on - I should probably do that but it feels like a crude work around - I'm trying to understand what the Onshape engineers had in mind so I can improve - they're smart people so there must be a workflow I just need to learn.
The easiest way to create 3 MCs at the origin is to make one, then hide it. Make another one, rotate it 90° around the X-axis, then also hide it and make a third one, rotate it around the Y-axis. Show them all.
There is reasoning that there should not need to be things like planes in an assembly, because in theory, all parts in an assembly are referenced to the fixed base part. I don't see, though, why that base part, which could in theory be wherever we put it, shouldn't be accidentally positioned such as to align with an origin or basic plane(s) if that made sense. That made sense in real life before, but at least since we have assembly mirror, it cannot be denied any longer.
In some trades, such as automotive, even assemblies have an origin (depending on brand it is usually in the center of the front axle) and so they don't stricktly require a fixed base part, because subassemblies can be directly referenced to the origin. That also allows later edits, even exchanging that base part of any assembly without f'ing up the whole model structure. There should definitely be planes in assemblies.
@dave_franchino
"apparently you can toggle the shift key in some fashion and control the direction of the Z axis but I don't know how to do that."
Here's another way: Open the assembly in isometric view. Place a mate connector at the origin and confirm . It shoud show Z axis up. Confirm and hide the MC. Place another mate connector at the origin. Check "move" and toggle "rotate about X". Enter 90 degrees. Confirm and verify that Z axis is pointing to front. Hide and place a thirfd mate conntector- this ime rotate around y by 90 degrees. Confirm and verify that Z axis is pointing to right. You may wish to name the mate connectors.and keep them hidden until you need to use in a mirror or pattern.
I see this seems to be going around still. Here is a sample using nothing but implicit mate connecters. The implicit mate connecters are easily adjusted to accomplish most things I need including orientation of the x-y plain and offsets.
Select the mate connector symbol in the main dialog. In this case I selected the mid point of long table edge and adjusted z position by 2". The previous mirror is just the mid point of the short edge. The original leg was fastened to a corner with some adjustment. There are several implicit mate connecter on all parts. If you need the center of a hole or the like. To select open spaces like a hole, hover over the near by surface then hold the shift key and the hole center will will become selectable. This work flow covers more than 95% of what I need without including extra parts or surfaces or explicit mates. Note that I draw the main part relative to the origin so that it can simply be inserted and fixed. When necessary the methods described in previous posts will work as well for nonuniform shapes and the like.
Working from 3 planes is the method I started with before OS and always required 3 separate mates to accomplish what OS does with one apparent mate. Unless there is motion involved The bulk or the mates are simple fastened.https://cad.onshape.com/documents/ee106a4c7c847fc384cd0e86/w/e1b22d03a4ef5baf9542c87d/e/f14327664beeb4b80b92e4ef
OK, I hope I'm not beating a dead horse here - just trying to get better at onshape which is an awesome product and one that I'm a huge fan of - just trying to unlearn some old habits I guess.
Please forgive the simplistic model - I'm sketching out a quick grow chamber for my wife's native plant garden as a way of exploring how to better design with assembly context. I'm slowly getting the hang of it but having issues with this highly symmetrical design where parts are reused. I'd love to use assembly mirrors to keep my model tree clean and reduce the amount of mates - As you can see this part is symmetrically mirrored around the center of a base. I could use implicit mirrors on the side edges but I've chosen to create mate connectors at the center facing the front and side.
Here's my latest struggle. When I create an assembly mirror in the Frame Assembly subassembly it works fin for mirroring parts….
But when I assembly that subassembly into the next level up, suddenly the mirror is erroring out - I'm getting a "mate is not consistent" error.
Is this a bug or am I doing something wrong here???
It's not worth an incredible amount of effort to debug this - I can fix it by simply abandoning all my assembly mirrors and just manually reassembly all the parts even though they are symmetrically used. But if there is a fix or I can learn something that would be great as well.
https://cad.onshape.com/documents/11b27c53d4fb1dc17dc08e1d/v/635fcd08ef909b555fe76fa9/e/ce31216f081ebfd60700a627?configuration=default&renderMode=0&uiState=694f0912fc34084a7c6aae88
This error has something to with having created some in-context design btw… Something about my context design is messing things up…
If the left and right side structures of your grow chamber are symmetrical, I'd recommend reflecting that in your assembly structure. Only design the right side insert that, and then apply assembly mirror to the whole side frame subassembly, instead of individual parts. That'll get you around lots of confusing dependencies. In-context design would then happen only inside the side frame subassy, and not interfere with the top level assembly mirror.