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.
Parts built in-context do not end up where expected when inserted
billyzelsnack
Member Posts: 87 PRO
in General
The above file should show you in "hip roll LR" part studio with "Context 1" of "Assembly" enabled.
Notice the two cube parts 16 and 32 and where they are relative to the other parts.
Click on "Go to assembly."
Zoom out so that you can see the entire model on a stick.
Try and insert those two cubes (Part 16 and Part 32) from "hip roll LR."
Why are the parts inserted upside down and at the origin? I built the other parts of "hip roll LR" this way and when inserted they positioned and oriented in the assembly as expected.
0
Best Answers
-
billyzelsnack Member Posts: 87 PROThe first thing I do is delete the initial part studio and do a "Create Part Studio in context" from the assembly and choosing the origin is the only option at that point. That initial part studio typically does not even end up with a context until after I have other parts that interact with it.This is a new workflow for me and I'm learning more little details all the time so I probably just did something dumb early on in that file and I am just going to chalk it up to learning experience. I'll close this thread out and if it shows up again I'll post again and try to build a simple minimal example.0
-
billyzelsnack Member Posts: 87 PROI figured out a way to get the insertions positioning where I expect them to again. All I had to do was create at the top of my feature tree (not sure if the top is required) a sketch with a single point at the "assembly origin" (which I happen to have that stick geometry at) and then add the sketch to the assembly and set it as the primary instance. This will pop the part studio origin to that "assembly origin" and from there the insertions will be positioned as expected. If you want you can change the primary instance to another inserted part from that part studio and then delete the single point sketch and insertions will continue to be positioned as expected. I feel a lot better knowing I can fix this issue when it shows up.0
-
billyzelsnack Member Posts: 87 PROI've had a few days now with the new context workflow and have not run into any problems so far. I also now think that my problem of parts not staying where I put them were due to an adhoc use of contexts without really being able to track all the regeneration relationships in my head. Even with the very simplistic and very intentional way I use them now I still can be surprised when a regen does not go exactly as planned but if do take a second and think about it it will make sense. That said, we will see if it stays that way as the document proceeds and all the specific details of how I created something are no longer fresh in my head.As for disappearing contexts I think I have this issue resolved as well. Just "paying the price" of using a fake part that is instanced in the hierarchy's parent has just made this problem go away and if it does show up in the future I think it is something that I will be able to fix. I still need to come up with a better naming convention though. Currently I have been calling that part in the parent the name of the Part Studio which is ok, but not great. However I am happy with naming the context of the assembly where I assemble a given Part Studio as "this."0
Answers
HWM-Water Ltd
I'd use 2 in-contexts and each hip n roll would have it's own primary view. One for each hip n roll. This will prevent the flipping you're experiencing. With 2 in-contexts, you won't have to understand primary views.
I don't like one context for a part studio and have experienced the same problems you describe.
Philip suggested a named position in the assy to help control the state for the incontexts, this helps. Most my in-context have to deal with mounting holes for gearboxes, motors and other items. If the context is based on a position when something can move, then save that position.
I'm thinking a context for each part. This is my new thinking and it's working so far. I have many contexts and could combine some if I put some thought into it.
I would change up your entire workflow. I'd have a part studio with everything in it. Not sure why you have 2 part studios. I'd have sub assemblies instead of part studios. I'd break your top assy into more manageable chunks. I'd start naming parts to avoid confusion.
One of the things that I do inside OS is to get the sub-assembly's to function using limit mate features. Punch each mechanism out in it's own smaller subassy. Then when they're brought into the top, those mates work. It's truly like building up something on a bench getting the subassy working and then bolting into the top. I've got some amazing mechanism designs using this work flow. Get the pieces working correctly and then aggregate them in the next level up. I've even made assignments in the higher level to further control motion. ie.. the sub-assy controls some aspects and then the top adds further control. I've never seen this in CAD before and think OS is great for this assy aggregate approach. It's the closest thing to assembling real life mechanisms and designs.
Your mechanism looks like a lot of fun to build up.
Me, I'd have one part studio, many working sub-assy's, multiple contexts and start naming your parts.
Wish I could help more, but I'm busy working trying to get my company to do the same thing I just outlined.
Now for the radical idea. When in an assembly, double click a part from the feature manager, this ghosts the assembly in the part studio. A context is not necessary for this behavior and most of the time it's what I'm wanting. I just want to see everything my part studio. Now for the 1,000 arrows flung into my back. When you create a context, you have to continually update for things to show correctly. Not true with double clicking. To me, double clicking is faster and in most cases this is preferred.
Now don't get me wrong, I'm an old time top down designer who's mastered project datum creation. Top down is everything for a piece of equipment. especially when assembling automated equipment. I mate shafts to shafts and let the CAD figure out how to update the mounting points. I never assembly a gearbox by it's mounting holes. I worry about the equipment functioning and can move things around easily based on functionality. I let the CAD handle the bracketing details. This, to me, is in-context.
I'm thinking you're wanting to break your project up to control it, yet you want to see everything. Try the double click and compare to the in-context. I think you'll like the double click method. Use part studios to control the relationship between parts that need to be related. In-context may be over kill.
After 4 years, I'm still changing up my work flow.
One thing that I'm doing is starting the assembly and part studio at the same time. I know I'm going to use them both eventually, so I just start that way. I use a lot of downloaded parts and deriving them into a part studio wasn't working for me. Double clicking between the 2 tabs is hard to explain, but it works and I'm not creating in-context relationships. I just want to see everything when designing parts.
If you come up with something new, please let me know
The set primary determines where the ghost will be placed. When editing many different parts, I was constantly changing the primary context to the part I wanted to edit. Instead, I began assigning a context to each part, therefore each part had one context and each part had a primary instance. The need to change primary context goes away. With this approach, there is no need to keep resetting primary context.
You know, if parts aren't related, they belong in their own part studio. With one part/ part studio you can have one context / part studio pointing to one part.
Confusing? yep
I'm still working it out looking for the perfect project structure, it's not 2nd nature to me yet, but I feel I'm converging on a workflow that understandable.
Including everything in one context, seems like if the parts are stationary and planar, then one context should do it. The problem I have is when things in the assembly move, which they do, the in-context is correct, the ghosting is not what I expected.
I have not dropped any context, they all updated.
I you want to share your model, I'd like to take a look: billc@rndengineering.com