Commit Graph
63 Commits
Author SHA1 Message Date
Magne Sjaastad 071d6cc19e #14050 CMake: Remove dead variable definitions and references
* CMake: Remove dead CODE_HEADER_FILES variable
* CMake: Remove dead COMMAND_CODE_HEADER_FILES and COMMAND_MOC_SOURCE_FILES
* CMake: Remove dead MOC_SOURCE_FILES and FORM_FILES_CPP references
* CMake: Remove dead HEADER_FILES reference
* CMake: Delete unused CustomPCH.cmake superseded by target_precompile_headers
2026-05-26 13:10:20 +02:00
Kristian Bendiksen 2fa7520b3a Refactor: forward-declare element type in collection headers
Move the element-type include from each migrated collection header into
its .cpp, leaving only a forward declaration in the header. Follows the
pattern from 9e4d79159 for RimJobCollection, made possible by the
constructor-time PdmObject base check.
2026-05-11 13:42:13 +02:00
Kristian Bendiksen 5e880ffc26 Refactor: migrate fourteen more collections to caf::PdmObjectCollection<T>
Migrated to the templated base, preserving each collection's existing XML
field keyword for project-file backward compatibility:

- RimEnsembleFractureStatisticsCollection
- RimEclipseInputPropertyCollection
- RimPlotDataFilterCollection
- RimGeoMechContourMapViewCollection
- RimIntersectionResultsDefinitionCollection
- RimCustomObjectiveFunctionCollection
- RimStimPlanModelTemplateCollection
- RimEnsembleWellLogsCollection
- RimEclipseContourMapViewCollection
- RimSeismicViewCollection
- RimGridInfoCollection
- RimEclipseStatisticsCaseCollection
- RimWellIASettingsCollection
- RimVfpDataCollection

External callers that accessed the old public/named array fields directly
(RimEclipseInputPropertyCollection::inputProperties,
RimEclipseStatisticsCaseCollection::cases) now use addItem/items() from
the base. RimCustomObjectiveFunction.h replaced its include of the
collection header with a forward declaration to break the new include
cycle introduced by the migration.
2026-05-11 13:42:13 +02:00
Jon Jenssen 0726f20694 Protect flattening code against polylines with a single point 2026-05-02 13:51:40 +02:00
Magne Sjaastad cf62f07224 #13806 Python: Add color legend scripting API
Expose RimColorLegendCollection and RimColorLegend to Python via
CAF_PDM_OBJECT_METHOD entries that let callers create a legend, append
category items with a hex-string color, bind a legend to a (case,
resultName) pair and delete that binding.

Scriptable fields on RimColorLegend and RimColorLegendItem make the
created objects inspectable from Python.

The (case, resultName) binding interface in RimColorLegendCollection,
RimRegularLegendConfig and RimEclipseCellColors now takes a const RimCase*
instead of a case id, matching the caller patterns and avoiding ambiguity
when multiple cases share an id domain.
2026-04-20 18:55:36 +02:00
Magne Sjaastad b7b2a73721 Add context menu actions to hide/show all geometry for well visibility
Two new actions added to the well path context menu:
- "Hide All Geometry (Show Wells)": hides grid cells, faults, and intersections,
  then forces simulation wells and well paths visible.
- "Show All Geometry": restores grid cells, faults, and intersections visibility.

Added RimIntersectionCollection::setActive() for direct state control.
2026-03-16 16:14:08 +01:00
Kristian Bendiksen 414cf1df04 #13466 Allow display of intersection bands and curves without intersection geometry
Add a "Show Intersection Geometry" checkbox to RimExtrudedCurveIntersection that
controls visibility of intersection faces and mesh lines independently from the
surface intersection bands and curves.

When unchecked, the intersection geometry is hidden but bands and curves continue
to display based on their individual checked states.

