MantisBT - Open CASCADE
View Issue Details
0030412Open CASCADE[OCCT] OCCT:Visualizationpublic2018-12-13 08:432019-01-12 14:42
osa 
bugmaster 
normalfeature 
verifiedfixed 
 
[OCCT] 7.4.0* 
ugs/vis/bug30412
0030412: Visualization, TKV3d - add presentation of camera frustum
Update computation algorithm of frustum points and planes in scope of frustum culling.
Use this frustum computation logic to build new interactive object presentation (camera frustum).
Add Draw command to display camera frustum in curent state (it can be useful to check frustum culling for example).
bugs/vis/bug30412
No tags attached.
related to 0030223verified apn Visualization, TKOpenGl - frustum culling does not clip objects within perspective camera 
related to 0024307closed apn TKOpenGl - efficient culling of large number of presentations 
related to 0030434verified bugmaster Visualization, TKV3d - add "NoUpdate" state of frustum culling optimization 
png CameraFrustumPresentation.png (4,442) 2018-12-17 12:24
https://tracker.dev.opencascade.org/
Issue History
2018-12-13 08:43osaNew Issue
2018-12-13 08:43osaAssigned To => kgv
2018-12-13 08:43osaAssigned Tokgv => osa
2018-12-13 08:44osaStatusnew => assigned
2018-12-13 10:45kgvRelationship addedrelated to 0030223
2018-12-13 10:46kgvRelationship addedrelated to 0024307
2018-12-17 12:23gitNote Added: 0081537
2018-12-17 12:24osaFile Added: CameraFrustumPresentation.png
2018-12-20 17:47gitNote Added: 0081580
2018-12-28 18:59gitNote Added: 0081650
2019-01-09 10:55gitNote Added: 0081688
2019-01-09 18:31gitNote Added: 0081691
2019-01-09 18:44osaNote Added: 0081694
2019-01-09 18:44osaAssigned Toosa => kgv
2019-01-09 18:44osaStatusassigned => resolved
2019-01-09 18:44osaSteps to Reproduce Updatedbug_revision_view_page.php?rev_id=20523#r20523
2019-01-10 00:58gitNote Added: 0081696
2019-01-10 01:00gitNote Added: 0081697
2019-01-10 03:11gitNote Added: 0081698
2019-01-10 03:12kgvNote Added: 0081699
2019-01-10 03:12kgvAssigned Tokgv => bugmaster
2019-01-10 03:12kgvSeverityminor => feature
2019-01-10 03:12kgvStatusresolved => reviewed
2019-01-10 03:12kgvProduct Version7.4.0* =>
2019-01-10 12:17kgvRelationship addedrelated to 0030434
2019-01-10 16:40bugmasterTest case number => ugs/vis/bug30412
2019-01-10 16:43bugmasterNote Added: 0081723
2019-01-11 10:33bugmasterNote Added: 0081746
2019-01-11 10:33bugmasterStatusreviewed => tested
2019-01-12 14:34bugmasterChangeset attached => occt master 30a1b24e
2019-01-12 14:34bugmasterStatustested => verified
2019-01-12 14:34bugmasterResolutionopen => fixed
2019-01-12 14:42gitNote Added: 0081766
2019-01-12 14:42gitNote Added: 0081767
2019-01-12 14:42gitNote Added: 0081769

Notes
(0081537)
git   
2018-12-17 12:23   
Branch CR30412 has been created by osa.

SHA-1: 6026510d1fd9b57c6e3f5e126ba7119c7330ac62


Detailed log of new commits:

Author: osa
Date: Mon Dec 17 12:01:17 2018 +0300

    0030412: Visualization, TKV3d - add presentation of camera frustum.
    
    1) Add method Graphic3d_Camera::GetFrustumPoints() to get corner points of camera frustum.
    2) Refactoring of methods OpenGl_BVHTreeSelector::isFullOut(...) and OpenGl_BVHTreeSelector::CacheClipPtsProjections()
    3) Change computation algorithm of frustum planes (build them by corner points)
    4) Add interactive object to draw camera frustum (AIS_CameraFrustum).
    5) Add new Draw command "vcamerafrustum" to display camera frustum.
(0081580)
git   
2018-12-20 17:47   
Branch CR30412 has been updated by osa.

SHA-1: b7d7f0c8c7fae6f07c6733f8c3478ca7b70c54c5


Detailed log of new commits:

Author: osa
Date: Thu Dec 20 17:39:04 2018 +0300

    kgv remarks

(0081650)
git   
2018-12-28 18:59   
Branch CR30412 has been updated forcibly by osa.

SHA-1: 845a6a9ed6e67b55cf7cab1444e2b61d55a9fcfa
(0081688)
git   
2019-01-09 10:55   
Branch CR30412_1 has been created by osa.

SHA-1: fbd80a8f3bb45e2d52e944a108e701b8a22ccdaf


Detailed log of new commits:

