]> OCCT Git - occt-copy.git/commitdiff
0030484: Visualization - 2d persistent: order of detection doesn't coincide with...
authornds <nds@opencascade.com>
Thu, 7 Feb 2019 08:59:53 +0000 (11:59 +0300)
committernds <nds@opencascade.com>
Thu, 7 Feb 2019 08:59:53 +0000 (11:59 +0300)
src/SelectMgr/SelectMgr_ViewerSelector.cxx

index 9dbc9f638dfccf753edb57ab0c0d998e985f1373..b0dfab611c28ad9f2103d7a9ad3fd83133f72787 100644 (file)
@@ -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))