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.

Using part studio sketches in Assemblies

michael_klinemichael_kline Member Posts: 6
I have an assembly with 3 parts, Each in their own studio and imported. One of them has a sketch that is located and drawn according to several measurements off of that part. I want to use that sketch to cut the shape in the other two parts, but can not find any way to get the sketch to show up. I have been redrawing the sketch in each in-context cut, but wish to use the original sketch so that I can make sure they are all the same and also so that as testing occurs if I need to edit the hole I can easily just update all the in-context edits and move on.
Thanks for any help.


  • john_mcclaryjohn_mcclary Member, Developers Posts: 2,872 PRO
    can you derive the sketch in the part studio?
  • michael_klinemichael_kline Member Posts: 6
    edited May 2019
    I'm not sure what you mean by derive it. Do you have an idea about how else to do this?

    More info: there are two clamshells that come together and the third file is wrapped around them somewhat. The hole is in the wrap around into the center of the clamshell, so it affects both of the other files. The wraparound doesnot actually have the hole in it, as it is has no material in that area.
  • john_mcclaryjohn_mcclary Member, Developers Posts: 2,872 PRO

    It's another way to create contextual relations between part studios or documents.

    You can just derive your sketch into a part studio from another part studio; rather than using in-context from an assembly. Depending on your design intent.
  • billy2billy2 Member, OS Professional, Mentor, Developers, User Group Leader Posts: 1,452 PRO
    edited May 2019
    This is a very important discussion to have because it sets up how things are done. You're talking about a project structure and the back bone foundation on how things will scale and be controlled. To me this is everything and is overlooked in other CAD systems.

    There are too many people, companies & organizations that don't define project structures on how things are going to be put together and the ensuing mess is a nightmare. Many SW organization suffer from this and working with their data is a bloody nightmare. You should architect projects and standardize how things get done and then enforce the basic rules.

    One guy working at home may not be that big of a deal, but 2 guys working together? 30 engineers working at a company with a vault and no project structures is disaster. This is your typical SW & EPDM at larger companies, what a mess.

    It's very important to get this right.

    I'm a top down designer, I design in the assembly and control from the top level assembly down to the parts & drawings. Understanding your dependencies and how the references are established is critical to a well constructed project. Solid modeling is all about references and controlling how the references flow throughout your documents, assemblies & partstudios. You gotta get it right.

    I would do it "incontext" (designing in an assembly). My smallest projects start with an assembly that calls up various part studios. This is my basic building block. To me partstudio's create geometry and the assembly controls parts being created, even in at the simplest level. Everything I do has at least an assembly & a partstudio. Typically a lot of partstudios.

    You have 3 parts...... but one of these days you might have a dozen engineers and no time. This is when structure becomes your best friend.

  • john_mcclaryjohn_mcclary Member, Developers Posts: 2,872 PRO
    Derive would be more of a Bottom-Up work flow, do all the work in part studios, then push them into assemblies. which is the standard workflow we use here.

    @billy2 hit the nail on the head, it comes down to you and your company which direction you want to take. Either way we can lead you down the more efficient workflows however your design intent is needed to be captured.
  • brucebartlettbrucebartlett Member, OS Professional, Mentor, User Group Leader Posts: 2,042 PRO
    edited May 2019
    Top down is how I like to work, especially at the start of a project and use derive to make this a robust but live document. I normally will start with a layout part studio with just sketches and basic solids then derive those into the various development part studios where the actual parts are modeled. The various studios have to be planned out to ensure they don't get too big also as the project develops. I'll quite often have to keep coming back to the layout to add reference points in at the top level as required and send these to the various development part studios via the derive, this works really well as long as references are linked to the derived sketches so they follow as top-level changes. Derive between the development part studios is to be avoided as this will bring the document to its knees if rebuild has to go through multiple studios. This method keeps the document live and enables overall changes to be made from the top level studio in early stages of a design or a design with multiple sizings or areas that have to be adjusted and keeps away from non-updating in-context assemblies. I will also drop layout sketches in assemblies but these will be a reference only or used as a frame to mate stuff in the early stage of design. 
    Engineer ı Product Designer ı Onshape Consulting Partner
    Twitter: @onshapetricks  & @babart1977   
  • billy2billy2 Member, OS Professional, Mentor, Developers, User Group Leader Posts: 1,452 PRO
    edited June 2019
    @john_mcclary I'm sorry to imply your structure needs to change. I totally believe you know what you're doing.

    I'm working with a lot of people learning onshape and they're stuck designing everything in a partstudio. Good news is that it's easy. 

    The bad news is that it doesn't scale. I just finished an electrical enclosure that had over 100 downloaded components and there is no way this can be done in a partstudio. OK, it could be done, but why?

    I freak out about how well assemblies work in onshape and spend the time to put every downloaded part into an assembly so I can get it to move correctly. Then I start assembling these into sub-assy's, which don't stop at one level. My electrical enclosure is 3 levels deep and everything moves. Switches switch, clamps clamp & actuators actuate. My project is 4 levels deep with one top level. It's a simple overall structure. You open the enclosure door up and things move. The important thing is that this comes at no cost. Assemblies are free and we should be using them.

    I'm really wanting to build an automated piece of equipment. The more complex a piece of equipment gets, the greater the need for proper project structure.

    I think onshape will blow the doors off other CAD systems. 

  • billy2billy2 Member, OS Professional, Mentor, Developers, User Group Leader Posts: 1,452 PRO
    edited May 2019
    @brucebartlett Yes!!!!!

    Pro/E called your structure a skeleton and I believe catia does the same. I wonder if we could all agree that onshape has skeletons also? The beauty behind skeletons is that it makes it easy for me to understand what Bruce is doing and if I were to help Bruce, it'd take an hour to learn his structure and contribute to his design. I'd first find his controlling partstudios and study them. If he named them "skeletons", they'd be easy to find.

    Onshape is a "pro" CAD system. Pro Cad systems need skeletons. All it takes is a partstudio called "skeleton".

    Bruce I wish we lived in the same sector of the world. I'd totally come and listen to what you had to say.

  • romeograhamromeograham Member Posts: 415 PRO
    edited May 2019
    @brucebartlett @billy2
    I work this way also (Reference model in a parent Part Studio ("Skeleton" or "Master Model" or just "MM"). Then that is derived as the first feature in all child Part Studios. Developed this way of working over a long time in SolidWorks but Onshape's feature set make it better in many ways.

    However, there are a couple things that make this workflow (in Onshape) a bit of a challenge for me:
    • currently, you can't hide / show individual objects (planes / MCs / sketches) in the derived feature, so it's a bit of a chore to work with. Once they enable hiding / showing of individual objects it will be much better. That means that I tend to have fewer 'reference' features in the MM (the stuff that I derive into other PSs) because its an unwieldy mess in the child PS. 
    • my Part Studios seems to bog down really bad at around 150 - 200 features. This means that I really have to plan and break up the Part Studios a bit more than I would otherwise. However, if I do a good job of it, the whole document snaps along nicely.
    To make this work, you must be rigorous in defining design intent by referencing the Parent features in the child PS. If you get lazy and reference / constrain / dimension to other "local" (child) features, your original intent of controlling everything from the Master Model (parent) may not work as expected.

    When it's done carefully, it's miraculous how many features can be robust and withstand major dimensional changes to the MM.
  • michael_klinemichael_kline Member Posts: 6
    edited June 2019
    I ended up just making an in context reference for each side of the calm shell and redrawing the hole in question on each one. The solution is fine for this instance as that hole will not change more than once or twice- calipers will tell me pretty precisely how far off I am.
    So, to answer my own question from all the responses, no.
    There is no current function for showing and hiding individual pieces of a part studio tree in an assembly.

    To the rest of the discussion, I normally start with the pieces and then put them together in an assembly. This allows me to easily edit the parts and have them automatically change in the assembly as soon as I click save. Annoyed that there is no "update all/update in-context references through time (in the order created) until one fails" button.
Sign In or Register to comment.