helppyFormex - Support: sr #108442, making gts boolean more robust

 
 

sr #108442: making gts boolean more robust

Submitted by:  gianluca de santis <gianlucadesi>
Submitted on:  Mon 18 Nov 2013 10:07:04 AM UTC  
 
Category:  Plugins Priority:  5 - Normal
Severity:  1 - Wish Privacy:  Public
Assigned to:  None Open/Closed:  Open
Operating System:  None

Add a New Comment (Rich Markup)
   

You are not logged in

Please log in, so followups can be emailed to you.

 

Mon 18 Nov 2013 11:12:55 AM UTC, comment #1: 

I think this can never be robust enough.

First: 'the intersection is not a closed curve' is not the same as 'the surfaces do not intersect'. There might be many reasons for the algorithms with floating point values to fail, due to some very peculiar and/or erroneous geometry.

Then, when you would be 100% sure they do not intersect, testing a single point would not be enough: You can never be sure whether a single point is exactly on the surface, just inside, or just outside. You would have to test all the points.

I think the best thing to do is to report: no intersection found.
And then leave it up to the user what to do further with that knowledge.

Benedict Verhegghe <bverheg>
Project Administrator
Mon 18 Nov 2013 10:07:04 AM UTC, original submission:  

pyformex_gts boolean does return an error if you try to find the intersection of 2 surfaces if the surfaces do not intersect eachother. This case is recognized by gts: if you print P.err the last line is:

gtsset: the intersection of `/var/tmp/tmpy8C2r_.gts' and `/var/tmp/tmpj9f6BX.gts' is not a closed curve

Thus, if the 2 surfaces do not intersect, we could handle such a case correctly. E.g. in case of boolean intersection:
*if one single point of s1 is inside s2, then the intersection is s1 (the whole s1 is inside s2)
*if one single point of s2 is inside s1, then the intersection is s2 (the whole s2 is inside s1)
*else he intersection is an empty surface (s1 and s2 are fully separated).

gianluca de santis <gianlucadesi>
Project Member

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by bverheg (Posted a comment)
  • -email is unavailable- added by gianlucadesi (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

     

     

    No changes have been made to this item

    Back to the top


    Powered by Savane 3.5