我正在用 JFugue 5.0 做一个项目,我试过 4.0 但 5.0 似乎比他以前的兄弟更流畅。无论如何,我有 JFugue v4 的完整指南,这些是用来指代不同打击乐器的弦乐
现在,当我尝试运行我的代码时,我收到了这个错误:
Exception in thread "AWT-EventQueue-0" java.lang.RuntimeException: JFugue NoteSubparser: Could not find 'HIGH_TOM' in dictionary.
这是我使用的自定义节奏图:
kitPercusion = new HashMap<>();
kitPercusion.put('O', "[ACOUSTIC_BASS_DRUM]i");
kitPercusion.put('S', "[ACOUSTIC_SNARE]i");
kitPercusion.put('`', "[CLOSED_HI_HAT]s Rs");
kitPercusion.put('^', "[OPEN_HI_HAT]i");
kitPercusion.put('R', "[RIDE_CYMBAL_1]s Rs");
kitPercusion.put('C', "[CRASH_CYMBAL_1]s Rs");
kitPercusion.put('T', "[HIGH_TOM]s Rs");
kitPercusion.put('-', "[HI_MID_TOM]s Rs");
kitPercusion.put('_', "[LOW_FLOOR_TOM]s Rs");
kitPercusion.put('~', "[COWBELL]i");
kitPercusion.put('.', "Ri");
在官方网络示例中,我看到名称已“简化”,如“吉他”、“钢琴”等。
有没有办法用有效的乐器字符串来获取字典?
编辑:我试过这个,但它打印一个空地图
Player player = new Player();
StaccatoParser sp = player.getStaccatoParser();
StaccatoParserContext spc = new StaccatoParserContext(sp);
System.out.println(spc.getDictionary());