src/linetypes/subfilereference.h

Wed, 25 Mar 2020 16:07:20 +0200

author
Teemu Piippo <teemu@hecknology.net>
date
Wed, 25 Mar 2020 16:07:20 +0200
changeset 87
93ec4d630346
parent 86
4bec0525ef1b
child 132
488d0ba6070b
permissions
-rw-r--r--

added PolygonObject and refactored away a lot of boilerplate

#pragma once
#include "object.h"

class Model;

namespace ldraw
{
	class SubfileReference;
}

class ldraw::SubfileReference : public ColoredObject
{
public:
	SubfileReference() = default;
	SubfileReference(
		const glm::mat4& transformation,
		const QString &referenceName,
		const Color color = ldraw::mainColor);
	QVariant getProperty(Property property) const override;
	QString textRepresentation() const override;
	void getPolygons(std::vector<gl::Polygon>& polygons, GetPolygonsContext* context) const override;
	glm::vec3 position() const;
	void invert() override;
	Model* resolve(DocumentManager* documents) const;
	glm::mat4 transformation;
	QString referenceName;
	bool isInverted = false;
protected:
	void setProperty(SetPropertyResult* result, const PropertyKeyValue& pair) override;
};

mercurial