mirror of
https://gitlab.com/smart-pattern/valentina.git
synced 2024-09-19 23:34:04 +02:00
Fix piece mirroring.
Function expects not closed path.
This commit is contained in:
parent
b701e0f03b
commit
62fd0b6694
|
@ -188,8 +188,7 @@ public:
|
||||||
template <class T> static auto MirrorPath(const QVector<T> &points, const QLineF &mirrorLine) -> QVector<T>;
|
template <class T> static auto MirrorPath(const QVector<T> &points, const QLineF &mirrorLine) -> QVector<T>;
|
||||||
|
|
||||||
template <class T>
|
template <class T>
|
||||||
static auto FullSeamPath(const QVector<T> &points, const QLineF &mirrorLine, const QString &pieceName)
|
static auto FullSeamPath(QVector<T> points, const QLineF &mirrorLine, const QString &pieceName) -> QVector<T>;
|
||||||
-> QVector<T>;
|
|
||||||
template <class T>
|
template <class T>
|
||||||
static auto FullSeamAllowancePath(const QVector<T> &points, const QLineF &mirrorLine, const QString &pieceName)
|
static auto FullSeamAllowancePath(const QVector<T> &points, const QLineF &mirrorLine, const QString &pieceName)
|
||||||
-> QVector<T>;
|
-> QVector<T>;
|
||||||
|
@ -867,7 +866,7 @@ inline auto VAbstractPiece::MirrorPath<VLayoutPoint>(const QVector<VLayoutPoint>
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
template <class T>
|
template <class T>
|
||||||
inline auto VAbstractPiece::FullSeamPath(const QVector<T> &points, const QLineF &mirrorLine, const QString &pieceName)
|
inline auto VAbstractPiece::FullSeamPath(QVector<T> points, const QLineF &mirrorLine, const QString &pieceName)
|
||||||
-> QVector<T>
|
-> QVector<T>
|
||||||
{
|
{
|
||||||
// DumpVector(points, QStringLiteral("input.json.XXXXXX")); // Uncomment for dumping test data
|
// DumpVector(points, QStringLiteral("input.json.XXXXXX")); // Uncomment for dumping test data
|
||||||
|
@ -882,6 +881,12 @@ inline auto VAbstractPiece::FullSeamPath(const QVector<T> &points, const QLineF
|
||||||
return points;
|
return points;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Function expects not closed path
|
||||||
|
if (points.constFirst() == points.constLast())
|
||||||
|
{
|
||||||
|
points.removeLast();
|
||||||
|
}
|
||||||
|
|
||||||
QVector<T> base;
|
QVector<T> base;
|
||||||
base.reserve(points.size());
|
base.reserve(points.size());
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue