Fix bug in VPiece::IsBufferAllowanceValid.
--HG-- branch : develop
This commit is contained in:
parent
12871f0708
commit
a97c90378d
|
@ -1438,17 +1438,37 @@ bool VAbstractPiece::IsAllowanceValid(const QVector<QPointF> &base, const QVecto
|
||||||
return false; // Wrong direction
|
return false; // Wrong direction
|
||||||
}
|
}
|
||||||
|
|
||||||
for (auto i = 0; i < base.count()-1; ++i)
|
for (auto i = 0; i < base.count(); ++i)
|
||||||
{
|
{
|
||||||
QLineF baseSegment(base.at(i), base.at(i+1));
|
int nextI = -1;
|
||||||
|
if (i < base.count()-1)
|
||||||
|
{
|
||||||
|
nextI = i + 1;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
nextI = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
QLineF baseSegment(base.at(i), base.at(nextI));
|
||||||
if (baseSegment.isNull())
|
if (baseSegment.isNull())
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (auto j = 0; j < allowance.count()-1; ++j)
|
for (auto j = 0; j < allowance.count(); ++j)
|
||||||
{
|
{
|
||||||
QLineF allowanceSegment(allowance.at(j), allowance.at(j+1));
|
int nextJ = -1;
|
||||||
|
if (j < allowance.count()-1)
|
||||||
|
{
|
||||||
|
nextJ = j + 1;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
nextJ = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
QLineF allowanceSegment(allowance.at(j), allowance.at(nextJ));
|
||||||
if (allowanceSegment.isNull())
|
if (allowanceSegment.isNull())
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
|
@ -1462,7 +1482,6 @@ bool VAbstractPiece::IsAllowanceValid(const QVector<QPointF> &base, const QVecto
|
||||||
&& not VGObject::IsPointOnLineviaPDP(allowanceSegment.p1(), baseSegment.p1(), baseSegment.p2())
|
&& not VGObject::IsPointOnLineviaPDP(allowanceSegment.p1(), baseSegment.p1(), baseSegment.p2())
|
||||||
&& not VGObject::IsPointOnLineviaPDP(allowanceSegment.p2(), baseSegment.p1(), baseSegment.p2()))
|
&& not VGObject::IsPointOnLineviaPDP(allowanceSegment.p2(), baseSegment.p1(), baseSegment.p2()))
|
||||||
{
|
{
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user