| Summary: | Infinite loop in G4SubtractionSolid::DistanceToIn() | ||
|---|---|---|---|
| Product: | Geant4 | Reporter: | Svetlana Biktemerova <biktem> |
| Component: | geometry/solids | Assignee: | Vladimir.Grichine |
| Status: | RESOLVED INVALID | ||
| Severity: | minor | CC: | mario.alemi, tatiana.nikitina |
| Priority: | P5 | ||
| Version: | 9.2 | ||
| Hardware: | All | ||
| OS: | All | ||
|
Description
Svetlana Biktemerova
2009-03-10 10:27:13 CET
Dear Svetlana, The infinite loop is caused by the wrong way of using boolean operations. In your case two solids have touching surfaces, when you subtract such solids, you will have a inconsistency. To avoid this kind of problem, you can make one solid smaller by a small value(normally 1.e-6 mm), then you will not have a problem with touching surfaces. Best Regards, Tatiana Nikitina Dear Tatiana, I'm sorry for inconvenience and thank you. But, am I right that this problem is still can be valid for the "intersection part" of volumes which are in G4SubtractionSolid, although the infinity loop will be caused much rarely? Dear Svetlana, If a boolean operation is defined correctly and your application still enter in the Infinite Loop, that means the wrong replay of one of the solids used for the boolean operation. This is an error of the solid and not of the boolean operation. Best Regards, Tatiana Nikitina |