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

 
 

sr #108442: making gts boolean more robust

Submitter:  gianluca de santis <gianlucadesi>
Submitted:  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
* Mandatory Fields

Add a New Comment Rich Markup
   

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>
Group 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>
Group 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)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only logged-in users can vote.

     

    No changes have been made to this item

    Back to the top

    Powered by Savane 3.13-f8d8.
    Corresponding source code