Advertisement
Guest User

Untitled

a guest
Jan 23rd, 2018
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.22 KB | None | 0 0
  1. package lab2;
  2.  
  3. import c4e.media.ToneEmitter;
  4. import c4e.phidget.Event;
  5. import c4e.phidget.HardwareInterface;
  6.  
  7. public class NotePlayer extends HardwareInterface
  8. {
  9.  
  10. private ToneEmitter emitter;
  11. private long delay;
  12. private double ThumbMin;
  13. private double ThumbMax;
  14. private double IndexMin;
  15. private double IndexMax;
  16. private double z;
  17. private double c;
  18.  
  19.  
  20.  
  21. public NotePlayer(boolean debug)
  22. {
  23. super(debug);
  24. this.emitter = new ToneEmitter();
  25. this.delay = 1000;
  26. this.setTimer(delay);
  27. this.ThumbMin = 360;
  28. this.ThumbMax = 560;
  29. this.IndexMin = ToneEmitter.NOTE_C;
  30. this.IndexMax = 2*ToneEmitter.NOTE_C;
  31.  
  32.  
  33. }
  34.  
  35. @Override
  36. public void timerCallback()
  37. {
  38. System.out.println("Playing C");
  39. this.emitter.setVolume(1.0);
  40. this.emitter.play(ToneEmitter.NOTE_C);
  41.  
  42. }
  43.  
  44.  
  45. @Override
  46. public void analogInputChanged(Event ae)
  47.  
  48.  
  49. {
  50. System.out.println("analogInputChange event " + ae);
  51. ae.getId();
  52. if (ae.getId() == 1) {
  53.  
  54. this.z = ae.getValue() - ThumbMin;
  55.  
  56. if (ae.getValue() <= ThumbMin) {
  57. this.emitter.setVolume(0.0);
  58. }
  59. else if (ae.getValue() >= ThumbMax){
  60. this.emitter.setVolume(1.0);
  61. }
  62. else{
  63. this.emitter.setVolume(z/200) ;
  64. }
  65. }
  66. else if (ae.getId() == 2) {
  67. this.c = (261*(ae.getValue() - IndexMin)/(260))+262;
  68.  
  69. if (ae.getValue() <= 380) {
  70. this.emitter.setFrequency(ToneEmitter.NOTE_C);
  71. }
  72. else if ( ae.getValue() >= 640){
  73. this.emitter.setFrequency(2*ToneEmitter.NOTE_C);
  74. }
  75. else {
  76. this.emitter.setFrequency(c);
  77. }
  78. /*else if (ae.getValue() >294 &( ae.getValue() <= 330)){
  79. this.emitter.setFrequency(ToneEmitter.NOTE_D);;
  80. }
  81. else if (ae.getValue() >330 &( ae.getValue() <= 349)){
  82. this.emitter.setFrequency(ToneEmitter.NOTE_E);
  83. }
  84. else if (ae.getValue() >349 &( ae.getValue() <= 392)){
  85. this.emitter.setFrequency(ToneEmitter.NOTE_F);
  86. }
  87. else if (ae.getValue() >392 &( ae.getValue() <= 440)){
  88. this.emitter.setFrequency(ToneEmitter.NOTE_G);
  89. }
  90. else if (ae.getValue() >440 &( ae.getValue() <= 494)){
  91. this.emitter.setFrequency(ToneEmitter.NOTE_A);
  92. }
  93. else if (ae.getValue() >494 &( ae.getValue() <= 523)){
  94. this.emitter.setFrequency(ToneEmitter.NOTE_B);
  95. }*/
  96.  
  97.  
  98. }
  99. }
  100. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement