|
Celeritas 0.7.0-dev.194+develop.0df4cab59
|
A closed truncated cone along the z axis centered on the origin. More...
#include <IntersectRegion.hh>

Public Member Functions | |
| Cone (Real2 const &radii, real_type halfheight) | |
| Construct with Z half-height and lo, hi radii. | |
| void | build (IntersectSurfaceBuilder &) const final |
| Build surfaces. | |
| void | output (JsonPimpl *) const final |
| Write output to the given JSON object. | |
| bool | encloses (Cone const &other) const |
| Whether this encloses another cone. | |
| Real2 const & | radii () const |
| Lower and upper radii. | |
| real_type | halfheight () const |
| Half-height along Z. | |
Additional Inherited Members | |
Protected Member Functions inherited from celeritas::orangeinp::IntersectRegionInterface | |
| CELER_DEFAULT_COPY_MOVE (IntersectRegionInterface) | |
A closed truncated cone along the z axis centered on the origin.
A quadric cone technically defines two opposing cones that touch at a single vanishing point, but this cone is required to be truncated so that the vanishing point is on our outside the cone.
The midpoint along the z axis of the cone is the origin. A cone is not allowed to have equal radii: for that, use a cylinder. However, it may have a single radius of zero, which puts the vanishing point on one end of the cone.
This intersect region, along with the Cylinder, is a base component of the G4Polycone (PCON).
|
finalvirtual |
Build surfaces.
The inner bounding box of a cone is determined with the following procedure:
Implements celeritas::orangeinp::IntersectRegionInterface.
Write output to the given JSON object.
Implements celeritas::orangeinp::IntersectRegionInterface.