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.

Understanding Loft's Normal to Profile Magnitude Value

StephenGStephenG Member Posts: 367 ✭✭✭
edited October 2017 in Community Support
I realize the actual process of determining a magnitude value is an iterative process to produce some subjective effect, but I am trying to get a better (deeper) understanding of how the magnitude value effects the shape of the loft.  I want to have a rough idea of what value I should initially use to produce the desired effect

The following is from OnShape's Help...

        

The value of 3 has a significant effect on extending the shape of the bottom profile in the resultant loft. At this time I cannot logically connect the value of 3 to its effect.

Then there is the question of what would happen if one also used a magnitude value of 3 on the top profile; wouldn't this create an impossible to loft condition?

It would be helpful is someone from OnShape could provide a little more insight how the magnitude value influences the shape of the loft without having to resort to a trial and error approach. Not looking to a thesis presentation of the underlying mathematics here; a layman's level explanation would suffice. 

Answers

  • elifelif Onshape Employees Posts: 50
    StephenG,
    I don't know how helpful this will be as we are a bit constrained by what our geometric kernel does in this case. Basically magnitude 1 is the default -- it's what the kernel thinks is creating the "best" geometry.
    But that is oftentimes not the shape you want, so you can use different values for magnitude to increase or lower (or flip in case of tangent to profile!) the effect. And yes, when you start changing the start and end magnitudes too much it might lead to self intersecting surfaces which would then cause a failure.
    Unfortunately there usually is fair bit of trial and error to get the result you want.
    Does this help at all?
    Team Lead, Part Studios
  • Jake_RosenfeldJake_Rosenfeld Moderator, Onshape Employees, Developers Posts: 1,646
    @StephenG

    I've recreated the example for you here:
    https://cad.onshape.com/documents/e74fd92eefdeb4959f6136a6/w/f2f7e5b8c5326b5f04c8d336/e/598fca2b871bce3e86a052e7


    The first two are meant to be recreations of the help doc.  The third one is the loft profiles with both of their magnitudes set to 3. You can think of these magnitudes as a subjective measure of how hard the constraint in question is going to push on resulting geometry.

    Jake Rosenfeld - Modeling Team
  • florianflorian Member, OS Professional Posts: 110 ✭✭✭
    You can imagine a normal loft as a connection with a spline. If you connect two pints with a spline, constrain the handle length with a dimension and then set it normal to something, this is like the value 1 - I have the feeling that the standard handle length is 1/3 the point distance.

    if you play around with the spline handle length you do the same as the loft end condition magnitude.
  • StephenGStephenG Member Posts: 367 ✭✭✭
    I appreciate the "sympathy" but that is not what was looking for.  I realize many factors are in play regarding how a lofted surface is formed; I am just trying to get a handle on being able to predict the effect that a parameter change will have ahead of time. There is wild guessing and there is intelligent guessing. 

    I successfully used the magnitude value to increase the influence of one profile in a loft and it had the desired effect.  However there was a slight twist in the loft because the profile shapes where not identical.



    I added Guide curves to adjust/eliminate the twist but the "Normal to profile" behavior appears to have been completely lost at multiple (2) locations in the profile that had its magnitude value increased form 1 to 2.5.

                         
    I cannot rationalize this result. Is this a bug?

    If I understood why this happened I would have a head start on knowing how to produce the desired loft surface shape.

    I would like to intelligently move forward without having to resort to a guessing what method(s) should be employed. 


  • StephenGStephenG Member Posts: 367 ✭✭✭
    @Jake_Rosenfeld

    Appreciate you taking the time to do the experimentation.  After seeing the result here is my layman's understanding of how  "Magnitude" values influence the resultant loft.

    Think of magnitude as an energy/velocity value assigned to the profile as it moves (transitions) towards the other profile. An energy value of 1 to 1 produces a nice "blending" of the 2 profiles. The ratio and magnitude of the "Magnitude" value assigned to two profiles are important factors in determining what the resultant loft. The ratio defines where the major blending will take place and the magnitude value determines the abruptness of the blend.

    A 1 to 1 ratio/magnitude is a simple "bump" of two cars running into each other; no real damage. A 3 to 3 ratio in a lot more energetic collision and it "crumples" the bumpers so to speak. 

  • Arunabha_NagArunabha_Nag Member, Onshape Employees, Developers Posts: 17

    When a guide and end conditions are provided together, it will determine the end condition from the guide at location around the guide. Specified end condition will be used at other locations. 

    If you can share the document I can take look and determine if it is a bug.
  • StephenGStephenG Member Posts: 367 ✭✭✭
    @Arunabha_Nag ;

    Your description of how guides and end conditions work explains the rather bazaar result of got when using guide curves to eliminate the twist along with a 2.5 to 1 magnitude value.
                       

     2.5 Magnitude Alone      Guide Curves w/2.5 Magnitude             Guide Curves w/1.0 Magnitude
      (twist evident)                        (twist eliminated)

    The magnitude value used in the start profile overwhelmed the guide curves. 

    Lesson learned: The magnitude value's effect appears to be amplified when guide curves are also used.  Probably not a good idea to use guide curves and end condition magnitudes together.

    I would be interested if you know of simple techniques to control twisting without incurring the expense of creating guide curves. I tried using the vertex matching. While it did eliminate the twist it did not produce a smooth uniform result.


    However, when I added fillets to the rectangular profile the "Match Vertices" method produced an acceptable result.
    However, the negative side effect of this method was that I lost the ability to shell the resultant to a thickness equal to or larger than the fillet radius. Apparently the shelling algorithm cannot collapse an offset surface into an interior edge that does not span the entire surface. Two steps forward one step back.




  • elifelif Onshape Employees Posts: 50
    You could also try splitting the cylinder so that the face you're lofting has the same number of vertices as the other end (i.e. 4 in your case -- before the fillet)
    Team Lead, Part Studios
  • StephenGStephenG Member Posts: 367 ✭✭✭
    @elif

    Thanks for the suggestion. I have used "Split" before to break part models into pieces for manufacturing purposes; didn't think about using it to create a matching # of curves condition between the profiles. Suggestion worked great and along with the new variable fillet option I could create a zero radius fillet blend into the circular profile which restored my ability to shell the resultant part using a thickness greater than the fillet radius.

    However, I thought I could use "Match Vertices" option to produce the equivalent. I see that I can only specify 1 vertex per profile and this greatly limits user control of how curves are mapped between the profiles.  I assumed OS would proportionally map curve segments based on their respective lengths using the matched vertices to control the twist element.

    Thanks again.
  • elifelif Onshape Employees Posts: 50
    Right, this is a current limitation on how our "match vertices" option works. It's basically picking the first vertex to be used for each profile, and then assuming one-to-one correspondence and walks around each profile. If there are more vertices on one of the profiles, the current edge gets broken up into equal length chunks.
    This is definitely something we will be improving upon. Please add or up-vote an improvement request for this.


    Team Lead, Part Studios
  • StephenGStephenG Member Posts: 367 ✭✭✭
    @elif 

    Well, I thought this approach would work for me. The lofting part worked perfectly.

    But attempting to fillet the 4 edges w/Tangent propagation with a fillet radius < .188 fails. I want a .100 fillet radius.

        
       .20 R Works                                                      >.188 Fails

    It appears that unless the fillet can traverse across the an entire edge while still making contact with the surfaces that form the edge (within a certain tolerance) the fillet operation fails. Once the fillet surface area collapses to a singularity OS appears to throw up its hands. My expectation is that OS would create a triangular surface patch up to where the fillet reaches singularity and leave the rest of the edge intact.

    I tried using the "Variable fillet" option where the end fillet radius value equaled the radius of the round cylinder - didn't work.

    I doubt this is a bug; probably more of a current limitation in the product.


Sign In or Register to comment.