update smith chart reference impedance when trace impedance changes but keep smith lines in place
Some checks failed
Some checks failed
This commit is contained in:
parent
b7c2bf7cdd
commit
e93e364079
@ -179,12 +179,17 @@ void Trace::addDeembeddingData(const Trace::Data &d, double reference_impedance,
|
|||||||
deembeddingData.insert(lower, d);
|
deembeddingData.insert(lower, d);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if(deembedded_reference_impedance != reference_impedance) {
|
||||||
deembedded_reference_impedance = reference_impedance;
|
deembedded_reference_impedance = reference_impedance;
|
||||||
|
if(deembeddingActive) {
|
||||||
|
emit typeChanged(this);
|
||||||
|
}
|
||||||
|
}
|
||||||
if(deembeddingActive) {
|
if(deembeddingActive) {
|
||||||
emit outputSamplesChanged(index, index + 1);
|
emit outputSamplesChanged(index, index + 1);
|
||||||
}
|
}
|
||||||
if(!wasAvailable) {
|
if(!wasAvailable) {
|
||||||
emit deembeddingChanged();
|
emit deembeddingChanged(this);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1333,14 +1338,13 @@ void Trace::setDeembeddingActive(bool active)
|
|||||||
emit outputSamplesChanged(0, data.size());
|
emit outputSamplesChanged(0, data.size());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
emit deembeddingChanged();
|
emit deembeddingChanged(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Trace::clearDeembedding()
|
void Trace::clearDeembedding()
|
||||||
{
|
{
|
||||||
deembeddingData.clear();
|
deembeddingData.clear();
|
||||||
setDeembeddingActive(false);
|
setDeembeddingActive(false);
|
||||||
deembeddingChanged();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
double Trace::minX()
|
double Trace::minX()
|
||||||
|
@ -207,7 +207,7 @@ signals:
|
|||||||
void dataChanged(unsigned int begin, unsigned int end);
|
void dataChanged(unsigned int begin, unsigned int end);
|
||||||
void nameChanged();
|
void nameChanged();
|
||||||
void pauseChanged();
|
void pauseChanged();
|
||||||
void deembeddingChanged();
|
void deembeddingChanged(Trace *t);
|
||||||
void colorChanged(Trace *t);
|
void colorChanged(Trace *t);
|
||||||
void markerAdded(Marker *m);
|
void markerAdded(Marker *m);
|
||||||
void markerRemoved(Marker *m);
|
void markerRemoved(Marker *m);
|
||||||
|
@ -79,6 +79,7 @@ void TracePlot::enableTrace(Trace *t, bool enabled)
|
|||||||
connect(t, &Trace::markerAdded, this, &TracePlot::markerAdded);
|
connect(t, &Trace::markerAdded, this, &TracePlot::markerAdded);
|
||||||
connect(t, &Trace::markerRemoved, this, &TracePlot::markerRemoved);
|
connect(t, &Trace::markerRemoved, this, &TracePlot::markerRemoved);
|
||||||
connect(t, &Trace::typeChanged, this, &TracePlot::checkIfStillSupported);
|
connect(t, &Trace::typeChanged, this, &TracePlot::checkIfStillSupported);
|
||||||
|
connect(t, &Trace::deembeddingChanged, this, &TracePlot::checkIfStillSupported);
|
||||||
connect(t, &Trace::colorChanged, this, &TracePlot::triggerReplot);
|
connect(t, &Trace::colorChanged, this, &TracePlot::triggerReplot);
|
||||||
} else {
|
} else {
|
||||||
// disconnect from notifications
|
// disconnect from notifications
|
||||||
@ -88,6 +89,7 @@ void TracePlot::enableTrace(Trace *t, bool enabled)
|
|||||||
disconnect(t, &Trace::markerAdded, this, &TracePlot::markerAdded);
|
disconnect(t, &Trace::markerAdded, this, &TracePlot::markerAdded);
|
||||||
disconnect(t, &Trace::markerRemoved, this, &TracePlot::markerRemoved);
|
disconnect(t, &Trace::markerRemoved, this, &TracePlot::markerRemoved);
|
||||||
disconnect(t, &Trace::typeChanged, this, &TracePlot::checkIfStillSupported);
|
disconnect(t, &Trace::typeChanged, this, &TracePlot::checkIfStillSupported);
|
||||||
|
disconnect(t, &Trace::deembeddingChanged, this, &TracePlot::checkIfStillSupported);
|
||||||
disconnect(t, &Trace::colorChanged, this, &TracePlot::triggerReplot);
|
disconnect(t, &Trace::colorChanged, this, &TracePlot::triggerReplot);
|
||||||
}
|
}
|
||||||
updateContextMenu();
|
updateContextMenu();
|
||||||
|
@ -279,7 +279,7 @@ void TraceSmithChart::draw(QPainter &p) {
|
|||||||
// center line visible
|
// center line visible
|
||||||
p.drawLine(dataToPixel(p1),dataToPixel(p2));
|
p.drawLine(dataToPixel(p1),dataToPixel(p2));
|
||||||
}
|
}
|
||||||
constexpr std::array<double, 5> impedanceLines = {10, 25, 50, 100, 250};
|
const std::array<double, 5> impedanceLines = {Z0*0.2, Z0*0.5, Z0, Z0*2, Z0*5};
|
||||||
for(auto z : impedanceLines) {
|
for(auto z : impedanceLines) {
|
||||||
z /= Z0;
|
z /= Z0;
|
||||||
auto radius = 1.0/z;
|
auto radius = 1.0/z;
|
||||||
|
Loading…
Reference in New Issue
Block a user