View Issue Details

IDProjectCategoryView StatusLast Update
0023640CommunityOCCT:Documentationpublic2015-07-27 14:09
ReporterTimo Assigned Tobugmaster  
Status closedResolutionfixed 
Product Version6.5.4 
Target Version6.9.0Fixed in Version6.9.0 
Summary0023640: Documentation for local sewing with BRepBuilderAPI_Sewing is missing
DescriptionIn it was asked how local sewing can be performed in OpenCascade.

The answer was:
First you should Load() a context shape
and after use Add() for sub-shapes which should be locally sewed.

The forum supervisor wrote:
Unfortunately this feature still is not documented.
Therefore I suggest you to register the corresponding issue in Mantis Bug Tracker.

It would be helpful if a use case for local sewing is explained and how it can be used to get better performance than with global sewing.

Documentation about local sewing should be added to the Modeling Algorithms User's Guide as well as to the Doxygen Code documentation.
Steps To ReproduceNot applicable.
TagsNo tags attached.
Test case numberNot needed


related to 0025390 closedbugmaster Open CASCADE Redesign of Technical Overview 



2014-07-25 14:42

developer   ~0030424

I found some information about Local Sewing on

It might be useful to for the proposed documentation enhancement:

"In case when a shape still has some unsewed faces or edges after sewing, it is possible to use local sewing with a greater tolerance.

Local sewing is especially good for open shells.
Local sewing allows to sew a hole in one part of the shape and to keep a required hole smaller than the specified working tolerance for local sewing. Local sewing is much faster than sewing on the whole shape.

All pre-existing connections of the whole shape are kept after local sewing."

There are also some other pieces of information about sewing on the website, but some of it is not up-to-date, like mentioning BRepAlgo_Sewing on


2014-10-29 14:31

developer   ~0033825

Dear Timo, actually, there is a section about sewing in the Technical Overview

As you can see, it is exactly based on the site contents.

Do you suggest somehow enhancing this?


2014-10-29 15:21

developer   ~0033834

I rather meant to describe local sewing also in the Modeling User's guide and API reference documentation. I mean, how to actually apply local sewing using the Load- and Add-method. Not much text would be needed but at least to mention this possibility and the benefits.

For me, it wasn't clear in case of local sewing:
Load(): Can the context shape also be a compound containing a shell and additional faces to be sewed or does it have to be a shell containing all faces?
Add(): Should I add here the faces to be sewed or specify certain edges of faces which should be sewed?

Additionally, some parts seem not up-to-date in the Technical overview, at least BRepAlgo_Sewing is mentionend, but it doesn't exist anymore.


2014-10-29 15:39

developer   ~0033837

OK. The section about sewing will be soon moved to the Modeling User's guide.

Dear Galina, could you do the following:

1) Review the description of Sewing to check if there is no outdated information.
2) Add a code example illustrating the usage of Local Sewing with proper comments. (And expand the section further if necessary).


2014-11-18 10:58

developer   ~0034468

Here is an example code for local sewing which I received in the frame of a support query and which could be used in the documentation:

"In order to use local sewing it is necessary to create a compound from two full sewed shapes then load full compound using method BRepBuilderAPI_Sewing::Load().
After that it is necessary to add local sub-shapes which should be sewed using method BRepBuilderAPI_Sewing::Add(). The result of sewing can be got using method BRepBuilderAPI_Sewing::SewedShape().
For example:
//initial sewed shapes
TopoDS_Shape aS1, aS2;
TopoDS_Shape aComp;
BRep_Builder aB;
aB.Add(aComp, aS1);
aB.Add(aComp, aS2);

//sub shapes which should be locally sewed
//performing sewing
//result shape
TopoDS_Shape aRes = aSewing.SewedShape();


2014-12-08 16:22

administrator   ~0035142

Branch CR23640 has been created by ysn.

SHA-1: 3abaadd12ebffcff81a78133c27cc806bede2ea2

Detailed log of new commits:

Author: ysn
Date: Mon Dec 8 16:21:48 2014 +0300

    Fix for bug 23640. What's more important: merging the rest of Technical Overview content into User's Guides.
    However, Technical Overview itself is left intact and will be replaced by a shortened document only at the next stage.


2014-12-08 16:22

developer   ~0035143

I've made a fix for bug 23640 in the corresponding branch, adding the requested example.

What's more important: merging the rest of Technical Overview content into User's Guides.
However, Technical Overview itself is left intact and will be replaced by a shortened document only at the next stage.


2014-12-08 16:30

developer   ~0035144

Dear Michail, please, have a look at the proposed changes.


2014-12-08 23:32

administrator   ~0035175

Branch CR23640 has been updated by msv.

SHA-1: a9b85ac3c0d3e57c080d4d0b40e3316ce015d576

Detailed log of new commits:

Author: msv
Date: Mon Dec 8 23:32:25 2014 +0300

    -Correct UG sections concerning Sewing.
    -Correct comments in the code referring to old location of sewing algorithm.


2014-12-08 23:35

developer   ~0035176

I have corrected the Sewing section of UG.
I have looked at other UGs only briefly.


2014-12-09 11:03

developer   ~0035191

OK. Thank you for the input.


2015-01-26 14:28

manager   ~0036647

Reviewed, please integrate.

Actually many fragments merged from the site are quite outdated and require revision, but this can be made later


2015-01-30 14:03

