vtkThinPlateSplineTransform

Struct vtkThinPlateSplineTransform 

Source
pub struct vtkThinPlateSplineTransform(/* private fields */);
Expand description

a nonlinear warp transformation

vtkThinPlateSplineTransform describes a nonlinear warp transform defined by a set of source and target landmarks. Any point on the mesh close to a source landmark will be moved to a place close to the corresponding target landmark. The points in between are interpolated smoothly using Bookstein’s Thin Plate Spline algorithm.

To obtain a correct TPS warp, use the R2LogR kernel if your data is 2D, and the R kernel if your data is 3D. Or you can specify your own RBF. (Hence this class is more general than a pure TPS transform.) @warning

  1. The inverse transform is calculated using an iterative method, and is several times more expensive than the forward transform.
  2. Whenever you add, subtract, or set points you must call Modified() on the vtkPoints object, or the transformation might not update.
  3. Collinear point configurations (except those that lie in the XY plane) result in an unstable transformation. Forward transform can be computed for any configuration by disabling bulk transform regularization. @sa vtkGridTransform vtkGeneralTransform

Implementations§

Source§

impl vtkThinPlateSplineTransform

Source

pub fn new() -> Self

Creates a new vtkThinPlateSplineTransform wrapped inside vtkNew

Trait Implementations§

Source§

impl Default for vtkThinPlateSplineTransform

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl Drop for vtkThinPlateSplineTransform

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.