]> Creatis software - CreaPhase.git/blob - octave_packages/geometry-1.5.0/io/deprecated/private/_parsePath.py
Add a useful package (from Source forge) for octave
[CreaPhase.git] / octave_packages / geometry-1.5.0 / io / deprecated / private / _parsePath.py
1 #!/usr/bin/env python
2
3 import inkex, simplepath
4 import sys
5 #import getopt
6
7 def parsePaths (filen=None):
8
9   svg = inkex.Effect ()
10   svg.parse (filen)
11   
12   paths = svg.document.xpath ('//svg:path', namespaces=inkex.NSS)
13   for path in paths:
14     D = simplepath.parsePath (path.attrib['d'])
15     cmdlst = [];
16     parlst = [];
17     for cmd,params in D:
18       cmdlst.append(cmd)
19       parlst.append(params)
20     
21     print 'svgpath = struct("cmd","{0}","data",{{{1}}});' \
22         .format(''.join(cmdlst),str(parlst).replace('[[','[').replace(']]',']'))
23
24     print 'svgpathid = "{0}"; $'.format(path.attrib['id'])
25
26   
27   
28 # ----------------------------
29
30 if __name__=="__main__":
31   '''
32     try:
33         optlist,args = getopt.getopt(sys.argv[1:],"thdp")
34     except getopt.GetoptError:
35         usage()
36         sys.exit(2)
37       
38     doHelp = 0
39     c = Context()
40     c.doPrint = 1
41     for opt in optlist:
42         if opt[0] == "-d":  c.debug = 1
43         if opt[0] == "-p":  c.plot  = 1
44         if opt[0] == "-t":  c.triangulate = 1
45         if opt[0] == "-h":  doHelp = 1
46
47     if not doHelp:
48         pts = []
49         fp = sys.stdin
50         if len(args) > 0:
51             fp = open(args[0],'r')
52         for line in fp:
53             fld = line.split()
54             x = float(fld[0])
55             y = float(fld[1])
56             pts.append(Site(x,y))
57         if len(args) > 0: fp.close()
58
59     if doHelp or len(pts) == 0:
60         usage()
61         sys.exit(2)
62   '''
63   svg = sys.argv[1]
64   parsePaths(svg)