Hydraulic Modeling Software on the NetBeans Platform
The main goal of Fudaa-Crue is to provide a user interface and to pilot the solver Crue (to be used in the field of free-surface flows) developed and owned by the CNR.
Fudaa-Crue is developed by Genesis Groupe, a medium-sized French IT services company, which works with big organizations. The company has three locations: Lyon (France), Paris (France) and Geneva (Switzerland).
Fudaa-Crue is composed of 5 perspectives:
- The study perspective manages a whole study and its different scenarios.
- The Modeling perspective allows editors to edit a scenario. The hydraulic model (1D) is automatically georeferenced and displayed in a 2D visualization view. Connections with GIS systems are also available.
- The Log perspective gives complete information about the execution of the solver Crue
- Thanks to the OTFA perspective, the user can manage automated test campaigns that launch and compare results of simulations. This tool compares object graphs and is fully configurable via xml files.
- The Report perspective is the post-processing perspective. Several views (2D view, transversal view, longitudinal view …) are available and fully customizable. The views configuration can be saved and copied by the user. The views can also be exported in image or video format (avi, flash, gif).
A custom help system (SyDoc) is also available with search capabilities. This system is fully integrated with other perspectives. The Help system (SyDoc) is a custom tools and doesn’t use JavaHelp. It offers an administrator mode used to build a TOC from a help folder (containing html files) without editing any XML files. Thanks to this mode, the user can also check the documentation regarding broken links.
In the next release, JavaFX and its WebView will be used to replace the current browser.
The next step will be to integrate a 3D view for the pre and post processing steps. A better integration with GIS tools is also under development.
The application uses Maven as the build tool and is composed of several modules:
The NetBeans UI modules are prefixed by Crue UI.
Thanks to the NetBeans Platform, building a modular application is easy thanks to the Service Provider Interface and the Lookup API.
The Node and Explorer API is intensively used by the different views (TopComponent). The difficult part was about the editors and how to render the node properties. The page Customizing how Properties are displayed is very useful. At first, we encountered difficulties to display ComboBox, create custom Inplace editor or custom editor … For instance, we created custom editors like SliderInplaceEditor used to display a JSlider as an inplace editor.
Fudaa is a framework dedicated to hydraulic scientific codes. The visualization views (1D, 2D) and the integration with GIS are the main features used in Fudaa-Crue.
It uses several others components like:
JXPath, which is used in the study comparison system (to query the graphs of objects)
Lucene to index the help system
JIDE Common Layer (Swing components)
Fudaa-Crue is available under the GNU General Public License (GPL) v2.