View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0027705 | Community | OCCT:Modeling Algorithms | public | 2016-07-22 13:32 | 2019-09-04 12:11 |
Reporter | Markus | Assigned To | |||
Priority | low | Severity | minor | ||
Status | assigned | Resolution | open | ||
Product Version | 7.0.0 | ||||
Target Version | Unscheduled | ||||
Summary | 0027705: Modeling Algorithms - Boolean operation returns empty compound for a shape containing a nearly plane cone | ||||
Description | In OCC 7.0.0, the boolean operation returns an empty compound, although checkshape, bopcheck and bopargcheck do not complain. In OCC 6.9.0 bopargcheck complains about an invalild curve on surface on the first shape and the boolean operation runs very long (endless?). | ||||
Steps To Reproduce | pload ALL restore rf.brep f whatis f explode f whatis f_1 whatis f_2 tolerance f_1 tolerance f_2 checkshape f_1 checkshape f_2 brunparallel 1 bopcheck f_1 bopcheck f_2 bopargcheck f_1 f_2 -O #F bop f_1 f_2 bopcommon o whatis o explode o | ||||
Tags | No tags attached. | ||||
Test case number | |||||
related to | 0027015 | closed | bugmaster | Community | Sewing returns invalid shape if some faces are nearly plane cones |
related to | 0027753 | closed | bugmaster | Community | Nearly plane cones should not be created by BRepPrimAPI_MakeRevol |
related to | 0024772 | closed | Community | Modeling Algorithms - Intersection of cylinder and cone produces incorrect results |
|
rf.brep (531,198 bytes) |
|
Further analysis showed that the first shape contains a nearly plane cone. Such geometries already lead to other problems (e.g. 0027015) in the past. |
|
Dear Timo, Nearly plane cones are valid in OCCT. However, they should be avoided to use (such as cylinder or sphere with radius Confusion, for example). Nevertheless, this problem will possible be solved after integration the fix for issue 0027252 (but I do not promise). |
|
Dear nbv, we try to avoid nearly plane cones but in some situations they occur if we feed a line to BRepPrimAPI_MakeRevol that forms an angle of nearly Pi/2. Depending on the angle BRepPrimAPI_MakeRevol (more exactly a class that is used by it) decides whether to create a plane or a cone. But there is a certain range (when the angle is nearly Pi/2) which leads to such nearly plane cones. What do you think about creating a Geom_SurfaceOfRevolution in such cases? Probably, it would help to avoid such problems. |
|
Dear Timo, do you suggest that BRepPrimAPI_MakeRevol created Geom_SurfaceOfRevolution instead of Geom_ConicalSurface? If so, then we should choose a threshold angle. Please create a separate bug for this issue. |
|
Dear msv, I created a separate issue for BRepPrimAPI_MakeRevol (see 0027753). |
|
Thank you, Timo, we will take care of it if there are free resources. |
|
Dear Mikhail, What is the current state of this issue? As far as I know, currently nearly plane cones are converted to the plane on steps of building them. Nevertheless, the attached to this issue shape has already been stored in *.brep format, which does not support any conversions. I.e. an argument of the Boolean operation is nearly-plane cone, as before. Shall we add new support of such cones? Is this issue still actual? P.S. In spite of above said, following script still creates nearly-plane cone: Draw[]> cone co 89.99999999999999 100 Draw[]> dump co *********** Dump of co ************* ConicalSurface Origin :0, 0, 0 Axis :0, 0, 1 XAxis :1, 0, -0 YAxis :-0, 1, 0 Radius :100 Angle :1.5707963267949 |
|
Using low-level API the user can create bad shapes, it is not a secret. Here I see that we have an ill-created shape that is used as an operand to BO. The commands that must check shape validity bopcheck and bopargcheck do not report any issue with this shape regarding ill cone. So, I propose to add such check in bopcheck algorithm in the scope of this bug. Test case is to be created using the attached shape that must diagnose the ill cone. |
|
However, if we fix the issue 0024772 using described there 2nd way this issue will be fixed, too. Then let's postpone this bug. |
Date Modified | Username | Field | Change |
---|---|---|---|
2016-07-22 13:32 | Timo | New Issue | |
2016-07-22 13:32 | Timo | Assigned To | => msv |
2016-07-22 13:32 | Timo | File Added: rf.brep | |
2016-07-22 15:38 |
|
Assigned To | msv => nbv |
2016-07-22 15:38 |
|
Priority | normal => low |
2016-07-22 15:38 |
|
Status | new => assigned |
2016-07-22 15:43 | Timo | Summary | Boolean operation returns empty compound => Boolean operation returns empty compound for a shape containing a nearly plane cone |
2016-07-22 15:46 | Timo | Note Added: 0056182 | |
2016-07-22 15:46 | Timo | Relationship added | related to 0027015 |
2016-07-22 16:07 |
|
Note Added: 0056184 | |
2016-07-22 17:10 | Timo | Note Added: 0056187 | |
2016-07-22 17:34 |
|
Note Added: 0056188 | |
2016-08-05 17:26 | Timo | Relationship added | related to 0027753 |
2016-08-08 11:39 | Timo | Note Added: 0056541 | |
2016-08-08 15:14 |
|
Note Added: 0056553 | |
2016-10-25 18:44 |
|
Target Version | 7.1.0 => 7.2.0 |
2017-05-31 15:41 | Timo | Reporter | Timo => Markus |
2017-07-21 11:04 |
|
Target Version | 7.2.0 => 7.3.0 |
2017-12-05 17:09 |
|
Target Version | 7.3.0 => 7.4.0 |
2018-05-24 14:17 |
|
Relationship added | related to 0024772 |
2018-10-26 13:18 |
|
Note Added: 0080371 | |
2018-10-26 13:18 |
|
Assigned To | nbv => msv |
2018-10-26 13:18 |
|
Status | assigned => feedback |
2018-10-29 17:51 |
|
Note Added: 0080477 | |
2018-10-29 17:51 |
|
Assigned To | msv => nbv |
2018-10-29 17:51 |
|
Status | feedback => assigned |
2018-10-30 12:42 |
|
Note Added: 0080518 | |
2019-08-12 19:08 |
|
Assigned To | nbv => msv |
2019-08-12 19:20 |
|
Target Version | 7.4.0 => Unscheduled |
2019-09-04 12:11 | kgv | Summary | Boolean operation returns empty compound for a shape containing a nearly plane cone => Modeling Algorithms - Boolean operation returns empty compound for a shape containing a nearly plane cone |