Updated handling of collinear edges while searching for intersection.

pull/11124/head
Vitaly Tuzov 7 years ago
parent fb6db3dcfc
commit 91c35a7d01
  1. 7
      modules/imgproc/src/min_enclosing_triangle.cpp

@ -988,14 +988,15 @@ static bool findGammaIntersectionPoints(const std::vector<cv::Point2f> &polygon,
double sideCExtraParam = 2 * polygonPointHeight * distFormulaDenom; double sideCExtraParam = 2 * polygonPointHeight * distFormulaDenom;
// Get intersection points if they exist or if lines are identical // Get intersection points if they exist or if lines are identical
if (!areIntersectingLines(side1Params, side2Params, sideCExtraParam, intersectionPoint1, intersectionPoint2)) { if (areIntersectingLines(side1Params, side2Params, sideCExtraParam, intersectionPoint1, intersectionPoint2)) {
return false; return true;
} else if (areIdenticalLines(side1Params, side2Params, sideCExtraParam)) { } else if (areIdenticalLines(side1Params, side2Params, sideCExtraParam)) {
intersectionPoint1 = side1StartVertex; intersectionPoint1 = side1StartVertex;
intersectionPoint2 = side1EndVertex; intersectionPoint2 = side1EndVertex;
return true;
} }
return true; return false;
} }
//! Check if the given lines are identical or not //! Check if the given lines are identical or not

Loading…
Cancel
Save