MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0026934Community[OCCT] OCCT:Shape Healingpublic2015-11-29 01:012017-07-27 09:33
Reportertkalmanshaper3d 
Assigned Togka 
PrioritynormalSeverityminor 
StatusassignedResolutionopen 
PlatformOSOS Version
Product Version 
Target Version[OCCT] 7.4.0*Fixed in Version 
Summary0026934: ShapeFix_Shape damages the revolved shape
DescriptionTessellation fails for some results of BRepPrimAPI_MakeRevol and ShapeFix_Shape combination.

Two preconditions must be satisfied:
1 - The revolved shape is a single periodic closed edge, or a face with a boundary of such edge. Like a circle, ellipse or a bspline.
2 - The revolution is a full 360 degrees.

In the most trivial case, a full revolved circular edge produces a torus shell. The exported BRep looks fine, but tessellation fails completely for the revolved surface.
Steps To ReproduceTopoDS_Edge edge = BRepBuilderAPI_MakeEdge(gp_Circ(gp_Ax2(gp_Pnt(2.0, 0.0, 0.0), gp_Dir(0.0, 0.0, 1.0)), 1.0)).Edge();
gp_Ax1 axis(gp_Pnt(0.0, 0.0, 0.0), gp_Vec(0.0, 1.0, 0.0));
BRepPrimAPI_MakeRevol revolve(edge, axis, 2 * M_PI, Standard_False);
ShapeFix_Shape fixer(revolve.Shape());
fixer.Perform();

Draw script:

circle c 2 0 0 0 0 1 1
mkedge e c
revol r e 0 0 0 0 1 0 360
fixshape r1 r
checkshape r1
TagsNo tags attached.
Test case number
Attached Filespng file icon Revol_tria.PNG (114,358 bytes) 2015-11-30 12:50

- Relationships

-  Notes
(0048652)
msv (developer)
2015-11-30 12:49

I have made the following draw script trying to reproduce this problem.

circle c 2 0 0 0 0 1 1
mkedge e c
revol r e 0 0 0 0 1 0 360
incmesh r 0.01
isos r 0
triangles r

But I have got good triangulation on output. I have attached its snapshot here.

Dear tkalmanshaper3d, please make similarly the case on which you have got incorrect triangulation.
(0048658)
tkalmanshaper3d (developer)
2015-11-30 14:01

I'm terribly sorry, the information I missed out is that a ShapeFix_Shape is applied to the result shape which seems to be the culprit here.
Without ShapeFix_Shape, tessellation works fine, but fails on the result of ShapeFix_Shape. This is still a serious issue for us.
(0048660)
msv (developer)
2015-11-30 16:57
edited on: 2015-11-30 16:59

I could reproduce the problem. The draw script is in steps to reproduce field.
The shape fixed by fixshape becomes invalid from the point of view of checkshape.

It is strange that if we create simple torus with the following commands fixshape will not damage the shape:

plane pl 0 0 0 0 1 0 1 0 0
ptorus t pl 2 1

Such shape has the same geometry and topology as that got from "revol" command.

(0048698)
gka (developer)
2015-12-02 16:48

This case is a bug in the ShapeFix_Wire.

- Issue History
Date Modified Username Field Change
2015-11-29 01:01 tkalmanshaper3d New Issue
2015-11-29 01:01 tkalmanshaper3d Assigned To => msv
2015-11-30 12:49 msv Note Added: 0048652
2015-11-30 12:49 msv Assigned To msv => tkalmanshaper3d
2015-11-30 12:49 msv Status new => feedback
2015-11-30 12:50 msv File Added: Revol_tria.PNG
2015-11-30 14:01 tkalmanshaper3d Note Added: 0048658
2015-11-30 14:05 tkalmanshaper3d Summary Tessellating revolved shapes fails in some cases => Tessellating revolved shapes with ShapeFix_Shape fails in some cases
2015-11-30 14:05 tkalmanshaper3d Description Updated View Revisions
2015-11-30 14:05 tkalmanshaper3d Steps to Reproduce Updated View Revisions
2015-11-30 16:57 msv Note Added: 0048660
2015-11-30 16:57 msv Assigned To tkalmanshaper3d => gka
2015-11-30 16:57 msv Category OCCT:Modeling Algorithms => OCCT:Shape Healing
2015-11-30 16:57 msv Summary Tessellating revolved shapes with ShapeFix_Shape fails in some cases => ShapeFix_Shape damages the revolved shape
2015-11-30 16:57 msv Steps to Reproduce Updated View Revisions
2015-11-30 16:59 msv Note Edited: 0048660 View Revisions
2015-12-02 16:48 gka Note Added: 0048698
2015-12-02 16:48 gka Status feedback => assigned
2016-10-26 12:00 gka Target Version 7.1.0 => 7.2.0
2017-07-27 09:33 abv Target Version 7.2.0 => 7.4.0*


Copyright © 2000 - 2018 MantisBT Team
Powered by Mantis Bugtracker