Fri, 13 Dec 2019 21:35:59 +0200
things
#include "edge.h" linetypes::Edge::Edge( const Point3D& point_1, const Point3D& point_2, const Color color_index) : ColoredObject{color_index}, point_1{point_1}, point_2{point_2} {} linetypes::Edge::Edge(const QVector<Point3D>& vertices, const Color color) : ColoredObject{color}, point_1{vertices[0]}, point_2{vertices[1]} { } QVariant linetypes::Edge::getProperty(Property property) const { switch (property) { case Property::Point1: return point_1; case Property::Point2: return point_2; default: return BaseClass::getProperty(property); } } auto linetypes::Edge::setProperty(Property property, const QVariant& value) -> SetPropertyResult { switch (property) { case Property::Point1: point_1 = value.value<Point3D>(); return SetPropertyResult::Success; case Property::Point2: point_2 = value.value<Point3D>(); return SetPropertyResult::Success; default: return BaseClass::setProperty(property, value); } } QString linetypes::Edge::textRepresentation() const { return utility::format("%1 %2", vertexToStringParens(point_1), vertexToStringParens(point_2)); }