Author: osa
Date: Mon Dec 17 12:01:17 2018 +0300

    0030412: Visualization, TKV3d - add presentation of camera frustum.
    
    1) Add method Graphic3d_Camera::GetFrustumPoints() to get corner points of camera frustum.
    2) Refactoring of methods OpenGl_BVHTreeSelector::isFullOut(...) and OpenGl_BVHTreeSelector::CacheClipPtsProjections()
    3) Change computation algorithm of frustum planes (build them by corner points)
    4) Add interactive object to draw camera frustum (AIS_CameraFrustum).
    5) Add new Draw command "vcamerafrustum" to display camera frustum.
(0081691)
git   
2019-01-09 18:31   
Branch CR30412_1 has been updated forcibly by osa.

SHA-1: 354439a0b64608cb3bb9ee3fc80198e0dfb0ceef
(0081694)
osa   
2019-01-09 18:44   
Dear Kirill, please review
(0081696)
git   
2019-01-10 00:58   
Branch CR30412_1 has been updated by kgv.

SHA-1: 73dafa4dbf6312410c924fce7dc4a13d452c2d53


Detailed log of new commits:

Author: kgv
Date: Wed Jan 9 23:58:35 2019 +0300

    # cosmetics; vcamerafrustum merged into vcamera; detect presentation by edges by default

(0081697)
git   
2019-01-10 01:00   
Branch CR30412_2 has been created by kgv.

SHA-1: fa3c840b8b59d191f92eef932d08f91f54e7b129


Detailed log of new commits:

Author: osa
Date: Mon Dec 17 12:01:17 2018 +0300

    0030412: Visualization, TKV3d - add presentation of camera frustum
    
    1) Added method Graphic3d_Camera::FrustumPoints() returning corner points of camera frustum.
    2) Refactored methods OpenGl_BVHTreeSelector::isFullOut(...) and OpenGl_BVHTreeSelector::CacheClipPtsProjections()
    3) Changed computation algorithm of frustum planes (build them by corner points)
    4) Added interactive object AIS_CameraFrustum to draw camera frustum.
    5) Extended Draw command "vcamera" with option displaying camera frustum.
(0081698)
git   
2019-01-10 03:11   
Branch CR30412_2 has been updated forcibly by kgv.

SHA-1: edf18e4714177fc4b04f5c7a4df43e305f0dd1c0
(0081699)
kgv   
2019-01-10 03:12   
Please take the patch.

http://jenkins-test-12.nnov.opencascade.com:8080/view/CR30412_2-master-KGV [^]
(0081723)
bugmaster   
2019-01-10 16:43   
Combination -
OCCT branch : CR30412_2 SHA - fa3c840b8b59d191f92eef932d08f91f54e7b129
Products branch : master SHA - 0b9df64a156abd5cbfbfccb15967b46cdabfe1f8
was compiled on Linux, MacOS and Windows platforms and tested in optimize mode.

Number of compiler warnings:
No new/fixed warnings

Regressions/Differences/Improvements:
No regressions/differences

CPU differences:
Debian80-64:
OCCT
Total CPU difference: 16362.730000000083 / 16388.860000000008 [-0.16%]
Products
Total CPU difference: 7153.750000000044 / 7167.61000000003 [-0.19%]
Windows-64-VC14:
OCCT
Total CPU difference: 17766.59375 / 17753.9375 [+0.07%]
Products
Total CPU difference: 8595.21875 / 8592.53125 [+0.03%]


Image differences :
No differences that require special attention

Memory differences :
No differences that require special attention
(0081746)
bugmaster   
2019-01-11 10:33   
Fix has been tested in framework of WEEK-2

Combination -
OCCT branch : WEEK-2 SHA - e86ab0bbd895a6609d2b948088ffe4f46e3a5f64
Products branch : WEEK-2 SHA - 0b9df64a156abd5cbfbfccb15967b46cdabfe1f8
was compiled on Linux, MacOS and Windows platforms and tested in optimize mode.

Number of compiler warnings:
No new/fixed warnings

Regressions/Differences/Improvements:
No regressions/differences

CPU differences:
Debian80-64:
OCCT
Total CPU difference: 16371.970000000036 / 16388.860000000008 [-0.10%]
Products
Total CPU difference: 7159.450000000021 / 7172.62000000003 [-0.18%]
Windows-64-VC14:
OCCT
Total CPU difference: 17753.953125 / 17753.9375 [+0.00%]
Products
Total CPU difference: 8592.859375 / 8592.53125 [+0.00%]


Image differences :
No differences that require special attention

Memory differences :
No differences that require special attention
(0081766)
git   
2019-01-12 14:42   
Branch CR30412_2 has been deleted by inv.

SHA-1: edf18e4714177fc4b04f5c7a4df43e305f0dd1c0
(0081767)
git   
2019-01-12 14:42   
Branch CR30412_1 has been deleted by inv.

SHA-1: 73dafa4dbf6312410c924fce7dc4a13d452c2d53
(0081769)
git   
2019-01-12 14:42   
Branch CR30412 has been deleted by inv.

SHA-1: 845a6a9ed6e67b55cf7cab1444e2b61d55a9fcfa