Celeritas 0.7.0-dev.194+develop.0df4cab59
Loading...
Searching...
No Matches
Public Member Functions | List of all members
celeritas::orangeinp::Tet Class Referencefinal

A tetrahedron defined by four vertices. More...

#include <IntersectRegion.hh>

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

Public Types

Type aliases
using ArrReal3 = Array< Real3, 4 >
 

Public Member Functions

 Tet (ArrReal3 const &)
 Construct from four vertices.
 
 Tet (Real3 const &v0, Real3 const &v1, Real3 const &v2, Real3 const &v3)
 Construct from four vertices.
 
void build (IntersectSurfaceBuilder &) const final
 Build surfaces.
 
void output (JsonPimpl *) const final
 Write output to the given JSON object.
 
Real3 constvertex (size_type i) const
 Get a vertex by index.
 
ArrReal3 constvertices () const
 Get all vertices.
 

Additional Inherited Members

- Protected Member Functions inherited from celeritas::orangeinp::IntersectRegionInterface
 CELER_DEFAULT_COPY_MOVE (IntersectRegionInterface)
 

Detailed Description

A tetrahedron defined by four vertices.

A tetrahedron is a polyhedron with four triangular faces. The four vertices should not be coplanar, and they should be ordered such that when viewed from outside the tetrahedron, each triangular face has vertices in counterclockwise order (following the right-hand rule for outward normals).

The tetrahedron is constructed by defining four planes, one for each face. Each plane is determined by three vertices. Face i uses all the vertices except for the one at index i .

Member Function Documentation

◆ build()

void celeritas::orangeinp::Tet::build ( IntersectSurfaceBuilder insert_surface) const
finalvirtual

◆ output()

void celeritas::orangeinp::Tet::output ( JsonPimpl j) const
finalvirtual

Write output to the given JSON object.

Implements celeritas::orangeinp::IntersectRegionInterface.


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