View Issue Details

IDProjectCategoryView StatusLast Update
0026495Open CASCADEOCCT:Shape Healingpublic2015-07-29 10:53
Reportermsv Assigned Togka  
Status newResolutionopen 
Product Version6.9.0 
Target VersionUnscheduled 
Summary0026495: Sewing produces fictive degenerated edges
DescriptionThe attached shape is a compound of faces came from an IGES file. When one makes sewing of these faces the result shape contains degenerated edges, which are actually do not point to any singularity of the surface.

An OCCT algorithm must not produce such degenerated edges. If we need to cover a gap in 2D contours of a face it is needed to use other means than creating degenerated edges. Such fictive degenerated edges make problems in other OCCT algorithms, which assume that a degenerated edge points to a singularity in the surface.

Please see the bug #26442, in particular the comment 0026442:0043195, for an example of such algorithm.
Steps To Reproducerestore 2015-01-7108_cut.brep a

#make sewing
sewing s 1e-4 a

#count fictive degenerated edges
set nb_fictive_deg 0
foreach f [explode s f] {
  if {[lsearch [dump $f] degenerated] != -1} {
    #face $f contains degenerated edges
    mksurface su $f
    foreach e [explode $f e] {
      if {[lsearch [dump $e] degenerated] != -1} {
        #edge $e is degenerated
        pcurve c2d $e $f
        #approximate 3d curve and compute its length
        approxcurveonsurf c3d c2d su
        set len3d [lindex [length c3d] end]
        if {$len3d > 1e-7} {
          #length of edge in 3D is not null
          incr nb_fictive_deg
          puts "$e, length 3d = $len3d"
if $nb_fictive_deg {
  puts "Error: sewing produced $nb_fictive_deg fictive degenerated edges"
TagsNo tags attached.
Test case number

Attached Files

  • 2015-01-7108_cut.brep (1,653,884 bytes)



2015-07-29 10:39


2015-01-7108_cut.brep (1,653,884 bytes)

Issue History

Date Modified Username Field Change
2015-07-29 10:39 msv New Issue
2015-07-29 10:39 msv Assigned To => gka
2015-07-29 10:39 msv File Added: 2015-01-7108_cut.brep