UnitsSchemaInternal.cpp
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #include "PreCompiled.h"
00025 #ifdef __GNUC__
00026 # include <unistd.h>
00027 #endif
00028
00029 #include <QString>
00030 #include "Exception.h"
00031 #include "UnitsApi.h"
00032 #include "UnitsSchemaInternal.h"
00033
00034 using namespace Base;
00035
00036
00037 void UnitsSchemaInternal::setSchemaUnits(void)
00038 {
00039 UnitsApi::setPrefOf( Length ,"mm" );
00040 UnitsApi::setPrefOf( Area ,"mm^2" );
00041 UnitsApi::setPrefOf( Volume ,"mm^3" );
00042 UnitsApi::setPrefOf( Angle ,"deg" );
00043 UnitsApi::setPrefOf( TimeSpan ,"s" );
00044 UnitsApi::setPrefOf( Velocity ,"mm/s" );
00045 UnitsApi::setPrefOf( Acceleration ,"mm/s^2" );
00046 UnitsApi::setPrefOf( Mass ,"kg" );
00047 UnitsApi::setPrefOf( Temperature ,"K" );
00048
00049 }
00050
00051 void UnitsSchemaInternal::toStrWithUserPrefs(QuantityType t,double Value,QString &outValue,QString &outUnit)
00052 {
00053 double UnitValue = Value/UnitsApi::getPrefFactorOf(t);
00054 outUnit = UnitsApi::getPrefUnitOf(t);
00055 outValue = QString::fromAscii("%1").arg(UnitValue);
00056
00057 }
00058
00059 QString UnitsSchemaInternal::toStrWithUserPrefs(QuantityType t,double Value)
00060 {
00061 double UnitValue = Value/UnitsApi::getPrefFactorOf(t);
00062 return QString::fromAscii("%1 %2").arg(UnitValue).arg(UnitsApi::getPrefUnitOf(t));
00063 }
00064
00065