solveP3PAsync function

Future<(int, VecMat, VecMat)> solveP3PAsync(
  1. InputArray objectPoints,
  2. InputArray imagePoints,
  3. InputArray cameraMatrix,
  4. InputArray distCoeffs,
  5. int flags, {
  6. VecMat? rvecs,
  7. VecMat? tvecs,
})

Implementation

Future<(int rval, VecMat rvecs, VecMat tvecs)> solveP3PAsync(
  InputArray objectPoints,
  InputArray imagePoints,
  InputArray cameraMatrix,
  InputArray distCoeffs,
  int flags, {
  VecMat? rvecs,
  VecMat? tvecs,
}) async {
  rvecs ??= VecMat();
  tvecs ??= VecMat();
  final prval = calloc<ffi.Int>();
  return cvRunAsync0(
    (callback) => ccalib3d.cv_solveP3P(
      objectPoints.ref,
      imagePoints.ref,
      cameraMatrix.ref,
      distCoeffs.ref,
      rvecs!.ptr,
      tvecs!.ptr,
      flags,
      prval,
      callback,
    ),
    (c) {
      final rval = prval.value;
      calloc.free(prval);
      return c.complete((rval, rvecs!, tvecs!));
    },
  );
}