PLaSK library
Loading...
Searching...
No Matches
plask::align::Aligner< Primitive< 3 >::Direction(0), Primitive< 3 >::Direction(1), Primitive< 3 >::Direction(2)> Struct Reference

Three directions aligner in 3D space, compose and use three 1D aligners. More...

#include <plask/geometry/align.hpp>

Collaboration diagram for plask::align::Aligner< Primitive< 3 >::Direction(0), Primitive< 3 >::Direction(1), Primitive< 3 >::Direction(2)>:
[legend]

Public Member Functions

 Aligner ()
 
 Aligner (const Aligner< Primitive< 3 >::DIRECTION_LONG > &dir1aligner, const Aligner< Primitive< 3 >::DIRECTION_TRAN > &dir2aligner, const Aligner< Primitive< 3 >::DIRECTION_VERT > &dir3aligner)
 
bool useBounds () const
 Check if this aligner getAlign use bounding box in calculation.
 
virtual void align (Translation< 3 > &toAlign, const Box3D &childBoundingBox) const
 Set object translation in directions of aligner activity.
 
virtual void align (Translation< 3 > &toAlign) const
 Set object translation in directions of aligner activity.
 
std::string str () const
 Get string representation of this using print method.
 
virtual std::map< std::string, doubleasDict (const AxisNames &axis_names) const
 Get aligner as dictionary.
 
virtual void writeToXML (XMLElement &dest, const AxisNames &axis_names) const
 Write this aligner to XML.
 
bool isNull ()
 

Public Attributes

Aligner< Primitive< 3 >::DIRECTION_LONG > dir1aligner
 
Aligner< Primitive< 3 >::DIRECTION_TRAN > dir2aligner
 
Aligner< Primitive< 3 >::DIRECTION_VERT > dir3aligner
 

Friends

std::ostream & operator<< (std::ostream &out, const Aligner< Primitive< 3 >::Direction(0), Primitive< 3 >::Direction(1), Primitive< 3 >::Direction(2)> &to_print)
 Print this to stream.
 

Detailed Description

Three directions aligner in 3D space, compose and use three 1D aligners.

Definition at line 483 of file align.hpp.

Constructor & Destructor Documentation

◆ Aligner() [1/2]

Definition at line 489 of file align.hpp.

◆ Aligner() [2/2]

plask::align::Aligner< Primitive< 3 >::Direction(0), Primitive< 3 >::Direction(1), Primitive< 3 >::Direction(2)>::Aligner ( const Aligner< Primitive< 3 >::DIRECTION_LONG > &  dir1aligner,
const Aligner< Primitive< 3 >::DIRECTION_TRAN > &  dir2aligner,
const Aligner< Primitive< 3 >::DIRECTION_VERT > &  dir3aligner 
)
inline

Definition at line 491 of file align.hpp.

Member Function Documentation

◆ align() [1/2]

virtual void plask::align::Aligner< Primitive< 3 >::Direction(0), Primitive< 3 >::Direction(1), Primitive< 3 >::Direction(2)>::align ( Translation< 3 > &  toAlign) const
inlinevirtual

Set object translation in directions of aligner activity.

This version is called if caller doesn't know child bounding box.

Parameters
toAligntranslation to set, should have child, which is an object to align

Definition at line 519 of file align.hpp.

◆ align() [2/2]

virtual void plask::align::Aligner< Primitive< 3 >::Direction(0), Primitive< 3 >::Direction(1), Primitive< 3 >::Direction(2)>::align ( Translation< 3 > &  toAlign,
const Box3D childBoundingBox 
) const
inlinevirtual

Set object translation in directions of aligner activity.

This version is called if caller knows child bounding box.

Parameters
toAligntranslation to set, should have child, which is an object to align
childBoundingBoxbounding box of object to align

Definition at line 507 of file align.hpp.

◆ asDict()

virtual std::map< std::string, double > plask::align::Aligner< Primitive< 3 >::Direction(0), Primitive< 3 >::Direction(1), Primitive< 3 >::Direction(2)>::asDict ( const AxisNames axis_names) const
inlinevirtual

Get aligner as dictionary.

Parameters
axis_namesname of axes
Returns
string:double map representing the aligner

Definition at line 550 of file align.hpp.

◆ isNull()

Definition at line 569 of file align.hpp.

◆ str()

std::string plask::align::Aligner< Primitive< 3 >::Direction(0), Primitive< 3 >::Direction(1), Primitive< 3 >::Direction(2)>::str ( ) const
inline

Get string representation of this using print method.

Returns
string representation of this

Definition at line 543 of file align.hpp.

◆ useBounds()

bool plask::align::Aligner< Primitive< 3 >::Direction(0), Primitive< 3 >::Direction(1), Primitive< 3 >::Direction(2)>::useBounds ( ) const
inline

Check if this aligner getAlign use bounding box in calculation.

Returns
true only if this aligner use bounding box, false if is ignored

Definition at line 498 of file align.hpp.

◆ writeToXML()

virtual void plask::align::Aligner< Primitive< 3 >::Direction(0), Primitive< 3 >::Direction(1), Primitive< 3 >::Direction(2)>::writeToXML ( XMLElement dest,
const AxisNames axis_names 
) const
inlinevirtual

Write this aligner to XML.

Parameters
desttag where attributes describing this should be appended
axis_namesname of axes

Definition at line 563 of file align.hpp.

Friends And Related Symbol Documentation

◆ operator<<

std::ostream & operator<< ( std::ostream &  out,
const Aligner< Primitive< 3 >::Direction(0), Primitive< 3 >::Direction(1), Primitive< 3 >::Direction(2)> &  to_print 
)
friend

Print this to stream.

Parameters
outprint destination, output stream
to_printaligner to print
Returns
out stream

Definition at line 535 of file align.hpp.

Member Data Documentation

◆ dir1aligner

Aligner<Primitive<3>::DIRECTION_LONG> plask::align::Aligner< Primitive< 3 >::Direction(0), Primitive< 3 >::Direction(1), Primitive< 3 >::Direction(2)>::dir1aligner

Definition at line 485 of file align.hpp.

◆ dir2aligner

Aligner<Primitive<3>::DIRECTION_TRAN> plask::align::Aligner< Primitive< 3 >::Direction(0), Primitive< 3 >::Direction(1), Primitive< 3 >::Direction(2)>::dir2aligner

Definition at line 486 of file align.hpp.

◆ dir3aligner

Aligner<Primitive<3>::DIRECTION_VERT> plask::align::Aligner< Primitive< 3 >::Direction(0), Primitive< 3 >::Direction(1), Primitive< 3 >::Direction(2)>::dir3aligner

Definition at line 487 of file align.hpp.


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