annotate at/ofai/music/worm/WormSmoothDialog.java @ 5:bcb4c9697967 tip

Add README and CITATION files
author Chris Cannam
date Tue, 03 Dec 2013 12:58:05 +0000
parents 4c3f5bc01c97
children
rev   line source
Chris@2 1 /* Performance Worm: Visualisation of Expressive Musical Performance
Chris@2 2 Copyright (C) 2001, 2006 by Simon Dixon
Chris@2 3
Chris@2 4 This program is free software; you can redistribute it and/or modify
Chris@2 5 it under the terms of the GNU General Public License as published by
Chris@2 6 the Free Software Foundation; either version 2 of the License, or
Chris@2 7 (at your option) any later version.
Chris@2 8
Chris@2 9 This program is distributed in the hope that it will be useful,
Chris@2 10 but WITHOUT ANY WARRANTY; without even the implied warranty of
Chris@2 11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
Chris@2 12 GNU General Public License for more details.
Chris@2 13
Chris@2 14 You should have received a copy of the GNU General Public License along
Chris@2 15 with this program (the file gpl.txt); if not, download it from
Chris@2 16 http://www.gnu.org/licenses/gpl.txt or write to the
Chris@2 17 Free Software Foundation, Inc.,
Chris@2 18 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
Chris@2 19 */
Chris@2 20
Chris@2 21 package at.ofai.music.worm;
Chris@2 22
Chris@2 23 import at.ofai.music.util.Parameters;
Chris@2 24
Chris@2 25 class WormSmoothDialog extends Parameters {
Chris@2 26
Chris@2 27 static final long serialVersionUID = 0;
Chris@2 28
Chris@2 29 public WormSmoothDialog (Worm w, WormFile wf) {
Chris@2 30 super(w.theFrame, "Smoothing parameters");
Chris@2 31 setDouble("Before", 1);
Chris@2 32 setDouble("After", 1);
Chris@2 33 String[] labels = new String[]{"Tracks","Beats","Bars","Seconds"};
Chris@2 34 int[] levels = {WormFile.TRACK, WormFile.BEAT, WormFile.BAR, 0};
Chris@2 35 setChoice("Units", labels, 1);
Chris@2 36 setVisible(true);
Chris@2 37 try {
Chris@2 38 double before = getDouble("Before");
Chris@2 39 double after = getDouble("After");
Chris@2 40 String smoothLevel = getChoice("Units");
Chris@2 41 int smoothIndex = 0;
Chris@2 42 for (int i = 0; i < labels.length; i++)
Chris@2 43 if (smoothLevel.equals(labels[i]))
Chris@2 44 smoothIndex = i;
Chris@2 45 if ((after > 0) && (before > 0))
Chris@2 46 wf.smooth(Worm.FULL_GAUSS, before, after, levels[smoothIndex]);
Chris@2 47 else
Chris@2 48 wf.smooth(Worm.NONE, 0, 0, 0);
Chris@2 49 } catch (NumberFormatException e) {}
Chris@2 50 }
Chris@2 51
Chris@2 52 } // class WormSmoothDialog