Merge branch 'master' of ssh://git.code.sf.net/p/free-cad/code

This commit is contained in:
wmayer 2013-12-01 11:45:21 +01:00
commit 66f0499a81
31 changed files with 691 additions and 495 deletions

View File

@ -73,6 +73,8 @@
#include <Base/Sequencer.h>
#include <Base/Tools.h>
#include <Base/UnitsApi.h>
#include <Base/QuantityPy.h>
#include <Base/UnitPy.h>
#include "GeoFeature.h"
#include "FeatureTest.h"
@ -233,6 +235,9 @@ Application::Application(ParameterManager * /*pcSysParamMngr*/,
//insert Units module
PyObject* pUnitsModule = Py_InitModule3("Units", Base::UnitsApi::Methods,
"The Unit API");
Base::Interpreter().addType(&Base::QuantityPy ::Type,pUnitsModule,"Quantity");
Base::Interpreter().addType(&Base::UnitPy ::Type,pUnitsModule,"Unit");
Py_INCREF(pUnitsModule);
PyModule_AddObject(pAppModule, "Units", pUnitsModule);

View File

@ -135,6 +135,81 @@ FreeCAD.EndingAdd("FreeCAD document (*.FCStd)","FreeCAD")
# set to no gui, is overwritten by InitGui
App.GuiUp = 0
# fill up unit definitions
App.Units.NanoMeter = App.Units.Quantity('nm')
App.Units.MicroMeter = App.Units.Quantity('ym')
App.Units.MilliMeter = App.Units.Quantity('mm')
App.Units.CentiMeter = App.Units.Quantity('cm')
App.Units.DeciMeter = App.Units.Quantity('dm')
App.Units.Meter = App.Units.Quantity('m')
App.Units.KiloMeter = App.Units.Quantity('km')
App.Units.Liter = App.Units.Quantity('l')
App.Units.MicroGram = App.Units.Quantity('yg')
App.Units.MilliGram = App.Units.Quantity('mg')
App.Units.Gram = App.Units.Quantity('g')
App.Units.KiloGram = App.Units.Quantity('kg')
App.Units.Ton = App.Units.Quantity('t')
App.Units.Second = App.Units.Quantity('s')
App.Units.Minut = App.Units.Quantity('min')
App.Units.Hour = App.Units.Quantity('h')
App.Units.Ampere = App.Units.Quantity('A')
App.Units.MilliAmpere = App.Units.Quantity('mA')
App.Units.KiloAmpere = App.Units.Quantity('kA')
App.Units.MegaAmpere = App.Units.Quantity('MA')
App.Units.Kelvin = App.Units.Quantity('K')
App.Units.MilliKelvin = App.Units.Quantity('mK')
App.Units.MicroKelvin = App.Units.Quantity('yK')
App.Units.Mole = App.Units.Quantity('mol')
App.Units.Candela = App.Units.Quantity('cd')
App.Units.Inch = App.Units.Quantity('in')
App.Units.Foot = App.Units.Quantity('fo')
App.Units.Thou = App.Units.Quantity('th')
App.Units.Yard = App.Units.Quantity('yr')
App.Units.Mile = App.Units.Quantity('mile')
App.Units.Pound = App.Units.Quantity('lb')
App.Units.Ounce = App.Units.Quantity('oz')
App.Units.Stone = App.Units.Quantity('st')
App.Units.Hundredweights= App.Units.Quantity('cwt')
App.Units.Newton = App.Units.Quantity('N')
App.Units.KiloNewton = App.Units.Quantity('kN')
App.Units.MegaNewton = App.Units.Quantity('MN')
App.Units.MilliNewton = App.Units.Quantity('mN')
App.Units.Pascal = App.Units.Quantity('Pa')
App.Units.KiloPascal = App.Units.Quantity('kPa')
App.Units.MegaPascal = App.Units.Quantity('MPa')
App.Units.GigaPascal = App.Units.Quantity('GPa')
App.Units.PSI = App.Units.Quantity('psi')
App.Units.Watt = App.Units.Quantity('W')
App.Units.VoltAmpere = App.Units.Quantity('VA')
App.Units.Joul = App.Units.Quantity('J')
App.Units.NewtonMeter = App.Units.Quantity('Nm')
App.Units.VoltAmpereSecond = App.Units.Quantity('VAs')
App.Units.WattSecond = App.Units.Quantity('Ws')
App.Units.MPH = App.Units.Quantity('mile/h')
App.Units.KMH = App.Units.Quantity('km/h')
App.Units.Degree = App.Units.Quantity('deg')
App.Units.Radian = App.Units.Quantity('rad')
App.Units.Gon = App.Units.Quantity('gon')
# clean up namespace
del(InitApplications)

View File

@ -39,12 +39,6 @@
# pragma warning(disable : 4335) // disable MAC file format warning on VC
#endif
#ifndef DOUBLE_MAX
# define DOUBLE_MAX 1.7976931348623157E+308 /* max decimal value of a "double"*/
#endif
#ifndef DOUBLE_MIN
# define DOUBLE_MIN 2.2250738585072014E-308 /* min decimal value of a "double"*/
#endif
using namespace Base;
@ -150,6 +144,82 @@ void Quantity::setInvalid(void)
_Value = DOUBLE_MIN ;
}
// === Predefined types =====================================================
Quantity Quantity::NanoMeter (1.0e-6 ,Unit(1));
Quantity Quantity::MicroMeter (1.0e-3 ,Unit(1));
Quantity Quantity::MilliMeter (1.0 ,Unit(1));
Quantity Quantity::CentiMeter (10.0 ,Unit(1));
Quantity Quantity::DeciMeter (100.0 ,Unit(1));
Quantity Quantity::Meter (1.0e3 ,Unit(1));
Quantity Quantity::KiloMeter (1.0e6 ,Unit(1));
Quantity Quantity::Liter (1000000.0 ,Unit(3));
Quantity Quantity::MicroGram (1.0e-9 ,Unit(0,1));
Quantity Quantity::MilliGram (1.0e-6 ,Unit(0,1));
Quantity Quantity::Gram (1.0e-3 ,Unit(0,1));
Quantity Quantity::KiloGram (1.0 ,Unit(0,1));
Quantity Quantity::Ton (1.0e3 ,Unit(0,1));
Quantity Quantity::Second (1.0 ,Unit(0,0,1));
Quantity Quantity::Minut (60.0 ,Unit(0,0,1));
Quantity Quantity::Hour (3600.0 ,Unit(0,0,1));
Quantity Quantity::Ampere (1.0 ,Unit(0,0,0,1));
Quantity Quantity::MilliAmpere (0.001 ,Unit(0,0,0,1));
Quantity Quantity::KiloAmpere (1000.0 ,Unit(0,0,0,1));
Quantity Quantity::MegaAmpere (1.0e6 ,Unit(0,0,0,1));
Quantity Quantity::Kelvin (1.0 ,Unit(0,0,0,0,1));
Quantity Quantity::MilliKelvin (0.001 ,Unit(0,0,0,0,1));
Quantity Quantity::MicroKelvin (0.000001 ,Unit(0,0,0,0,1));
Quantity Quantity::Mole (1.0 ,Unit(0,0,0,0,0,1));
Quantity Quantity::Candela (1.0 ,Unit(0,0,0,0,0,0,1));
Quantity Quantity::Inch (25.4 ,Unit(1));
Quantity Quantity::Foot (304.8 ,Unit(1));
Quantity Quantity::Thou (0.0254 ,Unit(1));
Quantity Quantity::Yard (914.4 ,Unit(1));
Quantity Quantity::Mile (1609344.0 ,Unit(1));
Quantity Quantity::Pound (0.45359237 ,Unit(0,1));
Quantity Quantity::Ounce (0.45359237 ,Unit(0,1));
Quantity Quantity::Stone (6.35029318 ,Unit(0,1));
Quantity Quantity::Hundredweights (50.80234544 ,Unit(0,1));
Quantity Quantity::Newton (1000.0 ,Unit(1,1,-2)); // Newton (kg*m/s^2)
Quantity Quantity::KiloNewton (1e+6 ,Unit(1,1,-2));
Quantity Quantity::MegaNewton (1e+9 ,Unit(1,1,-2));
Quantity Quantity::MilliNewton (1.0 ,Unit(1,1,-2));
Quantity Quantity::Pascal (0.001 ,Unit(-1,1,-2)); // Pascal (kg/m*s^2 or N/m^2)
Quantity Quantity::KiloPascal (1.00 ,Unit(-1,1,-2));
Quantity Quantity::MegaPascal (1000.0 ,Unit(-1,1,-2));
Quantity Quantity::GigaPascal (1e+6 ,Unit(-1,1,-2));
Quantity Quantity::PSI (0.145038 ,Unit(-1,1,-2)); // pounds/in^2
Quantity Quantity::Watt (1e+6 ,Unit(2,1,-3)); // Watt (kg*m^2/s^3)
Quantity Quantity::VoltAmpere (1e+6 ,Unit(2,1,-3)); // VoltAmpere (kg*m^2/s^3)
Quantity Quantity::Joul (1e+6 ,Unit(2,1,-2)); // Joule (kg*m^2/s^2)
Quantity Quantity::NewtonMeter (1e+6 ,Unit(2,1,-2)); // Joule (kg*m^2/s^2)
Quantity Quantity::VoltAmpereSecond (1e+6 ,Unit(2,1,-2)); // Joule (kg*m^2/s^2)
Quantity Quantity::WattSecond (1e+6 ,Unit(2,1,-2)); // Joule (kg*m^2/s^2)
Quantity Quantity::KMH (277.778 ,Unit(1,0,-1)); // km/h
Quantity Quantity::MPH (447.04 ,Unit(1,0,-1)); // Mile/h
Quantity Quantity::Degree (1.0 ,Unit(0,0,0,0,0,0,0,1)); // degree (internal standard angle)
Quantity Quantity::Radian (180/M_PI ,Unit(0,0,0,0,0,0,0,1)); // radian
Quantity Quantity::Gon (360.0/400.0 ,Unit(0,0,0,0,0,0,0,1)); // gon
// === Parser & Scanner stuff ===============================================
// include the Scanner and the Parser for the Quantitys

View File

