Resample surface/plane uniformly

So the “big picture” of what I’m trying to do is create an artificial data set that would mimic the output from a 3D camera. The process I’m attempting to complete is this:

  1. Define 8 corner points that make up the cube in a ply file.
  2. Import ply file into paraview, apply Delaunay3D filter to create surfaces.
  3. Sample (or resample…?) each surface of the cube, ideally in a uniform way (though the ‘uniform’ part isn’t that important). Therefore the total number of points would increase from 8 to an arbitrarily big number.
  4. Add noise to the x,y,z coordinates of all points.

I’ve got to step 2, but I can’t figure out a way (and I’m not sure if it’s possible) to do step 3. I’ve tried a quite a few filters - e.g. distribute points, extract enclosed points, resample with dataset, and I would of tried point-plane interpolator if it wasn’t greyed out.

Step 4 would be nice if it could be done in Paraview, but is not a really big deal because I could do it in python if need be.

Is what I’m trying to do possible with Paraview? What would be the right process?

You first three steps looks very much like a Source -> Wavelet.
The fourth step would be Filters -> Random Attributes

1 Like

Thanks Mathieu, that helped a lot. For the next reader, the full process is:

  1. Use source wavelet. The fact that you can’t get a sampling rate smaller than 1 can be fixed later with the calculator.
  2. Use extract surface filter.
  3. Apply random vectors filter. Set the magnitude appropriately.
  4. Apply the calculater filter. Make sure ‘Point Data’ is selected, and ‘Coordinate Results’ is checked. Add the ‘coords’ vector and the ‘BrownianVectors’ together (where BrownianVectors is the default name of the randomly generated vectors). Multiply the result if you wish to scale the result.
1 Like