Welcome to the Onshape forum! Ask questions and join in the discussions about everything Onshape.

First time visiting? Here are some places to start:
  1. Looking for a certain topic? Check out the categories filter or use Search (upper right).
  2. Need support? Ask a question to our Community Support category.
  3. Please submit support tickets for bugs but you can request improvements in the Product Feedback category.
  4. 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.

Assembly Update Context - Help?

Cache_River_MillCache_River_Mill Member Posts: 225 PRO
I made a box. The top, bottom, and back are constrained to the sides within a context. When I update the width of the sides, the other parts do not automatically update. I have to manually click each part and update the context. This will get very tedious when there are shelves, drawer slides, drawer pulls, hinges, etc...

One of the sides is set as the "Main Instance", this doesn't seem to help.

Is there a way to make the assembly automatically update each context?

Best Answer


  • john_mcclaryjohn_mcclary Member, Developers Posts: 3,878 PRO
    The in-context system is designed to require manual updates.

    If you want parts to automatically update, then use the derive feature in the part studio. Or draw multiple parts in the same studio.

  • Cache_River_MillCache_River_Mill Member Posts: 225 PRO
    edited January 2020
    I may go back to doing that. Thank you for the advice.
  • Cache_River_MillCache_River_Mill Member Posts: 225 PRO
    Would it be a reasonable request to ask Onshape for a Context Tree, similar to a "feature" tree? So that each context could be re arranged or automatically updated according to their order of operation.
  • john_mcclaryjohn_mcclary Member, Developers Posts: 3,878 PRO
    That sounds interesting.. write up an improvement request. I think that could be handy
  • billy2billy2 Member, OS Professional, Mentor, Developers, User Group Leader Posts: 2,009 PRO
    edited January 2020
    I agree; those parts all have a relationship to one another and belong in a part studio; unless you like the pain of incontext.

    I'm not sure I'd derive them in; I'd just create 5 parts in a part studio. 

    The whole idea of part studios is to quickly make related parts. Onshape has cleaned this up to make this happen.

    When adding holes; be sure to use "blind in last" to bore hole series. Can't do that incontext.

    Put a motor and slide in box and cut mounting holes incontext; move motor and have holes update. Now you're cooking with gas.

  • Cache_River_MillCache_River_Mill Member Posts: 225 PRO
    @romeograham - This is perfect, thank you for this idea! This will be a very nice package when it is done.

    @john_mcclary - I will create a request, this could be very useful for all users. Having the context as a one way one time update is not the Onshape way.

    @billy2 Your thinking small, I'm planning on using a twin turbo.

    Thank you all for the advice!
  • john_mcclaryjohn_mcclary Member, Developers Posts: 3,878 PRO
    edited January 2020
    @billy2 Let me clarify when I use derive over in-context or single part studio.

    1) Stop single part studio if there are more than a (5 ish) parts (more or less depending on complexity)
    2) You can start noticing slower regen times (it's probably too late, and you should break things up)
    3) There are too many in-context references to remember to chase with each edit (in-context should be in your face when it needs updating especially if there are 2 or more people on the project)

    For example:
    My most complicated and most successful use of derive:
    Every part's size {thickness, height, width, angles) and every hole {diameter, location, quantity) in this entire assembly is derived from:

    This funky mess:

    Including the holes up the spiral, the arms, and all the mounting hardware.

    So, for example this entire part is just 3 features, the rest is mate references and a couple of custom features to set the BOM information the way I need it.

    So if any angle, hole size, or hole location etc. changes. Then every part needs to also change not only hole locations, but also its overall shape and be aware if it's own instance count in the assembly. This really sounds like a candidate for "in-context" or single part studio... But... 

    If you can Image from the assembly above, how complex and time consuming it would be to update an in-context reference for each part. Or how slow the document would get if it was one part studio. (the single part studio approach was my first dozen tries in Onshape to model this, the regen times for updates early in the tree was exhausting... I really discourage using single part studio approach for more than a hand full of parts)

    by doing it this way, i was able to make a single part studio that had everything I need using patterns, transforms, etc. to form the output geometry. Then slice it up into pieces, then derive into there own part studios like a jig saw puzzle. Then boolean-union -> sheet-metal.  Now each tab can calculate in it's own sweet time. and I can keep working on other part studios making additional updates when needed while the more complicated parts are still  generating. (Take advantage of that sweet sweet cloud parallel processing architecture) The whole document moves fast. Enough so that the derive speed handicap is hardly worth mentioning... 

  • billy2billy2 Member, OS Professional, Mentor, Developers, User Group Leader Posts: 2,009 PRO
    John your projects are really nice and put together well.

    I'm lucky to have 3 related plates in a design and rarely use derived components. We design different types of stuff. Most of my designs are imported from other places so it's 3 plates holding all this other stuff.

    I rarely use derived to import a part into a part. Translating parts around inside a part studio isn't effective for me.

    I really don't understand why they pay me to assemble stuff to 3 plates since it's so simple. 

    Every company, project & engineer will have a different project structure. There isn't one way to do it.

    If you left your company, could the next guy keep the projects moving forward?

Sign In or Register to comment.