]> OCCT Git - occt-copy.git/commitdiff
Selection primitive for additional leader segment CR26507_1
authoraba <aba@opencascade.com>
Fri, 11 Sep 2015 12:08:15 +0000 (15:08 +0300)
committeraba <aba@opencascade.com>
Fri, 11 Sep 2015 12:08:15 +0000 (15:08 +0300)
src/AIS/AIS_Dimension.cxx

index 207575bf96ac4964815f273a5387463ec422619f..f54d0eb88d707838883ef870a4badf4f4552cdde 100755 (executable)
@@ -882,17 +882,25 @@ void AIS_Dimension::DrawExtension (const Handle(Prs3d_Presentation)& thePresenta
   Handle(Graphic3d_ArrayOfSegments) anExtPrimitive = new Graphic3d_ArrayOfSegments ((hasLabel && myLeaderSegmentLength > 0 && myIsTextAligned) ? 4 : 2);
   anExtPrimitive->AddVertex (anExtStart);
   anExtPrimitive->AddVertex (anExtEnd);
+
+  // Add selection primitives
+  SelectionGeometry::Curve& aSensitiveCurve = mySelectionGeom.NewCurve();
+  aSensitiveCurve.Append (anExtStart);
+  aSensitiveCurve.Append (anExtEnd);
+
   // Draw segment
   if (hasLabel && myLeaderSegmentLength > 0 && myIsTextAligned)
   {
     anExtPrimitive->AddVertex (anExtEnd);
     anExtPrimitive->AddVertex (aSegmentPoint);
+
+    // Add selection primitives
+    SelectionGeometry::Curve& aSensitiveCurve = mySelectionGeom.NewCurve();
+    aSensitiveCurve.Append (anExtEnd);
+    aSensitiveCurve.Append (aSegmentPoint);
   }
 
-  // Add selection primitives
-  SelectionGeometry::Curve& aSensitiveCurve = mySelectionGeom.NewCurve();
-  aSensitiveCurve.Append (anExtStart);
-  aSensitiveCurve.Append (anExtEnd);
+
 
   if (!myDrawer->DimensionAspect()->IsText3d() && theMode == ComputeMode_All)
   {