选择左侧树井名称 , 点击可视解释,在空白 MainWindowCurve, 点击深度生成井、道、深度视图。

This commit is contained in:
DESKTOP-450PEFP\mainc 2025-12-16 16:33:56 +08:00
parent 5fd6049385
commit 752c7347c9
8 changed files with 77 additions and 6 deletions

View File

@ -379,6 +379,8 @@ void MainWindow::s_showView()
{ {
//---- //----
MainWindowCurve *mainWindowCurve = new MainWindowCurve();//中间工作区 MainWindowCurve *mainWindowCurve = new MainWindowCurve();//中间工作区
// 左侧树
mainWindowCurve->m_leftWidgets = m_projectWidgets;
m_centerWidgets->addTab(mainWindowCurve, "解释视图"); m_centerWidgets->addTab(mainWindowCurve, "解释视图");
return; return;
} }
@ -388,6 +390,8 @@ void MainWindow::s_showView()
//---- //----
MainWindowCurve *mainWindowCurve = new MainWindowCurve();//中间工作区 MainWindowCurve *mainWindowCurve = new MainWindowCurve();//中间工作区
// 左侧树
mainWindowCurve->m_leftWidgets = m_projectWidgets;
m_centerWidgets->addTab(mainWindowCurve, fileName); m_centerWidgets->addTab(mainWindowCurve, fileName);
mainWindowCurve->Open(fileFull); mainWindowCurve->Open(fileFull);

View File

@ -657,12 +657,43 @@ void MainWindowCurve::s_NewTrack()
void MainWindowCurve::s_NewDepth() void MainWindowCurve::s_NewDepth()
{ {
int column = -1;
int nW = 100;
QString strLeft = m_leftWidgets->getLeftTreeString();
if(strLeft.length() > 0)
{
QStringList list = strLeft.split("#@@#");//QString字符串分割函数
if (list.size() > 3)
{
// QString strSlfName = list[0];
QString strWellName = list[1];
// QString strLineName = list[2];
// QString strType = list[3];
if(!m_listWell.contains(strWellName))
{
//井没创建,创建井+道+曲线
//新建井
s_NewWell(strWellName);
m_listWell.push_back(strWellName);
column= 0;
}
}
}
if(ui->tableWidget_2->columnCount()==0) if(ui->tableWidget_2->columnCount()==0)
{ {
return; return;
} }
int column = ui->tableWidget_2->currentColumn();//列编号从0开始 int iWidth = 0;
if(column < 0)
{
column = ui->tableWidget_2->currentColumn();//列编号从0开始
iWidth = ui->tableWidget_2->columnWidth(column);
}
if(column<0) if(column<0)
{ {
//当前没有选中井 //当前没有选中井
@ -679,9 +710,7 @@ void MainWindowCurve::s_NewDepth()
} }
QString strWellName = ui->tableWidget_2->item(0, column)->text(); QString strWellName = ui->tableWidget_2->item(0, column)->text();
int iWidth = ui->tableWidget_2->columnWidth(column);
int nW = 100;
//设置列宽 //设置列宽
ui->tableWidget_2->setColumnWidth(column, iWidth+nW+8); ui->tableWidget_2->setColumnWidth(column, iWidth+nW+8);

View File

@ -5,6 +5,7 @@
#include "formwell.h" #include "formwell.h"
#include "geometryutils.h" #include "geometryutils.h"
#include "formmultiheads.h" #include "formmultiheads.h"
#include "qtprojectwidgets.h"
#pragma execution_character_set("utf-8") #pragma execution_character_set("utf-8")
@ -59,6 +60,8 @@ public:
QDockWidget *m_dock1; QDockWidget *m_dock1;
QtProjectWidgets *m_leftWidgets = NULL; //左侧工程区
public: public:
//展示所有井 //展示所有井
void DisplayWells(QJsonArray wellsArray); void DisplayWells(QJsonArray wellsArray);

View File

@ -507,11 +507,14 @@ void QMyCustomPlot::s_ClearFillMode(QString strUuid, QString strSlfName, QString
{ {
this->removeGraph(1); this->removeGraph(1);
} }
if(graph(0))
{
graph(0)->setBrush(Qt::NoBrush); graph(0)->setBrush(Qt::NoBrush);
// //
replot(); replot();
} }
} }
}
//岩性填充-填充 //岩性填充-填充
void QMyCustomPlot::s_ChangeFillMode(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, void QMyCustomPlot::s_ChangeFillMode(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName,

View File

@ -13,6 +13,30 @@ QMyTreeWidget::~QMyTreeWidget()
} }
QString QMyTreeWidget::getCurrentItemString()
{
QString sret = "";
QTreeWidgetItem *item = currentItem();
if(!item)
return sret;
if(item->parent()==NULL)
{
return sret;
}
QString strTreeTag = item->data(0, Qt::UserRole).toString();
if (strTreeTag == "wellItem")
{
//曲线
QString strSlfName = item->data(0, Qt::UserRole+1).toString();
//井名
QString strWellName = item->text(0);
sret = strSlfName + "#@@#"+ strWellName + "#@@#" +item->text(0)+ "#@@#" + strTreeTag;
}
return sret;
}
void QMyTreeWidget::startDrag(Qt::DropActions supportedActions) void QMyTreeWidget::startDrag(Qt::DropActions supportedActions)
{ {
if(currentItem()->parent()==NULL) if(currentItem()->parent()==NULL)

View File

@ -17,6 +17,7 @@ public:
QMyTreeWidget(QWidget *parent = nullptr); QMyTreeWidget(QWidget *parent = nullptr);
~QMyTreeWidget(); ~QMyTreeWidget();
QString getCurrentItemString();
protected: protected:
virtual void startDrag(Qt::DropActions supportedActions); virtual void startDrag(Qt::DropActions supportedActions);

View File

@ -65,6 +65,11 @@ QtProjectWidgets::~QtProjectWidgets()
delete ui; delete ui;
} }
QString QtProjectWidgets::getLeftTreeString()
{
return ui->treeWidget->getCurrentItemString();
}
//初始化树图控件 //初始化树图控件
void QtProjectWidgets::initTreeWidget(QString fullPath, QString strProjectName) void QtProjectWidgets::initTreeWidget(QString fullPath, QString strProjectName)
{ {

View File

@ -18,6 +18,8 @@ public:
QtProjectWidgets(QWidget *parent = nullptr); QtProjectWidgets(QWidget *parent = nullptr);
~QtProjectWidgets(); ~QtProjectWidgets();
QString getLeftTreeString();
private: private:
Ui::QtProjectWidgetsClass *ui; Ui::QtProjectWidgetsClass *ui;