From: Thomas Fillon Date: Fri, 8 Nov 2013 17:20:09 +0000 (+0100) Subject: Change Grapher render() function to match documentation API, pass part of previous... X-Git-Tag: 0.5.1-2~1^2~2 X-Git-Url: https://git.parisson.com/?a=commitdiff_plain;h=cafab545b2b111f61abaa6453435070721885c18;p=timeside.git Change Grapher render() function to match documentation API, pass part of previous render code to post_process --- diff --git a/timeside/grapher/core.py b/timeside/grapher/core.py index 822fa21..e6de9ad 100644 --- a/timeside/grapher/core.py +++ b/timeside/grapher/core.py @@ -144,6 +144,12 @@ class Grapher(Processor): self.pixel = self.image.load() self.draw = ImageDraw.Draw(self.image) + def render(self, output=None): + if output: + self.image.save(output) + return + return self.image + def watermark(self, text, font=None, color=(255, 255, 255), opacity=.6, margin=(5,5)): self.image = im_watermark(text, text, color=color, opacity=opacity, margin=margin) @@ -264,6 +270,7 @@ class Grapher(Processor): self.previous_x, self.previous_y = x, y + if __name__ == "__main__": import doctest doctest.testmod() \ No newline at end of file diff --git a/timeside/grapher/spectrogram_log.py b/timeside/grapher/spectrogram_log.py index dce40cc..37694b8 100644 --- a/timeside/grapher/spectrogram_log.py +++ b/timeside/grapher/spectrogram_log.py @@ -87,7 +87,9 @@ class SpectrogramLog(Grapher): self.pixel_cursor += 1 return frames, eod - def render(self, filename): - """ Apply last 2D transforms and write all pixels to the file. """ + @interfacedoc + def post_process(self): + """ Apply last 2D transforms""" self.image.putdata(self.pixels) - self.image.transpose(Image.ROTATE_90).save(filename) + self.image.transpose(Image.ROTATE_90) + diff --git a/timeside/grapher/waveform_simple.py b/timeside/grapher/waveform_simple.py index 887babe..8856e93 100644 --- a/timeside/grapher/waveform_simple.py +++ b/timeside/grapher/waveform_simple.py @@ -64,10 +64,8 @@ class Waveform(Grapher): return frames, eod @interfacedoc - def render(self, output): - if output: - a = 1 - for x in range(self.image_width): - self.pixel[x, self.image_height/2] = tuple(map(lambda p: p+a, self.pixel[x, self.image_height/2])) - self.image.save(output) - return self.image + def post_process(self, output=None): + a = 1 + for x in range(self.image_width): + self.pixel[x, self.image_height/2] = tuple(map(lambda p: p+a, self.pixel[x, self.image_height/2])) + diff --git a/timeside/grapher/waveform_transparent.py b/timeside/grapher/waveform_transparent.py index ee017c6..2c19f6e 100644 --- a/timeside/grapher/waveform_transparent.py +++ b/timeside/grapher/waveform_transparent.py @@ -63,12 +63,3 @@ class WaveformTransparent(Waveform): self.draw_peaks_inverted(self.pixel_cursor, peaks(samples), self.line_color) self.pixel_cursor += 1 return frames, eod - - @interfacedoc - def render(self, output): - if output: - a = 1 - for x in range(self.image_width): - self.pixel[x, self.image_height/2] = tuple(map(lambda p: p+a, self.pixel[x, self.image_height/2])) - self.image.save(output) - return self.image