View Issue Details

IDProjectCategoryView StatusLast Update
0020846Open CASCADEOCCT:Meshpublic2012-11-09 10:20
ReporterptvAssigned Toifv 
PrioritynormalSeverityfeature 
Status closedResolutionfixed 
OSAll 
Fixed in Version6.3.1 
Summary0020846: Few fixes and improvements for OCCT BRepMesh triangulator
DescriptionThere are a few fixes and improvement for OCCT triangulator:
- Replace usage of TColStd_ListOfInteger by specific class container to avoid
excess memory allocation/deallocation of list nodes
- Remove excess invokation of TopExp::MapShapesAndAncestors in IncrementalMesh
- Remove useless package MeshShape from OCCT (useful classes moved to BRepMesh)
- Remove excess classes from BRepMesh and MeshAlgo packages:
    BRepMesh_DataMapOfShapeReal from BRepMesh.cdl
    BRepMesh_Discret.cdl, cxx
    BRepMesh_EdgeDiscret.cdl, cxx
    BRepMesh_SurfaceGrid.cdl, cxx
        DataMapOfIntegerCirc from MeshAlgo.cdl
- Remove excess methods from BRepMesh_FastDiscret (cdl and cxx), MeshAlgo (cdl
and cxx) and in draw MeshTest (cxx)
- Change containers if MeshDS classes to use common NCollecton_IncAllocator
- Fix for NCollection_Map (this fix can be integrated independantly)

Please test enclosed archive for non-regression test. The sources prepared
under ros for the version of the end of 01.2009 (I will merge it with new
version of ros if necessary for integration moment)

   Dear QA,
- Please pay attention to MeshShape package. There are dummy class in the
attached fix to be sure that all old generated files become obsolete. This
package with all generated files (hxx. gxx, ixx and jxx) should be removed from
OCCT.
- Please inform me about all performance and memory improvements and
regressions.
- Also, do not hesitate to ask me questions if any.
Additional information
and documentation updates
Documentation remark, added by PTV 2009-02-17 11:06:22:

New features:
New class NCollection_Handle into Open CASCADE.
This template class is used to define Handle adaptor for allocated dynamically
objects of arbitrary type.
The advantage is that this handle will automatically destroy the object when
last referred Handle is destroyed (i.e. it is a typical smart pointer), and
that it can be handled as Handle(Standard_Transient) in OCCT components.

Improvements:
- Replace usage of TColStd_ListOfInteger by specific containers to avoid
excess memory allocation/deallocation of list nodes.
- Remove Domain flag from MeshDS, MeshAlgo and BRepMesh to simplify mesh
structure and decrease memory allocation for mesh structure.
- Change containers if MeshDS classes to use common NCollecton_IncAllocator
- Fix memory leak with BRepMesh_Classifier

Changes:
- Remove excess package MeshShape (useful classes moved to BRepMesh)

- Remove excess classes:
  + BRepMesh_Discret
  + BRepMesh_EdgeDiscret
  + BRepMesh_SurfaceGrid
  + MeshDS_DataMapOfInteger

- Remove useless containers (declared in cdl):
  + BRepMesh_DataMapOfIntegerFace
  + MeshAlgo_DataMapOfIntegerCirc
  + MeshTest_DrawableUVDomain

- Remove excess methods from BRepMesh_FastDiscret, MeshAlgo and MeshTest

- Fix for operator= of NCollection_Map

Modified entities:
MeshDS
MeshAlgo
MeshTest
BRepMesh
NCollection_Map
TagsNo tags attached.
Test case number

Attached Files

  • occ20846_v1.tar.gz (66,710 bytes)
  • occ20846_v2.tar.gz (71,481 bytes)
  • OCC20846-OCC20627.tar.gz (51,147 bytes)
  • OCC20846-correction.tar.gz (34,514 bytes)
  • occ20846-v3-abv.tar.gz (17,707 bytes)
  • OCC20846-v4-ptv.tar.gz (21,366 bytes)

Activities

2009-02-02 08:59

 

occ20846_v1.tar.gz (66,710 bytes)

2009-02-06 08:01

 

occ20846_v2.tar.gz (71,481 bytes)

2009-02-13 17:21

 

OCC20846-OCC20627.tar.gz (51,147 bytes)

2009-02-16 09:27

 

OCC20846-correction.tar.gz (34,514 bytes)

2009-03-04 14:37

 

occ20846-v3-abv.tar.gz (17,707 bytes)

2009-04-16 13:40

 

OCC20846-v4-ptv.tar.gz (21,366 bytes)

Issue History

Date Modified Username Field Change
2009-02-13 19:26 bugmaster Status new => verified
2009-02-16 11:33 mkv CC => apv
2009-02-16 11:34 bugmaster Status verified => assigned
2009-02-16 11:35 bugmaster Assigned To bugmaster => ptv
2009-02-17 13:06 ptv Status assigned => resolved
2009-03-16 16:47 bugmaster Assigned To ptv => abv
2009-03-16 16:47 bugmaster Status resolved => assigned
2009-05-13 17:40 bugmaster Assigned To abv => ifv
2009-05-14 10:49 ifv Status assigned => resolved
2009-05-19 12:48 bugmaster Status resolved => tested
2009-05-19 20:17 bugmaster Status tested => verified
2009-06-24 19:43 bugmaster Status verified => closed
2009-06-24 19:43 bugmaster Resolution @0@ => fixed
2011-08-02 11:31 bugmaster Category OCCT:MOA => OCCT:Modeling Algorithms
2012-01-11 12:21 atp Description Updated
2012-01-11 12:21 atp Additional Information Updated
2012-11-09 10:20 abv Category OCCT:Modeling Algorithms => OCCT:Mesh