MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0028274Community[OCCT] OCCT:Modeling Algorithmspublic2016-12-23 17:532017-12-05 16:59
ReporterIstvan Csanady 
Assigned Tomsv 
PrioritynormalSeveritymajor 
StatusnewResolutionopen 
PlatformMacOSOSOS VersionX
Product Version 
Target Version[OCCT] 7.4.0*Fixed in Version 
Summary0028274: BOPAlgo_MakerVolume fails to create solid
DescriptionBOPAlgo_MakerVolume fails to create solid from the attached faces.
Steps To Reproducerestore tmp.brep a
bnondestructive 1
eval mkvolume r [explode a f]
nbshapes r
TagsNo tags attached.
Test case numberbugs modalg_7 bug28274
Attached Files? file icon tmp.brep (22,450 bytes) 2016-12-23 17:53
png file icon solids.PNG (11,631 bytes) 2016-12-23 18:10
? file icon splines.brep (26,329 bytes) 2016-12-28 19:15
? file icon exception (17,589 bytes) 2016-12-29 20:43
? file icon broken_solids.brep (14,651 bytes) 2016-12-30 01:25
? file icon only_one_solid.brep (9,178 bytes) 2017-01-01 17:43

- Relationships

-  Notes
(0062078)
Istvan Csanady (developer)
2016-12-23 18:06

If SetNonDestructive is set to false it does not fail.
(0062079)
msv (developer)
2016-12-23 18:11

I have obtained 3 solids (see the picture) without setting any flags.
What is wrong in your case?
(0062080)
Istvan Csanady (developer)
2016-12-23 18:12

If I set the SetNonDestructive flag to true, it returns an empty compound.
(0062081)
Istvan Csanady (developer)
2016-12-23 18:14

BOPAlgo_MakerVolume volumeMaker;
        volumeMaker.SetArguments(facesList);
        volumeMaker.SetRunParallel(true);
        volumeMaker.SetNonDestructive(true);
        volumeMaker.SetAvoidInternalShapes(false);
(0062082)
msv (developer)
2016-12-23 18:21

With setting these options, I obtain the same 3 solids. However checkshape complains about IntersectingWires.
Draw[111]> checksh r
On Shape faulty_1 :
BRepCheck_InvalidPolygonOnTriangulation
On Shape faulty_2 :
BRepCheck_InvalidPolygonOnTriangulation
On Shape faulty_3 :
BRepCheck_IntersectingWires

Faulty shapes in variables faulty_1 to faulty_3 


With non-destructive=false, only 2 first faulties occur.
(0062083)
Istvan Csanady (developer)
2016-12-23 18:22

Interesting, I tried it with and without fuzzy, and got the same results.
(0062084)
msv (developer)
2016-12-23 18:24

I test on Windows compiled with VC12 in release mode.
(0062085)
Istvan Csanady (developer)
2016-12-23 18:25

If I copy the shape before performing the operation, it will work fine.
(0062272)
Istvan Csanady (developer)
2016-12-28 19:16

I have the same issue with the new attached file, but in this case the result does not depend on non-destructive mode or on fuzzy, it always fails (debug and release mode).
(0062331)
msv (developer)
2016-12-29 18:07

The case with splines.brep needs additional investigation.
(0062334)
Istvan Csanady (developer)
2016-12-29 19:12

Would more test data be useful? I find that in similar cases VolumeMaker is not very robust, and I can easily create similar cases where it fails.
(0062336)
Istvan Csanady (developer)
2016-12-29 20:43

Exception.brep fails because one of the face-face intersections throws an exception.
(0062347)
Istvan Csanady (developer)
2016-12-30 01:26

Applying MakeVolume on broken_solids.brep leads to invalid shapes.
(0062348)
Istvan Csanady (developer)
2016-12-30 01:38

I have successfully reproduced the issue with similar geometries that I converted to NURBS geometry. This means that the problem can be related to periodic and/or closed surfaces.
(0062383)
Istvan Csanady (developer)
2017-01-01 17:43

Another similar issue: only_one_solid.brep generates a only one solid, instead of two.
(0069985)
mkv (tester)
2017-08-28 15:14

Problem described in issue is reproduced on current state of OCCT.

- Issue History
Date Modified Username Field Change
2016-12-23 17:53 Istvan Csanady New Issue
2016-12-23 17:53 Istvan Csanady Assigned To => msv
2016-12-23 17:53 Istvan Csanady File Added: tmp.brep
2016-12-23 18:06 Istvan Csanady Note Added: 0062078
2016-12-23 18:10 msv File Added: solids.PNG
2016-12-23 18:11 msv Note Added: 0062079
2016-12-23 18:12 Istvan Csanady Note Added: 0062080
2016-12-23 18:14 Istvan Csanady Note Added: 0062081
2016-12-23 18:21 msv Note Added: 0062082
2016-12-23 18:22 Istvan Csanady Note Added: 0062083
2016-12-23 18:24 msv Note Added: 0062084
2016-12-23 18:24 msv Steps to Reproduce Updated View Revisions
2016-12-23 18:25 Istvan Csanady Note Added: 0062085
2016-12-23 18:26 msv Steps to Reproduce Updated View Revisions
2016-12-28 19:15 Istvan Csanady File Added: splines.brep
2016-12-28 19:16 Istvan Csanady Note Added: 0062272
2016-12-29 18:07 msv Note Added: 0062331
2016-12-29 19:12 Istvan Csanady Note Added: 0062334
2016-12-29 20:43 Istvan Csanady File Added: exception
2016-12-29 20:43 Istvan Csanady Note Added: 0062336
2016-12-30 01:25 Istvan Csanady File Added: broken_solids.brep
2016-12-30 01:26 Istvan Csanady Note Added: 0062347
2016-12-30 01:38 Istvan Csanady Note Added: 0062348
2017-01-01 17:43 Istvan Csanady File Added: only_one_solid.brep
2017-01-01 17:43 Istvan Csanady Note Added: 0062383
2017-07-21 11:22 msv Target Version 7.2.0 => 7.3.0
2017-08-28 15:14 mkv Test case number => bugs modalg_7 bug28274
2017-08-28 15:14 mkv Note Added: 0069985
2017-12-05 16:59 msv Target Version 7.3.0 => 7.4.0*


Copyright © 2000 - 2018 MantisBT Team
Powered by Mantis Bugtracker