Add new ContinuousScatterPlot filter
This new filtered designed for bi-variate analysis builds the continuous scatterplot of a 3D tetrahedralized mesh for two given scalar point fields.
The continuous scatterplot is an extension of the discrete scatterplot for continuous bi-variate analysis. The constructed DataSet consists of triangle-shaped cells, whose coordinates on the 2D plane represent respectively the values of both scalar fields. Triangles' points are associated with a scalar field, representing the density of values in the data domain.
This VTK-m implementation is based on the algorithm presented in the paper "Continuous Scatterplots" by S. Bachthaler and D. Weiskopf. I used the TTK implementation as a reference.
Applying this filter to TTK examples' 'mechanical.vtu' and comparing it to the reference implementation gives the following (rendered here in Paraview)
The main difference between both filters is that TTK re-discretizes the output into a 2D Image Data using raycasting after computing the triangles, whereas in VTK-m we have the bare triangles as an output.
This means, to get the density on a specific point using VTK-m output, you would need to raycast to sum all contributions of interpolated triangles passing through this point. Future work could include 2D Delaunay triangulation to address this shortcoming.