Flow123d
release_2.2.0-914-gf1a3a4f
|
Plucker coordinates representing line given by points A,B. More...
#include <plucker.hh>
Public Member Functions | |
Plucker () | |
Plucker (const arma::vec3 &a, const arma::vec3 &b) | |
Creates Plucker coordinates of a line AB. More... | |
Plucker (const Plucker &p) | |
Copy constructor. More... | |
~Plucker () | |
Destructor. More... | |
double | scale () const |
double | operator[] (const unsigned int index) const |
Returns Plucker coordinate of index . More... | |
double | operator* (const Plucker &b) |
Compute product of two Plucker coordinates. More... | |
void | clear () |
Sets the flag computed on false. More... | |
bool | is_computed () const |
Return true if Plucker coordinates have been computed already. More... | |
void | compute (const arma::vec3 &a, const arma::vec3 &b) |
Compute Plucker coordinates and set computed to true. More... | |
arma::vec3 | get_u_vector () const |
Gets directional vector U. More... | |
arma::vec3 | get_ua_vector () const |
Gets cross product vector UxA. More... | |
arma::vec6 | get_plucker_coords () const |
Gets Plucker coordinates. More... | |
Private Attributes | |
arma::vec6 | coordinates_ |
Plucker coordinates. More... | |
double | scale_ |
bool | computed_ |
True, if Plucker coordinates are computed; false otherwise. More... | |
Friends | |
std::ostream & | operator<< (std::ostream &os, const Plucker &p) |
Friend output operator. More... | |
Plucker coordinates representing line given by points A,B.
Plucker class represents a line by 6 dimensional vector. After inserting a three-dimensional points A and B, which represents the line, class creates plucker coordinates of the line.
Class also can compute a product of two plucker coordinates.
Description of Plücker Coordinates: https://en.wikipedia.org/wiki/Pl%C3%BCcker_coordinates
Empty constructor is used for passing object to pointers from different places coordinates data are filled after calling method "compute" a flag "computed" is for comparison if coordinates data are filled
question: is compute() used from outside ? answer: Yes
Definition at line 47 of file plucker.hh.
|
inline |
Default constructor. Plucker coordinates are not computed.
Definition at line 107 of file plucker.hh.
|
inline |
Creates Plucker coordinates of a line AB.
a | - A point from AB line |
b | - B point from AB line |
Definition at line 110 of file plucker.hh.
|
inline |
Copy constructor.
Definition at line 114 of file plucker.hh.
|
inline |
Destructor.
Definition at line 67 of file plucker.hh.
|
inline |
Sets the flag computed on false.
Definition at line 122 of file plucker.hh.
void Plucker::compute | ( | const arma::vec3 & | a, |
const arma::vec3 & | b | ||
) |
Compute Plucker coordinates and set computed to true.
a | A point from AB line |
b | B point from AB line (order of points determines orientation!) |
Definition at line 11 of file plucker.cc.
|
inline |
Gets Plucker coordinates.
Definition at line 136 of file plucker.hh.
|
inline |
Gets directional vector U.
Definition at line 128 of file plucker.hh.
|
inline |
Gets cross product vector UxA.
Definition at line 132 of file plucker.hh.
|
inline |
Return true if Plucker coordinates have been computed already.
Definition at line 125 of file plucker.hh.
double Plucker::operator* | ( | const Plucker & | b | ) |
Compute product of two Plucker coordinates.
Definition at line 7 of file plucker.cc.
|
inline |
Returns Plucker coordinate of index
.
Definition at line 118 of file plucker.hh.
|
inline |
Definition at line 69 of file plucker.hh.
|
friend |
Friend output operator.
|
private |
True, if Plucker coordinates are computed; false otherwise.
Definition at line 52 of file plucker.hh.
|
private |
Plucker coordinates.
Definition at line 50 of file plucker.hh.
|
private |
Definition at line 51 of file plucker.hh.