View Issue Details

IDProjectCategoryView StatusLast Update
0026934CommunityOCCT:Shape Healingpublic2023-08-01 15:06
Reportertkalmanshaper3d Assigned Togka 
PrioritynormalSeverityminor 
Status assignedResolutionopen 
Target VersionUnscheduled 
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 Files

  • Revol_tria.PNG (114,358 bytes)

Activities

msv

2015-11-30 12:49

developer   ~0048652

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.

msv

2015-11-30 12:50

developer  

Revol_tria.PNG (114,358 bytes)

tkalmanshaper3d

2015-11-30 14:01

developer   ~0048658

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.

msv

2015-11-30 16:57

developer   ~0048660

Last edited: 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.

gka

2015-12-02 16:48

developer   ~0048698

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
2015-11-30 14:05 tkalmanshaper3d Steps to Reproduce Updated
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
2015-11-30 16:59 msv Note Edited: 0048660
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
2019-09-04 12:58 abv Target Version 7.4.0 => 7.5.0
2020-09-11 16:48 utverdov Target Version 7.5.0 => 7.6.0
2021-08-31 15:21 gka Target Version 7.6.0 => 7.7.0
2022-10-24 10:43 szy Target Version 7.7.0 => 7.8.0
2023-08-01 15:06 dpasukhi Target Version 7.8.0 => Unscheduled