def getStatistics(rtlfile): global moves parser = RTLParser(verbose=verbose) parser.registerHandler("YP", handleYP) parser.registerHandler("ZS", handleZS) parser.registerHandler("XR", handleXR) parser.registerHandler("PU", handlePU) parser.registerHandler("PD", handlePD) parser.parse(rtlfile) totlength = 0 segments = 0 for i in range(len(polylines)): pl = polylines[i] length = pl.length() totlength += length segments += pl.numVertices() - 1 if verbose: print "%d: %.2f (%d)" % (i, length, pl.numVertices()) movement = 0 for i in range(len(moves)): movement += moves[i].length() return Statistics(len(polylines), totlength * 25.4 / 600, movement * 25.4 / 600, segments, parser.bbox)
for o, a in opts: if o in ("-v", "--verbose"): verbose = True elif o in ("-c", "--crop"): crop = True rtlfile = args[0] if len(args) == 2: svgfile = args[1] else: svgfile = os.path.splitext(rtlfile)[0] + ".svg" if verbose: print "Processing " + rtlfile + "..." global mySVG mySVG = structure.svg(rtlfile, width=21600, height=14400) parser = RTLParser(verbose=verbose) parser.registerHandler("PU", handlePU) parser.parse(rtlfile) if verbose: print "BBox: " + str(parser.bbox) if crop: mySVG.set_preserveAspectRatio("xMidYMid meet") width, height = parser.bbox[1][0] - parser.bbox[0][0], parser.bbox[1][ 1] - parser.bbox[0][1] mySVG.set_viewBox( str(parser.bbox[0][0]) + " " + str(parser.bbox[0][1]) + " " + str(width) + " " + str(height)) mySVG.set_width(width) mySVG.set_height(height)
for o, a in opts: if o in ("-v", "--verbose"): verbose = True elif o in ("-c", "--crop"): crop = True rtlfile = args[0] if len(args) == 2: svgfile = args[1] else: svgfile = os.path.splitext(rtlfile)[0]+".svg" if verbose: print "Processing " + rtlfile + "..." global mySVG mySVG = structure.svg(rtlfile, width=21600, height=14400) parser = RTLParser(verbose=verbose) parser.registerHandler("PU", handlePU) parser.parse(rtlfile) if verbose: print "BBox: " + str(parser.bbox) if crop: mySVG.set_preserveAspectRatio("xMidYMid meet") width,height = parser.bbox[1][0]-parser.bbox[0][0], parser.bbox[1][1]-parser.bbox[0][1] mySVG.set_viewBox(str(parser.bbox[0][0]) + " " + str(parser.bbox[0][1]) + " " + str(width) + " " + str(height)) mySVG.set_width(width) mySVG.set_height(height) # Export svg to same position as input file mySVG.save(svgfile)