Add polygon classes

This commit is contained in:
Magne Sjaastad
2024-02-12 10:19:52 +01:00
parent 573a8f78cf
commit 5fdf30d124
40 changed files with 1816 additions and 37 deletions

View File

@@ -18,6 +18,7 @@
#include "RimGridView.h"
#include "Polygons/RimPolygonInViewCollection.h"
#include "Rim3dOverlayInfoConfig.h"
#include "RimCellFilterCollection.h"
#include "RimEclipseCase.h"
@@ -96,6 +97,9 @@ RimGridView::RimGridView()
CAF_PDM_InitFieldNoDefault( &m_seismicSectionCollection, "SeismicSectionCollection", "Seismic Collection Field" );
m_seismicSectionCollection = new RimSeismicSectionCollection();
CAF_PDM_InitFieldNoDefault( &m_polygonCollection, "PolygonCollection", "Polygon Collection Field" );
m_polygonCollection = new RimPolygonInViewCollection();
CAF_PDM_InitFieldNoDefault( &m_cellFilterCollection, "RangeFilters", "Cell Filter Collection Field" );
m_cellFilterCollection = new RimCellFilterCollection();
@@ -104,6 +108,9 @@ RimGridView::RimGridView()
m_intersectionVizModel = new cvf::ModelBasicList;
m_intersectionVizModel->setName( "CrossSectionModel" );
m_polygonVizModel = new cvf::ModelBasicList;
m_polygonVizModel->setName( "PolygonModel" );
}
//--------------------------------------------------------------------------------------------------
@@ -161,6 +168,14 @@ RimSeismicSectionCollection* RimGridView::seismicSectionCollection() const
return m_seismicSectionCollection();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RimPolygonInViewCollection* RimGridView::polygonCollection() const
{
return m_polygonCollection();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
@@ -455,23 +470,32 @@ void RimGridView::updateWellMeasurements()
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimGridView::updateSurfacesInViewTreeItems()
void RimGridView::updateViewTreeItems( RiaDefines::ItemIn3dView itemType )
{
RimSurfaceCollection* surfColl = RimTools::surfaceCollection();
auto bitmaskEnum = BitmaskEnum( itemType );
if ( surfColl && surfColl->containsSurface() )
if ( bitmaskEnum.AnyOf( RiaDefines::ItemIn3dView::SURFACE ) )
{
if ( !m_surfaceCollection() )
RimSurfaceCollection* surfColl = RimTools::surfaceCollection();
if ( surfColl && surfColl->containsSurface() )
{
m_surfaceCollection = new RimSurfaceInViewCollection();
}
if ( !m_surfaceCollection() )
{
m_surfaceCollection = new RimSurfaceInViewCollection();
}
m_surfaceCollection->setSurfaceCollection( surfColl );
m_surfaceCollection->updateFromSurfaceCollection();
m_surfaceCollection->setSurfaceCollection( surfColl );
m_surfaceCollection->updateFromSurfaceCollection();
}
else
{
delete m_surfaceCollection;
}
}
else
if ( bitmaskEnum.AnyOf( RiaDefines::ItemIn3dView::POLYGON ) )
{
delete m_surfaceCollection;
m_polygonCollection->syncPolygonsInView();
}
updateConnectedEditors();