Surface Blending - Unexpected pinching

Next
 From:  PaQ
1546.1 
Hello everyone, sorry to bugging you with some questions again :o)

I was trying to do a multiple fillet radius by hand, and I came on some strange result with the surface blending function.
So here we go :

So I start to create 3 circle, (I did a mirror of the first one), and I sweep them along the top object curve. Then I did
a substract booelan.




I remove the unwanted surface




And finaly I blend the two surface with G1 continuity



As you can see there is a strange pinch in the blending.





To compare here's the same object using G1 on G1 surface blending.


So I suppose there is something wrong in the blending fonction :S
I have attached the .3dm file so you can play with ... Of course in this exemple I can just trim the object in half, and only keep the working side :P ...
but I don't like the idea ^^

EDITED: 4 Dec 2015 by PAQ

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  manz
1546.2 In reply to 1546.1 
The main problem is the fact you have such a small model (only 20 unit long) so the calculations being made are passing MoI limit. (there are crossing control points on the blend)

I just went to your first stage, deleted the sweep, then scaled the model up (X50) remade the sweep, then boolean, then blend. The finish was then OK.
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  PaQ
1546.3 In reply to 1546.2 
All right manz, didn"t know this size/precision problem ... will pay attention to it now, thanks a lot
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  manz
1546.4 In reply to 1546.3 
>>> didn"t know this size/precision problem

It is not a direct problem with MoI, even Rhino4 will have problems correctly calculating a blend on those surfaces.

There are some other problems with construction on the model, as on the sweep, you are making a circle (top circle) sweep around a tight curve (at the top of the sweep) Care is needed as you can get kinks and therefore overlapping control points on the sweep surface, I know it can appear strange at first, but there are limits to every 3d application.

Up to now, you are doing very well.

EDITED: 15 Apr 2008 by MANZ

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
1546.5 In reply to 1546.1 
Hi PaQ,

This is a problem that can happen with both 2-rail sweep and blend (which are related), especially on longer guide rails that go around a sharp turn.

What happens is the motion along each rail can be going at slightly different "speeds", when it goes around a bend that can lead to a kind of slanting connection between them.

Here is a more visual description:



You can see there where the different profiles for the blend are getting slanted. That makes them longer which makes the blending action between them kind of scale up in that area, that is what causes the pinched result here.

The main problem here is that the connections between the 2 rails are based on the parameterization of the rail instead of being based purely on 3D distance traveled. So if the parameterization does not match up very well it can cause this slanting. It can be particularly noticeable around a bend.


Steve, you wrote about the object scale - actually the object size in this case seems to be fine. MoI has a tolerance of 0.001 units, so it is not good to try and model stuff that has features in it that close to that level of size, but this is well enough above that.

By chance it happens that if you scale up before doing the intersections that result in those rail curves, it will create a denser edge curve that happens to have a better matching parameterization between the 2 of them.

One other thing you can do to work around this problem right now is to dice up the edge curves into some smaller pieces, like say 4 sections instead of one long edge. To do this select the edges and run Edit/Trim and push "Add trim points" to add points to split the edges at. Then blending between smaller pieces at a time will basically force better connection points between the pieces.


This is definitely an area that I have targeted for improvement, but it isn't just a simple fix, it needs a fair amount of re-work in the guts of the sweeper. Right now I have been planning on doing this with a batch of other improvements to sweep which I hope to include with the first v2 beta.

- Michael
Attachments:

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  manz
1546.6 In reply to 1546.3 
I just looked at creating the blend in Rhino4, the results will help to show what I mean:-

EDITED: 3 Aug 2009 by MANZ

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  manz
1546.7 In reply to 1546.5 
Hi Michael,

>>>One other thing you can do to work around this problem right now is to dice up the edge curves into some smaller pieces, like say 4 sections instead of one long edge.

Doing that actually shows an overlapping edge. I sliced into 4 quad, then made blend. The top left blend was incorrect (on the scale used)
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
1546.8 In reply to 1546.6 
Hi Steve,

> I just looked at creating the blend in Rhino4, the results will
> help to show what I mean:-

Yup, that is actually the same problem, if you look at the ends of each of those isoparms, it is a slanted type arrangement.

Basically, you can kind of imagine that blending first creates a set of lines that are connected between the 2 edges.

That line is then converted into a smooth curve segment, and the length of the line determines a kind of "bulge factor" for the shape.

When the line is slanted, it has a bigger length than a non-slanted one, and that bigger length causes too much bulging of the smooth part.

The key to preventing this is getting better matching points between the curves.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
1546.9 In reply to 1546.7 
Hi Steve,

> Doing that actually shows an overlapping edge. I sliced into 4
> quad, then made blend. The top left blend was incorrect (on the scale used)

Doing it on the original size one seemed to help tame it down:



- Michael
Attachments:

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  manz
1546.10 In reply to 1546.9 
From original model:-



closeview



These surfaces will not then join.

EDITED: 3 Aug 2009 by MANZ

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
1546.11 In reply to 1546.10 
Hi Steve, can you please post or e-mail the .3dm for that one so I can take a closer look at it?

It looks like the sweeper/blender is deciding that it is close enough and not refining that area.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  manz
1546.12 In reply to 1546.11 
Hi Micheal,

It is the same model as posted.

But here is the model after I split/blend.


- Steve

EDIT:

Attachment removed/ not now needed.

EDITED: 15 Apr 2008 by MANZ

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
1546.13 In reply to 1546.12 
Hi Steve, yup that is definitely the sweeper thinking that it got close enough and not adding in enough refinement in that area.

This part tends to be a difficult thing to balance because if the sweeper checks for accuracy in too many places it will cause it to take a really long time to complete in more complex cases. But if it doesn't check enough it can let things like this by.

I've added this to my chunk of sweep-related work to see if I can fix it up.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  manz
1546.14 In reply to 1546.13 
Hi Michael,

>> I've added this to my chunk of sweep-related work to see if I can fix it up.

If you are able to correct that, then excellent. I personally would of changed construction to prevent such problems (as I see such problems in many (so called) high end apps).

I dont see this as a failing from MoI, but as I say, if you can control this better, then excellent.


Regards,

- Steve
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
1546.15 In reply to 1546.14 
> If you are able to correct that, then excellent.

I should be able to, I've just got to be a bit careful about not causing too much of an increase in processing time.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  PaQ
1546.16 In reply to 1546.15 
Thanks guys for all you explanations, it's great learning place here. I get a good result by spliting the edges ... but also get the overlapping problem of course.

>> I personally would of changed construction to prevent such problems.

Well I'm still looking how I can improve the construction in this case :P
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  manz
1546.17 In reply to 1546.16 
Hi PaQ,

You can construct the blend, it only take a few minutes.

If interested:

I projected line onto center of model, then copy/paste the bottom edges:



I then blend the bottom lines (on each side)



Then blend the top projected lines.



I then made sweep using the 3 blends onto the 2 edges.

The blend was correct.


- Steve

EDITED: 3 Aug 2009 by MANZ

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
 From:  PaQ
1546.18 In reply to 1546.17 
Woooow that's genious !!!

Thank you so much manz explain this trick !
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged
 

Reply to All Reply to All