追加放大、缩小功能,目前简化为针对道宽的放大缩小。深度依然采用比例尺,不然深度比例容易混乱
This commit is contained in:
parent
0e9fdeab6e
commit
d0c4bbc89f
|
|
@ -673,6 +673,55 @@ int FormWell::setColWidth(int iCurrentCol, float fWidth)
|
|||
return iWellWidth;
|
||||
}
|
||||
|
||||
int FormWell::setColWidth_ZoomIn(float fNewZoom)
|
||||
{
|
||||
int newColCount = ui->tableWidget->columnCount();
|
||||
for (int i = 0; i < newColCount; i++)
|
||||
{
|
||||
int iCurrentCol = i;
|
||||
|
||||
auto topWidget = ui->tableWidget->cellWidget(0, iCurrentCol);
|
||||
if(topWidget)
|
||||
{
|
||||
FormTrackTop *formTop = qobject_cast<FormTrackTop*>(topWidget);//获得widget
|
||||
if(formTop)
|
||||
{
|
||||
float fWidth = formTop->m_nTrackW * fNewZoom;//放大
|
||||
int iNewWidth = static_cast<int>(fWidth * g_dPixelPerCm);
|
||||
//设置列宽
|
||||
ui->tableWidget->setColumnWidth(iCurrentCol, iNewWidth);
|
||||
formTop->m_nTrackW = fWidth;
|
||||
|
||||
//-------------------------------------
|
||||
auto myWidget = ui->tableWidget->cellWidget(2, iCurrentCol);
|
||||
if(myWidget)
|
||||
{
|
||||
//
|
||||
FormDraw *formDraw = qobject_cast<FormDraw*>(myWidget);//获得widget
|
||||
if(formDraw)
|
||||
{
|
||||
if (formDraw->m_formTrack)
|
||||
{
|
||||
formDraw->m_formTrack->setFixedWidth(iNewWidth);
|
||||
}
|
||||
formDraw->setColWidth(fWidth);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//计算井宽
|
||||
int iWellWidth = 0;
|
||||
int columnCount = ui->tableWidget->columnCount();//总列数
|
||||
for(int i=0; i<columnCount; i++)
|
||||
{
|
||||
iWellWidth += ui->tableWidget->columnWidth(i);
|
||||
}
|
||||
return iWellWidth;
|
||||
}
|
||||
|
||||
|
||||
void FormWell::setWellProperty(QVariantList listVal)
|
||||
{
|
||||
QString strGroup = listVal.at(0).toString();
|
||||
|
|
|
|||
|
|
@ -78,6 +78,7 @@ public:
|
|||
void setRowHeight(double dHight, QProgressBar *progressBar, int iSplit);
|
||||
//设置道宽
|
||||
int setColWidth(int iCurrentCol, float iNewWidth);
|
||||
int setColWidth_ZoomIn(float fNewZoom);
|
||||
|
||||
void setWellProperty(QVariantList listVal);
|
||||
|
||||
|
|
|
|||
|
|
@ -362,9 +362,8 @@ void MainWindowCurve::initMainToolBar()
|
|||
ui->mainToolBar->setIconSize(toolIconSize); //设置工具栏图标大小
|
||||
ui->mainToolBar->setStyleSheet("QToolButton:checked { background-color: rgb(188,216,239); }");
|
||||
|
||||
QIcon selectWellIcon(::GetImagePath()+"icon/WellTops.png");
|
||||
QIcon selectWellIcon(::GetImagePath()+"icon/SelectWells.png");
|
||||
QIcon fixwellsectionHeaderIcon(::GetImagePath()+"icon/fixwellsectionHeader.png");
|
||||
QIcon currtempliteIcon(::GetImagePath()+"icon/currtemplite.png");
|
||||
QIcon saveastemplateIcon(::GetImagePath()+"icon/SaveAsTemplate.png");
|
||||
QIcon executeDepthShiftIcon(::GetImagePath()+"icon/ExecuteDepthShift.png");
|
||||
QIcon joindepthIcon(::GetImagePath()+"icon/joindepth.png");
|
||||
|
|
@ -375,40 +374,44 @@ void MainWindowCurve::initMainToolBar()
|
|||
QIcon doubleHeadIcon(::GetImagePath()+"icon/oneortwohead.png");
|
||||
QIcon autorollIcon(::GetImagePath()+"icon/autoroll.png");
|
||||
QIcon blackIcon(::GetImagePath()+"icon/image/black.png");
|
||||
QIcon zoominIcon(::GetImagePath()+"icon/zoomin.png");
|
||||
QIcon zoomoutIcon(::GetImagePath()+"icon/zoomout.png");
|
||||
|
||||
//Main工具栏
|
||||
m_selectWellAc = new QAction(selectWellIcon, "选择井", this);
|
||||
m_selectWellAc = new QAction(selectWellIcon, "设置井", this);
|
||||
m_fixwellsectionHeaderAc = new QAction(fixwellsectionHeaderIcon, "锁头", this);
|
||||
m_currtempliteAc = new QAction(currtempliteIcon, "加载图文件", this);
|
||||
m_saveastemplateAc = new QAction(saveastemplateIcon, "另存为图文件", this);
|
||||
m_zoominAc = new QAction(zoominIcon, "放大", this);
|
||||
m_zoomoutAc = new QAction(zoomoutIcon, "缩小", this);
|
||||
m_SaveAsPictureAc = new QAction(SaveAsPictureIcon, "导出长图", this);
|
||||
m_SaveAsPdfAc = new QAction(SaveAsPdfIcon, "导出PDF", this);
|
||||
m_SaveAsSvgAc = new QAction(SaveAsSvgIcon, "导出SVG", this);
|
||||
m_blackAc = new QAction(blackIcon, "黑白图", this);
|
||||
m_doubleHeadAc = new QAction(doubleHeadIcon, "单曲线头", this);
|
||||
m_executeDepthShiftAc = new QAction(executeDepthShiftIcon, "校深", this);
|
||||
m_joindepthAc = new QAction(joindepthIcon, "拼接", this);
|
||||
m_autorollAc = new QAction(autorollIcon, "图像自滚", this);
|
||||
m_ModuleOpenAc = new QAction(ModuleOpenIcon, "处理方法", this);
|
||||
m_SaveAsPictureAc = new QAction(SaveAsPictureIcon, "导出长图", this);
|
||||
m_SaveAsPdfAc = new QAction(SaveAsPdfIcon, "导出PDF", this);
|
||||
m_SaveAsSvgAc = new QAction(SaveAsSvgIcon, "导出SVG", this);
|
||||
|
||||
ui->mainToolBar->setToolButtonStyle(Qt::ToolButtonTextBesideIcon); //此种方式为文字显示在图标右侧
|
||||
|
||||
//add QAction to Widget.
|
||||
ui->mainToolBar->addAction(m_selectWellAc);
|
||||
ui->mainToolBar->addAction(m_fixwellsectionHeaderAc); //锁头
|
||||
//ui->mainToolBar->addAction(m_currtempliteAc);
|
||||
ui->mainToolBar->addAction(m_saveastemplateAc); //另存为图文件
|
||||
ui->mainToolBar->addSeparator();
|
||||
ui->mainToolBar->addAction(m_zoominAc); //放大
|
||||
ui->mainToolBar->addAction(m_zoomoutAc); //缩小
|
||||
ui->mainToolBar->addAction(m_SaveAsPictureAc); //导出长图
|
||||
ui->mainToolBar->addAction(m_SaveAsPdfAc); //导出PDF
|
||||
ui->mainToolBar->addAction(m_SaveAsSvgAc); //导出SVG
|
||||
ui->mainToolBar->addSeparator();
|
||||
ui->mainToolBar->addAction(m_blackAc); //黑白图
|
||||
ui->mainToolBar->addAction(m_doubleHeadAc); //单曲线头
|
||||
ui->mainToolBar->addAction(m_executeDepthShiftAc); //校深
|
||||
ui->mainToolBar->addAction(m_joindepthAc); //拼接
|
||||
ui->mainToolBar->addAction(m_autorollAc); //图像自滚
|
||||
ui->mainToolBar->addAction(m_ModuleOpenAc); //处理方法
|
||||
ui->mainToolBar->addSeparator();
|
||||
ui->mainToolBar->addAction(m_SaveAsPictureAc); //导出长图
|
||||
ui->mainToolBar->addAction(m_SaveAsPdfAc); //导出PDF
|
||||
ui->mainToolBar->addAction(m_SaveAsSvgAc); //导出SVG
|
||||
|
||||
// 设置为可选中
|
||||
m_fixwellsectionHeaderAc->setCheckable(true); //锁头
|
||||
|
|
@ -420,19 +423,20 @@ void MainWindowCurve::initMainToolBar()
|
|||
|
||||
connect(m_selectWellAc, &QAction::triggered, this, &MainWindowCurve::s_selectWell);
|
||||
connect(m_fixwellsectionHeaderAc, &QAction::triggered, this, &MainWindowCurve::s_showHeadTable);
|
||||
connect(m_currtempliteAc, &QAction::triggered, this, &MainWindowCurve::s_currtemplite);
|
||||
connect(m_saveastemplateAc, &QAction::triggered, this, &MainWindowCurve::s_Save);
|
||||
|
||||
connect(m_zoominAc, &QAction::triggered, this, &MainWindowCurve::s_ZoomIn);
|
||||
connect(m_zoomoutAc, &QAction::triggered, this, &MainWindowCurve::s_ZoomOut);
|
||||
connect(m_SaveAsPictureAc, &QAction::triggered, this, &MainWindowCurve::s_SaveAsPicture);
|
||||
connect(m_SaveAsPdfAc, &QAction::triggered, this, &MainWindowCurve::s_SaveAsPdf);
|
||||
connect(m_SaveAsSvgAc, &QAction::triggered, this, &MainWindowCurve::s_SaveAsSvg);
|
||||
|
||||
connect(m_blackAc, &QAction::triggered, this, &MainWindowCurve::s_Black);
|
||||
connect(m_doubleHeadAc, &QAction::triggered, this, &MainWindowCurve::s_DoubleHead);
|
||||
connect(m_executeDepthShiftAc, &QAction::triggered, this, &MainWindowCurve::s_ExecuteDepthShift);
|
||||
connect(m_joindepthAc, &QAction::triggered, this, &MainWindowCurve::s_ExecuteMerge);
|
||||
connect(m_autorollAc, &QAction::triggered, this, &MainWindowCurve::s_Autoroll);
|
||||
|
||||
connect(m_ModuleOpenAc, &QAction::triggered, this, &MainWindowCurve::s_ModuleOpen);
|
||||
connect(m_SaveAsPictureAc, &QAction::triggered, this, &MainWindowCurve::s_SaveAsPicture);
|
||||
connect(m_SaveAsPdfAc, &QAction::triggered, this, &MainWindowCurve::s_SaveAsPdf);
|
||||
connect(m_SaveAsSvgAc, &QAction::triggered, this, &MainWindowCurve::s_SaveAsSvg);
|
||||
|
||||
connect(CallManage::getInstance(), SIGNAL(sig_SaveAsPicture()), this, SLOT(s_SaveAsPicture()));
|
||||
connect(CallManage::getInstance(), SIGNAL(sig_SaveAsPdf()), this, SLOT(s_SaveAsPdf()));
|
||||
|
|
@ -2639,11 +2643,6 @@ void MainWindowCurve::loadStyle(const QString &qssFile)
|
|||
}
|
||||
}
|
||||
|
||||
void MainWindowCurve::s_currtemplite()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void MainWindowCurve::s_Save()
|
||||
{
|
||||
//Logdata
|
||||
|
|
@ -2796,6 +2795,53 @@ void MainWindowCurve::s_ModuleOpen()
|
|||
m_pParentWin->setModuleOpenOrClose();
|
||||
}
|
||||
|
||||
//缩放
|
||||
void MainWindowCurve::ZoomIn(float fNewZoom)
|
||||
{
|
||||
int columnCount = ui->tableWidget_2->columnCount();//总列数
|
||||
for(int i=0; i<columnCount; i++)
|
||||
{
|
||||
if(i%2==0)
|
||||
{
|
||||
}
|
||||
else
|
||||
{
|
||||
//空白列
|
||||
continue;
|
||||
}
|
||||
|
||||
if( ui->tableWidget_2->cellWidget(1, i) != nullptr )
|
||||
{
|
||||
auto myWidget = ui->tableWidget_2->cellWidget(1, i);
|
||||
if(myWidget)
|
||||
{
|
||||
//
|
||||
FormWell *widgetWell = (FormWell*)myWidget;//获得widget
|
||||
if(widgetWell)
|
||||
{
|
||||
int iWellWidth = widgetWell->setColWidth_ZoomIn(fNewZoom);
|
||||
|
||||
//调整井宽
|
||||
ui->tableWidget_2->setColumnWidth(i, iWellWidth);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//放大
|
||||
void MainWindowCurve::s_ZoomIn()
|
||||
{
|
||||
//宽度放大
|
||||
ZoomIn(1.1);
|
||||
}
|
||||
|
||||
//缩小
|
||||
void MainWindowCurve::s_ZoomOut()
|
||||
{
|
||||
//宽度缩小
|
||||
ZoomIn(0.9);
|
||||
}
|
||||
|
||||
//导出长图
|
||||
void MainWindowCurve::s_SaveAsPicture()
|
||||
|
|
|
|||
|
|
@ -209,17 +209,18 @@ public slots:
|
|||
public:
|
||||
QAction* m_selectWellAc = nullptr; //选择井
|
||||
QAction* m_fixwellsectionHeaderAc = nullptr; //锁头
|
||||
QAction* m_currtempliteAc = nullptr; //加载图文件
|
||||
QAction* m_saveastemplateAc = nullptr; //另存为图文件
|
||||
QAction* m_zoominAc = nullptr; //放大
|
||||
QAction* m_zoomoutAc = nullptr; //缩小
|
||||
QAction* m_SaveAsPictureAc = nullptr; //导出长图
|
||||
QAction* m_SaveAsPdfAc = nullptr; //导出PDF
|
||||
QAction* m_SaveAsSvgAc = nullptr; //导出SVG
|
||||
QAction* m_blackAc = nullptr; //黑白图
|
||||
QAction* m_doubleHeadAc = nullptr; //单曲线头
|
||||
QAction* m_executeDepthShiftAc = nullptr; //校深
|
||||
QAction* m_joindepthAc = nullptr; //拼接
|
||||
QAction* m_autorollAc = nullptr; //图像自滚
|
||||
QAction* m_ModuleOpenAc = nullptr; //处理方法
|
||||
QAction* m_SaveAsPictureAc = nullptr; //导出长图
|
||||
QAction* m_SaveAsPdfAc = nullptr; //导出PDF
|
||||
QAction* m_SaveAsSvgAc = nullptr; //导出SVG
|
||||
|
||||
public slots:
|
||||
void s_NewWell(QString strWellName, QString strSlfName);//新建井
|
||||
|
|
@ -297,17 +298,18 @@ public slots:
|
|||
//
|
||||
void s_selectWell(); //选择井
|
||||
void s_showHeadTable(); //显示/隐藏图头
|
||||
void s_currtemplite(); //加载图文件
|
||||
void s_Save(); //保存图文件
|
||||
void s_SaveAsPicture(); //导出长图
|
||||
void s_SaveAsPdf(); //导出PDF
|
||||
void s_SaveAsSvg(); //导出SVG
|
||||
void s_ZoomIn(); //放大
|
||||
void s_ZoomOut(); //缩小
|
||||
void s_Black(); //黑白图
|
||||
void s_DoubleHead(); //单曲线头
|
||||
void s_ExecuteDepthShift(); //校深
|
||||
void s_ExecuteMerge(); //拼接
|
||||
void s_Autoroll(); //图像自滚
|
||||
void s_ModuleOpen(); //处理算法
|
||||
void s_SaveAsPicture(); //导出长图
|
||||
void s_SaveAsPdf(); //导出PDF
|
||||
void s_SaveAsSvg(); //导出SVG
|
||||
//
|
||||
void _slotExport(QPrinter &printer, int IsBmp, QString pngName, QString strTmpName);
|
||||
//打印出图,改变深度
|
||||
|
|
@ -315,6 +317,9 @@ public slots:
|
|||
|
||||
//图像自滚,定时器处理
|
||||
void onTimer();
|
||||
|
||||
//缩放
|
||||
void ZoomIn(float fNewZoom);
|
||||
};
|
||||
|
||||
#endif // MAINWINDOWCURVE_H
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>选择井</string>
|
||||
<string>设置井</string>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gridLayout">
|
||||
<item row="0" column="0">
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user