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);
|
||||
}
|
||||
}
|
||||
deembedded_reference_impedance = reference_impedance;
|
||||
if(deembedded_reference_impedance != reference_impedance) {
|
||||
deembedded_reference_impedance = reference_impedance;
|
||||
if(deembeddingActive) {
|
||||
emit typeChanged(this);
|
||||
}
|
||||
}
|
||||
if(deembeddingActive) {
|
||||
emit outputSamplesChanged(index, index + 1);
|
||||
}
|
||||
if(!wasAvailable) {
|
||||
emit deembeddingChanged();
|
||||
emit deembeddingChanged(this);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1333,14 +1338,13 @@ void Trace::setDeembeddingActive(bool active)
|
||||
emit outputSamplesChanged(0, data.size());
|
||||
}
|
||||
}
|
||||
emit deembeddingChanged();
|
||||
emit deembeddingChanged(this);
|
||||
}
|
||||
|
||||
void Trace::clearDeembedding()
|
||||
{
|
||||
deembeddingData.clear();
|
||||
setDeembeddingActive(false);
|
||||
deembeddingChanged();
|
||||
}
|
||||
|
||||
double Trace::minX()
|
||||
|
@ -207,7 +207,7 @@ signals:
|
||||
void dataChanged(unsigned int begin, unsigned int end);
|
||||
void nameChanged();
|
||||
void pauseChanged();
|
||||
void deembeddingChanged();
|
||||
void deembeddingChanged(Trace *t);
|
||||
void colorChanged(Trace *t);
|
||||
void markerAdded(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::markerRemoved, this, &TracePlot::markerRemoved);
|
||||
connect(t, &Trace::typeChanged, this, &TracePlot::checkIfStillSupported);
|
||||
connect(t, &Trace::deembeddingChanged, this, &TracePlot::checkIfStillSupported);
|
||||
connect(t, &Trace::colorChanged, this, &TracePlot::triggerReplot);
|
||||
} else {
|
||||
// disconnect from notifications
|
||||
@ -88,6 +89,7 @@ void TracePlot::enableTrace(Trace *t, bool enabled)
|
||||
disconnect(t, &Trace::markerAdded, this, &TracePlot::markerAdded);
|
||||
disconnect(t, &Trace::markerRemoved, this, &TracePlot::markerRemoved);
|
||||
disconnect(t, &Trace::typeChanged, this, &TracePlot::checkIfStillSupported);
|
||||
disconnect(t, &Trace::deembeddingChanged, this, &TracePlot::checkIfStillSupported);
|
||||
disconnect(t, &Trace::colorChanged, this, &TracePlot::triggerReplot);
|
||||
}
|
||||
updateContextMenu();
|
||||
|
@ -279,7 +279,7 @@ void TraceSmithChart::draw(QPainter &p) {
|
||||
// center line visible
|
||||
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) {
|
||||
z /= Z0;
|
||||
auto radius = 1.0/z;
|
||||
|
Loading…
Reference in New Issue
Block a user