hexed 0.4.0
 
Loading...
Searching...
No Matches
hexed::brep::Coordinate_change Class Reference

A change of coordinates from "definition" space (domain) to "model" space (codomain). More...

#include <brep.hpp>

Public Member Functions

 Coordinate_change (Mat< 3 > translate=Mat< 3 >::Zero(), Mat< 3, 3 > transform=Mat< 3, 3 >::Identity())
 
Mat< 3 > to_model (Mat< 3 > definition) const
 Applies the coordinate transformation.
 
Mat< 3 > to_definition (Mat< 3 > model) const
 Inverts the coordinate transformation.
 
Mat< 3, 3 > transform () const
 Obtains the transformation matrix, if you care.
 
Mat< 3 > translate () const
 Obtains the translation vector, if you care.
 
Coordinate_change operator() (Coordinate_change that) const
 Returns a Coordinate_change which is the composition of this and that.
 

Detailed Description

A change of coordinates from "definition" space (domain) to "model" space (codomain).

Consists of a linear transformation (usually unitary) followed by a translation.

Constructor & Destructor Documentation

◆ Coordinate_change()

hexed::brep::Coordinate_change::Coordinate_change ( Mat< 3 > translate = Mat< 3 >::Zero(),
Mat< 3, 3 > transform = Mat< 3, 3 >::Identity() )
Note
transform must be invertible.

Member Function Documentation

◆ operator()()

Coordinate_change hexed::brep::Coordinate_change::operator() ( Coordinate_change that) const

Returns a Coordinate_change which is the composition of this and that.

I.e., (*this)(that).to_model(x) == this->to_model(that.to_model(x)).

◆ to_definition()

Mat< 3 > hexed::brep::Coordinate_change::to_definition ( Mat< 3 > model) const
inline

Inverts the coordinate transformation.

to_definition(to_model(x)) == to_model(to_definition(x)) = x.

◆ to_model()

Mat< 3 > hexed::brep::Coordinate_change::to_model ( Mat< 3 > definition) const
inline

Applies the coordinate transformation.

Specifically, the result is translate() + transform()*defintion.


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