Flow Modeling and Rendering to Support 3D River Shipping Based on Cross-Sectional Observation Data

: The flow in meandering rivers is characterized by rapid changes in flow velocity and water level, especially in flooded environments. Accurate cross-sectional observation data enable continuous monitoring of flow conditions, which is important for river navigation. In this paper, cross-sectional data based flow modeling and rendering methods are studied to build an interactive hybrid flow environment for three-dimensional river shipping. First, the sparse cross-sectional data are extrapolated and interpolated to provide dense sampling points. Then, the data are visualized separately by dynamic texture mapping, particle tracking, streamline rendering, and contour surface rendering. Finally, the rendering models are integrated with ship animation to build a comprehensive hybrid river navigation scenario. The proposed methods are tested by visualizing measured cross-sectional data in the Yangtze River using an open-source software, called World Wind. The experimental results demonstrate that the hybrid flow rendering achieves comprehensive visual effect and the rendering frame rate is greater than 30. The interactive hybrid flow visualization is beneficial to support river shipping analysis.


Introduction
According to the recent World Meteorological Organization (WMO) report [1], flood risks are expected to increase in the coming decades, along with higher intensities, and greater damages. The increasing flood risk in rivers is associated with many global-scale factors, such as climate changes and channel regulations in upper courses. River flooding leads to rapid changes in flow conditions, which greatly affects river shipping safety. Improved Earth observation techniques, such as satellite images [2], Unmanned Aerial Vehicle (UAV) images [3] and Light Detection and Ranging (LIDAR) point clouds [4], have greatly enhanced the ability to monitor the overall state of rivers. However, the resulting data are quite limited by the nature of the measuring equipment, which can make continuous observation difficult. In addition, they also have limitations in terms of measuring terrain under water [5]. Traditional bathymetric surveys and Sound Navigation And Ranging (SONAR) techniques [6] are alternative solutions for obtaining dynamic measured river data over time. These data are typically observed by ground-based surveying based on transverse profiles, also known as cross-sections, at locations selected to capture salient features of the water flow [7]. However, the cross-sectional data thus obtained are often sparse and discrete, so appropriate data processing must be implemented to satisfy the requirements of flow modeling and simulation. Lazaro et al. [8] processed river bed bathymetry based on ArcGIS, introducing different spatial interpolating methods to evaluate anisotropic effects [9]. Flanagin et al. [10] and Schappi et al. [11] adopted Kochanek-Bartels splines and a bilinear techniques, respectively, to reproduce river bed terrain from cross sections. Caviedes-Voullieme et al. [12] implemented the Cubic Hermite Spline (CHS) method to build continuous and smooth river channel topography from cross-sectional data. Zhang et al. [13] used the shortest temporal distance to interpolate the river topography, which achieved good performance. Chen et al. [14] studied and compared three cross-sectional interpolation methods, including linear interpolation, inverse distance weighting (IDW), and natural neighbor (NN), to model river stages. In the actual situation, the measuring equipment is not uniformly feasible everywhere, for example, the river channel terrain cannot be observed in very shallow water. In addition, the river trend is complex, and it may not be monotonically increasing but meandering. As a result, existing processing methods should be improved to calculate accurate dense sampling points for meandering rivers.
River ship navigation is associated with a variety of information about flow conditions, such as flow velocity, water depth, river boundaries, and vortices. Flow visualization is important to illustrate the dynamic flow distribution and elucidate the laws of water motion, which are very important for safe river shipping [15,16]. A variety of available visualization methods can express flow information comprehensively and help to build a hybrid flow environment. Flow rendering techniques can be divided into two categories: scientific flow visualization and visual flow effects. Scientific flow visualization is used to show the distribution of various data, such as water level, water depth, flow velocity, and pollutant concentration. Particle tracking, streamline rendering, and contour surface rendering are most commonly used to present flow conditions [17][18][19][20][21]. Visual flow effects are used to simulate water surface changes using computer graphics technology, enhancing the sense of reality in a virtual geographic environment [22][23][24][25][26]. Dynamic texture mapping is commonly used to simulate the water surface. However, most existing flow rendering methods are designed for large-scale water, such as marine environments. In contrast, river flow, especially in flooded environments, is characterized by meandering shape of the river way and quick variation of the flow state. As a result, the existing visualization methods should be improved for rivers. Meanwhile, most of the existing visualization models can only display flow information in one aspect [19], users need to constantly switch models to comprehensively analyze river status. To quickly display all the information in a scene, hybrid rendering needs to be studied and optimized for effective flow rendering of meandering rivers.
In this paper, the challenges are addressed to realize flow modeling and rendering for threedimensional (3D) river shipping in a virtual globe. All the data processing, modeling, and rendering techniques are designed and optimized for meandering river flow. First, cross-sectional data are extrapolated and interpolated spatiotemporally to provide continuous dense sampling points. Then, these data are visualized by flow simulation and visualization methods. To improve rendering efficiency, the Levels of Detail (LOD) strategy and Graphics Processing Unit (GPU) acceleration are applied to the rendering models. The flow surface is visualized by mesh construction and dynamic texture mapping, which simulates the real flow scene. Particle tracking, streamline rendering, and contour surface rendering are optimized to present detailed flow variation and distribution. Finally, the visualization models are combined together to build an interactive hybrid flow environment for ship navigation. Using the methods presented in this paper, the cross-sectional data are processed and visualized to provide continuous comprehensive flow information for 3D river shipping. Figure 1 shows the framework developed in this study. It consists of three main components: data processing, flow modeling and rendering, and river shipping. The original data is the crosssectional observation along the river, which is obtained by SONAR technology. In the data processing stage, the waterway cross-sectional data, in conjunction with Digital Elevation Model (DEM) data, are first extrapolated and then interpolated. The cross-sectional extrapolation extends the missing data in shallow water and fits the surrounding terrain. The water surface is spatially resampled both in the transverse and longitudinal directions for detailed modeling. Temporal interpolation is applied to smooth the animation between two key frames. Through data processing, accurate river boundaries and dense sampling points are acquired.

