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.

Help us build an awesome import updating system

ilya_baranilya_baran Onshape Employees, Developers, HDM Posts: 944

We are working on functionality that will allow users to update imported files while preserving the edits that they made on Onshape. This will be useful to those of you who work on CAD systems in addition to Onshape or collaborate with people who do.

For example, say a user imports this model and then edits it on Onshape:


If the user updates the import to the new file below, our goal will be to find the appropriate correspondences between faces, edges, and vertices, and transfer all the Onshape features (as well as mates etc.) to the updated model:

We would like your input on what types of updates should be handled. What are the most frequent types of changes you make on imported files? If you can, please post pairs of models (original, updated) which you think our correspondence algorithm should be able to handle.

Thanks!


Ilya Baran \ Director, Architecture and FeatureScript \ Onshape Inc

Comments

  • 3dcad3dcad Member, OS Professional, Mentor Posts: 2,421 PRO
    edited July 2016
    Perfect, you are always a step ahead as it was only yesterday when I posted this: https://forum.onshape.com/discussion/4313/replace-part-studio-subassembly-in-main-assembly

    For me the biggest thing would be assembly mates as I try to create additional design as separate parts around imported model to keep them separated and make it easier to update the import as needed.

    But if there will be such functionality, I would most likely drill some holes and create cut-outs to make models fit each other.

    It would be amazing if you could recognize duplicated parts somehow, for example roller conveyor with 50 identical rolls (with 100 bearings, 100 dust sleeves, 100 M8x20 bolts etc.) simple conveyor can be easily 400 parts on import though there is only 15 different parts..

    To answer your question:

    Features to automaticaly update into new version of import:
    Part studio
    - sketch (position and geometries created with 'use' command)
    - hole
    - cut-out
    - fillet / chamfer
    - boolean
    - transform
    - pattern
    - color, material & part descriptions

    Assembly
    - mates (also group)
    - position (fixed)

    From - to images about type of changes to apply automatically in assembly:

    ---->  

    It would be perfect if we could create versions or configurations from imported models, so that it could be possible to easily compare different setups without repeating same work for each imported model.

    I don't know how Onshape 'sees' imported models but I suppose we could also teach it by clicking few corresponding faces or so..
    //rami
  • dennis_20dennis_20 Member Posts: 88 ✭✭✭
    @ilya_baran, Would it be fair to say you are trying to have a dynamic or parametric link to the imported body?  A change to the "dumb solid" would be reflected in OS the next time the dumb solid is updated either by re-importing it or by maintaining a hot link to the imported file (now THAT would be awesome!).  I would think the different versions of the imported solid would have to come from the same "seed" file so that the face identifications would remain the same, either that or there would have to be a way to "teach" OS which face was which, as @3dcad suggested.
  • ilya_baranilya_baran Onshape Employees, Developers, HDM Posts: 944
    @dennis_20
    Unfortunately, we can't rely on successive imports coming from the same "seed" file because every CAD system has its own special super-secret way of keeping track of which face is which (Onshape is the only system where this is partly exposed through FeatureScript queries).
    So what we're doing is some amount of geometry matching.  Longer term we'll want to have a way for the user to help this identification, but for now we're focusing on an automatic method, and looking for examples to test on.

    @3dcad
    Yes, if we can identify matching vertices/faces/edges, all of the things you mention would automatically update.
    Ilya Baran \ Director, Architecture and FeatureScript \ Onshape Inc
  • 3dexter3dexter Member Posts: 89 ✭✭✭
    Autodesk Inventor has this feature, this possibility is really fantastic.
    It would be great to see this in Onshape!


  • mahirmahir Member, Developers Posts: 867 ✭✭✭✭
    A functional automatic update sounds great, but I think a manual "Replace Reference" dialog would get the job done pretty well in the meantime.
  • traveler_hauptmantraveler_hauptman Member, OS Professional, Mentor, Developers Posts: 419 PRO
     Longer term we'll want to have a way for the user to help this identification, but for now we're focusing on an automatic method, and looking for examples to test on.

    Don't forget to recognize backported features in your automatic method (eg I go back to the original part and add the chamfer in your example part, because I added those during a live design/ECO review in Onshape and they need to get reflected back to the 'master' design.)
  • 3dcad3dcad Member, OS Professional, Mentor Posts: 2,421 PRO
    @ilya_baran
    How are you thinking to regocnize which import should replace old one as update and which is just another import?
    //rami
  • ilya_baranilya_baran Onshape Employees, Developers, HDM Posts: 944
    @3dcad
    The import tab has an "Update" option in its context menu.  Currently it creates a new part studio, but the idea is that it would replace the old import instead.  If you want a new import, just upload to a new tab.
    Ilya Baran \ Director, Architecture and FeatureScript \ Onshape Inc
  • 3dcad3dcad Member, OS Professional, Mentor Posts: 2,421 PRO
    Ok, sounds great. So the update function would open dialog to choose new file to replace the old one? And if I wan't to compare I need to create document versions.

    What if I have used imported model in multiple assemblies or multiple copies in single assembly and I only wan't to update some of them (I'm thinking standard components)?

    Are you planning to support also imported (step) assemblies where can be dozen sub-assemblies, main assy and a single part studio with all the parts?
    //rami
  • ilya_baranilya_baran Onshape Employees, Developers, HDM Posts: 944

    What if I have used imported model in multiple assemblies or multiple copies in single assembly and I only wan't to update some of them (I'm thinking standard components)?

    This is where linked documents and versions can let you control this.

    Are you planning to support also imported (step) assemblies where can be dozen sub-assemblies, main assy and a single part studio with all the parts?

    Yes, but possibly not for the first release.  Details there are fuzzier.
    Ilya Baran \ Director, Architecture and FeatureScript \ Onshape Inc
  • mlml Member Posts: 53 PRO
    thank you @ilya_baran for trying to catch the user requirements in depth first.

    we develop electronic designs, printed circuit boards (pcb), which we have to integrate in a construction (standard housing, 3d print, ...) for what we use os. if we print, the part will be also made in os.

    so we export the pcb from the design program (altium) as step and import it in os. earlier thread about this: https://forum.onshape.com/discussion/comment/18079#Comment_18079

    seldom we have to manipulate it separately in the part studio tab - it is simply not the idea (as your example at the begin suggests).
    most often, the imported step consists of several parts which has to be grouped first in a subassembly. 
    then it will be placed in an assembly together with the housing and mated (dark green: pcb).

    slider mate (on the right) into the housing:


    check if front panel (separate part studio, outline imported, cuts in os) fits:
     


    after, an iterative process can start: 
    - make chances where possible on the housing and front, means in onshape ever (standard housing and 3d print)
    - make modifications on the pcb when necessary, means in an external app (altium). --> that is when the whole work starts again: import, group, mate! would be great if this could be fastened and less boring.

    additionaly there are more mates in the assembly (here on the yellow part) where other parts depends on the imported one (dark green: pcb):


    replacing the imported step, at close at the source as possible, would be fine.

    best, ml
    1.PNG 118.6K
    2.PNG 106.6K
    4.PNG 266.4K
  • 3dexter3dexter Member Posts: 89 ✭✭✭
    3dexter said:
    Autodesk Inventor has this feature, this possibility is really fantastic.
    It would be great to see this in Onshape!


    This really is a trend, this feature will also be available in SolidWorks 2017!  :)
  • David_Deaville_CPIDavid_Deaville_CPI Member Posts: 2 PRO
    Hi I am a new user so this may be a dumb question. I have imported a SWX part file and added mold draft to the geometry so it will be suitable for injection mold tooling. This all went very well and I now have a feature tree with an imported part at the start and about 50 direct edits to split faces and add draft etc.
    Meanwhile the SWX base part has had some minor changes and I want to update the model without losing the direct edits I have already made. I read your thread and was delighted to hear you are proposing an 'update' option in the import tool. However when click the '+' button in my studio the subsequent dialog box does not offer this option. Was it ever implemented? Am I looking in the wrong place? - Thanks in advance
  • brucebartlettbrucebartlett Member, OS Professional, Mentor Posts: 1,931 PRO
    @David_Deaville_CPI. I don't believe this was ever implemented, but I think the example you give is perfect use case and it would be great if Onshape could update the original import. Otherwise, I think you're stuck with having to redo your work or trying to make the base part changes with direct edits.
    Engineer ı Product Designer ı Onshape Consulting Partner
    Twitter: @onshapetricks  & @babart1977   
  • owen_sparksowen_sparks Member, Developers Posts: 2,438 PRO
    Slightly off topic but I've just started using Markforged's Eiger 3D printing slicer.  It has a great "replace STL" mode to allow substituting a revised part into an existing job such that all the previous parameters are retained.

    OwS.
    Production Engineer
    HWM-Water Ltd
  • brucebartlettbrucebartlett Member, OS Professional, Mentor Posts: 1,931 PRO
    Slightly off topic but I've just started using Markforged's Eiger 3D printing slicer.  It has a great "replace STL" mode to allow substituting a revised part into an existing job such that all the previous parameters are retained.

    OwS.
    Not off the topic at all, I think this is exactly what we need. Especially as there are always going to be other CAD programs that will be used. 
    Engineer ı Product Designer ı Onshape Consulting Partner
    Twitter: @onshapetricks  & @babart1977   
  • 3dcad3dcad Member, OS Professional, Mentor Posts: 2,421 PRO
    Wise words..
    //rami
  • MBartlett21MBartlett21 Member Posts: 1,662 EDU
    :+1:
    MB - I make FeatureScripts:View FeatureScripts
  • ilya_baranilya_baran Onshape Employees, Developers, HDM Posts: 944
    To update this thread, we did finally release this: https://forum.onshape.com/discussion/11520/improvements-to-onshape-april-15th-2019
    Feedback on how well we preserve references to imported parts is welcome.

    Ilya Baran \ Director, Architecture and FeatureScript \ Onshape Inc
Sign In or Register to comment.