diff --git a/plugins/mockplugin/src/CosinusProvider.cpp b/plugins/mockplugin/src/CosinusProvider.cpp index 5fb2446..47b029a 100644 --- a/plugins/mockplugin/src/CosinusProvider.cpp +++ b/plugins/mockplugin/src/CosinusProvider.cpp @@ -67,10 +67,21 @@ struct SpectrogramCosinus : public ICosinusType { std::vector valuesData, Unit xAxisUnit, Unit valuesUnit) const override { + return std::make_shared(std::move(xAxisData), m_YAxisData, + std::move(valuesData), xAxisUnit, m_YAxisUnit, + valuesUnit); } void generateValues(double x, std::vector &values, int dataIndex) const override { + auto componentCount = this->componentCount(); + for (int i = 0; i < componentCount; ++i) { + auto y = m_YAxisData[i]; + auto r = 3 * std::sqrt(x * x + y * y) + 1e-2; + auto value = 2 * x * (std::cos(r + 2) / r - std::sin(r + 2) / r); + + values[componentCount * dataIndex + i] = value; + } } std::vector m_YAxisData;