| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 | 
							- import * as eventUtil from './event.js';
 
- var GestureMgr = (function () {
 
-     function GestureMgr() {
 
-         this._track = [];
 
-     }
 
-     GestureMgr.prototype.recognize = function (event, target, root) {
 
-         this._doTrack(event, target, root);
 
-         return this._recognize(event);
 
-     };
 
-     GestureMgr.prototype.clear = function () {
 
-         this._track.length = 0;
 
-         return this;
 
-     };
 
-     GestureMgr.prototype._doTrack = function (event, target, root) {
 
-         var touches = event.touches;
 
-         if (!touches) {
 
-             return;
 
-         }
 
-         var trackItem = {
 
-             points: [],
 
-             touches: [],
 
-             target: target,
 
-             event: event
 
-         };
 
-         for (var i = 0, len = touches.length; i < len; i++) {
 
-             var touch = touches[i];
 
-             var pos = eventUtil.clientToLocal(root, touch, {});
 
-             trackItem.points.push([pos.zrX, pos.zrY]);
 
-             trackItem.touches.push(touch);
 
-         }
 
-         this._track.push(trackItem);
 
-     };
 
-     GestureMgr.prototype._recognize = function (event) {
 
-         for (var eventName in recognizers) {
 
-             if (recognizers.hasOwnProperty(eventName)) {
 
-                 var gestureInfo = recognizers[eventName](this._track, event);
 
-                 if (gestureInfo) {
 
-                     return gestureInfo;
 
-                 }
 
-             }
 
-         }
 
-     };
 
-     return GestureMgr;
 
- }());
 
- export { GestureMgr };
 
- function dist(pointPair) {
 
-     var dx = pointPair[1][0] - pointPair[0][0];
 
-     var dy = pointPair[1][1] - pointPair[0][1];
 
-     return Math.sqrt(dx * dx + dy * dy);
 
- }
 
- function center(pointPair) {
 
-     return [
 
-         (pointPair[0][0] + pointPair[1][0]) / 2,
 
-         (pointPair[0][1] + pointPair[1][1]) / 2
 
-     ];
 
- }
 
- var recognizers = {
 
-     pinch: function (tracks, event) {
 
-         var trackLen = tracks.length;
 
-         if (!trackLen) {
 
-             return;
 
-         }
 
-         var pinchEnd = (tracks[trackLen - 1] || {}).points;
 
-         var pinchPre = (tracks[trackLen - 2] || {}).points || pinchEnd;
 
-         if (pinchPre
 
-             && pinchPre.length > 1
 
-             && pinchEnd
 
-             && pinchEnd.length > 1) {
 
-             var pinchScale = dist(pinchEnd) / dist(pinchPre);
 
-             !isFinite(pinchScale) && (pinchScale = 1);
 
-             event.pinchScale = pinchScale;
 
-             var pinchCenter = center(pinchEnd);
 
-             event.pinchX = pinchCenter[0];
 
-             event.pinchY = pinchCenter[1];
 
-             return {
 
-                 type: 'pinch',
 
-                 target: tracks[0].target,
 
-                 event: event
 
-             };
 
-         }
 
-     }
 
- };
 
 
  |