copper3d 1.15.2 → 1.15.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Controls/Copper3dTrackballControls.js +105 -39
- package/dist/Controls/Copper3dTrackballControls.js.map +1 -1
- package/dist/bundle.esm.js +107 -41
- package/dist/bundle.umd.js +107 -41
- package/dist/index.d.ts +1 -1
- package/dist/index.js +2 -2
- package/dist/types/index.d.ts +1 -1
- package/package.json +1 -1
|
@@ -399,7 +399,7 @@ class Copper3dTrackballControls extends EventDispatcher {
|
|
|
399
399
|
_moveCurr.copy(getMouseOnCircle(_pointers[0].pageX, _pointers[0].pageY));
|
|
400
400
|
_movePrev.copy(_moveCurr);
|
|
401
401
|
break;
|
|
402
|
-
|
|
402
|
+
default: // 2 or more
|
|
403
403
|
_state = STATE.TOUCH_ZOOM_PAN;
|
|
404
404
|
const dx = _pointers[0].pageX - _pointers[1].pageX;
|
|
405
405
|
const dy = _pointers[0].pageY - _pointers[1].pageY;
|
|
@@ -409,47 +409,25 @@ class Copper3dTrackballControls extends EventDispatcher {
|
|
|
409
409
|
_panStart.copy(getMouseOnScreen(x, y));
|
|
410
410
|
_panEnd.copy(_panStart);
|
|
411
411
|
break;
|
|
412
|
-
case 3:
|
|
413
|
-
_state = STATE.TOUCH_PAN;
|
|
414
|
-
const centerX = (_pointers[0].pageX + _pointers[1].pageX + _pointers[2].pageX) / 3;
|
|
415
|
-
const centerY = (_pointers[0].pageY + _pointers[1].pageY + _pointers[2].pageY) / 3;
|
|
416
|
-
_panStart.copy(getMouseOnScreen(centerX, centerY));
|
|
417
|
-
_panEnd.copy(_panStart);
|
|
418
|
-
break;
|
|
419
412
|
}
|
|
420
413
|
scope.dispatchEvent(_startEvent);
|
|
421
414
|
}
|
|
422
415
|
function onTouchMove(event) {
|
|
423
416
|
trackPointer(event);
|
|
424
|
-
let position, x, y;
|
|
425
417
|
switch (_pointers.length) {
|
|
426
418
|
case 1:
|
|
427
|
-
if (_state != STATE.TOUCH_ROTATE)
|
|
428
|
-
return;
|
|
429
419
|
_movePrev.copy(_moveCurr);
|
|
430
420
|
_moveCurr.copy(getMouseOnCircle(event.pageX, event.pageY));
|
|
431
421
|
break;
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
return;
|
|
435
|
-
position = getSecondPointerPosition(event);
|
|
422
|
+
default: // 2 or more
|
|
423
|
+
const position = getSecondPointerPosition(event);
|
|
436
424
|
const dx = event.pageX - position.x;
|
|
437
425
|
const dy = event.pageY - position.y;
|
|
438
426
|
_touchZoomDistanceEnd = Math.sqrt(dx * dx + dy * dy);
|
|
439
|
-
x = (event.pageX + position.x) / 2;
|
|
440
|
-
y = (event.pageY + position.y) / 2;
|
|
427
|
+
const x = (event.pageX + position.x) / 2;
|
|
428
|
+
const y = (event.pageY + position.y) / 2;
|
|
441
429
|
_panEnd.copy(getMouseOnScreen(x, y));
|
|
442
430
|
break;
|
|
443
|
-
case 3:
|
|
444
|
-
if (_state != STATE.TOUCH_PAN)
|
|
445
|
-
return;
|
|
446
|
-
const point_1 = _pointerPositions[_pointers[0].pointerId];
|
|
447
|
-
const point_2 = _pointerPositions[_pointers[1].pointerId];
|
|
448
|
-
const point_3 = _pointerPositions[_pointers[2].pointerId];
|
|
449
|
-
const centerX = (point_1.x + point_2.x + point_3.x) / 3;
|
|
450
|
-
const centerY = (point_1.y + point_2.y + point_3.y) / 3;
|
|
451
|
-
_panEnd.copy(getMouseOnScreen(centerX, centerY));
|
|
452
|
-
break;
|
|
453
431
|
}
|
|
454
432
|
}
|
|
455
433
|
function onTouchEnd(event) {
|
|
@@ -467,18 +445,7 @@ class Copper3dTrackballControls extends EventDispatcher {
|
|
|
467
445
|
for (let i = 0; i < _pointers.length; i++) {
|
|
468
446
|
if (_pointers[i].pointerId !== event.pointerId) {
|
|
469
447
|
const position = _pointerPositions[_pointers[i].pointerId];
|
|
470
|
-
_moveCurr.copy(
|
|
471
|
-
_movePrev.copy(_moveCurr);
|
|
472
|
-
break;
|
|
473
|
-
}
|
|
474
|
-
}
|
|
475
|
-
break;
|
|
476
|
-
case 3:
|
|
477
|
-
_state = STATE.TOUCH_PAN;
|
|
478
|
-
for (let i = 0; i < _pointers.length; i++) {
|
|
479
|
-
if (_pointers[i].pointerId !== event.pointerId) {
|
|
480
|
-
const position = _pointerPositions[_pointers[i].pointerId];
|
|
481
|
-
_moveCurr.copy(getMouseOnScreen(position.x, position.y));
|
|
448
|
+
_moveCurr.copy(getMouseOnCircle(position.x, position.y));
|
|
482
449
|
_movePrev.copy(_moveCurr);
|
|
483
450
|
break;
|
|
484
451
|
}
|
|
@@ -487,6 +454,105 @@ class Copper3dTrackballControls extends EventDispatcher {
|
|
|
487
454
|
}
|
|
488
455
|
scope.dispatchEvent(_endEvent);
|
|
489
456
|
}
|
|
457
|
+
// function onTouchStart(event: PointerEvent) {
|
|
458
|
+
// trackPointer(event);
|
|
459
|
+
// switch (_pointers.length) {
|
|
460
|
+
// case 1:
|
|
461
|
+
// _state = STATE.TOUCH_ROTATE;
|
|
462
|
+
// _moveCurr.copy(
|
|
463
|
+
// getMouseOnCircle(_pointers[0].pageX, _pointers[0].pageY)
|
|
464
|
+
// );
|
|
465
|
+
// _movePrev.copy(_moveCurr);
|
|
466
|
+
// break;
|
|
467
|
+
// case 2:
|
|
468
|
+
// _state = STATE.TOUCH_ZOOM_PAN;
|
|
469
|
+
// const dx: number = _pointers[0].pageX - _pointers[1].pageX;
|
|
470
|
+
// const dy: number = _pointers[0].pageY - _pointers[1].pageY;
|
|
471
|
+
// _touchZoomDistanceEnd = _touchZoomDistanceStart = Math.sqrt(
|
|
472
|
+
// dx * dx + dy * dy
|
|
473
|
+
// );
|
|
474
|
+
// const x = (_pointers[0].pageX + _pointers[1].pageX) / 2;
|
|
475
|
+
// const y = (_pointers[0].pageY + _pointers[1].pageY) / 2;
|
|
476
|
+
// _panStart.copy(getMouseOnScreen(x, y));
|
|
477
|
+
// _panEnd.copy(_panStart);
|
|
478
|
+
// break;
|
|
479
|
+
// case 3:
|
|
480
|
+
// _state = STATE.TOUCH_PAN;
|
|
481
|
+
// const centerX =
|
|
482
|
+
// (_pointers[0].pageX + _pointers[1].pageX + _pointers[2].pageX) / 3;
|
|
483
|
+
// const centerY =
|
|
484
|
+
// (_pointers[0].pageY + _pointers[1].pageY + _pointers[2].pageY) / 3;
|
|
485
|
+
// _panStart.copy(getMouseOnScreen(centerX, centerY));
|
|
486
|
+
// _panEnd.copy(_panStart);
|
|
487
|
+
// break;
|
|
488
|
+
// }
|
|
489
|
+
// scope.dispatchEvent(_startEvent);
|
|
490
|
+
// }
|
|
491
|
+
// function onTouchMove(event: PointerEvent) {
|
|
492
|
+
// trackPointer(event);
|
|
493
|
+
// let position: Vector2, x: number, y: number;
|
|
494
|
+
// switch (_pointers.length) {
|
|
495
|
+
// case 1:
|
|
496
|
+
// if (_state != STATE.TOUCH_ROTATE) return;
|
|
497
|
+
// _movePrev.copy(_moveCurr);
|
|
498
|
+
// _moveCurr.copy(getMouseOnCircle(event.pageX, event.pageY));
|
|
499
|
+
// break;
|
|
500
|
+
// case 2:
|
|
501
|
+
// if (_state != STATE.TOUCH_ZOOM_PAN) return;
|
|
502
|
+
// position = getSecondPointerPosition(event);
|
|
503
|
+
// const dx: number = event.pageX - position.x;
|
|
504
|
+
// const dy: number = event.pageY - position.y;
|
|
505
|
+
// _touchZoomDistanceEnd = Math.sqrt(dx * dx + dy * dy);
|
|
506
|
+
// x = (event.pageX + position.x) / 2;
|
|
507
|
+
// y = (event.pageY + position.y) / 2;
|
|
508
|
+
// _panEnd.copy(getMouseOnScreen(x, y));
|
|
509
|
+
// break;
|
|
510
|
+
// case 3:
|
|
511
|
+
// if (_state != STATE.TOUCH_PAN) return;
|
|
512
|
+
// const point_1 = _pointerPositions[_pointers[0].pointerId];
|
|
513
|
+
// const point_2 = _pointerPositions[_pointers[1].pointerId];
|
|
514
|
+
// const point_3 = _pointerPositions[_pointers[2].pointerId];
|
|
515
|
+
// const centerX = (point_1.x + point_2.x + point_3.x) / 3;
|
|
516
|
+
// const centerY = (point_1.y + point_2.y + point_3.y) / 3;
|
|
517
|
+
// _panEnd.copy(getMouseOnScreen(centerX, centerY));
|
|
518
|
+
// break;
|
|
519
|
+
// }
|
|
520
|
+
// }
|
|
521
|
+
// function onTouchEnd(event: PointerEvent) {
|
|
522
|
+
// switch (_pointers.length) {
|
|
523
|
+
// case 0:
|
|
524
|
+
// _state = STATE.NONE;
|
|
525
|
+
// break;
|
|
526
|
+
// case 1:
|
|
527
|
+
// _state = STATE.TOUCH_ROTATE;
|
|
528
|
+
// _moveCurr.copy(getMouseOnCircle(event.pageX, event.pageY));
|
|
529
|
+
// _movePrev.copy(_moveCurr);
|
|
530
|
+
// break;
|
|
531
|
+
// case 2:
|
|
532
|
+
// _state = STATE.TOUCH_ZOOM_PAN;
|
|
533
|
+
// for (let i = 0; i < _pointers.length; i++) {
|
|
534
|
+
// if (_pointers[i].pointerId !== event.pointerId) {
|
|
535
|
+
// const position = _pointerPositions[_pointers[i].pointerId];
|
|
536
|
+
// _moveCurr.copy(getMouseOnScreen(position.x, position.y));
|
|
537
|
+
// _movePrev.copy(_moveCurr);
|
|
538
|
+
// break;
|
|
539
|
+
// }
|
|
540
|
+
// }
|
|
541
|
+
// break;
|
|
542
|
+
// case 3:
|
|
543
|
+
// _state = STATE.TOUCH_PAN;
|
|
544
|
+
// for (let i = 0; i < _pointers.length; i++) {
|
|
545
|
+
// if (_pointers[i].pointerId !== event.pointerId) {
|
|
546
|
+
// const position = _pointerPositions[_pointers[i].pointerId];
|
|
547
|
+
// _moveCurr.copy(getMouseOnScreen(position.x, position.y));
|
|
548
|
+
// _movePrev.copy(_moveCurr);
|
|
549
|
+
// break;
|
|
550
|
+
// }
|
|
551
|
+
// }
|
|
552
|
+
// break;
|
|
553
|
+
// }
|
|
554
|
+
// scope.dispatchEvent(_endEvent);
|
|
555
|
+
// }
|
|
490
556
|
function contextmenu(event) {
|
|
491
557
|
if (scope.enabled === false)
|
|
492
558
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Copper3dTrackballControls.js","sourceRoot":"","sources":["../../src/Controls/Copper3dTrackballControls.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Copper3dTrackballControls.js","sourceRoot":"","sources":["../../src/Controls/Copper3dTrackballControls.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,SAAS,EACT,KAAK,EACL,UAAU,EACV,OAAO,EACP,OAAO,GAGR,MAAM,OAAO,CAAC;AAEf,MAAM,YAAY,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AACxC,MAAM,WAAW,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;AACtC,MAAM,SAAS,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AAYlC,MAAM,yBAA0B,SAAQ,eAAe;IAgDrD,YACE,MAA8C,EAC9C,UAAuB;QAEvB,KAAK,EAAE,CAAC;QAER,MAAM,KAAK,GAAG,IAAI,CAAC;QACnB,MAAM,KAAK,GAAW;YACpB,IAAI,EAAE,CAAC,CAAC;YACR,MAAM,EAAE,CAAC;YACT,IAAI,EAAE,CAAC;YACP,GAAG,EAAE,CAAC;YACN,YAAY,EAAE,CAAC;YACf,UAAU,EAAE,CAAC;YACb,SAAS,EAAE,CAAC;YACZ,cAAc,EAAE,CAAC;SAClB,CAAC;QAEF,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC,CAAC,uBAAuB;QAEnE,MAAM;QAEN,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QAEpB,IAAI,CAAC,MAAM,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QAEvD,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC;QACvB,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC;QAEpB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QAEnB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,oBAAoB,GAAG,GAAG,CAAC;QAEhC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;QACrB,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC;QAE5B,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC;QAExB,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAErC,IAAI,CAAC,YAAY,GAAG;YAClB,IAAI,EAAE,KAAK,CAAC,MAAM;YAClB,MAAM,EAAE,KAAK,CAAC,KAAK;YACnB,KAAK,EAAE,KAAK,CAAC,GAAG;SACjB,CAAC;QAEF,YAAY;QAEZ,IAAI,CAAC,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAE5B,MAAM,GAAG,GAAW,QAAQ,CAAC;QAE7B,MAAM,YAAY,GAAG,IAAI,OAAO,EAAE,CAAC;QACnC,IAAI,QAAQ,GAAG,CAAC,CAAC;QAEjB,IAAI,MAAM,GAAW,KAAK,CAAC,IAAI,EAC7B,SAAS,GAAW,KAAK,CAAC,IAAI,EAC9B,uBAAuB,GAAW,CAAC,EACnC,qBAAqB,GAAW,CAAC,EACjC,UAAU,GAAW,CAAC,CAAC;QAEzB,MAAM,IAAI,GAAY,IAAI,OAAO,EAAE,EACjC,SAAS,GAAY,IAAI,OAAO,EAAE,EAClC,SAAS,GAAY,IAAI,OAAO,EAAE,EAClC,SAAS,GAAY,IAAI,OAAO,EAAE,EAClC,UAAU,GAAY,IAAI,OAAO,EAAE,EACnC,QAAQ,GAAY,IAAI,OAAO,EAAE,EACjC,SAAS,GAAY,IAAI,OAAO,EAAE,EAClC,OAAO,GAAY,IAAI,OAAO,EAAE,EAChC,SAAS,GAAwB,EAAE,EACnC,iBAAiB,GAA+B,EAAE,CAAC;QAErD,YAAY;QAEZ,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACnC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QAC9C,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;QAClC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;QAE9B,eAAe;QACf,IAAI,CAAC,YAAY,GAAG;YAClB,MAAM,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,qBAAqB,EAAE,CAAC;YAErD,qEAAqE;YACrE,mBAAmB;YACnB,MAAM,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,eAAe,CAAC;YACzD,KAAK,CAAC,MAAM,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,MAAM,CAAC,WAAW,GAAG,CAAC,CAAC,UAAU,CAAC;YACjE,KAAK,CAAC,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,MAAM,CAAC,WAAW,GAAG,CAAC,CAAC,SAAS,CAAC;YAC9D,KAAK,CAAC,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;YAC/B,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;QACnC,CAAC,CAAC;QAEF,MAAM,gBAAgB,GAAG,CAAC;YACxB,MAAM,MAAM,GAAY,IAAI,OAAO,EAAE,CAAC;YACtC,OAAO,SAAS,gBAAgB,CAAC,KAAa,EAAE,KAAa;gBAC3D,MAAM,CAAC,GAAG,CACR,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,EAChD,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CACjD,CAAC;gBAEF,OAAO,MAAM,CAAC;YAChB,CAAC,CAAC;QACJ,CAAC,CAAC,EAAE,CAAC;QAEL,MAAM,gBAAgB,GAAG,CAAC;YACxB;;eAEG;YACH,MAAM,MAAM,GAAY,IAAI,OAAO,EAAE,CAAC;YACtC,OAAO,SAAS,gBAAgB,CAAC,KAAa,EAAE,KAAa;gBAC3D,MAAM,CAAC,GAAG;gBACR,0CAA0C;gBAC1C,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,GAAG,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;oBACpD,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC;gBAC5B,2CAA2C;gBAC3C,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,GAAG,KAAK,CAAC,CAAC;oBACpD,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,0BAA0B;iBAChD,CAAC;gBAEF,OAAO,MAAM,CAAC;YAChB,CAAC,CAAC;QACJ,CAAC,CAAC,EAAE,CAAC;QAEL,IAAI,CAAC,YAAY,GAAG,CAAC;YACnB,MAAM,IAAI,GAAY,IAAI,OAAO,EAAE,EACjC,UAAU,GAAe,IAAI,UAAU,EAAE,EACzC,YAAY,GAAY,IAAI,OAAO,EAAE,EACrC,iBAAiB,GAAY,IAAI,OAAO,EAAE,EAC1C,uBAAuB,GAAY,IAAI,OAAO,EAAE,EAChD,aAAa,GAAY,IAAI,OAAO,EAAE,CAAC;YAEzC,OAAO,SAAS,YAAY;gBAC1B,aAAa,CAAC,GAAG,CACf,SAAS,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,EACzB,SAAS,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,EACzB,CAAC,CACF,CAAC;gBACF,oFAAoF;gBACpF,IAAI,KAAK,GAAW,aAAa,CAAC,MAAM,EAAE,CAAC;gBAE3C,IAAI,KAAK,EAAE;oBACT,qCAAqC;oBACrC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBAEnD,4IAA4I;oBAC5I,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;oBACpC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC;oBACpD,8DAA8D;oBAC9D,uBAAuB;yBACpB,YAAY,CAAC,iBAAiB,EAAE,YAAY,CAAC;yBAC7C,SAAS,EAAE,CAAC;oBAEf,4FAA4F;oBAE5F,iBAAiB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;oBACvD,uBAAuB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;oBAE7D,aAAa,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC,CAAC;oBAEnE,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;oBAEnD,KAAK,IAAI,KAAK,CAAC,WAAW,CAAC;oBAC3B,UAAU,CAAC,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;oBAEzC,iDAAiD;oBACjD,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;oBACjC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;oBAE5C,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACrB,UAAU,GAAG,KAAK,CAAC;iBACpB;qBAAM,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,UAAU,EAAE;oBAC5C,UAAU,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,oBAAoB,CAAC,CAAC;oBAC1D,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBACnD,UAAU,CAAC,gBAAgB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;oBACnD,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;oBACjC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;iBAC7C;gBAED,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC5B,CAAC,CAAC;QACJ,CAAC,CAAC,EAAE,CAAC;QAEL,IAAI,CAAC,UAAU,GAAG;YAChB,IAAI,MAAc,CAAC;YAEnB,MAAM,QAAQ,GAAG,UAAU,MAAc;gBACvC,IAAK,KAAK,CAAC,MAA4B,CAAC,mBAAmB,EAAE;oBAC3D,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;iBAC7B;qBAAM,IAAK,KAAK,CAAC,MAA6B,CAAC,oBAAoB,EAAE;oBACpE,KAAK,CAAC,MAAM,CAAC,IAAI,GAAG,SAAS,CAAC,KAAK,CACjC,KAAK,CAAC,MAAM,CAAC,IAAI,GAAG,MAAM,EAC1B,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,OAAO,CACd,CAAC;oBACF,IAAI,QAAQ,KAAK,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE;wBAClC,KAAK,CAAC,MAAM,CAAC,sBAAsB,EAAE,CAAC;qBACvC;iBACF;qBAAM;oBACL,OAAO,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;iBAClE;YACH,CAAC,CAAC;YAEF,IAAI,MAAM,KAAK,KAAK,CAAC,cAAc,EAAE;gBACnC,MAAM,GAAG,uBAAuB,GAAG,qBAAqB,CAAC;gBACzD,uBAAuB,GAAG,qBAAqB,CAAC;gBAChD,QAAQ,CAAC,MAAM,CAAC,CAAC;aAClB;iBAAM;gBACL,MAAM,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC;gBAE7D,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,GAAG,GAAG,EAAE;oBAClC,QAAQ,CAAC,MAAM,CAAC,CAAC;iBAClB;gBAED,IAAI,KAAK,CAAC,YAAY,EAAE;oBACtB,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;iBAC3B;qBAAM;oBACL,UAAU,CAAC,CAAC;wBACV,CAAC,QAAQ,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAAC;iBAC3D;aACF;QACH,CAAC,CAAC;QAEF,IAAI,CAAC,SAAS,GAAG,CAAC;YAChB,MAAM,WAAW,GAAY,IAAI,OAAO,EAAE,EACxC,QAAQ,GAAY,IAAI,OAAO,EAAE,EACjC,GAAG,GAAY,IAAI,OAAO,EAAE,CAAC;YAE/B,OAAO,SAAS,SAAS;gBACvB,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBAEzC,oMAAoM;gBACpM,IAAI,WAAW,CAAC,QAAQ,EAAE,EAAE;oBAC1B,IAAK,KAAK,CAAC,MAA6B,CAAC,oBAAoB,EAAE;wBAC7D,MAAM,WAAW,GACf,KAAK,CAAC,MAA4B,CAAC;wBACrC,MAAM,OAAO,GACX,CAAC,WAAW,CAAC,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC;4BACtC,WAAW,CAAC,IAAI;4BAChB,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC;wBAC/B,MAAM,OAAO,GACX,CAAC,WAAW,CAAC,GAAG,GAAG,WAAW,CAAC,MAAM,CAAC;4BACtC,WAAW,CAAC,IAAI;4BAChB,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC;wBAE/B,WAAW,CAAC,CAAC,IAAI,OAAO,CAAC;wBACzB,WAAW,CAAC,CAAC,IAAI,OAAO,CAAC;qBAC1B;oBAED,WAAW,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;oBAE3D,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;oBAC/D,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;oBAEjE,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBAC/B,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBAEtB,IAAI,KAAK,CAAC,YAAY,EAAE;wBACtB,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;qBACzB;yBAAM;wBACL,SAAS,CAAC,GAAG,CACX,WAAW;6BACR,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC;6BAC9B,cAAc,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAC9C,CAAC;qBACH;iBACF;YACH,CAAC,CAAC;QACJ,CAAC,CAAC,EAAE,CAAC;QAEL,IAAI,CAAC,cAAc,GAAG;YACpB,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;gBACjC,IAAI,IAAI,CAAC,QAAQ,EAAE,GAAG,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,EAAE;oBAC3D,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAC9B,KAAK,CAAC,MAAM,EACZ,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,CAClC,CAAC;oBACF,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;iBAC3B;gBAED,IAAI,IAAI,CAAC,QAAQ,EAAE,GAAG,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,EAAE;oBAC3D,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAC9B,KAAK,CAAC,MAAM,EACZ,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,CAClC,CAAC;oBACF,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;iBAC3B;aACF;QACH,CAAC,CAAC;QAEF,IAAI,CAAC,MAAM,GAAG;YACZ,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;YAErD,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;gBACnB,KAAK,CAAC,YAAY,EAAE,CAAC;aACtB;YAED,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;gBACjB,KAAK,CAAC,UAAU,EAAE,CAAC;aACpB;YAED,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;gBAChB,KAAK,CAAC,SAAS,EAAE,CAAC;aACnB;YAED,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAErD,IAAK,KAAK,CAAC,MAA4B,CAAC,mBAAmB,EAAE;gBAC3D,KAAK,CAAC,cAAc,EAAE,CAAC;gBAEvB,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBAElC,IAAI,YAAY,CAAC,iBAAiB,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,EAAE;oBAC/D,KAAK,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;oBAElC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;iBAC1C;aACF;iBAAM,IAAK,KAAK,CAAC,MAA6B,CAAC,oBAAoB,EAAE;gBACpE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBAElC,IACE,YAAY,CAAC,iBAAiB,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG;oBAC3D,QAAQ,KAAK,KAAK,CAAC,MAAM,CAAC,IAAI,EAC9B;oBACA,KAAK,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;oBAElC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;oBACzC,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;iBAC9B;aACF;iBAAM;gBACL,OAAO,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;aAClE;QACH,CAAC,CAAC;QAEF,IAAI,CAAC,KAAK,GAAG;YACX,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC;YACpB,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC;YAEvB,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACjC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAC5C,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAChC,KAAK,CAAC,MAAM,CAAC,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC;YAEhC,KAAK,CAAC,MAAM,CAAC,sBAAsB,EAAE,CAAC;YAEtC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;YAErD,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAElC,KAAK,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;YAElC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACzC,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;QAC/B,CAAC,CAAC;QAEF,YAAY;QAEZ,SAAS,aAAa,CAAC,KAAmB;YACxC,IAAI,KAAK,CAAC,OAAO,KAAK,KAAK;gBAAE,OAAO;YAEpC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC1B,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBAEpD,KAAK,CAAC,UAAU,CAAC,gBAAgB,CAAC,aAAa,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;gBACvE,KAAK,CAAC,UAAU,CAAC,gBAAgB,CAAC,WAAW,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;aACpE;YAED,UAAU,CAAC,KAAK,CAAC,CAAC;YAElB,IAAI,KAAK,CAAC,WAAW,KAAK,OAAO,EAAE;gBACjC,YAAY,CAAC,KAAK,CAAC,CAAC;aACrB;iBAAM;gBACL,WAAW,CAAC,KAAK,CAAC,CAAC;aACpB;QACH,CAAC;QAED,SAAS,aAAa,CAAC,KAAmB;YACxC,IAAI,KAAK,CAAC,OAAO,KAAK,KAAK;gBAAE,OAAO;YAEpC,IAAI,KAAK,CAAC,WAAW,KAAK,OAAO,EAAE;gBACjC,WAAW,CAAC,KAAK,CAAC,CAAC;aACpB;iBAAM;gBACL,WAAW,CAAC,KAAK,CAAC,CAAC;aACpB;QACH,CAAC;QAED,SAAS,WAAW,CAAC,KAAmB;YACtC,IAAI,KAAK,CAAC,OAAO,KAAK,KAAK;gBAAE,OAAO;YAEpC,IAAI,KAAK,CAAC,WAAW,KAAK,OAAO,EAAE;gBACjC,UAAU,CAAC,KAAK,CAAC,CAAC;aACnB;iBAAM;gBACL,SAAS,CAAC,KAAK,CAAC,CAAC;aAClB;YAED,aAAa,CAAC,KAAK,CAAC,CAAC;YAErB,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC1B,KAAK,CAAC,UAAU,CAAC,qBAAqB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBAExD,KAAK,CAAC,UAAU,CAAC,mBAAmB,CAClC,aAAa,EACb,aAAa,EACb,KAAK,CACN,CAAC;gBACF,KAAK,CAAC,UAAU,CAAC,mBAAmB,CAAC,WAAW,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;aACvE;QACH,CAAC;QAED,SAAS,eAAe,CAAC,KAAmB;YAC1C,aAAa,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC;QAED,SAAS,OAAO,CAAC,KAAoB;YACnC,IAAI,KAAK,CAAC,OAAO,KAAK,KAAK;gBAAE,OAAO;YACpC,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAE/C,IAAI,SAAS,KAAK,KAAK,CAAC,IAAI,EAAE;gBAC5B,OAAO;aACR;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;gBACrE,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC;aAC1B;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;gBACjE,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC;aACxB;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;gBAC/D,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC;aACvB;QACH,CAAC;QAED,SAAS,KAAK,CAAC,KAAoB;YACjC,IAAI,KAAK,CAAC,OAAO,KAAK,KAAK;gBAAE,OAAO;YAEpC,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC;YAEvB,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QACrD,CAAC;QAED,SAAS,WAAW,CAAC,KAAiB;YACpC,IAAI,MAAM,KAAK,KAAK,CAAC,IAAI,EAAE;gBACzB,QAAQ,KAAK,CAAC,MAAM,EAAE;oBACpB,KAAK,KAAK,CAAC,YAAY,CAAC,IAAI;wBAC1B,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;wBACtB,MAAM;oBACR,KAAK,KAAK,CAAC,YAAY,CAAC,MAAM;wBAC5B,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC;wBACpB,MAAM;oBACR,KAAK,KAAK,CAAC,YAAY,CAAC,KAAK;wBAC3B,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC;wBACnB,MAAM;iBACT;aACF;YAED,MAAM,KAAK,GAAG,SAAS,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;YAE5D,IAAI,KAAK,KAAK,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;gBAC7C,SAAS,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC3D,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aAC3B;iBAAM,IAAI,KAAK,KAAK,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;gBAChD,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC5D,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aAC3B;iBAAM,IAAI,KAAK,KAAK,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;gBAC9C,SAAS,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC3D,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aACzB;YAED,KAAK,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QACnC,CAAC;QAED,SAAS,WAAW,CAAC,KAAiB;YACpC,MAAM,KAAK,GAAG,SAAS,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;YAE5D,IAAI,KAAK,KAAK,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;gBAC7C,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC1B,SAAS,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;aAC5D;iBAAM,IAAI,KAAK,KAAK,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;gBAChD,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;aAC3D;iBAAM,IAAI,KAAK,KAAK,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;gBAC9C,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;aAC1D;QACH,CAAC;QAED,SAAS,SAAS,CAAC,KAAiB;YAClC,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC;YAEpB,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACjC,CAAC;QAED,SAAS,YAAY,CAAC,KAAiB;YACrC,IAAI,KAAK,CAAC,OAAO,KAAK,KAAK;gBAAE,OAAO;YACpC,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI;gBAAE,OAAO;YAElC,KAAK,CAAC,cAAc,EAAE,CAAC;YAEvB,QAAQ,KAAK,CAAC,SAAS,EAAE;gBACvB,KAAK,CAAC;oBACJ,gBAAgB;oBAChB,UAAU,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC;oBACrC,MAAM;gBAER,KAAK,CAAC;oBACJ,gBAAgB;oBAChB,UAAU,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;oBACpC,MAAM;gBAER;oBACE,8BAA8B;oBAC9B,UAAU,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,OAAO,CAAC;oBACvC,MAAM;aACT;YAED,KAAK,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;YACjC,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACjC,CAAC;QAED,SAAS,YAAY,CAAC,KAAmB;YACvC,YAAY,CAAC,KAAK,CAAC,CAAC;YAEpB,QAAQ,SAAS,CAAC,MAAM,EAAE;gBACxB,KAAK,CAAC;oBACJ,MAAM,GAAG,KAAK,CAAC,YAAY,CAAC;oBAC5B,SAAS,CAAC,IAAI,CACZ,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CACzD,CAAC;oBACF,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBAC1B,MAAM;gBAER,SAAS,YAAY;oBACnB,MAAM,GAAG,KAAK,CAAC,cAAc,CAAC;oBAC9B,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;oBACnD,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;oBACnD,qBAAqB,GAAG,uBAAuB,GAAG,IAAI,CAAC,IAAI,CACzD,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAClB,CAAC;oBAEF,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBACxD,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBACxD,SAAS,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;oBACvC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACxB,MAAM;aACT;YAED,KAAK,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QACnC,CAAC;QAED,SAAS,WAAW,CAAC,KAAmB;YACtC,YAAY,CAAC,KAAK,CAAC,CAAC;YAEpB,QAAQ,SAAS,CAAC,MAAM,EAAE;gBACxB,KAAK,CAAC;oBACJ,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBAC1B,SAAS,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;oBAC3D,MAAM;gBAER,SAAS,YAAY;oBACnB,MAAM,QAAQ,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;oBAEjD,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC;oBACpC,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC;oBACpC,qBAAqB,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;oBAErD,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;oBACzC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;oBACzC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;oBACrC,MAAM;aACT;QACH,CAAC;QAED,SAAS,UAAU,CAAC,KAAmB;YACrC,QAAQ,SAAS,CAAC,MAAM,EAAE;gBACxB,KAAK,CAAC;oBACJ,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC;oBACpB,MAAM;gBAER,KAAK,CAAC;oBACJ,MAAM,GAAG,KAAK,CAAC,YAAY,CAAC;oBAC5B,SAAS,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;oBAC3D,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBAC1B,MAAM;gBAER,KAAK,CAAC;oBACJ,MAAM,GAAG,KAAK,CAAC,cAAc,CAAC;oBAE9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;wBACzC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,EAAE;4BAC9C,MAAM,QAAQ,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;4BAC3D,SAAS,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;4BACzD,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;4BAC1B,MAAM;yBACP;qBACF;oBAED,MAAM;aACT;YAED,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACjC,CAAC;QAED,+CAA+C;QAC/C,yBAAyB;QAEzB,gCAAgC;QAChC,cAAc;QACd,qCAAqC;QACrC,wBAAwB;QACxB,mEAAmE;QACnE,WAAW;QACX,mCAAmC;QACnC,eAAe;QAEf,cAAc;QACd,uCAAuC;QACvC,oEAAoE;QACpE,oEAAoE;QACpE,qEAAqE;QACrE,4BAA4B;QAC5B,WAAW;QAEX,iEAAiE;QACjE,iEAAiE;QACjE,gDAAgD;QAChD,iCAAiC;QACjC,eAAe;QAEf,cAAc;QACd,kCAAkC;QAElC,wBAAwB;QACxB,8EAA8E;QAC9E,wBAAwB;QACxB,8EAA8E;QAC9E,4DAA4D;QAC5D,iCAAiC;QACjC,eAAe;QACf,MAAM;QAEN,sCAAsC;QACtC,IAAI;QAEJ,8CAA8C;QAC9C,yBAAyB;QACzB,iDAAiD;QAEjD,gCAAgC;QAChC,cAAc;QACd,kDAAkD;QAElD,mCAAmC;QACnC,oEAAoE;QACpE,eAAe;QAEf,cAAc;QACd,oDAAoD;QACpD,oDAAoD;QAEpD,qDAAqD;QACrD,qDAAqD;QACrD,8DAA8D;QAE9D,4CAA4C;QAC5C,4CAA4C;QAC5C,8CAA8C;QAC9C,eAAe;QAEf,cAAc;QACd,+CAA+C;QAC/C,mEAAmE;QACnE,mEAAmE;QACnE,mEAAmE;QAEnE,iEAAiE;QACjE,iEAAiE;QAEjE,0DAA0D;QAC1D,eAAe;QACf,MAAM;QACN,IAAI;QAEJ,6CAA6C;QAC7C,gCAAgC;QAChC,cAAc;QACd,6BAA6B;QAC7B,eAAe;QAEf,cAAc;QACd,qCAAqC;QACrC,oEAAoE;QACpE,mCAAmC;QACnC,eAAe;QAEf,cAAc;QACd,uCAAuC;QAEvC,qDAAqD;QACrD,4DAA4D;QAC5D,wEAAwE;QACxE,sEAAsE;QACtE,uCAAuC;QACvC,mBAAmB;QACnB,YAAY;QACZ,UAAU;QACV,eAAe;QAEf,cAAc;QACd,kCAAkC;QAElC,qDAAqD;QACrD,4DAA4D;QAC5D,wEAAwE;QACxE,sEAAsE;QACtE,uCAAuC;QACvC,mBAAmB;QACnB,YAAY;QACZ,UAAU;QACV,eAAe;QACf,MAAM;QAEN,oCAAoC;QACpC,IAAI;QAEJ,SAAS,WAAW,CAAC,KAAY;YAC/B,IAAI,KAAK,CAAC,OAAO,KAAK,KAAK;gBAAE,OAAO;YAEpC,KAAK,CAAC,cAAc,EAAE,CAAC;QACzB,CAAC;QAED,SAAS,UAAU,CAAC,KAAmB;YACrC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC;QAED,SAAS,aAAa,CAAC,KAAmB;YACxC,OAAO,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAE1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACzC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,EAAE;oBAC9C,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBACvB,OAAO;iBACR;aACF;QACH,CAAC;QAED,SAAS,YAAY,CAAC,KAAmB;YACvC,IAAI,QAAQ,GAAY,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAE3D,IAAI,QAAQ,KAAK,SAAS,EAAE;gBAC1B,QAAQ,GAAG,IAAI,OAAO,EAAE,CAAC;gBACzB,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAC;aAC/C;YAED,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC7C,CAAC;QAED,SAAS,wBAAwB,CAAC,KAAmB;YACnD,MAAM,OAAO,GACX,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;gBACxC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;gBACd,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAEnB,OAAO,iBAAiB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC9C,CAAC;QAED,IAAI,CAAC,OAAO,GAAG;YACb,KAAK,CAAC,UAAU,CAAC,mBAAmB,CAAC,aAAa,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;YAExE,KAAK,CAAC,UAAU,CAAC,mBAAmB,CAAC,aAAa,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;YAC1E,KAAK,CAAC,UAAU,CAAC,mBAAmB,CAClC,eAAe,EACf,eAAe,EACf,KAAK,CACN,CAAC;YACF,KAAK,CAAC,UAAU,CAAC,mBAAmB,CAAC,OAAO,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;YAEnE,KAAK,CAAC,UAAU,CAAC,mBAAmB,CAAC,aAAa,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;YAC1E,KAAK,CAAC,UAAU,CAAC,mBAAmB,CAAC,WAAW,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;YAEtE,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YACtD,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QACpD,CAAC,CAAC;QAEF,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,aAAa,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;QAEpE,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,aAAa,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;QACtE,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,eAAe,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;QAC1E,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QAE5E,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QACnD,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAE/C,IAAI,CAAC,YAAY,EAAE,CAAC;QAEpB,2BAA2B;QAC3B,IAAI,CAAC,MAAM,EAAE,CAAC;IAChB,CAAC;CACF;AAED,OAAO,EAAE,yBAAyB,EAAE,CAAC"}
|
package/dist/bundle.esm.js
CHANGED
|
@@ -45609,7 +45609,7 @@ class Copper3dTrackballControls extends EventDispatcher {
|
|
|
45609
45609
|
_moveCurr.copy(getMouseOnCircle(_pointers[0].pageX, _pointers[0].pageY));
|
|
45610
45610
|
_movePrev.copy(_moveCurr);
|
|
45611
45611
|
break;
|
|
45612
|
-
|
|
45612
|
+
default: // 2 or more
|
|
45613
45613
|
_state = STATE.TOUCH_ZOOM_PAN;
|
|
45614
45614
|
const dx = _pointers[0].pageX - _pointers[1].pageX;
|
|
45615
45615
|
const dy = _pointers[0].pageY - _pointers[1].pageY;
|
|
@@ -45619,47 +45619,25 @@ class Copper3dTrackballControls extends EventDispatcher {
|
|
|
45619
45619
|
_panStart.copy(getMouseOnScreen(x, y));
|
|
45620
45620
|
_panEnd.copy(_panStart);
|
|
45621
45621
|
break;
|
|
45622
|
-
case 3:
|
|
45623
|
-
_state = STATE.TOUCH_PAN;
|
|
45624
|
-
const centerX = (_pointers[0].pageX + _pointers[1].pageX + _pointers[2].pageX) / 3;
|
|
45625
|
-
const centerY = (_pointers[0].pageY + _pointers[1].pageY + _pointers[2].pageY) / 3;
|
|
45626
|
-
_panStart.copy(getMouseOnScreen(centerX, centerY));
|
|
45627
|
-
_panEnd.copy(_panStart);
|
|
45628
|
-
break;
|
|
45629
45622
|
}
|
|
45630
45623
|
scope.dispatchEvent(_startEvent$2);
|
|
45631
45624
|
}
|
|
45632
45625
|
function onTouchMove(event) {
|
|
45633
45626
|
trackPointer(event);
|
|
45634
|
-
let position, x, y;
|
|
45635
45627
|
switch (_pointers.length) {
|
|
45636
45628
|
case 1:
|
|
45637
|
-
if (_state != STATE.TOUCH_ROTATE)
|
|
45638
|
-
return;
|
|
45639
45629
|
_movePrev.copy(_moveCurr);
|
|
45640
45630
|
_moveCurr.copy(getMouseOnCircle(event.pageX, event.pageY));
|
|
45641
45631
|
break;
|
|
45642
|
-
|
|
45643
|
-
|
|
45644
|
-
return;
|
|
45645
|
-
position = getSecondPointerPosition(event);
|
|
45632
|
+
default: // 2 or more
|
|
45633
|
+
const position = getSecondPointerPosition(event);
|
|
45646
45634
|
const dx = event.pageX - position.x;
|
|
45647
45635
|
const dy = event.pageY - position.y;
|
|
45648
45636
|
_touchZoomDistanceEnd = Math.sqrt(dx * dx + dy * dy);
|
|
45649
|
-
x = (event.pageX + position.x) / 2;
|
|
45650
|
-
y = (event.pageY + position.y) / 2;
|
|
45637
|
+
const x = (event.pageX + position.x) / 2;
|
|
45638
|
+
const y = (event.pageY + position.y) / 2;
|
|
45651
45639
|
_panEnd.copy(getMouseOnScreen(x, y));
|
|
45652
45640
|
break;
|
|
45653
|
-
case 3:
|
|
45654
|
-
if (_state != STATE.TOUCH_PAN)
|
|
45655
|
-
return;
|
|
45656
|
-
const point_1 = _pointerPositions[_pointers[0].pointerId];
|
|
45657
|
-
const point_2 = _pointerPositions[_pointers[1].pointerId];
|
|
45658
|
-
const point_3 = _pointerPositions[_pointers[2].pointerId];
|
|
45659
|
-
const centerX = (point_1.x + point_2.x + point_3.x) / 3;
|
|
45660
|
-
const centerY = (point_1.y + point_2.y + point_3.y) / 3;
|
|
45661
|
-
_panEnd.copy(getMouseOnScreen(centerX, centerY));
|
|
45662
|
-
break;
|
|
45663
45641
|
}
|
|
45664
45642
|
}
|
|
45665
45643
|
function onTouchEnd(event) {
|
|
@@ -45677,18 +45655,7 @@ class Copper3dTrackballControls extends EventDispatcher {
|
|
|
45677
45655
|
for (let i = 0; i < _pointers.length; i++) {
|
|
45678
45656
|
if (_pointers[i].pointerId !== event.pointerId) {
|
|
45679
45657
|
const position = _pointerPositions[_pointers[i].pointerId];
|
|
45680
|
-
_moveCurr.copy(
|
|
45681
|
-
_movePrev.copy(_moveCurr);
|
|
45682
|
-
break;
|
|
45683
|
-
}
|
|
45684
|
-
}
|
|
45685
|
-
break;
|
|
45686
|
-
case 3:
|
|
45687
|
-
_state = STATE.TOUCH_PAN;
|
|
45688
|
-
for (let i = 0; i < _pointers.length; i++) {
|
|
45689
|
-
if (_pointers[i].pointerId !== event.pointerId) {
|
|
45690
|
-
const position = _pointerPositions[_pointers[i].pointerId];
|
|
45691
|
-
_moveCurr.copy(getMouseOnScreen(position.x, position.y));
|
|
45658
|
+
_moveCurr.copy(getMouseOnCircle(position.x, position.y));
|
|
45692
45659
|
_movePrev.copy(_moveCurr);
|
|
45693
45660
|
break;
|
|
45694
45661
|
}
|
|
@@ -45697,6 +45664,105 @@ class Copper3dTrackballControls extends EventDispatcher {
|
|
|
45697
45664
|
}
|
|
45698
45665
|
scope.dispatchEvent(_endEvent$2);
|
|
45699
45666
|
}
|
|
45667
|
+
// function onTouchStart(event: PointerEvent) {
|
|
45668
|
+
// trackPointer(event);
|
|
45669
|
+
// switch (_pointers.length) {
|
|
45670
|
+
// case 1:
|
|
45671
|
+
// _state = STATE.TOUCH_ROTATE;
|
|
45672
|
+
// _moveCurr.copy(
|
|
45673
|
+
// getMouseOnCircle(_pointers[0].pageX, _pointers[0].pageY)
|
|
45674
|
+
// );
|
|
45675
|
+
// _movePrev.copy(_moveCurr);
|
|
45676
|
+
// break;
|
|
45677
|
+
// case 2:
|
|
45678
|
+
// _state = STATE.TOUCH_ZOOM_PAN;
|
|
45679
|
+
// const dx: number = _pointers[0].pageX - _pointers[1].pageX;
|
|
45680
|
+
// const dy: number = _pointers[0].pageY - _pointers[1].pageY;
|
|
45681
|
+
// _touchZoomDistanceEnd = _touchZoomDistanceStart = Math.sqrt(
|
|
45682
|
+
// dx * dx + dy * dy
|
|
45683
|
+
// );
|
|
45684
|
+
// const x = (_pointers[0].pageX + _pointers[1].pageX) / 2;
|
|
45685
|
+
// const y = (_pointers[0].pageY + _pointers[1].pageY) / 2;
|
|
45686
|
+
// _panStart.copy(getMouseOnScreen(x, y));
|
|
45687
|
+
// _panEnd.copy(_panStart);
|
|
45688
|
+
// break;
|
|
45689
|
+
// case 3:
|
|
45690
|
+
// _state = STATE.TOUCH_PAN;
|
|
45691
|
+
// const centerX =
|
|
45692
|
+
// (_pointers[0].pageX + _pointers[1].pageX + _pointers[2].pageX) / 3;
|
|
45693
|
+
// const centerY =
|
|
45694
|
+
// (_pointers[0].pageY + _pointers[1].pageY + _pointers[2].pageY) / 3;
|
|
45695
|
+
// _panStart.copy(getMouseOnScreen(centerX, centerY));
|
|
45696
|
+
// _panEnd.copy(_panStart);
|
|
45697
|
+
// break;
|
|
45698
|
+
// }
|
|
45699
|
+
// scope.dispatchEvent(_startEvent);
|
|
45700
|
+
// }
|
|
45701
|
+
// function onTouchMove(event: PointerEvent) {
|
|
45702
|
+
// trackPointer(event);
|
|
45703
|
+
// let position: Vector2, x: number, y: number;
|
|
45704
|
+
// switch (_pointers.length) {
|
|
45705
|
+
// case 1:
|
|
45706
|
+
// if (_state != STATE.TOUCH_ROTATE) return;
|
|
45707
|
+
// _movePrev.copy(_moveCurr);
|
|
45708
|
+
// _moveCurr.copy(getMouseOnCircle(event.pageX, event.pageY));
|
|
45709
|
+
// break;
|
|
45710
|
+
// case 2:
|
|
45711
|
+
// if (_state != STATE.TOUCH_ZOOM_PAN) return;
|
|
45712
|
+
// position = getSecondPointerPosition(event);
|
|
45713
|
+
// const dx: number = event.pageX - position.x;
|
|
45714
|
+
// const dy: number = event.pageY - position.y;
|
|
45715
|
+
// _touchZoomDistanceEnd = Math.sqrt(dx * dx + dy * dy);
|
|
45716
|
+
// x = (event.pageX + position.x) / 2;
|
|
45717
|
+
// y = (event.pageY + position.y) / 2;
|
|
45718
|
+
// _panEnd.copy(getMouseOnScreen(x, y));
|
|
45719
|
+
// break;
|
|
45720
|
+
// case 3:
|
|
45721
|
+
// if (_state != STATE.TOUCH_PAN) return;
|
|
45722
|
+
// const point_1 = _pointerPositions[_pointers[0].pointerId];
|
|
45723
|
+
// const point_2 = _pointerPositions[_pointers[1].pointerId];
|
|
45724
|
+
// const point_3 = _pointerPositions[_pointers[2].pointerId];
|
|
45725
|
+
// const centerX = (point_1.x + point_2.x + point_3.x) / 3;
|
|
45726
|
+
// const centerY = (point_1.y + point_2.y + point_3.y) / 3;
|
|
45727
|
+
// _panEnd.copy(getMouseOnScreen(centerX, centerY));
|
|
45728
|
+
// break;
|
|
45729
|
+
// }
|
|
45730
|
+
// }
|
|
45731
|
+
// function onTouchEnd(event: PointerEvent) {
|
|
45732
|
+
// switch (_pointers.length) {
|
|
45733
|
+
// case 0:
|
|
45734
|
+
// _state = STATE.NONE;
|
|
45735
|
+
// break;
|
|
45736
|
+
// case 1:
|
|
45737
|
+
// _state = STATE.TOUCH_ROTATE;
|
|
45738
|
+
// _moveCurr.copy(getMouseOnCircle(event.pageX, event.pageY));
|
|
45739
|
+
// _movePrev.copy(_moveCurr);
|
|
45740
|
+
// break;
|
|
45741
|
+
// case 2:
|
|
45742
|
+
// _state = STATE.TOUCH_ZOOM_PAN;
|
|
45743
|
+
// for (let i = 0; i < _pointers.length; i++) {
|
|
45744
|
+
// if (_pointers[i].pointerId !== event.pointerId) {
|
|
45745
|
+
// const position = _pointerPositions[_pointers[i].pointerId];
|
|
45746
|
+
// _moveCurr.copy(getMouseOnScreen(position.x, position.y));
|
|
45747
|
+
// _movePrev.copy(_moveCurr);
|
|
45748
|
+
// break;
|
|
45749
|
+
// }
|
|
45750
|
+
// }
|
|
45751
|
+
// break;
|
|
45752
|
+
// case 3:
|
|
45753
|
+
// _state = STATE.TOUCH_PAN;
|
|
45754
|
+
// for (let i = 0; i < _pointers.length; i++) {
|
|
45755
|
+
// if (_pointers[i].pointerId !== event.pointerId) {
|
|
45756
|
+
// const position = _pointerPositions[_pointers[i].pointerId];
|
|
45757
|
+
// _moveCurr.copy(getMouseOnScreen(position.x, position.y));
|
|
45758
|
+
// _movePrev.copy(_moveCurr);
|
|
45759
|
+
// break;
|
|
45760
|
+
// }
|
|
45761
|
+
// }
|
|
45762
|
+
// break;
|
|
45763
|
+
// }
|
|
45764
|
+
// scope.dispatchEvent(_endEvent);
|
|
45765
|
+
// }
|
|
45700
45766
|
function contextmenu(event) {
|
|
45701
45767
|
if (scope.enabled === false)
|
|
45702
45768
|
return;
|
|
@@ -69771,7 +69837,7 @@ class nrrd_tools {
|
|
|
69771
69837
|
}
|
|
69772
69838
|
|
|
69773
69839
|
// import * as kiwrious from "copper3d_plugin_heart_k";
|
|
69774
|
-
const REVISION = "v1.15.
|
|
69775
|
-
console.log("%cCopper3D Visualisation %cBeta:v1.15.
|
|
69840
|
+
const REVISION = "v1.15.3";
|
|
69841
|
+
console.log("%cCopper3D Visualisation %cBeta:v1.15.3", "padding: 3px;color:white; background:#023047", "padding: 3px;color:white; background:#f50a25");
|
|
69776
69842
|
|
|
69777
69843
|
export { CameraViewPoint, Copper3dTrackballControls, REVISION, addBoxHelper, addLabelToScene, configKiwriousHeart, convert3DPostoScreenPos, convertScreenPosto3DPos, copperMScene, copperMSceneRenderer, copperRenderer, copperRendererOnDemond, copperScene, copperSceneOnDemond, createTexture2D_NRRD, fullScreenListenner, kiwrious, loading, nrrd_tools, setHDRFilePath };
|
package/dist/bundle.umd.js
CHANGED
|
@@ -45617,7 +45617,7 @@
|
|
|
45617
45617
|
_moveCurr.copy(getMouseOnCircle(_pointers[0].pageX, _pointers[0].pageY));
|
|
45618
45618
|
_movePrev.copy(_moveCurr);
|
|
45619
45619
|
break;
|
|
45620
|
-
|
|
45620
|
+
default: // 2 or more
|
|
45621
45621
|
_state = STATE.TOUCH_ZOOM_PAN;
|
|
45622
45622
|
const dx = _pointers[0].pageX - _pointers[1].pageX;
|
|
45623
45623
|
const dy = _pointers[0].pageY - _pointers[1].pageY;
|
|
@@ -45627,47 +45627,25 @@
|
|
|
45627
45627
|
_panStart.copy(getMouseOnScreen(x, y));
|
|
45628
45628
|
_panEnd.copy(_panStart);
|
|
45629
45629
|
break;
|
|
45630
|
-
case 3:
|
|
45631
|
-
_state = STATE.TOUCH_PAN;
|
|
45632
|
-
const centerX = (_pointers[0].pageX + _pointers[1].pageX + _pointers[2].pageX) / 3;
|
|
45633
|
-
const centerY = (_pointers[0].pageY + _pointers[1].pageY + _pointers[2].pageY) / 3;
|
|
45634
|
-
_panStart.copy(getMouseOnScreen(centerX, centerY));
|
|
45635
|
-
_panEnd.copy(_panStart);
|
|
45636
|
-
break;
|
|
45637
45630
|
}
|
|
45638
45631
|
scope.dispatchEvent(_startEvent$2);
|
|
45639
45632
|
}
|
|
45640
45633
|
function onTouchMove(event) {
|
|
45641
45634
|
trackPointer(event);
|
|
45642
|
-
let position, x, y;
|
|
45643
45635
|
switch (_pointers.length) {
|
|
45644
45636
|
case 1:
|
|
45645
|
-
if (_state != STATE.TOUCH_ROTATE)
|
|
45646
|
-
return;
|
|
45647
45637
|
_movePrev.copy(_moveCurr);
|
|
45648
45638
|
_moveCurr.copy(getMouseOnCircle(event.pageX, event.pageY));
|
|
45649
45639
|
break;
|
|
45650
|
-
|
|
45651
|
-
|
|
45652
|
-
return;
|
|
45653
|
-
position = getSecondPointerPosition(event);
|
|
45640
|
+
default: // 2 or more
|
|
45641
|
+
const position = getSecondPointerPosition(event);
|
|
45654
45642
|
const dx = event.pageX - position.x;
|
|
45655
45643
|
const dy = event.pageY - position.y;
|
|
45656
45644
|
_touchZoomDistanceEnd = Math.sqrt(dx * dx + dy * dy);
|
|
45657
|
-
x = (event.pageX + position.x) / 2;
|
|
45658
|
-
y = (event.pageY + position.y) / 2;
|
|
45645
|
+
const x = (event.pageX + position.x) / 2;
|
|
45646
|
+
const y = (event.pageY + position.y) / 2;
|
|
45659
45647
|
_panEnd.copy(getMouseOnScreen(x, y));
|
|
45660
45648
|
break;
|
|
45661
|
-
case 3:
|
|
45662
|
-
if (_state != STATE.TOUCH_PAN)
|
|
45663
|
-
return;
|
|
45664
|
-
const point_1 = _pointerPositions[_pointers[0].pointerId];
|
|
45665
|
-
const point_2 = _pointerPositions[_pointers[1].pointerId];
|
|
45666
|
-
const point_3 = _pointerPositions[_pointers[2].pointerId];
|
|
45667
|
-
const centerX = (point_1.x + point_2.x + point_3.x) / 3;
|
|
45668
|
-
const centerY = (point_1.y + point_2.y + point_3.y) / 3;
|
|
45669
|
-
_panEnd.copy(getMouseOnScreen(centerX, centerY));
|
|
45670
|
-
break;
|
|
45671
45649
|
}
|
|
45672
45650
|
}
|
|
45673
45651
|
function onTouchEnd(event) {
|
|
@@ -45685,18 +45663,7 @@
|
|
|
45685
45663
|
for (let i = 0; i < _pointers.length; i++) {
|
|
45686
45664
|
if (_pointers[i].pointerId !== event.pointerId) {
|
|
45687
45665
|
const position = _pointerPositions[_pointers[i].pointerId];
|
|
45688
|
-
_moveCurr.copy(
|
|
45689
|
-
_movePrev.copy(_moveCurr);
|
|
45690
|
-
break;
|
|
45691
|
-
}
|
|
45692
|
-
}
|
|
45693
|
-
break;
|
|
45694
|
-
case 3:
|
|
45695
|
-
_state = STATE.TOUCH_PAN;
|
|
45696
|
-
for (let i = 0; i < _pointers.length; i++) {
|
|
45697
|
-
if (_pointers[i].pointerId !== event.pointerId) {
|
|
45698
|
-
const position = _pointerPositions[_pointers[i].pointerId];
|
|
45699
|
-
_moveCurr.copy(getMouseOnScreen(position.x, position.y));
|
|
45666
|
+
_moveCurr.copy(getMouseOnCircle(position.x, position.y));
|
|
45700
45667
|
_movePrev.copy(_moveCurr);
|
|
45701
45668
|
break;
|
|
45702
45669
|
}
|
|
@@ -45705,6 +45672,105 @@
|
|
|
45705
45672
|
}
|
|
45706
45673
|
scope.dispatchEvent(_endEvent$2);
|
|
45707
45674
|
}
|
|
45675
|
+
// function onTouchStart(event: PointerEvent) {
|
|
45676
|
+
// trackPointer(event);
|
|
45677
|
+
// switch (_pointers.length) {
|
|
45678
|
+
// case 1:
|
|
45679
|
+
// _state = STATE.TOUCH_ROTATE;
|
|
45680
|
+
// _moveCurr.copy(
|
|
45681
|
+
// getMouseOnCircle(_pointers[0].pageX, _pointers[0].pageY)
|
|
45682
|
+
// );
|
|
45683
|
+
// _movePrev.copy(_moveCurr);
|
|
45684
|
+
// break;
|
|
45685
|
+
// case 2:
|
|
45686
|
+
// _state = STATE.TOUCH_ZOOM_PAN;
|
|
45687
|
+
// const dx: number = _pointers[0].pageX - _pointers[1].pageX;
|
|
45688
|
+
// const dy: number = _pointers[0].pageY - _pointers[1].pageY;
|
|
45689
|
+
// _touchZoomDistanceEnd = _touchZoomDistanceStart = Math.sqrt(
|
|
45690
|
+
// dx * dx + dy * dy
|
|
45691
|
+
// );
|
|
45692
|
+
// const x = (_pointers[0].pageX + _pointers[1].pageX) / 2;
|
|
45693
|
+
// const y = (_pointers[0].pageY + _pointers[1].pageY) / 2;
|
|
45694
|
+
// _panStart.copy(getMouseOnScreen(x, y));
|
|
45695
|
+
// _panEnd.copy(_panStart);
|
|
45696
|
+
// break;
|
|
45697
|
+
// case 3:
|
|
45698
|
+
// _state = STATE.TOUCH_PAN;
|
|
45699
|
+
// const centerX =
|
|
45700
|
+
// (_pointers[0].pageX + _pointers[1].pageX + _pointers[2].pageX) / 3;
|
|
45701
|
+
// const centerY =
|
|
45702
|
+
// (_pointers[0].pageY + _pointers[1].pageY + _pointers[2].pageY) / 3;
|
|
45703
|
+
// _panStart.copy(getMouseOnScreen(centerX, centerY));
|
|
45704
|
+
// _panEnd.copy(_panStart);
|
|
45705
|
+
// break;
|
|
45706
|
+
// }
|
|
45707
|
+
// scope.dispatchEvent(_startEvent);
|
|
45708
|
+
// }
|
|
45709
|
+
// function onTouchMove(event: PointerEvent) {
|
|
45710
|
+
// trackPointer(event);
|
|
45711
|
+
// let position: Vector2, x: number, y: number;
|
|
45712
|
+
// switch (_pointers.length) {
|
|
45713
|
+
// case 1:
|
|
45714
|
+
// if (_state != STATE.TOUCH_ROTATE) return;
|
|
45715
|
+
// _movePrev.copy(_moveCurr);
|
|
45716
|
+
// _moveCurr.copy(getMouseOnCircle(event.pageX, event.pageY));
|
|
45717
|
+
// break;
|
|
45718
|
+
// case 2:
|
|
45719
|
+
// if (_state != STATE.TOUCH_ZOOM_PAN) return;
|
|
45720
|
+
// position = getSecondPointerPosition(event);
|
|
45721
|
+
// const dx: number = event.pageX - position.x;
|
|
45722
|
+
// const dy: number = event.pageY - position.y;
|
|
45723
|
+
// _touchZoomDistanceEnd = Math.sqrt(dx * dx + dy * dy);
|
|
45724
|
+
// x = (event.pageX + position.x) / 2;
|
|
45725
|
+
// y = (event.pageY + position.y) / 2;
|
|
45726
|
+
// _panEnd.copy(getMouseOnScreen(x, y));
|
|
45727
|
+
// break;
|
|
45728
|
+
// case 3:
|
|
45729
|
+
// if (_state != STATE.TOUCH_PAN) return;
|
|
45730
|
+
// const point_1 = _pointerPositions[_pointers[0].pointerId];
|
|
45731
|
+
// const point_2 = _pointerPositions[_pointers[1].pointerId];
|
|
45732
|
+
// const point_3 = _pointerPositions[_pointers[2].pointerId];
|
|
45733
|
+
// const centerX = (point_1.x + point_2.x + point_3.x) / 3;
|
|
45734
|
+
// const centerY = (point_1.y + point_2.y + point_3.y) / 3;
|
|
45735
|
+
// _panEnd.copy(getMouseOnScreen(centerX, centerY));
|
|
45736
|
+
// break;
|
|
45737
|
+
// }
|
|
45738
|
+
// }
|
|
45739
|
+
// function onTouchEnd(event: PointerEvent) {
|
|
45740
|
+
// switch (_pointers.length) {
|
|
45741
|
+
// case 0:
|
|
45742
|
+
// _state = STATE.NONE;
|
|
45743
|
+
// break;
|
|
45744
|
+
// case 1:
|
|
45745
|
+
// _state = STATE.TOUCH_ROTATE;
|
|
45746
|
+
// _moveCurr.copy(getMouseOnCircle(event.pageX, event.pageY));
|
|
45747
|
+
// _movePrev.copy(_moveCurr);
|
|
45748
|
+
// break;
|
|
45749
|
+
// case 2:
|
|
45750
|
+
// _state = STATE.TOUCH_ZOOM_PAN;
|
|
45751
|
+
// for (let i = 0; i < _pointers.length; i++) {
|
|
45752
|
+
// if (_pointers[i].pointerId !== event.pointerId) {
|
|
45753
|
+
// const position = _pointerPositions[_pointers[i].pointerId];
|
|
45754
|
+
// _moveCurr.copy(getMouseOnScreen(position.x, position.y));
|
|
45755
|
+
// _movePrev.copy(_moveCurr);
|
|
45756
|
+
// break;
|
|
45757
|
+
// }
|
|
45758
|
+
// }
|
|
45759
|
+
// break;
|
|
45760
|
+
// case 3:
|
|
45761
|
+
// _state = STATE.TOUCH_PAN;
|
|
45762
|
+
// for (let i = 0; i < _pointers.length; i++) {
|
|
45763
|
+
// if (_pointers[i].pointerId !== event.pointerId) {
|
|
45764
|
+
// const position = _pointerPositions[_pointers[i].pointerId];
|
|
45765
|
+
// _moveCurr.copy(getMouseOnScreen(position.x, position.y));
|
|
45766
|
+
// _movePrev.copy(_moveCurr);
|
|
45767
|
+
// break;
|
|
45768
|
+
// }
|
|
45769
|
+
// }
|
|
45770
|
+
// break;
|
|
45771
|
+
// }
|
|
45772
|
+
// scope.dispatchEvent(_endEvent);
|
|
45773
|
+
// }
|
|
45708
45774
|
function contextmenu(event) {
|
|
45709
45775
|
if (scope.enabled === false)
|
|
45710
45776
|
return;
|
|
@@ -69779,8 +69845,8 @@
|
|
|
69779
69845
|
}
|
|
69780
69846
|
|
|
69781
69847
|
// import * as kiwrious from "copper3d_plugin_heart_k";
|
|
69782
|
-
const REVISION = "v1.15.
|
|
69783
|
-
console.log("%cCopper3D Visualisation %cBeta:v1.15.
|
|
69848
|
+
const REVISION = "v1.15.3";
|
|
69849
|
+
console.log("%cCopper3D Visualisation %cBeta:v1.15.3", "padding: 3px;color:white; background:#023047", "padding: 3px;color:white; background:#f50a25");
|
|
69784
69850
|
|
|
69785
69851
|
exports.CameraViewPoint = CameraViewPoint;
|
|
69786
69852
|
exports.Copper3dTrackballControls = Copper3dTrackballControls;
|
package/dist/index.d.ts
CHANGED
|
@@ -16,6 +16,6 @@ import { nrrd_tools } from "./Utils/nrrd_tool";
|
|
|
16
16
|
import { Copper3dTrackballControls } from "./Controls/Copper3dTrackballControls";
|
|
17
17
|
import { nrrdMeshesType, nrrdSliceType, SensorDecodedValue_kiwrious, SensorReadResult_kiwrious, HeartRateResult_kiwrious, loadingBarType, paintImageType, exportPaintImageType, IOptVTKLoader } from "./types/types";
|
|
18
18
|
import "./css/style.css";
|
|
19
|
-
export declare const REVISION = "v1.15.
|
|
19
|
+
export declare const REVISION = "v1.15.3";
|
|
20
20
|
export { copperRenderer, copperRendererOnDemond, copperMSceneRenderer, setHDRFilePath, addLabelToScene, convert3DPostoScreenPos, convertScreenPosto3DPos, addBoxHelper, fullScreenListenner, configKiwriousHeart, copperScene, copperSceneOnDemond, copperMScene, CameraViewPoint, kiwrious, nrrd_tools, loading, Copper3dTrackballControls, createTexture2D_NRRD, };
|
|
21
21
|
export type { positionType, screenPosType, optsType, nrrdMeshesType, nrrdSliceType, SensorDecodedValue_kiwrious, SensorReadResult_kiwrious, HeartRateResult_kiwrious, loadingBarType, paintImageType, exportPaintImageType, IOptVTKLoader, };
|
package/dist/index.js
CHANGED
|
@@ -16,7 +16,7 @@ import kiwrious from "./Utils/kiwrious/configKiwrious";
|
|
|
16
16
|
import { nrrd_tools } from "./Utils/nrrd_tool";
|
|
17
17
|
import { Copper3dTrackballControls } from "./Controls/Copper3dTrackballControls";
|
|
18
18
|
import "./css/style.css";
|
|
19
|
-
export const REVISION = "v1.15.
|
|
20
|
-
console.log("%cCopper3D Visualisation %cBeta:v1.15.
|
|
19
|
+
export const REVISION = "v1.15.3";
|
|
20
|
+
console.log("%cCopper3D Visualisation %cBeta:v1.15.3", "padding: 3px;color:white; background:#023047", "padding: 3px;color:white; background:#f50a25");
|
|
21
21
|
export { copperRenderer, copperRendererOnDemond, copperMSceneRenderer, setHDRFilePath, addLabelToScene, convert3DPostoScreenPos, convertScreenPosto3DPos, addBoxHelper, fullScreenListenner, configKiwriousHeart, copperScene, copperSceneOnDemond, copperMScene, CameraViewPoint, kiwrious, nrrd_tools, loading, Copper3dTrackballControls, createTexture2D_NRRD, };
|
|
22
22
|
//# sourceMappingURL=index.js.map
|
package/dist/types/index.d.ts
CHANGED
|
@@ -16,6 +16,6 @@ import { nrrd_tools } from "./Utils/nrrd_tool";
|
|
|
16
16
|
import { Copper3dTrackballControls } from "./Controls/Copper3dTrackballControls";
|
|
17
17
|
import { nrrdMeshesType, nrrdSliceType, SensorDecodedValue_kiwrious, SensorReadResult_kiwrious, HeartRateResult_kiwrious, loadingBarType, paintImageType, exportPaintImageType, IOptVTKLoader } from "./types/types";
|
|
18
18
|
import "./css/style.css";
|
|
19
|
-
export declare const REVISION = "v1.15.
|
|
19
|
+
export declare const REVISION = "v1.15.3";
|
|
20
20
|
export { copperRenderer, copperRendererOnDemond, copperMSceneRenderer, setHDRFilePath, addLabelToScene, convert3DPostoScreenPos, convertScreenPosto3DPos, addBoxHelper, fullScreenListenner, configKiwriousHeart, copperScene, copperSceneOnDemond, copperMScene, CameraViewPoint, kiwrious, nrrd_tools, loading, Copper3dTrackballControls, createTexture2D_NRRD, };
|
|
21
21
|
export type { positionType, screenPosType, optsType, nrrdMeshesType, nrrdSliceType, SensorDecodedValue_kiwrious, SensorReadResult_kiwrious, HeartRateResult_kiwrious, loadingBarType, paintImageType, exportPaintImageType, IOptVTKLoader, };
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "copper3d",
|
|
3
3
|
"description": "A 3d visualisation package base on threejs provides multiple scenes and Nrrd image load funtion.",
|
|
4
|
-
"version": "1.15.
|
|
4
|
+
"version": "1.15.3",
|
|
5
5
|
"main": "dist/bundle.umd.js",
|
|
6
6
|
"moudle": "dist/bundle.esm.js",
|
|
7
7
|
"types": "dist/types/index.d.ts",
|