MantisBT - Open CASCADE
View Issue Details
0024473Open CASCADE[OCCT] OCCT:Foundation Classespublic2013-12-17 14:402019-05-15 14:51
[OCCT] 6.7.0 
[OCCT] 6.8.0[OCCT] 6.8.0 
Not needed
0024473: TKMath, BVH - introduce template-based package for Bounding volume hierarchy structures and tools
Current BVH implementation introduced in TKOpenGl toolkit for Ray-Tracing rendering has significant re-usage issues. It is suggested to move/extend this functionality to TKMath toolkit as more generalized template-based classes.

Implementing a set of flexible ray-tracing components, that can be used for different rendering and geometrical algorithms: Whitted style ray-tracing, path tracing (includign GPU-based versions), points projection, collision detection, search of nearest mesh elements and others.
This patch introduces new template-based TKMath/BVH package. A bounding volume hierarchy (BVH) is a tree structure on a set of geometric objects. All geometric objects are wrapped in bounding volumes (BVH package uses axis-aligned bounding boxes - AABB) that are organized into binary tree. This accelerating structure can be used in a wide variety of geometry and graphics algorithms, such as ray-tracing, projecting, collision detection, search of nearest neighbor, frustum culling, efficient selection and others. BVH package includes a variety of BVH building methods, which provide a different balance between construction time and resulted tree quality.
No tags attached.
related to 0024503closed bugmaster Open CASCADE TKOpenGl - Porting ray-tracing component on BVH package 
related to 0024307closed apn Open CASCADE TKOpenGl - efficient culling of large number of presentations 
related to 0025411closed bugmaster Open CASCADE BVH package - eliminate warning about hidden overloaded method ::Box 
Not all the children of this issue are yet resolved or closed.
Issue History
2013-12-17 14:40dbpNew Issue
2013-12-17 14:40dbpAssigned To => dbp
2014-01-09 16:49dbpNote Added: 0027422
2014-01-09 16:49dbpAssigned Todbp => kgv
2014-01-09 16:49dbpStatusnew => feedback
2014-01-14 20:57kgvProduct VersionUnscheduled => 6.7.0
2014-01-14 20:57kgvTarget VersionUnscheduled => 6.7.1
2014-01-14 20:57kgvSummaryImplementing Ray-Tracing Toolkit for OCCT => TKMath, BVH - introduce template-based package for Bounding volume hierarchy structures and tools
2014-01-14 20:57kgvDescription Updatedbug_revision_view_page.php?rev_id=6599#r6599
2014-01-15 17:05dbpNote Added: 0027505
2014-01-15 17:05dbpStatusfeedback => resolved
2014-01-15 17:18kgvNote Added: 0027506
2014-01-15 17:18kgvAssigned Tokgv => bugmaster
2014-01-15 17:18kgvStatusresolved => reviewed
2014-01-16 07:22mkvAssigned Tobugmaster => mkv
2014-01-16 10:14mkvNote Added: 0027511
2014-01-16 10:14mkvTest case number => Not needed
2014-01-16 10:14mkvAssigned Tomkv => bugmaster
2014-01-16 10:14mkvStatusreviewed => tested
2014-01-16 10:23dbpRelationship addedrelated to 0024503
2014-01-17 20:43kgvRelationship addedrelated to 0024307
2014-01-21 11:22bugmasterChangeset attached => occt master 3c4e78f2
2014-01-21 11:22bugmasterStatustested => verified
2014-01-21 11:22bugmasterResolutionopen => fixed
2014-04-04 12:36abvTarget Version6.7.1 => 6.8.0
2014-09-29 14:06dbpSteps to Reproduce Updatedbug_revision_view_page.php?rev_id=8181#r8181
2014-10-05 13:23abvCategoryOCCT:Visualization => OCCT:Foundation Classes
2014-10-22 16:13kgvRelationship addedrelated to 0025411
2014-11-11 12:43aivFixed in Version => 6.8.0
2014-11-11 13:02aivStatusverified => closed
2019-05-15 14:51kgvRelationship addedparent of 0030655

2014-01-09 16:49   
Dear kgv,

Could you please review the current version of BVH package (branch CR24473_1)?

In general, all is done. But, there may be issues related to implementation details and design.
2014-01-15 17:05   
Dear kgv,

the updated version of BVH package are ready in CR24473_1 branch.
Please review.
2014-01-15 17:18   
Dear bugmaster,

please check compilation on all supported platforms.
Existing functionality has not been affected by the patch - regression testing is not required.
2014-01-16 10:14   
Dear BugMaster,

Branch CR24473_1 (and products from GIT master) was compiled on Linux and Windows platforms and tested.
SHA-1: b5ef2ed42ea8d65ad6eb19ee2dd912d8077802dc

Number of compiler warnings:

occt component :
Linux: 55 (55 on master)
Windows: 1 (1 on master)

products component :
Linux: 20 (20 on master)
Windows: 2 (2 on master)