View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0033267 | Community | OCCT:Modeling Algorithms | public | 2022-12-09 17:59 | 2024-05-16 14:45 |
Reporter | festive-shrimp | Assigned To | |||
Priority | normal | Severity | minor | ||
Status | new | Resolution | open | ||
Platform | Linux | OS | Ubuntu 22.04 | ||
Product Version | 7.6.3 | ||||
Summary | 0033267: Modeling Algorithms - BRepClass3d_SolidClassifier wrongly classifies a point outside a point as being inside | ||||
Description | In the attached BReps (zipped to fit within upload restriction), the point [-7.738402407598, 6.778833063441, 5.128101237106] is classified by BRepClass3d_SolidClassifier as being inside one of the shapes, with tolerance 0.001. However, this is wrong, as the point is far outside; even outside the OBB of either of the shapes. | ||||
Steps To Reproduce | The point [-7.738402407598, 6.778833063441, 5.128101237106] is classified wrongly by BRepClass3d_SolidClassifier with tolerance 0.001 in one of the two attached BReps (solid_badclass.brep). The other one (solid_goodclass.brep) is nearly identical geometrically, but here the point is correctly classified.,Unfortunately I have not been able to narrow the issue down to simpler geometry. The issue can also be reproduced with the attached program, which can be run as: g++ classify-fail.cpp -I/usr/local/include/opencascade -o classify-fail -lTKernel -lTKTopAlgo -lTKBRep -lTKMath && ./classify-fail This gives the output solid_badclass: TopAbs_IN solid_goodclass: TopAbs_OUT solid_badclass: Outside OBB solid_goodclass: Outside OBB but the expected output is solid_badclass: TopAbs_OUT solid_goodclass: TopAbs_OUT solid_badclass: Outside OBB solid_goodclass: Outside OBB | ||||
Tags | No tags attached. | ||||
Test case number | |||||
|
The files for some reason weren't uploaded along with the issue, so they are attached here. classify-fail.cpp (1,470 bytes) solid_badclass.brep.zip (922,611 bytes) solid_goodclass.brep.zip (897,027 bytes) |
|
Also worth mentioning is that this bug may cause distance computations to give wrong results, since points far outside of shapes may be detected as inside the shapes, thus giving distance 0. |
|
I retested this in 7.8.0, and the issue is still present. |
Date Modified | Username | Field | Change |
---|---|---|---|
2022-12-09 17:59 | festive-shrimp | New Issue | |
2022-12-09 17:59 | festive-shrimp | Assigned To | => msv |
2022-12-09 18:00 | festive-shrimp | Note Added: 0112561 | |
2022-12-09 18:00 | festive-shrimp | File Added: classify-fail.cpp | |
2022-12-09 18:00 | festive-shrimp | File Added: solid_badclass.brep.zip | |
2022-12-09 18:00 | festive-shrimp | File Added: solid_goodclass.brep.zip | |
2022-12-12 18:52 | festive-shrimp | Note Added: 0112613 | |
2023-12-18 17:53 | festive-shrimp | Note Added: 0114794 | |
2024-04-25 10:46 | festive-shrimp | Assigned To | msv => oan |
2024-04-25 19:36 | dpasukhi | Summary | BRepClass3d_SolidClassifier wrongly classifies a point outside a point as being inside => Modeling Algorithms - BRepClass3d_SolidClassifier wrongly classifies a point outside a point as being inside |
2024-05-16 14:45 | oan | Assigned To | oan => |