Celeritas  0.5.0-56+6b053cd
Public Member Functions | List of all members
celeritas::orangeinp::Parallelepiped Class Referencefinal

A general parallelepiped centered on the origin. More...

#include <IntersectRegion.hh>

Inheritance diagram for celeritas::orangeinp::Parallelepiped:
Inheritance graph
[legend]

Public Member Functions

 Parallelepiped (Real3 const &halfedges, Turn alpha, Turn theta, Turn phi)
 Construct with a 3-vector of half-edges and three angles.
 
void build (IntersectSurfaceBuilder &) const final
 Build surfaces.
 
void output (JsonPimpl *) const final
 Write output to the given JSON object.
 
Real3 const & halfedges () const
 Half-lengths of edge projections along each axis.
 
Turn alpha () const
 Angle between slanted y-edges and the y-axis (in turns)
 
Turn theta () const
 Polar angle of main axis (in turns)
 
Turn phi () const
 Azimuthal angle of main axis (in turns)
 

Additional Inherited Members

- Protected Member Functions inherited from celeritas::orangeinp::IntersectRegionInterface
 IntersectRegionInterface ()=default
 
virtual ~IntersectRegionInterface ()=default
 
 CELER_DEFAULT_COPY_MOVE (IntersectRegionInterface)
 

Detailed Description

A general parallelepiped centered on the origin.

A parallelepiped is a shape having 3 pairs of parallel faces out of which one is parallel with the XY plane (Z faces). All faces are parallelograms in the general case. The Z faces have 2 edges parallel with the X-axis. Note that all angle parameters are expressed in terms of fractions of a 360deg turn.

The shape has the center in the origin and it is defined by:


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