src/objecttypes/polygon.h

Sun, 03 Nov 2019 13:18:55 +0200

author
Teemu Piippo <teemu@hecknology.net>
date
Sun, 03 Nov 2019 13:18:55 +0200
changeset 11
771168ee2c76
parent 8
44679e468ba9
child 13
6e838748867b
permissions
-rw-r--r--

added matrix conversions and datastream operators

#include <array>
#include "modelobject.h"

namespace modelobjects
{
	class Triangle;
	class Quadrilateral;
}

class modelobjects::Triangle : public ColoredBaseObject
{
public:
	Triangle() = default;
	Triangle(
		const Vertex &point_1,
		const Vertex &point_2,
		const Vertex &point_3,
		Color color_index = colors::main);
	Triangle(const QVector<Vertex>& vertices, const Color color);
	QVariant getProperty(Property id) const override;
	SetPropertyResult setProperty(Property id, const QVariant& value) override;
	QString textRepresentation() const override;
private:
	Vertex points[3] = {{}};
};

class modelobjects::Quadrilateral : public ColoredBaseObject
{
public:
	Quadrilateral() = default;
	Quadrilateral(
		const Vertex &point_1,
		const Vertex &point_2,
		const Vertex &point_3,
		const Vertex &point_4,
		Color color_index = colors::main);
	Quadrilateral(const QVector<Vertex>& vertices, const Color color);
	QVariant getProperty(Property id) const override;
	SetPropertyResult setProperty(Property id, const QVariant& value) override;
	QString textRepresentation() const override;
private:
	Vertex points[4] = {{}};
};

mercurial