@ -27,6 +27,13 @@
#include "Unit.h"
#include <QString>
#ifndef DOUBLE_MAX
# define DOUBLE_MAX 1.7976931348623157E+308 /* max decimal value of a "double"*/
#endif
#ifndef DOUBLE_MIN
# define DOUBLE_MIN 2.2250738585072014E-308 /* min decimal value of a "double"*/
#endif
namespace Base {
/**
@ -76,6 +83,83 @@ public:
void setInvalid(void);
/** Predefined Unit types. */
//@{
static Quantity NanoMeter;
static Quantity MicroMeter;
static Quantity CentiMeter;
static Quantity DeciMeter;
static Quantity Meter;
static Quantity MilliMeter;
static Quantity KiloMeter;
static Quantity Liter;
static Quantity MicroGram;
static Quantity MilliGram;
static Quantity Gram;
static Quantity KiloGram;
static Quantity Ton;
static Quantity Second;
static Quantity Minut;
static Quantity Hour;
static Quantity Ampere;
static Quantity MilliAmpere;
static Quantity KiloAmpere;
static Quantity MegaAmpere;
static Quantity Kelvin;
static Quantity MilliKelvin;
static Quantity MicroKelvin;
static Quantity Mole;
static Quantity Candela;
static Quantity Inch;
static Quantity Foot;
static Quantity Thou;
static Quantity Yard;
static Quantity Pound;
static Quantity Ounce;
static Quantity Stone;
static Quantity Hundredweights;
static Quantity Mile;
static Quantity Newton;
static Quantity KiloNewton;
static Quantity MegaNewton;
static Quantity MilliNewton;
static Quantity Pascal;
static Quantity KiloPascal;
static Quantity MegaPascal;
static Quantity GigaPascal;
static Quantity PSI;
static Quantity Watt;
static Quantity VoltAmpere;
static Quantity Joul;
static Quantity NewtonMeter;
static Quantity VoltAmpereSecond;
static Quantity WattSecond;
static Quantity KMH;
static Quantity MPH;
static Quantity Degree;
static Quantity Radian;
static Quantity Gon;
//@}
protected:
double _Value;
Unit _Unit;

View File

@ -361,8 +361,8 @@ static void yy_fatal_error (yyconst char msg[] );
*yy_cp = '\0'; \
(yy_c_buf_p) = yy_cp;
#define YY_NUM_RULES 76
#define YY_END_OF_BUFFER 77
#define YY_NUM_RULES 83
#define YY_END_OF_BUFFER 84
/* This struct is not used in this scanner,
but its presence is necessary. */
struct yy_trans_info
@ -370,22 +370,23 @@ struct yy_trans_info
flex_int32_t yy_verify;
flex_int32_t yy_nxt;
};
static yyconst flex_int16_t yy_accept[126] =
static yyconst flex_int16_t yy_accept[138] =
{ 0,
0, 0, 0, 0, 77, 76, 4, 5, 36, 38,
6, 57, 23, 76, 50, 27, 76, 45, 76, 76,
48, 1, 76, 76, 76, 59, 76, 17, 22, 76,
76, 14, 12, 76, 76, 76, 76, 20, 19, 76,
3, 2, 5, 56, 57, 53, 26, 51, 46, 49,
54, 0, 0, 0, 0, 31, 10, 0, 0, 0,
11, 0, 37, 0, 35, 25, 18, 13, 41, 0,
24, 28, 16, 0, 9, 0, 7, 42, 58, 0,
0, 0, 0, 0, 43, 0, 39, 29, 15, 8,
40, 56, 0, 52, 66, 0, 0, 0, 64, 44,
0, 0, 0, 0, 84, 83, 4, 5, 33, 35,
6, 64, 23, 83, 83, 54, 27, 83, 43, 83,
83, 52, 1, 83, 83, 83, 66, 83, 17, 22,
83, 83, 14, 12, 83, 83, 83, 83, 20, 19,
83, 3, 2, 5, 63, 64, 57, 0, 26, 45,
0, 55, 47, 53, 58, 0, 0, 0, 0, 31,
10, 0, 0, 0, 11, 0, 34, 0, 32, 25,
44, 0, 18, 13, 39, 0, 24, 28, 46, 16,
0, 9, 0, 7, 40, 65, 0, 0, 0, 0,
0, 41, 0, 36, 29, 15, 8, 37, 63, 0,
32, 65, 34, 68, 21, 67, 30, 70, 47, 33,
71, 0, 73, 0, 55, 60, 61, 62, 0, 72,
75, 74, 63, 69, 0
50, 49, 56, 73, 0, 0, 0, 71, 42, 59,
72, 61, 48, 75, 0, 21, 74, 30, 77, 51,
60, 78, 0, 80, 0, 62, 67, 68, 69, 0,
38, 79, 82, 81, 70, 76, 0
} ;
static yyconst flex_int32_t yy_ec[256] =
@ -397,13 +398,13 @@ static yyconst flex_int32_t yy_ec[256] =
6, 6, 7, 8, 7, 8, 6, 9, 10, 11,
12, 12, 12, 12, 12, 12, 12, 1, 1, 1,
6, 1, 1, 1, 13, 1, 14, 1, 15, 1,
1, 1, 1, 16, 17, 1, 18, 19, 1, 20,
1, 1, 1, 1, 1, 21, 22, 1, 1, 1,
23, 1, 24, 6, 1, 1, 25, 26, 27, 28,
16, 1, 1, 17, 18, 1, 19, 20, 1, 21,
1, 1, 1, 1, 1, 22, 23, 1, 1, 1,
24, 1, 25, 6, 1, 1, 26, 27, 28, 29,
29, 30, 31, 32, 33, 1, 34, 35, 36, 37,
38, 39, 40, 41, 42, 43, 1, 1, 44, 45,
46, 47, 1, 1, 1, 1, 1, 1, 1, 1,
30, 31, 32, 33, 34, 1, 35, 36, 37, 38,
39, 40, 41, 42, 43, 44, 1, 1, 45, 46,
47, 48, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
@ -420,105 +421,109 @@ static yyconst flex_int32_t yy_ec[256] =
1, 1, 1, 1, 1
} ;
static yyconst flex_int32_t yy_meta[48] =
static yyconst flex_int32_t yy_meta[49] =
{ 0,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1
1, 1, 1, 1, 1, 1, 1, 1
} ;
static yyconst flex_int16_t yy_base[127] =
static yyconst flex_int16_t yy_base[139] =
{ 0,
0, 0, 45, 46, 167, 168, 168, 163, 168, 168,
168, 46, 168, 144, 168, 168, 151, 127, 137, 148,
118, 168, 25, 35, 24, 114, 120, 119, 168, 119,
46, 36, 59, 119, 107, 42, 128, 45, 61, 70,
168, 168, 149, 93, 105, 168, 168, 168, 168, 109,
168, 108, 111, 115, 122, 168, 168, 104, 102, 113,
168, 104, 168, 105, 168, 168, 168, 168, 168, 110,
168, 168, 168, 103, 168, 61, 168, 168, 168, 95,
104, 84, 73, 66, 168, 63, 168, 168, 168, 168,
168, 109, 116, 168, 168, 57, 61, 57, 168, 168,
0, 0, 46, 47, 179, 180, 180, 175, 180, 180,
180, 47, 180, 155, 155, 180, 180, 40, 138, 148,
160, 129, 180, 35, 36, 37, 125, 131, 130, 180,
130, 56, 25, 67, 130, 118, 52, 139, 48, 57,
66, 180, 180, 161, 100, 109, 180, 137, 180, 180,
136, 180, 180, 118, 180, 117, 120, 124, 131, 180,
180, 113, 111, 122, 180, 113, 180, 114, 180, 180,
180, 125, 180, 180, 180, 118, 180, 180, 180, 180,
30, 180, 71, 180, 180, 180, 104, 114, 118, 108,
103, 180, 106, 180, 180, 180, 180, 180, 113, 122,
168, 168, 168, 81, 168, 168, 168, 168, 168, 168,
51, 38, 34, 120, 124, 168, 168, 54, 55, 168,
168, 168, 168, 168, 168, 60
180, 180, 180, 180, 84, 88, 78, 180, 180, 180,
180, 180, 180, 104, 75, 180, 180, 180, 180, 180,
180, 69, 53, 63, 126, 130, 180, 180, 83, 61,
180, 180, 180, 180, 180, 180, 180, 53
} ;
static yyconst flex_int16_t yy_def[127] =
static yyconst flex_int16_t yy_def[139] =
{ 0,
125, 1, 126, 126, 125, 125, 125, 125, 125, 125,
125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
137, 1, 138, 138, 137, 137, 137, 137, 137, 137,
137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
125, 125, 125, 125, 0, 125
137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
137, 137, 137, 137, 137, 137, 0, 137
} ;
static yyconst flex_int16_t yy_nxt[216] =
static yyconst flex_int16_t yy_nxt[229] =
{ 0,
6, 7, 8, 9, 10, 11, 11, 6, 12, 12,
12, 12, 13, 14, 6, 15, 16, 17, 18, 19,
20, 21, 22, 6, 23, 6, 24, 25, 26, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, 6,
37, 38, 39, 6, 6, 40, 6, 6, 6, 44,
52, 53, 60, 44, 45, 45, 45, 45, 66, 61,
41, 69, 56, 124, 123, 122, 54, 55, 42, 42,
57, 71, 58, 70, 79, 72, 67, 83, 59, 80,
121, 68, 120, 81, 84, 86, 88, 85, 106, 73,
119, 74, 87, 118, 75, 107, 76, 117, 116, 113,
20, 21, 22, 23, 6, 24, 6, 25, 26, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
6, 38, 39, 40, 6, 6, 41, 6, 6, 6,
45, 75, 49, 42, 45, 46, 46, 46, 46, 50,
51, 56, 57, 76, 60, 115, 64, 116, 70, 136,
43, 43, 61, 65, 62, 71, 72, 58, 59, 77,
63, 90, 93, 95, 78, 86, 79, 73, 91, 94,
87, 92, 74, 135, 88, 134, 133, 96, 80, 117,
89, 92, 92, 92, 92, 90, 112, 93, 44, 111,
91, 110, 44, 45, 45, 45, 45, 92, 92, 92,
92, 93, 114, 93, 115, 115, 115, 115, 115, 115,
115, 115, 115, 115, 115, 115, 109, 93, 108, 105,
104, 103, 102, 101, 100, 99, 98, 97, 96, 95,
94, 43, 82, 78, 77, 65, 64, 63, 62, 51,
50, 49, 48, 47, 46, 43, 125, 5, 125, 125,
125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
81, 132, 97, 82, 131, 83, 118, 98, 99, 99,
99, 99, 45, 130, 100, 129, 45, 46, 46, 46,
46, 99, 99, 99, 99, 128, 127, 100, 125, 100,
126, 126, 126, 126, 126, 126, 126, 126, 126, 126,
126, 126, 100, 124, 123, 122, 121, 120, 119, 114,
113, 112, 111, 110, 109, 108, 107, 106, 105, 104,
103, 102, 101, 44, 89, 85, 84, 69, 68, 67,
66, 55, 54, 53, 52, 48, 47, 44, 137, 5,
137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
125, 125, 125, 125, 125
137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
137, 137, 137, 137, 137, 137, 137, 137
} ;
static yyconst flex_int16_t yy_chk[216] =
static yyconst flex_int16_t yy_chk[229] =
{ 0,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 3, 4, 12,
23, 23, 25, 12, 12, 12, 12, 12, 31, 25,
126, 32, 24, 119, 118, 113, 23, 23, 3, 4,
24, 33, 24, 32, 36, 33, 31, 38, 24, 36,
112, 31, 111, 36, 38, 39, 40, 38, 76, 33,
104, 33, 39, 98, 33, 76, 33, 97, 96, 86,
1, 1, 1, 1, 1, 1, 1, 1, 3, 4,
12, 33, 18, 138, 12, 12, 12, 12, 12, 18,
18, 24, 24, 33, 25, 81, 26, 81, 32, 130,
3, 4, 25, 26, 25, 32, 32, 24, 24, 34,
25, 39, 40, 41, 34, 37, 34, 32, 39, 40,
37, 39, 32, 129, 37, 124, 123, 41, 34, 83,
40, 44, 44, 44, 44, 40, 84, 44, 45, 83,
40, 82, 45, 45, 45, 45, 45, 92, 92, 92,
92, 44, 93, 92, 93, 93, 93, 93, 114, 114,
114, 114, 115, 115, 115, 115, 81, 92, 80, 74,
70, 64, 62, 60, 59, 58, 55, 54, 53, 52,
50, 43, 37, 35, 34, 30, 28, 27, 26, 21,
20, 19, 18, 17, 14, 8, 5, 125, 125, 125,
125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
34, 122, 41, 34, 115, 34, 83, 41, 45, 45,
45, 45, 46, 114, 45, 107, 46, 46, 46, 46,
46, 99, 99, 99, 99, 106, 105, 99, 100, 45,
100, 100, 100, 100, 125, 125, 125, 125, 126, 126,
126, 126, 99, 93, 91, 90, 89, 88, 87, 76,
72, 68, 66, 64, 63, 62, 59, 58, 57, 56,
54, 51, 48, 44, 38, 36, 35, 31, 29, 28,
27, 22, 21, 20, 19, 15, 14, 8, 5, 137,
137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
125, 125, 125, 125, 125, 125, 125, 125, 125, 125,
125, 125, 125, 125, 125
137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
137, 137, 137, 137, 137, 137, 137, 137
} ;
static yy_state_type yy_last_accepting_state;
@ -549,7 +554,7 @@ char *yytext;
/* the manual says "somewhat more optimized" */
/* no support for include files is planned */
#line 553 "QuantityLexer.c"
#line 558 "QuantityLexer.c"
#define INITIAL 0
#define C_COMMENT 1
@ -733,7 +738,7 @@ YY_DECL
#line 28 "QuantityParser.l"
#line 737 "QuantityLexer.c"
#line 742 "QuantityLexer.c"
if ( !(yy_init) )
{
@ -786,13 +791,13 @@ yy_match:
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
if ( yy_current_state >= 126 )
if ( yy_current_state >= 138 )
yy_c = yy_meta[(unsigned int) yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
++yy_cp;
}
while ( yy_current_state != 125 );
while ( yy_current_state != 137 );
yy_cp = (yy_last_accepting_cpos);
yy_current_state = (yy_last_accepting_state);
@ -846,354 +851,389 @@ YY_RULE_SETUP
case 7:
YY_RULE_SETUP
#line 40 "QuantityParser.l"
yylval = Quantity(1.0e-6 ,Unit(1)); return UNIT; // nano meter
yylval = Quantity::NanoMeter; return UNIT; // nano meter
YY_BREAK
case 8:
YY_RULE_SETUP
#line 41 "QuantityParser.l"
yylval = Quantity(1.0e-3 ,Unit(1)); return UNIT; // micro meter
yylval = Quantity::MicroMeter; return UNIT; // micro meter
YY_BREAK
case 9:
YY_RULE_SETUP
#line 42 "QuantityParser.l"
yylval = Quantity(1.0 ,Unit(1)); return UNIT; // milli meter
yylval = Quantity::MilliMeter; return UNIT; // milli meter (internal standard length)
YY_BREAK
case 10:
YY_RULE_SETUP
#line 43 "QuantityParser.l"
yylval = Quantity(10.0 ,Unit(1)); return UNIT; // centi meter
yylval = Quantity::CentiMeter; return UNIT; // centi meter
YY_BREAK
case 11:
YY_RULE_SETUP
#line 44 "QuantityParser.l"
yylval = Quantity(100.0 ,Unit(1)); return UNIT; // deci meter
yylval = Quantity::DeciMeter; return UNIT; // deci meter
YY_BREAK
case 12:
YY_RULE_SETUP
#line 45 "QuantityParser.l"
yylval = Quantity(1.0e3 ,Unit(1)); return UNIT; // meter
yylval = Quantity::Meter; return UNIT; // meter
YY_BREAK
case 13:
YY_RULE_SETUP
#line 46 "QuantityParser.l"
yylval = Quantity(1.0e6 ,Unit(1)); return UNIT; // kilo meter
yylval = Quantity::KiloMeter; return UNIT; // kilo meter
YY_BREAK
case 14:
YY_RULE_SETUP
#line 47 "QuantityParser.l"
yylval = Quantity(1000000.0 ,Unit(3)); return UNIT; // Liter dm^3
#line 48 "QuantityParser.l"
yylval = Quantity::Liter; return UNIT; // Liter dm^3
YY_BREAK
case 15:
YY_RULE_SETUP
#line 49 "QuantityParser.l"
yylval = Quantity(1.0e-9 ,Unit(0,1)); return UNIT; // milli gram
#line 50 "QuantityParser.l"
yylval = Quantity::MicroGram; return UNIT; // micro gram
YY_BREAK
case 16:
YY_RULE_SETUP
#line 50 "QuantityParser.l"
yylval = Quantity(1.0e-6 ,Unit(0,1)); return UNIT; // milli gram
#line 51 "QuantityParser.l"
yylval = Quantity::MilliGram; return UNIT; // milli gram
YY_BREAK
case 17:
YY_RULE_SETUP
#line 51 "QuantityParser.l"
yylval = Quantity(1.0e-3 ,Unit(0,1)); return UNIT; // gram
#line 52 "QuantityParser.l"
yylval = Quantity::Gram; return UNIT; // gram
YY_BREAK
case 18:
YY_RULE_SETUP
#line 52 "QuantityParser.l"
yylval = Quantity(1.0 ,Unit(0,1)); return UNIT; // kilo gram (internal standard for mass)
#line 53 "QuantityParser.l"
yylval = Quantity::KiloGram; return UNIT; // kilo gram (internal standard for mass)
YY_BREAK
case 19:
YY_RULE_SETUP
#line 53 "QuantityParser.l"
yylval = Quantity(1000.0 ,Unit(0,1)); return UNIT; // ton
#line 54 "QuantityParser.l"
yylval = Quantity::Ton; return UNIT; // ton
YY_BREAK
case 20:
YY_RULE_SETUP
#line 55 "QuantityParser.l"
yylval = Quantity(1.0 ,Unit(0,0,1)); return UNIT; // second (internal standard time)
#line 56 "QuantityParser.l"
yylval = Quantity::Second; return UNIT; // second (internal standard time)
YY_BREAK
case 21:
YY_RULE_SETUP
#line 56 "QuantityParser.l"
yylval = Quantity(60.0 ,Unit(0,0,1)); return UNIT; // minute
#line 57 "QuantityParser.l"
yylval = Quantity::Minut; return UNIT; // minute
YY_BREAK
case 22:
YY_RULE_SETUP
#line 57 "QuantityParser.l"
yylval = Quantity(3600.0 ,Unit(0,0,1)); return UNIT; // hour
#line 58 "QuantityParser.l"
yylval = Quantity::Hour; return UNIT; // hour
YY_BREAK
case 23:
YY_RULE_SETUP
#line 59 "QuantityParser.l"
yylval = Quantity(1.0 ,Unit(0,0,0,1)); return UNIT; // Ampere (internal standard electric current)
#line 60 "QuantityParser.l"
yylval = Quantity::Ampere; return UNIT; // Ampere (internal standard electric current)
YY_BREAK
case 24:
YY_RULE_SETUP
#line 60 "QuantityParser.l"
yylval = Quantity(0.001 ,Unit(0,0,0,1)); return UNIT; // milli Ampere
#line 61 "QuantityParser.l"
yylval = Quantity::MilliAmpere; return UNIT; // milli Ampere
YY_BREAK
case 25:
YY_RULE_SETUP
#line 61 "QuantityParser.l"
yylval = Quantity(1000.0 ,Unit(0,0,0,1)); return UNIT; // kilo Ampere
#line 62 "QuantityParser.l"
yylval = Quantity::KiloAmpere; return UNIT; // kilo Ampere
YY_BREAK
case 26:
YY_RULE_SETUP
#line 62 "QuantityParser.l"
yylval = Quantity(1.0e6 ,Unit(0,0,0,1)); return UNIT; // Mega Ampere
#line 63 "QuantityParser.l"
yylval = Quantity::MegaAmpere; return UNIT; // Mega Ampere
YY_BREAK
case 27:
YY_RULE_SETUP
#line 64 "QuantityParser.l"
yylval = Quantity(1.0 ,Unit(0,0,0,0,1)); return UNIT; // Kelvin (internal standard thermodynamic temperature)
#line 65 "QuantityParser.l"
yylval = Quantity::Kelvin; return UNIT; // Kelvin (internal standard thermodynamic temperature)
YY_BREAK
case 28:
YY_RULE_SETUP
#line 65 "QuantityParser.l"
yylval = Quantity(0.001 ,Unit(0,0,0,0,1)); return UNIT; // Kelvin
#line 66 "QuantityParser.l"
yylval = Quantity::MilliKelvin; return UNIT; // Kelvin
YY_BREAK
case 29:
YY_RULE_SETUP
#line 66 "QuantityParser.l"
yylval = Quantity(0.000001 ,Unit(0,0,0,0,1)); return UNIT; // Kelvin
#line 67 "QuantityParser.l"
yylval = Quantity::MicroKelvin; return UNIT; // Kelvin
YY_BREAK
case 30:
YY_RULE_SETUP
#line 68 "QuantityParser.l"
yylval = Quantity(1.0 ,Unit(0,0,0,0,0,1)); return UNIT; // Mole (internal standard amount of substance)
#line 69 "QuantityParser.l"
yylval = Quantity::Mole; return UNIT; // Mole (internal standard amount of substance)
YY_BREAK
case 31:
YY_RULE_SETUP
#line 70 "QuantityParser.l"
yylval = Quantity(1.0 ,Unit(0,0,0,0,0,0,1)); return UNIT; // Candela (internal standard luminous intensity)
#line 71 "QuantityParser.l"
yylval = Quantity::Candela; return UNIT; // Candela (internal standard luminous intensity)
YY_BREAK
case 32:
YY_RULE_SETUP
#line 72 "QuantityParser.l"
yylval = Quantity(1.0 ,Unit(0,0,0,0,0,0,0,1)); return UNIT; // degree (internal standard angle)
#line 73 "QuantityParser.l"
yylval = Quantity::Inch; return UNIT; // inch
YY_BREAK
case 33:
YY_RULE_SETUP
#line 73 "QuantityParser.l"
yylval = Quantity(180/M_PI ,Unit(0,0,0,0,0,0,0,1)); return UNIT; // radian
#line 74 "QuantityParser.l"
yylval = Quantity::Inch; return UNIT; // inch
YY_BREAK
case 34:
YY_RULE_SETUP
#line 74 "QuantityParser.l"
yylval = Quantity(360.0/400.0 ,Unit(0,0,0,0,0,0,0,1)); return UNIT; // gon
#line 75 "QuantityParser.l"
yylval = Quantity::Foot; return UNIT; // foot
YY_BREAK
case 35:
YY_RULE_SETUP
#line 76 "QuantityParser.l"
yylval = Quantity(25.4 ,Unit(1)); return UNIT; // inch
yylval = Quantity::Foot; return UNIT; // foot
YY_BREAK
case 36:
YY_RULE_SETUP
#line 77 "QuantityParser.l"
yylval = Quantity(25.4 ,Unit(1)); return UNIT; // inch
yylval = Quantity::Thou; return UNIT; // thou
YY_BREAK
case 37:
YY_RULE_SETUP
#line 78 "QuantityParser.l"
yylval = Quantity(304.8 ,Unit(1)); return UNIT; // foot
yylval = Quantity::Yard; return UNIT; // yard
YY_BREAK
case 38:
YY_RULE_SETUP
#line 79 "QuantityParser.l"
yylval = Quantity(304.8 ,Unit(1)); return UNIT; // foot
yylval = Quantity::Mile; return UNIT; // mile
YY_BREAK
case 39:
YY_RULE_SETUP
#line 80 "QuantityParser.l"
yylval = Quantity(0.0254 ,Unit(1)); return UNIT; // thou
#line 82 "QuantityParser.l"
yylval = Quantity::Pound; return UNIT; // pound
YY_BREAK
case 40:
YY_RULE_SETUP
#line 81 "QuantityParser.l"
yylval = Quantity(914.4 ,Unit(1)); return UNIT; // yard
#line 83 "QuantityParser.l"
yylval = Quantity::Ounce; return UNIT; // ounce
YY_BREAK
case 41:
YY_RULE_SETUP
#line 84 "QuantityParser.l"
yylval = Quantity(0.45359237 ,Unit(0,1)); return UNIT; // pound
yylval = Quantity::Stone; return UNIT; // Stone
YY_BREAK
case 42:
YY_RULE_SETUP
#line 85 "QuantityParser.l"
yylval = Quantity(0.45359237 ,Unit(0,1)); return UNIT; // ounce
yylval = Quantity::Hundredweights; return UNIT; // hundredweights
YY_BREAK
case 43:
YY_RULE_SETUP
#line 86 "QuantityParser.l"
yylval = Quantity(6.35029318 ,Unit(0,1)); return UNIT; // Stone
#line 87 "QuantityParser.l"
yylval = Quantity::Newton; return UNIT; // Newton (kg*m/s^2)
YY_BREAK
case 44:
YY_RULE_SETUP
#line 87 "QuantityParser.l"
yylval = Quantity(50.80234544 ,Unit(0,1)); return UNIT; // hundredweights
#line 88 "QuantityParser.l"
yylval = Quantity::KiloNewton; return UNIT; // Newton
YY_BREAK
case 45:
YY_RULE_SETUP
#line 89 "QuantityParser.l"
yylval = Quantity(1000.0 ,Unit(1,1,-2)); return UNIT; // Newton (kg*m/s^2)
yylval = Quantity::MegaNewton; return UNIT; // Newton
YY_BREAK
case 46:
YY_RULE_SETUP
#line 91 "QuantityParser.l"
yylval = Quantity(0.001 ,Unit(-1,1,-2)); return UNIT; // Pascal (kg/m*s^2)
#line 90 "QuantityParser.l"
yylval = Quantity::MilliNewton; return UNIT; // Newton
YY_BREAK
case 47:
YY_RULE_SETUP
#line 92 "QuantityParser.l"
yylval = Quantity(0.145038 ,Unit(-1,1,-2)); return UNIT; // pounds/in^2
yylval = Quantity::Pascal; return UNIT; // Pascal (kg/m*s^2 or N/m^2)
YY_BREAK
case 48:
YY_RULE_SETUP
#line 94 "QuantityParser.l"
yylval = Quantity(1e+6 ,Unit(2,1,-3)); return UNIT; // Watt (kg*m^2/s^3)
#line 93 "QuantityParser.l"
yylval = Quantity::KiloPascal; return UNIT; // Pascal
YY_BREAK
case 49:
YY_RULE_SETUP
#line 95 "QuantityParser.l"
yylval = Quantity(1e+6 ,Unit(2,1,-3)); return UNIT; // VoltAmpere (kg*m^2/s^3)
#line 94 "QuantityParser.l"
yylval = Quantity::MegaPascal; return UNIT; // Pascal
YY_BREAK
case 50:
YY_RULE_SETUP
#line 97 "QuantityParser.l"
yylval = Quantity(1e+6 ,Unit(2,1,-2)); return UNIT; // Joule (kg*m^2/s^2)
#line 95 "QuantityParser.l"
yylval = Quantity::GigaPascal; return UNIT; // Pascal
YY_BREAK
case 51:
YY_RULE_SETUP
#line 98 "QuantityParser.l"
yylval = Quantity(1e+6 ,Unit(2,1,-2)); return UNIT; // Joule (kg*m^2/s^2)
#line 97 "QuantityParser.l"
yylval = Quantity::PSI; return UNIT; // pounds/in^2
YY_BREAK
case 52:
YY_RULE_SETUP
#line 99 "QuantityParser.l"
yylval = Quantity(1e+6 ,Unit(2,1,-2)); return UNIT; // Joule (kg*m^2/s^2)
yylval = Quantity::Watt; return UNIT; // Watt (kg*m^2/s^3)
YY_BREAK
case 53:
YY_RULE_SETUP
#line 100 "QuantityParser.l"
yylval = Quantity(1e+6 ,Unit(2,1,-2)); return UNIT; // Joule (kg*m^2/s^2)
yylval = Quantity::VoltAmpere; return UNIT; // VoltAmpere (kg*m^2/s^3)
YY_BREAK
case 54:
YY_RULE_SETUP
#line 101 "QuantityParser.l"
yylval = Quantity(1e+6 ,Unit(2,1,-2)); return UNIT; // Joule (kg*m^2/s^2)
#line 102 "QuantityParser.l"
yylval = Quantity::Joul; return UNIT; // Joule (kg*m^2/s^2)
YY_BREAK
case 55:
YY_RULE_SETUP
#line 103 "QuantityParser.l"
{for(char* c=yytext;*c!='\0';c++)if(*c==',')*c='.'; yylval = atof( yytext ); return NUM;}
yylval = Quantity::NewtonMeter; return UNIT; // Joule (kg*m^2/s^2)
YY_BREAK
case 56:
YY_RULE_SETUP
#line 104 "QuantityParser.l"
{for(char* c=yytext;*c!='\0';c++)if(*c==',')*c='.'; yylval = atof( yytext ); return NUM;}
yylval = Quantity::VoltAmpereSecond; return UNIT; // Joule (kg*m^2/s^2)
YY_BREAK
case 57:
YY_RULE_SETUP
#line 105 "QuantityParser.l"
{yylval = atof( yytext ); return NUM;}
yylval = Quantity::WattSecond; return UNIT; // Joule (kg*m^2/s^2)
YY_BREAK
case 58:
YY_RULE_SETUP
#line 107 "QuantityParser.l"
{yylval = M_PI ; return NUM;} // constant pi
#line 106 "QuantityParser.l"
yylval = Quantity::WattSecond; return UNIT; // Joule (kg*m^2/s^2)
YY_BREAK
case 59:
YY_RULE_SETUP
#line 108 "QuantityParser.l"
{yylval = M_E ; return NUM;} // constant e
yylval = Quantity::Degree; return UNIT; // degree (internal standard angle)
YY_BREAK
case 60:
YY_RULE_SETUP
#line 110 "QuantityParser.l"
return ACOS;
#line 109 "QuantityParser.l"
yylval = Quantity::Radian; return UNIT; // radian
YY_BREAK
case 61:
YY_RULE_SETUP
#line 111 "QuantityParser.l"
return ASIN;
#line 110 "QuantityParser.l"
yylval = Quantity::Gon; return UNIT; // gon
YY_BREAK
case 62:
YY_RULE_SETUP
#line 112 "QuantityParser.l"
return ATAN;
{for(char* c=yytext;*c!='\0';c++)if(*c==',')*c='.'; yylval = atof( yytext ); return NUM;}
YY_BREAK
case 63:
YY_RULE_SETUP
#line 113 "QuantityParser.l"
return ATAN2;
{for(char* c=yytext;*c!='\0';c++)if(*c==',')*c='.'; yylval = atof( yytext ); return NUM;}
YY_BREAK
case 64:
YY_RULE_SETUP
#line 114 "QuantityParser.l"
return COS;
{yylval = atof( yytext ); return NUM;}
YY_BREAK
case 65:
YY_RULE_SETUP
#line 115 "QuantityParser.l"
return EXP;
#line 116 "QuantityParser.l"
{yylval = M_PI ; return NUM;} // constant pi
YY_BREAK
case 66:
YY_RULE_SETUP
#line 116 "QuantityParser.l"
return ABS;
#line 117 "QuantityParser.l"
{yylval = M_E ; return NUM;} // constant e
YY_BREAK
case 67:
YY_RULE_SETUP
#line 117 "QuantityParser.l"
return MOD;
#line 119 "QuantityParser.l"
return ACOS;
YY_BREAK
case 68:
YY_RULE_SETUP
#line 118 "QuantityParser.l"
return LOG;
#line 120 "QuantityParser.l"
return ASIN;
YY_BREAK
case 69:
YY_RULE_SETUP
#line 119 "QuantityParser.l"
return LOG10;
#line 121 "QuantityParser.l"
return ATAN;
YY_BREAK
case 70:
YY_RULE_SETUP
#line 120 "QuantityParser.l"
return POW;
#line 122 "QuantityParser.l"
return ATAN2;
YY_BREAK
case 71:
YY_RULE_SETUP
#line 121 "QuantityParser.l"
return SIN;
#line 123 "QuantityParser.l"
return COS;
YY_BREAK
case 72:
YY_RULE_SETUP
#line 122 "QuantityParser.l"
return SINH;
#line 124 "QuantityParser.l"
return EXP;
YY_BREAK
case 73:
YY_RULE_SETUP
#line 123 "QuantityParser.l"
return TAN;
#line 125 "QuantityParser.l"
return ABS;
YY_BREAK
case 74:
YY_RULE_SETUP
#line 124 "QuantityParser.l"
return TANH;
#line 126 "QuantityParser.l"
return MOD;
YY_BREAK
case 75:
YY_RULE_SETUP
#line 125 "QuantityParser.l"
return SQRT;
#line 127 "QuantityParser.l"
return LOG;
YY_BREAK
case 76:
YY_RULE_SETUP
#line 127 "QuantityParser.l"
#line 128 "QuantityParser.l"
return LOG10;
YY_BREAK
case 77:
YY_RULE_SETUP
#line 129 "QuantityParser.l"
return POW;
YY_BREAK
case 78:
YY_RULE_SETUP
#line 130 "QuantityParser.l"
return SIN;
YY_BREAK
case 79:
YY_RULE_SETUP
#line 131 "QuantityParser.l"
return SINH;
YY_BREAK
case 80:
YY_RULE_SETUP
#line 132 "QuantityParser.l"
return TAN;
YY_BREAK
case 81:
YY_RULE_SETUP
#line 133 "QuantityParser.l"
return TANH;
YY_BREAK
case 82:
YY_RULE_SETUP
#line 134 "QuantityParser.l"
return SQRT;
YY_BREAK
case 83:
YY_RULE_SETUP
#line 136 "QuantityParser.l"
ECHO;
YY_BREAK
#line 1197 "QuantityLexer.c"
#line 1237 "QuantityLexer.c"
case YY_STATE_EOF(INITIAL):
case YY_STATE_EOF(C_COMMENT):
yyterminate();
@ -1487,7 +1527,7 @@ static int yy_get_next_buffer (void)
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
if ( yy_current_state >= 126 )
if ( yy_current_state >= 138 )
yy_c = yy_meta[(unsigned int) yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
@ -1515,11 +1555,11 @@ static int yy_get_next_buffer (void)
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
if ( yy_current_state >= 126 )
if ( yy_current_state >= 138 )
yy_c = yy_meta[(unsigned int) yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
yy_is_jam = (yy_current_state == 125);
yy_is_jam = (yy_current_state == 137);
return yy_is_jam ? 0 : yy_current_state;
}
@ -2152,4 +2192,4 @@ void yyfree (void * ptr )
#define YYTABLES_NAME "yytables"
#line 127 "QuantityParser.l"
#line 136 "QuantityParser.l"

View File

@ -37,68 +37,77 @@ ID [a-z][a-z0-9]*
[-+()=/*^] { return *yytext; }
"nm" yylval = Quantity(1.0e-6 ,Unit(1)); return UNIT; // nano meter
"ym" yylval = Quantity(1.0e-3 ,Unit(1)); return UNIT; // micro meter
"mm" yylval = Quantity(1.0 ,Unit(1)); return UNIT; // milli meter
"cm" yylval = Quantity(10.0 ,Unit(1)); return UNIT; // centi meter
"dm" yylval = Quantity(100.0 ,Unit(1)); return UNIT; // deci meter
"m" yylval = Quantity(1.0e3 ,Unit(1)); return UNIT; // meter
"km" yylval = Quantity(1.0e6 ,Unit(1)); return UNIT; // kilo meter
"l" yylval = Quantity(1000000.0 ,Unit(3)); return UNIT; // Liter dm^3
"nm" yylval = Quantity::NanoMeter; return UNIT; // nano meter
"ym" yylval = Quantity::MicroMeter; return UNIT; // micro meter
"mm" yylval = Quantity::MilliMeter; return UNIT; // milli meter (internal standard length)
"cm" yylval = Quantity::CentiMeter; return UNIT; // centi meter
"dm" yylval = Quantity::DeciMeter; return UNIT; // deci meter
"m" yylval = Quantity::Meter; return UNIT; // meter
"km" yylval = Quantity::KiloMeter; return UNIT; // kilo meter
"yg" yylval = Quantity(1.0e-9 ,Unit(0,1)); return UNIT; // milli gram
"mg" yylval = Quantity(1.0e-6 ,Unit(0,1)); return UNIT; // milli gram
"g" yylval = Quantity(1.0e-3 ,Unit(0,1)); return UNIT; // gram
"kg" yylval = Quantity(1.0 ,Unit(0,1)); return UNIT; // kilo gram (internal standard for mass)
"t" yylval = Quantity(1000.0 ,Unit(0,1)); return UNIT; // ton
"s" yylval = Quantity(1.0 ,Unit(0,0,1)); return UNIT; // second (internal standard time)
"min" yylval = Quantity(60.0 ,Unit(0,0,1)); return UNIT; // minute
"h" yylval = Quantity(3600.0 ,Unit(0,0,1)); return UNIT; // hour
"A" yylval = Quantity(1.0 ,Unit(0,0,0,1)); return UNIT; // Ampere (internal standard electric current)
"mA" yylval = Quantity(0.001 ,Unit(0,0,0,1)); return UNIT; // milli Ampere
"kA" yylval = Quantity(1000.0 ,Unit(0,0,0,1)); return UNIT; // kilo Ampere
"MA" yylval = Quantity(1.0e6 ,Unit(0,0,0,1)); return UNIT; // Mega Ampere
"K" yylval = Quantity(1.0 ,Unit(0,0,0,0,1)); return UNIT; // Kelvin (internal standard thermodynamic temperature)
"mK" yylval = Quantity(0.001 ,Unit(0,0,0,0,1)); return UNIT; // Kelvin
"yK" yylval = Quantity(0.000001 ,Unit(0,0,0,0,1)); return UNIT; // Kelvin
"mol" yylval = Quantity(1.0 ,Unit(0,0,0,0,0,1)); return UNIT; // Mole (internal standard amount of substance)
"cd" yylval = Quantity(1.0 ,Unit(0,0,0,0,0,0,1)); return UNIT; // Candela (internal standard luminous intensity)
"deg" yylval = Quantity(1.0 ,Unit(0,0,0,0,0,0,0,1)); return UNIT; // degree (internal standard angle)
"rad" yylval = Quantity(180/M_PI ,Unit(0,0,0,0,0,0,0,1)); return UNIT; // radian
"gon" yylval = Quantity(360.0/400.0 ,Unit(0,0,0,0,0,0,0,1)); return UNIT; // gon
"in" yylval = Quantity(25.4 ,Unit(1)); return UNIT; // inch
"\"" yylval = Quantity(25.4 ,Unit(1)); return UNIT; // inch
"fo" yylval = Quantity(304.8 ,Unit(1)); return UNIT; // foot
"'" yylval = Quantity(304.8 ,Unit(1)); return UNIT; // foot
"th" yylval = Quantity(0.0254 ,Unit(1)); return UNIT; // thou
"yr" yylval = Quantity(914.4 ,Unit(1)); return UNIT; // yard
"lb" yylval = Quantity(0.45359237 ,Unit(0,1)); return UNIT; // pound
"oz" yylval = Quantity(0.45359237 ,Unit(0,1)); return UNIT; // ounce
"st" yylval = Quantity(6.35029318 ,Unit(0,1)); return UNIT; // Stone
"cwt" yylval = Quantity(50.80234544 ,Unit(0,1)); return UNIT; // hundredweights
"N" yylval = Quantity(1000.0 ,Unit(1,1,-2)); return UNIT; // Newton (kg*m/s^2)
"l" yylval = Quantity::Liter; return UNIT; // Liter dm^3
"Pa" yylval = Quantity(0.001 ,Unit(-1,1,-2)); return UNIT; // Pascal (kg/m*s^2)
"psi" yylval = Quantity(0.145038 ,Unit(-1,1,-2)); return UNIT; // pounds/in^2
"W" yylval = Quantity(1e+6 ,Unit(2,1,-3)); return UNIT; // Watt (kg*m^2/s^3)
"VA" yylval = Quantity(1e+6 ,Unit(2,1,-3)); return UNIT; // VoltAmpere (kg*m^2/s^3)
"J" yylval = Quantity(1e+6 ,Unit(2,1,-2)); return UNIT; // Joule (kg*m^2/s^2)
"Nm" yylval = Quantity(1e+6 ,Unit(2,1,-2)); return UNIT; // Joule (kg*m^2/s^2)
"VAs" yylval = Quantity(1e+6 ,Unit(2,1,-2)); return UNIT; // Joule (kg*m^2/s^2)
"CV" yylval = Quantity(1e+6 ,Unit(2,1,-2)); return UNIT; // Joule (kg*m^2/s^2)
"Ws" yylval = Quantity(1e+6 ,Unit(2,1,-2)); return UNIT; // Joule (kg*m^2/s^2)
"yg" yylval = Quantity::MicroGram; return UNIT; // micro gram
"mg" yylval = Quantity::MilliGram; return UNIT; // milli gram
"g" yylval = Quantity::Gram; return UNIT; // gram
"kg" yylval = Quantity::KiloGram; return UNIT; // kilo gram (internal standard for mass)
"t" yylval = Quantity::Ton; return UNIT; // ton
"s" yylval = Quantity::Second; return UNIT; // second (internal standard time)
"min" yylval = Quantity::Minut; return UNIT; // minute
"h" yylval = Quantity::Hour; return UNIT; // hour
"A" yylval = Quantity::Ampere; return UNIT; // Ampere (internal standard electric current)
"mA" yylval = Quantity::MilliAmpere; return UNIT; // milli Ampere
"kA" yylval = Quantity::KiloAmpere; return UNIT; // kilo Ampere
"MA" yylval = Quantity::MegaAmpere; return UNIT; // Mega Ampere
"K" yylval = Quantity::Kelvin; return UNIT; // Kelvin (internal standard thermodynamic temperature)
"mK" yylval = Quantity::MilliKelvin; return UNIT; // Kelvin
"yK" yylval = Quantity::MicroKelvin; return UNIT; // Kelvin
"mol" yylval = Quantity::Mole; return UNIT; // Mole (internal standard amount of substance)
"cd" yylval = Quantity::Candela; return UNIT; // Candela (internal standard luminous intensity)
"in" yylval = Quantity::Inch; return UNIT; // inch
"\"" yylval = Quantity::Inch; return UNIT; // inch
"fo" yylval = Quantity::Foot; return UNIT; // foot
"'" yylval = Quantity::Foot; return UNIT; // foot
"th" yylval = Quantity::Thou; return UNIT; // thou
"yr" yylval = Quantity::Yard; return UNIT; // yard
"mile" yylval = Quantity::Mile; return UNIT; // mile
"lb" yylval = Quantity::Pound; return UNIT; // pound
"oz" yylval = Quantity::Ounce; return UNIT; // ounce
"st" yylval = Quantity::Stone; return UNIT; // Stone
"cwt" yylval = Quantity::Hundredweights; return UNIT; // hundredweights
"N" yylval = Quantity::Newton; return UNIT; // Newton (kg*m/s^2)
"kN" yylval = Quantity::KiloNewton; return UNIT; // Newton
"MN" yylval = Quantity::MegaNewton; return UNIT; // Newton
"mN" yylval = Quantity::MilliNewton; return UNIT; // Newton
"Pa" yylval = Quantity::Pascal; return UNIT; // Pascal (kg/m*s^2 or N/m^2)
"kPa" yylval = Quantity::KiloPascal; return UNIT; // Pascal
"MPa" yylval = Quantity::MegaPascal; return UNIT; // Pascal
"GPa" yylval = Quantity::GigaPascal; return UNIT; // Pascal
"psi" yylval = Quantity::PSI; return UNIT; // pounds/in^2
"W" yylval = Quantity::Watt; return UNIT; // Watt (kg*m^2/s^3)
"VA" yylval = Quantity::VoltAmpere; return UNIT; // VoltAmpere (kg*m^2/s^3)
"J" yylval = Quantity::Joul; return UNIT; // Joule (kg*m^2/s^2)
"Nm" yylval = Quantity::NewtonMeter; return UNIT; // Joule (kg*m^2/s^2)
"VAs" yylval = Quantity::VoltAmpereSecond; return UNIT; // Joule (kg*m^2/s^2)
"CV" yylval = Quantity::WattSecond; return UNIT; // Joule (kg*m^2/s^2)
"Ws" yylval = Quantity::WattSecond; return UNIT; // Joule (kg*m^2/s^2)
"deg" yylval = Quantity::Degree; return UNIT; // degree (internal standard angle)
"rad" yylval = Quantity::Radian; return UNIT; // radian
"gon" yylval = Quantity::Gon; return UNIT; // gon
{DIGIT}+["."","]{DIGIT}*[eE][-+]?[0-9]+ {for(char* c=yytext;*c!='\0';c++)if(*c==',')*c='.'; yylval = atof( yytext ); return NUM;}
{DIGIT}+["."","]{DIGIT}* {for(char* c=yytext;*c!='\0';c++)if(*c==',')*c='.'; yylval = atof( yytext ); return NUM;}

View File

@ -58,5 +58,15 @@ Quantity(string) -- arbitrary mixture of numbers and chars defining a Quantity
</Documentation>
<Parameter Name="UserString" Type="String" />
</Attribute>
</PythonExport>
<Attribute Name="NanoMeter" ReadOnly="true">
<Documentation>
<UserDocu>Definition of NanoMeter </UserDocu>
</Documentation>
<Parameter Name="NanoMeter" Type="Object" />
</Attribute>
</PythonExport>
</GenerateModel>

View File

@ -33,10 +33,17 @@ int QuantityPy::PyInit(PyObject* args, PyObject* kwd)
Quantity *self = getQuantityPtr();
double f = DOUBLE_MAX;
if (PyArg_ParseTuple(args, "|d", &f)) {
int i1=0;
int i2=0;
int i3=0;
int i4=0;
int i5=0;
int i6=0;
int i7=0;
int i8=0;
if (PyArg_ParseTuple(args, "|diiiiiiii", &f,&i1,&i2,&i3,&i4,&i5,&i6,&i7,&i8)) {
if(f!=DOUBLE_MAX)
*self = Quantity(f);
*self = Quantity(f,Unit(i1,i2,i3,i4,i5,i6,i7,i8));
return 0;
}
PyErr_Clear(); // set by PyArg_ParseTuple()
@ -170,4 +177,14 @@ int QuantityPy::setCustomAttributes(const char* /*attr*/, PyObject* /*obj*/)
return 0;
}
// All the standard unit definitions ===============================
Py::Object QuantityPy::getNanoMeter(void) const
{
return Py::Object(new QuantityPy(new Quantity(Quantity::NanoMeter)));
}

View File

@ -94,7 +94,7 @@ public:
static Unit ElectricCurrent;
static Unit AmountOfSubstance;
static Unit LuminoseIntensity;
//@}
protected:
UnitSignature Sig;
};

