Še en popravek
parent
302413b864
commit
abca1f2719
22
danijela.js
22
danijela.js
|
@ -10,6 +10,13 @@ const INDEX_BEKAP = 3
|
||||||
// CC kanali za midi mapping (kanal, CC kanal)
|
// CC kanali za midi mapping (kanal, CC kanal)
|
||||||
const midiKanal = 176;
|
const midiKanal = 176;
|
||||||
|
|
||||||
|
// CC kanali senzorjev
|
||||||
|
const midiKanalSenzor = {
|
||||||
|
1: 20,
|
||||||
|
2: 21,
|
||||||
|
3: 22
|
||||||
|
}
|
||||||
|
|
||||||
const senzorCCKanal = {
|
const senzorCCKanal = {
|
||||||
1: 75,
|
1: 75,
|
||||||
2: 76,
|
2: 76,
|
||||||
|
@ -78,6 +85,7 @@ mi.on('message', (deltaTime, msg) => {
|
||||||
if (Object.values(senzorCCKanal).includes(msg[1])) {
|
if (Object.values(senzorCCKanal).includes(msg[1])) {
|
||||||
const s = Object.values(senzorCCKanal).indexOf(msg[1]) + 1
|
const s = Object.values(senzorCCKanal).indexOf(msg[1]) + 1
|
||||||
if (!muteMidi[s]) {
|
if (!muteMidi[s]) {
|
||||||
|
senzorCC[s] = msg[2]
|
||||||
console.log(`senzor ${s}: ${msg[2]}`)
|
console.log(`senzor ${s}: ${msg[2]}`)
|
||||||
}
|
}
|
||||||
} else if (Object.values(senzorCCMute).includes(msg[1])) {
|
} else if (Object.values(senzorCCMute).includes(msg[1])) {
|
||||||
|
@ -166,7 +174,6 @@ oscWS.on('message', ({ address, args }) => {
|
||||||
const re = /\/ww\/0\/ww\/(\d+)\/([a-zA-Z]+)/
|
const re = /\/ww\/0\/ww\/(\d+)\/([a-zA-Z]+)/
|
||||||
const m = address.match(re)
|
const m = address.match(re)
|
||||||
|
|
||||||
//console.log(m);
|
|
||||||
if (m) {
|
if (m) {
|
||||||
const index = parseInt(m[1])
|
const index = parseInt(m[1])
|
||||||
const addr = m[2]
|
const addr = m[2]
|
||||||
|
@ -195,9 +202,10 @@ oscWS.on('message', ({ address, args }) => {
|
||||||
const novQ = new Quat({w: args[0], x: args[1], y: args[2], z: args[3]})
|
const novQ = new Quat({w: args[0], x: args[1], y: args[2], z: args[3]})
|
||||||
const novQC = novQ.mul(izhodisceQ[index])
|
const novQC = novQ.mul(izhodisceQ[index])
|
||||||
const qWd = novQC.div(prejsnjiQ[index])
|
const qWd = novQC.div(prejsnjiQ[index])
|
||||||
prejsnjiQ[index] = novQC[index];
|
prejsnjiQ[index] = novQC;
|
||||||
|
|
||||||
const eulerD = qWd[index].toEuler()
|
const eulerD = qWd.toEuler()
|
||||||
|
//console.log(index, eulerD)
|
||||||
eulerRotacija[index][0] += eulerD.roll * (senzorCC[index] / 64);
|
eulerRotacija[index][0] += eulerD.roll * (senzorCC[index] / 64);
|
||||||
eulerRotacija[index][1] += eulerD.pitch * (senzorCC[index] / 64);
|
eulerRotacija[index][1] += eulerD.pitch * (senzorCC[index] / 64);
|
||||||
eulerRotacija[index][2] += eulerD.yaw * (senzorCC[index] / 64);
|
eulerRotacija[index][2] += eulerD.yaw * (senzorCC[index] / 64);
|
||||||
|
@ -217,14 +225,16 @@ oscWS.on('message', ({ address, args }) => {
|
||||||
// Vrtenje levo/desno (stegnjena roka)
|
// Vrtenje levo/desno (stegnjena roka)
|
||||||
//console.log(eulerRotacijaGlave)
|
//console.log(eulerRotacijaGlave)
|
||||||
const vrtenjeZ = normSin(eulerRotacija[index][2])
|
const vrtenjeZ = normSin(eulerRotacija[index][2])
|
||||||
const vrtenjeZmidi = Math.round(vrtenjeZ * 127);
|
//console.log(vrtenjeZ)
|
||||||
|
const vrtenjeZmidi = Math.round(vrtenjeZ * 127)
|
||||||
|
|
||||||
//console.log('vrtenjeZ', vrtenjeZmidi)
|
//console.log('vrtenjeZ', vrtenjeZmidi)
|
||||||
//console.log('cmp', vrtenjeZmidi, staroVrtenjeZmidi);
|
//console.log('cmp', vrtenjeZmidi, staroVrtenjeZmidi);
|
||||||
|
//console.log(vrtenjeZmidi);
|
||||||
if (vrtenjeZmidi !== staroVrtenjeZMidi[index]
|
if (vrtenjeZmidi !== staroVrtenjeZMidi[index]
|
||||||
&& !muteMidi[index]) {
|
&& !muteMidi[index]) {
|
||||||
posljiMidi(182, 20, vrtenjeZmidi);
|
posljiMidi(182, midiKanalSenzor[index], vrtenjeZmidi)
|
||||||
staroVrtenjeZMidi[index] = vrtenjeZmidi;
|
staroVrtenjeZMidi[index] = vrtenjeZmidi
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue