fi.jyu.mit.Music
Class Note

java.lang.Object
  extended by fi.jyu.mit.Music.Note
Direct Known Subclasses:
Note.Delay

public class Note
extends Object

Luokka nuottien esittämiseen.


Nested Class Summary
static class Note.Delay
          Taukoa kuvaava nuotti
 
Field Summary
static int DELAY
           
 
Constructor Summary
Note(int note, int length, int velocity)
          Alutetaan nuotti
Note(Note n)
          Tehdään nuotista kopio
 
Method Summary
 int getLength()
           
 int getNote()
           
 int getVelocity()
           
 boolean isDelay()
           
 String message()
          Palauttaa nuottia vastaavan tulostettavan viestin
static String message(int note, int length, int velocity)
          Palauttaa nuottia vastaavan tulostettavan viestin
 void setLength(int length)
          asetetaan nuotin pituus
 void setNote(int note)
          Alustetaan nuotin arvo.
 void setVelocity(int velocity)
          Asetetaan kuinka voimakkaasti painetaan.
 String toString()
          Muuttaa nuotin merkkijonoksi
static String toString(int note)
          Muuttaa modi-nuotin merkkijonoksi.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

DELAY

public static final int DELAY
See Also:
Constant Field Values
Constructor Detail

Note

public Note(int note,
            int length,
            int velocity)
Alutetaan nuotti

Parameters:
note - MIDI-nuotin arvo (21-108)
length - Kesto millisekunteina
velocity - Nuotin nk. painovoimakkuus. Oletus on 64.

Note

public Note(Note n)
Tehdään nuotista kopio

Parameters:
n - nuotti jolla uusi nuotti alustetaan.
Method Detail

setNote

public void setNote(int note)
Alustetaan nuotin arvo. Negatiivinen on tauko.

Parameters:
note - MIDI-nuotin arvo (21-108)
Example:
   Note n = new Note(30,300,64);
   n.getNote() === 30;
   n.setNote(Note.DELAY);
   n.isDelay() === true;
   n.setNote(2);
   n.getNote() === 21;
   n.setNote(200);
   n.getNote() === 108; 
   n.setNote(-1);
   n.isDelay() === true;
 

getNote

public int getNote()
Returns:
MIDI-nuotin arvo (21-108)

isDelay

public boolean isDelay()
Returns:
true jos nuotti edustaa taukoa

setLength

public void setLength(int length)
asetetaan nuotin pituus

Parameters:
length - asetettava pituus

getLength

public int getLength()
Returns:
nuotin pituus

setVelocity

public void setVelocity(int velocity)
Asetetaan kuinka voimakkaasti painetaan.

Parameters:
velocity - Nuotin nk. painovoimakkuus. Oletus on 64.

getVelocity

public int getVelocity()
Returns:
nuotin nk. painovoimakkuus. Oletus on 64.

toString

public static String toString(int note)
Muuttaa modi-nuotin merkkijonoksi. Tauko on "-"

Parameters:
note - MIDI-nuotin arvo (21-108)
Returns:
midi-nuotin arvo merkkijonona.
Example:
   Note.toString(21) === "A0";
   Note.toString(22) === "Bb0";
   Note.toString(23) === "B0";
   Note.toString(24) === "C1";
   Note.toString(25) === "C#1";
   Note.toString(60) === "C4";
   Note.toString(106) === "Bb7";
   Note.toString(107) === "B7";
   Note.toString(108) === "C8";
   Note.toString(-1) === "-";
 

toString

public String toString()
Muuttaa nuotin merkkijonoksi

Overrides:
toString in class Object
Returns:
nuotti merkkijonona
Example:
   Note n = new Note(60,250,64);
   n.toString() === "C4";
 

message

public static String message(int note,
                             int length,
                             int velocity)
Palauttaa nuottia vastaavan tulostettavan viestin

Parameters:
note - MIDI-nuotin arvo (21-108)
length - Kesto millisekunteina
velocity - Nuotin nk. painovoimakkuus. Oletus on 64.
Returns:
nuottia vastaava "debug"-viesti
Example:
   Note.message(60,250,64) === "' 60' C4  kesto  250 ms";  
   Note.message(-1,250,64) === "'   '     kesto  250 ms";  
 

message

public String message()
Palauttaa nuottia vastaavan tulostettavan viestin

Example:
   Note n = new Note(60,250,64);
   n.message() === "' 60' C4  kesto  250 ms";