View File

@ -48,7 +48,9 @@ DlgUnitsCalculator::DlgUnitsCalculator( QWidget* parent, Qt::WFlags fl )
this->setAttribute(Qt::WA_DeleteOnClose);
connect(this->ValueInput, SIGNAL(valueChanged(Base::Quantity)), this, SLOT(valueChanged(Base::Quantity)));
connect(this->ValueInput, SIGNAL(returnPressed () ), this, SLOT(returnPressed()));
connect(this->UnitInput, SIGNAL(valueChanged(Base::Quantity)), this, SLOT(unitValueChanged(Base::Quantity)));
connect(this->UnitInput, SIGNAL(returnPressed()), this, SLOT(returnPressed()));
connect(this->pushButton_Help, SIGNAL(clicked()), this, SLOT(help()));
connect(this->pushButton_Close, SIGNAL(clicked()), this, SLOT(accept()));
@ -131,6 +133,10 @@ void DlgUnitsCalculator::help(void)
//TODO: call help page Std_UnitsCalculator
}
void DlgUnitsCalculator::returnPressed(void)
{
this->textEdit->append(this->ValueInput->text() + QString::fromAscii(" = ") + this->ValueOutput->text());
}

View File

@ -51,6 +51,7 @@ protected Q_SLOTS:
void copy(void);
void help(void);
void returnPressed(void);
void parseError(const QString& errorText);
@ -58,6 +59,7 @@ private:
Base::Quantity actValue;
Base::Quantity actUnit;
};
} // namespace Dialog

