##### 去除之前的波列实现方式,成像实现方式。

This commit is contained in:
DESKTOP-450PEFP\mainc 2026-05-26 22:20:28 +08:00
parent ac7106e59f
commit 2e9fa08261
3 changed files with 4 additions and 1104 deletions

View File

@ -184,51 +184,10 @@ void FormDraw::setDrawData(QStringList listdt, QJsonObject objInfo)
curv->initGeometry(m_strUuid, m_iScale, dW);
curv->show();
if ("DrawImageObject" == strType)
{
curv->setScaleX(0, 264);
curv->m_strType = "DrawImageObject";
curv->m_bX2Y = false;
curv->show();
//图像 成像
curv->initImage(strSlfName, strLineName);
}
else if ("tdtObject" == strType)
if ("tdtObject" == strType)
{
initTDT(curv);
}
else if ("waveObject" == strType)
{
curv->m_nMode = pInfo->getFillTypeIndex();
//curv->m_fmin = pInfo->getVMin();
//curv->m_fmax = pInfo->getVMax();
curv->m_nDrawType = pInfo->m_nDrawType;
curv->m_bDrawDepth = pInfo->m_bDrawDepth; // 绘制波深度
curv->m_bDrawBase = pInfo->m_bDrawBase; // 绘制波深度
curv->m_bOddEven = pInfo->m_bOddEven; // 绘制波深度
curv->m_MaxRange = pInfo->m_fMaxAmp; // 最大振幅
curv->m_Base = pInfo->m_fWaveBase; // 波列基值
curv->m_nWaveJg = pInfo->m_nWaveJg; // 波形间隔
curv->m_nWaveHei = pInfo->m_fWaveHei; // 波形高度
curv->m_nColorNum = pInfo->m_nColorNum;
curv->m_nSchemeIndex = pInfo->m_nSchemeIndex;
curv->m_fScaleV = pInfo->getVMax();
int _nSamples = 0;
if (g_iSupport3D)
{
initWave_3D(curv, m_strSlfName, strLineName, _nSamples);
}
else
{
curv->m_bX2Y = false;
//curv->initWave2(m_strSlfName, strLineName);
curv->changePropertyWaveUpdate();
}
}
// 深度
else if ("depthObject" == strType)
{
@ -3594,40 +3553,7 @@ void FormDraw::s_addWave(QString strUuid, QString strSlfName, QString strWellNam
//pwave->replot();
_nSamples = 264;
}
else
{
//
QMyCustomPlot *curv = new QMyCustomPlot(this, strSlfName, strWellName, strTrackName, strWaveName);
//绑定m_formTrack方便关联formInfo
curv->m_formTrack = m_formTrack;
curv->setDepthY(m_iY1, m_iY2);
curv->initGeometry(m_strUuid, m_iScale, nW);
curv->m_bX2Y = false;
curv->show();
if (g_iSupport3D)
{
initWave_3D(curv, strSlfName, strWaveName, _nSamples);
}
else
{
//此处追加参照了下方setDrawData函数的处理
//不然没有设置setRange初始范围不支持新的右侧滚动条的setRange
curv->m_bX2Y = false;
curv->initWave(strSlfName, strWaveName);
_nSamples = curv->getScaleV();
}
curv->replot();
connect(curv, SIGNAL(mouseWheel(QWheelEvent*)), this, SLOT(s_mouseWheel(QWheelEvent*)));
}
m_listLineName.push_back(strWaveName);
QTimer::singleShot(100, this, [=]() {
@ -4301,22 +4227,6 @@ void FormDraw::s_addDrawImage(QString strUuid, QString strSlfName, QString strWe
pImg->show();
_nSamples = 264;
}
else
{
QMyCustomPlot *curv = new QMyCustomPlot(this, strSlfName, strWellName, strTrackName, strLineName, "DrawImageObject");
//绑定m_formTrack方便关联formInfo
curv->m_formTrack = m_formTrack;
curv->setDepthY(m_iY1, m_iY2);
curv->setScaleX(0, 264);
curv->initGeometry(m_strUuid, m_iScale, nW);
curv->m_bX2Y = false;
curv->show();
//图像 成像
QString strWaveName = "";
curv->initImage(strSlfName, strWaveName);
connect(curv, SIGNAL(mouseWheel(QWheelEvent*)), this, SLOT(s_mouseWheel(QWheelEvent*)));
}
//
m_listLineName.push_back(strLineName);

File diff suppressed because it is too large Load Diff

View File

@ -87,27 +87,6 @@ public:
void initGeometry(QString strUuid, int nscale, double fW);
void changePropertyWaveUpdate();
// 绘图类型-变密度(成像)
void initWave(QString strSlfName, QString strWaveName);
// 绘图类型-波形
void initWave2(QString strSlfName, QString strWaveName);
// 曲线绘制
void initCurve(QString strSlfName, QString strLineName);
void initImage(QString strSlfName, QString strWaveName);
void initColorTable();
void setSchemeIndex(int nidx, int colorNum);
QCPColorMap * updateWave();
void updateImage(float fTopY);
void updateImage(float fTopY, FormInfo* pInfo);
void updateImage3D(float fTopY, FormInfo* pInfo);
float getScaleV();
void groupBeginResult(float fEndDepth, float fStartDepth);
void groupEndResult();
@ -160,7 +139,6 @@ public:
// 曲线数值设置
void changeCurveValSetting();
void setUseColor(int nUse);
protected:
@ -223,28 +201,8 @@ public:
bool singleDragMove = false;
float singleOldPosition = 0;
QCPColorMap *m_colorMap = NULL;
QCPColorScale * m_colorScale = NULL;
QVector< QVector <double>> m_vecWaveData;
int m_nRow = 0;
int m_nCol = 0;
int m_nDrawType = 2; // 绘图类型
// 0.全周 1.正半周 2.负半周
int m_nMode = 1;
float m_fScaleV = 0.0f;
float m_fmin;
float m_fmax;
int m_nColorNum = 256;
int m_nSchemeIndex = 1;
bool m_bDrawDepth = false; // 绘制波深度
bool m_bDrawBase = false; // 绘制波基线
bool m_bOddEven = false; // 奇偶配色
float m_Base = 0.0f; // 波列基值
float m_MaxRange = 1023.0f;
int m_nWaveJg = 1;
int m_nWaveHei = 1;
int m_nUseColor = 0; // 色板颜色标志
QList<QRgb> m_rgbList;
// 深度 第三个轴
QCPAxis *m_yAxis2 = nullptr;