Welcome to the Onshape forum! Ask questions and join in the discussions about everything Onshape, CAD, maker project and design.

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.

INTERFERENCE DETECTION

MaxiMaxi Member Posts: 1 PRO
Hello,
is there a tool for  Interference Detection in On-Shape similar to the one in SolidWorks ?
«1

Answers

  • owen_sparksowen_sparks Member, Developers Posts: 1,828 PRO
    Not yet.  But things are developing quite quickly.

    Owen S.
    Production Engineer
    HWM-Water Ltd
  • shashank_aaryashashank_aarya Member Posts: 265 ✭✭✭
    edited October 2016
    @Maxi At present the available interference detection is not exact as in Solidworks but as a work around you can see the interference in section tool itself. Areas which are intersected are highlighted in red color. You just need to turn the section view on from small cube below the bigger view cube and then drag the manipulator arrows to see the section and interference if any.
  • viruviru Member, Developers Posts: 619 ✭✭✭✭
    edited October 2016
    @Maxi, User can check interference by activating section view from right clicking on view cube. User cannot see amount of intersection from this tool.



  • TimRiceTimRice Member, Moderator, Onshape Employees Posts: 147
    As others have said, there is currently no support for interference detection, though it is definitely on the roadmap!
    Tim Rice | PD | Support | Community
    Onshape, Inc.
  • JonaJona Member Posts: 1 PRO
    Please, please, please add this feature!
    It's super frustrating to still have to eyeball it via the cross-section tool after so many years.

    Ideally, an Interference Check button would do a live calculation of the current assembly, and display a list of volumes that are the intersection between any two parts. Clicking on any intersection should zoom to it, and make all other parts transparent. Finally, there should be options to "Approve" interferences that are due to imperfect models, to "Flag" interferences that will prevent a release without the interference being eliminated (via redesign) or approved (via review).

    Thanks for all you do.
  • AuroraRonAuroraRon Member Posts: 98 PRO
    TimRice said:
    As others have said, there is currently no support for interference detection, though it is definitely on the roadmap!
    That's a long road map! Its been two years since the post was made.  
    Here is an example of some interference and what I do.

    Use section views and keep editing it. You must save the view or it shows the face as orange and you don't notice the red interference. That's the first image.  In the second image, its a closer look but you will notice the interference is in a different shade of orange.  In the third image, I've saved the section view. Now you can see it in red.  It is a lot of work!







  • john_mcclaryjohn_mcclary Member, Developers Posts: 1,313 PRO
    to be honest, a separate interference detection is a waste of time. The section tool is lightning fast and accomplishes the same thing.

    I haven't used ID (tried it a few times in SW, but it usually is a long list of fasteners) Found it much easier to pay attention to what i was doing the first time ;p jk

    But really, it is a pretty clear image even looking at that photo on a cell phone screen. What else do you need it to do? Should the section view draw a large red circle around those also?
    Maybe it could me an opiton to turn the circles on and off from the plane selection window?
  • owen_sparksowen_sparks Member, Developers Posts: 1,828 PRO
    edited October 6
    I wonder if it could be as simple as a Boolean subtraction loop of every part from every other part and see if the mass changes?  ICE, copy in place, featurescript, done. Nothing visual need just an output if ok or interference detected.

    Would then need to determine where the interference was. Similar loop with Boolean intersection loop? Show the ghosted ice view with the solid intersection parts under it and we can see the locations of the interference.

    O.S.
    Production Engineer
    HWM-Water Ltd
  • ilya_baranilya_baran Onshape Employees, Developers, HDM Posts: 862
    @owen_sparks
    Something like this?  https://cad.onshape.com/documents/2ee680cb5e9314e2b06e9f94/v/547b09709575a33c24a3c5f0/e/7b52f0ffc178ad83f6810685
    To use, just create a new part studio in-context, add this feature, and select all bodies.  Also works in a part studio without in-context stuff.


    I'm not sure what the best UX is -- how to report interference, what to leave, etc. -- this is just a guess (i.e., this feature deletes all bodies that don't interfere) so I'm looking for improvement ideas.
    Ilya Baran \ Director of FeatureScript \ Onshape Inc
  • owen_sparksowen_sparks Member, Developers Posts: 1,828 PRO
    edited October 7
    Howdy @ilya_baran
    Firstly let me ask you a question? Was this fun?
    If yes, then OK, otherwise please ignore anything I say at the weekend, you folks deserve a break!  :)
    Nope, not something like that, exactly that, that's perfect! In 100 lines of FS you've created a feature that is useful today.  B)
    I'm not sure what the best UX is -- how to report interference, what to leave, etc. -- this is just a guess (i.e., this feature deletes all bodies that don't interfere) so I'm looking for improvement ideas.
    OK. suggestions...

    Before PT was kind enough to visit I'd have come up with ideas that would take a dept. a month to write, so I'll limit to stuff that is achievable and can be iterated upon.  I'm trying to think of stuff now that can be built with existing tools, or small additions to them, not blue sky stuff.

    Short term improvements:-
    (a) Option one is don't change a thing, this is useful today exactly as it stands.
    (b) Name the new bodies something helpful, like "interference Solid", and perhaps the name of at least one of the original parts that it was created from. 

    I wasn't thinking big enough.  Now you've done the finding it can also be used for the fixing!  Squirt the new bodies back to the assy, another ICE to boolean them away from whatever part caused the interference and you've not only found the interference but you've fixed it too!!

    Mid term improvements:-
    (c) We have a part property "Exclude from BOM", I propose a similar one "Exclude from Interference Checker" that will allow us to suppress false positives from stuff that is meant to interfere. Standard content comes to mind.  This would have a checkbox in the feature UI as we might want to show that interference after all, to see we have the right size bolts for example.  Perhaps show "expected" interference in green solids and unexpected in red?

    Long Term:-
    (d) Add an icon to the or right click option in the assy to create the new ICE studio, call the FS and populate it with all the parts from the assy. (old topic so I won't bang on about it but we want an "add everything when you rebuild option" not just a "add the part I clicked on when i first ran the feature" option.  A bit like adding a live part studio to an assembly not just what was in it when we first clicked on it.)
    (e) Be able to accept contexts as a parameter of the feature.  Thinking of the folding step stool example used in your webinars...  We have one context for open, one for closed and feed them both into your feature.  This creates the solids to subtract from the tubes to allow it to fully open or close without any sketching, extruding etc and it's still fully parametric.  This is so cooool! 
    (f) Get some sleep.
    (g) OK getting carried away now. Perhaps have it automatically run as a background process in any new assy built, with a screen indication if there is interference?

     Right, enough waffle from me, I'll just say thank you again, and leave you in peace for a while.

    Cheers,
    Owen S.
    Production Engineer
    HWM-Water Ltd
  • owen_sparksowen_sparks Member, Developers Posts: 1,828 PRO
    edited October 7
    One more for the long term integration, expanding on the "Exclude from Interference Checker part property".  Better make that a face property, not a part property.  We want the shaft of a bolt to interfere, but not the head, or the end to bottom out. 

    Just goes to show that there is no problem that can't be made more complicated by thinking about it.

    Cheers,
    O.S.
    Production Engineer
    HWM-Water Ltd
  • AuroraRonAuroraRon Member Posts: 98 PRO
    That's a cool script.   Wish that would work for sheetmetal and in assemblies.  Hopefully something we will see in Onshape one of these days.
  • owen_sparksowen_sparks Member, Developers Posts: 1,828 PRO
    edited October 7
    @AuroraRon

    Good news, it does, and you can  :) :smile:

    https://cad.onshape.com/documents/e6714096ca4b2697b60a4fa8/w/179874f12c9ade40d5dd8880/e/3f26f4443eab2dd764d2577b


    At least from the assembly.  I couldn't get it to cooperate from an active, finished, or copied in place sheet metal part, but from the assembly all was good :+1:

    Cheers, Owen S.
    Production Engineer
    HWM-Water Ltd
  • brian_jordanbrian_jordan Member, Developers Posts: 110 ✭✭✭
    I can't open this @owen_sparks, is it public?

  • owen_sparksowen_sparks Member, Developers Posts: 1,828 PRO
    edited October 7
  • AuroraRonAuroraRon Member Posts: 98 PRO
    Can you have a look,   https://cad.onshape.com/documents/91068b2c49a15b3458a5f687/w/4b32fbed070672ff1aef4ac1/e/3008655d9f8ad92ff4968d95
    I don't see how to add the script in an assembly, what am I missing please. 
    Your example works and its amazing.  Very nice, thanks!
  • owen_sparksowen_sparks Member, Developers Posts: 1,828 PRO
    Hi @AuroraRon, the script works in a partstudio, but that partstudio is an in context edit of the assembly. Does that make sense? If not I'll have a look at your file in the morning (Nearly midnight in the UK so of to bed...)
    Cheers Owen S.
    Production Engineer
    HWM-Water Ltd
  • owen_sparksowen_sparks Member, Developers Posts: 1,828 PRO
    jeez, if anyone has a spare memory I can borrow that'd be great!!
    Production Engineer
    HWM-Water Ltd
  • AuroraRonAuroraRon Member Posts: 98 PRO
    Hi @AuroraRon, the script works in a partstudio, but that partstudio is an in context edit of the assembly. Does that make sense? If not I'll have a look at your file in the morning (Nearly midnight in the UK so of to bed...)
    Cheers Owen S.

    So in an assembly I can right click one part and edit it in context. There I can add the Interference Check feature script. But selecting the only part I can, results in an error because "active sheet metal models are not allowed"


  • mbartlett21mbartlett21 Member Posts: 1,160 EDU
    @AuroraRon
    Use the create part studio in context toolbar button
    MB (I make FeatureScripts: view FS)
  • owen_sparksowen_sparks Member, Developers Posts: 1,828 PRO
    edited October 8
    Then add all the parts to Ilya's feature that you want to check interference between, not just one.
    Production Engineer
    HWM-Water Ltd
  • mbartlett21mbartlett21 Member Posts: 1,160 EDU
    Or select "All parts" on @Jake_Rosenfeld's feature

    MB (I make FeatureScripts: view FS)
  • AuroraRonAuroraRon Member Posts: 98 PRO
    Got it. Thank you everyone, it works fine now.
    What an incredibly useful feature.  Well done! 
  • owen_sparksowen_sparks Member, Developers Posts: 1,828 PRO
    Glad you're sorted out.
    Owen S.
    Production Engineer
    HWM-Water Ltd
  • ilya_baranilya_baran Onshape Employees, Developers, HDM Posts: 862
    Thanks for the great feedback!  A couple of things:

    V3 should work on sheet metal also and parts are named "Interference volume" -- naming them in terms of other parts is not possible with FS changes alone because FS can't access current part names.  For the same reason "excluding" is not easy to add based on properties. 

    For exclusion, that's why I made it selection-based, so you could just not select it, or you could have a custom feature tag stuff with attributes...  Neither is ideal.  I'll think about this further.

    I totally forgot that Jake wrote a similar feature a few months ago -- https://cad.onshape.com/documents/4ef9d7bf5c04de6c159e6fb0/w/50103cbdb65f20d04d6f68f1/e/8dba900c665b639f1b1bab53 with slightly different design decisions.

    Finally, please keep in mind that this is a workaround -- we intend to have a more native interference checking solution in the future.

    Even more finally, of course this is fun! -- the whole point of being at Onshape is getting to improve everyone's design experience.  Quick solutions to unblock useful workflows (like this) are very satisfying.

    Ilya Baran \ Director of FeatureScript \ Onshape Inc
  • owen_sparksowen_sparks Member, Developers Posts: 1,828 PRO
    Very nice @ilya_baran; works as advertised on active or finished sheet metal. :+1: thanks for the update.

    Final suggestion I'd have is if one deselects both "Show colliding bodies" and "Show intersections" then the feature regenerates but doesn't give any indication that there is interference.  (Dumb operator usage I grant you but still possible.)  I might change the check boxes to a pick list with show one, show the other or show both options. 

    Final, final suggestion:  Typo in the feature name, it's currently an "interfence checker" not an "interference checker"
    annotation { "Feature Type Name" : "Interefence Check" }

    Final, final, final suggestion:-  Does a FS have access to the name of the feature?  Presuming we have a feature in our tree called "Interference Check 1" can it change it's name based on the result to "Interference Check 1 - PASSED" or "Interference Check 1 - FAILED" based on the result?

    Cheers,
    Owen S.




    Production Engineer
    HWM-Water Ltd
  • AuroraRonAuroraRon Member Posts: 98 PRO
    Here's a suggestion.  How about adding a tolerance value?   Not only is contact in the assembly important so is tolerance. It would be just as helpful if we could see it.  Having that would be sweat :-)
  • ilya_baranilya_baran Onshape Employees, Developers, HDM Posts: 862
    @owen_sparks
    So V4 fixes the typo you pointed out.  Rather than renaming the feature automatically (which could be done somewhat, but has drawbacks, such as the user wouldn't be able to rename the feature manually) and rather than doing a dropdown, I added another option, to warn if interference is found -- the feature turns orange if that option is checked and a collision is detected.  If none of the checkboxes are checked (i.e., the operator error you described that could cause interference to be missed) the feature errors, turning red.

    Ilya Baran \ Director of FeatureScript \ Onshape Inc
«1
Sign In or Register to comment.