View File

@ -545,8 +545,8 @@
guidetolerance="1px"
stroke="#729fcf"
inkscape:window-width="1280"
inkscape:window-height="964"
inkscape:window-x="-2"
inkscape:window-height="1004"
inkscape:window-x="1278"
inkscape:window-y="-3"
showborder="true"
inkscape:showpageshadow="false"
@ -647,7 +647,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
<dc:title />
<dc:creator>
<cc:Agent>
<dc:title>Lapo Calamandrei</dc:title>
@ -695,13 +695,6 @@
inkscape:r_cx="true"
inkscape:r_cy="true"
transform="translate(0,16)">
<path
inkscape:r_cy="true"
inkscape:r_cx="true"
style="color:#000000;fill:none;stroke:url(#linearGradient3421);stroke-width:0.99999976;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible"
d="m 46.835187,-8.2560327 0,18.9999997 18.001183,0 0,-18.9999997 -18.001183,0 z"
id="path2811"
inkscape:connector-curvature="0" />
<path
style="fill:none;stroke:#000000;stroke-width:2.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="m 10.002442,2.4224664 0.156288,59.0769236 43.135531,0 0.156288,-50.168499 -10.94017,0 -0.156288,-8.9084246 z"

Before

Width:  |  Height:  |  Size: 23 KiB

