Rosetta
Public Types | Public Member Functions | Private Attributes | Friends | List of all members
core::kinematics::RT Class Reference

Rotation + translation class. More...

#include <RT.hh>

Public Types

typedef numeric::xyzVector< RealVector
 
typedef numeric::xyzMatrix< RealMatrix
 
typedef void iterator_category
 
typedef void difference_type
 

Public Member Functions

 RT ()
 Default constructor. More...
 
 RT (Matrix const &rot, Vector const &vec)
 matrix/vector constructor More...
 
 RT (Stub const &stub1, Stub const &stub2)
 construct from two stubs More...
 
 RT (RT const &src)
 copy constructor More...
 
void from_stubs (Stub const &stub1, Stub const &stub2)
 update from stubs More...
 
void reverse ()
 reverse the "view" More...
 
void inverse ()
 reverse the "view" More...
 
void reset ()
 return to default-constructed state More...
 
void identity_transform ()
 return to default-constructed state (another name) More...
 
void set_translation (Vector const &t)
 set the tranlsation More...
 
void set_rotation (Matrix const &r)
 set the rotation More...
 
Matrix const & get_rotation () const
 get the rotation More...
 
Vector const & get_translation () const
 get the translation More...
 
Real distance_squared (RT const &b) const
 
void fold_in_rb_deltas (utility::vector1< Real > const &rb, Vector const &rb_center)
 update the transform to include small additional rigid-body rotations and translations More...
 
void make_jump (Stub const &stub1, Stub &stub2) const
 should be inverse of RT::from_stubs More...
 
RToperator= (RT const &)=default
 copy operator More...
 
bool ortho_check () const
 check for orthogonality More...
 

Private Attributes

Matrix rotation
 rotation matrix, written in stub1 frame More...
 
Vector translation
 tranlsation vector, written in stub1 frame More...
 

Friends

std::ostream & operator<< (std::ostream &os, RT const &rt)
 output operator More...
 
std::istream & operator>> (std::istream &is, RT &rt)
 input operator More...
 
Real distance (RT const &a, RT const &b)
 root squared devitation of two RTs More...
 

Detailed Description

Rotation + translation class.

Note
Used in jumps

Member Typedef Documentation

◆ difference_type

◆ iterator_category

◆ Matrix

typedef numeric::xyzMatrix< Real > core::kinematics::RT::Matrix

◆ Vector

typedef numeric::xyzVector< Real > core::kinematics::RT::Vector

Constructor & Destructor Documentation

◆ RT() [1/4]

core::kinematics::RT::RT ( )
inline

Default constructor.

◆ RT() [2/4]

core::kinematics::RT::RT ( Matrix const &  rot,
Vector const &  vec 
)
inline

matrix/vector constructor

◆ RT() [3/4]

core::kinematics::RT::RT ( Stub const &  stub1,
Stub const &  stub2 
)
inline

construct from two stubs

References from_stubs().

◆ RT() [4/4]

core::kinematics::RT::RT ( RT const &  src)
inline

copy constructor

Member Function Documentation

◆ distance_squared()

Real core::kinematics::RT::distance_squared ( RT const &  b) const
inline

◆ fold_in_rb_deltas()

void core::kinematics::RT::fold_in_rb_deltas ( utility::vector1< Real > const &  rb,
Vector const &  rb_center 
)

update the transform to include small additional rigid-body rotations and translations

Note
PHIL: IT WOULD BE GOOD TO ELIMINATE ARGUMENT ARRAYS IN MINI BY USE OF APPROPRIATE LAYERED DATA STRUCTURES

rb are the small changes in translation and rotation, written in up-stream (jump_start) rb_center is the center of rotation, written in the down-stream (jump_end)

References rotation, and translation.

Referenced by core::kinematics::Jump::fold_in_rb_deltas(), and core::kinematics::Jump::make_jump().

◆ from_stubs()

void core::kinematics::RT::from_stubs ( Stub const &  stub1,
Stub const &  stub2 
)

◆ get_rotation()

Matrix const& core::kinematics::RT::get_rotation ( ) const
inline

◆ get_translation()

Vector const& core::kinematics::RT::get_translation ( ) const
inline

◆ identity_transform()

void core::kinematics::RT::identity_transform ( )
inline

return to default-constructed state (another name)

References rotation, and translation.

Referenced by core::kinematics::Jump::identity_transform().

◆ inverse()

void core::kinematics::RT::inverse ( )
inline

reverse the "view"

References reverse().

Referenced by core::scoring::constraints::RTConstraint::fill_f1_f2().

◆ make_jump()

void core::kinematics::RT::make_jump ( Stub const &  stub1,
Stub stub2 
) const

◆ operator=()

RT& core::kinematics::RT::operator= ( RT const &  )
default

copy operator

◆ ortho_check()

bool core::kinematics::RT::ortho_check ( ) const

check for orthogonality

References rotation.

Referenced by core::kinematics::Jump::ortho_check().

◆ reset()

void core::kinematics::RT::reset ( )
inline

return to default-constructed state

References rotation, and translation.

Referenced by core::kinematics::Jump::reset().

◆ reverse()

void core::kinematics::RT::reverse ( )
inline

◆ set_rotation()

void core::kinematics::RT::set_rotation ( Matrix const &  r)
inline

◆ set_translation()

void core::kinematics::RT::set_translation ( Vector const &  t)
inline

Friends And Related Function Documentation

◆ distance

Real distance ( RT const &  a,
RT const &  b 
)
friend

root squared devitation of two RTs

◆ operator<<

std::ostream& operator<< ( std::ostream &  os,
RT const &  rt 
)
friend

output operator

◆ operator>>

std::istream& operator>> ( std::istream &  is,
RT rt 
)
friend

input operator

Member Data Documentation

◆ rotation

Matrix core::kinematics::RT::rotation
private

◆ translation

Vector core::kinematics::RT::translation
private

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