pointerDown method

void pointerDown(
  1. Pointer pointer
)

Implementation

void pointerDown(Pointer pointer) {
  _pointer0 = pointer;
  if (object == null || dragging == true || pointer.button != 0){
    return;
  }

  if (axis != null) {
    _raycaster.setFromCamera(Vector2(pointer.x, pointer.y), camera!);

    final planeIntersect = intersectObjectWithRay(_plane, _raycaster, true);

    if (planeIntersect != null) {
      object?.updateMatrixWorld(false);
      object?.parent?.updateMatrixWorld(false);

      _positionStart.setFrom(object!.position);
      _quaternionStart.setFrom(object!.quaternion);
      _scaleStart.setFrom(object!.scale);

      object?.matrixWorld.decompose(worldPositionStart,worldQuaternionStart, _worldScaleStart);

      pointStart.setFrom(planeIntersect.point!).sub(worldPositionStart);
    }

    dragging = true;
    _mouseDownEvent.mode = mode.name;
    dispatchEvent(_mouseDownEvent);
  }
}