System Framework
The flow modeling and rendering stage includes flow simulation and flow visualization. The water surface is dynamically constructed by basic mesh and fusion zones, which avoids cracks between quadrangle parts. Then, the flow surface is dynamically mapped by water texture with real flow velocity. The particle tracking, streamline rendering, and contour surface rendering displays the specific flow conditions in points, lines, and surfaces separately.
Finally, the different flow rendering models are integrated with ship Global Positioning System (GPS) animation to support 3D river navigation. The hybrid rendering strategy enhances the information displayed in a single scene, which is important for safe shipping. In addition, real-time ship route and flow state information can be analyzed to support decision-making.

Study Area and Data
The Yangtze River, which is the longest river in Asia, is a crucial waterway for river transportation in China [13]. It links 11 provinces from the East China Sea to Sichuan and has a complex navigational environment. Because the water stage of the Yangtze River varies greatly between the dry season and the rainy season, a flood scenario is chosen to demonstrate the method. The experimental data are real cross-sectional observation data of a river flood in 2009 (Figure 2), which comes from the Changjiang Water Resources Commission. It is caused by the continuous heavy rain and the river stage varies greatly, which is suitable for studying the flow field. The experimental area is a segment of the main channel about 35 km in length extending from Shaba Bay to Songzikou, Zhijiang City. The specific data parameters are shown in Table 1. The surveyed dataset forms 248 × 233 × 30 dynamic surfaces along the river, and the data variable type includes flow velocity and water depth. The time range is from 8:00 6 September to 14:00 7 September, the time step is 1 h, so the time series can be obtained by the start time and time step. In addition, as cross-sectional measurement is not feasible to record the data in very shallow water, the real water boundaries of the cross-sections should be extrapolated based on DEM data with a higher resolution. DEM data with a resolution of 5 m are adopted to process the cross-sectional data.

