Fix for method InsideContour.
--HG-- branch : feature
This commit is contained in:
parent
120f4cf565
commit
366519781b
|
@ -600,28 +600,25 @@ VLayoutPaper::InsideType VLayoutPaper::InsideContour(const VLayoutDetail &detail
|
||||||
const QVector<QPointF> p = Triplet(detailEdge);
|
const QVector<QPointF> p = Triplet(detailEdge);
|
||||||
for (int n=0; n<p.size(); ++n )
|
for (int n=0; n<p.size(); ++n )
|
||||||
{
|
{
|
||||||
if (p.at(n) != detailEdge.p1() && p.at(n) != detailEdge.p2())
|
int j = polyCorners-1;
|
||||||
|
bool oddNodes = false;
|
||||||
|
|
||||||
|
for (int i=0; i<polyCorners; i++)
|
||||||
{
|
{
|
||||||
int j = polyCorners-1;
|
const qreal yi = d->globalContour.at(i).y();
|
||||||
bool oddNodes = false;
|
const qreal yj = d->globalContour.at(j).y();
|
||||||
|
|
||||||
for (int i=0; i<polyCorners; i++)
|
if (((yi < p.at(n).y() && yj >= p.at(n).y()) || (yj < p.at(n).y() && yi >= p.at(n).y())))
|
||||||
{
|
{
|
||||||
const qreal yi = d->globalContour.at(i).y();
|
oddNodes ^= (p.at(n).y() * multiple.at(i) + constant.at(i) < p.at(n).x());
|
||||||
const qreal yj = d->globalContour.at(j).y();
|
|
||||||
|
|
||||||
if (((yi < p.at(n).y() && yj >= p.at(n).y()) || (yj < p.at(n).y() && yi >= p.at(n).y())))
|
|
||||||
{
|
|
||||||
oddNodes ^= (p.at(n).y() * multiple.at(i) + constant.at(i) < p.at(n).x());
|
|
||||||
}
|
|
||||||
|
|
||||||
j=i;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (oddNodes)
|
j=i;
|
||||||
{
|
}
|
||||||
return InsideType::Inside;
|
|
||||||
}
|
if (oddNodes)
|
||||||
|
{
|
||||||
|
return InsideType::Inside;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user