roslib
Version:
The standard ROS Javascript Library
47 lines (46 loc) • 1.25 kB
TypeScript
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;
}