24 class DtCoordinateDisplay;
25 class DtDisplayUnitsSettingsSynchronizerAgent;
26 class DtWorldMagneticModel;
91 CoordSys currentCoordinateDisplaySystem()
const;
99 const DtUnicode& displayUnitCollectionName,
108 const DtUnicode& displayUnitCollectionName,
117 const DtUnicode& displayUnitCollectionName,
126 const DtUnicode& displayUnitCollectionName,
135 const DtUnicode& displayUnitCollectionName,
144 const DtUnicode& displayUnitCollectionName,
153 const DtUnicode& displayUnitCollectionName,
162 const DtUnicode& displayUnitCollectionName,
170 unsigned int displayUnitUnit(
171 const DtUnicode& displayUnitCollectionName,
179 unsigned int displayUnitDecimals(
180 const DtUnicode& displayUnitCollectionName,
189 const DtUnicode& displayUnitCollectionName,
216 void coordinateSystemLabels(
221 void regularExpressionValidators( std::string& x,
222 std::string& y, std::string& z )
const;
225 void regularExpressionValidators(
227 std::string& x, std::string& y, std::string& z )
const;
234 std::vector<DtUnicode> convertPositionToNotatedStringList(
238 unsigned int coordinateSystemDecimals,
240 unsigned int altitudeDecimals,
241 bool minimal =
false)
const;
247 std::vector<DtUnicode> convertPositionToNotatedStringList(
250 unsigned int coordinateSystemDecimals,
252 unsigned int altitudeDecimals,
253 bool minimal =
false )
const;
258 std::vector<std::string> convertPositionToStringList(
CoordSys coordSys,
261 unsigned int coordinateSystemDecimals,
263 unsigned int altitudeDecimals )
const;
268 std::vector<std::string> convertPositionToStringList(
271 unsigned int coordinateSystemDecimals,
273 unsigned int altitudeDecimals )
const;
281 double convertAngleUnitNativeToDisplay(
286 double convertAngleUnitDisplayToNative(
297 std::string convertAngleUnitNativeToDisplayString(
300 unsigned int decimals,
301 bool additionalFormatting =
false )
const;
310 DtUnicode convertAngleUnitNativeToNotatedDisplayString(
313 bool additionalFormatting =
false)
const;
328 double convertHeadingUnitNativeToDisplay(
332 bool convertDisplayToDegrees=
true)
const;
342 double convertHeadingUnitDisplayToNative(
346 bool convertNativeToRadians=
true)
const;
357 DtUnicode convertHeadingUnitNativeToNotatedDisplayString(
const DtVector& geocLoc,
369 DtUnicode convertHeadingUnitNativeToNotatedDisplayString(
const DtVector& geocLoc,
376 double convertLocationToMagneticDeclination(
const DtVector& geocLoc)
const;
382 double convertLocationToGridDeclination(
const DtVector& geocLoc)
const;
388 double convertDistanceUnitNativeToDisplay(
393 double convertDistanceUnitDisplayToNative(
399 std::string convertDistanceUnitNativeToDisplayString(
402 unsigned int decimals )
const;
406 DtUnicode convertDistanceUnitNativeToNotatedDisplayString(
410 DtUnicode smartConvertDistanceUnitNativeToNotatedDisplayString(
411 double distanceInMeters,
420 DtVector convertVelocityUnitNativeToDisplay(
426 DtVector convertVelocityUnitDisplayToNative(
432 DtVector convertVelocitySystemAndUnitGeocentricToDisplay(
439 std::string convertVelocityUnitNativeToDisplayString(
442 unsigned int decimals )
const;
447 std::string convertVelocitySystemAndUnitGeocentricToDisplayString(
451 unsigned int decimals)
const;
459 DtVector convertAccelerationUnitNativeToDisplay(
465 DtVector convertAccelerationUnitDisplayToNative(
471 std::string convertAccelerationUnitNativeToDisplayString(
474 unsigned int decimals )
const;
477 DtVector convertAccelerationSystemAndUnitGeocentricToDisplay(
484 std::string convertAccelerationSystemAndUnitGeocentricToDisplayString(
487 unsigned int decimals )
const;
495 DtTaitBryan convertOrientationUnitNativeToDisplay(
496 const DtTaitBryan& ori,
500 DtTaitBryan convertOrientationUnitDisplayToNative(
501 const DtTaitBryan& ori,
515 std::vector<std::string> convertOrientationUnitNativeToDisplayStrings(
516 const DtTaitBryan& ori,
518 unsigned int decimals,
520 bool formatPsi =
false,
521 bool formatTheta =
false,
522 bool formatPhi =
false )
const;
535 std::vector<DtUnicode> convertOrientationUnitNativeToNotatedDisplayStrings(
536 const DtTaitBryan& ori,
539 bool formatPsi =
false,
540 bool formatTheta =
false,
541 bool formatPhi =
false)
const;
549 DtVector convertRotationalVelocityUnitNativeToDisplay(
554 DtVector convertRotationalVelocityUnitDisplayToNative(
559 std::string convertRotationalVelocityUnitNativeToDisplayString(
562 unsigned int decimals )
const;
565 DtVector convertRotationalVelocitySystemAndUnitGeocentricToDisplay(
572 convertRotationalVelocitySystemAndUnitGeocentricToDisplayString(
575 unsigned int decimals )
const;
584 double convertSpeedUnitNativeToDisplay(
589 double convertSpeedUnitNativeToDisplay(
594 double convertSpeedUnitDisplayToNative(
599 double convertSpeedSystemAndUnitGeocentricToDisplay(
606 std::string convertSpeedUnitNativeToDisplayString(
609 unsigned int decimals )
const;
613 std::string convertSpeedUnitNativeToDisplayString(
616 unsigned int decimals )
const;
620 std::string convertSpeedSystemAndUnitGeocentricToDisplayString(
624 unsigned int decimals )
const;
633 double convertAccelerationMagnitudeUnitNativeToDisplay(
639 double convertAccelerationMagnitudeUnitNativeToDisplay(
644 double convertAccelerationMagnitudeUnitDisplayToNative(
650 std::string convertAccelerationMagnitudeUnitNativeToDisplayString(
653 unsigned int decimals )
const;
657 std::string convertAccelerationMagnitudeUnitNativeToDisplayString(
660 unsigned int decimals )
const;
664 double convertAccelerationMagnitudeSystemAndUnitGeocentricToDisplay(
672 convertAccelerationMagnitudeSystemAndUnitGeocentricToDisplayString(
676 unsigned int decimals )
const;
686 DtTaitBryan convertHeadingPitchRollSystemAndUnitGeocentricToDisplay(
688 const DtTaitBryan& geocOri,
694 std::vector<DtUnicode>
695 convertHeadingPitchRollSystemAndUnitGeocentricToNotatedDisplayStrings(
697 const DtTaitBryan& geocOri,
699 bool formatHeading =
false,
700 bool formatPitch =
false,
701 bool formatRoll =
false )
const;
714 std::vector<std::string>
715 convertHeadingPitchRollSystemAndUnitGeocentricToDisplayStrings(
717 const DtTaitBryan& geocOri,
719 unsigned int decimals,
721 bool formatHeading =
false,
722 bool formatPitch =
false,
723 bool formatRoll =
false )
const;
732 double convertTemperatureUnitNativeToDisplay(
737 double convertTemperatureUnitDisplayToNative(
743 std::string convertTemperatureUnitNativeToDisplayString(
746 unsigned int decimals)
const;
754 double convertPressureUnitNativeToDisplay(
759 double convertPressureUnitDisplayToNative(
765 std::string convertPressureUnitNativeToDisplayString(
768 unsigned int decimals)
const;
782 static std::string orientationValueToText(
double value,
int decimals,
bool additionalFormatting );
793 static std::string orientationValuesToText(
796 bool formatPsi =
false,
797 bool formatTheta =
false,
798 bool formatPhi =
false );
801 static std::string valueToText(
double value,
int decimals );
805 static std::string valuesToText(
const DtVector& localVelocity,
int decimals );
826 DtSharedDisplayUnitsSettings>
837 void connectInputSignals();
856 void setDisplayUnitUnit(
857 const DtUnicode& displayUnitCollectionName,
859 unsigned int unitEnumValue
866 void setDisplayUnitDecimals(
867 const DtUnicode& displayUnitCollectionName,
869 unsigned int decimals
885 void setSuppressMagneticNorthNotationEnabled(
bool isEnabled);
889 bool isSuppressMagneticNorthNotationEnabled()
const;
901 template <
typename ManagerClass>
905 template <
typename ManagerClass>
917 virtual void slot_initializeSynchronizer();
923 virtual void slot_displayEngineAdded(
const DtDeRecord& deRec );
DtDisplayUnitsConverter * myDisplayUnitsConverter
Definition: DtDisplayUnitsSettingsManager.h:930
Base class for shared settings managers. Extends the functionality provided by the DtCommonBaseSettin...
Definition: DtBaseSettingsManager.h:372
VelocityUnits
Enumeration of the different velocity units.
Definition: DtDisplayUnitsSettingsRecord.h:73
A unicode string. DtUnicode stores a UTF-16 encoded unicode string. Code Point, a Unicode character...
Definition: DtUnicode.h:33
std::unordered_map< makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits, DtUnicode > myOrientationNotationCache
Definition: DtDisplayUnitsSettingsManager.h:817
makArchives::DtDisplayUnitsSettingsRecord::NorthUnits NorthUnits
Definition: DtDisplayUnitsSettingsManager.h:73
Abstract interface class for all coordinate system displays.
Definition: DtCoordinateDisplay.h:24
A Record of an IG instance.
Definition: DtDeRecord.h:24
Contains the interface to the world magnetic model. The class utilizes the WMM c code provided by NOA...
Definition: DtWorldMagneticModel.h:41
makArchives::DtDisplayUnitsSettingsRecord::OrientationUnits OrientationUnits
Definition: DtDisplayUnitsSettingsManager.h:69
DtDisplayUnitsSettingsSynchronizerAgent * mySettingsSynchronizer
Definition: DtDisplayUnitsSettingsManager.h:932
NorthUnits
Enumeration of the different north units.
Definition: DtDisplayUnitsSettingsRecord.h:151
makArchives::DtDisplayUnitsSettingsRecord::PressureUnits PressureUnits
Definition: DtDisplayUnitsSettingsManager.h:72
The shared settings manager, is the global object responsible for managing any shared settings object...
Definition: DtSharedSettingsManager.h:42
CoordSys
Enumeration of the different coordinate system types.
Definition: DtDisplayUnitsSettingsRecord.h:30
std::unordered_map< makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits, DtUnicode > myDistanceNotationCache
Definition: DtDisplayUnitsSettingsManager.h:816
makArchives::DtDisplayUnitsSettingsRecord::RotVelocityUnits RotVelocityUnits
Definition: DtDisplayUnitsSettingsManager.h:70
PressureUnits
Enumeration of the different pressure units.
Definition: DtDisplayUnitsSettingsRecord.h:138
DistanceUnits
Enumeration of the different distance units.
Definition: DtDisplayUnitsSettingsRecord.h:57
Contains the DtSharedDisplayUnitsSettings class declaration.
RotVelocityUnits
Enumeration of the different rotational velocity units.
Definition: DtDisplayUnitsSettingsRecord.h:113
makArchives::DtDisplayUnitsSettingsRecord::AccelerationUnits AccelerationUnits
Definition: DtDisplayUnitsSettingsManager.h:68
DT_DLL_VRVCORE double distance(const makVrv::DtCoordinateSystem &, const DtVector &from, const DtVector &to)
Returns the distance from the two points. Coordinates are in local database coordinates The coordinat...
DT_DLL_vrfutil double angle(double vec1[3], double vec2[3])
makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits DistanceUnits
Definition: DtDisplayUnitsSettingsManager.h:66
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
std::unordered_map< makArchives::DtDisplayUnitsSettingsRecord::DistanceUnits, DtUnicode > myNorthNotationCache
Definition: DtDisplayUnitsSettingsManager.h:818
void defaultManagerRegisterInstanceFunction(DtDe &de, ManagerClass *mgr)
Default implementation of how to register a manager, especially necessary when overriding the manager...
Definition: DtDe.h:879
Provides a method of doign settings backup.
Definition: DtSettingsBackup.h:23
Utility class for doing global unit conversion. All conversions functions use the following naming co...
Definition: DtDisplayUnitsSettingsManager.h:61
std::tuple< DistanceUnits, DtUnicode, unsigned int > DistanceUnitInformation
Definition: DtDisplayUnitsSettingsManager.h:75
The DtCoordinateSystem is used to manage the current coordinate system of the scene.
Definition: DtCoordinateSystem.h:40
OrientationUnits
Enumeration of the different orientation units.
Definition: DtDisplayUnitsSettingsRecord.h:102
Manager for the display units settings.
Definition: DtDisplayUnitsSettingsManager.h:824
TemperatureUnits
Enumeration of the different temperature units.
Definition: DtDisplayUnitsSettingsRecord.h:127
makArchives::DtDisplayUnitsSettingsRecord::TemperatureUnits TemperatureUnits
Definition: DtDisplayUnitsSettingsManager.h:71
ManagerClass & defaultManagerInstanceFunction(DtDe &de, bool allowedInSlave)
default Manager instance function. Manager requirements: 1) Static instance function 2) Protected DtS...
Definition: DtDe.h:841
makArchives::DtDisplayUnitsSettingsRecord::VelocityUnits VelocityUnits
Definition: DtDisplayUnitsSettingsManager.h:67
makArchives::DtDisplayUnitsSettingsRecord::CoordSys CoordSys
Definition: DtDisplayUnitsSettingsManager.h:65
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:72
const DtCoordinateSystem & myCoordinateSystem
Definition: DtDisplayUnitsSettingsManager.h:810
std::tuple< NorthUnits, DtUnicode, bool > NorthUnitInformation
Definition: DtDisplayUnitsSettingsManager.h:77
DtWorldMagneticModel & myWorldMagneticModel
Definition: DtDisplayUnitsSettingsManager.h:809
The makVrv::DtSettingsBackup is a lightweight class that must be subclassed from if an object wants t...
AccelerationUnits
Enumeration of the different acceleration units.
Definition: DtDisplayUnitsSettingsRecord.h:89
Contains the display units shared settings.
Definition: DtDisplayUnitsSettingsRecord.h:25
Contains the DtBaseSettingsManager class declaration.
std::tuple< OrientationUnits, DtUnicode, unsigned int > OrientationUnitInformation
Definition: DtDisplayUnitsSettingsManager.h:76
Contains DLL export macros.
DtSharedSettingsManager & mySharedSettingsManager
Definition: DtDisplayUnitsSettingsManager.h:811