Class xlifepp::Reflection3d#

class Reflection3d : public xlifepp::Transformation#

Inheritence diagram for xlifepp::Reflection3d:

digraph { graph [bgcolor="#00000000"] node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2] edge [color="#1414CE"] "1" [label="xlifepp::Reflection3d" tooltip="xlifepp::Reflection3d" fillcolor="#BFBFBF"] "2" [label="xlifepp::Transformation" tooltip="xlifepp::Transformation"] "1" -> "2" [dir=forward tooltip="public-inheritance"] }

Collaboration diagram for xlifepp::Reflection3d:

digraph { graph [bgcolor="#00000000"] node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2] edge [color="#1414CE"] "3" [label="xlifepp::Matrix< real_t >" tooltip="xlifepp::Matrix< real_t >"] "8" [label="xlifepp::Vector< real_t >" tooltip="xlifepp::Vector< real_t >"] "5" [label="std::vector< T >" tooltip="std::vector< T >"] "7" [label="std::vector< K >" tooltip="std::vector< K >"] "10" [label="std::vector< const xlifepp::Transformation * >" tooltip="std::vector< const xlifepp::Transformation * >"] "4" [label="std::vector< real_t >" tooltip="std::vector< real_t >"] "6" [label="xlifepp::Matrix< K >" tooltip="xlifepp::Matrix< K >"] "11" [label="xlifepp::Point" tooltip="xlifepp::Point"] "1" [label="xlifepp::Reflection3d" tooltip="xlifepp::Reflection3d" fillcolor="#BFBFBF"] "2" [label="xlifepp::Transformation" tooltip="xlifepp::Transformation"] "9" [label="xlifepp::Vector< K >" tooltip="xlifepp::Vector< K >"] "3" -> "4" [dir=forward tooltip="public-inheritance"] "3" -> "6" [dir=forward tooltip="template-instance"] "8" -> "4" [dir=forward tooltip="public-inheritance"] "8" -> "9" [dir=forward tooltip="template-instance"] "7" -> "5" [dir=forward tooltip="template-instance"] "10" -> "5" [dir=forward tooltip="template-instance"] "4" -> "5" [dir=forward tooltip="template-instance"] "6" -> "7" [dir=forward tooltip="public-inheritance"] "11" -> "4" [dir=forward tooltip="public-inheritance"] "1" -> "2" [dir=forward tooltip="public-inheritance"] "1" -> "11" [dir=forward tooltip="usage"] "1" -> "4" [dir=forward tooltip="usage"] "2" -> "3" [dir=forward tooltip="usage"] "2" -> "8" [dir=forward tooltip="usage"] "2" -> "10" [dir=forward tooltip="usage"] "9" -> "7" [dir=forward tooltip="public-inheritance"] }

representation of a reflection on a plane

Public Functions

Reflection3d()#

default constructor

inline Reflection3d(const Parameter &p1)#

main constructor from one key

inline Reflection3d(const Parameter &p1, const Parameter &p2)#

main constructor from 2 keys

inline Reflection3d(const Point &c, real_t nx, real_t ny, real_t nz)#

constructor from a center and coordinates of the direction vector

inline Reflection3d(const Point &c, std::vector<real_t> n)#

constructor from a center and a normal vector

inline Reflection3d(const std::vector<Parameter> &ps)#

main constructor from a vector of keys

inline virtual ~Reflection3d()#

constructor from a center and coordinates of the normal vector of the plane

virtual Point apply(const Point &p) const#

computes the image of a point by the transformation

inline virtual Transformation *clone() const#

virtual copy constructor

inline const std::vector<real_t> &planeNormal() const#

returns the normal vector of the reflection plane

inline const Point &planePoint() const#

returns the point on the reflection plane

virtual void print(std::ostream&) const#

print Transformation

inline virtual Reflection3d *reflection3d()#

access to child Reflection3d object

inline virtual const Reflection3d *reflection3d() const#

access to child Reflection3d object (const)

std::vector<real_t> u() const#

returns a vector “in” the plane

std::vector<real_t> v() const#

returns another vector “in” the plane