UNPKG

@openhps/core

Version:

Open Hybrid Positioning System - Core component

43 lines (38 loc) 1.24 kB
import { DataService } from '../../../service/DataService'; import { AbsolutePosition } from '../../position/AbsolutePosition'; /** * A transformation space transforms absolute positions to another (global) space. */ export interface TransformationSpace { /** * Unique uuidv4 identifier of the transformation space */ uid: string; /** * Set the parent space * @param {TransformationSpace} space Parent space */ parent: TransformationSpace; /** * Update parent reference spaces * @param {DataService} service Service to use for updating * @returns {Promise<void>} Update promise */ update(service: DataService<any, this>): Promise<void>; /** * Transform a position * @param {AbsolutePosition} position Position to transform * @param {SpaceTransformationOptions} [options] Transformation options * @returns {AbsolutePosition} Transformed position */ transform<In extends AbsolutePosition, Out extends AbsolutePosition = In>( position: In, options?: SpaceTransformationOptions, ): Out; } export interface SpaceTransformationOptions { /** * Perform an inverse transformation */ inverse?: boolean; }