--- a/src/ui/canvas.h Sat Mar 05 13:32:58 2022 +0200 +++ b/src/ui/canvas.h Sat Mar 05 13:38:22 2022 +0200 @@ -21,6 +21,7 @@ void addToSelection(ldraw::id_t id); void setOverpaintCallback(OverpaintCallback fn); void drawWorldPoint(QPainter* painter, const glm::vec3& worldPoint) const; + void drawWorldPolyline(QPainter* painter, const std::vector<glm::vec3>& points); void drawWorldPolygon(QPainter* painter, const std::vector<glm::vec3>& points); const std::optional<glm::vec3>& getWorldPosition() const; void adjustGridToView(); @@ -42,6 +43,7 @@ void setGridMatrix(const glm::mat4 &newMatrix); glm::vec3 cameraVector() const; bool isGridPerpendicularToScreen(float threshold) const; + QVector<QPointF> convertWorldPointsToScreenPoints(const std::vector<glm::vec3>& worldPoints); std::optional<GridProgram> gridProgram; std::optional<AxesProgram> axesProgram; std::optional<VertexProgram> vertexProgram;