MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Related Changesets ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0022940Community[OCCT] OCCT:Visualizationpublic2012-01-30 17:472012-04-16 12:33
ReporterPawel 
Assigned Tobugmaster 
PrioritynormalSeverityintegration request 
StatusclosedResolutionfixed 
PlatformWindowsOSVC++ 2008OS Version32 bit
Product Version[OCCT] 6.5.2 
Target Version[OCCT] 6.5.3Fixed in Version[OCCT] 6.5.3 
Summary0022940: Selection performance: TopAbs_SHELL
DescriptionI have made a change to the code of StdSelect_BRepSelectionTool.cxx described here: http://www.opencascade.org/org/forum/thread_21168/ [^]

Basically, I found out the the selection computation is very slow for TopAbs_SHELLs and applied the selection code for TopAbs_COMPOUNDs for the shells too.

Is there a reason not to do that?

Can this change be integrated into OCCT?
Steps To ReproduceLoad and visualize a complex TopAbs_SHELL using XDE. Then load the same model without using XDE (make sure this is TopAbs_SHELL). Hover with the mouse over the model in each case and see how long it takes to compute the selection.
Additional information
and documentation updates
Performance bottleneck in StdSelect_BRepSelectionTool class in case of TopAbs_SHELL shape type has been corrected. Now this class behaves identically for TopAbs_SHELL and TopAbs_SOLID shape types, with an exception of different selection priorities used.
TagsNo tags attached.
Test case numberTest case is not required
Attached Filescxx file icon StdSelect_BRepSelectionTool.cxx (27,970 bytes) 2012-01-30 17:47

- Relationships

-  Notes
(0019361)
Pawel (developer)
2012-02-02 15:56

Sample file was added before so the issue status should be set to resolved according to the dev workflow
(0019659)
san (developer)
2012-02-20 12:48

Re-using TopAbs_COMPOUND selection logic for TopAbs_SHELL shape type results in doing some unnecessary things related to free vertices, edges and wires. A shell never contains such stuff. From selection point of view, a shell is the same as a solid - i.e. a set of sensitive faces. Thus I would rather merge case branches for TopAbs_SHELL and TopAbs_SOLID.
(0019661)
san (developer)
2012-02-20 12:53

SVN branch OCC22940 has been reviewed and is ready for testing.
(0019671)
apn (administrator)
2012-02-20 16:26

Dear BugMaster,
  Workbench KAS:dev:apn-22940-occt was created from SVN branch http://svn/svn/occt/branches/OCC22940 [^]
  (and apn-22940-products from trunk) and compiled on Linux and Windows platforms.

  There are compilation errors:
/dn47/KAS/dev/apn-22940-occt/src/StdSelect/StdSelect_BRepSelectionTool.cxx: In static member function 'static Standard_Boolean StdSelect_BRepSelectionTool::GetSensitiveForFace(const TopoDS_Face&, const Handle_StdSelect_BRepOwner&, Select3D_ListOfSensitive&, Standard_Boolean, Standard_Integer, Standard_Real, Standard_Boolean)':

/dn47/KAS/dev/apn-22940-occt/src/StdSelect/StdSelect_BRepSelectionTool.cxx:674: error: 'PI' was not declared in this scope
Info : ----------------------- Compilation Report -----------------------
Info : Failed : :KAS:dev:apn-22940-occt:StdSelect:source:StdSelect_BRepSelectionTool.cxx
Info : -----------------------------------------------------------------
(0019678)
san (developer)
2012-02-20 16:49

Merge error corrected
(0019679)
san (developer)
2012-02-20 16:49

The SVN branch has been reviewed and is ready for testing
(0019688)
apn (administrator)
2012-02-21 08:58
edited on: 2012-02-21 10:43

Dear BugMaster,
   Workbench KAS:dev:apn-22940-occt was created from SVN branch http://svn/svn/occt/branches/OCC22940 [^]
   (and apn-22940-products from trunk) and compiled on Windows and Linux platforms.
   
   There are not regressions in apn-22940-products regarding to KAS:dev:products-20120217-opt

   Test case is not required. I've made "steps to reproduce" in emax.
 
   See results in /QADisk/occttests/results/KAS/dev/ apn-22940-products_20022012/lin
   See reference results in /QADisk/occttests/results/KAS/dev/products-20120217-opt_17022012/lin
   See test cases in /QADisk/occttests/tests/ED

(0019724)
bugmaster (administrator)
2012-02-22 12:59

Integrated into trunk of occt repository


Date: 2012-02-22 11:56:58 +0400 (Wed, 22 Feb 2012)
New Revision: 10582

Modified:
   trunk/src/StdSelect/StdSelect_BRepSelectionTool.cxx
(0020365)
Pawel (developer)
2012-04-12 16:44

Verified. Please close.

- Related Changesets
occt: master 73397899
Timestamp: 2012-02-22 07:56:58
Author: san
Committer: bugmaster
Details ] Diff ]
0022940: Selection performance: TopAbs_SHELL
mod - src/StdSelect/StdSelect_BRepSelectionTool.cxx Diff ] File ]

- Issue History
Date Modified Username Field Change
2012-01-30 17:47 Pawel New Issue
2012-01-30 17:47 Pawel Assigned To => san
2012-01-30 17:47 Pawel File Added: StdSelect_BRepSelectionTool.cxx
2012-02-02 15:56 Pawel Note Added: 0019361
2012-02-02 15:56 Pawel Status new => resolved
2012-02-07 12:01 san Assigned To san => aaa
2012-02-07 12:34 san Assigned To aaa => san
2012-02-20 12:48 san Note Added: 0019659
2012-02-20 12:53 san Note Added: 0019661
2012-02-20 12:53 san Assigned To san => bugmaster
2012-02-20 12:53 san Status resolved => reviewed
2012-02-20 12:55 san Additional Information Updated View Revisions
2012-02-20 13:02 apn Assigned To bugmaster => apn
2012-02-20 16:26 apn Note Added: 0019671
2012-02-20 16:27 apn Assigned To apn => san
2012-02-20 16:27 apn Status reviewed => assigned
2012-02-20 16:49 san Note Added: 0019678
2012-02-20 16:49 san Status assigned => resolved
2012-02-20 16:49 san Note Added: 0019679
2012-02-20 16:49 san Assigned To san => bugmaster
2012-02-20 16:49 san Status resolved => reviewed
2012-02-20 17:04 apn Assigned To bugmaster => apn
2012-02-21 08:58 apn Note Added: 0019688
2012-02-21 10:42 apn Test case number => Test case is not required
2012-02-21 10:43 apn Note Edited: 0019688 View Revisions
2012-02-21 10:43 apn Note Edited: 0019688 View Revisions
2012-02-21 10:44 apn Status reviewed => tested
2012-02-21 10:44 apn Assigned To apn => bugmaster
2012-02-22 12:59 bugmaster Note Added: 0019724
2012-02-22 12:59 bugmaster Status tested => verified
2012-02-22 12:59 bugmaster Resolution open => fixed
2012-02-22 12:59 bugmaster Assigned To bugmaster => Pawel
2012-02-22 13:00 bugmaster Target Version => 6.5.3
2012-03-29 17:26 bugmaster Changeset attached => occt master 73397899
2012-04-12 16:44 Pawel Note Added: 0020365
2012-04-16 12:33 Pawel Assigned To Pawel => bugmaster


Copyright © 2000 - 2018 MantisBT Team
Powered by Mantis Bugtracker