src/ui/canvas.h

changeset 168
24590af32ad6
parent 166
8857351912d0
child 169
6da096930534
equal deleted inserted replaced
167:c1ff4f107569 168:24590af32ad6
21 void addToSelection(ldraw::id_t id); 21 void addToSelection(ldraw::id_t id);
22 void setOverpaintCallback(OverpaintCallback fn); 22 void setOverpaintCallback(OverpaintCallback fn);
23 void drawWorldPoint(QPainter* painter, const glm::vec3& worldPoint) const; 23 void drawWorldPoint(QPainter* painter, const glm::vec3& worldPoint) const;
24 void drawWorldPolyline(QPainter* painter, const std::vector<glm::vec3>& points); 24 void drawWorldPolyline(QPainter* painter, const std::vector<glm::vec3>& points);
25 void drawWorldPolygon(QPainter* painter, const std::vector<glm::vec3>& points); 25 void drawWorldPolygon(QPainter* painter, const std::vector<glm::vec3>& points);
26 Winding worldPolygonWinding(const std::vector<glm::vec3>& points) const;
26 const std::optional<glm::vec3>& getWorldPosition() const; 27 const std::optional<glm::vec3>& getWorldPosition() const;
27 void adjustGridToView(); 28 void adjustGridToView();
28 public Q_SLOTS: 29 public Q_SLOTS:
29 void handleSelectionChange(const QSet<ldraw::id_t>& selectedIds, const QSet<ldraw::id_t>& deselectedIds); 30 void handleSelectionChange(const QSet<ldraw::id_t>& selectedIds, const QSet<ldraw::id_t>& deselectedIds);
30 void rebuildVertices(Document *document); 31 void rebuildVertices(Document *document);
41 void mouseMove(Canvas* canvas, QMouseEvent* event); 42 void mouseMove(Canvas* canvas, QMouseEvent* event);
42 private: 43 private:
43 void setGridMatrix(const glm::mat4 &newMatrix); 44 void setGridMatrix(const glm::mat4 &newMatrix);
44 glm::vec3 cameraVector() const; 45 glm::vec3 cameraVector() const;
45 bool isGridPerpendicularToScreen(float threshold) const; 46 bool isGridPerpendicularToScreen(float threshold) const;
46 QVector<QPointF> convertWorldPointsToScreenPoints(const std::vector<glm::vec3>& worldPoints); 47 QVector<QPointF> convertWorldPointsToScreenPoints(const std::vector<glm::vec3>& worldPoints) const;
47 Q_SLOT void updateCanvasRenderPreferences(); 48 Q_SLOT void updateCanvasRenderPreferences();
48 std::optional<GridProgram> gridProgram; 49 std::optional<GridProgram> gridProgram;
49 std::optional<AxesProgram> axesProgram; 50 std::optional<AxesProgram> axesProgram;
50 std::optional<VertexProgram> vertexProgram; 51 std::optional<VertexProgram> vertexProgram;
51 std::optional<glm::vec3> worldPosition; 52 std::optional<glm::vec3> worldPosition;

mercurial