|
PLaSK library
|
Namespaces | |
| namespace | details |
Classes | |
| struct | Aligner |
| struct | Aligner< _direction > |
| Base class for one direction aligners (in 2D and 3D spaces). More... | |
| struct | Aligner< _direction1, _direction2 > |
| Two directions aligner in 3D space, compose and use two 1D aligners. More... | |
| struct | Aligner< Primitive< 3 >::Direction(0), Primitive< 3 >::Direction(1), Primitive< 3 >::Direction(2)> |
| Three directions aligner in 3D space, compose and use three 1D aligners. More... | |
| struct | Aligner< Primitive< 3 >::DIRECTION_LONG > |
| struct | Aligner< Primitive< 3 >::DIRECTION_TRAN, Primitive< 3 >::DIRECTION_VERT > |
| Two directions aligner in 2D and 3D space, compose and use two 1D aligners. More... | |
| struct | AlignerBase |
| struct | AlignerBase2D |
| Base class for two directions aligner in 3D space, compose and use two 2D aligners. More... | |
| struct | AlignerImpl |
| Helper which allow to implement base class for aligners which work in one direction. More... | |
| struct | DictionaryFromXML |
| Allow to use XMLReader as dictionary which is required by aligners parsing functions. More... | |
| struct | DirectionTo2D |
| Convert Direction to 2D vector direction. More... | |
| struct | DirectionTo2D< Primitive< 3 >::DIRECTION_TRAN > |
| struct | DirectionTo2D< Primitive< 3 >::DIRECTION_VERT > |
Typedefs | |
| typedef Primitive< 3 >::Direction | Direction |
| Directions of aligners activity, same as vec<3, T> directions. | |
| typedef Aligner< Primitive< 3 >::DIRECTION_TRAN, Primitive< 3 >::DIRECTION_VERT > | Aligner2D |
| typedef Aligner< Primitive< 3 >::Direction(0), Primitive< 3 >::Direction(1), Primitive< 3 >::Direction(2)> | Aligner3D |
| template<int dim> | |
| using | AlignerD = typename chooseType< dim-2, Aligner2D, Aligner3D >::type |
| Aligner2D if dim == 2, Aligner3D if dim == 3. | |
| template<Primitive< 3 >::Direction dir> | |
| using | LowerBoundImpl = details::AlignerCustomImpl< dir, details::lowToCoordinate, typename chooseType< dir, details::BACK, details::LEFT, details::BOTTOM >::type > |
| typedef std::function< plask::optional< double >(const std::string &name)> | Dictionary |
Functions | |
| Aligner< Primitive< 3 >::Direction(0), Primitive< 3 >::Direction(1)> | operator& (const Aligner< Primitive< 3 >::Direction(0)> &dir1aligner, const Aligner< Primitive< 3 >::Direction(1)> &dir2aligner) |
| Aligner< Primitive< 3 >::Direction(0), Primitive< 3 >::Direction(1)> | operator& (const Aligner< Primitive< 3 >::Direction(1)> &dir1aligner, const Aligner< Primitive< 3 >::Direction(0)> &dir2aligner) |
| Aligner< Primitive< 3 >::Direction(0), Primitive< 3 >::Direction(2)> | operator& (const Aligner< Primitive< 3 >::Direction(0)> &dir1aligner, const Aligner< Primitive< 3 >::Direction(2)> &dir2aligner) |
| Aligner< Primitive< 3 >::Direction(0), Primitive< 3 >::Direction(2)> | operator& (const Aligner< Primitive< 3 >::Direction(2)> &dir1aligner, const Aligner< Primitive< 3 >::Direction(0)> &dir2aligner) |
| Aligner< Primitive< 3 >::Direction(1), Primitive< 3 >::Direction(2)> | operator& (const Aligner< Primitive< 3 >::Direction(1)> &dir1aligner, const Aligner< Primitive< 3 >::Direction(2)> &dir2aligner) |
| Aligner< Primitive< 3 >::Direction(1), Primitive< 3 >::Direction(2)> | operator& (const Aligner< Primitive< 3 >::Direction(2)> &dir1aligner, const Aligner< Primitive< 3 >::Direction(1)> &dir2aligner) |
| Aligner3D | operator& (const Aligner< Primitive< 3 >::Direction(1), Primitive< 3 >::Direction(2)> &dir12aligner, const Aligner< Primitive< 3 >::Direction(0)> &dir0aligner) |
| Aligner3D | operator& (const Aligner< Primitive< 3 >::Direction(0)> &dir0aligner, const Aligner< Primitive< 3 >::Direction(1), Primitive< 3 >::Direction(2)> &dir12aligner) |
| Aligner3D | operator& (const Aligner< Primitive< 3 >::Direction(0), Primitive< 3 >::Direction(2)> &dir02aligner, const Aligner< Primitive< 3 >::Direction(1)> &dir1aligner) |
| Aligner3D | operator& (const Aligner< Primitive< 3 >::Direction(1)> &dir1aligner, const Aligner< Primitive< 3 >::Direction(0), Primitive< 3 >::Direction(2)> &dir02aligner) |
| Aligner3D | operator& (const Aligner< Primitive< 3 >::Direction(0), Primitive< 3 >::Direction(1)> &dir01aligner, const Aligner< Primitive< 3 >::Direction(2)> &dir2aligner) |
| Aligner3D | operator& (const Aligner< Primitive< 3 >::Direction(2)> &dir2aligner, const Aligner< Primitive< 3 >::Direction(0), Primitive< 3 >::Direction(1)> &dir01aligner) |
| Aligner< Primitive< 3 >::DIRECTION_TRAN > | left (double coordinate) |
| Aligner< Primitive< 3 >::DIRECTION_TRAN > | right (double coordinate) |
| Aligner< Primitive< 3 >::DIRECTION_TRAN > | tranCenter (double coordinate) |
| Aligner< Primitive< 3 >::DIRECTION_TRAN > | center (double coordinate) |
| Aligner< Primitive< 3 >::DIRECTION_TRAN > | tran (double coordinate) |
| Aligner< Primitive< 3 >::DIRECTION_LONG > | front (double coordinate) |
| Aligner< Primitive< 3 >::DIRECTION_LONG > | back (double coordinate) |
| Aligner< Primitive< 3 >::DIRECTION_LONG > | lonCenter (double coordinate) |
| Aligner< Primitive< 3 >::DIRECTION_LONG > | lon (double coordinate) |
| Aligner< Primitive< 3 >::DIRECTION_VERT > | bottom (double coordinate) |
| Aligner< Primitive< 3 >::DIRECTION_VERT > | top (double coordinate) |
| Aligner< Primitive< 3 >::DIRECTION_VERT > | vertCenter (double coordinate) |
| Aligner< Primitive< 3 >::DIRECTION_VERT > | vert (double coordinate) |
| Aligner2D | fromVector (const Vec< 2, double > &v) |
| Aligner3D | fromVector (const Vec< 3, double > &v) |
| template<Primitive< 3 >::Direction dir> | |
| Aligner< dir > | lowerBoundZero () |
| Get aligner with align in one direction to lower bound. | |
| template<Primitive< 3 >::Direction dir1, Primitive< 3 >::Direction dir2> | |
| Aligner< dir1, dir2 > | lowerBoundZero () |
| template<Direction direction> | |
| Aligner< direction > | fromDictionary (Dictionary dictionary, const std::string &axis_name) |
| Construct aligner in given direction from dictionary. | |
| template<Direction direction> | |
| Aligner< direction > | fromDictionary (Dictionary dic, const AxisNames &axis_names) |
| Construct aligner in given direction from dictionary. | |
| template<Direction direction> | |
| Aligner< direction > | fromDictionary (Dictionary dictionary, const AxisNames &axis_names, Aligner< direction > default_aligner) |
| Construct aligner in given direction from dictionary. | |
| template<Direction direction> | |
| Aligner< direction > | fromXML (const XMLReader &reader, const std::string &axis_name) |
| template<Direction direction> | |
| Aligner< direction > | fromXML (const XMLReader &reader, const AxisNames &axis_names) |
| template<Direction direction> | |
| Aligner< direction > | fromXML (const XMLReader &reader, const AxisNames &axis_names, Aligner< direction > default_aligner) |
| template<Direction direction1, Direction direction2> | |
| Aligner< direction1, direction2 > | fromDictionary (Dictionary dic, const AxisNames &axes) |
| Construct 2 directions aligner from dictionary. | |
| template<Direction direction1, Direction direction2> | |
| Aligner< direction1, direction2 > | fromXML (const XMLReader &reader, const AxisNames &axes) |
| Construct 2 directions aligner from XML. | |
| template<Direction direction1, Direction direction2> | |
| Aligner< direction1, direction2 > | fromDictionary (Dictionary dictionary, const AxisNames &axes, Aligner< direction1, direction2 > default2D) |
| Construct 2 direction aligner from dictionary. | |
| template<Direction direction1, Direction direction2> | |
| Aligner< direction1, direction2 > | fromXML (const XMLReader &reader, const AxisNames &axes, Aligner< direction1, direction2 > default2D) |
| Construct 2 direction aligner from XML. | |
| template<Direction direction1, Direction direction2, Direction direction3> | |
| Aligner3D | fromDictionary (Dictionary dictionary, const AxisNames &axis_names) |
| Construct 3 direction aligner from dictionary. | |
| template<Direction direction1, Direction direction2, Direction direction3> | |
| Aligner3D | fromXML (const XMLReader &reader, const AxisNames &axes) |
| Construct 3 direction aligner from XML. | |
| template<Direction direction1, Direction direction2, Direction direction3> | |
| Aligner3D | fromDictionary (Dictionary dic, const AxisNames &axes, Aligner< direction1, direction2, direction3 > default3D) |
| Construct 3 direction aligner from dictionary. | |
| template<Direction direction1, Direction direction2, Direction direction3> | |
| Aligner3D | fromXML (const XMLReader &reader, const AxisNames &axes, Aligner< direction1, direction2, direction3 > default3D) |
| Construct 3 direction aligner from XML. | |
| template<typename TranslationT , typename Aligner1T , typename Aligner2T > | |
| void | align (TranslationT &toAlign, const Aligner1T &aligner1, const Aligner2T &aligner2) |
Align toAlign by aligner1 and aligner2. | |
| typedef Aligner<Primitive<3>::DIRECTION_TRAN, Primitive<3>::DIRECTION_VERT> plask::align::Aligner2D |
| typedef Aligner<Primitive<3>::Direction(0), Primitive<3>::Direction(1), Primitive<3>::Direction(2)> plask::align::Aligner3D |
| using plask::align::AlignerD = typedef typename chooseType<dim-2, Aligner2D, Aligner3D>::type |
| typedef std::function<plask::optional<double>(const std::string& name)> plask::align::Dictionary |
| typedef Primitive<3>::Direction plask::align::Direction |
| using plask::align::LowerBoundImpl = typedef details::AlignerCustomImpl<dir, details::lowToCoordinate, typename chooseType<dir, details::BACK, details::LEFT, details::BOTTOM>::type> |
| void plask::align::align | ( | TranslationT & | toAlign, |
| const Aligner1T & | aligner1, | ||
| const Aligner2T & | aligner2 | ||
| ) |
Align toAlign by aligner1 and aligner2.
It is equal to, but possibly faster than:
It calculates bounding box of toAlign only once and only if it is required by any aligner.
| toAlign | object to align, translation in 2D or 3D |
| aligner1,aligner2 | aligners |
|
inline |
Construct 2 directions aligner from dictionary.
Throw exception if there is no information about one of this direction in dic, or when some direction is described multiple times.
| dic | dictionary which describes required aligner in 2 directions |
| axes | names of axes |
|
inline |
Construct 3 direction aligner from dictionary.
Throw exception if some direction is described multiple times.
| dic | dictionary which describes required aligner in 3 directions |
| axes | names of axes |
| default3D | default aligner in all directions, used when there is no information about aligner in some direction in dictionary |
| Aligner< direction > plask::align::fromDictionary | ( | Dictionary | dic, |
| const AxisNames & | axis_names | ||
| ) |
Construct aligner in given direction from dictionary.
Throw exception if dic contains information about multiple aligners in given direction.
| dictionary | dictionary which can describe aligner |
| axis_names | names of axes |
nullptr if no information about aligner was found in dictionary | direction | direction |
|
inline |
Construct 2 direction aligner from dictionary.
Throw exception if some direction is described multiple times.
| dictionary | dictionary which describes required aligner in 2 directions |
| axes | names of axes |
| default2D | default aligners, used when there is no information about aligner in some direction in dictionary |
|
inline |
Construct 3 direction aligner from dictionary.
Throw exception if there is no information about one of this direction in dic, or when some direction is described multiple times.
| dictionary | dictionary which describes required aligner in 3 directions |
| axis_names | names of axes |
| Aligner< direction > plask::align::fromDictionary | ( | Dictionary | dictionary, |
| const AxisNames & | axis_names, | ||
| Aligner< direction > | default_aligner | ||
| ) |
Construct aligner in given direction from dictionary.
Throw exception if dic contains information about multiple aligners in given direction.
| dictionary | dictionary which can describes 2D aligner |
| axis_names | names of axes |
| default_aligner | default aligners, returned when there is no information about aligner in dictionary |
default_aligner if no information about aligner was found in dictionary | direction | direction |
| Aligner< direction > plask::align::fromDictionary | ( | Dictionary | dictionary, |
| const std::string & | axis_name | ||
| ) |
Construct aligner in given direction from dictionary.
Throw exception if dic contains information about multiple aligners in given direction.
| dictionary | dictionary which can describe aligner |
| axis_name | name of axis in given direction |
nullptr if no information about aligner was found in dictionary | direction | direction |
|
inline |
Construct 2 directions aligner from XML.
Throw exception if there is no information about one of this direction in reader, or when some direction is described multiple times.
| reader | XML reader which point to tag which attributes describe required aligner in 2 directions |
| axes | names of axes |
Construct 3 direction aligner from XML.
Throw exception if there is no information about one of this direction in reader, or when some direction is described multiple times.
| reader | XML reader which point to tag which attributes describe required aligner in 3 directions |
| axes | names of axes |
|
inline |
Construct 2 direction aligner from XML.
Throw exception if some direction is described multiple times.
| reader | XML reader which point to tag which attributes describe required aligner in 2 directions |
| axes | names of axes |
| default2D | default aligners, used when there is no information about aligner in some direction in reader |
|
inline |
Construct 3 direction aligner from XML.
Throw exception if some direction is described multiple times.
| reader | XML reader which point to tag which attributes describe required aligner in 3 directions |
| axes | names of axes |
| default3D | default aligner in all directions, used when there is no information about aligner in some direction in reader |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |