View Issue Details

IDProjectCategoryView StatusLast Update
0028025CommunityOCCT:Data Exchangepublic2019-10-13 08:33
ReporterMarkus Assigned Togka  
PrioritynormalSeverityminor 
Status assignedResolutionopen 
Product Version7.0.0 
Target VersionUnscheduled 
Summary0028025: Bad triangulation if step file was exported with write.surfacecurve.mode = 0
DescriptionWhen the appended solid is exported to STEP, then imported back to OCCT and meshed, the triangulation looks strange at a surface of revolution if the step file was exported with write.surfacecurve.mode = 0.

With write.surfacecurve.mode = 1, there are no problems.

Could you check what is the problem here? I mean, is it a visualization/meshing problem or a STEP export problem?

The write.surfacecurve.mode parameter indicates whether parametric curves (curves in parametric space of surface) should be written into the STEP file.
It was proposed in 0025654 to change its default value to 0 because it leads to better performance. I don't know why this hasn't been integrated, yet.
Steps To Reproducepload ALL
vinit
restore segment.brep s
whatis s
vclear
tclean s
incmesh s 0.1
vdisplay s
vsetdispmode s 1
vfit
trinfo s
#=> no triangulation problems

param write.surfacecurve.mode 1
testwritestep s_withPCurves.stp s
testreadstep s_withPCurves.stp p
trinfo p
incmesh p 0.1
vclear
vdisplay p
vsetdispmode p 1
#=> no triangulation problems

param write.surfacecurve.mode 0
testwritestep s_withoutPCurves.stp s
testreadstep s_withoutPCurves.stp p
trinfo p
incmesh p 0.1
vclear
vdisplay p
vsetdispmode p 1
#=> now there are triangulation problems
TagsNo tags attached.
Test case number

Attached Files

  • segment.brep (956,588 bytes)
  • bad triangulation.png (25,742 bytes)
  • s_withPCurves.stp (946,514 bytes)
  • s_withoutPCurves.stp (543,214 bytes)
  • withPCurves2d.png (6,304 bytes)
  • withoutPCurves2d.png (7,037 bytes)

Relationships

related to 0025654 assignedona Open CASCADE Data Exchange - Disable writing pcurves to STEP and IGES by default 

Activities

Timo

2016-10-28 14:15

developer  

segment.brep (956,588 bytes)

Timo

2016-10-28 14:16

developer  

bad triangulation.png (25,742 bytes)

oan

2016-10-28 15:18

developer   ~0059342

Dear Timo,

could you please attach reference STEP file?

Timo

2016-10-28 15:34

developer  

s_withPCurves.stp (946,514 bytes)

Timo

2016-10-28 15:34

developer  

s_withoutPCurves.stp (543,214 bytes)

Timo

2016-10-28 15:35

developer   ~0059344

I had appended the brep file, so with the test script you should have been able to produce the step files.
Now, I added a step file with and one without pcurves.

oan

2016-10-28 16:00

developer   ~0059348

Thank you a lot for the STEPs, my fault. Anyway, keeping reference files attached could help to reproduce the problem despite of possible changes in XDE. We will check the case.

Best regards.

Timo

2016-10-28 16:14

developer   ~0059350

OK, thanks.

oan

2019-10-11 23:18

developer  

withPCurves2d.png (6,304 bytes)

oan

2019-10-11 23:18

developer  

withoutPCurves2d.png (7,037 bytes)

oan

2019-10-11 23:49

developer   ~0088060

Dear Andrey,

taking into account parametric representations shown on the attached screenshots withPCurves2d.png and withoutPCurves2d.png, I suppose that real problem is not related to BRepMesh, but to geometry of the model itself and should be fixed during pcurves generation stage, so moved to Shape Healing category.

In addition to the fact that such inconsistencies will mostly probable lead to failures of various modelling algorithms, there is no obvious robust and performant solution that could come to mind in order to fix visual results caused by such inconsistencies.

Incorrect pcurves lead to appearance of twisted areas represented by leaves at the bottom part of withoutPCurves2d.png causing distribution of 3d points so they visually lie outside boundaries of flat face.

As it can be seen, newly generated pcurves are incorrect according to bopargcheck:

param write.surfacecurve.mode 0
testreadstep s_withoutPCurves.stp p
explode p f

bopargcheck p_1 #F
#Faulties, that can not be treated by BOP, are detected.

Made faulty shape: s1COnS_1 (MaxDist = 1.0693803114712022, MaxPar = 0.98181269366173374)
Made faulty shape: s1COnS_2 (MaxDist = 1.0907311576492142, MaxPar = 0.98175607469808723)
Faulties for FIRST shape found : 2
---------------------------------
Shapes are not suppotrted by BOP: NO
Self-Intersections : NO
Check for SI has been aborted : NO
Too small edges : NO
Bad faces : NO
Too close vertices : DISABLED
Too close edges : DISABLED
Shapes with Continuity C0 : NO
Invalid Curve on Surface : YES Cases(2) Total shapes(4)

Faulties for SECOND shape found : 0

Issue History

Date Modified Username Field Change
2016-10-28 14:15 Timo New Issue
2016-10-28 14:15 Timo Assigned To => oan
2016-10-28 14:15 Timo File Added: segment.brep
2016-10-28 14:16 Timo File Added: bad triangulation.png
2016-10-28 15:10 Timo Relationship added related to 0025654
2016-10-28 15:18 oan Note Added: 0059342
2016-10-28 15:18 oan Assigned To oan => Timo
2016-10-28 15:18 oan Status new => feedback
2016-10-28 15:34 Timo File Added: s_withPCurves.stp
2016-10-28 15:34 Timo File Added: s_withoutPCurves.stp
2016-10-28 15:35 Timo Note Added: 0059344
2016-10-28 15:35 Timo Assigned To Timo => oan
2016-10-28 15:36 Timo Status feedback => assigned
2016-10-28 16:00 oan Note Added: 0059348
2016-10-28 16:14 Timo Note Added: 0059350
2016-10-28 16:43 Timo Steps to Reproduce Updated
2016-11-09 10:37 abv Target Version 7.1.0 => Unscheduled
2017-05-31 15:38 Timo Reporter Timo => Markus
2019-10-11 23:18 oan File Added: withPCurves2d.png
2019-10-11 23:18 oan File Added: withoutPCurves2d.png
2019-10-11 23:49 oan Note Added: 0088060
2019-10-11 23:49 oan Assigned To oan => abv
2019-10-11 23:49 oan Status assigned => feedback
2019-10-13 08:33 abv Assigned To abv => gka
2019-10-13 08:33 abv Status feedback => assigned
2019-10-13 08:33 abv Category OCCT:Mesh => OCCT:Data Exchange