@openhps/core
Version:
Open Hybrid Positioning System - Core component
41 lines • 1.38 kB
JavaScript
import { __decorate, __metadata } from "tslib";
import { LengthUnit } from '../../utils';
import { SerializableObject, SerializableMember, NumberType } from '../decorators';
import { RelativePosition } from './RelativePosition';
/**
* Relative location to another reference object in distance.
* @category Position
*/
let RelativeDistance = class RelativeDistance extends RelativePosition {
constructor(referenceObject, distance, distanceUnit) {
super(referenceObject, distance, LengthUnit.METER);
this.unit = distanceUnit;
}
/**
* Distance unit
* @deprecated Use [[unit]] instead
* @returns {AngleUnit} unit
*/
get distanceUnit() {
return this.unit;
}
set distanceUnit(unit) {
this.unit = unit;
}
/**
* Distance to reference object
* @returns {number} Distance
*/
get distance() {
return this.referenceValue;
}
set distance(value) {
this.referenceValue = value;
}
};
__decorate([SerializableMember(), __metadata("design:type", LengthUnit)], RelativeDistance.prototype, "unit", void 0);
__decorate([SerializableMember({
numberType: NumberType.DECIMAL
}), __metadata("design:type", Number)], RelativeDistance.prototype, "referenceValue", void 0);
RelativeDistance = __decorate([SerializableObject(), __metadata("design:paramtypes", [Object, Number, LengthUnit])], RelativeDistance);
export { RelativeDistance };