After

Width:  |  Height:  |  Size: 23 KiB

View File

@ -555,8 +555,8 @@
guidetolerance="1px"
stroke="#729fcf"
inkscape:window-width="1280"
inkscape:window-height="964"
inkscape:window-x="-2"
inkscape:window-height="1004"
inkscape:window-x="1278"
inkscape:window-y="-3"
showborder="true"
inkscape:showpageshadow="false"
@ -657,7 +657,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
<dc:title />
<dc:creator>
<cc:Agent>
<dc:title>Lapo Calamandrei</dc:title>
@ -705,13 +705,6 @@
inkscape:r_cx="true"
inkscape:r_cy="true"
transform="translate(0,16)">
<path
inkscape:r_cy="true"
inkscape:r_cx="true"
style="color:#000000;fill:none;stroke:url(#linearGradient3421);stroke-width:0.99999976;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible"
d="m 46.835187,-8.2560327 0,18.9999997 18.001183,0 0,-18.9999997 -18.001183,0 z"
id="path2811"
inkscape:connector-curvature="0" />
<path
sodipodi:type="arc"
style="fill:#000000;fill-opacity:0.80784314;fill-rule:nonzero;stroke:#000000;stroke-width:1.68299997;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
@ -720,7 +713,7 @@
sodipodi:cy="26.490843"
sodipodi:rx="14.691087"
sodipodi:ry="6.8766789"
d="m 44.698413,26.490843 a 14.691087,6.8766789 0 1 1 -1.89e-4,-0.03487"
d="m 44.698413,26.490843 c 0,3.797885 -6.577424,6.876679 -14.691087,6.876679 -8.113663,0 -14.691087,-3.078794 -14.691087,-6.876679 0,-3.797885 6.577424,-6.876679 14.691087,-6.876679 8.084583,0 14.649898,3.05758 14.690898,6.841805"
transform="matrix(0.85575662,0,0,0.57327019,5.8540085,-6.7772426)"
sodipodi:start="0"
sodipodi:end="6.2781139"

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 24 KiB

