void NBR_VEC(Machine & machine){ machine.nextInt8(); Tuple v(3); v.push(machine.currentNeighbour().x); v.push(machine.currentNeighbour().y); v.push(machine.currentNeighbour().z); machine.stack.push(v); }
void NBR_RANGE(Machine & machine){ float x = machine.currentNeighbour().x; float y = machine.currentNeighbour().y; float z = machine.currentNeighbour().z; machine.stack.push(sqrt(x*x + y*y + z*z)); }
void NBR_BEARING(Machine & machine){ float x = machine.currentNeighbour().x; float y = machine.currentNeighbour().y; machine.stack.push(atan2(y,x)); }
void NBR_LAG(Machine & machine){ machine.stack.push(machine.currentNeighbour().lag); }