MeshLib C# Docs
Loading...
Searching...
No Matches
MR.AffineXf2f Struct Reference

affine transformation: y = A*x + b, where A in VxV, and b in V Generated from class MR.AffineXf2f. This is the by-value version of the struct. More...

+ Inheritance diagram for MR.AffineXf2f:

Public Member Functions

 AffineXf2f (AffineXf2f _other)
 Generated copy constructor.
 
unsafe AffineXf2f ()
 Constructs an empty (default-constructed) instance.
 
unsafe AffineXf2f (in MR.Matrix2f A, in MR.Vector2f b)
 Generated from constructor MR.AffineXf2f.AffineXf2f.
 
readonly unsafe MR.Vector2f call (in MR.Vector2f x)
 application of the transformation to a point Generated from method MR.AffineXf2f.operator().
 
readonly unsafe MR.Vector2f linearOnly (in MR.Vector2f x)
 applies only linear part of the transformation to given vector (e.g. to normal) skipping adding shift (b) for example if this is a rigid transformation, then only rotates input vector Generated from method MR.AffineXf2f.linearOnly.
 
readonly unsafe MR.AffineXf2f inverse ()
 computes inverse transformation Generated from method MR.AffineXf2f.inverse.
 
bool Equals (MR.AffineXf2f b)
 
override bool Equals (object? other)
 

Static Public Member Functions

static implicit operator AffineXf2f (ConstBox_AffineXf2f other)
 Copy contents from a wrapper class to this struct.
 
static unsafe MR.AffineXf2f translation (in MR.Vector2f b)
 creates translation-only transformation (with identity linear component) Generated from method MR.AffineXf2f.translation.
 
static unsafe MR.AffineXf2f linear (in MR.Matrix2f A)
 creates linear-only transformation (without translation) Generated from method MR.AffineXf2f.linear.
 
static unsafe MR.AffineXf2f xfAround (in MR.Matrix2f A, in MR.Vector2f stable)
 creates transformation with given linear part with given stable point Generated from method MR.AffineXf2f.xfAround.
 
static unsafe MR.AffineXf2f operator* (MR.AffineXf2f u, in MR.AffineXf2f v)
 composition of two transformations: \( y = (u * v) ( x ) = u( v( x ) ) = ( u.A * ( v.A * x + v.b ) + u.b ) = ( u.A * v.A ) * x + ( u.A * v.b + u.b ) \) Generated from function MR.operator*.
 
static unsafe bool operator== (MR.AffineXf2f a, MR.AffineXf2f b)
 Generated from function MR.operator==.
 
static unsafe bool operator!= (MR.AffineXf2f a, MR.AffineXf2f b)
 

Public Attributes

MR.Matrix2f a
 
MR.Vector2f b
 

Detailed Description

affine transformation: y = A*x + b, where A in VxV, and b in V Generated from class MR.AffineXf2f. This is the by-value version of the struct.

Constructor & Destructor Documentation

◆ AffineXf2f() [1/3]

MR.AffineXf2f.AffineXf2f ( AffineXf2f _other)
inline

Generated copy constructor.

◆ AffineXf2f() [2/3]

unsafe MR.AffineXf2f.AffineXf2f ( )
inline

Constructs an empty (default-constructed) instance.

◆ AffineXf2f() [3/3]

unsafe MR.AffineXf2f.AffineXf2f ( in MR.Matrix2f A,
in MR.Vector2f b )
inline

Generated from constructor MR.AffineXf2f.AffineXf2f.

Member Function Documentation

◆ call()

readonly unsafe MR.Vector2f MR.AffineXf2f.call ( in MR.Vector2f x)
inline

application of the transformation to a point Generated from method MR.AffineXf2f.operator().

◆ Equals() [1/2]

bool MR.AffineXf2f.Equals ( MR.AffineXf2f b)
inline

◆ Equals() [2/2]

override bool MR.AffineXf2f.Equals ( object? other)
inline

◆ inverse()

readonly unsafe MR.AffineXf2f MR.AffineXf2f.inverse ( )
inline

computes inverse transformation Generated from method MR.AffineXf2f.inverse.

◆ linear()

static unsafe MR.AffineXf2f MR.AffineXf2f.linear ( in MR.Matrix2f A)
inlinestatic

creates linear-only transformation (without translation) Generated from method MR.AffineXf2f.linear.

◆ linearOnly()

readonly unsafe MR.Vector2f MR.AffineXf2f.linearOnly ( in MR.Vector2f x)
inline

applies only linear part of the transformation to given vector (e.g. to normal) skipping adding shift (b) for example if this is a rigid transformation, then only rotates input vector Generated from method MR.AffineXf2f.linearOnly.

◆ operator AffineXf2f()

static implicit MR.AffineXf2f.operator AffineXf2f ( ConstBox_AffineXf2f other)
static

Copy contents from a wrapper class to this struct.

◆ operator!=()

static unsafe bool MR.AffineXf2f.operator!= ( MR.AffineXf2f a,
MR.AffineXf2f b )
inlinestatic

◆ operator*()

static unsafe MR.AffineXf2f MR.AffineXf2f.operator* ( MR.AffineXf2f u,
in MR.AffineXf2f v )
inlinestatic

composition of two transformations: \( y = (u * v) ( x ) = u( v( x ) ) = ( u.A * ( v.A * x + v.b ) + u.b ) = ( u.A * v.A ) * x + ( u.A * v.b + u.b ) \) Generated from function MR.operator*.

◆ operator==()

static unsafe bool MR.AffineXf2f.operator== ( MR.AffineXf2f a,
MR.AffineXf2f b )
inlinestatic

Generated from function MR.operator==.

◆ translation()

static unsafe MR.AffineXf2f MR.AffineXf2f.translation ( in MR.Vector2f b)
inlinestatic

creates translation-only transformation (with identity linear component) Generated from method MR.AffineXf2f.translation.

◆ xfAround()

static unsafe MR.AffineXf2f MR.AffineXf2f.xfAround ( in MR.Matrix2f A,
in MR.Vector2f stable )
inlinestatic

creates transformation with given linear part with given stable point Generated from method MR.AffineXf2f.xfAround.

Member Data Documentation

◆ a

MR.Matrix2f MR.AffineXf2f.a

◆ b

MR.Vector2f MR.AffineXf2f.b

The documentation for this struct was generated from the following file: