# Visualization of 3D streamlines in ParaView

Essentially I want to use paraview to recreate a flow visualization like the one shown in the picture above. I am able to create the 3d flow lines using a pipeline that looks like

data (csv)-> TableToStructuredGrid -> Calculator-> ExtractSubset -> StreamTracerwithCustomSource


where I have used the subset as my seed. However I have no idea how to project the 3d flow onto the walls as shown in the picture. There is an option in streamlines called "surface streamlines" but this restricts streamlines to live in a plane whereas I want to project my 3d streamlines down into a plane and display them on the back 3 faces of the bounding cube.

StackOverflow has a similar question to yours. Although, it is not exactly the same.

The following is a pipeline for what you want:

StreamTracer1
|— Transform1
|— Transform2
|— Transform3


Where each transformation correspond to a projection and a translation, namely:

$$P_x = \begin{pmatrix} 0 &0 &0 &\Delta x\\ 0 &1 &0 &0\\ 0 &0 &1 &0\\ 0 &0 &0 &1\\\end{pmatrix}\, ,\quad P_y = \begin{pmatrix} 1 &0 &0 &0\\ 0 &0 &0 &\Delta y\\ 0 &0 &1 &0\\ 0 &0 &0 &1\\\end{pmatrix}\, ,\quad P_z = \begin{pmatrix} 1 &0 &0 &0\\ 0 &1 &0 &0\\ 0 &0 &0 &\Delta z\\ 0 &0 &0 &1\\\end{pmatrix}\, ,$$

where I used homogeneous coordinates, and $$\Delta x$$, $$\Delta y$$, $$\Delta z$$ are the location of the planes where you want your projection to be placed.

In ParaView, the transformation correspond to the field in Transform > Translate and Tranform > Scale, as shown below

Using this approach I get the following result

That is close to what you want.