Idea for filleting of surface corners....

Next
 From:  Fredrik (FREDRIKW)
1641.1 
In Moi you can fillet edges, but you cannot automatically fillet a corner of a surface?

The first picture shows a Moi corner. The last ones show how one can make a G2 corner fillet in Rhino by using the BlendCrv command.


I have often seen situations where this would be handy to have a tool for doing automatically. Especially if you needs to do it on many elements that needs tha same corner treatment, but the surfaces vary. This can often be found in architecture that uses free form surfaces.

The way I do it in rhino is clumsy and manual: I trim with a blend curve that doesn't necessarily lie on the surface, but it gets automatically pulled to the surface by rhinos Trim command.

-since the surface has its own coordinates (u and v) it could be possible to draw a g1 or g2 curve on the corner on any surface, using the u+v coordinates and a blending formula. In this case it would Stick on any surface.
Ideally one should be allowed to type in the exact distance on each side of the corner (see pics)
That would indeed be handy.

I think the fillet tool in Moi could possibly be tuned to fillet corner points on surfaces in this way?
I can just hope its not very difficult it is to implement though.













  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
1641.2 In reply to 1641.1 
Hi Fredrik,

This is not an answer, but really just how I workaround such construction in MoI, but I do agree that the ability to fillet non-planer curves (or blend as with Rhino) would be helpful, and do hope something that can eventually be put in place by Michael into MoI.


One possible workaround:-

From your example, I have a surface (with non-planer edges)



I have found the easiest for me it to first shell the surface (give it thickness)



Then fillet the solid:



Select the surface to keep, and copy:



Delete the solid, and paste back the surface.



As I said, it is only a workaround, but it is quick and I have found no problems as of yet.


- manz

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:  karter
1641.3 In reply to 1641.1 
Hi Fredrik,

Im probably wrong but I dont see a huge difference here. In Rhino did you not have to split the edge using From and distance or extract geometry in the
same way as needed in MoI ??

Had MoI been able to split the edge using trim points instead of having to make offset geometry by 10mm I think it might be quicker ;-)

Rgds,
--Paul
Image Attachments:
Size: 66 KB, Downloaded: 27 times, Dimensions: 578x365px
  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:  Fredrik (FREDRIKW)
1641.4 
Thanks manz and Karter

I thought about that manz, this way of doing it is pretty smart, since moi makes so nice G2 corners. You can't specify the exact distance though.
But its certainly a good workaround.

Karter, that's what i mean its not much easier in Rhino.
-filleting th point in one click would be just perfect for Moi (Like you currently can do only on joined edges).

-Fredrik
  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
1641.5 In reply to 1641.4 
Hi Fredrik,

>>You can't specify the exact distance though.

I agree, the actual radius of the fillet will default to planer: as example:-



MoI will show distance based on a planer distance. There are other methods, but it can be a little time consuming.


I do await to see what Michael opens up for scripting, as some (possibly) long construction process could be automated via scripts.


- manz

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
1641.6 In reply to 1641.1 
Hi Fredrik, I've added that to the wishlist. That would be a kind of "vertex" based filleting for surfaces (and I suppose corner points of solids as well).

One big problem is that the most basic kind of fillet is a circular arc fillet, and it generally isn't possible to fit a circular arc to be simultaneously tangent to 2 non-planar curves.

So what would you expect to have happen in there if you had the Fillet shape set to Shape: Circular, which is the default?


> -since the surface has its own coordinates (u and v)

The problem is that distances in the UV parameter space do not correspond directly to distances in 3D space. When working in UV space you tend to have to do things like adaptive fitting processes to match 3D space distances, it is not just a simple matter of drawing in 2D/UV and then you're done. That tends to make this kind of stuff far more difficult than what it would initially seem.

- 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
1641.7 In reply to 1641.2 
Hi Manz - one thing to notice is that if you fillet the corner of a shell like that, you don't actually get an arc on the bottom final piece, the fillet will end up being trimmed there.

So for example this edge shelled and filleted:



If you shrink the fillet surface down and show control points, you can see the fillet is trimmed along the bottom, the resulting curve on the bottom piece is not an isoparm of the fillet (the isoparms are arcs):



It's a curve that is the result of an intersection between the fillet and the bottom surface.

I guess that may be a reasonable thing to put in there for a surface corner vertex fillet with shape=circular, but I'm not really sure if I have an easy way to calculate that particular thing shy of doing the actual shell + fillet...

- 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
1641.8 
One thing that I will probably be able to do sooner than this is to have a "distance based" fillet option instead of rolling-ball radius based.

- 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:  Frenchy Pilou (PILOU)
1641.9 In reply to 1641.7 
number of points is given by the meshing parameters options or it's absolute number calculate by the nurbs itself with the curve object 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
1641.10 In reply to 1641.9 
Hi Pilou - I'm not sure if I understand the question - which number of points are you asking about, is it in my screenshot above?

That is showing the control points that define the fillet surface, that is not a mesh calculation showing there.

Fillet calculations add as many points as necessary when creating the fillet surface to make it follow the intersection curve and within the distance tolerance, so that the fillet should not deviate more than 0.001 units from the adjacent surfaces.

- 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:  Frenchy Pilou (PILOU)
1641.11 In reply to 1641.10 
yes this one ;)

Why they are not equal spaced as it's along a straight line?
  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
1641.12 In reply to 1641.11 
Hi Pilou,

> Why they are not equal spaced as it's along a straight line?

I'm not sure of the precise reason in this case. In general filleting involves intersection between offset surfaces which is often a tolerance and adaptive based computation itself.

During that offset process, certain areas happened to get fit closer to the ideal result than others, resulting in fewer points in some areas.

It is not always easy for the algorithms to understand that a simple result can be possible especially when the surfaces involved are general curved surfaces and not primitives like cylinders or spheres.


If you need to get the most simple fillet construction possible, you may be able to get better results with a solid modeler like SolidWorks or something like that. They have generally spent more time making special case handling for more types of situations.

- 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:  Frenchy Pilou (PILOU)
1641.13 In reply to 1641.12 
< If you need to get the most simple fillet
oh no, it was just by curiosity :)
---
Pilou
Is beautiful that please without concept!
My Gallery
  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:  Fredrik (FREDRIKW)
1641.14 
Hi Michael'

Thank you for adding it to the wishlist.


>and I suppose corner points of solids as well

Yes good idea!

>One big problem is that the most basic kind of fillet is a circular arc fillet, and it generally isn't possible to fit a circular arc to be simultaneously tangent to 2 non-planar curves.
>So what would you expect to have happen in there if you had the Fillet shape set to Shape: Circular, which is the default?

Ok, in this case the circular option might have to e grayed out and not possible to click.
Or maby another option can be added in the fillet tool that does the "point fillet".

-Fredrik
  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