From a151681f49e3f365a76c0491bec127c72b594258 Mon Sep 17 00:00:00 2001 From: nds Date: Thu, 7 Feb 2019 11:59:53 +0300 Subject: [PATCH] 0030484: Visualization - 2d persistent: order of detection doesn't coincide with order of objects creation --- src/SelectMgr/SelectMgr_ViewerSelector.cxx | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/SelectMgr/SelectMgr_ViewerSelector.cxx b/src/SelectMgr/SelectMgr_ViewerSelector.cxx index 9dbc9f638d..b0dfab611c 100644 --- a/src/SelectMgr/SelectMgr_ViewerSelector.cxx +++ b/src/SelectMgr/SelectMgr_ViewerSelector.cxx @@ -276,6 +276,9 @@ void SelectMgr_ViewerSelector::checkOverlap (const Handle(SelectBasics_Sensitive aCriterion.Priority = anOwner->Priority(); aCriterion.Depth = aPickResult.Depth(); aCriterion.MinDist = aPickResult.DistToGeomCenter(); + if (!aSelectable.IsNull() && !aSelectable->TransformPersistence().IsNull() && + aSelectable->TransformPersistence()->Mode() == Graphic3d_TMF_2d) + aCriterion.MinDist = 0; // having 2D persistent, 3D geometry point is not required aCriterion.ToPreferClosest = preferclosest; if (SelectMgr_SortCriterion* aPrevCriterion = mystored.ChangeSeek (anOwner)) -- 2.39.5