/* * Created on Jan 2, 2006 by Nick * */ package jmsltestsuite; import java.awt.Color; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import com.softsynth.jmsl.JMSLRandom; import com.softsynth.jmsl.score.*; /** * Exercise various notehead types. Not all of these will import into Finale vie Dolet/MusicXML * * @author Nick Didkovsky, (c) 2005 Nick Didkovsky, nick@didkovsky.com * */ public class NoteheadScale { public static void main(String[] args) { Score score = new Score(1, 1100, 800); score.addMeasure(1, 8); for (int i = 0; i < 48; i++) { int pitchJump = i < 24 ? 0 : 15; double numerator = i % 24 + 8; double noteheadScale = numerator / 16.0; Note n = score.addNote(0.5, 56 + pitchJump, 0.5, 0.4); n.setNoteheadScale(noteheadScale); Note interval = n.addInterval(66 + pitchJump); interval.setNoteheadScale(noteheadScale); Measure measure = score.getMeasure(score.size() - 1); measure.setMeasureText("" + noteheadScale); } final ScoreFrame scoreFrame = new ScoreFrame(); scoreFrame.addScore(score); scoreFrame.pack(); scoreFrame.setVisible(true); scoreFrame.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { scoreFrame.quit(); } }); } }