hpgl_parser.py

Fri, 21 Dec 2007 23:51:36 +0100

author
David Douard <david.douard@logilab.fr>
date
Fri, 21 Dec 2007 23:51:36 +0100
changeset 18
c691b040e8c9
child 19
42af82fdb8bb
permissions
-rw-r--r--

added a (very) beginning HPGL parser (with a simplist matplotlib backend)

18
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
1 # -*- coding: utf-8 -*-
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
2
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
3 import re
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
4 import numpy
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
5
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
6 vsplitter = re.compile('[ ,]')
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
7 vextractor = re.compile('(?P<value>[^;\n\r\aA-DF-Za-df-z]*?)(?P<terminator>[;\n\r\a]+)', re.S+re.M)
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
8
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
9 class HPGLParser(object):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
10 def __init__(self, data):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
11 self.data = data
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
12 self.idx = 0
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
13 self.str_terminator = chr(0x03)
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
14
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
15 self.IN()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
16
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
17 while self.idx<len(data):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
18 while data[self.idx] in [';','\n','\r', '\a', ' ']:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
19 self.idx += 1
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
20 if data[self.idx] == chr(0x03):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
21 self.ESC()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
22 else:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
23 cmd = data[self.idx: self.idx+2]
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
24 self.idx += 2
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
25 getattr(self, cmd)()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
26 while self.idx<len(data) and data[self.idx] in [';','\n','\r', '\a', ' ']:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
27 self.idx += 1
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
28
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
29 def user_to_abs(self, pos):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
30 """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
31 converts a position (x, y) given in user units to absolute
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
32 units
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
33 """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
34 return pos #TODO
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
35
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
36 def extract_value(self, raw=False):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
37 m = vextractor.match(self.data[self.idx:])
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
38 if m:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
39 val = m.group("value")
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
40 self.idx = self.idx + len(val) + len(m.group("terminator"))
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
41 val = vsplitter.split(val)
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
42 if not raw:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
43 val = [eval(x) for x in val if x.strip()]
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
44 return val
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
45 return []
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
46
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
47 def extract_string(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
48 idx2 = self.data.find(self.str_terminator, self.idx)
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
49 val = self.data[self.idx: idx2]
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
50 self.idx = idx2+1
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
51 return val
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
52
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
53 def polyline(self, values):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
54 if (len(values)%2) == 1:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
55 # this is a syntax error in the HPGL data
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
56 values = values[:-1]
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
57 values = numpy.array(values).reshape(-1, 2)
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
58 # TODO use scaling
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
59 # do plots
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
60 values = numpy.r_[[self.pos], values] #add self.pos as 1st value
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
61 if self.plot_mode == 'relative':
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
62 values = values.cumsum(axis=0)
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
63 if self.symbol_mode:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
64 self.plot_symbols(values[1:])
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
65 if self.pen_state == "down":
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
66 self.plot_lines(values)
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
67 self.pos = values[-1]
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
68
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
69 def get_window_for_paper(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
70 return 0,100,0,100
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
71 def get_scaling_points_for_paper(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
72 return 0,100,0,100
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
73
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
74 # effective plot methods; to be defined in subclasses (backends)
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
75 def plot_symbols(self, points):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
76 pass
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
77 def plot_lines(self, points):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
78 pass
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
79
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
80 # HPGL-related methods
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
81 def ESC(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
82 print "ESC"
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
83 self.idx += 1
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
84
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
85 def OE(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
86 """ Output Error """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
87 pass
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
88
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
89 def EC(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
90 """? what's this """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
91 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
92
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
93 def OO(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
94 """idem"""
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
95 pass
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
96
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
97 def OP(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
98 """idem"""
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
99 pass
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
100
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
101 def VS(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
102 """idem"""
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
103 pass
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
104
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
105
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
106 def DF(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
107 """ Default """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
108 self.pen = 0
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
109 self.pos = 0,0
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
110 self.char_set = "std"
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
111 self.plot_mode = 'absolute'
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
112 self.char_direction = 1,0
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
113 self.line_type = 0 # 'solid'
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
114 self.pattern_len = 4 #percentage
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
115 self.window = self.get_window_for_paper()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
116 self.char_size = 0.75, 1.5 #percentages
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
117 self.symbol_mode = False
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
118 self.tick_len = 0.5, 0.5 # %
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
119 self.std_char_set = 0
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
120 self.alt_char_set = 0
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
121 self.selected_char_set = 0
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
122 self.char_slant = 0 # degrees
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
123 self.scale = None
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
124 self.str_terminator = chr(0x03)
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
125 self.chord_ang = 5 #degrees
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
126 self.fill_type = 'bidirectionnal', 1
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
127 self.fill_distance = 1 # %
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
128 self.fill_slant = 0 # degrees
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
129 self.pen_thickness = 0.3 # mm
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
130
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
131 def IN(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
132 """ Initialize """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
133 self.DF()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
134 self.pen_state = "up"
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
135 self.rotation = 0 #degrees
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
136 self.scaling_points = self.get_scaling_points_for_paper()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
137
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
138 def IP(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
139 """ Input Scale Point"""
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
140 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
141 if len(values) == 0:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
142 self.scaling_points = self.get_scaling_points_for_paper()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
143 elif len(values) == 2:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
144 p1x, p1y, p2x, p2y = self.scaling_points
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
145 dx, dy = p2x-p1x, p2y-p1y
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
146 x, y = values
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
147 self.scaling = (x, y, x+dx, y+dy)
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
148 elif len(values) == 4:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
149 self.values = tuple(values)
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
150
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
151 def SC(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
152 """ Scale """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
153 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
154 if len(values) == 4:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
155 self.scale = tuple(values)
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
156 else:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
157 self.scale = None
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
158
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
159 def IW(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
160 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
161 if len(values) == 0:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
162 self.window = self.get_window_for_paper()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
163 elif len(value) == 4:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
164 self.window = tuple(values)
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
165
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
166 def RO(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
167 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
168 if len(values) == 0:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
169 self.rotation = 0
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
170 elif len(values) == 1:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
171 self.rotation = values[0]
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
172
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
173 def PG(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
174 pass
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
175
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
176 def PU(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
177 """ Pen Up"""
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
178 self.pen_state = "up"
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
179 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
180 self.polyline(values)
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
181
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
182 def PD(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
183 """ Pen Down """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
184 self.pen_state = "down"
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
185 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
186 self.polyline(values)
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
187
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
188 def PA(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
189 """ Plot Absolute """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
190 self.plot_mode = "absolute"
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
191 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
192 self.polyline(values)
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
193
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
194 def PR(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
195 """ Plot Relative """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
196 self.plot_mode = "relative"
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
197 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
198 self.polyline(values)
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
199
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
200 def AA(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
201 """ Arc Absolute """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
202 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
203 if len(values) in [3, 4]:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
204 x, y, qc = values[:3]
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
205 if len(values)==4:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
206 qd = values[-1]
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
207 else:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
208 qd = self.chord_ang
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
209 # TODO : plot arc
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
210 print "plotting an arc"
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
211 def AR(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
212 """ Arc Relative """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
213 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
214 # TODO
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
215
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
216 def CI(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
217 """ Circle Plot"""
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
218 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
219 # TODO
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
220
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
221 def EA(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
222 """Edge Rectangle Absolute"""
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
223 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
224 # TODO
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
225
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
226 def ER(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
227 """Edge Rectangle Relative"""
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
228 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
229 # TODO
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
230
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
231 def EW(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
232 """ Edge Wedge """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
233 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
234 # TODO
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
235
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
236 def RA(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
237 """ Fill Rectangle Absolute """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
238 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
239 # TODO
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
240
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
241 def RR(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
242 """ Fill Rectangle Relative """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
243 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
244 # TODO
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
245
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
246 def WG(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
247 """ Fill Wedge """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
248 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
249 # TODO
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
250
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
251 def FT(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
252 """ Fill Type """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
253 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
254 # TODO
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
255
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
256 def LT(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
257 """ Line Type """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
258 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
259
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
260 if len(values)==0:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
261 self.line_type = 0 #'solid'
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
262 else:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
263 self.line_type = values[0]
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
264 if len(values)>1:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
265 self.pattern_len = values[1]
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
266
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
267 def PW(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
268 """ Pen Width """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
269 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
270 if len(values) == 1:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
271 self.pen_thickness = values[0]
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
272
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
273 def SM(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
274 """ Symbol Mode """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
275 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
276 if len(values) == 0:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
277 self.symbol_mode = False
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
278 elif len(values) == 1:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
279 self.symbol_mode = values[0]
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
280
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
281 def SP(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
282 """ Select Pen """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
283 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
284 if len(values) == 1:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
285 self.pen = values[0]
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
286
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
287 def TL(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
288 """ Tick Len """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
289 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
290 # TODO
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
291
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
292 def XT(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
293 """ X-axis Tick """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
294 # TODO
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
295 print "X ticks"
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
296
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
297 def YT(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
298 """ X-axis Tick """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
299 # TODO
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
300 print "Y ticks"
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
301
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
302 def PT(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
303 """ Pen Thickness Select """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
304 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
305 if len(values) == 0:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
306 self.pen_thickness = 0.3
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
307 elif len(values) == 1:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
308 self.pen_thickness = values[0]
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
309
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
310 def CS(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
311 """ Standard Character Set """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
312 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
313 if len(values) == 0:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
314 self.std_char_set = 0
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
315 elif len(values) == 1:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
316 self.std_char_set = values[0]
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
317
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
318 def CA(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
319 """ Alternate Character Set """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
320 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
321 if len(values) == 0:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
322 self.alt_char_set = 0
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
323 elif len(values) == 1:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
324 self.alt_char_set = values[0]
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
325
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
326 def SS(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
327 """ Select Standard Character Set """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
328 self.char_set = "std"
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
329
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
330 def SA(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
331 """ Select Alternate Character Set """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
332 self.char_set = "alt"
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
333
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
334 def DT(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
335 """ Define Label Terminator """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
336 values = self.extract_value(raw=True)
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
337 if len(values) == 0:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
338 self.str_terminator = chr(0x03)
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
339 elif len(values) == 1:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
340 self.str_terminator = values[0]
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
341
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
342 def LB(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
343 """ Character Plot """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
344 values = self.extract_string()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
345 # TODO
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
346
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
347 def DI(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
348 """ Absolute Direction """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
349 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
350 if len(values) == 0:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
351 self.char_direction = 1.0, 0.0
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
352 elif len(values) == 2:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
353 self.char_direction = values
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
354
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
355 def DR(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
356 """ Relative Direction """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
357 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
358 if len(values) == 0:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
359 self.char_direction = 1.0, 0.0
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
360 elif len(values) == 2:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
361 # TODO : compute as percentages
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
362 self.char_direction = values
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
363
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
364 def CP(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
365 """ Character Plot """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
366 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
367 # TODO
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
368 if len(values) == 0:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
369 values = 0, -1
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
370 #if len(values) == 2:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
371 # self.pos =
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
372
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
373 def SI(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
374 """ Set Absolute Character Size """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
375 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
376 self.char_size = "absolute"
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
377 if len(values) == 0:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
378 self.char_width = 0.1879
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
379 self.char_height = 0.2690
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
380 elif len(values) == 2:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
381 self.char_width, self.char_height = values
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
382
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
383 def SR(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
384 """ Set Relative Character Size """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
385 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
386 self.char_size = "relative"
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
387 if len(values) == 0:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
388 self.char_width = 0.75
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
389 self.char_height = 1.5
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
390 elif len(values) == 2:
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
391 self.char_width, self.char_height = values
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
392
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
393 def SL(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
394 """ Character Slant """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
395 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
396 # TODO
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
397
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
398 def UC(self):
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
399 """ User Defined Character """
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
400 values = self.extract_value()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
401 # TODO
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
402
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
403 if __name__ == '__main__':
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
404 import sys
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
405 data = open(sys.argv[1]).read()
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
406
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
407 p = HPGLParser(data)
c691b040e8c9 added a (very) beginning HPGL parser (with a simplist matplotlib backend)
David Douard <david.douard@logilab.fr>
parents:
diff changeset
408

mercurial