Improved UI for surface band and curves (#8026)

* Add surface intersection bands and curves
* #8024 Ensemble Surface : Fix mix of files for a ensemble layer surface
This commit is contained in:
Magne Sjaastad
2021-09-23 09:59:29 +02:00
committed by GitHub
parent 3d0fa2e7c7
commit 515168600f
30 changed files with 1367 additions and 76 deletions

View File

@@ -124,9 +124,11 @@ void RimEnsembleSurface::loadDataAndUpdate()
{
cvf::ref<RigSurface> firstSurface = sourceSurfaceForStatistics[0]->surfaceData();
// The search tree must be created before the multi threading loop is initiated to avoid crash
firstSurface->ensureIntersectionSearchTreeIsBuilt();
auto surfaceCount = static_cast<int>( sourceSurfaceForStatistics.size() );
std::vector<cvf::ref<RigSurface>> sourceSurfaces( surfaceCount );
#pragma omp parallel for
for ( int i = 0; i < surfaceCount; i++ )
{
@@ -282,6 +284,21 @@ void RimEnsembleSurface::loadData()
loadDataAndUpdate();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RimSurface* RimEnsembleSurface::findStatisticsSurface( RigSurfaceStatisticsCalculator::StatisticsType statisticsType )
{
for ( auto s : surfaces() )
{
auto ensembleSurface = dynamic_cast<RimEnsembleStatisticsSurface*>( s );
if ( ensembleSurface && ensembleSurface->statisticsType() == statisticsType ) return s;
}
return nullptr;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------