src/linetypes/edge.h

Sun, 02 Feb 2020 00:58:59 +0200

author
Teemu Piippo <teemu@hecknology.net>
date
Sun, 02 Feb 2020 00:58:59 +0200
changeset 45
272c84c7c87e
parent 35
98906a94732f
child 77
028798a72591
permissions
-rw-r--r--

added configurable line anti-aliasing

#pragma once
#include "object.h"

namespace ldraw
{
	class Edge;
}

class ldraw::Edge : public ColoredObject
{
public:
	using BaseClass = ColoredObject;
	Edge() = default;
	Edge(const glm::vec3& point_1, const glm::vec3& point_2,
		 const Color colorIndex = ldraw::edgeColor);
	Edge(const QVector<glm::vec3>& vertices, const Color color);
	QVariant getProperty(Property property) const override;
	SetPropertyResult setProperty(
		Property property,
		const QVariant& value) override;
	QString textRepresentation() const override;
	void getPolygons(std::vector<gl::Polygon>& polygons, GetPolygonsContext* context) const override;
private:
	glm::vec3 point_1 = {};
	glm::vec3 point_2 = {};
};

mercurial