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.

Naughty Loft

michał_1michał_1 Member, Developers Posts: 214 ✭✭✭
Hi everyone, I do have a problem with a loft command. I do design a handle (for a toolbox or similar type of case), to define its shape I use mainly conic arcs. The shape is trivial and didn't expect to have any problems, but unfortunately, I do have. Here's the case:

The first model (light blue) is the original approach, and you can see an awful fold/crease on a lofted surface. I was guessing that it could be because of conic arcs (it looks for me that extrusion of a conic arc doesn't build NURBS surface, but rather some kind of parametric surface), so with the second approach (darker blue) I've used spline, and while it looks a lot better it has the very same problem. Below you will see another gif, I've added one more example where I use conic arcs but instead of an Extrude, I use Loft, to get NURBS from conic arcs. Eventually, I do also use MoI blend tool to show how this transition should look like:

I know I could report this as a bug, but I think that the loft algorithm is built as it is purposely, and it fails in this example, not because of a bug, but rather because of some principle rules. Secondly, I also expect that conic arcs (parametric surfaces form conic arcs?) have an impact in creating that fold/crease.
What I would like to hear from devs is an insight, I don't expect for this to be resolved immediately.
What these gifs are missing are the guide curves which I've used eventually. They did improve how the shape looks, but since I built a crease edge on it, any distortion is "enhanced" and not acceptable for aesthetic reasons.
I've come across those problem a few times more in the past. They were less obvious, and I didn't have time to test them, but I will try to replicate them when I will have some time.
I think this is a serious concern. I understand that Loft is a solid modeling tool, and we expand its use beyond for what it was meant to be used, but we need a better Loft for surfacing or a new tool (here's my another guess/impression, I have a filling that we actually have two algorithms in Loft, one simply adjust the first row of CVs, each side, using CVs count of picked curves/edges. The second algorithm approximate initial curve network and create much denser CVs layout but also more even spaced layout). 
Here's the document:
https://cad.onshape.com/documents/2b8c4fe532fd13f7917e8dac/w/ba9a953af1af34d39455767e/e/1de06c3ae1fd3cf046f3037b

Comments

  • NeilCookeNeilCooke Moderator, Onshape Employees Posts: 5,715
    You do get a much better result if you loft it all in one go ("conic arcs" Part Studio):


    Senior Director, Technical Services, EMEAI
  • michał_1michał_1 Member, Developers Posts: 214 ✭✭✭
    Still not acceptable

  • michael_stallsmichael_stalls Member Posts: 59 PRO
    I dunno if this helps but i had a quick go........

    i was able to get rid of the crease by creating to splines (highlighted above) and lofting between them using the edges of the handle surfaces as guides instead of lofting between the handle edges as you have done above. you can play with the splines to get better curvature if you like. The lofting function is very powerful but you have to define the shape properly.  otherwise if you make it guess it will usually produce an ugly crease. 

    https://cad.onshape.com/documents/ad2b5493902a6ce389c8d6a8/w/6448fb10de04831f0a26880f/e/6bb3145bfcbcb34a8edf008b
  • John_P_DesiletsJohn_P_Desilets Onshape Employees, csevp Posts: 253
  • michał_1michał_1 Member, Developers Posts: 214 ✭✭✭
    @michael_stalls @John_P_Desilets I forgot to tell that I'm trying to get tangent surface... and trust me this is not my first day with CAD I've tried numerous workarounds, without success. The loft doesn't work well enough for surface modeling. Fill command from John's file also is far from good.

  • NeilCookeNeilCooke Moderator, Onshape Employees Posts: 5,715
    What are you using for Split2 and Split3 and how is that measuring quality?
    Senior Director, Technical Services, EMEAI
  • michał_1michał_1 Member, Developers Posts: 214 ✭✭✭
    @NeilCooke now I'm leaving my office, later (few hours) I will try to elaborate on that. Please, I have no reasons to fall into argument with you guys, I have a lot of respect for the whole Onshape team.
  • NeilCookeNeilCooke Moderator, Onshape Employees Posts: 5,715
    Hey there's no arguments  :) we're all friends here, just trying to help. I worked out how you are doing the split and I think you will struggle to get a perfect surface because of the varying distances between the two surfaces (if you offset the outside conic in Sketch2 it does not match up with the inside conic unless you set the rho value to 1.84). I added extra bridging curves and got a much better result which is the way to go I think.




    Senior Director, Technical Services, EMEAI
  • michał_1michał_1 Member, Developers Posts: 214 ✭✭✭
    @NeilCooke my post is under product feedback category for a reason. While peoples attitude to assist and give a help is encouraging, I was trying to avoid that. Attempts to find quick resolution don't address the issue I'm rising and only delays discussing an actual problem.

    I've created my original document 12 days ago and immediately I run into that fold. For the next few days I was trying every iteration I could think off, that would improve that faulty surface, but would not change the way model was planned to be articulated (by articulation I mean the shape and topology).
    I was adding guides (sketches, curves, edges...all) in numerous scenarios, at the ends, with additional near the "bends". I was trying different directions of loft, also where guides became profiles. Since that handle is meant to be symmetrical I was lofting from a sketch on a symmetry plane (with normal to profile), from an edge of extrusion (like on images from my first post), but also through the symmetry plane (that one looked extraordinary). I was also trying splines instead of conic arcs.
    All that in different configurations.

    These were dozens of iterations until I went to a conclusion that without varying an articulation I'm not gonna succeed. This is my plan, to eventually model similar a handle but with different topology. I don't consider workarounds or almost good model since the only purpose this model will serve is to be an illustration for lecture (article) about designing ergonomic handles (https://projektowanieproduktow.wordpress.com/2017/10/20/plastic-part-design-ergonomia-uchwytu-cz-2/).

    At this point, I've decided to report that behavior before I will proceed with my work on that model.
    To do that I've made few more test strictly in order to "investigate" occurring problem, and narrow down possible interpretations. I've created a new file (copy of original), removed all irrelevant data and picked most obvious example as an illustration. Because I've removed irrelevant data, Neil you could speculate as follow, "What are you using for Split2 and Split3 and how is that measuring quality?". Edge from Split3 is not a measure of quality (merely an indication) but it is a measure of failure. This handle is a "fairly" blocky shape with two bends and rounded edges. On one of the ends, there should be a hard edge (actually two, symmetry) blending in to smooth surface. This edge is built on edge of Split3. While whole part does have dynamically, but evenly curved shape, edge od Split3 is wavy (even with the best looking workaround) and as such is not acceptable.
    Split3 was an indication that something is wrong, so I've open that model in MoI which can expose underlying CVs layout. I've taken new pictures from MoI, this time those are 3 Onshape lofts (with different magnitude) and 3 MoI blends (also with different magnitude):


    Neil, can you tell me what justifies this CVs taking this weird wavey shape, what pieces of original geometry contain such data? Why an increase in magnitude doesn't result in a linear change in CVs layout (like in MoI) but rather have some weird acceleration? How that is caused by consistent data of conic arcs???

  • lanalana Onshape Employees Posts: 711
    michał_1 
    Thank you for your investigation. We'll have to take a close look into the reasons for such behavior. 
  • michał_1michał_1 Member, Developers Posts: 214 ✭✭✭
  • NeilCookeNeilCooke Moderator, Onshape Employees Posts: 5,715
    @michał_1 @lana - I sent a STEP file to a friend who uses SolidWorks and he made one blend using the SolidWorks Loft feature (and the result was almost identical to that in Onshape which should not come as a surprise) and one using the SolidWorks Boundary Surface feature (which lets you control the parametrization of the surface and therefore gives you more control). So it looks like it is a quirk with Loft in Parasolid and we may need to implement more surface feature types. The results can be seen here: https://cad.onshape.com/documents/30eb3d17c91715abdcb61eaf/w/f5133149f7d26d31c19ae847/e/d42a8f63d76fddcacd8f1038

    Senior Director, Technical Services, EMEAI
  • lanalana Onshape Employees Posts: 711
    @NeilCooke
    Thank you for that experiment.
  • michał_1michał_1 Member, Developers Posts: 214 ✭✭✭
    I was guessing that those loft problems are caused by the kernel, some time ago: https://forums.autodesk.com/t5/fusion-360-design-validate/fusion-team-ought-to-watch-this/m-p/7231869#M125043 , but since is Neil talking about implementing new surface features, I have an idea, and I've mentioned that in my first post.
    Before that, I also want to show how the discussed part looks with guides:

      slightly better.
    Same set but, the loft is created from a guide to guide, where old profiles are now an actual guides:

    still too dense at the corner, so trim is a wave:


    What if we could have a tool like "surface from curve network", it would look like that:

    and trim:

    this one look much better.

    I suspect that Loft tool is actually using two different algorithms. One is  "dump" matches and places CVs accordingly to count and placement of curve CVs. The second one is applied when count and position don't match. Now loft is approximating a new number of CV's, and instead of aligning first rows of CVs, place them based on calculated values. Here is a file created to illustrate this distinction:
    https://cad.onshape.com/documents/05250b53ae8505aa1fb7b522/w/1135e7d482bb04133663b521/e/91b92fe3add69d0aae136f19
    Now let see what this file contains.
    The first loft is a loft from one curve to another with just two guides:

    The second one is almost the same, the only change is that I have one more guide, in the middle:

    as we can see in one direction CVs layout is approximated. After adding a profile in the middle surface is approximated in both directions:

    Now look how Network tool in MoI works:

    Regardless of how many curves are used I get surface based on approximated data with evenly laid CVs. It's very similar to the loft when it's forced to do an approximation. What is missing is a factor that would make CVs layout more even:

    Since used curves are planar, the correct layout is rectangular, if viewed from the top.
    That my idea in a sketch. I still would like to see an improved loft, but new network tool might be useful.
  • Mark_MatthewsMark_Matthews Member Posts: 25 ✭✭✭
    I'm interested in how well OnShape is coming up the curve on surface creation. I've imported the model into SolidWorks to see how the loft feature handled it and it was indeed twisted on initial creation; but you can right click and add connectors in SW to straighten it out. So the ability for greater control is there in the kernel; it just needs to be accessed.




  • michał_1michał_1 Member, Developers Posts: 214 ✭✭✭
    Nice, so now we won't take any excuses, we'll just wait for Devs to dive deeper B)
  • NeilCookeNeilCooke Moderator, Onshape Employees Posts: 5,715
    I guess my friend doesn't know SolidWorks as well as he thinks he does  ;) - thanks for the info.
    Senior Director, Technical Services, EMEAI
Sign In or Register to comment.