#include "formline.h" #include "ui_formline.h" #include #include "CallManage.h" #include "DrawTvd.h" //demo画线,暂时不用 FormLine::FormLine(QWidget *parent, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName) : QWidget(parent), ui(new Ui::FormLine) { ui->setupUi(this); m_strSlfName = strSlfName; m_strWellName = strWellName; m_strTrackName = strTrackName; m_strLineName = strLineName; m_drawTvd = new CDrawTvd(); m_parent = parent; //斜井三图一表 connect(CallManage::getInstance(), SIGNAL(sig_ChangeTvdProperty(QString, QString, QString, QString, QString, QString, QString, QVariant)), this, SLOT(s_ChangeTvdProperty(QString, QString, QString, QString, QString, QString, QString, QVariant))); } void FormLine::DrawTvd() { // // // QPainter painter(this); // QRect rect = this->rect(); // //背景透明 // painter.fillRect(rect.left(), rect.top(), rect.width(), rect.height(), QColor(0, 0, 0, 0)); //QColor(67, 67, 67, 100) // CDrawTvd *drawTvd = new CDrawTvd(); // drawTvd->sFilePath = m_strSlfName; // drawTvd->DrawTvd(&painter, rect); } FormLine::~FormLine() { delete ui; } void FormLine::paintEvent(QPaintEvent*) { // QPainter painter(this); QRect rect = this->rect(); // QRect rect = m_parent->rect(); //背景透明 painter.fillRect(rect.left(), rect.top(), rect.width(), rect.height(), QColor(0, 0, 0, 0)); //QColor(67, 67, 67, 100) if (!m_drawTvd) m_drawTvd = new CDrawTvd(); m_drawTvd->sFilePath = m_strSlfName; m_drawTvd->DrawTvd(&painter, rect); // QPainter painter(this); // QRect rect = this->rect(); // //背景透明 // painter.fillRect(rect.left(), rect.top(), rect.width(), rect.height(), QColor(0, 0, 0, 0)); //QColor(67, 67, 67, 100) // painter.setPen(QPen(Qt::green,2,Qt::DashLine)); // //painter.setBrush(QBrush(Qt::red,Qt::SolidPattern)); // QFont font1("微软雅黑", 10, false, false); //fontSize 10 // painter.setFont(font1); // painter.setPen(QColor(0, 0, 0)); // fontColor QColor(220, 220, 220) // painter.drawText(rect.left() + 10, 10, ("画图")); // titleBarText QStringLiteral("动画") // QRect rectRound(rect.left()+2,rect.top()+4, rect.width()-3, rect.height()-4); // painter.drawRoundRect(rectRound); } void FormLine::s_ChangeTvdProperty(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, QString strGroup, QString strProperty, QVariant variant) { if(m_strUuid != strUuid || m_strSlfName != strSlfName || m_strWellName != strWellName || m_strTrackName != strTrackName || m_strLineName != strLineName) { return; } if("通常" == strGroup) { // if("选择井斜数据" == strProperty) // if("显示名称" == strProperty) if("显示井名" == strProperty) m_drawTvd->m_AliasWellName = variant.value(); } if("绘制图形对象" == strGroup) { if("靶心" == strProperty) m_drawTvd->objViewInfo->m_IsDrawBX = variant.value(); if("靶心参数表" == strProperty) m_drawTvd->objViewInfo->m_IsDrawBxcs = variant.value(); if("井斜数据表" == strProperty) m_drawTvd->objViewInfo->m_IsDrawTable = variant.value(); if("俯视图" == strProperty) m_drawTvd->objViewInfo->m_IsDrawFst = variant.value(); if("侧视图深度在左边" == strProperty) m_drawTvd->objViewInfo->m_DepthLeft = variant.value(); if("侧视图(水平位移)" == strProperty) m_drawTvd->objViewInfo->m_IsDrawCst1 = variant.value(); if("侧视图(向东)" == strProperty) m_drawTvd->objViewInfo->m_IsDrawCst2 = variant.value(); if("侧视图(向北)" == strProperty) m_drawTvd->objViewInfo->m_IsDrawCst3 = variant.value(); if("侧视图(侧视角)" == strProperty) m_drawTvd->objViewInfo->m_IsDrawCst = variant.value(); if("立体轨迹图" == strProperty) m_drawTvd->objViewInfo->m_IsDrawLtgjt = variant.value(); if("绘制标注信息" == strProperty) m_drawTvd->objViewInfo->m_isDrawNote = variant.value(); } if("边框线型" == strGroup) { if("线宽" == strProperty) m_drawTvd->m_FrameWidth = variant.value(); else if("颜色" == strProperty) m_drawTvd->m_FrameColor = variant.value(); } if("格线线型" == strGroup) { if("线宽" == strProperty) m_drawTvd->m_GridWidth = variant.value(); else if("颜色" == strProperty) m_drawTvd->m_GridColor = variant.value(); } if("轨迹线型" == strGroup) { if("线宽" == strProperty) m_drawTvd->m_GuijiWidth = variant.value(); else if("颜色" == strProperty) m_drawTvd->m_GuijiColor = variant.value(); } if("靶心半径线型" == strGroup) { if("线宽" == strProperty) m_drawTvd->m_BxbjWidth = variant.value(); else if("颜色" == strProperty) m_drawTvd->m_BxbjColor = variant.value(); } if("靶心连线线型" == strGroup) { if("线宽" == strProperty) m_drawTvd->m_BxlxWidth = variant.value(); else if("颜色" == strProperty) m_drawTvd->m_BxlxColor = variant.value(); } if("字体" == strGroup) { if("道头字体" == strProperty) m_drawTvd->objViewInfo->m_HeadFont = variant.value(); else if("道头颜色" == strProperty) m_drawTvd->objViewInfo->m_HeadColor = variant.value(); if("标题字体" == strProperty) m_drawTvd->objViewInfo->m_TitleFont = variant.value(); else if("标题颜色" == strProperty) m_drawTvd->objViewInfo->m_TitleColor = variant.value(); if("数据表字体" == strProperty) m_drawTvd->objViewInfo->m_TableFont = variant.value(); else if("数据表颜色" == strProperty) m_drawTvd->objViewInfo->m_TableColor = variant.value(); if("刻度字体" == strProperty) m_drawTvd->objViewInfo->m_ScaleFont = variant.value(); else if("刻度颜色" == strProperty) m_drawTvd->objViewInfo->m_ScaleColor = variant.value(); if("注释字体" == strProperty) m_drawTvd->objViewInfo->m_NoteFont = variant.value(); else if("注释颜色" == strProperty) m_drawTvd->objViewInfo->m_NoteColor = variant.value(); } if("井斜数据表参数" == strGroup) { if("标题名" == strProperty) m_drawTvd->m_Title_table = variant.value(); else if("头记录高度(cm)" == strProperty) m_drawTvd->objViewInfo->m_Head_Height = variant.value(); else if("数据记录高度(cm)" == strProperty) m_drawTvd->objViewInfo->m_Rec_Height = variant.value(); } else if("俯视图参数" == strGroup) { if("标题名" == strProperty) m_drawTvd->objViewInfo->m_Title_fst = variant.value(); else if("东西位移最小刻度" == strProperty) m_drawTvd->objViewInfo->m_MinXe = variant.value(); else if("东西位移最大刻度" == strProperty) m_drawTvd->objViewInfo->m_MaxXe = variant.value(); else if("南北位移最小刻度" == strProperty) m_drawTvd->objViewInfo->m_MinYn = variant.value(); else if("南北位移最大刻度" == strProperty) m_drawTvd->objViewInfo->m_MaxYn = variant.value(); else if("是否绘制闭合线" == strProperty) m_drawTvd->objViewInfo->m_bPlotBhx = variant.value(); } else if("立体轨迹图参数" == strGroup) { if("标题名" == strProperty) m_drawTvd->m_Title_ltgj = variant.value(); else if("最大位移(m)" == strProperty) m_drawTvd->objViewInfo->m_MaxWy1 = variant.value(); else if("起始垂深(m)" == strProperty) m_drawTvd->objViewInfo->m_LTTTVD = variant.value(); else if("垂深间隔(m)" == strProperty) m_drawTvd->objViewInfo->m_DepSpace1 = variant.value(); else if("是否绘制立体框" == strProperty) m_drawTvd->objViewInfo->m_is3DFrame = variant.value(); else if("俯视角(度)" == strProperty) m_drawTvd->objViewInfo->m_LttAngle_X = variant.value(); else if("侧视角(度)" == strProperty) m_drawTvd->objViewInfo->m_LttAngle = variant.value(); else if("倾斜角(度)" == strProperty) m_drawTvd->objViewInfo->m_LttAngle_Z = variant.value(); else if("竖线间隔" == strProperty) m_drawTvd->objViewInfo->m_LTTTVD = variant.value(); else if("俯视南北间隔数" == strProperty) m_drawTvd->objViewInfo->m_YD = variant.value(); else if("俯视东西间隔数" == strProperty) m_drawTvd->objViewInfo->m_XD = variant.value(); else if("附加属性类型" == strProperty) m_drawTvd->objViewInfo->m_IsDrawProperty = variant.value(); else if("选择井曲线1" == strProperty) m_drawTvd->objViewInfo->m_CurveName1 = variant.value(); else if("选择井曲线2" == strProperty) m_drawTvd->objViewInfo->m_CurveName2 = variant.value(); else if("调色板参数设置" == strProperty) m_drawTvd->objViewInfo->m_ColorTableIndex = variant.value(); else if("直径放大系数" == strProperty) m_drawTvd->objViewInfo->m_calscale = variant.value(); else if("波形基值" == strProperty) m_drawTvd->objViewInfo->m_baseval = variant.value(); else if("波形最大值" == strProperty) m_drawTvd->objViewInfo->m_maxval = variant.value(); else if("连续填充" == strProperty) m_drawTvd->objViewInfo->m_isBlock = variant.value(); } else if("侧视图参数" == strGroup) { if("标题名" == strProperty) m_drawTvd->objViewInfo->m_Title_cst = variant.value(); else if("高宽相同" == strProperty) m_drawTvd->objViewInfo->m_heqw = variant.value(); } else if("侧视图(水平位移)" == strGroup) { if("最大侧视位移(m)" == strProperty) m_drawTvd->objViewInfo->m_MaxWy_HOFF = variant.value(); else if("最小侧视位移(m)" == strProperty) m_drawTvd->objViewInfo->m_MinWy_HOFF = variant.value(); else if("最大垂深(m)" == strProperty) m_drawTvd->objViewInfo->m_MaxTVD_HOFF = variant.value(); else if("最小垂深(m)" == strProperty) m_drawTvd->objViewInfo->m_MinTVD_HOFF = variant.value(); } else if("侧视图(向东)" == strGroup) { if("最大侧视位移(m)" == strProperty) m_drawTvd->objViewInfo->m_MaxWy_XE = variant.value(); else if("最小侧视位移(m)" == strProperty) m_drawTvd->objViewInfo->m_MinWy_XE = variant.value(); else if("最大垂深(m)" == strProperty) m_drawTvd->objViewInfo->m_MaxTVD_XE = variant.value(); else if("最小垂深(m)" == strProperty) m_drawTvd->objViewInfo->m_MinTVD_XE = variant.value(); } else if("侧视图(向北)" == strGroup) { if("最大侧视位移(m)" == strProperty) m_drawTvd->objViewInfo->m_MaxWy_YN = variant.value(); else if("最小侧视位移(m)" == strProperty) m_drawTvd->objViewInfo->m_MinWy_YN = variant.value(); else if("最大垂深(m)" == strProperty) m_drawTvd->objViewInfo->m_MaxTVD_YN = variant.value(); else if("最小垂深(m)" == strProperty) m_drawTvd->objViewInfo->m_MinTVD_YN = variant.value(); } else if("侧视图(侧视角)" == strGroup) { if("最大侧视位移(m)" == strProperty) m_drawTvd->objViewInfo->m_MaxWy = variant.value(); else if("最小侧视位移(m)" == strProperty) m_drawTvd->objViewInfo->m_MinWy = variant.value(); else if("最大垂深(m)" == strProperty) m_drawTvd->objViewInfo->m_MaxTVD = variant.value(); else if("最小垂深(m)" == strProperty) m_drawTvd->objViewInfo->m_MinTVD = variant.value(); else if("深度间隔(m)" == strProperty) m_drawTvd->objViewInfo->m_DepSpace = variant.value(); else if("等分个数(=0按深度间隔)" == strProperty) m_drawTvd->objViewInfo->m_DepSpaceN = variant.value(); else if("侧视角(度)" == strProperty) m_drawTvd->objViewInfo->m_CsAngle = variant.value(); } // else if("立体闭合方位线型" == strGroup) // { // if("线宽" == strProperty) // m_drawTvd->objViewInfo->m_DepSpaceN = variant.value(); // if("颜色" == strProperty) // m_drawTvd->objViewInfo->m_Rlev = variant.value(); // } else if("立体轨迹图参数" == strGroup) { if("最小深度间隔(m)" == strProperty) m_drawTvd->objViewInfo->m_Rlev = variant.value(); } // else if("立体井径线型" == strGroup) // { // if("线宽" == strProperty) // m_drawTvd->objViewInfo->m_DepSpaceN = variant.value(); // if("颜色" == strProperty) // m_drawTvd->objViewInfo->m_Rlev = variant.value(); // } update(); }