View File

@ -545,8 +545,8 @@
guidetolerance="1px"
stroke="#729fcf"
inkscape:window-width="1280"
inkscape:window-height="964"
inkscape:window-x="-2"
inkscape:window-height="1004"
inkscape:window-x="1278"
inkscape:window-y="-3"
showborder="true"
inkscape:showpageshadow="false"
@ -647,7 +647,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
<dc:title />
<dc:creator>
<cc:Agent>
<dc:title>Lapo Calamandrei</dc:title>
@ -701,13 +701,6 @@
id="path4222-5"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cccccccc" />
<path
inkscape:r_cy="true"
inkscape:r_cx="true"
style="color:#000000;fill:none;stroke:url(#linearGradient3421);stroke-width:0.99999976;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible"
d="m 46.835187,-8.2560327 0,18.9999997 18.001183,0 0,-18.9999997 -18.001183,0 z"
id="path2811"
inkscape:connector-curvature="0" />
<path
sodipodi:type="arc"
style="fill:#000000;fill-opacity:0.80784314;fill-rule:nonzero;stroke:#000000;stroke-width:1.68299997;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
@ -716,7 +709,7 @@
sodipodi:cy="26.490843"
sodipodi:rx="14.691087"
sodipodi:ry="6.8766789"
d="m 44.698413,26.490843 a 14.691087,6.8766789 0 1 1 -1.89e-4,-0.03487"
d="m 44.698413,26.490843 c 0,3.797885 -6.577424,6.876679 -14.691087,6.876679 -8.113663,0 -14.691087,-3.078794 -14.691087,-6.876679 0,-3.797885 6.577424,-6.876679 14.691087,-6.876679 8.084583,0 14.649898,3.05758 14.690898,6.841805"
transform="matrix(0.85575662,0,0,0.57327019,5.8540085,-6.7772426)"
sodipodi:start="0"
sodipodi:end="6.2781139"

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 24 KiB

View File

@ -545,8 +545,8 @@
guidetolerance="1px"
stroke="#729fcf"
inkscape:window-width="1280"
inkscape:window-height="964"
inkscape:window-x="-2"
inkscape:window-height="1004"
inkscape:window-x="1278"
inkscape:window-y="-3"
showborder="true"
inkscape:showpageshadow="false"
@ -647,7 +647,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
<dc:title />
<dc:creator>
<cc:Agent>
<dc:title>Lapo Calamandrei</dc:title>
@ -695,13 +695,6 @@
inkscape:r_cx="true"
inkscape:r_cy="true"
transform="translate(0,16)">
<path
inkscape:r_cy="true"
inkscape:r_cx="true"
style="color:#000000;fill:none;stroke:url(#linearGradient3421);stroke-width:0.99999976;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible"
d="m 46.835187,-8.2560327 0,18.9999997 18.001183,0 0,-18.9999997 -18.001183,0 z"
id="path2811"
inkscape:connector-curvature="0" />
<path
sodipodi:type="arc"
style="fill:#000000;fill-opacity:0.80784314;fill-rule:nonzero;stroke:#000000;stroke-width:1.68299997;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
@ -710,7 +703,7 @@
sodipodi:cy="26.490843"
sodipodi:rx="14.691087"
sodipodi:ry="6.8766789"
d="m 44.698413,26.490843 a 14.691087,6.8766789 0 1 1 -1.89e-4,-0.03487"
d="m 44.698413,26.490843 c 0,3.797885 -6.577424,6.876679 -14.691087,6.876679 -8.113663,0 -14.691087,-3.078794 -14.691087,-6.876679 0,-3.797885 6.577424,-6.876679 14.691087,-6.876679 8.084583,0 14.649898,3.05758 14.690898,6.841805"
transform="matrix(0.85575662,0,0,0.57327019,5.8540085,-6.7772426)"
sodipodi:start="0"
sodipodi:end="6.2781139"

Before

Width:  |  Height:  |  Size: 23 KiB

After

Width:  |  Height:  |  Size: 23 KiB

View File

@ -545,8 +545,8 @@
guidetolerance="1px"
stroke="#729fcf"
inkscape:window-width="1280"
inkscape:window-height="964"
inkscape:window-x="-2"
inkscape:window-height="1004"
inkscape:window-x="1278"
inkscape:window-y="-3"
showborder="true"
inkscape:showpageshadow="false"
@ -695,13 +695,6 @@
inkscape:r_cx="true"
inkscape:r_cy="true"
transform="translate(0,16)">
<path
inkscape:r_cy="true"
inkscape:r_cx="true"
style="color:#000000;fill:none;stroke:url(#linearGradient3421);stroke-width:0.99999976;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible"
d="m 46.835187,-8.2560327 0,18.9999997 18.001183,0 0,-18.9999997 -18.001183,0 z"
id="path2811"
inkscape:connector-curvature="0" />
<path
sodipodi:type="arc"
style="fill:#000000;fill-opacity:0.80784314;fill-rule:nonzero;stroke:#000000;stroke-width:1.68299997;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 23 KiB

View File

@ -545,8 +545,8 @@
guidetolerance="1px"
stroke="#729fcf"
inkscape:window-width="1280"
inkscape:window-height="964"
inkscape:window-x="-2"
inkscape:window-height="1004"
inkscape:window-x="1278"
inkscape:window-y="-3"
showborder="true"
inkscape:showpageshadow="false"
@ -647,7 +647,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
<dc:title />
<dc:creator>
<cc:Agent>
<dc:title>Lapo Calamandrei</dc:title>
@ -695,13 +695,6 @@
inkscape:r_cx="true"
inkscape:r_cy="true"
transform="translate(0,16)">
<path
inkscape:r_cy="true"
inkscape:r_cx="true"
style="color:#000000;fill:none;stroke:url(#linearGradient3421);stroke-width:0.99999976;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible"
d="m 46.835187,-8.2560327 0,18.9999997 18.001183,0 0,-18.9999997 -18.001183,0 z"
id="path2811"
inkscape:connector-curvature="0" />
<path
sodipodi:type="arc"
style="fill:#000000;fill-opacity:0.80784314;fill-rule:nonzero;stroke:#000000;stroke-width:1.68299997;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 23 KiB

