Celeritas 0.6.0-67+develop.47f47c88
Loading...
Searching...
No Matches
Public Member Functions | List of all members
celeritas::orangeinp::EnclosedAzi Class Reference

Define the azimuthal truncation of a solid. More...

#include <Solid.hh>

Public Types

Type aliases
using SenseWedge = std::pair< Sense, InfAziWedge >
 

Public Member Functions

 EnclosedAzi ()=default
 Default to "all angles".
 
 EnclosedAzi (Turn start, Turn stop)
 Construct from a starting angle and stop angle.
 
SenseWedge make_sense_region () const
 Construct a wedge shape to intersect (inside) or subtract (outside).
 
constexpr operator bool () const
 Whether the enclosed angle is not a full circle.
 
Turn start () const
 Starting angle.
 
Turn stop () const
 stop angle
 

Detailed Description

Define the azimuthal truncation of a solid.

This is a pie slice infinite along the z axis and outward from it. Its cross section is in the x-y plane, and a start angle of zero corresponding to the +x axis. An interior angle of one results in no radial exclusion from the resulting solid. A interior angle of more than 0.5 turns (180 degrees) results in a wedge being subtracted from the solid, and an angle of less than or equal to 0.5 turns results in the intersection of the solid with a wedge.

// Truncates a solid to the east-facing quadrant:
EnclosedAzi{Turn{-0.125}, Turn{0.125}};
// Removes the second quadrant (northwest) from a solid:
EnclosedAzi{Turn{0.50}, Turn{1.25}};
Turn_t< real_type > Turn
Turn with default precision (DEPRECATEDish)
Definition Turn.hh:56
A numerical value tagged with a unit.
Definition Quantity.hh:80
Define the azimuthal truncation of a solid.
Definition Solid.hh:42
EnclosedAzi()=default
Default to "all angles".

Member Function Documentation

◆ make_sense_region()

auto celeritas::orangeinp::EnclosedAzi::make_sense_region ( ) const

Construct a wedge shape to intersect (inside) or subtract (outside).

The resulting wedge must be less than a half turn.

◆ operator bool()

constexpr celeritas::orangeinp::EnclosedAzi::operator bool ( ) const
inlineexplicitconstexpr

Whether the enclosed angle is not a full circle.

Note that the constructor does not allow a full circle, so only the default constructor can set values of zero and 1.


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