Fixes #13466.
2026-01-22 07:17:46 +01:00
jonjenssen 7b05b18d8c Add nullptr guard in case no valid main grid in view. 2025-11-06 15:16:41 +01:00
Magne Sjaastad ca0179d118 Remove obsolete CMake statements
When using modern CMake and Qt6 we can remove obsolete source_group() and QT_MOC_HEADERS
2025-01-28 07:01:42 +01:00
Magne Sjaastad d37bc104e4 Contour Map: Add optional value filtering
* #12071 Contour Map: Add optional value filtering 
* Move management of min/max values to common base class
2025-01-16 13:52:03 +01:00
jonjenssen da683bed9e Move Rig well related things to subfolder and update include statements 2024-10-31 15:08:59 +01:00
Magne Sjaastad 33ffa10ec9 Janitor: Remove obsolete deleteChildren
Remove obsolete deleteChildren() in destructors. deleteChildren() is called in the destructor of PdmChildArrayField
2024-07-25 13:58:31 +02:00
Magne Sjaastad 27339a91fa Guard nullpointer crash 2024-06-05 14:35:01 +02:00
Kristian Bendiksen abf61090cc Fix intersection view regression. 2024-04-16 15:23:53 +02:00
Kristian Bendiksen b5666c333a Refactor connection between cases and views.
Eclipse grid views and contour maps are not longer a child of the case.
The views are not separate collections (one for grid and one for contour maps)
on root level.
2024-04-15 16:10:43 +02:00
Kristian Bendiksen c074033dc2 Refactor: Fix misspelling of "synchronize". 2024-04-05 13:55:09 +02:00
Magne Sjaastad 1217236d73 #11248 Remove caching of simulation well coordinates to avoid state handling bugs 2024-03-04 12:27:56 +01:00
Magne Sjaastad 3689cccae7 Add operations on polygon : Duplicate, exportCsv, exportPol and simplify
SimplfyPolygon applies an operation on polygon to reduce the number of points in a way that the shape of the polygon is conserved.
2024-03-04 11:24:42 +01:00
Magne Sjaastad 28d281e1d6 Use polygon as data source for intersection
- Use polygon as data source for intersection
- Add padlock icon
- Show padlock icon on read only polygons
- Add Fwk function appendMenuItems() to make it possible to define context menu content in a PdmObject
- Context menu "Create Polygon Intersection"
- Updates to make visualization consistent with object and object collection enabled state
2024-02-25 09:21:48 +01:00
Magne Sjaastad 6fe997b3c9 Add and use caf::PdmUiPushButtonEditor::configureEditorLabelHidden 2024-02-23 08:47:52 +01:00
Magne Sjaastad ce513be638 Remove all use of .uiCapability()->setUiTreeHidden( true ); 2024-02-05 10:15:36 +01:00
Magne Sjaastad 7d601ac067 #11109 Improve visualization of MSW with valve branches
Increase default segment threshold to 4
Add an optional setting to override the default value
Use this threshold to merge short branches into parent branch
2024-01-26 09:32:42 +01:00
Magne Sjaastad 10189da362 Fix display of intersection lines in 3D view
* 10675 Fix missing intersection line geometry
* Change to list of visible surface intersection lines
* Enable surface intersection band for any intersection
* Show labels for intersection curves in 3D

The polylines are defined in the display coordinate system without Z-scaling. The z-scaling is applied to the visualization parts using Part::setTransform(Transform* transform)
The annotation objects are defined by display coordinates, so apply the Z-scaling to the coordinates.