View File

@ -531,9 +531,9 @@
borderopacity="0.19607843"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="6.3984375"
inkscape:cx="21.496455"
inkscape:cy="11.906705"
inkscape:zoom="13"
inkscape:cx="32"
inkscape:cy="32"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:grid-bbox="true"
@ -545,8 +545,8 @@
guidetolerance="1px"
stroke="#729fcf"
inkscape:window-width="1280"
inkscape:window-height="964"
inkscape:window-x="-2"
inkscape:window-height="1004"
inkscape:window-x="1278"
inkscape:window-y="-3"
showborder="true"
inkscape:showpageshadow="false"
@ -647,7 +647,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
<dc:title />
<dc:creator>
<cc:Agent>
<dc:title>Lapo Calamandrei</dc:title>
@ -702,13 +702,6 @@
d="m 36.083267,30.538509 -7.032696,-0.03137 0.02385,4.684398 -4.218964,0.146053 7.829105,7.842237 7.795073,-7.632419 -4.220336,-0.164137 z"
style="fill:#6dff00;fill-opacity:0.99215686;stroke:#31d900;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline"
inkscape:transform-center-y="-2.3443223" />
<path
inkscape:r_cy="true"
inkscape:r_cx="true"
style="color:#000000;fill:none;stroke:url(#linearGradient3421);stroke-width:0.99999976;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible"
d="m 46.835187,-8.2560327 0,18.9999997 18.001183,0 0,-18.9999997 -18.001183,0 z"
id="path2811"
inkscape:connector-curvature="0" />
<path
sodipodi:type="arc"
style="fill:#000000;fill-opacity:0.80784314;fill-rule:nonzero;stroke:#000000;stroke-width:1.68299997;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
@ -717,7 +710,7 @@
sodipodi:cy="26.490843"
sodipodi:rx="14.691087"
sodipodi:ry="6.8766789"
d="m 44.698413,26.490843 a 14.691087,6.8766789 0 1 1 -1.89e-4,-0.03487"
d="m 44.698413,26.490843 c 0,3.797885 -6.577424,6.876679 -14.691087,6.876679 -8.113663,0 -14.691087,-3.078794 -14.691087,-6.876679 0,-3.797885 6.577424,-6.876679 14.691087,-6.876679 8.084583,0 14.649898,3.05758 14.690898,6.841805"
transform="matrix(0.85575662,0,0,0.57327019,5.8540085,-6.7772426)"
sodipodi:start="0"
sodipodi:end="6.2781139"

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 23 KiB

View File

@ -15,7 +15,7 @@
id="svg1307"
sodipodi:version="0.32"
inkscape:version="0.48.3.1 r9886"
sodipodi:docname="macro-stop.svg"
sodipodi:docname="add.svg"
inkscape:export-filename="/home/lapo/Desktop/Grafica/Icone/media-actions-outlines.png"
inkscape:export-xdpi="90"
inkscape:export-ydpi="90"
@ -488,9 +488,9 @@
borderopacity="0.19607843"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="6.3984375"
inkscape:cx="45.642975"
inkscape:cy="11.906705"
inkscape:zoom="13"
inkscape:cx="32"
inkscape:cy="32"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:grid-bbox="true"
@ -502,8 +502,8 @@
guidetolerance="1px"
stroke="#729fcf"
inkscape:window-width="1280"
inkscape:window-height="964"
inkscape:window-x="-2"
inkscape:window-height="1004"
inkscape:window-x="1278"
inkscape:window-y="-3"
showborder="true"
inkscape:showpageshadow="false"
@ -604,7 +604,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
<dc:title />
<dc:creator>
<cc:Agent>
<dc:title>Lapo Calamandrei</dc:title>
@ -652,13 +652,6 @@
inkscape:r_cx="true"
inkscape:r_cy="true"
transform="translate(0,16)">
<path
inkscape:r_cy="true"
inkscape:r_cx="true"
style="color:#000000;fill:none;stroke:url(#linearGradient3421);stroke-width:0.99999976;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible"
d="m 46.835187,-8.2560327 0,18.9999997 18.001183,0 0,-18.9999997 -18.001183,0 z"
id="path2811"
inkscape:connector-curvature="0" />
<path
inkscape:r_cy="true"
inkscape:r_cx="true"
@ -683,7 +676,7 @@
sodipodi:cy="63.257629"
sodipodi:rx="25.396826"
sodipodi:ry="1.8363858"
d="m 57.904764,63.257629 a 25.396826,1.8363858 0 1 1 -50.7936514,0 25.396826,1.8363858 0 1 1 50.7936514,0 z"
d="m 57.904764,63.257629 c 0,1.014208 -11.370546,1.836386 -25.396826,1.836386 -14.026279,0 -25.3968254,-0.822178 -25.3968254,-1.836386 0,-1.014208 11.3705464,-1.836385 25.3968254,-1.836385 14.02628,0 25.396826,0.822177 25.396826,1.836385 z"
transform="matrix(1,0,0,0.92797168,-0.62515263,-13.35819)" />
</g>
</svg>

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 21 KiB

View File

@ -478,9 +478,9 @@
borderopacity="0.19607843"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="6.3984375"
inkscape:cx="21.496455"
inkscape:cy="12.062993"
inkscape:zoom="13"
inkscape:cx="32"
inkscape:cy="32"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:grid-bbox="true"
@ -492,8 +492,8 @@
guidetolerance="1px"
stroke="#729fcf"
inkscape:window-width="1280"
inkscape:window-height="964"
inkscape:window-x="-2"
inkscape:window-height="1004"
inkscape:window-x="1278"
inkscape:window-y="-3"
showborder="true"
inkscape:showpageshadow="false"
@ -642,13 +642,6 @@
inkscape:r_cx="true"
inkscape:r_cy="true"
transform="translate(0,16)">
<path
inkscape:r_cy="true"
inkscape:r_cx="true"
style="color:#000000;fill:none;stroke:url(#linearGradient3421);stroke-width:0.99999976;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible"
d="m 46.835187,-8.2560327 0,18.9999997 18.001183,0 0,-18.9999997 -18.001183,0 z"
id="path2811"
inkscape:connector-curvature="0" />
<path
sodipodi:type="arc"
style="fill:url(#radialGradient4160);fill-opacity:1;fill-rule:nonzero;stroke:#ff0000;stroke-opacity:1;stroke-width:2.86336424000000012;stroke-miterlimit:4;stroke-dasharray:none"

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 19 KiB

View File

@ -577,9 +577,9 @@
borderopacity="0.19607843"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="6.3984375"
inkscape:cx="21.496455"
inkscape:cy="12.062994"
inkscape:zoom="13"
inkscape:cx="32"
inkscape:cy="32"
inkscape:current-layer="layer1"
showgrid="false"
inkscape:grid-bbox="true"
@ -591,8 +591,8 @@
guidetolerance="1px"
stroke="#729fcf"
inkscape:window-width="1280"
inkscape:window-height="964"
inkscape:window-x="-2"
inkscape:window-height="1004"
inkscape:window-x="1278"
inkscape:window-y="-3"
showborder="true"
inkscape:showpageshadow="false"
@ -693,7 +693,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
<dc:title />
<dc:creator>
<cc:Agent>
<dc:title>Lapo Calamandrei</dc:title>
@ -741,13 +741,6 @@
inkscape:r_cx="true"
inkscape:r_cy="true"
transform="translate(0,16)">
<path
inkscape:r_cy="true"
inkscape:r_cx="true"
style="color:#000000;fill:none;stroke:url(#linearGradient3421);stroke-width:0.99999976;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible"
d="m 46.835187,-8.2560327 0,18.9999997 18.001183,0 0,-18.9999997 -18.001183,0 z"
id="path2811"
inkscape:connector-curvature="0" />
<path
style="fill:none;stroke:#16eae2;stroke-width:2.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
d="M 31.668466,-3.9976787 58.160623,19.352312 33.479002,44.322621 6.0274962,20.091817 z"
@ -769,7 +762,7 @@
sodipodi:cy="18.363859"
sodipodi:rx="18.50662"
sodipodi:ry="18.515989"
d="m 65.080492,18.363859 a 18.50662,18.515989 0 1 1 -37.013241,0 18.50662,18.515989 0 1 1 37.013241,0 z"
d="m 65.080492,18.363859 c 0,10.226099 -8.285696,18.515989 -18.50662,18.515989 -10.220925,0 -18.506621,-8.28989 -18.506621,-18.515989 0,-10.2260983 8.285696,-18.51598913 18.506621,-18.51598913 10.220924,0 18.50662,8.28989083 18.50662,18.51598913 z"
transform="matrix(0.94422953,0,0,0.92687034,-11.937353,-14.344481)" />
<path
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
@ -812,7 +805,7 @@
sodipodi:cy="18.363859"
sodipodi:rx="18.50662"
sodipodi:ry="18.515989"
d="m 65.080492,18.363859 a 18.50662,18.515989 0 1 1 -37.013241,0 18.50662,18.515989 0 1 1 37.013241,0 z"
d="m 65.080492,18.363859 c 0,10.226099 -8.285696,18.515989 -18.50662,18.515989 -10.220925,0 -18.506621,-8.28989 -18.506621,-18.515989 0,-10.2260983 8.285696,-18.51598913 18.506621,-18.51598913 10.220924,0 18.50662,8.28989083 18.50662,18.51598913 z"
transform="matrix(0.94422953,0,0,0.92687034,-12.015495,-13.797473)" />
<path
sodipodi:type="arc"
@ -822,7 +815,7 @@
sodipodi:cy="30.241758"
sodipodi:rx="2.6568987"
sodipodi:ry="2.5006106"
d="m 35.78999,30.241758 a 2.6568987,2.5006106 0 1 1 -5.313798,0 2.6568987,2.5006106 0 1 1 5.313798,0 z"
d="m 35.78999,30.241758 c 0,1.381049 -1.189534,2.500611 -2.656899,2.500611 -1.467365,0 -2.656899,-1.119562 -2.656899,-2.500611 0,-1.381049 1.189534,-2.50061 2.656899,-2.50061 1.467365,0 2.656899,1.119561 2.656899,2.50061 z"
transform="matrix(0.955753,0,0,0.89048756,0.99717555,-14.876186)" />
<path
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.91531211px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 26 KiB

View File

@ -512,8 +512,8 @@
guidetolerance="1px"
stroke="#729fcf"
inkscape:window-width="1280"
inkscape:window-height="964"
inkscape:window-x="-2"
inkscape:window-height="1004"
inkscape:window-x="1278"
inkscape:window-y="-3"
showborder="true"
inkscape:showpageshadow="false"
@ -614,7 +614,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
<dc:title />
<dc:creator>
<cc:Agent>
<dc:title>Lapo Calamandrei</dc:title>
@ -662,13 +662,6 @@
inkscape:r_cx="true"
inkscape:r_cy="true"
transform="translate(0,16)">
<path
inkscape:r_cy="true"
inkscape:r_cx="true"
style="color:#000000;fill:none;stroke:url(#linearGradient3421);stroke-width:0.99999976;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible"
d="m 46.835187,-8.2560327 0,18.9999997 18.001183,0 0,-18.9999997 -18.001183,0 z"
id="path2811"
inkscape:connector-curvature="0" />
<path
style="fill:url(#linearGradient4197);stroke:#0037ff;stroke-width:1px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;fill-opacity:1"
d="M 21.411477,1.4847375 41.260074,1.6410257 41.728938,35.399268 61.421246,35.868132 32.19536,61.968253 2.0317461,35.086691 21.880341,34.930403 z"

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

