chiark / gitweb /
Add arc stub in SVG class.
authorDaid <daid303@gmail.com>
Mon, 4 Jun 2012 07:41:03 +0000 (09:41 +0200)
committerDaid <daid303@gmail.com>
Mon, 4 Jun 2012 07:41:03 +0000 (09:41 +0200)
Cura/util/svg.py

index 2c62c914ac38f8d73e231cd896dd97be39457ffb..8cd394cfc2292c72a6b018c687e237f1ac484393 100644 (file)
@@ -67,6 +67,16 @@ def processPath(e):
                                        curPath.append(p)
                                        i += 2
                                curPath.append(p)
+                       elif cmd == 'C':
+                               if curPath == None:
+                                       curPath = [p]
+                                       paths.append(curPath)
+                               i = 0
+                               while i < len(param):
+                                       addCurve(curPath, p, complex(param[i], -param[i+1]), complex(param[i+2], -param[i+3]), complex(param[i+4], -param[i+5]))
+                                       p = complex(param[i+4], -param[i+5])
+                                       curPath.append(p)
+                                       i += 6
                        elif cmd == 'c':
                                if curPath == None:
                                        curPath = [p]
@@ -77,6 +87,18 @@ def processPath(e):
                                        p += complex(param[i+4], -param[i+5])
                                        curPath.append(p)
                                        i += 6
+                       elif cmd == 'a':
+                               if curPath == None:
+                                       curPath = [p]
+                                       paths.append(curPath)
+                               i = 0
+                               print param
+                               while i < len(param):
+                                       endPoint = p + complex(param[i+5], -param[i+6])
+                                       addArc(curPath, p, endPoint, param[i], param[i+1], param[i+2], param[i+3], param[i+4])
+                                       p = endPoint
+                                       curPath.append(p)
+                                       i += 7
                        elif cmd == 'Z' or cmd == 'z':
                                curPath.append(curPath[0])
                        elif cmd != None:
@@ -102,6 +124,9 @@ def addCurve(path, p0, q0, q1, p1):
                        path.append(s)
                        oldPoint = s
 
+def addArc(path, end, rx, ry, rot, largeArc, sweep):
+       pass
+
 def movePath(p, offset):
        return map(lambda _p: _p - offset, p)