24 Replies Latest reply on Jun 6, 2017 9:57 PM by John Willett

    Breaking Links between In-Context-Designed Parts

    John Willett

      I have two assemblies in Solidworks Premium 2017 (or 2016) under Windows 7 SP1, both of which used in-context design (actually a master-sketch part) to specify certain dimensions and relative locations of many of their parts.  I want to insert one part (or perhaps more) from the "source" assembly into the "destination" assembly while preserving all of that part's original dimensions.  Is there a preferred way to break the in-context links while preserving the dimensions of the desired part for clean insertion into the destination assembly?

       

      So far I've been floundering around, for example, inserting the entire the source assembly as a sub-assembly into the destination assembly and then deleting the parts I don't want.  This is messy, however, as it preserves the master sketch from the source assembly to define critical dimensions of the part I need.  It results in a cumbersome new assembly with unnecessary parts and links.  There must be a better way... -- John Willett

        • Re: Breaking Links between In-Context-Designed Parts
          John Stoltzfus

          Just insert and mate the parts as you need them, the only thing that happens will be that when you edit the parts, you need to edit in context, that way the original relations are what the need to be. Don't delete the original relations.

            • Re: Breaking Links between In-Context-Designed Parts
              John Willett

              >>Just insert and mate the parts as you need them... Don't delete the original relations.<<

               

              John -- Just to make sure I understand you, in the "destination" assembly I should insert the desired part(s) from the "source" assembly (not even open and in another directory), and it will preserve its dimensions (unless they are changed later in the source assembly).  Right?  Or do I have to keep the source assembly 'available' to the destination assembly somehow?

               

              I wanted to separate the part entirely from the source assembly so that it has no 'strings' attached.  I've seen (I think) that a part retains its dimensions even if it is separated from its assembly -- name changed or something like that -- although it may still have some external links.  I was hoping for a simple way to make these dimensions 'local' while eliminating the broken links somehow.  Not feasible? -- John Willett

                • Re: Breaking Links between In-Context-Designed Parts
                  John Stoltzfus

                  Not clear on your "Design Intent"  - you may be over complicating things a bit

                  Just to make sure I understand you, in the "destination" assembly I should insert the desired part(s) from the "source" assembly (not even open and in another directory), and it will preserve its dimensions (unless they are changed later in the source assembly). Right?

                  That is correct

                  I wanted to separate the part entirely from the source assembly so that it has no 'strings' attached. I've seen (I think) that a part retains its dimensions even if it is separated from its assembly -- name changed or something like that -- although it may still have some external links. I was hoping for a simple way to make these dimensions 'local' while eliminating the broken links somehow. Not feasible? -

                  Did you consider using Pack & Go for your first assembly (A) to make a new assembly (B)

              • Re: Breaking Links between In-Context-Designed Parts
                Hardik Patel

                Hello,

                 

                Simply just insert the part/assembly (using the mates i.e., coincide,parellel,concentric etc). Its easy to use. Just go to Inser>part/assembly.

                • Re: Breaking Links between In-Context-Designed Parts
                  Timothy Taby

                  This is exactly why I do not use in context designed parts.  I will use in context features and relations to make a part but then break them right away so the parts are separate from the assembly.  You can do what John suggested, open the part and then place it in the new assembly, the problem is that if the original assembly is changed then that part could be changed as well.  So you my open the new assembly one time and when it rebuilds it uses an updated part  and you don't know it, maybe it won't effect anything, but it just might.  The in context assembly controls the part. 

                    • Re: Breaking Links between In-Context-Designed Parts
                      John Willett

                      >>I will use in context features and relations to make a part but then break them right away so the parts are separate from the assembly.<<

                       


                      Timothy -- This is exactly the piece that I'm missing.  How do you break these relations and make the dimensions localized so that there are no external references and you can modify them directly in the part?  (But Vladimir and/or Roland may have just answered this.   I'll have to try their methods...  Thanks to all!) -- John Willett

                        • Re: Breaking Links between In-Context-Designed Parts
                          John Stoltzfus

                          Bare with me - But Why would you want to do this?  Top down modeling is key for ease of changes,and to design components in context just to break all links later boggles my brain the wrong way.  Top down modeling is designed so that you can work on a singular parametric assembly, ease of change etc..

                           

                          If you plan to do this on a regular basis then maybe you should re-visit your Design Intent and design from the bottom up - rather then top down in context modeling..

                           

                          Interchangeable components should not be modeled Top Down, they are an independent component used in multiple projects, products such as hardware or fabricated mounts that are mounting plates for interchangeable components..

                            • Re: Breaking Links between In-Context-Designed Parts
                              Timothy Taby

                              I like designing in context for ease of making things match up, but I don't like it when I make a change to the assembly and a part that is defined in context changes and it used in another assembly or somewhere else.  This is why I go and break the relationships.  It's ok if you never plan to use the part anywhere else, but a lot of our parts are in multiple assemblies and you can't have it changing without it being documented, which happens when you design in context.

                              • Re: Breaking Links between In-Context-Designed Parts
                                John Willett

                                >>Bare with me - But Why would you want to do this?<<

                                 

                                John -- I take your points.  I'm relatively new to Solidworks and completely self-taught, not being able to afford professional training.  Long story, but his might answer your question:

                                 

                                1) I thought I had arrived at a final design and recreated it from scratch with a master sketch, both to simplify it and to learn how that process worked.

                                2) I then wanted a reduced version of the model for a simulation; so

                                3) I did a P&G, master sketch and all, that I could simplify by deleting some parts.

                                4) The simulation failed, throwing me back into the preliminary-design phase; so

                                5) -- and here's where I probably got myself in trouble -- I further simplified step 3 in yet another P&G, still keeping the master sketch, to re-design some of the parts separately.

                                6) Having obtained parts that seemed promising (the master sketch didn't cover all the details that I changed), I wanted to replace the new parts for the original ones in (3) for another experimental simulation.

                                 

                                I'm sure there was a more systematic way to go about this, but I wasn't sure where I was going and took what seemed the quickest approach to get a simplification that I could test in (6), hence the original question. -- John Willett

                                  • Re: Breaking Links between In-Context-Designed Parts
                                    John Stoltzfus

                                    Sure sounds like stuff I would have worked on in the past - I came up with a rule of thumb when designing "New" products that have never been made, an average of 4 - 5 assemblies that get trashed before the final drawing package is finally approved for production.  So keeping that in mind, yes - Pack & Go is the way to go, but always keep the original start and all subsequent models.  After you did the Pack & Go, then open those files and work from there, but do one thing in the design process, when you open the main assembly suppress all the components, edit the Master Sketch and unsuppress each item and make sure your links are still connected etc..  - New design is fun, I've done quite a bit of it over the years..  But the excitement can be hampered with the model acting up...

                                • Re: Breaking Links between In-Context-Designed Parts
                                  Timothy Taby

                                  So you edit the part in the the assembly and create a sketch or hole that is related to some other part in the assembly.  Open up the part that has the in context feature in it (you can tell the in context sketch with the -> after the sketch name) and edit the sketch of the in context feature (or edit the hole and go to the position tab).   

                                  Sketch.png

                                   

                                  Once in the sketch go to display/delete relations (I have an icon on my toolbar for this) under tools/relations menu.  Set the drop down box to "External" and then delete all.  Now you can add dimensions and relationships to your sketch to re-constrain it to this part.  As long as you don't drag the sketch it will match what you had in the assembly.

                                   

                                  sketch2.png

                                    • Re: Breaking Links between In-Context-Designed Parts
                                      John Stoltzfus

                                      and then.......

                                       

                                      Someone else opens the "Assembly" and changes the slot, now what??

                                       

                                      Really I don't care how you guy's do your designs, I'm on the outside looking in and I cringe when I see this type of designing, (not saying it's my way or the highway), it's just based on the overblown hype that SolidWorks gets us to design things that don't work in the long run, (SW - Yes we can do Parametric Designs), but (SW - We also made it that you can Break All links), - Me- scratching my head - so now.., wait a minute let me think this through, ok, Me - so you sold me on parametric designing and now my design is static, oh, no more hair on my head...

                                       

                                      Believe me I had a lot of bad designs and still struggle with some today..

                                    • Re: Breaking Links between In-Context-Designed Parts
                                      Paul Risley

                                      John to break links:

                                       

                                      Open part.

                                       

                                      Right click on the part number in the tree.

                                       

                                      Choose option "list external references"

                                       

                                      From here a popup window comes up which will give you the option to break links.

                                       

                                      Once done, it cannot be undone.

                                       

                                      I neither agree nor disagree with this method, it is your workflow and only you can decide if it is the right thing to do. Or your Cad supervisor if you have one.

                                       

                                      Personally if I open a model and there are a bunch of "x"'s next to features I wonder why someone did it. The problem is that there is no record of the design intent at this level anymore. The link to whatever actually drove that dimension is gone.

                                       

                                      Good luck.

                                        • Re: Breaking Links between In-Context-Designed Parts
                                          John Willett

                                          >>Choose option "list external references"... which will give you the option to break links. <<

                                           

                                          Paul -- Can you (or anyone) explain what this actually does?  "Help" is no help, and the best I can find in "Knowledge Base" is the following:

                                           

                                          "S-02310: How to prevent an external reference from updating?

                                          ...In the external references dialog box, click "break external references" or "lock external references". Note that breaking the references is an irretrievable task [emphasis mine]."

                                           

                                          Does this mean that, with either 'break' or 'lock,' the relations/dimensions defined by those external references become permanently fixed and cannot be changed either in the new part or remotely?  If so, then this satisfies my short-term need.

                                           

                                          Timothy's suggestion appears more flexible in that I can re-define the relations/dimensions locally in the new part, but it's also more work because it requires going back and figuring out how the part was originally designed in order to apply the correct relations and dimensions.  (I seem to have found a short cut for some of this by first adding local dimensions and forcing them to be 'driving' and/or by adding local relations, thereby creating conflicts that should all be resolved by deleting the original external relations.)

                                           

                                          I still haven't found, however, a straightforward way to convert all external relations/dimensions into local specifications that remain editable but have the initial values defined by the original part.  Maybe this is simply not possible? -- John Willett

                                            • Re: Breaking Links between In-Context-Designed Parts
                                              Paul Risley

                                              John,

                                               

                                              Break the external links. This "fixes" all geometry in your part.

                                               

                                              After that the referenced geometry will have an x behind it in the tree instead of ">".

                                               

                                              If you open a sketch that has the link broken it will be fixed in place. You can unfix and use dimensional and relation constraints on it like any other sketch.

                                              • Re: Breaking Links between In-Context-Designed Parts
                                                John Willett

                                                >>(I seem to have found a short cut for some of this by first adding local dimensions and forcing them to be 'driving' and/or by adding local relations, thereby creating conflicts that should all be resolved by deleting the original external relations.)<<

                                                Update:  I discovered what appears to be an easier approach (for sketches, at least).  First delete all in-context references and then use "Fully Define Sketch" to bring all of the implicit dimensions and relations into the sketch explicitly.  (I'm told there is no way to get current SW versions to do this for you automatically.) -- John Willett

                                        • Re: Breaking Links between In-Context-Designed Parts
                                          Roland Schwarz

                                          When I use top level master sketches, I create a "sub-master" sketch as the first features in any dependent components. Then any features in the components are linked to the sub-master, not directly to the top-level master.

                                           

                                          This way, there are fewer external features to manage. I can also delete all external references to the sub-master and the entities stay put.

                                           

                                          http://esoxrepublic.com/models/Hinge.zip

                                          • Re: Breaking Links between In-Context-Designed Parts
                                            Vladimir Urazhdin

                                            RMB on the part. On drop down menu select "Make Independent":

                                            virtual part.JPG

                                            Then Save As and assign a new name. Proceed with inserting a newly created and independent part.

                                            • Re: Breaking Links between In-Context-Designed Parts
                                              Roland Schwarz

                                              I try to stack in-context relations at the top of the feature tree, so that they can be frozen with the freeze bar but leaving the rest of the model live.

                                                • Re: Breaking Links between In-Context-Designed Parts
                                                  John Willett

                                                  >>I try to stack in-context relations at the top of the feature tree, so that they can be frozen with the freeze bar but leaving the rest of the model live.<<

                                                   

                                                  Roland -- This is a new concept for me, and I don't really understand it; but would it help me with the problem of out-of-context references in an isolated part inserted into a different assembly?  I looked up "feature freeze" in SW Help and found the following:

                                                   

                                                  "Certain changes might cause frozen features to become out of date.

                                                  Examples:

                                                  • Changes to external geometry that is referenced by the frozen feature, such as features in another part in an assembly.
                                                  • Changes to equations that subsequently affect a frozen feature..."

                                                   

                                                  I don't know the implications of 'out of date' in a case like this, but it looks as though the 'rebuild indicator' might easily be triggered on my isolated part. -- John Willett