From: nds Date: Thu, 7 Feb 2019 08:59:53 +0000 (+0300) Subject: 0030484: Visualization - 2d persistent: order of detection doesn't coincide with... X-Git-Url: http://git.dev.opencascade.org/gitweb/?a=commitdiff_plain;h=8fe265bf96dc8310566c76b109083a2f9764612f;p=occt-copy.git 0030484: Visualization - 2d persistent: order of detection doesn't coincide with order of objects creation (cherry picked from commit a151681f49e3f365a76c0491bec127c72b594258) (cherry picked from commit 555748a0d1583c1951fe4d85530c14a87edfdec8) --- diff --git a/src/SelectMgr/SelectMgr_ViewerSelector.cxx b/src/SelectMgr/SelectMgr_ViewerSelector.cxx index 88be7da13c..b700fffe6b 100644 --- a/src/SelectMgr/SelectMgr_ViewerSelector.cxx +++ b/src/SelectMgr/SelectMgr_ViewerSelector.cxx @@ -286,6 +286,9 @@ void SelectMgr_ViewerSelector::checkOverlap (const Handle(Select3D_SensitiveEnti 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))