using MBP Trackpad events on openFrameworks.
( alternative of ofxMultiTouchPad )
- Basic: OSX 10.7 and later
- Force touch: OSX 10.10.3 and later
- Touchbar: OSX 10.12.1 and later
- macOS 10.12.3 + of 0.9.8 + MBP 2016
- macOS 10.12.3 + of 0.9.8 + MBP 2016 + Magic Trackpad
- Mac OSX 10.10.3 + of 0.9.6 + MBP 2013
- Swipe event won't be received.
class ofApp {
ofxMacTrackpadTouchArg touches;
public:
void receiveTouches(ofxMacTrackpadTouchArg &arg) {
touches = arg;
}
void setup() {
ofAddListener(ofxMacTrackpad::multitouch, this, &ofApp::receiveTouches);
ofxMacTrackpad::startListen();
}
void draw() {
for(auto &finger : touches.fingers) {
ofDrawCircle(
ofMap(finger.position.x, 0.0f, 1.0f, 0.0f, ofGetWidth()),
ofMap(finger.position.y, 0.0f, 1.0f, 0.0f, ofGetHeight()),
40
);
}
}
};
see example and source code.
-
ofEvent touch;
-
ofEvent release;
-
ofEvent multitouch;
-
ofEvent touchTouchbar;
-
ofEvent releaseTouchbar;
-
ofEvent multitouchTouchbar;
-
ofEvent pressure;
-
ofEvent pinch;
-
ofEvent rotate;
-
ofEvent swipe;
-
ofEvent twoFingerDoubleTap;
- None
- Began
- Stationary
- Changed
- Ended
- Cancelled
- MayBegan
- TouchPhase phase
- std::uint64_t identity
- std::uint64_t deviceID
- ofPoint position
- ofVec2f delta
- bool isResting
- std::vector fingers
- std::vector releasedFingers
- ofxMacTrackpadEventPhase phase
- double timestamp
- float pressure
- PressureBehavior behavior
- std::uint8_t stage
- float stageTransition
- float normalizedPressure()
- ofxMacTrackpadEventPhase phase
- double timestamp
- float magnification
- ofxMacTrackpadEventPhase phase
- double timestamp
- float rotation
- ofxMacTrackpadEventPhase phase
- double timestamp
- ofPoint delta
- ofxMacTrackpadEventPhase phase
- double timestamp
- ofxMacTrackpadEventPhase phase
- double timestamp
MIT License.
- ISHII 2bit [bufferRenaiss co., ltd.]
- ishii[at]buffer-renaiss.com
Please create new issue, if there is a problem. And please throw pull request, if you have a cool idea!!