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.

How to create this 3D sketch in Onshape?

mike_hölschermike_hölscher Member Posts: 52 PRO
Hello,

We have got this 3D bent spring wire in our product. In SW this already was some hassle to set up using 3D Sketch because it would suddenly give an overdefined sketch for no reason when adding tangent relations between multple arcs in a 3D sketch. However, it was fixed by adding small straight pieces (0,01mm, as you will see in the pictures) in between the arcs and it all worked fine.

That is all history. Now I would like to remodel this wire in Onshape. There is no 3D sketch, and a spline is not what we want. When trying to make multiple planes to create this shape, the problem arises that the location and orientation of the planes depend on dimensions cannot be defined yet. In the right picture below, the orange start and end lines (40 and 120mm) can be defined using 2 planes. The 3 arcs in between can be placed on 2 other planes (the R30 on one plane, and the two large radii on another plane), but where these planes should be in space totally depends on all of the chosen dimensions of the arcs.



Does someone know how to create this shape in Onshape right now?
Tagged:

Answers

  • NeilCookeNeilCooke Moderator, Onshape Employees Posts: 1,519
    Difficult to tell from the image - could you use "projected curve"?
    Neil Cooke, Director of Technical Marketing, Onshape Inc.
  • mahirmahir Member, Developers Posts: 794 ✭✭✭✭
    edited August 8
    To build on what @NeilCooke said, Projected Curve will let you lay out and dimension this curve on two non-parallel planes. Once the two sketches are complete, you can project them onto each other to create a composite 3D curve. It looks like your dimension are already on orthogonal planes anyway, so creating the two sketches should be relatively simple. Check out my example below.

    https://cad.onshape.com/documents/57acdfaae4b005c413ed9b6f/w/3fd585a46d3af1b3ba413c53/e/8a2843094b5b0c5823147f56

  • Don_Van_ZileDon_Van_Zile Member Posts: 90 PRO
    edited August 9
    I hope to have some kind of teaser here... Would there be any chance 3D sketches (or similar paradigm)  are on the "In Development" queue?  :) Any tease/hint would be great!

    @mike_hölscher shows an example where he may not have or know the dimensions of what would be the Projected Sketches to produce that result.
  • mike_hölschermike_hölscher Member Posts: 52 PRO
    edited August 9
    Thanks @NeilCooke and @mahir !
    I understand the 3D wire shape is hard to judge from two pictures, but mahir actually came pretty close in his example. Thanks for that!

    I did not think of the projected curve method yet, so thanks! Unfortunately is does not do what I want exactly. I will try to explain using the pictures below where I added 4 planes on top of the SW 3D Sketch to clarify:



    Actually, the shape could be on two planes, Plane1 and Plane2. Note that Plane2 is not parallel to Plane4, is has a slight angle. As you can see in the first post, no plane angles are defined by me. The plane angles depend on all of the dimensions in the 3D Sketch, so dimensions on multiple planes together. In the 3D Sketch, Plane1 and Plane2 are the planes where the radii are defined. However, the endpoint distances are all dimensioned from the orthogonal planes, Plane3 and Plane4. This is because of the application and production method. Dimensioning the radii from the Plane3 and Plane4 (like in mahir's example) gives a different radius on Plane1, not giving the wanted result. Actually, projecting two circular radii using Projected Curve gives an ellipse, right?

    I guess I have to do some trial and error work to get as close to the original curve as possible, until Onshape 3D Sketch comes out.
  • philip_thomasphilip_thomas Member, Onshape Employees, Developers Posts: 1,081
    @mike_hölscher - yes, 3D sketch is something we are 'noodling' on :)
    That said, the advice here is sound and you absolutely will be able to make this part using the functionality available today :)
    Philip Thomas - Onshape
  • mahirmahir Member, Developers Posts: 794 ✭✭✭✭
    @mike_hölscher
    For now, if you need specific (and different) radii, you'll need to piecemeal the different sections together, putting the radii on their own planes/sketches. You can combine the sketch segments after the fact using the Composite Curve function.
  • mike_hölschermike_hölscher Member Posts: 52 PRO
    edited August 9
    @philip_thomas , cannot wait :smile:

    You are saying I should be able to this using Projected Curve? I do not think it is possible to get a projected curve with a specific radius based on two sketches with other radii. Please prove me wrong.

    As I expected, two radii make an ellipse:
    https://cad.onshape.com/documents/6a57695ba486feeed5ec0256/w/141c1913c4d51db353742abf/e/2d3046501cae66af858beb18

    Thanks @mahir
    I had to lookup 'piecemeal' :smile: . I do not see how to break it down into steps on different planes if the position of the planes is so dependent on the dimensions. For now, I just took over some resulting dimension values from the SW Sketch so I have the part in Onshape, but for changes I have to go back to SW and replace some values. Seems fastest for now. 

  • philip_thomasphilip_thomas Member, Onshape Employees, Developers Posts: 1,081
    Mike - no, as you said, the projection of two arcs result in an ellipse.
    To do this today manually, requires multiple planes and sketches.

    Here is a plan;

    1) As a pro-user, please please please submit your desire for a 3D sketch
    2) I will look at better workflows - potentially automating aspects of this using custom features

    :)
    Philip Thomas - Onshape
  • konstantin_shiriazdanovkonstantin_shiriazdanov Member Posts: 673 ✭✭✭✭
    edited August 9
    Also you can assemble this path from straight lines and arcs in the assembly, then make in context part studio, add briging curve there and unite it all with composite curve
  • mahirmahir Member, Developers Posts: 794 ✭✭✭✭
    edited August 9
    It took some doing, but I think I made a parametric version of your curve using the dimensions you provided. I made what I believe are a couple safe geometric assumptions.

    1. The 30mm radius "points" to the endpoint of the 120mm line segment. This is assumed to be true based on the planar and tangent nature of the curve segments.
    2. The 50mm dimension where the two large radii meet is not super important. This instead ends up being about 38mm and is driven by other geometry. I can place the point at exactly 50mm, but then you'll have to give up on some other constraint elsewhere in order to avoid being over constrained.

    https://cad.onshape.com/documents/57acdfaae4b005c413ed9b6f/w/3fd585a46d3af1b3ba413c53/e/8a2843094b5b0c5823147f56




    Top

    Front                                   Right
  • mike_hölschermike_hölscher Member Posts: 52 PRO
    edited August 9
    @philip_thomas .
    1. Voting up the 3D Sketching in Improvement Requests was like the first thing I did when first visiting this forum :smile:
    2. Looking forward to your workflow and possible FeatureScript!

    Wow! Thanks @mahir for putting in so much time and effort in this challange!
    Unfortunately, your assumptions are not valid. These assumptions do make it easier to draw the shape in Onshape which is very close to what we have in SW, like you have done. The 50mm IS important and changes the angle of Plane2, and with it, it slightly changes the angle of Plane3, and together also change where the R30 is pointing. I will be looking closely at a copy of your part to see what I can do with it. Thanks!

    @konstantin_shiriazdanov . I am not completely following you. Make separate sketches of the curves and bring them together in an assembly? This does sound interesting... EDIT: Just tried inserting sketches into an assembly. Did not know this is possible! Might just be a solution because using the mates you can allow the sketches some freedom to move and possible also have these two curves tangentially connect. Not sure yet, but very interesting...

    How easy would a 3D sketcher in Onshape be in this case :wink:

  • mahirmahir Member, Developers Posts: 794 ✭✭✭✭
    edited August 10
    @mike_hölscher, aside from recreating the dimensioning scheme used in SW, what exactly is the desired outcome for this part? My gut tells me that in the end, you're just routing between two points, and that the location for the inflection/blend points are in practice arbitrary - that they are only dimensioned like that because it was convenient to do so in an effort to create a fully constrained sketch in SW using round numbers (e.g. 50mm).

    I'm all for having 3D sketching capabilities built into OS, but perhaps this is a case of misplaced design priorities? Case in point, is the form/fit/function of this spring really driven in any appreciable capacity by the locations of these inflection points? If so, I stand corrected, but my engineer senses are leaning the other way.
  • jon_sorrellsjon_sorrells Onshape Employees Posts: 39

    I drew a projected view of the curve, using ellipses.  Then I drew another projected view, but in the same sketch as the first, so I could constrain them together.


  • billy2billy2 Member, OS Professional, Mentor, Developers Posts: 980 PRO
    My favorite feature script is Fit Spline written Ilya a long time ago. It allows 3D curve generation. You'll still have to control vertices using 2D sketch constructs but the final curve, will be a 3D curve. Lines can be 2 point curve definitions. Arcs are out as they require planes.  3D Splines are a natural to fit spline.

    Keep in mind, I'd rather have a 3D sketch.




  • mike_hölschermike_hölscher Member Posts: 52 PRO
    edited August 13
    @mahir Sorry if I frustrated you a bit. I really appreciate your help. Truth is, from a product standpoint, you are absolutely right: This 50mm dimension was originally placed there to fully constrain the sketch with a rounded number. But why it is important is that the original SW shape has been the base for a mold in which these spring wires have been fitted for some time now. There is a high chance that the shape is required to change at certain moment based on user feedback. Preferably, I would like not go back to SW to change this part, but keep everything in Onshape, including an exact replica of this part and not a slightly different one, so I can create the correct change the user requested. Also, the wire shown is part a family of shapes, where dimensions are varied to create different configurations. The mold has 5 different shapes, where primarily the R30 value is changed, and all of the planes and sketches automatically move along. I would also like to keep the 'moving along' the same to that the family changes in the same way as previously in SW.

    @jon_sorrells Wow, really creative! Smart to put everything in one sketch to put in relations and transform and project. Too bad it looks like the result of projecting ellipses are no arcs/radii.

    @billy2 Yeah, I also like this spline. But I really need to dimension arcs for the required result.


  • mahirmahir Member, Developers Posts: 794 ✭✭✭✭
    @mike_hölscher I feel you. The pain of legacy data...
    I always appreciate a puzzle. If I think of something I'll let you know. I have a feeling it will require some trig and variables.
  • mahirmahir Member, Developers Posts: 794 ✭✭✭✭
    @mike_hölscher what if you split the problem - recreate existing configurations vs generating new configurations with feasible parameterization?

    One way I can think of to recreate springs generated by the SW 3D sketch is to increment the angle for the plane containing the 30mm radius until the lower inflection point is actually at 50mm. You'd have to do this for each existing configuration. But once it's done, it's done. After that, any future new configurations can either ignore that 50mm dimension, or you can run the iteration process again. It's not a pretty solution, but it's feasible. In my example below I'm using a distance measurement as a sensor to see if the prescribed angle (~19.96deg) gives the desired 50mm dimension.


    https://cad.onshape.com/documents/57acdfaae4b005c413ed9b6f/w/3fd585a46d3af1b3ba413c53/e/8a2843094b5b0c5823147f56
  • mike_hölschermike_hölscher Member Posts: 52 PRO
    edited August 14
    Yes @mahir , I was thinking about the same: To just create some close-as-possible configurations for now. And use some alternative way of creating new configurations for a new version.

    But lets be honest, 3D Sketching should really be in a CAD program calling itself 'Modern'. This is not something like Feature Tree Folders that you can have different opinions and views on. 3D Sketching is just something designing needs. So @NeilCooke , tell @philip_thomas, to get his noodles on :wink:



  • mahirmahir Member, Developers Posts: 794 ✭✭✭✭
    I'm not disagreeing with you. Just trying to make due what the tools currently on hand ¯\_(ツ)_/¯ 
  • philip_thomasphilip_thomas Member, Onshape Employees, Developers Posts: 1,081
    Ok - i am back :)

    Here is my contribution.

    Perhaps not so much in this particular case, but in general, there are some common challenges.
    Yes we know that users want 3D sketching and it's coming.
    In the meantime, there are some basic things that would help.
    A typical use case is a 'space frame' - lots of straight lines in different sketches and no way to fillet between the two sketches . . . 

    UNTIL NOW! :)



    This custom feature takes any two lines (from different sketches) and will make the fillet between them.
    It will optionally also recreate the (shortened) lines and optionally the plane used (may be useful later).



    I hope this helps :)

    https://cad.onshape.com/documents/f2142f9b0b8676a357bed10e/w/5bfb4561275b308a9eb79a04/e/2a67ba030b8802c069148086

    Philip Thomas - Onshape
Sign In or Register to comment.