package jmsltestsuite; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import com.didkovsky.portview.PVFrame; import com.didkovsky.portview.awt.ViewFactoryAWT; import com.didkovsky.portview.swing.ViewFactorySwing; import com.softsynth.jmsl.*; import com.softsynth.jmsl.util.Oof; import com.softsynth.jmsl.view.MusicShapeEditor; import com.softsynth.jmsl.view.PVFrameAdapter; public class OofTest { /** Use 1/F distributions of various bit ranges to generate MusicShape */ public static void main(String args[]) { JMSLRandom.randomize(); boolean useSwing = true; if (useSwing) { JMSL.setViewFactory(new ViewFactorySwing()); } else { JMSL.setViewFactory(new ViewFactoryAWT()); } MusicShape s1 = new MusicShape(5); int numEls = 500; Oof oof1 = new Oof(4); Oof oof2 = new Oof(5); Oof oof3 = new Oof(6); Oof oof4 = new Oof(7); Oof oof5 = new Oof(8); oof1.randomize(); oof2.randomize(); oof3.randomize(); oof4.randomize(); oof5.randomize(); for (int i = 0; i < numEls; i++) { s1.add(oof1.next(), oof2.next(), oof3.next(), oof4.next(), oof5.next()); } s1.setDimensionName(0, "4 bit"); s1.setDimensionName(1, "5 bit"); s1.setDimensionName(2, "6 bit"); s1.setDimensionName(3, "7 bit"); s1.setDimensionName(4, "8 bit"); MusicShapeEditor se = new MusicShapeEditor(); se.addMusicShape(s1); PVFrame f = new PVFrameAdapter("Close to Exit"); f.add(se.getComponent()); f.pack(); f.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); f.setVisible(true); } }