View File

@ -502,8 +502,8 @@
guidetolerance="1px"
stroke="#729fcf"
inkscape:window-width="1280"
inkscape:window-height="964"
inkscape:window-x="-2"
inkscape:window-height="1004"
inkscape:window-x="1278"
inkscape:window-y="-3"
showborder="true"
inkscape:showpageshadow="false"
@ -604,7 +604,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
<dc:title />
<dc:creator>
<cc:Agent>
<dc:title>Lapo Calamandrei</dc:title>
@ -652,13 +652,6 @@
inkscape:r_cx="true"
inkscape:r_cy="true"
transform="translate(0,16)">
<path
inkscape:r_cy="true"
inkscape:r_cx="true"
style="color:#000000;fill:none;stroke:url(#linearGradient3421);stroke-width:0.99999976;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible"
d="m 46.835187,-8.2560327 0,18.9999997 18.001183,0 0,-18.9999997 -18.001183,0 z"
id="path2811"
inkscape:connector-curvature="0" />
<path
style="fill:url(#linearGradient4197);fill-opacity:1;stroke:#0037ff;stroke-width:1px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
d="M 61.905941,5.2385835 61.821667,25.087617 28.065348,25.678957 27.667934,45.372836 1.4619489,16.241837 28.233897,-14.019108 l 0.2283,19.8478976 z"

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

View File

@ -502,8 +502,8 @@
guidetolerance="1px"
stroke="#729fcf"
inkscape:window-width="1280"
inkscape:window-height="964"
inkscape:window-x="-2"
inkscape:window-height="1004"
inkscape:window-x="1278"
inkscape:window-y="-3"
showborder="true"
inkscape:showpageshadow="false"
@ -604,7 +604,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
<dc:title />
<dc:creator>
<cc:Agent>
<dc:title>Lapo Calamandrei</dc:title>
@ -652,13 +652,6 @@
inkscape:r_cx="true"
inkscape:r_cy="true"
transform="translate(0,16)">
<path
inkscape:r_cy="true"
inkscape:r_cx="true"
style="color:#000000;fill:none;stroke:url(#linearGradient3421);stroke-width:0.99999976;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible"
d="m 46.835187,-8.2560327 0,18.9999997 18.001183,0 0,-18.9999997 -18.001183,0 z"
id="path2811"
inkscape:connector-curvature="0" />
<path
style="fill:url(#linearGradient4197);fill-opacity:1;stroke:#0037ff;stroke-width:1px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
d="M 1.3908902,25.907093 1.6116432,6.059108 35.37123,5.6998887 35.904049,-13.990792 61.909111,15.319709 34.929723,45.395856 34.837902,25.546858 z"

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

View File

@ -502,8 +502,8 @@
guidetolerance="1px"
stroke="#729fcf"
inkscape:window-width="1280"
inkscape:window-height="964"
inkscape:window-x="-2"
inkscape:window-height="1004"
inkscape:window-x="1278"
inkscape:window-y="-3"
showborder="true"
inkscape:showpageshadow="false"
@ -604,7 +604,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
<dc:title />
<dc:creator>
<cc:Agent>
<dc:title>Lapo Calamandrei</dc:title>
@ -652,13 +652,6 @@
inkscape:r_cx="true"
inkscape:r_cy="true"
transform="translate(0,16)">
<path
inkscape:r_cy="true"
inkscape:r_cx="true"
style="color:#000000;fill:none;stroke:url(#linearGradient3421);stroke-width:0.99999976;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible"
d="m 46.835187,-8.2560327 0,18.9999997 18.001183,0 0,-18.9999997 -18.001183,0 z"
id="path2811"
inkscape:connector-curvature="0" />
<path
style="fill:url(#linearGradient4197);fill-opacity:1;stroke:#0037ff;stroke-width:1px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
d="M 42.397351,45.844536 22.548291,45.922275 21.681447,12.171907 1.9849798,11.93525 30.901112,-14.507633 61.379565,12.016429 41.534192,12.406723 z"

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

View File

@ -15,7 +15,7 @@
id="svg1307"
sodipodi:version="0.32"
inkscape:version="0.48.3.1 r9886"
sodipodi:docname="debug_marker.svg"
sodipodi:docname="debug-marker.svg"
inkscape:export-filename="/home/lapo/Desktop/Grafica/Icone/media-actions-outlines.png"
inkscape:export-xdpi="90"
inkscape:export-ydpi="90"
@ -513,8 +513,8 @@
guidetolerance="1px"
stroke="#729fcf"
inkscape:window-width="1280"
inkscape:window-height="964"
inkscape:window-x="-2"
inkscape:window-height="1004"
inkscape:window-x="1278"
inkscape:window-y="-3"
showborder="true"
inkscape:showpageshadow="false"
@ -663,13 +663,6 @@
inkscape:r_cx="true"
inkscape:r_cy="true"
transform="translate(0,16)">
<path
inkscape:r_cy="true"
inkscape:r_cx="true"
style="color:#000000;fill:none;stroke:url(#linearGradient3421);stroke-width:0.99999976;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible"
d="m 46.835187,-8.2560327 0,18.9999997 18.001183,0 0,-18.9999997 -18.001183,0 z"
id="path2811"
inkscape:connector-curvature="0" />
<path
style="fill:url(#linearGradient4197);fill-opacity:1;stroke:#9f7f07;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
d="M 1.3908902,25.907093 1.6116432,6.059108 35.37123,5.6998887 35.904049,-13.990792 61.909111,15.319709 34.929723,45.395856 34.837902,25.546858 z"

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

View File

@ -565,8 +565,8 @@
guidetolerance="1px"
stroke="#729fcf"
inkscape:window-width="1280"
inkscape:window-height="964"
inkscape:window-x="-2"
inkscape:window-height="1004"
inkscape:window-x="1278"
inkscape:window-y="-3"
showborder="true"
inkscape:showpageshadow="false"
@ -715,13 +715,6 @@
inkscape:r_cx="true"
inkscape:r_cy="true"
transform="translate(0,16)">
<path
inkscape:r_cy="true"
inkscape:r_cx="true"
style="color:#000000;fill:none;stroke:url(#linearGradient3421);stroke-width:0.99999976;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible"
d="m 46.835187,-8.2560327 0,18.9999997 18.001183,0 0,-18.9999997 -18.001183,0 z"
id="path2811"
inkscape:connector-curvature="0" />
<path
style="fill:url(#linearGradient5005);fill-opacity:1;stroke:#d40000;stroke-width:1.12766206px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline"
d="M 1.7785229,-2.7507546 50.424542,44.981408 61.586122,34.425688 12.128771,-13.34538 z"

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 22 KiB

View File

@ -545,8 +545,8 @@
guidetolerance="1px"
stroke="#729fcf"
inkscape:window-width="1280"
inkscape:window-height="964"
inkscape:window-x="-2"
inkscape:window-height="1004"
inkscape:window-x="1278"
inkscape:window-y="-3"
showborder="true"
inkscape:showpageshadow="false"
@ -647,7 +647,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
<dc:title />
<dc:creator>
<cc:Agent>
<dc:title>Lapo Calamandrei</dc:title>
@ -695,13 +695,6 @@
inkscape:r_cx="true"
inkscape:r_cy="true"
transform="translate(0,16)">
<path
inkscape:r_cy="true"
inkscape:r_cx="true"
style="color:#000000;fill:none;stroke:url(#linearGradient3421);stroke-width:0.99999976;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible"
d="m 46.835187,-8.2560327 0,18.9999997 18.001183,0 0,-18.9999997 -18.001183,0 z"
id="path2811"
inkscape:connector-curvature="0" />
<path
style="fill:url(#linearGradient5005);fill-opacity:1;stroke:#d40000;stroke-width:1.05393146999999998px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline"
d="M 2.1112885,23.411728 61.898728,23.518473 61.905683,8.2516579 2.1327734,8.5286024 z"

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 21 KiB

View File

@ -546,8 +546,8 @@
guidetolerance="1px"
stroke="#729fcf"
inkscape:window-width="1280"
inkscape:window-height="964"
inkscape:window-x="-2"
inkscape:window-height="1004"
inkscape:window-x="1278"
inkscape:window-y="-3"
showborder="true"
inkscape:showpageshadow="false"
@ -696,13 +696,6 @@
inkscape:r_cx="true"
inkscape:r_cy="true"
transform="translate(0,16)">
<path
inkscape:r_cy="true"
inkscape:r_cx="true"
style="color:#000000;fill:none;stroke:url(#linearGradient3421);stroke-width:0.99999976;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible"
d="m 46.835187,-8.2560327 0,18.9999997 18.001183,0 0,-18.9999997 -18.001183,0 z"
id="path2811"
inkscape:connector-curvature="0" />
<path
style="fill:url(#linearGradient4112);fill-opacity:1;stroke:#c80000;stroke-width:2.50000000000000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:0.72289157;stroke-dasharray:none"
d="m 48.761905,38.310135 5.93895,-5.15751 -15.472527,-15.159951 c 4.715326,-1.259036 10.129226,-2.684921 15.003663,-3.750917 L 5.3137974,-7.0134313 28.131869,37.841269 33.91453,23.775336 z"
@ -717,7 +710,7 @@
sodipodi:cy="58.295483"
sodipodi:rx="18.129427"
sodipodi:ry="2.1098902"
d="m 50.168501,58.295483 a 18.129427,2.1098902 0 1 1 -36.258854,0 18.129427,2.1098902 0 1 1 36.258854,0 z"
d="m 50.168501,58.295483 c 0,1.16526 -8.116821,2.10989 -18.129427,2.10989 -10.012606,0 -18.129427,-0.94463 -18.129427,-2.10989 0,-1.165261 8.116821,-2.109891 18.129427,-2.109891 10.012606,0 18.129427,0.94463 18.129427,2.109891 z"
transform="translate(4.6886447,-17.250305)" />
</g>
</svg>

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 21 KiB

View File

@ -40,7 +40,7 @@ using namespace Base;
// --------------------------------------------------------------------
InputField::InputField ( QWidget * parent )
: QLineEdit(parent)
: QLineEdit(parent), StepSize(1.0), Maximum(DOUBLE_MAX),Minimum(-DOUBLE_MAX)
{
this->setContextMenuPolicy(Qt::DefaultContextMenu);
@ -149,37 +149,37 @@ void InputField::setUnit(const Base::Unit& unit)
/// get the value of the singleStep property
double InputField::singleStep(void)const
{
return 0.0;
return StepSize;
}
/// set the value of the singleStep property
void InputField::setSingleStep(double)
void InputField::setSingleStep(double s)
{
StepSize = s;
}
/// get the value of the maximum property
double InputField::maximum(void)const
{
return 0.0;
return Maximum;
}
/// set the value of the maximum property
void InputField::setMaximum(double)
void InputField::setMaximum(double m)
{
Maximum = m;
}
/// get the value of the minimum property
double InputField::minimum(void)const
{
return 0.0;
return Minimum;
}
/// set the value of the minimum property
void InputField::setMinimum(double)
void InputField::setMinimum(double m)
{
Minimum = m;
}

View File

@ -128,6 +128,10 @@ private:
Base::Quantity actQuantity;
Base::Unit actUnit;
double Maximum;
double Minimum;
double StepSize;
};