From c857804e86cda20ed640a3d18d52cf6e5c3435ba Mon Sep 17 00:00:00 2001 From: daid303 Date: Fri, 24 May 2013 10:31:58 +0200 Subject: [PATCH] Add rounded corners to GCode preview. --- Cura/gui/sceneView.py | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/Cura/gui/sceneView.py b/Cura/gui/sceneView.py index eaeb4f2b..b2e31639 100644 --- a/Cura/gui/sceneView.py +++ b/Cura/gui/sceneView.py @@ -1165,7 +1165,30 @@ void main(void) #b = numpy.concatenate((b, a[:-1]), 1) b = b.reshape((len(b) * 4, 3)) - pointList = numpy.concatenate((pointList, b)) + if len(a) > 2: + normal2 = normal[:-1] + normal[1:] + lens2 = numpy.sqrt(normal2[:,0]**2 + normal2[:,1]**2) + normal2[:,0] /= lens2 + normal2[:,1] /= lens2 + normal2[:,0] *= lineWidth[:-1] + normal2[:,1] *= lineWidth[:-1] + + c = numpy.zeros((len(a)-2, 0), numpy.float32) + c = numpy.concatenate((c, a[1:-1]), 1) + c = numpy.concatenate((c, a[1:-1]+normal[1:]), 1) + c = numpy.concatenate((c, a[1:-1]+normal2), 1) + c = numpy.concatenate((c, a[1:-1]+normal[:-1]), 1) + + c = numpy.concatenate((c, a[1:-1]), 1) + c = numpy.concatenate((c, a[1:-1]-normal[1:]), 1) + c = numpy.concatenate((c, a[1:-1]-normal2), 1) + c = numpy.concatenate((c, a[1:-1]-normal[:-1]), 1) + + c = c.reshape((len(c) * 8, 3)) + + pointList = numpy.concatenate((pointList, b, c)) + else: + pointList = numpy.concatenate((pointList, b)) ret.append(opengl.GLVBO(pointList)) pointList = numpy.zeros((0,3), numpy.float32) -- 2.30.2