Data Processing
Surveyed cross-sectional data are usually sparse in the transverse direction at each cross-section as well as in the longitudinal direction along the river channel [14]. As river flow simulation and visualization require a large amount of topographic data, resampling of the original cross-sectional data is necessary. Processing of the cross-sectional data includes boundary extrapolation, crosssectional interpolation, and temporal interpolation.

Boundary Extrapolation
With the change of seasons, the water level of the river also changes. Cross-sectional measurement is not feasible to record the data in very shallow water. Observation data are usually inconsistent with the real river boundaries. As a result, the real water boundaries of the cross-sections should be extrapolated based on DEM data. The boundary extrapolation of cross-sectional data is shown in Figure 3.
…, denotes the waterway cross-sectional observation data, and denotes the observational points in section Ci. (2) The terrain elevation of the point is obtained, and the difference value h Δ between the water level and the terrain altitude is computed.
(3) If h Δ is less than a threshold H (for example 0.1 m), the searching point is taken as the boundary point. For the h Δ values of two adjacent sampling points, if one is positive and the other is negative, and both the h Δ values are bigger than H, the dichotomy algorithm [27] is adopted to determine the boundary point; otherwise, the point is added as a new sampling point, and the process is repeated from step (2) to sample the next point.
(4) Similarly, another endpoint along , , n …, denotes the boundary points of the cross-section data.
(5) The positions of the added sampling points are calculated. Once the plane coordinates are acquired, the Bursa-Wolf seven parameters transformation [28] is applied to compute the coordinates in the Cartesian coordinate system. Then, the positions in the spherical coordinate system is: The flow velocity and water depth of the added sampling point are calculated. The velocity of the boundary point is regarded as zero, and the water levels of the sampling points in a crosssection are the same. Linear interpolation is adopted for the calculation: where ( , ) f x y is the estimated value of the added point, ( , ) i i x y + + . The reliability can be evaluated by interpolation error [29].

Cross-Sectional Interpolation
As the measured cross-sectional data are usually sparse along the flow direction, they must be interpolated for detailed visualization. For a meandering river, the adjacent cross-sections are usually not parallel. Consequently, the sampling cross-sections are computed by equal angle distribution ( Figure 4). The specific cross-sectional interpolation steps include: (1) The thalweg of the river is constructed based on cross-sectional data . The thalweg point in each cross-section is defined by calculating the lowest point, described as . (xi, yi) denotes the position of point Ti, (xi+1, yi+1) denotes the position of point Ti+1. The k-th interpolated thalweg point Ti, k is calculated using Quartic Hermite Spline with Parameter (QHSP) [30]: where cot i α and 1 cot i α + are the tangents of the flow direction at the cross sections Ci and Ci+1. The coefficients can be computed as follows: where the parameter ξ is determined by the change in the x-coordinate: (2) The angle θ between cross-section Ci and Ci+1 is calculated as follows: (3) As shown in Figure 4(a), if the angle θ is smaller than a given threshold (for example 5°), the cross-sections are regarded as paralleled lines, and resampling is performed with equal distance distribution. For example, for sections Ci+1 and Ci+2, lines Li+1Li+2 and Ri+1Ri+2 are connected and divided into m segments according to the distance Li+1Li+2. The corresponding division points are connected and the intersection points between those points and the thalweg are computed.
(4) Otherwise, if the angle θ is bigger than the threshold, for example, for sections Ci and Ci+1, they are resampled by equal angle distribution. The direction of the k-th sampled cross-section can be calculated. The intersection points between the thalweg and the cross-section vector are computed by equiangular interpolation [31]: where s is the number of the added cross-section between Ci and Ci+1. (5) The boundaries of the added cross-section are extrapolated based on Section 3.2.1, and riverbank lines are constructed based on the QHSP method defined in Formula (3). (6) The flow velocity and water depth of the added sampling points (Figure 4b) are calculated. The linear interpolation method defined in Formula (2) is applied.

