diff --git a/src/libs/vgeometry/vellipticalarc.cpp b/src/libs/vgeometry/vellipticalarc.cpp index 543dff413..f8f33cee3 100644 --- a/src/libs/vgeometry/vellipticalarc.cpp +++ b/src/libs/vgeometry/vellipticalarc.cpp @@ -516,7 +516,7 @@ auto VEllipticalArc::GetPoints() const -> QVector t.rotate(-d->rotationAngle); t.translate(-center.x(), -center.y()); - std::transform(points.begin(), points.end(), points.begin(), [t](const QPointF &point) { return t.map(point); }); + std::transform(points.begin(), points.end(), points.begin(), [&t](const QPointF &point) { return t.map(point); }); return IsFlipped() ? Reverse(points) : points; } diff --git a/src/libs/vhpgl/vhpglengine.cpp b/src/libs/vhpgl/vhpglengine.cpp index cfe211bdf..03c1ca4cf 100644 --- a/src/libs/vhpgl/vhpglengine.cpp +++ b/src/libs/vhpgl/vhpglengine.cpp @@ -502,7 +502,7 @@ void VHPGLEngine::PlotInternalPaths(QTextStream &out, const VLayoutPiece &detail { const QTransform matrix = VGObject::FlippingMatrix(detail.GetMappedSeamMirrorLine()); std::transform(points.begin(), points.end(), points.begin(), - [matrix](const VLayoutPoint &point) { return VAbstractPiece::MapPoint(point, matrix); }); + [&matrix](const VLayoutPoint &point) { return VAbstractPiece::MapPoint(point, matrix); }); PlotPath(out, CastToPoint(ConvertPath(points)), path.PenStyle()); } } @@ -531,7 +531,7 @@ void VHPGLEngine::PlotPlaceLabels(QTextStream &out, const VLayoutPiece &detail) for (auto &points : shape) { std::transform(points.begin(), points.end(), points.begin(), - [matrix](const VLayoutPoint &point) { return VAbstractPiece::MapPoint(point, matrix); }); + [&matrix](const VLayoutPoint &point) { return VAbstractPiece::MapPoint(point, matrix); }); } PlotShape(shape); diff --git a/src/libs/vlayout/vabstractpiece.cpp b/src/libs/vlayout/vabstractpiece.cpp index ad938c502..5cc8dc467 100644 --- a/src/libs/vlayout/vabstractpiece.cpp +++ b/src/libs/vlayout/vabstractpiece.cpp @@ -1906,7 +1906,7 @@ auto VAbstractPiece::GrainlineMainLine(const VGrainlineData &geom, const VContai //--------------------------------------------------------------------------------------------------------------------- auto VAbstractPiece::PlaceLabelShape(const VLayoutPlaceLabel &label) -> PlaceLabelImg { - auto LayoutPoint = [label](QPointF p, bool turnPoint = false, bool curvePoint = false) + auto LayoutPoint = [&label](QPointF p, bool turnPoint = false, bool curvePoint = false) { VLayoutPoint point(label.RotationMatrix().map(p)); point.SetTurnPoint(turnPoint); @@ -1917,7 +1917,7 @@ auto VAbstractPiece::PlaceLabelShape(const VLayoutPlaceLabel &label) -> PlaceLab const QPointF pos = label.Center(); const QRectF box = label.Box(); - auto SegmentShape = [pos, box, LayoutPoint]() + auto SegmentShape = [pos, &box, &LayoutPoint]() { QVector const shape{LayoutPoint(QPointF(pos.x(), pos.y() - box.height() / 2.0), true), LayoutPoint(QPointF(pos.x(), pos.y() + box.height() / 2.0), true)}; @@ -1925,7 +1925,7 @@ auto VAbstractPiece::PlaceLabelShape(const VLayoutPlaceLabel &label) -> PlaceLab return PlaceLabelImg{shape}; }; - auto RectangleShape = [pos, box, LayoutPoint]() + auto RectangleShape = [pos, &box, &LayoutPoint]() { QRectF const rect(QPointF(pos.x() - box.width() / 2.0, pos.y() - box.height() / 2.0), QPointF(pos.x() + box.width() / 2.0, pos.y() + box.height() / 2.0)); @@ -1937,7 +1937,7 @@ auto VAbstractPiece::PlaceLabelShape(const VLayoutPlaceLabel &label) -> PlaceLab return PlaceLabelImg{shape}; }; - auto CrossShape = [pos, box, LayoutPoint]() + auto CrossShape = [pos, &box, &LayoutPoint]() { QVector const shape1{LayoutPoint(QPointF(pos.x(), pos.y() - box.height() / 2.0), true), LayoutPoint(QPointF(pos.x(), pos.y() + box.height() / 2.0), true)}; @@ -1948,7 +1948,7 @@ auto VAbstractPiece::PlaceLabelShape(const VLayoutPlaceLabel &label) -> PlaceLab return PlaceLabelImg{shape1, shape2}; }; - auto TshapedShape = [pos, box, LayoutPoint]() + auto TshapedShape = [pos, &box, &LayoutPoint]() { QPointF const center2(pos.x(), pos.y() + box.height() / 2.0); @@ -1960,7 +1960,7 @@ auto VAbstractPiece::PlaceLabelShape(const VLayoutPlaceLabel &label) -> PlaceLab return PlaceLabelImg{shape1, shape2}; }; - auto DoubletreeShape = [pos, box, LayoutPoint]() + auto DoubletreeShape = [pos, &box, &LayoutPoint]() { QRectF const rect(QPointF(pos.x() - box.width() / 2.0, pos.y() - box.height() / 2.0), QPointF(pos.x() + box.width() / 2.0, pos.y() + box.height() / 2.0)); @@ -1972,7 +1972,7 @@ auto VAbstractPiece::PlaceLabelShape(const VLayoutPlaceLabel &label) -> PlaceLab return PlaceLabelImg{shape1, shape2}; }; - auto CornerShape = [pos, box, LayoutPoint]() + auto CornerShape = [pos, &box, &LayoutPoint]() { QVector const shape1{LayoutPoint(QPointF(pos.x(), pos.y()), true), LayoutPoint(QPointF(pos.x(), pos.y() + box.height() / 2.0), true)}; @@ -1983,7 +1983,7 @@ auto VAbstractPiece::PlaceLabelShape(const VLayoutPlaceLabel &label) -> PlaceLab return PlaceLabelImg{shape1, shape2}; }; - auto TriangleShape = [pos, box, LayoutPoint]() + auto TriangleShape = [pos, &box, &LayoutPoint]() { QRectF const rect(QPointF(pos.x() - box.width() / 2.0, pos.y() - box.height() / 2.0), QPointF(pos.x() + box.width() / 2.0, pos.y() + box.height() / 2.0)); @@ -1994,7 +1994,7 @@ auto VAbstractPiece::PlaceLabelShape(const VLayoutPlaceLabel &label) -> PlaceLab return PlaceLabelImg{shape}; }; - auto HshapedShape = [pos, box, LayoutPoint]() + auto HshapedShape = [pos, &box, &LayoutPoint]() { const QPointF center1(pos.x(), pos.y() - box.height() / 2.0); const QPointF center2(pos.x(), pos.y() + box.height() / 2.0); @@ -2010,7 +2010,7 @@ auto VAbstractPiece::PlaceLabelShape(const VLayoutPlaceLabel &label) -> PlaceLab return PlaceLabelImg{shape1, shape2, shape3}; }; - auto ButtonShape = [pos, box, LayoutPoint]() + auto ButtonShape = [pos, &box, &LayoutPoint]() { const qreal radius = qMin(box.width() / 2.0, box.height() / 2.0); QVector const shape1{LayoutPoint(QPointF(pos.x(), pos.y() - radius), true), @@ -2044,7 +2044,7 @@ auto VAbstractPiece::PlaceLabelShape(const VLayoutPlaceLabel &label) -> PlaceLab return PlaceLabelImg{shape1, shape2, shape3}; }; - auto CircleShape = [pos, box, LayoutPoint]() + auto CircleShape = [pos, &box, &LayoutPoint]() { const qreal radius = qMin(box.width() / 2.0, box.height() / 2.0); VArc arc(VPointF(pos), radius, 0, 360); diff --git a/src/libs/vlayout/vabstractpiece.h b/src/libs/vlayout/vabstractpiece.h index ee78f2c51..44354ce7b 100644 --- a/src/libs/vlayout/vabstractpiece.h +++ b/src/libs/vlayout/vabstractpiece.h @@ -940,7 +940,7 @@ template inline auto VAbstractPiece::MapVector(QVector points, const QTransform &matrix, bool mirror) -> QVector { std::transform(points.begin(), points.end(), points.begin(), - [matrix](const T &point) { return MapPoint(point, matrix); }); + [&matrix](const T &point) { return MapPoint(point, matrix); }); if (mirror) { std::reverse(points.begin(), points.end());