mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
Surfaces: Improve UI and usability for surfaces (#6290)
* Add reload command to surface context menus. Still missing the part that actually reloads the data. * Add additional check for null ptr to avoid crash * Surfaces: implements reload command in context menu to reload surface data from its source (i.e. a file). Rename function names to better show what they are actually doing Refactor a bit to give all RimSurface subclasses the same interface for reloading data. Also makes sure new RimGridCaseSurface instances are shown by default in the view(s) * Fixes by clang-format * Include offset and slice index in surface name shown in project explorer * Allow importing the same file multiple times * Disable lighting for surfaces, as it doesn't look good for now. Fixes #6084 * Surfaces: Remove depth offset setting from view. Add slider to depth offset edit for surface * Create new surfaces only on collection context menu * Make sure tree view icon is enabled/disabled when the check box is clicked * Fix depth offset for grid case surfaces, missing base function call. * Make public method .. public. * Add reload command to surface context menus. Still missing the part that actually reloads the data. * Add additional check for null ptr to avoid crash * Surfaces: implements reload command in context menu to reload surface data from its source (i.e. a file). Rename function names to better show what they are actually doing Refactor a bit to give all RimSurface subclasses the same interface for reloading data. Also makes sure new RimGridCaseSurface instances are shown by default in the view(s) * Fixes by clang-format * Include offset and slice index in surface name shown in project explorer * Allow importing the same file multiple times * Disable lighting for surfaces, as it doesn't look good for now. Fixes #6084 * Surfaces: Remove depth offset setting from view. Add slider to depth offset edit for surface * Create new surfaces only on collection context menu * Make sure tree view icon is enabled/disabled when the check box is clicked * Fix depth offset for grid case surfaces, missing base function call. * Make public method .. public. * Fixes by clang-format Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
This commit is contained in:
@@ -152,7 +152,6 @@ void RivSurfaceIntersectionGeometryGenerator::calculateArrays()
|
||||
const std::vector<cvf::Vec3d>& nativeVertices = m_usedSurfaceData->vertices();
|
||||
const std::vector<unsigned>& nativeTriangleIndices = m_usedSurfaceData->triangleIndices();
|
||||
cvf::Vec3d displayModelOffset = m_hexGrid->displayOffset();
|
||||
double depthOffset = m_surfaceInView->depthOffset();
|
||||
|
||||
m_triVxToCellCornerWeights.reserve( nativeTriangleIndices.size() * 24 );
|
||||
outputTriangleVertices.reserve( nativeTriangleIndices.size() * 24 );
|
||||
@@ -191,10 +190,6 @@ void RivSurfaceIntersectionGeometryGenerator::calculateArrays()
|
||||
cvf::Vec3d p1 = nativeVertices[nativeTriangleIndices[ntVxIdx + 1]];
|
||||
cvf::Vec3d p2 = nativeVertices[nativeTriangleIndices[ntVxIdx + 2]];
|
||||
|
||||
p0.z() = p0.z() - depthOffset;
|
||||
p1.z() = p1.z() - depthOffset;
|
||||
p2.z() = p2.z() - depthOffset;
|
||||
|
||||
cvf::BoundingBox triangleBBox;
|
||||
triangleBBox.add( p0 );
|
||||
triangleBBox.add( p1 );
|
||||
|
||||
@@ -155,6 +155,7 @@ void RivSurfacePartMgr::updateNativeSurfaceColors()
|
||||
|
||||
auto mapper = m_surfaceInView->surfaceResultDefinition()->legendConfig()->scalarMapper();
|
||||
|
||||
if ( m_usedSurfaceData.notNull() )
|
||||
{
|
||||
QString propertyName = m_surfaceInView->surfaceResultDefinition()->propertyName();
|
||||
auto values = m_usedSurfaceData->propertyValues( propertyName );
|
||||
@@ -173,14 +174,7 @@ void RivSurfacePartMgr::updateNativeSurfaceColors()
|
||||
}
|
||||
|
||||
float effectiveOpacityLevel = 1.0;
|
||||
bool disableLighting = false;
|
||||
|
||||
Rim3dView* view = nullptr;
|
||||
m_surfaceInView->firstAncestorOfType( view );
|
||||
if ( view )
|
||||
{
|
||||
disableLighting = view->isLightingDisabled();
|
||||
}
|
||||
bool disableLighting = true; // always disable lighting for now, as it doesn't look good
|
||||
|
||||
RivScalarMapperUtils::applyTextureResultsToPart( m_nativeTrianglesPart.p(),
|
||||
m_nativeTrianglesTextureCoords.p(),
|
||||
@@ -333,9 +327,6 @@ void RivSurfacePartMgr::generateNativePartGeometry()
|
||||
m_usedSurfaceData = m_surfaceInView->surface()->surfaceData();
|
||||
if ( m_usedSurfaceData.isNull() ) return;
|
||||
|
||||
double depthOffset = m_surfaceInView->depthOffset();
|
||||
displayModOffsett.z() = displayModOffsett.z() + depthOffset;
|
||||
|
||||
const std::vector<cvf::Vec3d>& vertices = m_usedSurfaceData->vertices();
|
||||
cvf::ref<cvf::Vec3fArray> cvfVertices = new cvf::Vec3fArray( vertices.size() );
|
||||
for ( size_t i = 0; i < vertices.size(); ++i )
|
||||
|
||||
Reference in New Issue
Block a user