Temporal Interpolation
The cross-sectional observation data are recorded at equal time-intervals, so key frame animation techniques is applied to simulate the dynamic flow [32]. To smooth the flow animation, the linear interpolation is adopted to calculate data in two frames. The values of a point on the river surface are denoted as valuen and valuen+1 at the time of tn and tn+1, respectively. In addition, tx is a specific time between tn and tn+1. The value of the point at time tx is valuex, which can be calculated as:

Flow Simulation
The flow regime of the water in a river is different from the static water in an ocean or lake. As a river is long and narrow, and its elevation varies along the channel, the water flow differs at different locations. To simulate the dynamic change of water flow in the river, dynamic texture mapping with real flow velocity is applied.

Basic Mesh Construction
Because a long river may span several kilometers, rendering the entire flow dataset directly inevitably leads to low efficiency. Therefore, subsection and LOD technologies are applied to build river surface with multi-resolution, which improve the rendering efficiency. The key point of constructing LOD based mesh is to determine subsection size based on the camera state. As the quadtree tile pyramid method for terrain scheduling in the virtual globe has considered the influence of viewing distance and vertical scaling for tile subdivision [33], adopting the terrain tile computing result is beneficial for reducing the amount of LOD calculations.
As shown in Figure 5, the river is first divided into many sections of equal length. As the visual range can be calculated based on the camera pose, the river sections in viewing extent are filtered and loaded. Corresponding to the terrain pyramid level, the cross-sectional data are filtered to construct the mesh surface. When the terrain pyramid level is small, the selected cross-sectional data are sparse; otherwise, the selected cross-sectional data are dense. Finally, the river surface mesh is built by the Delaunay algorithm [34].

Block Crevice Repairing
Because the water flow velocity is different at the river surface, dynamic texture mapping on a single-layer mesh leads to crevices or unnatural connections. To achieve smooth flow effects, a threelayer water surface mesh construction method is proposed. The key to repair the crevices between different blocks is to establish vertical and horizontal fusion zones, which compensate for cracks at the edges of blocks with different speeds and opacities, and achieve smooth transitions.
As shown in Figure 6a, in the first-layer, the water flow velocity in the block ABCD is treated as the same. As the water flow velocities in the blocks ABCD and ACGH are different, a vertical fusion zone ACP1P2 is created to smooth the connection (Figure 6b). Similarly, a horizontal fusion zone CDQ1Q2 is created to smooth the connection between blocks ABCD and CDEF (Figure 6c). The point P1 and Q1 can be calculated as: where the coefficients r and t can be adjusted according to the visual effects.

Dynamic Texture Mapping
To simulate real flow effects, the water material is applied for dynamic texture mapping based on the surface mesh ( Figure 7). As mentioned above, the adjacent block textures should be fused by the velocity interpolation. The specific texture coordinate calculation includes four parts: (1) Static texture coordinate calculation. The texture coordinates of each vertex are calculated to map water texture on the river surface mesh. Here, (U, V) denotes the texture coordinates, where the U axis is along the cross-section, and the V axis is along the main flow direction and perpendicular to the cross-section. The texture coordinates of the vertex Pj in cross-section Ci can be calculated based on the cross-section and the thalweg: where d is the basic tile length between two sampling points, ⃗ is the length of the crosssectional points Pj-1 and Pj and ⃗ is the curve length of the thalweg points Ti-1 and Ti.
For the vertex P1 in the vertical fusion zone ACP1P2, the V coordinate has the same value as vertex A. For the vertex Q1 in the horizontal fusion zone CDQ1Q2, the U coordinate has the same value as vertex A. Thus, the U coordinate of vertex P1 and the V coordinate of vertex Q1 can be acquired: (2) Dynamic texture movement. To achieve effective flow simulation, the moving speed of the water texture is calculated based on the measured flow velocity for each block separately. The U coordinate stays the same and the V coordinate is adjusted by adding an offset value. The moving speed of each block is calculated based on the average speed of the four vertices. The V coordinate offset value can be computed as: where s is the moving speed of the block, and m is the flow velocity exaggeration factor.
(3) Texture fusion. As the water flows, each block moves at an inconsistent speed, causing the textures to be pulled and misaligned. To achieve smooth transitions between blocks, the texture coordinates of the horizontal and vertical zones must be updated adequately. For the block ABCD, the moving speeds of fusion zones ACP1P2 and CDQ1Q2 are separately set to be average speeds of ABCD and adjacent blocks separately. Meanwhile, the opacities of the vertices in the fusion zone need to be varied gradually to blend them together. The opacities of vertices P1 and P2 are set to be 0, and the opacities of vertex A and C are set to be 1. In this case, the shading program automatically implements linear gradient processing from opaque to completely transparent between AC and P1P2, such that the basic block and the fusion zones are smoothly merged into a large texture block. Similarly, the block ABCD and fusion zone CDQ1Q2 are merged together.
(4) Texture rendering. To simulate a real water flow scene, light must be considered [26]. The water surface color is calculated by High Level Shader Language (HLSL) programming as follows: where Cpicture is the texture color value, Cambient is the ambient color, Cdiffuse is the diffuse color, Cspecular is the specular color and Creflect is the reflected color. The values of the coefficients , , , and α β γ ϕ δ lie between 0 and 1, and they can be interactively modified according to the weather conditions.

