# HG changeset patch # User Teemu Piippo # Date 1528661244 -10800 # Node ID 59b578c77111f014552cbdc49f45156cd096e06c # Parent ae83213bdd63acaeb1c0cd2eee865d7baf3e11b5 fixed bugs regarding circular primitives diff -r ae83213bdd63 -r 59b578c77111 src/editmodes/circleMode.cpp --- a/src/editmodes/circleMode.cpp Sun Jun 10 21:48:58 2018 +0300 +++ b/src/editmodes/circleMode.cpp Sun Jun 10 23:07:24 2018 +0300 @@ -105,6 +105,7 @@ Matrix transform = Matrix::fromQMatrix(renderer()->currentCamera().transformationMatrix(1)); transform *= Matrix::scaleMatrix(dist0); model.emplace(PrimitiveModel::Circle, segments, divisions, transform, displacement); + finishDraw(model); return; } else if (qFuzzyCompare(dist0, 0) or qFuzzyCompare(dist1, 0)) @@ -114,6 +115,7 @@ Matrix transform = Matrix::fromQMatrix(renderer()->currentCamera().transformationMatrix(1)); transform *= Matrix::scaleMatrix(max(dist0, dist1)); model.emplace(PrimitiveModel::Disc, segments, divisions, transform, displacement); + finishDraw(model); return; } else if (g_RingFinder.findRings(dist0, dist1)) // Consult the ring finder now diff -r ae83213bdd63 -r 59b578c77111 src/linetypes/circularprimitive.cpp --- a/src/linetypes/circularprimitive.cpp Sun Jun 10 21:48:58 2018 +0300 +++ b/src/linetypes/circularprimitive.cpp Sun Jun 10 23:07:24 2018 +0300 @@ -201,5 +201,5 @@ void LDCircularPrimitive::serialize(class Serializer& serializer) { LDMatrixObject::serialize(serializer); - serializer << m_segments << m_divisions; + serializer << m_segments << m_divisions << m_type; } diff -r ae83213bdd63 -r 59b578c77111 src/primitives.h --- a/src/primitives.h Sun Jun 10 21:48:58 2018 +0300 +++ b/src/primitives.h Sun Jun 10 23:07:24 2018 +0300 @@ -63,6 +63,8 @@ QString makeFileName(FilenameStyle style) const; }; +Q_DECLARE_METATYPE(PrimitiveModel::Type) + class PrimitiveCategory : public QObject { Q_OBJECT