Merge branch 'main' of http://git.hivekion.com:3000/jiayulong/logplus
This commit is contained in:
commit
c6dfb3ea6e
|
|
@ -44,6 +44,8 @@ signals:
|
||||||
// 添加对象通知strName:发送模块名字(如DataMgr) strSlfName:Slf文件名,对象名列表(如AC、BS)
|
// 添加对象通知strName:发送模块名字(如DataMgr) strSlfName:Slf文件名,对象名列表(如AC、BS)
|
||||||
void sig_Notice_AddObject(QString strName, QString strSlfName, QStringList listObject);
|
void sig_Notice_AddObject(QString strName, QString strSlfName, QStringList listObject);
|
||||||
|
|
||||||
|
// 改变对象通知strName:发送模块名字(如DataMgr) strSlfName:Slf文件名,对象名列表(如AC、BS)
|
||||||
|
void sig_Notice_Changed(QString strName, QString strSlfName, QStringList listObject);
|
||||||
public:
|
public:
|
||||||
Q_DISABLE_COPY(CallGlobalManage);
|
Q_DISABLE_COPY(CallGlobalManage);
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@
|
||||||
#include <QDoubleValidator>
|
#include <QDoubleValidator>
|
||||||
// #include "DataImport.h"
|
// #include "DataImport.h"
|
||||||
// #include "ObjProject.h"
|
// #include "ObjProject.h"
|
||||||
|
#include "CallGlobalManage.h"
|
||||||
CurveComputePage::CurveComputePage(QWidget *parent)
|
CurveComputePage::CurveComputePage(QWidget *parent)
|
||||||
: QWidget(parent)
|
: QWidget(parent)
|
||||||
{
|
{
|
||||||
|
|
@ -281,6 +282,9 @@ void CurveComputePage::slotComputeOk()
|
||||||
CurveNames.push_back(fun.csOutName.toUpper());
|
CurveNames.push_back(fun.csOutName.toUpper());
|
||||||
delete mrw;
|
delete mrw;
|
||||||
emit signalCompute(CurveNames);
|
emit signalCompute(CurveNames);
|
||||||
|
QStringList CurveNames1;
|
||||||
|
CurveNames1.push_back(fun.csOutName.toUpper());
|
||||||
|
emit CallGlobalManage::getInstance()->sig_Notice_Changed("DataMgr", m_FileName, CurveNames1);
|
||||||
// PaiObject::m_EventAgent.ObjectPropertyChanged(::GetProject(),"Compute",CurveNames);
|
// PaiObject::m_EventAgent.ObjectPropertyChanged(::GetProject(),"Compute",CurveNames);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,7 @@
|
||||||
#include "MemRdWt.h"
|
#include "MemRdWt.h"
|
||||||
// #include "ObjProject.h"
|
// #include "ObjProject.h"
|
||||||
#include "Well.h"
|
#include "Well.h"
|
||||||
|
#include "CallGlobalManage.h"
|
||||||
#pragma warning(pop)
|
#pragma warning(pop)
|
||||||
using namespace pai::ios::welllog;
|
using namespace pai::ios::welllog;
|
||||||
BEGIN_OSGGRAPHICS_NAMESPACE
|
BEGIN_OSGGRAPHICS_NAMESPACE
|
||||||
|
|
@ -245,7 +246,10 @@ void CCurveComputerDlg::slotSave()
|
||||||
}
|
}
|
||||||
delete mrw;
|
delete mrw;
|
||||||
// PaiObject::m_EventAgent.ObjectPropertyChanged(GetProject(),"Compute",CurveNames);
|
// PaiObject::m_EventAgent.ObjectPropertyChanged(GetProject(),"Compute",CurveNames);
|
||||||
QMessageBox::warning(NULL,"提示","完成曲线计算");
|
QStringList CurveNames1;
|
||||||
|
CurveNames1.push_back(name);
|
||||||
|
emit CallGlobalManage::getInstance()->sig_Notice_Changed("DataMgr", FileName, CurveNames1);
|
||||||
|
QMessageBox::warning(this,"提示","完成曲线计算");
|
||||||
//accept();
|
//accept();
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -801,24 +801,24 @@ void CDataManagger::DataStatistics(int Type,
|
||||||
// //whp add 2020.4.9 for 波列曲线预览
|
// //whp add 2020.4.9 for 波列曲线预览
|
||||||
// void CDataManagger::DisplayWave(const QString& FileName,const QString& WaveName)
|
// void CDataManagger::DisplayWave(const QString& FileName,const QString& WaveName)
|
||||||
// {
|
// {
|
||||||
// CLogIO *logio=new CLogIO();
|
// CLogIO *logio=new CLogIO();
|
||||||
// if(!logio->Open(FileName.toStdString().c_str(),CSlfIO::modeRead))
|
// if(!logio->Open(FileName.toStdString().c_str(),CSlfIO::modeRead))
|
||||||
// {
|
// {
|
||||||
// delete logio;
|
// delete logio;
|
||||||
// QMessageBox::warning(NULL,"提示","打开文件"+FileName+"错误");
|
// QMessageBox::warning(NULL,"提示","打开文件"+FileName+"错误");
|
||||||
// return ;
|
// return ;
|
||||||
// }
|
// }
|
||||||
// int index=logio->OpenWave(WaveName.toStdString().c_str());
|
// int index=logio->OpenWave(WaveName.toStdString().c_str());
|
||||||
// if(index<0){
|
// if(index<0){
|
||||||
// delete logio;
|
// delete logio;
|
||||||
// return;
|
// return;
|
||||||
// }
|
// }
|
||||||
// logio->CloseWave(index);
|
// logio->CloseWave(index);
|
||||||
// delete logio;
|
// delete logio;
|
||||||
// ShowWave *pDlg=new ShowWave();
|
// ShowWave *pDlg=new ShowWave();
|
||||||
// pDlg->FileName=FileName,pDlg->WaveName=WaveName;
|
// pDlg->FileName=FileName,pDlg->WaveName=WaveName;
|
||||||
// pDlg->init();
|
// pDlg->init();
|
||||||
// pDlg->show();
|
// pDlg->show();
|
||||||
// }
|
// }
|
||||||
// //whp add 2020.5.12 for 常规曲线预览
|
// //whp add 2020.5.12 for 常规曲线预览
|
||||||
// void CDataManagger::DisplayCurve(const QString& FileName,const QString& CurveName)
|
// void CDataManagger::DisplayCurve(const QString& FileName,const QString& CurveName)
|
||||||
|
|
@ -1462,239 +1462,241 @@ void CDataManagger::accept2()
|
||||||
}
|
}
|
||||||
void CDataManagger::accept1()
|
void CDataManagger::accept1()
|
||||||
{
|
{
|
||||||
// QDialog*pd=(QDialog*)sender();
|
QDialog*pd=(QDialog*)sender();
|
||||||
// int sdep=m_edit1->text().toFloat();
|
int sdep=m_edit1->text().toFloat();
|
||||||
// int edep=m_edit2->text().toFloat();
|
int edep=m_edit2->text().toFloat();
|
||||||
// if(sdep>edep)
|
if(sdep>edep)
|
||||||
// {
|
{
|
||||||
// QMessageBox::information(pd,"提示","起始深度不能大于终止深度!",QMessageBox::Yes);
|
QMessageBox::information(pd,"提示","起始深度不能大于终止深度!",QMessageBox::Yes);
|
||||||
// return;
|
return;
|
||||||
// }
|
}
|
||||||
// QString newCurve;
|
QString newCurve;
|
||||||
// CMemRdWt *mrw=new CMemRdWt();
|
CMemRdWt *mrw=new CMemRdWt();
|
||||||
// if(!mrw->Open(m_FileName.toStdString().c_str(),CSlfIO::modeReadWrite)) {
|
if(!mrw->Open(m_FileName.toStdString().c_str(),CSlfIO::modeReadWrite)) {
|
||||||
// delete mrw;
|
delete mrw;
|
||||||
// return;
|
return;
|
||||||
// }
|
}
|
||||||
// QString m_Function=m_edit3->text();
|
QString m_Function=m_edit3->text();
|
||||||
// m_Function.toUpper();
|
m_Function.toUpper();
|
||||||
// m_Function.replace("\"DEPTH\"","CURRENT_HD.DEP");
|
m_Function.replace("\"DEPTH\"","CURRENT_HD.DEP");
|
||||||
// bool OutCurveExist=1;
|
bool OutCurveExist=1;
|
||||||
// float CurveValue,rlev;
|
float CurveValue,rlev;
|
||||||
// Function fun;
|
Function fun;
|
||||||
// int noi=fun.GetExpress(m_Function);
|
int noi=fun.GetExpress(m_Function);
|
||||||
// if(noi<0)
|
if(noi<0)
|
||||||
// {
|
{
|
||||||
// delete mrw;
|
delete mrw;
|
||||||
// return ;//输入公式中没有“=”号,或含有不能处理的字符
|
return ;//输入公式中没有“=”号,或含有不能处理的字符
|
||||||
// }
|
}
|
||||||
// //检查公式合理性
|
//检查公式合理性
|
||||||
// for(int j=0;j<noi;j++)
|
for(int j=0;j<noi;j++)
|
||||||
// {
|
{
|
||||||
// fun.val[j]=j+1;
|
fun.val[j]=j+1;
|
||||||
// }
|
}
|
||||||
// fun.prog=fun.TempProg;
|
fun.prog=fun.TempProg;
|
||||||
// int re=fun.get_exp(&CurveValue);
|
int re=fun.get_exp(&CurveValue);
|
||||||
// if(re>0)
|
if(re>0)
|
||||||
// {
|
{
|
||||||
// static char *e[]={
|
static const char *e[]={
|
||||||
// "语法错误",//"syntax error.",
|
"语法错误",//"syntax error.",
|
||||||
// "不对称的括号",//"unbalanced parentheses",
|
"不对称的括号",//"unbalanced parentheses",
|
||||||
// "非法运算符"//"no expression present"
|
"非法运算符"//"no expression present"
|
||||||
// };
|
};
|
||||||
// QMessageBox::warning(pd,"提示",QString(QLatin1String(e[re-1]))+m_Function);
|
QMessageBox::warning(pd,"提示",QString(QLatin1String(e[re-1]))+m_Function);
|
||||||
// delete mrw;
|
delete mrw;
|
||||||
// return ;
|
return ;
|
||||||
// }
|
}
|
||||||
// char name[20];
|
char name[20];
|
||||||
// strcpy(name,fun.csOutName.toStdString().c_str());
|
strcpy(name,fun.csOutName.toStdString().c_str());
|
||||||
// int in=mrw->FindObjectIndex(name);
|
int in=mrw->FindObjectIndex(name);
|
||||||
// if(in>=0)
|
if(in>=0)
|
||||||
// {
|
{
|
||||||
// short objectType=mrw->GetObjectType(in);
|
short objectType=mrw->GetObjectType(in);
|
||||||
// short Attribute,SubAttribute;
|
short Attribute,SubAttribute;
|
||||||
// mrw->GetObjectAttribute(in,&Attribute,&SubAttribute);
|
mrw->GetObjectAttribute(in,&Attribute,&SubAttribute);
|
||||||
// if(mrw->GetObjectStatus(in)!=0)//删除状态
|
if(mrw->GetObjectStatus(in)!=0)//删除状态
|
||||||
// {
|
{
|
||||||
// QMessageBox::warning(m_pDialog,"提示",fun.csOutName+"曲线已存在,但该曲线处于删除状态,无法进行计算 !!!");
|
QMessageBox::warning(m_pDialog,"提示",fun.csOutName+"曲线已存在,但该曲线处于删除状态,无法进行计算 !!!");
|
||||||
// delete mrw;
|
delete mrw;
|
||||||
// return ;
|
return ;
|
||||||
// }
|
}
|
||||||
// if(objectType >CARD_OBJECT||objectType==0||objectType==CURVE_OBJECT)
|
if(objectType >CARD_OBJECT||objectType==0||objectType==CURVE_OBJECT)
|
||||||
// {
|
{
|
||||||
|
|
||||||
// }
|
}
|
||||||
// else
|
else
|
||||||
// {
|
{
|
||||||
// QMessageBox::warning(m_pDialog,"提示",fun.csOutName+"对象已存在,但其属性不是曲线 !!!");
|
QMessageBox::warning(m_pDialog,"提示",fun.csOutName+"对象已存在,但其属性不是曲线 !!!");
|
||||||
// delete mrw;
|
delete mrw;
|
||||||
// return ;
|
return ;
|
||||||
// }
|
}
|
||||||
// }
|
}
|
||||||
// else
|
else
|
||||||
// { // 导入曲线不存在
|
{ // 导入曲线不存在
|
||||||
// QString ss="目标曲线"+fun.csOutName+"不存在 \n 是否生成 ?\n";
|
QString ss="目标曲线"+fun.csOutName+"不存在 \n 是否生成 ?\n";
|
||||||
// int flag = QMessageBox::warning(m_pDialog,tr("提示"),ss,QMessageBox::Yes,QMessageBox::No);
|
int flag = QMessageBox::warning(m_pDialog,tr("提示"),ss,QMessageBox::Yes,QMessageBox::No);
|
||||||
// if(flag != QMessageBox::Yes){
|
if(flag != QMessageBox::Yes){
|
||||||
// delete mrw;
|
delete mrw;
|
||||||
// return ;
|
return ;
|
||||||
// }
|
}
|
||||||
// OutCurveExist=0;
|
OutCurveExist=0;
|
||||||
// }
|
}
|
||||||
// int index[20],indexout;
|
int index[20],indexout;
|
||||||
// float MinRlev=9999;
|
float MinRlev=9999;
|
||||||
// DWORD CurveSample[20];
|
DWORD CurveSample[20];
|
||||||
// float CurveRlev[20];
|
float CurveRlev[20];
|
||||||
// Slf_CURVE info;
|
Slf_CURVE info;
|
||||||
// for(int i=0;i<noi;i++)
|
for(int i=0;i<noi;i++)
|
||||||
// {
|
{
|
||||||
// if(fun.csName[i]=="CURRENT_HD.DEP")continue;
|
if(fun.csName[i]=="CURRENT_HD.DEP")continue;
|
||||||
// if(mrw->GetObjectType(fun.csName[i].toStdString().c_str())!=CURVE_OBJECT)
|
if(mrw->GetObjectType(fun.csName[i].toStdString().c_str())!=CURVE_OBJECT)
|
||||||
// {
|
{
|
||||||
// QMessageBox::warning(m_pDialog,"提示","输入曲线"+fun.csName[i]+"不是曲线类型,不能进行计算!!!\r\n请参考常规曲线计算规则,输入正确的计算公式");
|
QMessageBox::warning(m_pDialog,"提示","输入曲线"+fun.csName[i]+"不是曲线类型,不能进行计算!!!\r\n请参考常规曲线计算规则,输入正确的计算公式");
|
||||||
// delete mrw;
|
delete mrw;
|
||||||
// return ;
|
return ;
|
||||||
// }
|
}
|
||||||
// index[i]=mrw->OpenCurve(fun.csName[i].toStdString().c_str());
|
index[i]=mrw->OpenCurve(fun.csName[i].toStdString().c_str());
|
||||||
// if(index[i]<0)
|
if(index[i]<0)
|
||||||
// {
|
{
|
||||||
// delete mrw;
|
delete mrw;
|
||||||
// QMessageBox::warning(m_pDialog,"提示","打开曲线"+fun.csName[i]+"出错,不能进行计算!!!");
|
QMessageBox::warning(m_pDialog,"提示","打开曲线"+fun.csName[i]+"出错,不能进行计算!!!");
|
||||||
// return ;
|
return ;
|
||||||
// }
|
}
|
||||||
// mrw->GetCurveInfo(index[i],&info);
|
mrw->GetCurveInfo(index[i],&info);
|
||||||
// if(MinRlev>info.DepLevel)MinRlev=info.DepLevel;
|
if(MinRlev>info.DepLevel)MinRlev=info.DepLevel;
|
||||||
// CurveRlev[i]=info.DepLevel;
|
CurveRlev[i]=info.DepLevel;
|
||||||
// }
|
}
|
||||||
// if(MinRlev==9999)MinRlev=0.125;//表达式中没有实际曲线,只有CURRENT_HD.DEP“深度”标识
|
if(MinRlev==9999)MinRlev=0.125;//表达式中没有实际曲线,只有CURRENT_HD.DEP“深度”标识
|
||||||
// //生成导入曲线
|
//生成导入曲线
|
||||||
|
|
||||||
// if(OutCurveExist==0)
|
if(OutCurveExist==0)
|
||||||
// {
|
{
|
||||||
// indexout=-1;
|
indexout=-1;
|
||||||
// for(int i=0;i<noi;i++)
|
for(int i=0;i<noi;i++)
|
||||||
// {
|
{
|
||||||
// if(fun.csName[i]=="CURRENT_HD.DEP")continue;
|
if(fun.csName[i]=="CURRENT_HD.DEP")continue;
|
||||||
// mrw->GetCurveInfo(index[i],&info);
|
mrw->GetCurveInfo(index[i],&info);
|
||||||
// sprintf(info.AliasName,"%s",fun.csOutName.toStdString().c_str());
|
sprintf(info.AliasName,"%s",fun.csOutName.toStdString().c_str());
|
||||||
// sprintf(info.Name,"%s",fun.csOutName.toStdString().c_str());
|
sprintf(info.Name,"%s",fun.csOutName.toStdString().c_str());
|
||||||
// info.StartDepth=m_edit1->text().toFloat();
|
info.StartDepth=m_edit1->text().toFloat();
|
||||||
// info.EndDepth=m_edit2->text().toFloat();
|
info.EndDepth=m_edit2->text().toFloat();
|
||||||
// indexout=mrw->OpenCurve(&info);
|
indexout=mrw->OpenCurve(&info);
|
||||||
// break;
|
break;
|
||||||
// }
|
}
|
||||||
// if(indexout==-1)//表达式中没有实际曲线,只有CURRENT_HD.DEP“深度”标识
|
if(indexout==-1)//表达式中没有实际曲线,只有CURRENT_HD.DEP“深度”标识
|
||||||
// {
|
{
|
||||||
// newCurve=fun.csOutName;
|
newCurve=fun.csOutName;
|
||||||
// sprintf(info.AliasName,"%s",fun.csOutName.toStdString().c_str());
|
sprintf(info.AliasName,"%s",fun.csOutName.toStdString().c_str());
|
||||||
// sprintf(info.Name,"%s",fun.csOutName.toStdString().c_str());
|
sprintf(info.Name,"%s",fun.csOutName.toStdString().c_str());
|
||||||
// info.StartDepth=m_edit1->text().toFloat();
|
info.StartDepth=m_edit1->text().toFloat();
|
||||||
// info.EndDepth=m_edit2->text().toFloat();
|
info.EndDepth=m_edit2->text().toFloat();
|
||||||
// info.DepLevel=0.125;
|
info.DepLevel=0.125;
|
||||||
// info.CodeLen=4;
|
info.CodeLen=4;
|
||||||
// info.RepCode=4;
|
info.RepCode=4;
|
||||||
// info.DefVal=-999.25;
|
info.DefVal=-999.25;
|
||||||
// info.MaxValue=100;
|
info.MaxValue=100;
|
||||||
// info.MinValue=0;
|
info.MinValue=0;
|
||||||
// strcpy(info.DepthHZUnit,"米");
|
strcpy(info.DepthHZUnit,"米");
|
||||||
// strcpy(info.DepthUnit,"m");
|
strcpy(info.DepthUnit,"m");
|
||||||
// strcpy(info.Unit,"");
|
strcpy(info.Unit,"");
|
||||||
// strcpy(info.AliasUnit,"");
|
strcpy(info.AliasUnit,"");
|
||||||
// indexout=mrw->OpenCurve(&info);
|
indexout=mrw->OpenCurve(&info);
|
||||||
// }
|
}
|
||||||
// }
|
}
|
||||||
// else
|
else
|
||||||
// {
|
{
|
||||||
// indexout=mrw->OpenCurve(fun.csOutName.toStdString().c_str());
|
indexout=mrw->OpenCurve(fun.csOutName.toStdString().c_str());
|
||||||
// if(indexout>-1)mrw->GetCurveInfo(indexout,&info);
|
if(indexout>-1)mrw->GetCurveInfo(indexout,&info);
|
||||||
// }
|
}
|
||||||
// if(indexout<0)
|
if(indexout<0)
|
||||||
// {
|
{
|
||||||
// delete mrw;
|
delete mrw;
|
||||||
// QMessageBox::warning(m_pDialog,"提示","导入曲线不存在,而且输入曲线中没有可参考的常规曲线,无法进行曲线计算\r\n请参考常规曲线计算规则,输入正确的计算公式");
|
QMessageBox::warning(m_pDialog,"提示","导入曲线不存在,而且输入曲线中没有可参考的常规曲线,无法进行曲线计算\r\n请参考常规曲线计算规则,输入正确的计算公式");
|
||||||
// return ;
|
return ;
|
||||||
// }
|
}
|
||||||
// //检查导入曲线深度
|
//检查导入曲线深度
|
||||||
// rlev = info.DepLevel;
|
rlev = info.DepLevel;
|
||||||
// sdep = info.StartDepth;
|
sdep = info.StartDepth;
|
||||||
// edep = info.EndDepth ;
|
edep = info.EndDepth ;
|
||||||
// if(MinRlev>rlev)MinRlev=rlev;
|
if(MinRlev>rlev)MinRlev=rlev;
|
||||||
// if ( m_edit1->text().toFloat() < sdep-rlev || m_edit2->text().toFloat() > edep+rlev)
|
if ( m_edit1->text().toFloat() < sdep-rlev || m_edit2->text().toFloat() > edep+rlev)
|
||||||
// {
|
{
|
||||||
// int flag=QMessageBox::warning(m_pDialog,"提示","导入曲线的深度范围("+m_edit1->text()+"--"+m_edit2->text()+")超出输入曲线("+QString::number(sdep)+"--"+QString::number(edep)+"\n继续计算吗?",QMessageBox::Yes,QMessageBox::No);
|
int flag=QMessageBox::warning(m_pDialog,"提示","导入曲线的深度范围("+m_edit1->text()+"--"+m_edit2->text()+")超出输入曲线("+QString::number(sdep)+"--"+QString::number(edep)+"\n继续计算吗?",QMessageBox::Yes,QMessageBox::No);
|
||||||
// if(flag != QMessageBox::Yes){
|
if(flag != QMessageBox::Yes){
|
||||||
// delete mrw;
|
delete mrw;
|
||||||
// return ;
|
return ;
|
||||||
// }
|
}
|
||||||
// }
|
}
|
||||||
// int sample=(int)((m_edit2->text().toFloat()-m_edit1->text().toFloat())/rlev+1.5);//0.5);
|
int sample=(int)((m_edit2->text().toFloat()-m_edit1->text().toFloat())/rlev+1.5);//0.5);
|
||||||
// int sampleIn=(int)((m_edit2->text().toFloat()-m_edit1->text().toFloat())/MinRlev+1.5);//0.5);
|
int sampleIn=(int)((m_edit2->text().toFloat()-m_edit1->text().toFloat())/MinRlev+1.5);//0.5);
|
||||||
// float **indata,*outdata;
|
float **indata,*outdata;
|
||||||
// indata=new float*[noi];
|
indata=new float*[noi];
|
||||||
// outdata=new float[sample+10];
|
outdata=new float[sample+10];
|
||||||
// float *tDep,*aDep;
|
float *tDep,*aDep;
|
||||||
// tDep=new float[sample];
|
tDep=new float[sample];
|
||||||
// for(int k=0; k<sample; k++) tDep[k]=sdep+k*rlev;
|
for(int k=0; k<sample; k++) tDep[k]=sdep+k*rlev;
|
||||||
// for(int j=0;j<noi;j++)
|
for(int j=0;j<noi;j++)
|
||||||
// {
|
{
|
||||||
// if(fun.csName[j]=="CURRENT_HD.DEP")continue;
|
if(fun.csName[j]=="CURRENT_HD.DEP")continue;
|
||||||
// indata[j]=new float[sampleIn];
|
indata[j]=new float[sampleIn];
|
||||||
// //whp change 2018.10.15 保证读写一致
|
//whp change 2018.10.15 保证读写一致
|
||||||
// CurveSample[j]=(m_edit2->text().toFloat()-m_edit1->text().toFloat())/CurveRlev[j]+1.5;//0.5;
|
CurveSample[j]=(m_edit2->text().toFloat()-m_edit1->text().toFloat())/CurveRlev[j]+1.5;//0.5;
|
||||||
// mrw->ReadCurve(index[j],m_edit1->text().toFloat(),CurveSample[j],&indata[j][0]);
|
mrw->ReadCurve(index[j],m_edit1->text().toFloat(),CurveSample[j],&indata[j][0]);
|
||||||
// if(fabs(CurveRlev[j]-rlev)/rlev>0.1)
|
if(fabs(CurveRlev[j]-rlev)/rlev>0.1)
|
||||||
// {
|
{
|
||||||
// aDep=new float[CurveSample[j]];
|
aDep=new float[CurveSample[j]];
|
||||||
// for(int k=0; k<CurveSample[j]; k++) aDep[k]=sdep+k*CurveRlev[j];
|
for(int k=0; k<CurveSample[j]; k++) aDep[k]=sdep+k*CurveRlev[j];
|
||||||
// Resample::ReSampling(&indata[j][0],CurveSample[j],1,aDep,tDep,sample);
|
Resample::ReSampling(&indata[j][0],CurveSample[j],1,aDep,tDep,sample);
|
||||||
// delete []aDep;
|
delete []aDep;
|
||||||
// }
|
}
|
||||||
// }
|
}
|
||||||
// for (int i=0; i<sample; i++)
|
for (int i=0; i<sample; i++)
|
||||||
// {
|
{
|
||||||
// //sdep = sdeps + rlev * i;
|
//sdep = sdeps + rlev * i;
|
||||||
// for(int j=0;j<noi;j++)
|
for(int j=0;j<noi;j++)
|
||||||
// {
|
{
|
||||||
// if(fun.csName[j]=="CURRENT_HD.DEP")fun.val[j]=m_edit1->text().toFloat()+i*rlev;
|
if(fun.csName[j]=="CURRENT_HD.DEP")fun.val[j]=m_edit1->text().toFloat()+i*rlev;
|
||||||
// else fun.val[j]=indata[j][i];
|
else fun.val[j]=indata[j][i];
|
||||||
// }
|
}
|
||||||
// fun.prog=fun.TempProg;
|
fun.prog=fun.TempProg;
|
||||||
// fun.get_exp(&CurveValue);
|
fun.get_exp(&CurveValue);
|
||||||
// outdata[i]=CurveValue;
|
outdata[i]=CurveValue;
|
||||||
// //2013.11.20 whp add for 为曲线计算添加数值类型选项:常规,不控制数值大小;方位:控制到0-360
|
//2013.11.20 whp add for 为曲线计算添加数值类型选项:常规,不控制数值大小;方位:控制到0-360
|
||||||
|
|
||||||
// }
|
}
|
||||||
// mrw->WriteCurve(indexout,m_edit1->text().toFloat(),sample,&outdata[0]);
|
mrw->WriteCurve(indexout,m_edit1->text().toFloat(),sample,&outdata[0]);
|
||||||
// delete []tDep;
|
delete []tDep;
|
||||||
|
|
||||||
// for (int i=0; i<noi;i++)
|
for (int i=0; i<noi;i++)
|
||||||
// {
|
{
|
||||||
// if(fun.csName[i]=="CURRENT_HD.DEP")continue;
|
if(fun.csName[i]=="CURRENT_HD.DEP")continue;
|
||||||
// mrw->CloseCurve(index[i]);
|
mrw->CloseCurve(index[i]);
|
||||||
// }
|
}
|
||||||
// mrw->CloseCurve(indexout);
|
mrw->CloseCurve(indexout);
|
||||||
|
|
||||||
// for(int j=0;j<noi;j++)
|
for(int j=0;j<noi;j++)
|
||||||
// {
|
{
|
||||||
// if(fun.csName[j]=="CURRENT_HD.DEP")continue;
|
if(fun.csName[j]=="CURRENT_HD.DEP")continue;
|
||||||
// delete indata[j];
|
delete indata[j];
|
||||||
// }
|
}
|
||||||
// delete []indata;
|
delete []indata;
|
||||||
// delete []outdata;
|
delete []outdata;
|
||||||
// Slf_FILE_MESSAGE msag;
|
Slf_FILE_MESSAGE msag;
|
||||||
// mrw->GetFileMessage(msag);
|
mrw->GetFileMessage(msag);
|
||||||
// delete mrw;
|
delete mrw;
|
||||||
// GetObjectEvent().OnDeAttchData(m_FileName,fun.csOutName);
|
// GetObjectEvent().OnDeAttchData(m_FileName,fun.csOutName);
|
||||||
// GetObjectEvent().OnRefreshData(m_FileName,fun.csOutName,this);
|
// GetObjectEvent().OnRefreshData(m_FileName,fun.csOutName,this);
|
||||||
|
|
||||||
// QStringList CurveNames;
|
QStringList CurveNames;
|
||||||
// CurveNames.push_back(msag.WellName);
|
CurveNames.push_back(msag.WellName);
|
||||||
// CurveNames.push_back(m_FileName);
|
CurveNames.push_back(m_FileName);
|
||||||
// CurveNames.push_back(fun.csOutName);
|
CurveNames.push_back(fun.csOutName);
|
||||||
// if(!newCurve.isEmpty())CurveNames.push_back(newCurve);
|
if(!newCurve.isEmpty())CurveNames.push_back(newCurve);
|
||||||
// PaiObject::m_EventAgent.ObjectPropertyChanged(GetProject(),"Compute",CurveNames);
|
// PaiObject::m_EventAgent.ObjectPropertyChanged(GetProject(),"Compute",CurveNames);
|
||||||
|
QStringList CurveNames1;
|
||||||
// QMessageBox::information(m_pDialog,"提示","计算完毕!",QMessageBox::Ok);
|
CurveNames1.append(fun.csOutName);
|
||||||
|
emit CallGlobalManage::getInstance()->sig_Notice_Changed("DataMgr", m_FileName, CurveNames1);
|
||||||
|
QMessageBox::information(m_pDialog,"提示","计算完毕!",QMessageBox::Ok);
|
||||||
}
|
}
|
||||||
//曲线计算
|
//曲线计算
|
||||||
// void CDataManagger::CurveCompute(QList<CObjWellLog*>objs,int no)
|
// void CDataManagger::CurveCompute(QList<CObjWellLog*>objs,int no)
|
||||||
|
|
@ -1783,101 +1785,101 @@ void CDataManagger::accept1()
|
||||||
// }
|
// }
|
||||||
// }
|
// }
|
||||||
|
|
||||||
// void CDataManagger::CurveCompute(const QString& FileName,const QStringList& CurveNameList)
|
void CDataManagger::CurveCompute(const QString& FileName,const QStringList& CurveNameList)
|
||||||
// {
|
{
|
||||||
// m_CurveNameList=CurveNameList;
|
m_CurveNameList=CurveNameList;
|
||||||
// if(CurveNameList.count()==1)
|
if(CurveNameList.count()==1)
|
||||||
// {
|
{
|
||||||
// QDialog dialog(NULL);
|
QDialog dialog(NULL);
|
||||||
// dialog.setModal(false);
|
dialog.setModal(false);
|
||||||
// m_pDialog=&dialog;
|
m_pDialog=&dialog;
|
||||||
// Qt::WindowFlags flags = dialog.windowFlags();
|
Qt::WindowFlags flags = dialog.windowFlags();
|
||||||
// flags |= Qt::WindowStaysOnTopHint;
|
flags |= Qt::WindowStaysOnTopHint;
|
||||||
// flags &= ~Qt::WindowContextHelpButtonHint;
|
flags &= ~Qt::WindowContextHelpButtonHint;
|
||||||
// dialog.setWindowFlags(flags);
|
dialog.setWindowFlags(flags);
|
||||||
// dialog.setWindowTitle(QString("曲线计算"));
|
dialog.setWindowTitle(QString("曲线计算"));
|
||||||
// QFormLayout form(&dialog);
|
QFormLayout form(&dialog);
|
||||||
// QString CurveName=CurveNameList[0];
|
QString CurveName=CurveNameList[0];
|
||||||
|
|
||||||
// m_CurveName=CurveNameList[0];
|
m_CurveName=CurveNameList[0];
|
||||||
// m_FileName=FileName;
|
m_FileName=FileName;
|
||||||
// CMemRdWt *mrw=new CMemRdWt();
|
CMemRdWt *mrw=new CMemRdWt();
|
||||||
// if(!mrw->Open(FileName.toStdString().c_str(),CSlfIO::modeReadWrite)) {
|
if(!mrw->Open(FileName.toStdString().c_str(),CSlfIO::modeReadWrite)) {
|
||||||
// delete mrw;
|
delete mrw;
|
||||||
// return;
|
return;
|
||||||
// }
|
}
|
||||||
// int index=mrw->OpenCurve(CurveName.toStdString().c_str());
|
int index=mrw->OpenCurve(CurveName.toStdString().c_str());
|
||||||
// if(index<0) {
|
if(index<0) {
|
||||||
// delete mrw;
|
delete mrw;
|
||||||
// return;
|
return;
|
||||||
// }
|
}
|
||||||
// Slf_CURVE pInfo;
|
Slf_CURVE pInfo;
|
||||||
// mrw->GetCurveInfo(index,&pInfo);
|
mrw->GetCurveInfo(index,&pInfo);
|
||||||
// Slf_FILE_MESSAGE msag;
|
Slf_FILE_MESSAGE msag;
|
||||||
// mrw->GetFileMessage(msag);
|
mrw->GetFileMessage(msag);
|
||||||
// delete mrw;
|
delete mrw;
|
||||||
// // 开始深度
|
// 开始深度
|
||||||
// QString value1 = QString("开始深度: ");
|
QString value1 = QString("开始深度: ");
|
||||||
// QLineEdit *edit1 = new QLineEdit(&dialog);
|
QLineEdit *edit1 = new QLineEdit(&dialog);
|
||||||
// m_edit1=edit1;
|
m_edit1=edit1;
|
||||||
// form.addRow(value1, edit1);
|
form.addRow(value1, edit1);
|
||||||
// edit1->setText(QString::number(pInfo.StartDepth));
|
edit1->setText(QString::number(pInfo.StartDepth));
|
||||||
// edit1->setValidator(new QDoubleValidator(-9999999,9999999,6,this));
|
edit1->setValidator(new QDoubleValidator(-9999999,9999999,6,this));
|
||||||
|
|
||||||
// // 终止深度
|
// 终止深度
|
||||||
// QString value2 = QString("终止深度: ");
|
QString value2 = QString("终止深度: ");
|
||||||
// QLineEdit *edit2 = new QLineEdit(&dialog);
|
QLineEdit *edit2 = new QLineEdit(&dialog);
|
||||||
// edit2->setValidator(new QDoubleValidator(-9999999,9999999,6,this));
|
edit2->setValidator(new QDoubleValidator(-9999999,9999999,6,this));
|
||||||
// m_edit2=edit2;
|
m_edit2=edit2;
|
||||||
// form.addRow(value2, edit2);
|
form.addRow(value2, edit2);
|
||||||
// edit2->setText(QString::number(pInfo.EndDepth));
|
edit2->setText(QString::number(pInfo.EndDepth));
|
||||||
// //计算公式
|
//计算公式
|
||||||
// QString value3 = QString("计算公式: ");
|
QString value3 = QString("计算公式: ");
|
||||||
// QLineEdit *edit3 = new QLineEdit(&dialog);
|
QLineEdit *edit3 = new QLineEdit(&dialog);
|
||||||
// form.addRow(value3, edit3);
|
form.addRow(value3, edit3);
|
||||||
// QString ss=CurveName+"=1.0*"+CurveName+"+0.0";
|
QString ss=CurveName+"=1.0*"+CurveName+"+0.0";
|
||||||
// edit3->setText(ss);
|
edit3->setText(ss);
|
||||||
// m_edit2=edit2;
|
m_edit2=edit2;
|
||||||
// m_edit3=edit3;
|
m_edit3=edit3;
|
||||||
// QString value4 = QString("\n常用数学运算符:\n 加:+,减:-,乘:*,除:/,取余:%,乘方:^,对数:!\n")+
|
QString value4 = QString("\n常用数学运算符:\n 加:+,减:-,乘:*,除:/,取余:%,乘方:^,对数:!\n")+
|
||||||
// QString(" 如:PAR =SP/CAL+RT^2.5-10!AC\n 10!表示取以10为底的对数,1! 表示取自然对数");
|
QString(" 如:PAR =SP/CAL+RT^2.5-10!AC\n 10!表示取以10为底的对数,1! 表示取自然对数");
|
||||||
// QString value5 = QString("\n规则及约定:\n 1、输入对象必须是常规曲线名、深度标识或常量\n")+
|
QString value5 = QString("\n规则及约定:\n 1、输入对象必须是常规曲线名、深度标识或常量\n")+
|
||||||
// QString(" 如:GR=2*GR+5;GR2=45;TEMP=18+0.038*\"DEPTH\"\n")+
|
QString(" 如:GR=2*GR+5;GR2=45;TEMP=18+0.038*\"DEPTH\"\n")+
|
||||||
// QString(" 其中:\"DEPTH\"表示深度;\n")+
|
QString(" 其中:\"DEPTH\"表示深度;\n")+
|
||||||
// QString(" 2、当导入曲线不存在时:\n 如果有输入曲线存在,程序自动根据第一条输入曲线的属性产生导入曲线;\n")+
|
QString(" 2、当导入曲线不存在时:\n 如果有输入曲线存在,程序自动根据第一条输入曲线的属性产生导入曲线;\n")+
|
||||||
// QString(" 否则,程序自动产生一条浮点类型的导入曲线,采样间隔为0.125。");
|
QString(" 否则,程序自动产生一条浮点类型的导入曲线,采样间隔为0.125。");
|
||||||
// form.addRow(new QLabel(value4));
|
form.addRow(new QLabel(value4));
|
||||||
// form.addRow(new QLabel(value5));
|
form.addRow(new QLabel(value5));
|
||||||
// // Add Cancel and OK button
|
// Add Cancel and OK button
|
||||||
// QDialogButtonBox buttonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel,
|
QDialogButtonBox buttonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel,
|
||||||
// Qt::Horizontal, &dialog);
|
Qt::Horizontal, &dialog);
|
||||||
// form.addRow(&buttonBox);
|
form.addRow(&buttonBox);
|
||||||
// QObject::connect(&buttonBox, SIGNAL(accepted()), this, SLOT(accept1()));
|
QObject::connect(&buttonBox, SIGNAL(accepted()), this, SLOT(accept1()));
|
||||||
// QObject::connect(&buttonBox, SIGNAL(rejected()), &dialog, SLOT(reject()));
|
QObject::connect(&buttonBox, SIGNAL(rejected()), &dialog, SLOT(reject()));
|
||||||
// // Process when OK button is clicked
|
// Process when OK button is clicked
|
||||||
// dialog.show();
|
dialog.show();
|
||||||
// if (dialog.exec() == QDialog::Accepted)
|
if (dialog.exec() == QDialog::Accepted)
|
||||||
// {
|
{
|
||||||
// }
|
}
|
||||||
// pai::graphics::CDataImport::ChangetoSlf(FileName,NULL);
|
CDataImport::ChangetoSlf(FileName,NULL);
|
||||||
// }
|
}
|
||||||
// else
|
else
|
||||||
// {
|
{
|
||||||
// CCurveComputerDlg *pDlg=new CCurveComputerDlg();
|
CCurveComputerDlg *pDlg=new CCurveComputerDlg();
|
||||||
// pDlg->FileName=FileName;
|
pDlg->FileName=FileName;
|
||||||
// pDlg->CurveNameList=CurveNameList;
|
pDlg->CurveNameList=CurveNameList;
|
||||||
// pDlg->init();//FileName, CurveNameList);
|
pDlg->init();//FileName, CurveNameList);
|
||||||
// pDlg->setModal(false);
|
pDlg->setModal(false);
|
||||||
// Qt::WindowFlags flags = pDlg->windowFlags();
|
Qt::WindowFlags flags = pDlg->windowFlags();
|
||||||
// flags |= Qt::WindowStaysOnTopHint;
|
flags |= Qt::WindowStaysOnTopHint;
|
||||||
// pDlg->setWindowFlags(flags);
|
pDlg->setWindowFlags(flags);
|
||||||
// pDlg->exec();
|
pDlg->exec();
|
||||||
// delete pDlg;
|
delete pDlg;
|
||||||
// pDlg=NULL;
|
pDlg=NULL;
|
||||||
// pai::graphics::CDataImport::ChangetoSlf(FileName,NULL);
|
CDataImport::ChangetoSlf(FileName,NULL);
|
||||||
// QMessageBox::information(NULL,"提示","计算完毕!",QMessageBox::Ok);
|
QMessageBox::information(NULL,"提示","计算完毕!",QMessageBox::Ok);
|
||||||
// }
|
}
|
||||||
// }
|
}
|
||||||
|
|
||||||
void CDataManagger::CallDisplayWaveOrCurve(int Type, const QString& FileName,
|
void CDataManagger::CallDisplayWaveOrCurve(int Type, const QString& FileName,
|
||||||
const QString& CurveName, QWidget* parent)
|
const QString& CurveName, QWidget* parent)
|
||||||
|
|
|
||||||
|
|
@ -77,6 +77,7 @@ private slots:
|
||||||
void slotImport();
|
void slotImport();
|
||||||
void slotExpdView();
|
void slotExpdView();
|
||||||
void slotVerScrollValueChange(int nValue);
|
void slotVerScrollValueChange(int nValue);
|
||||||
|
void s_Notice_Changed(QString strName, QString strSlfName, QStringList listObject);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void swtichViewSize();
|
void swtichViewSize();
|
||||||
|
|
|
||||||
|
|
@ -52,6 +52,7 @@ WellLogTableDialogNew::WellLogTableDialogNew(QWidget *parent, Qt::WindowFlags fl
|
||||||
connect(m_pUI->btnExport, SIGNAL(clicked()), this, SLOT(slotExport()));
|
connect(m_pUI->btnExport, SIGNAL(clicked()), this, SLOT(slotExport()));
|
||||||
connect(m_pUI->btnImport, SIGNAL(clicked()), this, SLOT(slotImport()));
|
connect(m_pUI->btnImport, SIGNAL(clicked()), this, SLOT(slotImport()));
|
||||||
connect(m_pUI->btnExpView, SIGNAL(clicked()), this, SLOT(slotExpdView()));
|
connect(m_pUI->btnExpView, SIGNAL(clicked()), this, SLOT(slotExpdView()));
|
||||||
|
connect(CallGlobalManage::getInstance(), SIGNAL(sig_Notice_Changed(QString, QString, QStringList)), this, SLOT(s_Notice_Changed(QString, QString, QStringList)));
|
||||||
m_DataTyle=valid_NULL;
|
m_DataTyle=valid_NULL;
|
||||||
m_pUI->btnExport->setIcon(QIcon( ::GetImagePath() + "icon/Export.png"));
|
m_pUI->btnExport->setIcon(QIcon( ::GetImagePath() + "icon/Export.png"));
|
||||||
m_pUI->btnImport->setIcon(QIcon( ::GetImagePath() + "icon/Import.png"));
|
m_pUI->btnImport->setIcon(QIcon( ::GetImagePath() + "icon/Import.png"));
|
||||||
|
|
@ -82,6 +83,10 @@ void WellLogTableDialogNew::slotExpdView()
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
void WellLogTableDialogNew::s_Notice_Changed(QString strName, QString strSlfName, QStringList listObject)
|
||||||
|
{
|
||||||
|
ReFreshWindow(0);
|
||||||
|
}
|
||||||
|
|
||||||
void WellLogTableDialogNew::swtichViewSize()
|
void WellLogTableDialogNew::swtichViewSize()
|
||||||
{
|
{
|
||||||
|
|
@ -161,7 +166,7 @@ void WellLogTableDialogNew::swtichViewSize()
|
||||||
|
|
||||||
void WellLogTableDialogNew::ReFreshWindow(int type)
|
void WellLogTableDialogNew::ReFreshWindow(int type)
|
||||||
{
|
{
|
||||||
// m_gridData->ReFreshWindow(m_gridData->m_dtype);
|
m_gridData->ReFreshWindow(m_gridData->m_dtype);
|
||||||
|
|
||||||
}
|
}
|
||||||
void WellLogTableDialogNew::slotExport()
|
void WellLogTableDialogNew::slotExport()
|
||||||
|
|
|
||||||
|
|
@ -682,6 +682,7 @@ void GridDataAdapter::ReFreshWindow(int type)
|
||||||
m_pWellLogs[i]->isLoad=false;
|
m_pWellLogs[i]->isLoad=false;
|
||||||
m_pWellLogs[i]->LoadFromSLF();
|
m_pWellLogs[i]->LoadFromSLF();
|
||||||
}
|
}
|
||||||
|
slotHorScrollBarPressed();// 防止滑动滚动条后不刷新
|
||||||
updatetWellLogData();
|
updatetWellLogData();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -42,6 +42,7 @@ QtProjectWidgets::QtProjectWidgets(QWidget *parent)
|
||||||
QtCommonClass *qtCommon = new QtCommonClass(this);
|
QtCommonClass *qtCommon = new QtCommonClass(this);
|
||||||
qtCommon->setButtonIconWithText(ui->btnFind, ::GetImagePath()+"crossplot/search.png", "", font, _fontColor);
|
qtCommon->setButtonIconWithText(ui->btnFind, ::GetImagePath()+"crossplot/search.png", "", font, _fontColor);
|
||||||
|
|
||||||
|
magr=new CDataManagger();
|
||||||
//initTreeWidget("", "wwer");
|
//initTreeWidget("", "wwer");
|
||||||
|
|
||||||
connect(ui->btnFind, &QPushButton::clicked, this, [ = ]()
|
connect(ui->btnFind, &QPushButton::clicked, this, [ = ]()
|
||||||
|
|
@ -920,6 +921,11 @@ void QtProjectWidgets::initCurveObjectTreeMenu(QMenu *menu, QTreeWidget *treeWid
|
||||||
connect(action_InfoEdit, SIGNAL(triggered()), this, SLOT(onInfoEdit()));
|
connect(action_InfoEdit, SIGNAL(triggered()), this, SLOT(onInfoEdit()));
|
||||||
menu->addAction(action_InfoEdit);
|
menu->addAction(action_InfoEdit);
|
||||||
|
|
||||||
|
QAction* action_CurveCompute = new QAction("曲线计算", treeWidget);
|
||||||
|
action_CurveCompute->setIcon(QIcon(GetImagePath() + "icon/AddToTrack.png"));
|
||||||
|
connect(action_CurveCompute, SIGNAL(triggered()), this, SLOT(onCurveCompute()));
|
||||||
|
menu->addAction(action_CurveCompute);
|
||||||
|
|
||||||
QAction* action_Copy = new QAction("复制", treeWidget);
|
QAction* action_Copy = new QAction("复制", treeWidget);
|
||||||
action_Copy->setIcon(QIcon(GetImagePath() + "icon/Copy.png")); // 设置图标":/image/u174.png"
|
action_Copy->setIcon(QIcon(GetImagePath() + "icon/Copy.png")); // 设置图标":/image/u174.png"
|
||||||
connect(action_Copy, SIGNAL(triggered()), this, SLOT(onCopySelObject()));
|
connect(action_Copy, SIGNAL(triggered()), this, SLOT(onCopySelObject()));
|
||||||
|
|
@ -1610,6 +1616,29 @@ void QtProjectWidgets::onWaveCompose(bool checked)
|
||||||
// pwelllog->SetWell(pObjWellLog->GetWelllogRound()->GetWell());
|
// pwelllog->SetWell(pObjWellLog->GetWelllogRound()->GetWell());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void QtProjectWidgets::onCurveCompute(bool checked)
|
||||||
|
{
|
||||||
|
if (NULL==magr)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
QTreeWidgetItem *pItemFirst = *(ui->treeWidget->selectedItems().begin());
|
||||||
|
QString FileName=pItemFirst->data(0, Qt::UserRole+1).toString();
|
||||||
|
QStringList CurveNameList;
|
||||||
|
foreach(QTreeWidgetItem *pItem, ui->treeWidget->selectedItems())
|
||||||
|
{
|
||||||
|
QString strTreeTag = pItem->data(0, Qt::UserRole).toString();
|
||||||
|
if (strTreeTag == "curveObject" && FileName==pItem->data(0, Qt::UserRole+1).toString())
|
||||||
|
{
|
||||||
|
CurveNameList.append(pItem->text(0));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
magr->CurveCompute(FileName,CurveNameList);
|
||||||
|
}
|
||||||
|
|
||||||
void QtProjectWidgets::onInfoEdit(bool checked)//whp add 2019.12.27 曲线属性编辑
|
void QtProjectWidgets::onInfoEdit(bool checked)//whp add 2019.12.27 曲线属性编辑
|
||||||
{
|
{
|
||||||
if (ui->treeWidget->selectedItems().size()>1)
|
if (ui->treeWidget->selectedItems().size()>1)
|
||||||
|
|
@ -2190,10 +2219,10 @@ void QtProjectWidgets::onPasteSelObject() // 粘贴
|
||||||
foreach(QTreeWidgetItem *pItem, ui->treeWidget->selectedItems())
|
foreach(QTreeWidgetItem *pItem, ui->treeWidget->selectedItems())
|
||||||
{
|
{
|
||||||
QTreeWidgetItem *parentItem = pItem/*->parent()*/; // 上一层目录是井次
|
QTreeWidgetItem *parentItem = pItem/*->parent()*/; // 上一层目录是井次
|
||||||
if (parentItem && m_strSlfName == parentItem->data(0, Qt::UserRole+1).toString())
|
if (parentItem && "wellItem" == parentItem->data(0, Qt::UserRole).toString() && m_strSlfName == parentItem->data(0, Qt::UserRole+1).toString())
|
||||||
RefreshWellRoundTree(parentItem);
|
RefreshWellRoundTree(parentItem);
|
||||||
parentItem = parentItem = pItem->parent();
|
parentItem = parentItem = pItem->parent();
|
||||||
if (parentItem && m_strSlfName == parentItem->data(0, Qt::UserRole+1).toString())
|
if (parentItem && "wellItem" == parentItem->data(0, Qt::UserRole).toString() && m_strSlfName == parentItem->data(0, Qt::UserRole+1).toString())
|
||||||
RefreshWellRoundTree(parentItem);
|
RefreshWellRoundTree(parentItem);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
@ -2290,7 +2319,7 @@ void QtProjectWidgets::onPasteWell()
|
||||||
//刷新井次树
|
//刷新井次树
|
||||||
void QtProjectWidgets::RefreshWellRoundTree(QTreeWidgetItem *parentItem)
|
void QtProjectWidgets::RefreshWellRoundTree(QTreeWidgetItem *parentItem)
|
||||||
{
|
{
|
||||||
if (parentItem && m_strSlfName == parentItem->data(0, Qt::UserRole+1).toString())
|
if (parentItem && "wellItem" == parentItem->data(0, Qt::UserRole).toString() && m_strSlfName == parentItem->data(0, Qt::UserRole+1).toString())
|
||||||
{
|
{
|
||||||
// qDeleteAll(parentItem->takeChildren());
|
// qDeleteAll(parentItem->takeChildren());
|
||||||
QTreeWidgetItem *pWellItem = parentItem->parent();
|
QTreeWidgetItem *pWellItem = parentItem->parent();
|
||||||
|
|
|
||||||
|
|
@ -60,6 +60,7 @@ public slots:
|
||||||
void onDepthResample(bool checked = false); //深度重采样
|
void onDepthResample(bool checked = false); //深度重采样
|
||||||
void onCurve2Table(bool checked = false); //转换为结论表格
|
void onCurve2Table(bool checked = false); //转换为结论表格
|
||||||
void onWaveCompose(bool checked = false); //合成阵列曲线
|
void onWaveCompose(bool checked = false); //合成阵列曲线
|
||||||
|
void onCurveCompute(bool checked = false); //曲线计算
|
||||||
void onInfoEdit(bool checked = false); //属性
|
void onInfoEdit(bool checked = false); //属性
|
||||||
|
|
||||||
//TDT
|
//TDT
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user