generatePositionAndOrientationRelativeToTarget method
- Coordinates targetCoords,
- Point3d targetHeadingPitchRollDeg,
- Point3d cameraHeadingPitchDegDistanceMeters,
- 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
(GemError, PositionOrientation)tuple as described by generatePositionAndOrientation.
See also:
- cameraPosition and cameraOrientation for applying the computed values.
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']),
),
);
}