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.

Forming Tools for Sheet Metal

daveaseemandaveaseeman Member, Developers Posts: 5 PRO
edited March 2017 in Using Onshape
Hi all,

Has anyone figured out a way to create sheet metal features with complex/curved surfaces other than basic bends and flanges? Thinks like louvers or other formed features?

The approach to modeling is very different than in Solidworks, which is what I'm used to. But I tried here to do it in what I thought might be the Onshape way, but with no luck. The first tab shows the approach with flanges in the center of a part, while the second tab shows how I tried to create a formed feature in a similar manner.

Thanks in advance!

Dave
«1

Comments

  • emagdalenaC2iemagdalenaC2i Member, Developers, Channel partner Posts: 858 ✭✭✭✭✭
    Here you can see the formed feature that you try to create.
    1. Create a sheet metal model
    2. Finish the sheet metal model. So, the forming tools will not shown in the flat model
    3. Create the forming tool base part
    4. Subtract the forming tool base part to the sheet metal part. You can use "Keep tools" in the boolean feature.
    5. Shell the forming tool base part. Set the "Shell thickness" equal to the sheet metal thickness, and remove any face that you want
    6. Join the two parts with a Boolean feature
    7. Create the fillets. You should create one fillet with radius R and the other with radius R-thickness or R+thickness
    Un saludo,

    Eduardo Magdalena                         C2i Change 2 improve                         ☑ ¿Por qué no organizamos una reunión online?  
                                                                         Partner de PTC - Onshape                                     Averigua a quién conocemos en común
  • bryan_lagrangebryan_lagrange Member, User Group Leader Posts: 792 ✭✭✭✭✭
    This is what I came up with:

    https://cad.onshape.com/documents/9da6a5d6e4ce2ce60d83ddd5/w/970ad634ad96dad4d69c0622/e/df2eec05c0659f0b4f9e6801

    Since I only need a line for a .dxf I made a cut very small in width (.0005"). This contour is small enough that when the .dxf was called into Sigma Nest it saw one single line. 

    I completed the sheet metal part then added the louver feature. Since I only need the depiction of the louver in the model and only the cut line in the flat this method worked out best for me.

    Hope this helps.



    Bryan Lagrange
    Twitter: @BryanLAGdesign

  • NeilCookeNeilCooke Moderator, Onshape Employees Posts: 5,305
    edited March 2017
    Look in the FeatureScript examples (+ menu top right to add features to your toolbar) - I added an embossed foot feature. This does require the sheet metal model to be "finished" first. 
    Senior Director, Technical Services, EMEAI
  • BLeeVNBLeeVN Member Posts: 18 PRO
    Has anyone taken the time to expand on @NeilCooke Embossing FS to use Multiple Points to generate a Polygon instead of the Sketch Circle?
  • mahirmahir Member, Developers Posts: 1,291 ✭✭✭✭✭
    edited July 2018
    Several examples are laying around. Here's a feturescript I made for round embosses/feet. It will work with sheet metal, but only after finishing the part. So emboss features won't show up in the flat pattern.
    https://cad.onshape.com/documents/c906e2264d158509753b1bdb/w/54ac31d75d8897024a9c9c68/e/f07b5f8cd8f7543b972b1779

  • lanalana Onshape Employees Posts: 689
    Please notice that sketches in flat can be used to mark placement of formed features. These sketches can be included in direct DXF/DWG export of flat pattern or inserted into drawings.
  • michael_bassmichael_bass Member Posts: 1 PRO
    Thanks for sharing that @mahir !
  • MBartlett21MBartlett21 Member, OS Professional, Developers Posts: 2,034 EDU
    @daveaseeman
    @michael_bass
    @lana
    @mahir
    @BLeeVN
    @emagdalenaC2C

    I have just made a forming tool FS: https://cad.onshape.com/documents/a752e0db24eb071ebb6f5aa0
    Please try it out and let me know what you think
    mb - draftsman - also FS author: View FeatureScripts
    IR for AS/NZS 1100
  • lanalana Onshape Employees Posts: 689
    @mbartlett21 Looks great! That implementation is very close to what we have in mind, except that we'll have to do some work so that calling sheetMetalEnd will not be necessary and there will be some representation of the formed tool in flat. So if users of this feature build a library of configured forming tools, they will be able to keep using it when native forming feature becomes available.  
  • owen_sparksowen_sparks Member, Developers Posts: 2,660 PRO
    How cool is that?

    O.S.
    Business Systems and Configuration Controller
    HWM-Water Ltd
  • Jake_RosenfeldJake_Rosenfeld Moderator, Onshape Employees, Developers Posts: 1,646
    @mbartlett21

    Excellent use for reference parameter! Nice feature!
    Jake Rosenfeld - Modeling Team
  • xphilipxphilip Member Posts: 17 PRO
    @mbartlett21 - We are impressed :)
  • xphilipxphilip Member Posts: 17 PRO
    @mbartlett21 - I meant to do that as my 'Onshape' ego.
    "We are impressed!" :)
  • lanalana Onshape Employees Posts: 689
    @mbartlett21
    I took a liberty of adding processSubfeatureStatus() call after sheetMetalEnd. This causes a blue info message about changes not being reflected in the flat to appear when the Form SM feature is edited.
     If you agree with this change please release another version. This might save us some support questions from this feature users in the future. Thank you for helping us with sheet metal functionality development.
  • MBartlett21MBartlett21 Member, OS Professional, Developers Posts: 2,034 EDU
    @lana

    Thanks!

    I have released the version as V 0.1.8
    mb - draftsman - also FS author: View FeatureScripts
    IR for AS/NZS 1100
  • MBartlett21MBartlett21 Member, OS Professional, Developers Posts: 2,034 EDU
    lana said:
    @mbartlett21
    I took a liberty of adding processSubfeatureStatus() call after sheetMetalEnd. This causes a blue info message about changes not being reflected in the flat to appear when the Form SM feature is edited.
     If you agree with this change please release another version. This might save us some support questions from this feature users in the future. Thank you for helping us with sheet metal functionality development.
    @lana
    This does not seem to display a popup anymore. :(
    I also tried using reportFeatureInfo(context, id, ErrorStringEnum.SHEET_METAL_END_DONE);, but it did not work either
    mb - draftsman - also FS author: View FeatureScripts
    IR for AS/NZS 1100
  • lanalana Onshape Employees Posts: 689
    edited June 2019
    That is curious - looking. Narrowed it down to presence of populated Part Studio reference parameter. Will pull a bug. Thank you for paying attention
  • MBartlett21MBartlett21 Member, OS Professional, Developers Posts: 2,034 EDU
    @lana
    Thanks!
    mb - draftsman - also FS author: View FeatureScripts
    IR for AS/NZS 1100
  • nick_papageorge073nick_papageorge073 Member, csevp Posts: 659 PRO
    Hi, I found this old post from 2019. Has OS integrated any sheetmetal forming tools now? Thanks.
  • René_SartorioRené_Sartorio Member Posts: 58 PRO
    edited September 2021

    Hey @MBartlett21 ,

    my goal is to rebuild the embossing library tools from SolidWorks in Onshape.

    I found your feature script and am trying to apply it.

    https://cad.onshape.com/documents/a752e0db24eb071ebb6f5aa0/w/47c6a6888718e30c80f1f652/e/942b8c71966a4d99ad3d20ce

    A few questions I have:

    1.       What is "Transform 1" for?


    2.       I noticed something else with my test document. There is material that does not belong there. How can i fix it? 

    https://cad.onshape.com/documents/c9eb78ae37ac1a81184f65a2/w/8aa655ad7cea7dc1ec6a7ff6/e/361d328b19705a7521903440



    3. How to make it known in the flat pattern?


    4.Can you control the rotation ? As in Solid works as an example.



    5. And the last question. Is it possible to configure a tool in different sizes?




    greetings

  • MBartlett21MBartlett21 Member, OS Professional, Developers Posts: 2,034 EDU
    edited September 2021
    @René_Sartorio
    [...]

    1. What is "Transform 1" for?
    Transform 1 wasn't for anything special. It was just an edit to test if Onshape's thicken worked for it.
    2. I noticed something else with my test document. There is material that does not belong there. How can i fix it?
    https://cad.onshape.com/documents/c9eb78ae37ac1a81184f65a2/w/8aa655ad7cea7dc1ec6a7ff6/e/361d328b19705a7521903440
    That is now fixed in version 0.3.2. The FeatureScript was trying to thicken the material in the wrong direction first.
    3. How to make it known in the flat pattern?
    Unfortunately, there is no easy way for me to transform a point from the model to the flat pattern so I can place something there. (This may be forthcoming from Onshape)
    4. And the last question. Is it possible to configure a tool in different sizes?
    Tools can be configured with the Part Studio configurations, just like anything else.
    mb - draftsman - also FS author: View FeatureScripts
    IR for AS/NZS 1100
  • René_SartorioRené_Sartorio Member Posts: 58 PRO
    I am surprised how quickly the answer came. It (Nr.2) works  :)
    But you have to make sure that all cutouts are made in the sheet before you use the embossing tool. 

  • René_SartorioRené_Sartorio Member Posts: 58 PRO
    In my example the configurations work now. Yeah! 

    But what if the tool has to be turned around? How can I do that ?

  • mahirmahir Member, Developers Posts: 1,291 ✭✭✭✭✭
    edited September 2021
    But what if the tool has to be turned around? How can I do that ?

    It looks like @MBartlett21 's FS has "flip" and "change orientation" options, both of which are configurable. If you need to dial in a specific angle, you can use a rotated mate connector. But if you want the angle to be configured, you will have to create the MC separately since it seems that any MC's created internal to a feature are not configurable.

  • EugenEugen Member Posts: 18 PRO
      

    Hello @MBartlett21 

    I´d like to know how to position the formtool "Kabelbinderbrücke" to my part.
    It works by using the sketch point but the mate connector is not accepted.

    thanks for feed back
    Andreas 
  • Axel_KollmenterAxel_Kollmenter Member Posts: 410 PRO
    I need your help. I used your Form Sheetmetal FS but I want to flip the embossing to the other side.

    The checkbox "flip orientation" doesnt work. What should I do?



    Best regards,

    Axel Kollmenter
  • MBartlett21MBartlett21 Member, OS Professional, Developers Posts: 2,034 EDU
    Hello Axel,

    I have just made a version 0.4.1 that adds a Flip Z checkbox and renames the Flip Orientation checkbox to Rotate 180. I have also got the feature to now work in feature patterns.
    mb - draftsman - also FS author: View FeatureScripts
    IR for AS/NZS 1100
  • Axel_KollmenterAxel_Kollmenter Member Posts: 410 PRO
    Hi @MBartlett21 we need your help again.

    We are in the process of implementing our release process. We noticed that the properties in a sheet unfolding are lost due to your feature script. Here we always get an error in the release candidate. Can you optimize your FS so that after using your FS the sheet metal part is still recognized as a sheet metal part. (So the features drag along and the release candidate doesn't throw an error anymore).

    After the feature script is applied, Onshape no longer recognizes the sheet metal part as a sheet metal part, but as a "normal" part. Is there any possibility to optimize the FS in that direction?



    Best regards,

    Axel Kollmenter
  • MBartlett21MBartlett21 Member, OS Professional, Developers Posts: 2,034 EDU
    edited April 2023
    @Axel_Kollmenter

    The reason for it being a normal part after is that this FeatureScript does a "Finish sheet metal model" internally, so that it can make non-developable surfaces.

    If you don't use the forming feature at all, and just do a Finish sheet metal model on your part, does just that cause problems in the release candidate?

    Aside: An explanation of how sheet metal currently works in Onshape:

    A sheet metal model is based on a developable surface body in Onshape, with special attributes applied on each edge or corner of it.[1]
    When using features that modify the sheet metal, they modify that internal surface body, and then call `updateSheetMetalGeometry`[2] once they are finished. (This is slightly different for adding and subtracting material on the flat pattern, which is handled by an internal feature called `opSMFlatOperation` (not documented))

    Because of this, we can't just edit the folded model, since that is only meant to be modified by the `updateSheetMetalGeometry` function.
    (And due to the requirement of it being developable, we can't use any of the forms, since by definition they are not developable.)

    [1]: sheetMetalAttribute.fs (doc)
    [2]: updateSheetMetalGeometry (doc)

    Another Aside

    With sheet metal, I had to implement my own function to get the attribute after the sheet metal model was finished, since there didn't seem to be any builtin way to do so
    // (MIT License)
    // Get the sheet metal attribute of the part
    function getSheetMetalAttribute(context is Context, partQuery is Query)
    {
        const attributes = context->getSmObjectTypeAttributes(
            context->getSMDefinitionEntitiesOutsideSheetMetalFeature(partQuery, undefined)->qUnion()->qEntityFilter(EntityType.BODY),
            SMObjectType.MODEL
            );
    
        if (size(attributes) != 1)
            return undefined;
    
        return attributes[0];
    }
    
    // This is copied from sheetMetalAttribute.fs and edited to always include inactive models.
    // If entityType is undefined, disregard it.
    function getSMDefinitionEntitiesOutsideSheetMetalFeature(context is Context, selection is Query, entityType) returns array
    {
        const entityAssociations = try silent(getSMAssociationAttributes(context, qBodyType(selection, BodyType.SOLID)));
        if (entityAssociations == undefined)
            return [];
    
        const allSheets = qAttributeQuery(asSMAttribute({ "objectType" : SMObjectType.MODEL }));
        const allSMDefinitionEntitiesOfType = (entityType != undefined) ? qOwnedByBody(allSheets, entityType) : qOwnedByBody(allSheets);
    
        var out = [];
        for (var attribute in entityAssociations)
            out = append(out, evaluateQuery(context, qIntersection([qAttributeQuery(attribute), allSMDefinitionEntitiesOfType])));
    
        return concatenateArrays(out);
    }
    mb - draftsman - also FS author: View FeatureScripts
    IR for AS/NZS 1100
  • Axel_KollmenterAxel_Kollmenter Member Posts: 410 PRO
    @MBartlett21 thanks for the fast reply. No, if I just finish the sheet metal part with the normal feature, the error wont show
    Best regards,

    Axel Kollmenter
Sign In or Register to comment.