优化井参数变更的增量刷新

- 拖动井时直接更新坐标和半径属性
- 移除井移动后的全量参数刷新
- 移除新增井后的重复全量属性广播
feature/nm-para-property-20260615
lvjunjie 2 days ago
parent edd2b7d6f4
commit 0c98bb90a7

@ -1445,8 +1445,6 @@ void nmDataAnalyzeManager::appendWellData(ZxDataWell* pWellData)
} }
} }
emit sigWellAdded(code, name, paras); emit sigWellAdded(code, name, paras);
if (m_pAttrRegistry)
m_pAttrRegistry->refreshAll();
} }
} }
@ -1471,8 +1469,6 @@ void nmDataAnalyzeManager::appendNmWellData(nmDataWellBase* pWellData)
} }
} }
emit sigWellAdded(code, name, paras); emit sigWellAdded(code, name, paras);
if (m_pAttrRegistry)
m_pAttrRegistry->refreshAll();
} }
} }

@ -16,7 +16,6 @@
#include "nmDataRegion.h" #include "nmDataRegion.h"
#include "nmObjBase.h" #include "nmObjBase.h"
#include "nmDataAnalyzeManager.h" #include "nmDataAnalyzeManager.h"
#include "nmAttrRegistry.h"
#include "nmObjPointWell.h" #include "nmObjPointWell.h"
#include "nmDataWellBase.h" #include "nmDataWellBase.h"
#include "nmDataVerticalFracturedWell.h" #include "nmDataVerticalFracturedWell.h"
@ -1694,15 +1693,9 @@ void nmPlotGraphicBinder::syncWellMoveFromGraphic(nmObjPointWell* pGraphic,
pWellData->setLocationX(newLocation.x()); pWellData->setLocationX(newLocation.x());
pWellData->setLocationY(newLocation.y()); pWellData->setLocationY(newLocation.y());
nmDataAttribute tempAttr = pData->getX(); pData->getX().setValue(pWellData->getLocationX());
tempAttr.setValue(pWellData->getLocationX()); pData->getY().setValue(pWellData->getLocationY());
pData->setX(tempAttr); pData->getRadius().setValue(pWellData->getWellRadius());
tempAttr = pData->getY();
tempAttr.setValue(pWellData->getLocationY());
pData->setY(tempAttr);
tempAttr = pData->getRadius();
tempAttr.setValue(pWellData->getWellRadius());
pData->setRadius(tempAttr);
if (wellType == NM_WELL_MODEL::Vertical_Fractured_Well) { if (wellType == NM_WELL_MODEL::Vertical_Fractured_Well) {
// 裂缝井位置变化后,裂缝端点需要跟着重新计算。 // 裂缝井位置变化后,裂缝端点需要跟着重新计算。
@ -1715,11 +1708,6 @@ void nmPlotGraphicBinder::syncWellMoveFromGraphic(nmObjPointWell* pGraphic,
pHFWell->setFracs(); pHFWell->setFracs();
} }
} }
// 本轮移动数据写回完成后,统一刷新参数面板中的已注册属性。
if (m_pDataMgr != nullptr && m_pDataMgr->getAttrRegistry() != nullptr) {
m_pDataMgr->getAttrRegistry()->refreshAll();
}
} }
bool nmPlotGraphicBinder::ensureSelectedWellData(nmObjPointWell* pGraphic, bool nmPlotGraphicBinder::ensureSelectedWellData(nmObjPointWell* pGraphic,

Loading…
Cancel
Save