对数曲线填充处理

This commit is contained in:
jiayulong 2025-11-05 18:15:33 +08:00
parent 714e9a5379
commit 45b3b4de88
11 changed files with 99 additions and 67 deletions

View File

@ -63,7 +63,7 @@ signals:
//岩性填充-填充
void sig_ChangeFillMode(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName,
QString newFillType, QString newTargetLine, QColor newColor, QString newLithosImage, QString newHeadFill,
float vMin, float vMax, QColor frontColor, QColor backColor, QString newFillMode);
float vMin, float vMax, QString strOtherScaleType, QColor frontColor, QColor backColor, QString newFillMode);
//置顶层
void sig_Raise(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName);

View File

@ -129,6 +129,8 @@ void PropertyWidget::SlotPropertyChanged( QtProperty *pProperty, const QVariant
{
QString newScaleType = pProperty->valueText();
emit CallManage::getInstance()->sig_ChangeScaleType(m_strUuid, m_strSlfName, m_strWellName, m_strTrackName, m_strLineName, newScaleType);
//更新填充
ChangFillProperty();
}
}
else if("颜色" == m_propertyData[pProperty])
@ -274,6 +276,7 @@ void PropertyWidget::ChangFillProperty()
QString newHeadFill = "不绘制";
float vMax = 0.0;
float vMin = 0.0;
QString strOtherScaleType = "线性";
QColor frontColor;//岩性前景色
QColor backColor;//岩性背景色
@ -318,6 +321,7 @@ void PropertyWidget::ChangFillProperty()
{
vMax = m_listMax[i];
vMin = m_listMin[i];
strOtherScaleType = m_strListOtherScaleType[i];
}
}
}
@ -379,7 +383,7 @@ void PropertyWidget::ChangFillProperty()
{
emit CallManage::getInstance()->sig_ChangeFillMode(m_strUuid, m_strSlfName, m_strWellName, m_strTrackName, m_strLineName,
newFillType, newTargetLine, newColor, newLithosImage, newHeadFill,
vMin, vMax, frontColor, backColor, newFillMode);
vMin, vMax, strOtherScaleType, frontColor, backColor, newFillMode);
}
}
@ -476,7 +480,7 @@ void PropertyWidget::initWidgetProperty()
_CreateVariantPropertyItem("水平格线", "中格线间隔(m)", 2.0, QVariant::Double);
}
void PropertyWidget::initCurveProperty(FormInfo *formInfo, QStringList strListOtherLine, QList<float> listMin, QList<float> listMax)
void PropertyWidget::initCurveProperty(FormInfo *formInfo, QStringList strListOtherLine, QList<float> listMin, QList<float> listMax, QStringList strListOtherScaleType)
//void PropertyWidget::initCurveProperty(QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, QColor lineColor, double dWidth, QStringList strListOtherLine)
{
//初始化,清空
@ -491,6 +495,7 @@ void PropertyWidget::initCurveProperty(FormInfo *formInfo, QStringList strListOt
double dWidth = formInfo->m_dWidth;
float vmax = formInfo->m_vmax;
float vmin = formInfo->m_vmin;
QString strScaleType = formInfo->m_strScaleType;
QColor frontColor = formInfo->m_frontColor;
QColor backColor = formInfo->m_backColor;
@ -504,10 +509,12 @@ void PropertyWidget::initCurveProperty(FormInfo *formInfo, QStringList strListOt
m_strListOtherLine.clear();
m_listMin.clear();
m_listMax.clear();
m_strListOtherScaleType.clear();
//
m_strListOtherLine.append(strListOtherLine);
m_listMin.append(listMin);
m_listMax.append(listMax);
m_strListOtherScaleType.append(strListOtherScaleType);
//当前属性类型
m_strCurrentProperty = Curve_Property;

View File

@ -55,6 +55,7 @@ public:
QStringList m_strListOtherLine;
QList<float> m_listMin;
QList<float> m_listMax;
QStringList m_strListOtherScaleType;
public:
QWidget* GetPropertyWidget();
@ -66,7 +67,7 @@ public:
void InitCurrentViewInfo(); //初始化属性,清空
void initWidgetProperty(); //可视解释整体属性
//void initCurveProperty(QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, QColor lineColor, double dWidth, QStringList strListOtherLine); //曲线属性
void initCurveProperty(FormInfo *formInfo, QStringList strListOtherLine, QList<float> listMin, QList<float> listMax);
void initCurveProperty(FormInfo *formInfo, QStringList strListOtherLine, QList<float> listMin, QList<float> listMax, QStringList strListOtherScaleType);
void ChangFillProperty();//填充属性改变

View File

@ -127,7 +127,6 @@ void FormDraw::s_addLine(QString strUuid, QString strSlfName, QString strWellNam
curv->show();
initForm(curv, strSlfName, strLineName);
connect(curv, SIGNAL(mouseWheel(QWheelEvent*)), this, SLOT(s_mouseWheel(QWheelEvent*)));
//
@ -489,6 +488,8 @@ void FormDraw::initForm(QMyCustomPlot *widget, QString strSlfName, QString strLi
//最大值,最小值
vmax=vmin=val[0];
//vmax=vmin=log(val[0]);
// for(int i=1;i<count;i++)
// {
// if(vmax<val[i])vmax=val[i];
@ -506,6 +507,15 @@ void FormDraw::initForm(QMyCustomPlot *widget, QString strSlfName, QString strLi
//
x.append(-(sdep+ rlev*i));
y.append(val[i]);
/*if(newLeftScale==-9999)
{
if(vmax<log(val[i]))vmax=log(val[i]);
if(vmin>log(val[i]))vmin=log(val[i]);
}
//
x.append(-(sdep+ rlev*i));
y.append(log(val[i]));*/
}
if(newLeftScale!=-9999)

View File

@ -51,8 +51,8 @@ FormInfo::FormInfo(QWidget *parent, QString strSlfName, QString strWellName, QSt
//岩性填充-不填充
connect(CallManage::getInstance(), SIGNAL(sig_ClearFillMode(QString, QString, QString, QString, QString)), this, SLOT(s_ClearFillMode(QString, QString, QString, QString, QString)));
//岩性填充-填充
connect(CallManage::getInstance(), SIGNAL(sig_ChangeFillMode(QString, QString, QString, QString, QString, QString, QString, QColor, QString, QString, float, float, QColor, QColor, QString)),
this, SLOT(s_ChangeFillMode(QString, QString, QString, QString, QString, QString, QString, QColor, QString, QString, float, float, QColor, QColor, QString)));
connect(CallManage::getInstance(), SIGNAL(sig_ChangeFillMode(QString, QString, QString, QString, QString, QString, QString, QColor, QString, QString, float, float, QString, QColor, QColor, QString)),
this, SLOT(s_ChangeFillMode(QString, QString, QString, QString, QString, QString, QString, QColor, QString, QString, float, float, QString, QColor, QColor, QString)));
}
@ -397,7 +397,7 @@ void FormInfo::s_ClearFillMode(QString strUuid, QString strSlfName, QString strW
//岩性填充-填充
void FormInfo::s_ChangeFillMode(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName,
QString newFillType, QString newTargetLine, QColor newColor, QString newLithosImage, QString newHeadFill,
float vMin, float vMax, QColor frontColor, QColor backColor, QString newFillMode)
float vMin, float vMax, QString strOtherScaleType, QColor frontColor, QColor backColor, QString newFillMode)
{
if(m_strUuid == strUuid &&
m_strSlfName == strSlfName &&

View File

@ -52,7 +52,7 @@ public slots:
//岩性填充-填充
void s_ChangeFillMode(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName,
QString newFillType, QString newTargetLine, QColor newColor, QString newLithosImage, QString newHeadFill,
float vMin, float vMax, QColor frontColor, QColor backColor, QString newFillMode);
float vMin, float vMax, QString strOtherScaleType, QColor frontColor, QColor backColor, QString newFillMode);
public:
QString m_strUuid;

View File

@ -40,7 +40,7 @@ void MyCustomPlot::init(QString strName, QVector<double> xx, QVector<double> yy0
void MyCustomPlot::mousePressEvent(QMouseEvent *event)
{
qDebug() << "mousePress";
//qDebug() << "mousePress";
QCustomPlot::mousePressEvent(event);
}

View File

@ -253,10 +253,11 @@ void PreQTableWidget::mouseReleaseEvent(QMouseEvent *event)
//
QList<float> listMin;
QList<float> listMax;
QStringList strListOtherLine = getListLineName(formInfo->m_strLineName, listMin, listMax);
QStringList strListOtherScaleType;
QStringList strListOtherLine = getListLineName(formInfo->m_strLineName, listMin, listMax, strListOtherScaleType);
//PropertyService()->initCurveProperty(formInfo->m_strSlfName, formInfo->m_strWellName, formInfo->m_strTrackName, formInfo->m_strLineName, formInfo->m_lineColor, formInfo->m_dWidth, strListOtherLine);
PropertyService()->initCurveProperty(formInfo, strListOtherLine, listMin, listMax);
PropertyService()->initCurveProperty(formInfo, strListOtherLine, listMin, listMax, strListOtherScaleType);
//曲线置顶显示,激活可选
emit CallManage::getInstance()->sig_Raise(m_strUuid, formInfo->m_strSlfName, formInfo->m_strWellName, formInfo->m_strTrackName, formInfo->m_strLineName);
@ -264,7 +265,7 @@ void PreQTableWidget::mouseReleaseEvent(QMouseEvent *event)
}
}
QStringList PreQTableWidget::getListLineName(QString strLineName, QList<float> &listMin, QList<float> &listMax)
QStringList PreQTableWidget::getListLineName(QString strLineName, QList<float> &listMin, QList<float> &listMax, QStringList &strListOtherScaleType)
{
QStringList strListOtherLine;
for(int i=0; i<rowCount(); i++)
@ -280,6 +281,7 @@ QStringList PreQTableWidget::getListLineName(QString strLineName, QList<float> &
strListOtherLine.push_back(strTmp);
listMin.push_back(formInfo->m_vmin);
listMax.push_back(formInfo->m_vmax);
strListOtherScaleType.push_back(formInfo->m_strScaleType);
}
}
}

View File

@ -38,7 +38,7 @@ public:
//QStringList m_listLineName;//会漏掉第1条曲线因为在track添加的
public:
QStringList getListLineName(QString strLineName, QList<float> &listMin, QList<float> &listMax);
QStringList getListLineName(QString strLineName, QList<float> &listMin, QList<float> &listMax, QStringList &strListOtherScaleType);
};

View File

@ -44,8 +44,8 @@ QMyCustomPlot::QMyCustomPlot(QWidget *parent, QString strSlfName, QString strWel
//岩性填充-不填充
connect(CallManage::getInstance(), SIGNAL(sig_ClearFillMode(QString, QString, QString, QString, QString)), this, SLOT(s_ClearFillMode(QString, QString, QString, QString, QString)));
//岩性填充-填充
connect(CallManage::getInstance(), SIGNAL(sig_ChangeFillMode(QString, QString, QString, QString, QString, QString, QString, QColor, QString, QString, float, float, QColor, QColor, QString)),
this, SLOT(s_ChangeFillMode(QString, QString, QString, QString, QString, QString, QString, QColor, QString, QString, float, float, QColor, QColor, QString)));
connect(CallManage::getInstance(), SIGNAL(sig_ChangeFillMode(QString, QString, QString, QString, QString, QString, QString, QColor, QString, QString, float, float, QString , QColor, QColor, QString)),
this, SLOT(s_ChangeFillMode(QString, QString, QString, QString, QString, QString, QString, QColor, QString, QString, float, float, QString, QColor, QColor, QString)));
}
@ -56,7 +56,7 @@ void QMyCustomPlot::init(QString strName, QVector<double> xx, QVector<double> yy
void QMyCustomPlot::mousePressEvent(QMouseEvent *event)
{
qDebug() << "mousePress";
//qDebug() << "mousePress";
QCustomPlot::mousePressEvent(event);
}
@ -198,7 +198,7 @@ void QMyCustomPlot::s_ChangeLeftScale(QString strUuid, QString strSlfName, QStri
//其他曲线
s_ChangeFillMode(m_strUuid, m_strSlfName, m_strWellName, m_strTrackName, m_strLineName,
m_newFillType, m_newTargetLine, m_newColor, m_newLithosImage, m_newHeadFill,
newLeftScale, m_vMax, m_frontColor, m_backColor, m_newFillMode);
newLeftScale, m_vMax, m_strOtherScaleType, m_frontColor, m_backColor, m_newFillMode);
}
}
@ -225,7 +225,7 @@ void QMyCustomPlot::s_ChangeRightScale(QString strUuid, QString strSlfName, QStr
//其他曲线
s_ChangeFillMode(m_strUuid, m_strSlfName, m_strWellName, m_strTrackName, m_strLineName,
m_newFillType, m_newTargetLine, m_newColor, m_newLithosImage, m_newHeadFill,
m_vMin, newRightScale, m_frontColor, m_backColor, m_newFillMode);
m_vMin, newRightScale, m_strOtherScaleType, m_frontColor, m_backColor, m_newFillMode);
}
}
@ -259,9 +259,9 @@ void QMyCustomPlot::s_ChangeScaleType(QString strUuid, QString strSlfName, QStri
m_newTargetLine == strLineName)
{
//其他曲线
//s_ChangeFillMode(m_strSlfName, m_strWellName, m_strTrackName, m_strLineName,
// m_newFillType, m_newTargetLine, m_newColor, m_newLithosImage, m_newHeadFill,
// m_vMin, newRightScale, m_frontColor, m_backColor, m_newFillMode);
s_ChangeFillMode(m_strUuid, m_strSlfName, m_strWellName, m_strTrackName, m_strLineName,
m_newFillType, m_newTargetLine, m_newColor, m_newLithosImage, m_newHeadFill,
m_vMin, m_vMax, strScaleType, m_frontColor, m_backColor, m_newFillMode);
}
}
@ -339,7 +339,7 @@ void QMyCustomPlot::s_ClearFillMode(QString strUuid, QString strSlfName, QString
//岩性填充-填充
void QMyCustomPlot::s_ChangeFillMode(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName,
QString newFillType, QString newTargetLine, QColor newColor, QString newLithosImage, QString newHeadFill,
float vMin, float vMax, QColor frontColor, QColor backColor, QString newFillMode)
float vMin, float vMax, QString strOtherScaleType, QColor frontColor, QColor backColor, QString newFillMode)
{
if(m_strUuid == strUuid &&
@ -356,6 +356,7 @@ void QMyCustomPlot::s_ChangeFillMode(QString strUuid, QString strSlfName, QStrin
m_newHeadFill = newHeadFill;
m_vMin = vMin;
m_vMax = vMax;
m_strOtherScaleType = strOtherScaleType;
m_frontColor = frontColor;
m_backColor = backColor;
m_newFillMode = newFillMode;
@ -428,15 +429,13 @@ void QMyCustomPlot::s_ChangeFillMode(QString strUuid, QString strSlfName, QStrin
{
if(newFillMode=="左填充")
{
// if(m_strScaleType=="对数")
// {
// float iX1_Tmp=log(m_iX1);
// m_iX1 = iX1_Tmp;
// //
// float iX2_Tmp=log(m_iX2);
// m_iX2 = iX2_Tmp;
// }
float iX1_Tmp=m_iX1;
float iX2_Tmp=m_iX2;
if(m_strScaleType=="对数")
{
iX1_Tmp=log(m_iX1);
iX2_Tmp=log(m_iX2);
}
//其他曲线(左填充)
CLogIO *logio=new CLogIO();
@ -480,40 +479,39 @@ void QMyCustomPlot::s_ChangeFillMode(QString strUuid, QString strSlfName, QStrin
{
float x0=-(sdep+ rlev*i);
float y0_old=val[i];
float y0 = (m_iX2-m_iX1)*(val[i]-vMin)/(vMax-vMin) + m_iX1;
float y0 = (iX2_Tmp-iX1_Tmp)*(val[i]-vMin)/(vMax-vMin) + iX1_Tmp;
//读取基线
float BaseY0=0;
float BaseY0_Tmp=0;
logio->ReadCurve(indexBaseCurv, 0-x0, 1, &BaseY0);
// if(m_strScaleType=="对数")
// {
// BaseY0_Tmp=log(BaseY0);
// BaseY0 = BaseY0_Tmp;
// }
if(m_strScaleType=="对数")
{
BaseY0_Tmp=log(BaseY0);
BaseY0 = BaseY0_Tmp;
}
//
if(i+1<count)
{
float x1=-(sdep+ rlev*(i+1));
//float y1=val[i+1];
float y1 = (m_iX2-m_iX1)*(val[i+1]-vMin)/(vMax-vMin) + m_iX1;
float y1 = (iX2_Tmp-iX1_Tmp)*(val[i+1]-vMin)/(vMax-vMin) + iX1_Tmp;
//读取基线
float BaseY1=0;
float BaseY1_Tmp=0;
logio->ReadCurve(indexBaseCurv, 0-x1, 1, &BaseY1);
// if(m_strScaleType=="对数")
// {
// BaseY1_Tmp=log(BaseY1);
// BaseY1 = BaseY1_Tmp;
// }
if(m_strScaleType=="对数")
{
BaseY1_Tmp=log(BaseY1);
BaseY1 = BaseY1_Tmp;
}
if(BaseY0<=y0 && BaseY1<=y1)
{
//基线在左,采用基线值
//y0=BaseY0;
y0_old = (BaseY0-m_iX1)/(m_iX2-m_iX1)*(vMax-vMin) + vMin;
y0_old = (BaseY0-iX1_Tmp)/(iX2_Tmp-iX1_Tmp)*(vMax-vMin) + vMin;
//
x.append(x0);
y.append(y0_old);
@ -528,7 +526,7 @@ void QMyCustomPlot::s_ChangeFillMode(QString strUuid, QString strSlfName, QStrin
{
//基线起点在左,采用基线值
//y0=BaseY0;
y0_old = (BaseY0-m_iX1)/(m_iX2-m_iX1)*(vMax-vMin) + vMin;
y0_old = (BaseY0-iX1_Tmp)/(iX2_Tmp-iX1_Tmp)*(vMax-vMin) + vMin;
//
x.append(x0);
y.append(y0_old);
@ -536,7 +534,7 @@ void QMyCustomPlot::s_ChangeFillMode(QString strUuid, QString strSlfName, QStrin
//插值
float xNew=x0-rlev*(y0-BaseY0)/((BaseY1-y1)+(y0-BaseY0));//(BaseY1-y1);
float yNew=(y0-y1)/(x0-x1)*(xNew-x1) + y1;
float yNew_Old=(yNew-m_iX1)/(m_iX2-m_iX1)*(vMax-vMin) + vMin;
float yNew_Old=(yNew-iX1_Tmp)/(iX2_Tmp-iX1_Tmp)*(vMax-vMin) + vMin;
//
x.append(xNew);
y.append(yNew_Old);
@ -550,7 +548,7 @@ void QMyCustomPlot::s_ChangeFillMode(QString strUuid, QString strSlfName, QStrin
//插值
float xNew=x0-rlev*(y0-BaseY0)/((BaseY1-y1)+(y0-BaseY0));//(BaseY1-y1);
float yNew=(BaseY0-BaseY1)/(x0-x1)*(xNew-x1) + BaseY1;
float yNew_Old=(yNew-m_iX1)/(m_iX2-m_iX1)*(vMax-vMin) + vMin;
float yNew_Old=(yNew-iX1_Tmp)/(iX2_Tmp-iX1_Tmp)*(vMax-vMin) + vMin;
//
x.append(xNew);
y.append(yNew_Old);
@ -563,15 +561,11 @@ void QMyCustomPlot::s_ChangeFillMode(QString strUuid, QString strSlfName, QStrin
{
//基线在左,采用基线值
//y0=BaseY0;
y0_old = (BaseY0-m_iX1)/(m_iX2-m_iX1)*(vMax-vMin) + vMin;
y0_old = (BaseY0-iX1_Tmp)/(iX2_Tmp-iX1_Tmp)*(vMax-vMin) + vMin;
}
x.append(x0);
y.append(y0_old);
}
//newVal = (m_iX2-m_iX1)*(val[i]-vMin)/(vMax-vMin) + m_iX1;
//newVal = val[i];
//y.append(newVal);
}
logio->CloseCurve(indexBaseCurv);
delete logio;
@ -584,6 +578,14 @@ void QMyCustomPlot::s_ChangeFillMode(QString strUuid, QString strSlfName, QStrin
}
else if(newFillMode=="右填充")
{
float iX1_Tmp=m_iX1;
float iX2_Tmp=m_iX2;
if(m_strScaleType=="对数")
{
iX1_Tmp=log(m_iX1);
iX2_Tmp=log(m_iX2);
}
//其他曲线(右填充)
CLogIO *logio=new CLogIO();
logio->Open(strSlfName.toStdString().c_str(),CSlfIO::modeRead);
@ -626,20 +628,33 @@ void QMyCustomPlot::s_ChangeFillMode(QString strUuid, QString strSlfName, QStrin
{
float x0=-(sdep+ rlev*i);
float y0_old=val[i];
float y0 = (m_iX2-m_iX1)*(val[i]-vMin)/(vMax-vMin) + m_iX1;
float y0 = (iX2_Tmp-iX1_Tmp)*(val[i]-vMin)/(vMax-vMin) + iX1_Tmp;
//读取基线
float BaseY0=0;
float BaseY0_Tmp=0;
logio->ReadCurve(indexBaseCurv, 0-x0, 1, &BaseY0);
if(m_strScaleType=="对数")
{
BaseY0_Tmp=log(BaseY0);
BaseY0 = BaseY0_Tmp;
}
//
if(i+1<count)
{
float x1=-(sdep+ rlev*(i+1));
//float y1=val[i+1];
float y1 = (m_iX2-m_iX1)*(val[i+1]-vMin)/(vMax-vMin) + m_iX1;
float y1 = (iX2_Tmp-iX1_Tmp)*(val[i+1]-vMin)/(vMax-vMin) + iX1_Tmp;
//读取基线
float BaseY1=0;
float BaseY1_Tmp=0;
logio->ReadCurve(indexBaseCurv, 0-x1, 1, &BaseY1);
if(m_strScaleType=="对数")
{
BaseY1_Tmp=log(BaseY1);
BaseY1 = BaseY1_Tmp;
}
if(BaseY0<=y0 && BaseY1<=y1)
{
@ -651,7 +666,7 @@ void QMyCustomPlot::s_ChangeFillMode(QString strUuid, QString strSlfName, QStrin
{
//基线在右,采用基线值
//y0=BaseY0;
y0_old = (BaseY0-m_iX1)/(m_iX2-m_iX1)*(vMax-vMin) + vMin;
y0_old = (BaseY0-iX1_Tmp)/(iX2_Tmp-iX1_Tmp)*(vMax-vMin) + vMin;
//
x.append(x0);
y.append(y0_old);
@ -665,7 +680,7 @@ void QMyCustomPlot::s_ChangeFillMode(QString strUuid, QString strSlfName, QStrin
//插值
float xNew=x0-rlev*(y0-BaseY0)/((BaseY1-y1)+(y0-BaseY0));//(BaseY1-y1);
float yNew=(y0-y1)/(x0-x1)*(xNew-x1) + y1;
float yNew_Old=(yNew-m_iX1)/(m_iX2-m_iX1)*(vMax-vMin) + vMin;
float yNew_Old=(yNew-iX1_Tmp)/(iX2_Tmp-iX1_Tmp)*(vMax-vMin) + vMin;
//
x.append(xNew);
y.append(yNew_Old);
@ -674,7 +689,7 @@ void QMyCustomPlot::s_ChangeFillMode(QString strUuid, QString strSlfName, QStrin
{
//基线在右,采用基线值
//y0=BaseY0;
y0_old = (BaseY0-m_iX1)/(m_iX2-m_iX1)*(vMax-vMin) + vMin;
y0_old = (BaseY0-iX1_Tmp)/(iX2_Tmp-iX1_Tmp)*(vMax-vMin) + vMin;
//
x.append(x0);
y.append(y0_old);
@ -682,7 +697,7 @@ void QMyCustomPlot::s_ChangeFillMode(QString strUuid, QString strSlfName, QStrin
//插值
float xNew=x0-rlev*(y0-BaseY0)/((BaseY1-y1)+(y0-BaseY0));//(BaseY1-y1);
float yNew=(BaseY0-BaseY1)/(x0-x1)*(xNew-x1) + BaseY1;
float yNew_Old=(yNew-m_iX1)/(m_iX2-m_iX1)*(vMax-vMin) + vMin;
float yNew_Old=(yNew-iX1_Tmp)/(iX2_Tmp-iX1_Tmp)*(vMax-vMin) + vMin;
//
x.append(xNew);
y.append(yNew_Old);
@ -695,15 +710,11 @@ void QMyCustomPlot::s_ChangeFillMode(QString strUuid, QString strSlfName, QStrin
{
//基线在右,采用基线值
//y0=BaseY0;
y0_old = (BaseY0-m_iX1)/(m_iX2-m_iX1)*(vMax-vMin) + vMin;
y0_old = (BaseY0-iX1_Tmp)/(iX2_Tmp-iX1_Tmp)*(vMax-vMin) + vMin;
}
x.append(x0);
y.append(y0_old);
}
//newVal = (m_iX2-m_iX1)*(val[i]-vMin)/(vMax-vMin) + m_iX1;
//newVal = val[i];
//y.append(newVal);
}
logio->CloseCurve(indexBaseCurv);
delete logio;

View File

@ -37,7 +37,8 @@ public:
QString m_newLithosImage;
QString m_newHeadFill;
float m_vMin;
float m_vMax;
float m_vMax;
QString m_strOtherScaleType;
QString m_strScaleType="线性";//刻度类型(线性,对数)
QColor m_frontColor;//岩性前景色
@ -78,7 +79,7 @@ public slots:
//岩性填充-填充
void s_ChangeFillMode(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName,
QString newFillType, QString newTargetLine, QColor newColor, QString newLithosImage, QString newHeadFill,
float vMin, float vMax, QColor frontColor, QColor backColor, QString newFillMode);
float vMin, float vMax, QString strOtherScaleType, QColor frontColor, QColor backColor, QString newFillMode);
void onAddRect();