Basic support for Frequency as unit

This commit is contained in:
wmayer
2019-10-20 18:14:56 +02:00
parent 3e5d3460c7
commit 4d831ea442
6 changed files with 30 additions and 2 deletions

View File

@@ -1631,6 +1631,7 @@ void Application::initTypes(void)
App ::PropertyLength ::init();
App ::PropertyArea ::init();
App ::PropertyVolume ::init();
App ::PropertyFrequency ::init();
App ::PropertySpeed ::init();
App ::PropertyAcceleration ::init();
App ::PropertyForce ::init();

View File

@@ -218,6 +218,18 @@ PropertyDistance::PropertyDistance()
setUnit(Base::Unit::Length);
}
//**************************************************************************
//**************************************************************************
// PropertyFrequency
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
TYPESYSTEM_SOURCE(App::PropertyFrequency, App::PropertyQuantity)
PropertyFrequency::PropertyFrequency()
{
setUnit(Base::Unit::Frequency);
}
//**************************************************************************
//**************************************************************************
// PropertySpeed

View File

@@ -175,6 +175,18 @@ public:
virtual const char* getEditorName(void) const { return "Gui::PropertyEditor::PropertyAngleItem"; }
};
/** Frequency property
* This is a property for representing frequency. It is basically a float
* property. On the Gui it has a quantity like 1/s or Hz.
*/
class AppExport PropertyFrequency: public PropertyQuantity
{
TYPESYSTEM_HEADER();
public:
PropertyFrequency(void);
virtual ~PropertyFrequency(){}
};
/** Speed property
* This is a property for representing speed. It is basically a float
* property. On the Gui it has a quantity like m/s or km/h.

View File

@@ -433,6 +433,7 @@ QString Unit::getTypeString(void) const
if(*this == Unit::Angle ) return QString::fromLatin1("Angle");
if(*this == Unit::Density ) return QString::fromLatin1("Density");
if(*this == Unit::TimeSpan ) return QString::fromLatin1("TimeSpan");
if(*this == Unit::Frequency ) return QString::fromLatin1("Frequency");
if(*this == Unit::Velocity ) return QString::fromLatin1("Velocity");
if(*this == Unit::Acceleration ) return QString::fromLatin1("Acceleration");
if(*this == Unit::Temperature ) return QString::fromLatin1("Temperature");
@@ -470,6 +471,7 @@ Unit Unit::AngleOfFriction (0,0,0,0,0,0,0,1);
Unit Unit::Density(-3,1);
Unit Unit::TimeSpan(0,0,1);
Unit Unit::Frequency(0,0,-1);
Unit Unit::Velocity(1,0,-1);
Unit Unit::Acceleration(1,0,-2);
Unit Unit::Temperature(0,0,0,0,1);

View File

@@ -103,6 +103,7 @@ public:
static Unit Area;
static Unit Volume;
static Unit TimeSpan;
static Unit Frequency;
static Unit Velocity;
static Unit Acceleration;
static Unit Temperature;

View File

@@ -66,8 +66,8 @@ DlgUnitsCalculator::DlgUnitsCalculator( QWidget* parent, Qt::WindowFlags fl )
actUnit.setInvalid();
units << Base::Unit::Length << Base::Unit::Mass << Base::Unit::Angle << Base::Unit::Density
<< Base::Unit::Area << Base::Unit::Volume << Base::Unit::TimeSpan << Base::Unit::Velocity
<< Base::Unit::Acceleration << Base::Unit::Temperature
<< Base::Unit::Area << Base::Unit::Volume << Base::Unit::TimeSpan << Base::Unit::Frequency
<< Base::Unit::Velocity << Base::Unit::Acceleration << Base::Unit::Temperature
<< Base::Unit::ElectricCurrent << Base::Unit::ElectricPotential
<< Base::Unit::AmountOfSubstance << Base::Unit::LuminousIntensity << Base::Unit::Stress
<< Base::Unit::Pressure << Base::Unit::Force << Base::Unit::Work << Base::Unit::Power