mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#927 Intersection box: 3D manipulator not updated when changing scale
This commit is contained in:
parent
1e7e0fdc7a
commit
3dd0829efa
@ -68,7 +68,6 @@ public:
|
|||||||
cvf::Mat4d boxOrigin() const;
|
cvf::Mat4d boxOrigin() const;
|
||||||
cvf::Vec3d boxSize() const;
|
cvf::Vec3d boxSize() const;
|
||||||
SinglePlaneState singlePlaneState() const;
|
SinglePlaneState singlePlaneState() const;
|
||||||
void setFromOriginAndSize(const cvf::Vec3d& origin, const cvf::Vec3d& size);
|
|
||||||
|
|
||||||
bool show3dManipulator() const;
|
bool show3dManipulator() const;
|
||||||
RivIntersectionBoxPartMgr* intersectionBoxPartMgr();
|
RivIntersectionBoxPartMgr* intersectionBoxPartMgr();
|
||||||
@ -91,12 +90,16 @@ protected slots:
|
|||||||
void slotUpdateGeometry(const cvf::Vec3d& origin, const cvf::Vec3d& size);
|
void slotUpdateGeometry(const cvf::Vec3d& origin, const cvf::Vec3d& size);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
friend class RimIntersectionCollection;
|
||||||
void updateBoxManipulatorGeometry();
|
void updateBoxManipulatorGeometry();
|
||||||
|
|
||||||
void rebuildGeometryAndScheduleCreateDisplayModel();
|
void rebuildGeometryAndScheduleCreateDisplayModel();
|
||||||
void updateVisibility();
|
void updateVisibility();
|
||||||
void clampSinglePlaneValues();
|
void clampSinglePlaneValues();
|
||||||
void switchSingelPlaneState();
|
void switchSingelPlaneState();
|
||||||
|
|
||||||
|
void setFromOriginAndSize(const cvf::Vec3d& origin, const cvf::Vec3d& size);
|
||||||
|
|
||||||
cvf::BoundingBox currentCellBoundingBox();
|
cvf::BoundingBox currentCellBoundingBox();
|
||||||
|
|
||||||
RiuViewer* viewer();
|
RiuViewer* viewer();
|
||||||
|
@ -215,3 +215,14 @@ bool RimIntersectionCollection::hasActiveCrossSectionForSimulationWell(RimEclips
|
|||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
void RimIntersectionCollection::updateIntersectionBoxGeometry()
|
||||||
|
{
|
||||||
|
for (auto intersectionBox : m_intersectionBoxes)
|
||||||
|
{
|
||||||
|
intersectionBox->updateBoxManipulatorGeometry();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@ -53,6 +53,8 @@ public:
|
|||||||
|
|
||||||
bool hasActiveCrossSectionForSimulationWell(RimEclipseWell* eclipseWell) const;
|
bool hasActiveCrossSectionForSimulationWell(RimEclipseWell* eclipseWell) const;
|
||||||
|
|
||||||
|
void updateIntersectionBoxGeometry();
|
||||||
|
|
||||||
// Visualization interface
|
// Visualization interface
|
||||||
|
|
||||||
void applySingleColorEffect();
|
void applySingleColorEffect();
|
||||||
|
@ -7,10 +7,10 @@
|
|||||||
|
|
||||||
#include "Rim3dOverlayInfoConfig.h"
|
#include "Rim3dOverlayInfoConfig.h"
|
||||||
#include "RimCellRangeFilterCollection.h"
|
#include "RimCellRangeFilterCollection.h"
|
||||||
#include "RimIntersectionCollection.h"
|
|
||||||
#include "RimEclipseCase.h"
|
#include "RimEclipseCase.h"
|
||||||
#include "RimEclipseView.h"
|
#include "RimEclipseView.h"
|
||||||
#include "RimGridCollection.h"
|
#include "RimGridCollection.h"
|
||||||
|
#include "RimIntersectionCollection.h"
|
||||||
#include "RimOilField.h"
|
#include "RimOilField.h"
|
||||||
#include "RimProject.h"
|
#include "RimProject.h"
|
||||||
#include "RimPropertyFilterCollection.h"
|
#include "RimPropertyFilterCollection.h"
|
||||||
@ -535,6 +535,8 @@ void RimView::fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QV
|
|||||||
RimWellPathCollection* wellPathCollection = (oilFields) ? oilFields->wellPathCollection() : NULL;
|
RimWellPathCollection* wellPathCollection = (oilFields) ? oilFields->wellPathCollection() : NULL;
|
||||||
if (wellPathCollection) wellPathCollection->wellPathCollectionPartMgr()->scheduleGeometryRegen();
|
if (wellPathCollection) wellPathCollection->wellPathCollectionPartMgr()->scheduleGeometryRegen();
|
||||||
|
|
||||||
|
crossSectionCollection->updateIntersectionBoxGeometry();
|
||||||
|
|
||||||
if (m_viewer)
|
if (m_viewer)
|
||||||
{
|
{
|
||||||
cvf::Vec3d poi = m_viewer->pointOfInterest();
|
cvf::Vec3d poi = m_viewer->pointOfInterest();
|
||||||
|
Loading…
Reference in New Issue
Block a user