src/linetypes/triangle.h

Mon, 09 Mar 2020 22:12:50 +0200

author
Teemu Piippo <teemu@hecknology.net>
date
Mon, 09 Mar 2020 22:12:50 +0200
changeset 76
7c4a63a02632
parent 73
97df974b5ed5
child 77
028798a72591
permissions
-rw-r--r--

finished splitQuadrilateral theoretically (untested)

#pragma once
#include "object.h"

namespace ldraw
{
	class Triangle;
}

class ldraw::Triangle : public ColoredObject
{
public:
	Triangle() = default;
	Triangle(
		const glm::vec3 &point_1,
		const glm::vec3 &point_2,
		const glm::vec3 &point_3,
		Color colorIndex = ldraw::mainColor);
	Triangle(const QVector<glm::vec3>& vertices, const Color color);
	QVariant getProperty(Property id) const override;
	SetPropertyResult setProperty(Property id, const QVariant& value) override;
	QString textRepresentation() const override;
	void getPolygons(std::vector<gl::Polygon>& polygons, GetPolygonsContext* context) const override;
	void invert() override;
private:
	glm::vec3 points[3] = {{}};
};

mercurial