Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0031798Open CASCADE[OCCT] OCCT:Visualizationpublic2020-09-27 12:312020-10-12 09:44
Assigned Tokgv 
PlatformOSOS Version
Product Version[OCCT] 7.4.0 
Target Version[OCCT] 7.6.0*Fixed in Version 
Summary0031798: Visualization, SelectMgr_ViewerSelector - fix comparing depth of direct and indirect triangle hits
DescriptionCurrently, SelectMgr_ViewerSelector sorts picking results basing on a depth along the ray (direct hit) or distance from eye to the closest point within the picking tolerance (indirect hit). In some cases, depth to indirect hit of a surface behind might become closer than distance to direct hit of a surface in front, leading to awkward picking results.

It is proposed to compute the smallest depth always considering picking tolerance, while keeping direct hit as result 3D point.

In addition, it might be reasonable allowing a 0 tolerance for triangulation sensitivities. In this case, selection volume will be implicitly upscaled to 1px, but indirect picking results will be rejected (only direct hits allowed).
Steps To Reproduce
box b1 0 0 0 100  90 1
box b2 0 0 1 100 100 1
vinit View1
vdisplay -dispMode 1 b1
vdisplay -dispMode 1 b2 -highmode 1
vsetcolor b1 RED4
vsetcolor b2 GREEN4
vselprops -pixTol 10

vselprops -pixTol 100

vselprops -pixTol 2
vselprops -depthTol uniformpx 0.1
vviewparams -scale 2.28866 -proj 0.57735 -0.57735 0.57735 -up -0.408248 0.408248 0.816497 -at 24.7467 
48.7768 25.0301
vmoveto 220 231
vstate -entities
TagsNo tags attached.
Test case number
Attached Filespng file icon occt_pick_surf_behind.png (38,761 bytes) 2020-09-27 12:31
png file icon occt_pick_vert_behind.png (53,132 bytes) 2020-09-27 12:31

- Relationships
related to 0031701verifiedbugmaster Open CASCADE Visualization, SelectMgr_ViewerSelector - make depth tolerance configurable 

-  Notes
git (administrator)
2020-09-27 12:39

Branch CR31798_1 has been created by kgv.

SHA-1: b9513dc178fc229cd8398901920e3b1b54460d8f

Detailed log of new commits:

Author: kgv
Date: Sun Sep 27 12:42:10 2020 +0300

    0031798: Visualization, SelectMgr_ViewerSelector - fix comparing depth of direct and indirect triangle hits
    SelectMgr_RectangularFrustum now stores also a distance from picking Ray within SelectBasics_PickResult
    to better prioritize results and prefer entities closer to ray.

- Issue History
Date Modified Username Field Change
2020-09-27 12:31 kgv New Issue
2020-09-27 12:31 kgv Assigned To => kgv
2020-09-27 12:31 kgv Relationship added related to 0031701
2020-09-27 12:31 kgv File Added: occt_pick_surf_behind.png
2020-09-27 12:31 kgv File Added: occt_pick_vert_behind.png
2020-09-27 12:32 kgv Steps to Reproduce Updated View Revisions
2020-09-27 12:35 kgv Description Updated View Revisions
2020-09-27 12:36 kgv Relationship added related to 0027848
2020-09-27 12:39 git Note Added: 0095357

Copyright © 2000 - 2020 MantisBT Team
Powered by Mantis Bugtracker