improve whitespaces, fix typos
This commit is contained in:
@@ -39,104 +39,130 @@ using namespace Base;
|
||||
QString UnitsSchemaMKS::schemaTranslate(Base::Quantity quant,double &factor,QString &unitString)
|
||||
{
|
||||
double UnitValue = std::abs(quant.getValue());
|
||||
Unit unit = quant.getUnit();
|
||||
Unit unit = quant.getUnit();
|
||||
|
||||
// now do special treatment on all cases seams nececarry:
|
||||
if(unit == Unit::Length){ // Length handling ============================
|
||||
if(UnitValue < 0.000000001){// smaller then 0.001 nm -> scientific notation
|
||||
unitString = QString::fromLatin1("mm");
|
||||
factor = 1.0;
|
||||
}else if(UnitValue < 0.001){
|
||||
unitString = QString::fromLatin1("nm");
|
||||
factor = 0.000001;
|
||||
}else if(UnitValue < 0.1){
|
||||
unitString = QString::fromUtf8("\xC2\xB5m");
|
||||
factor = 0.001;
|
||||
}else if(UnitValue < 100.0){
|
||||
unitString = QString::fromLatin1("mm");
|
||||
factor = 1.0;
|
||||
}else if(UnitValue < 10000000.0){
|
||||
unitString = QString::fromLatin1("m");
|
||||
factor = 1000.0;
|
||||
}else if(UnitValue < 100000000000.0 ){
|
||||
unitString = QString::fromLatin1("km");
|
||||
factor = 1000000.0;
|
||||
}else{ // bigger then 1000 km -> scientific notation
|
||||
// now do special treatment on all cases seems necessary:
|
||||
if (unit == Unit::Length) { // Length handling ============================
|
||||
if (UnitValue < 0.000000001) {// smaller then 0.001 nm -> scientific notation
|
||||
unitString = QString::fromLatin1("mm");
|
||||
factor = 1.0;
|
||||
}
|
||||
}else if (unit == Unit::Area){
|
||||
if(UnitValue < 100.0){// smaller than 1 square cm
|
||||
else if(UnitValue < 0.001) {
|
||||
unitString = QString::fromLatin1("nm");
|
||||
factor = 0.000001;
|
||||
}
|
||||
else if(UnitValue < 0.1) {
|
||||
unitString = QString::fromUtf8("\xC2\xB5m");
|
||||
factor = 0.001;
|
||||
}
|
||||
else if(UnitValue < 100.0) {
|
||||
unitString = QString::fromLatin1("mm");
|
||||
factor = 1.0;
|
||||
}
|
||||
else if(UnitValue < 10000000.0) {
|
||||
unitString = QString::fromLatin1("m");
|
||||
factor = 1000.0;
|
||||
}
|
||||
else if(UnitValue < 100000000000.0 ) {
|
||||
unitString = QString::fromLatin1("km");
|
||||
factor = 1000000.0;
|
||||
}
|
||||
else { // bigger then 1000 km -> scientific notation
|
||||
unitString = QString::fromLatin1("mm");
|
||||
factor = 1.0;
|
||||
}
|
||||
}
|
||||
else if (unit == Unit::Area) {
|
||||
if (UnitValue < 100.0) {// smaller than 1 square cm
|
||||
unitString = QString::fromLatin1("mm^2");
|
||||
factor = 1.0;
|
||||
}else if(UnitValue < 10000000000000.0 ){
|
||||
}
|
||||
else if (UnitValue < 10000000000000.0) {
|
||||
unitString = QString::fromLatin1("m^2");
|
||||
factor = 1000000.0;
|
||||
}else{ // bigger then 1 square kilometer
|
||||
}
|
||||
else { // bigger then 1 square kilometer
|
||||
unitString = QString::fromLatin1("km^2");
|
||||
factor = 1000000000000.0;
|
||||
}
|
||||
}else if (unit == Unit::Mass){
|
||||
}
|
||||
else if (unit == Unit::Mass) {
|
||||
// TODO Cascade for the wights
|
||||
// default action for all cases without special treatment:
|
||||
unitString = quant.getUnit().getString();
|
||||
factor = 1.0;
|
||||
}else if (unit == Unit::Volume){
|
||||
if(UnitValue < 1000000.0){// smaller than 10 cubic cm
|
||||
}
|
||||
else if (unit == Unit::Volume) {
|
||||
if (UnitValue < 1000000.0) {// smaller than 10 cubic cm
|
||||
unitString = QString::fromLatin1("mm^3");
|
||||
factor = 1.0;
|
||||
}else if(UnitValue < 1000000000000000000.0 ){
|
||||
}
|
||||
else if (UnitValue < 1000000000000000000.0) {
|
||||
unitString = QString::fromLatin1("m^3");
|
||||
factor = 1000000000.0;
|
||||
}else{ // bigger then 1 cubic kilometer
|
||||
}
|
||||
else { // bigger then 1 cubic kilometer
|
||||
unitString = QString::fromLatin1("km^3");
|
||||
factor = 1000000000000000000.0;
|
||||
}
|
||||
}else if ((unit == Unit::Pressure) || (unit == Unit::Stress)){
|
||||
if(UnitValue < 10.0){// Pa is the smallest
|
||||
}
|
||||
else if ((unit == Unit::Pressure) || (unit == Unit::Stress)) {
|
||||
if (UnitValue < 10.0) {// Pa is the smallest
|
||||
unitString = QString::fromLatin1("Pa");
|
||||
factor = 0.001;
|
||||
}else if(UnitValue < 10000.0){
|
||||
}
|
||||
else if (UnitValue < 10000.0) {
|
||||
unitString = QString::fromLatin1("kPa");
|
||||
factor = 1.0;
|
||||
}else if(UnitValue < 10000000.0){
|
||||
}
|
||||
else if (UnitValue < 10000000.0) {
|
||||
unitString = QString::fromLatin1("MPa");
|
||||
factor = 1000.0;
|
||||
}else if(UnitValue < 10000000000.0){
|
||||
}
|
||||
else if (UnitValue < 10000000000.0) {
|
||||
unitString = QString::fromLatin1("GPa");
|
||||
factor = 1000000.0;
|
||||
}else{ // bigger then 1000 GPa -> scientific notation
|
||||
}
|
||||
else { // bigger then 1000 GPa -> scientific notation
|
||||
unitString = QString::fromLatin1("Pa");
|
||||
factor = 1.0;
|
||||
}
|
||||
}else if (unit == Unit::ThermalConductivity){
|
||||
if (UnitValue < 1000){
|
||||
unitString = QString::fromLatin1("W/mm/K");
|
||||
factor = 1.0;
|
||||
}else{
|
||||
unitString = QString::fromLatin1("W/m/K");
|
||||
factor = 1000.0;
|
||||
}
|
||||
}else if (unit == Unit::ThermalExpansionCoefficient){
|
||||
if(UnitValue < 0.001){
|
||||
}
|
||||
else if (unit == Unit::ThermalConductivity) {
|
||||
if (UnitValue < 1000) {
|
||||
unitString = QString::fromLatin1("W/mm/K");
|
||||
factor = 1.0;
|
||||
}
|
||||
else {
|
||||
unitString = QString::fromLatin1("W/m/K");
|
||||
factor = 1000.0;
|
||||
}
|
||||
}
|
||||
else if (unit == Unit::ThermalExpansionCoefficient) {
|
||||
if (UnitValue < 0.001) {
|
||||
unitString = QString::fromLatin1("um/m/K");
|
||||
factor = 0.000001;
|
||||
}else{
|
||||
}
|
||||
else {
|
||||
unitString = QString::fromLatin1("m/m/K");
|
||||
factor = 1.0;
|
||||
}
|
||||
}else if (unit == Unit::SpecificHeat){
|
||||
}
|
||||
else if (unit == Unit::SpecificHeat) {
|
||||
unitString = QString::fromLatin1("J/kg/K");
|
||||
factor = 1000000.0;
|
||||
}else if (unit == Unit::ThermalTransferCoefficient){
|
||||
}
|
||||
else if (unit == Unit::ThermalTransferCoefficient) {
|
||||
unitString = QString::fromLatin1("W/m^2/K");
|
||||
factor = 1.0;
|
||||
}else{
|
||||
}
|
||||
else {
|
||||
// default action for all cases without special treatment:
|
||||
unitString = quant.getUnit().getString();
|
||||
factor = 1.0;
|
||||
}
|
||||
//return QString::fromUtf8("%L1 %2").arg(quant.getValue() / factor).arg(unitString);
|
||||
|
||||
//return QString::fromUtf8("%L1 %2").arg(quant.getValue() / factor).arg(unitString);
|
||||
QLocale Lc = QLocale::system();
|
||||
Lc.setNumberOptions(Lc.OmitGroupSeparator | Lc.RejectGroupSeparator);
|
||||
QString Ln = Lc.toString((quant.getValue() / factor), 'f', Base::UnitsApi::getDecimals());
|
||||
|
||||
Reference in New Issue
Block a user