* Improve naming of surfaces
* Use scaling factor of 1.0 for flat intersection views
2023-10-03 09:04:46 +02:00
Kristian Bendiksen 959c9d48fa #10649 ApplicationLibCode: Use collection.empty() instead of comparing with size 2023-09-27 10:16:37 +02:00
Magne Sjaastad f4c61c9edb Changes based on review 2023-09-13 08:29:15 +02:00
Magne Sjaastad 94c1b110fb Compute measured depth at the first visible well path geometry 2023-09-13 08:29:15 +02:00
jonjenssen 2172199999 Add seismic 3d view (#10472)
* Show seismic, surfaces, annotations and wellpaths in new view not requiring a grid loaded first.
2023-08-07 16:35:59 +02:00
Kristian Bendiksen 5bf2c2a89d #10367 Janitor: Remove unneccessary 'this' pointers 2023-08-07 13:38:27 +02:00
Magne Sjaastad 59ca0b943c Add readability-simplify-boolean-expr
* Add readability-simplify-boolean-expr
* Fixes based on review
2023-06-26 13:12:41 +02:00
Magne Sjaastad 5bd492dc56 Adjustments before release
* Make sure existing project files do not filter intersection geometry by cell filters

* #10241 Temporarily revert changes to resampling changes
These fixes had unintended side effect on well flow plot and rft plots seen in regression tests
https://github.com/OPM/ResInsight/issues/10241

* Update version number
2023-06-08 09:13:22 +02:00
jonjenssen 3c526d888e Update labels 2023-06-05 14:33:11 +02:00
jonjenssen 17f09878d2 Enable filters for curve intersections (#10329)
* Enable cell filters
* Enable property filters
* Clean up fault collection interface and use similar setting for controlling filters as in intersection collection
* Enable cell/property filters on geomech intersections
* Enable cell and property filters for box intersections
2023-06-05 07:33:04 +02:00
jonjenssen f17c02ce86 Add step support to range text format (#10311)
* Add step support to range text format
* Add step support to integer selection filter
2023-05-26 08:59:13 +02:00
jonjenssen 1063d7f3d3 Add support for K filter to polyline intersections (#10302)
* Add support for K filter to polyline intersections
2023-05-25 08:14:43 +02:00
Magne SjaastadandJørgen Herje 40080a99de 9978 Improve UI for long drop-down lists, use tree selection more
* Improve tree selection editor
- always call defineEditorAttributes
- use heightHint in editor attributes 
- use tree selection editor as default editor for std::vector

* Use tree selection editor instead of list selection editor
List selection editor must be used when editing std::vector<cvf::vec3d> and similar. Replace other use of list selection editor with tree selection editor.

* Set checked state based on text string for integer only models
For models with only integer values, use text string to define the items to be selected. The full list will always be visible, and the checked state will be updated when editing the filter text.

Example: "1, 5-7" will set items 1, 5, 6, 7 checked and all other items unchecked

* Minor fixes
- Set placeholder text after content is added (to ensure correct data type)
- Fix check of integers. `canConvert<int>()`returns true for both QString and int. Thus convert to string and then check for int conversion.

* Activate filtering when unchecking all items in list with only integers
- Reactivate filtering when uncheck of all items for a list with only integer values (to keep consistency between filter and list)
- Update function name for clarity

---------

Co-authored-by: Jørgen Herje <jorgen.herje@ceetronsolutions.com>
2023-05-22 15:44:37 +02:00
jonjenssen 7451adb85b Enable intersection depth filter for geomech cases, too 2023-05-16 01:21:27 +02:00
jonjenssen bab0a83856 Disable depth filter for GeoMech cases. 2023-05-15 14:48:49 +02:00
Magne Sjaastad 0c90f67dcc Change API for PdmObjectHandle and PdmFieldHandle
* Refactor interface to PdmObjectHandle and PdmFieldHandle
Return objects instead of passing in structures as parameters

* Add nodiscard to several functions
* Remove redundant this->
* Rename to ptrReferencedObjectsByType
2023-05-12 21:41:34 +02:00
Magne Sjaastad 5ee764af48 Refactor result definition 2023-05-11 08:37:58 +02:00
Magne Sjaastad f70d2c4949 Add result type and create and use custom legend if possible
* Update submodule
* Use postfix functions and add custom color legend

* Add type to RigEclipseResultAddress
Read types from ROFF and create default legend based on type or custom created legend.

* Use caseId to connect legend configuration to result in a case
2023-05-09 11:41:56 +02:00
jonjenssen 54e901b79b Set default depth filter type to "between" 2023-05-08 07:38:11 +02:00
Magne Sjaastad b7f8d0e0f1 Increase warning level
* Set warning level to /W3 for MSVC to catch more warnings
* remove several excluded checks for clang
* removed several unused variables
* Hide warnings qwt
* add missing parentheses in logical expressions
* Remove double check on same logical expression
2023-04-17 15:57:39 +02:00
Magne Sjaastad f8c5cf389f clang-format: Set column width to 140
* Set column width to 140
* Use c++20
* Remove redundant virtual
2023-02-26 10:48:40 +01:00
Magne Sjaastad 8028444018 GitHub Actions: Add apt mirror to make package download more robust
- Download of Ubuntu packages from Azure is unstable. Add mirror sites to improve reliability.
- Improve use of clang-format and include source code changes
2023-02-07 07:22:57 +01:00
jonjenssen 85f1b004cb Geomech frames support (#9678)
Support for showing frames in geomech data.
2023-01-18 14:42:33 +01:00
Magne Sjaastad 8e161a5c89 Stabilization fixes related to regression testing
* Added fmtlib to LicenseInformation.txt
* Add license info for roffcpp
* Regression Tests: Guard use of invalid bounding box
* Regression Test: Check if file is present before opening
2023-01-10 11:45:37 +01:00
Magne Sjaastad 3ff5d238b1 Remove unused members and remove includes 2022-08-25 13:56:53 +02:00
Magne Sjaastad 506bfbd638 Remove control flag in setCollapsedByDefault
* Remove control flag in setCollapsedByDefault
* Set regions/annotations collapsed by default
2022-08-19 14:18:36 +02:00
Jon Jenssen 2e3ac5b02b Fix intersection depth filter limit calculations 2022-08-02 09:07:24 +02:00
Jon Jenssen 89773da26e Fix intersection crash by making sure we do nothing when top limit is below bottom limit 2022-06-02 06:54:45 +02:00