pointing
v0.0.5
Published
An open-source cross-platform library to get raw events from pointing devices and master transfer functions
Downloads
5
Readme
pointing
Libpointing Node.js bindings
Libpointing is an open-source cross-platform library to get raw events from pointing devices and master transfer functions.
Description
Libpointing is an open-source cross-platform library that provides direct access to HID pointing devices and supports the design of pointing transfer functions.
Installation
- Install libpointing
- npm install pointing
Note that, pointing
with npm can be installed only on Mac OS and Linux.
Example
var pointing = require('pointing');
if (process.argv.length < 5)
console.log("Usage: node", process.argv[1], "[inputdeviceURI [outputdeviceURI [transferfunctionURI]]]")
global.input = pointing.PointingDevice((process.argv[2]) ? process.argv[2] : "any:")
var output = pointing.DisplayDevice((process.argv[3]) ? process.argv[3] : "any:");
var tFunc = pointing.TransferFunction((process.argv[4]) ? process.argv[4] : "system:", input, output);
input.setPointingCallback(function(timestamp, dx, dy, buttons) {
var pixels = tFunc.applyi(dx, dy, timestamp);
console.log(timestamp, dx, dy, buttons, " -> ", pixels.dx, pixels.dy);
});
var manager = pointing.PointingDeviceManager().addDeviceUpdateCallback(
function(deviceDescriptor, wasAdded)
{
console.log(deviceDescriptor, wasAdded);
}
);
var acc = pointing.SystemPointerAcceleration();
console.log("Current acceleration for mouse:", acc.get());
setTimeout(function() {
console.log("Finished");
}, 100000);
License
This software may be used and distributed according to the terms of the GNU General Public License version 2 or any later version.