developer   ~0036888

Is the Target Version of this Mantis entry correct?


2015-07-27 14:09

administrator   ~0043559

Branch CR23640 has been deleted by kgv.

SHA-1: a9b85ac3c0d3e57c080d4d0b40e3316ce015d576

Related Changesets

occt: master e2b55410

2015-01-29 10:21:33


Committer: bugmaster Details Diff
0023640: Documentation for local sewing with BRepBuilderAPI_Sewing is missing

Fix for bug 23640.
Merging the rest of Technical Overview content into User's Guides.

-Correct UG sections concerning Sewing.
-Correct comments in the code referring to old location of sewing algorithm.
Affected Issues
mod - dox/user_guides/boolean_operations/ Diff File
mod - dox/user_guides/foundation_classes/ Diff File
mod - dox/user_guides/iges/ Diff File
rm - dox/user_guides/modeling_algos/images/modeling_algos_image019.png Diff File
add - dox/user_guides/modeling_algos/images/modeling_algos_image058.png Diff File
add - dox/user_guides/modeling_algos/images/modeling_algos_image059.png Diff File
add - dox/user_guides/modeling_algos/images/modeling_algos_image060.png Diff File
add - dox/user_guides/modeling_algos/images/modeling_algos_image061.png Diff File
mod - dox/user_guides/modeling_algos/ Diff File
mod - dox/user_guides/modeling_data/ Diff File
mod - dox/user_guides/ocaf/ Diff File
mod - dox/user_guides/ocaf_wp/ Diff File
mod - dox/user_guides/shape_healing/ Diff File
add - dox/user_guides/step/images/step_image002.png Diff File
mod - dox/user_guides/step/ Diff File
add - dox/user_guides/xde/images/239_xde_12_400.png Diff File
add - dox/user_guides/xde/images/614_xde_04_400.png Diff File
add - dox/user_guides/xde/images/646_xde_11_400.png Diff File
mod - dox/user_guides/xde/ Diff File
mod - src/ShapeUpgrade/ShapeUpgrade_ShellSewing.cdl Diff File

Issue History

Date Modified Username Field Change
2012-12-13 18:45 Timo New Issue
2012-12-13 18:45 Timo Assigned To => atp
2012-12-13 19:13 szy Target Version => 6.6.0
2012-12-14 15:57 atp Assigned To atp => gka
2013-02-26 15:50 abv Target Version 6.6.0 => 6.7.0
2013-12-16 16:20 gka File Added: Surface_0.brep
2013-12-16 16:20 gka File Added: Surface_1.brep
2013-12-16 16:29 gka File Deleted: Surface_0.brep
2013-12-16 16:29 gka File Deleted: Surface_1.brep
2013-12-21 10:13 abv Target Version 6.7.0 => 6.7.1
2014-04-04 18:27 abv Target Version 6.7.1 => 6.8.0
2014-07-25 14:42 Timo Note Added: 0030424
2014-10-29 13:57 abv Assigned To gka => ysn
2014-10-29 13:57 abv Status new => assigned
2014-10-29 14:31 ysn Note Added: 0033825
2014-10-29 15:05 ysn Assigned To ysn => Timo
2014-10-29 15:05 ysn Status assigned => feedback
2014-10-29 15:21 Timo Note Added: 0033834
2014-10-29 15:22 Timo Assigned To Timo => ysn
2014-10-29 15:22 Timo Status feedback => assigned
2014-10-29 15:39 ysn Assigned To ysn => gka
2014-10-29 15:39 ysn Note Added: 0033837
2014-11-06 06:37 abv Target Version 6.8.0 => 7.1.0
2014-11-18 10:58 Timo Note Added: 0034468
2014-11-18 11:30 gka Assigned To gka => ysn
2014-12-08 16:22 git Note Added: 0035142
2014-12-08 16:22 ysn Note Added: 0035143
2014-12-08 16:29 ysn Assigned To ysn => msv
2014-12-08 16:30 ysn Note Added: 0035144
2014-12-08 16:30 ysn Status assigned => feedback
2014-12-08 23:32 git Note Added: 0035175
2014-12-08 23:35 msv Note Added: 0035176
2014-12-08 23:35 msv Assigned To msv => ysn
2014-12-08 23:35 msv Status feedback => resolved
2014-12-08 23:35 msv Steps to Reproduce Updated
2014-12-09 11:02 ysn Assigned To ysn => abv
2014-12-09 11:03 ysn Note Added: 0035191
2015-01-26 14:28 abv Note Added: 0036647
2015-01-26 14:28 abv Assigned To abv => bugmaster
2015-01-26 14:28 abv Status resolved => reviewed
2015-01-26 19:01 apn Test case number => Not needed
2015-01-26 19:01 apn Status reviewed => tested
2015-01-30 14:00 bugmaster Changeset attached => occt master e2b55410
2015-01-30 14:00 bugmaster Status tested => verified
2015-01-30 14:00 bugmaster Resolution open => fixed
2015-01-30 14:03 Timo Note Added: 0036888
2015-02-09 11:05 bugmaster Target Version 7.1.0 => 6.9.0
2015-05-05 21:26 abv Relationship added related to 0025390
2015-05-14 15:28 aiv Status verified => closed
2015-05-14 15:30 aiv Fixed in Version => 6.9.0
2015-07-27 14:09 git Note Added: 0043559