UNPKG

roslib

Version:

The standard ROS Javascript Library

47 lines (46 loc) 1.25 kB
import { default as Vector3, IVector3 } from './Vector3.ts'; import { default as Quaternion, IQuaternion } from './Quaternion.ts'; import { ITransform } from './Transform.ts'; import { PartialNullable } from '../types/interface-types.ts'; export interface IPose { /** * The ROSLIB.Vector3 describing the position. */ position: IVector3; /** * The ROSLIB.Quaternion describing the orientation. */ orientation: IQuaternion; } /** * A Pose in 3D space. Values are copied into this object. */ export default class Pose implements IPose { position: Vector3; orientation: Quaternion; constructor(options?: PartialNullable<IPose>); /** * Apply a transform against this pose. * * @param tf - The transform to be applied. */ applyTransform(tf: ITransform): void; /** * Clone a copy of this pose. * * @returns The cloned pose. */ clone(): Pose; /** * Multiply this pose with another pose without altering this pose. * * @returns The result of the multiplication. */ multiply(pose: Pose): Pose; /** * Compute the inverse of this pose. * * @returns The inverse of the pose. */ getInverse(): Pose; }