EBGeometry
Compact, header-only C++ library for fast evaluation of signed distance functions
Loading...
Searching...
No Matches
Classes | Namespaces | Functions
EBGeometry_Transform.hpp File Reference

Various transformations for implicit functions and distance fields. More...

#include <cstddef>
#include <memory>
#include <type_traits>
#include <utility>
#include <vector>
#include "EBGeometry_ImplicitFunction.hpp"
#include "EBGeometry_Vec.hpp"
#include "EBGeometry_TransformImplem.hpp"
Include dependency graph for EBGeometry_Transform.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  EBGeometry::ComplementIF< T >
 Complemented implicit function. More...
 
class  EBGeometry::TranslateIF< T >
 Translated implicit function. More...
 
class  EBGeometry::RotateIF< T >
 Rotated implicit function. Rotates an implicit function about an axis. More...
 
class  EBGeometry::OffsetIF< T >
 Offset implicit function. Offsets (grows or shrinks) the implicit function by a constant. More...
 
class  EBGeometry::ScaleIF< T >
 Uniformly scaled implicit function. More...
 
class  EBGeometry::AnnularIF< T >
 Annular implicit function. Creates a shell out of the implicit function. More...
 
class  EBGeometry::BlurIF< T >
 Blurred/interpolated implicit function — can be used for smoothing. More...
 
class  EBGeometry::MollifyIF< T >
 Mollified implicit function. More...
 
class  EBGeometry::ElongateIF< T >
 Implicit function which is an elongation of another implicit function along each axis. More...
 
class  EBGeometry::ReflectIF< T >
 Implicit function which is a reflection of another implicit function. More...
 

Namespaces

namespace  EBGeometry
 Namespace containing all of EBGeometry's functionality.
 

Functions

template<class T >
std::shared_ptr< ImplicitFunction< T > > EBGeometry::Complement (const std::shared_ptr< ImplicitFunction< T > > &a_implicitFunction)
 Convenience function for taking the complement of an implicit function.
 
template<class T >
std::shared_ptr< ImplicitFunction< T > > EBGeometry::Translate (const std::shared_ptr< ImplicitFunction< T > > &a_implicitFunction, const Vec3T< T > &a_shift)
 Convenience function for translating an implicit function.
 
template<class T >
std::shared_ptr< ImplicitFunction< T > > EBGeometry::Rotate (const std::shared_ptr< ImplicitFunction< T > > &a_implicitFunction, const T a_angle, const size_t a_axis)
 Convenience function for rotating an implicit function.
 
template<class T >
std::shared_ptr< ImplicitFunction< T > > EBGeometry::Scale (const std::shared_ptr< ImplicitFunction< T > > &a_implicitFunction, const T a_scale)
 Convenience function for scaling an implicit function.
 
template<class T >
std::shared_ptr< ImplicitFunction< T > > EBGeometry::Offset (const std::shared_ptr< ImplicitFunction< T > > &a_implicitFunction, const T a_offset)
 Convenience function for offsetting an implicit function.
 
template<class T >
std::shared_ptr< ImplicitFunction< T > > EBGeometry::Annular (const std::shared_ptr< ImplicitFunction< T > > &a_implicitFunction, const T a_delta)
 Convenience function for creating a shell out of an implicit function.
 
template<class T >
std::shared_ptr< ImplicitFunction< T > > EBGeometry::Blur (const std::shared_ptr< ImplicitFunction< T > > &a_implicitFunction, const T a_blurDistance)
 Convenience function for blurring an implicit function.
 
template<class T >
std::shared_ptr< ImplicitFunction< T > > EBGeometry::Mollify (const std::shared_ptr< ImplicitFunction< T > > &a_implicitFunction, const T a_dist, const size_t a_mollifierSamples=2)
 Convenience function for mollification with an input sphere.
 
template<class T >
std::shared_ptr< ImplicitFunction< T > > EBGeometry::Elongate (const std::shared_ptr< ImplicitFunction< T > > &a_implicitFunction, const Vec3T< T > &a_elongation)
 Convenience function for elongating (stretching) an implicit function.
 
template<class T >
std::shared_ptr< ImplicitFunction< T > > EBGeometry::Reflect (const std::shared_ptr< ImplicitFunction< T > > &a_implicitFunction, const size_t &a_reflectPlane)
 Convenience function for reflecting an implicit function.
 

Detailed Description

Various transformations for implicit functions and distance fields.

Author
Robert Marskar