Wavelet(extent=(- 10, 10, - 10, 10, - 10, 10), center=(0, 0, 0), maximum=255, x_freq=60, y_freq=30, z_freq=40, x_mag=10, y_mag=18, z_mag=5, std=0.5, subsample_rate=1)[source]#

Create a wavelet.

Produces images with pixel values determined by Maximum*Gaussian*x_mag*sin(x_freq*x)*sin(y_freq*y)*cos(z_freq*z)

Values are float scalars on point data with name "RTData".

extentsequence, optional

Set/Get the extent of the whole output image. Default (-10, 10, -10, 10, -10, 10).

centerlist, optional

Center of the wavelet.

maximumfloat, optional

Maximum of the wavelet function.

x_freqfloat, optional

Natural frequency in the x direction.

y_freqfloat, optional

Natural frequency in the y direction.

z_freqfloat, optional

Natural frequency in the z direction.

x_magfloat, optional

Magnitude in the x direction.

y_magfloat, optional

Magnitude in the y direction.

z_magfloat, optional

Magnitude in the z direction.

stdfloat, optional

Standard deviation.

subsample_rateint, optional

The sub-sample rate.


Wavelet mesh.


>>> import pyvista
>>> wavelet = pyvista.Wavelet(extent=(0, 50, 0, 50, 0, 10), x_freq=20,
...                           y_freq=10, z_freq=1, x_mag=100, y_mag=100,
...                           z_mag=1000)
>>> wavelet.plot(show_scalar_bar=False)

Extract lower valued cells of the wavelet and create a surface from it.

>>> thresh = wavelet.threshold(800).extract_surface()
>>> thresh.plot(show_scalar_bar=False)

Smooth it to create “waves”

>>> waves = thresh.smooth(n_iter=100, relaxation_factor=0.1)
>>> waves.plot(color='white', smooth_shading=True, show_edges=True)