New Aug-1 bug fix release available
All  1-7  8-15

Previous
Next
 From:  jacobo3d
815.8 In reply to 815.7 
Hi Michael,

I've tried the scaling trick with this one and another objects that was giving
me some similar problems, and it solved those problems. Thanks!
I'm still getting a few holes in some parts of this object. Here's an screen
capture:




Another thing, and this is not like a real problem but something I'd like to
ask you about. I always get this kind of discontinuity in the number of
segments in some rounded surfaces. I was wondering if there would be
a way to get rid of that. Here's the same screen capture, but I've marked
the areas I'm talking about:




This is where that area is located in the object:



Thanks a lot for your help Michael!! :)

Jacobo.

  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
815.9 In reply to 815.8 
Hi Jacobo, thanks for reporting these additional issues!

It turns out that new cracking is a bad side effect from doing the scaling.

There is a slight gap between the surfaces in that area. When scaling up, it increases the size of the gap to be large enough so that it will not join. MoI will only attempt to join together edges that pretty close together - within a maximum of 0.005 units.

If you look at that joined object in the normal viewport (not the mesh export display), if you look closely you can notice that the edges there are a bit darker than normal - this is because there are actually 2 edges there right next to one another since they did not get joined to one common edge. When 2 edges are drawn over top of one another they will appear slightly darker than normal.

However, I think that I've actually found a way to fix the original problem with join so that scaling will not be required.

I've made a patch for you here: http://moi3d.com/beta/join_patch.zip to install the patch, unzip the moi_lib.dll file and copy it over top of the old one in c:\Program Files\MoI beta Aug-1-2007 .

I have not tested every part of your model yet, but it looks like this should enable join to work properly without doing the scaling trick, so it should handle all areas properly now including the one that was broken by doing scaling.

Can you please give that one a try and see if you can get proper results without scaling now?


> I always get this kind of discontinuity in the number of
> segments in some rounded surfaces. I was wondering if there would be
> a way to get rid of that.

This can happen in areas where there is a change in curvature. That surface that you show there is curved with a slightly smaller radius (more tightly curved) near the middle than near the ends. The mesher tests each quad to see if it is within the angular tolerance - those ones that got additional subdivision were not within angular tolerance so they got subdivided more.

It's going to be a difficult thing to get rid of without also reducing detail too much in more irregular curved shapes. This kind of refinement helps create details in surfaces with smaller tightly curved bits in them. Maybe I can include an option in the future to disable this kind of refinement, I'll have to think about that one a bit and what kind of negative side effects that could cause.

You can turn the angle down and try to use "Divide larger than" or aspect ratio controls to try and more evenly divide things up instead of the angular test.

- 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:  jacobo3d
815.10 In reply to 815.9 
Hi Michael,

Thanks a lot for the patch! I've been testing this object again, and a few others that
were giving similar problems, and it seems like it fixes that problem with Join.
I've tested the same operations with and without the patch, and I can see clearly
the difference. There's no need of scaling, and no holes either.
I'll keep testing just in case I find any problem with it.


About the segments continuity thing... do you think it would help (and it would be possible)
to specify the angle of tolerance... like a way to avoid the automatic refinement and let it be
spedified by the user. Like give it a margin in that angle of tolerance to keep the same number
of segments along a curved surface.
I'm not sure how that operation works, so maybe what I'm saying doesn't make any sense :)).

In any case, I know you have other priorities and still, you'd have to thing about that to see what
the side effects would be.


Again Michael, thanks a lot!!

Jacobo.
  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
815.11 In reply to 815.10 
Hi Jacobo, that's great news! Thanks for testing that. I will use this update for Join then. I'm not sure if I will put out another beta or not yet, if not then this will be in there for V1 though.


I've tried having a margin for the angle before, but in the simple case what happens is an angle of 20 degrees with a margin of 5 degrees ends up being the same thing as an angle of 25 degrees. It basically just pushes the same thing to happen elsewhere.

One thing that I have thought about is to use a margin as a post-processing step after all subdivisions were complete. Maybe I could scan through and look for areas that had been subdivided just once from the initial base mesh, and glue those back together if the glued-together piece was within the margin angle tolerance. I think that might be the best way to clean up these areas. But I won't have time to experiment with that for the initial V1 release though, I have put this on my list of stuff to tune up later.

Here's an image to show you why these kind of subdivisions happen in the first place:



Without subdivisions, you can see that it would be hard to capture the detail for that little bump. It would be very wasteful to cover this entire surface with an evenly divided mesh that was small enough to capture that bump. Putting in subdivisions allows the mesh to gain detail only where it is needed.

The same thing is happening to that one fillet in your other model - it becomes more tightly curved in that one area in the middle (I think it was a variable-radius fillet), so MoI applies the same kind of logic to it to subdivide it to try and capture the detail of the curvature there. That's why it happens right now anyway.

- 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:  jacobo3d
815.12 In reply to 815.11 
Hi Michael,

It's great that you have put that in your list! It would be great to have a way
to clean up more those areas. It would be great to have it as an option.
Thanks a lot for taking that into account to be included in a future version of MoI.

Keep testing!

Jacobo.
  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:  tyglik
815.13 In reply to 815.9 
Hi Michael,

>>MoI will only attempt to join together edges that pretty close together - within a maximum of 0.005 units

Hmmm... it is different than the Join command in Rhino... there it is a two times of global modeling tolerance, isn't it.
Could you include all of this "accuracy" specific information into the MoI's help file? I admit, most of users don't need to know that, but many Rhino's users are suckled on technical terms...
I remember you mentioned three kind of tolerance so far.
Global modeling: 0.001 units
Rebuild tolerance for Loft and Sweep with Refit option: 0.01 units
Joining tolerance: 0.005 units

Thanks,

Petr
  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
815.14 In reply to 815.13 
Hi Petr, that's a great idea, I will include this with the help file.

- 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
 From:  Michael Gibson
815.15 
I put up a new patch for this Aug-1 build here: http://moi3d.com/beta/Aug1_patch2.zip

This fixes a few meshing bugs and a few other assorted bugs.

To install the patch, unzip to get moi_lib.dll and just copy that over top of the old version in the Aug-1 version in \Program files.

EDIT: One other file also needs to be patched, copy the Sweep.js attached here over top of the old version in the \Commands sub-folder to make Sweep options work.

- Michael

EDITED: 19 Aug 2007 by MICHAEL GIBSON

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
 

Reply to All Reply to All

 

 
 
Show messages: All  1-7  8-15