diff options
| author | Carl Hetherington <cth@carlh.net> | 2012-02-07 12:12:01 +0000 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2012-02-07 12:12:01 +0000 |
| commit | 9ce56f6a2bdd076843a3b56d1cc27f3496b8528f (patch) | |
| tree | f055ba1a871846d7aa2173db51a023924feaf82b /hacks/python-playback/ratio.py | |
| parent | b072d4a885bf02f642650a1717c69252861cc5d0 (diff) | |
Move some hacks into the git repo.
Diffstat (limited to 'hacks/python-playback/ratio.py')
| -rw-r--r-- | hacks/python-playback/ratio.py | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/hacks/python-playback/ratio.py b/hacks/python-playback/ratio.py new file mode 100644 index 000000000..62320dc8a --- /dev/null +++ b/hacks/python-playback/ratio.py @@ -0,0 +1,56 @@ +# Class to describe a Ratio, and a collection of common +# (and not-so-common) film ratios collected from Wikipedia. + +class Ratio: + def __init__(self, ratio, nickname = None): + self.nickname = nickname + self.ratio = ratio + + # @return presentation name of this ratio + def name(self): + if self.nickname is not None: + return "%.2f (%s)" % (self.ratio, self.nickname) + + return "%.2f" % self.ratio + +ratios = [] +ratios.append(Ratio(1.33, '4:3')) +ratios.append(Ratio(1.37, 'Academy')) +ratios.append(Ratio(1.78, '16:9')) +ratios.append(Ratio(1.85, 'Flat / widescreen')) +ratios.append(Ratio(2.39, 'CinemaScope / Panavision')) +ratios.append(Ratio(1.15, 'Movietone')) +ratios.append(Ratio(1.43, 'IMAX')) +ratios.append(Ratio(1.5)) +ratios.append(Ratio(1.56, '14:9')) +ratios.append(Ratio(1.6, '16:10')) +ratios.append(Ratio(1.67)) +ratios.append(Ratio(2, 'SuperScope')) +ratios.append(Ratio(2.2, 'Todd-AO')) +ratios.append(Ratio(2.35, 'Early CinemaScope / Panavision')) +ratios.append(Ratio(2.37, '21:9')) +ratios.append(Ratio(2.55, 'CinemaScope 55')) +ratios.append(Ratio(2.59, 'Cinerama')) +ratios.append(Ratio(2.76, 'Ultra Panavision')) +ratios.append(Ratio(2.93, 'MGM Camera 65')) +ratios.append(Ratio(4, 'Polyvision')) + +# Find a Ratio object from a fractional ratio +def find(ratio): + for r in ratios: + if r.ratio == ratio: + return r + + return None + +# @return the ith ratio +def index_to_ratio(i): + return ratios[i] + +# @return the index within the ratios list of a given fractional ratio +def ratio_to_index(r): + for i in range(0, len(ratios)): + if ratios[i].ratio == r: + return i + + return None |