Flow Visualization
For flow visualization, particle tracking, streamline rendering, and contour surface rendering are adopted to show the water flow information in detail.

Particle Tracking
Particle tracking is a well-known technique for the determination of velocity vectors according to the local velocity observations in a flow field [20]. Cellular Automaton (CA) is adopted to simulate the spatio-temporal interactions between cells [35]. The CA-based particle tracking mainly involves two objects. One is the particle, the speed and direction of each particle is updated. The other is the cell; the state of the cell is characterized by the number of the particles. If a particle in the neighborhood moves into the cell, the number of elements in the cell is increased by 1. If the particle leaves the cell or its velocity becomes 0, the number of elements in the cell is decreased by 1. The integral equation of particle motion is described as: The trajectory of a particle is usually represented as an arrow marker or ribbon trail. Fixed-sized particle visualization leads to crossover for a large-scale view (Figure 8a), whereas for small-scale view, particles are too small to be observed. As a result, LOD technology is applied to compute the cell size and the trajectory length (Figure 8b). Both the cell size and the trajectory length are inversely proportional to the pyramid level of the virtual globe.

Streamline Rendering
Streamlines are water flow curves, which provide a dense visualization result with many flow characteristics, such as vortices, sources, and sinks [36]. In streamline visualization, a certain number of seeds are placed on the canvas, and the curves are drawn from each seeding location. Every point along a curve is tangent to the instantaneous local velocity vector. To improve the rendering efficiency and local details, an adaptive streamline construction method is applied.
As shown in Figure 9, the velocity of the seed point Pi is ( ) i V P   and the velocity is ( ) 1 i V P +  in the next frame, θ is the deflection angle, λ is the step factor associated with the camera pose, μ is the angle factor ( 1 μ > ), v is the ratio of the velocity to the maximum velocity in the field ( D0 is the basic fixed step, k is the terrain pyramid level corresponding to step D0, [ , ] i j level L L ∈ is current terrain pyramid level corresponding to the tile of the streamlines, and m is the viewing distance factor, so the adaptive step Di can be calculated as follows: The algorithm considers both the local flow condition and the global viewing distance. It is proportional to the current velocity and the viewing distance, but inversely proportional to the flow deflection angle. As the camera zooms in, the factor λ is reduced, resulting in the emergence of more visual details. When level is smaller than Li or bigger than Lj, λ keeps the same. As the deflection angle increases, the sampling step decreases exponentially. At the same time, the algorithm avoids the situation whereby the velocity is small, but the deflection angle is large, which causes the step length to be excessive. LOD technology is also applied to control the streamline density.
terrai n level view distance Figure 9. Adaptive streamline rendering.

Contour Surface Rendering
Contour surfaces are based on contour lines, which connect nodes with the same value. Contour surfaces are useful to help users to understand the scalar spatial variation and distribution of values, such as in the display of water depth and level, water surface slope, and pollutant concentrations [16]. The contour surface rendering includes contour line construction and classification coloring.
Assuming that two vertices of a cell are denoted P1 and P2 with values P1.value and P2.value, the current contour line value is value. Therefore, the equivalent value can be judged by If f > 0, no equivalent values between the two points exist; if f < 0, for example, as shown in Figure 10a, the point P with the equivalent value can be calculated by Formula (16); if f = 0, the contour line crosses one of the vertices (Figure 10b). In this case, a very small offset value, for example 0.0001, is given to the vertices to apply the algorithm of the second case, which reduces the calculation difficulty. − .

Implementation and Discussion
The experimental environment is in the 64-bit Windows 10 operating system. The CPU is a 2.7 GHz quad-core Intel Core i5-6400 CPU with 4 GB of RAM, and the graphics card is NVIDIA GeForce GT 730 with 2 GB of RAM. The flow simulation and visualization methods presented in this paper were implemented in World Wind (.NET version) [37] using Direct3D, and the rendering algorithms were written in HLSL 3.0.

Performance
Based on the method proposed in this paper, the cross-sectional observation data are first processed by boundary extrapolation, and then interpolated in both spatial and temporal dimensions. Through data processing, this method provides high-resolution and continuous sampling points for flow simulation and visualization. The water surface of the river is simulated by mesh construction and dynamic texture mapping. The flow visualization includes particle tracking, streamline rendering and contour surface rendering. Figure 11 shows the visual effects of the flow simulation. It demonstrates the flow surface through the mixed migration of water texture ( Figure 11a) and presents the flow differences in various parts of the river using real flow velocity (Figure 11b). The flow velocity is represented by the moving speed of the water texture. The flow velocity and water level can be interactively queried by users. Figure 11c shows the flow velocity variation of a selected position on the river surface. Billboard technology is applied to display the velocity curve, and the maximum and minimum velocities are counted in real time. Figure 11d shows the cross-section and water level of the selected position. The 3D water gauge model created by 3Dmax software is placed in the river to simulate the real water level measurement. Through flow simulation, users can intuitively determine the overall flow state of the river.  Figure 12 presents the visual effects of flow visualization, including particle tracking, streamline rendering, and contour surface rendering. Figure 12a shows the arrow marker-based particle tracking, which draws the trajectories of particles over a period of time. It is useful to show the flow velocity and direction of the water. LOD technology is applied to control the density of the arrow particles and avoid confusing visual effects. Ribbon trails can also be applied to display the flow direction and continuity (Figure 12b). Figure 12c shows the adaptive streamline rendering effects. The streamlines demonstrate the overall flow direction of the river. The flow vortices are visualized by adaptive sampling step, which achieve high accuracy in the curved parts. Red arrows are integrated to demonstrate the streamline direction. The water depth distribution is displayed by the contour surface model in Figure 12d. Contour surfaces are classified based on the water depth and plotted as hypsometric layers. Based on the flow simulation and visualization models, free combination can be applied to build an interactive hybrid flow environment for river shipping. Depth peeling technology [38] is applied to blend the multi flow rendering models based on GPU programming. According to the rendered shape, the hybrid drawing depth is from surface to line to point in descending order. The multi modes are rendered based on sorted depth and blended in a scenario. Figure 13 shows the interactive hybrid flow visualization by combining particle, streamline, and contour surface rendering. Particle tracking presents the river flow velocity and direction in detail, streamline rendering demonstrate the overall flow direction, and contour surface rendering displays the overall water depth distribution. The parameters of the rendering models can be interactively adjusted, resulting in desired effects. All these information are important to monitor the flow conditions of the river. Using hybrid rendering, the flow velocity, flow path, water area, and water depth can be observed from a single scene, which is important for users to acquire different information directly to support river shipping. Figure 14 shows the real-time shipping state analysis. Particle tracking, streamline rendering, and texture mapping are combined to build the hybrid flow environment. Dynamic texture mapping simulates the sense of river flow in the real world, which helps to present the flow situation intuitively. Both the flow conditions and ship state in the ship position are analyzed and displayed in real time. The routing path of the ship is evaluated based on the current flow environment. At the same time, potentially dangerous regions (such as vortices) are analyzed to provide warnings for ship navigation.  Considering the multi-dimensional visualization models, Root Mean Square Error (RMSE) or r 2 are not suitable criteria, so Frame Per Second (FPS) and memory amount are used as the benchmark to evaluate the rendering efficiency quantitatively [39,40]. Table 2 shows the experimental results of the different rendering models and combinations. The performance is evaluated at a 1286×900 screen resolution using perspective projection. As the pyramid terrain structure in the virtual globe considered the influence of viewing distance and vertical scaling, the LOD strategy is applied to the rendering models based on the virtual globe. HLSL programming accelerates the real-time rendering of the mass flow data. The memory amount of the system is below 400 MB. The average FPS of the hybrid rendering 1 (corresponding to Figure 13) is 31, and the average FPS of the hybrid rendering 2 (corresponding to Figure 14) is 36. It should be noted that the rendering cost of the virtual globe is not excluded from the experiment, the actual rendering FPS of the rendering models should be better than the tested numbers. As a result, the cross-sectional data can be interactively visualized to support river shipping.

Discussion
Flow simulation and visualization are used to show the distribution of flow field characteristics and dynamic processes, as well as to provide practical warnings for river shipping navigation [15]. Ships can locate their positions via GPS in the 3D virtual geographical environment and obtain the flow conditions around them. Through the flow modeling and rendering methods presented in this paper, the following results are achieved in the experiments: (1) Comprehensive flow visualization. Because different visualization methods have different characteristics and advantages, the combination of available rendering methods can express flow information comprehensively [41]. The flow surface simulation realizes a sense of reality for the river flow environment. The flow field rendering demonstrates the distribution of flow direction, flow velocity, and vortices, supporting early warning to aid navigation. The contour surface rendering shows the water depth distribution, which is important for ship route planning. Based on these rendering methods, hybrid flow visualization achieves comprehensive information display in a single scenario.
(2) Smooth animation effects. The cross-sectional data are extrapolated and interpolated, providing dense sampling points. LOD technology is applied to retrieve appropriate precision data for efficient visualization. GPU programming improves the efficiency of the flow rendering models. According to the experiment results, the hybrid flow rendering FPS is greater than 30.
(3) Interactive rendering and analysis. The cross-sectional data can be interactively visualized by the template configuration and analyzed at a specific location and time. Meanwhile, the framework shows early warning (e.g., vortex) and route planning, which are beneficial to reduce river shipping accidents.

Conclusions and Future Work
Cross-sectional data measured by bathymetric surveys or SONAR techniques are important for monitoring river flow conditions continuously. Implementation of multi-dimensional dynamic visualization of cross-sectional data provides a real-time, dynamic, and interactive hydrological environment for ship navigation. This paper investigates data processing, flow modeling, and flow rendering methods for a meandering river. The cross-sectional data are extrapolated and interpolated to provide dense sampling points for flow modeling and rendering. The flow surface visualization simulates a real sense of the flow, the flow rendering models display different flow information. As a result, the interactive hybrid flow environment provides comprehensive flow information and realtime shipping analysis, which are important for river navigation.
To improve flow rendering efficiency, the LOD strategy and GPU acceleration are applied. Although the hybrid rendering is achieved through deep peeling technology, the flow models are actually drawn separately, the rendering effect and efficiency could be further improved. For example, Line Integral Convolution (LIC) [42][43][44] integrates streamlines and a noise texture for vector field visualization. However, the noise texture is the same over the river surface, and therefore cannot simulate the real water flow [45]. Flow visualization methods that integrate more information and achieve better effects need to be studied. In addition, because flow rendering models involve mass data calculation, the latest parallel computing technologies, such as High Performance Computing (MPI), Spark and Compute Unified Device Architecture (CUDA) [46], can be adopted to further improve rendering efficiency. In future work, parallel hybrid flow visualization algorithms should be studied to support river shipping.