generatePositionAndOrientationRelativeToTarget method

(GemError, PositionOrientation) generatePositionAndOrientationRelativeToTarget(
  1. Coordinates targetCoords,
  2. Point3d targetHeadingPitchRollDeg,
  3. Point3d cameraHeadingPitchDegDistanceMeters,
  4. Point3d cameraHeadingPitchRollDeg,
)

Compute a camera placement relative to a target, allowing arbitrary camera orientation.

Parameters

  • targetCoords: (Coordinates) Target geographic coordinate.
  • targetHeadingPitchRollDeg: (Point3d) Target heading/pitch/roll (deg).
  • cameraHeadingPitchDegDistanceMeters: (Point3d) Camera heading/pitch (deg) and distance (m).
  • cameraHeadingPitchRollDeg: (Point3d) Camera heading/pitch/roll (deg) to orient the camera arbitrarily relative to the target.

Returns

See also:

Implementation

(GemError, PositionOrientation)
generatePositionAndOrientationRelativeToTarget(
  final Coordinates targetCoords,
  final Point3d targetHeadingPitchRollDeg,
  final Point3d cameraHeadingPitchDegDistanceMeters,
  final Point3d cameraHeadingPitchRollDeg,
) {
  final OperationResult resultString = objectMethod(
    _pointerId,
    'MapCamera',
    'generatePositionAndOrientationRelativeToTarget',
    args: <String, Object>{
      'coordinates': targetCoords,
      'tuple3D1': targetHeadingPitchRollDeg,
      'tuple3D2': cameraHeadingPitchDegDistanceMeters,
      'tuple3D3': cameraHeadingPitchRollDeg,
    },
  );

  return (
    GemErrorExtension.fromCode(resultString['result']['errorCode']),
    PositionOrientation(
      position: Point3d.fromJson(resultString['result']['tuple3D']),
      orientation: Point4d.fromJson(resultString['result']['tuple4D']),
    ),
  );
}