hpgl_parser.py

Thu, 03 Jan 2008 19:06:48 +0100

author
David Douard <david.douard@logilab.fr>
date
Thu, 03 Jan 2008 19:06:48 +0100
changeset 19
42af82fdb8bb
parent 18
c691b040e8c9
child 20
de60b63b2275
permissions
-rw-r--r--

fixes

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

mercurial