EBGeometry 1.0
|
Rotated implicit function. Rotates an implicit function about an axis. More...
#include <EBGeometry_Transform.hpp>
Public Member Functions | |
RotateIF ()=delete | |
No weak construction. | |
RotateIF (const std::shared_ptr< ImplicitFunction< T > > &a_implicitFunction, const T a_angle, const size_t a_axis) noexcept | |
Rounded SDF. Rounds the input SDF. | |
virtual | ~RotateIF () |
Destructor. | |
virtual T | value (const Vec3T< T > &a_point) const noexcept override |
Implementation of value function with rotation. | |
![]() | |
ImplicitFunction ()=default | |
Disallowed, use the full constructor. | |
virtual | ~ImplicitFunction ()=default |
Destructor (does nothing) | |
T | operator() (const Vec3T< T > &a_point) const noexcept |
Alternative signature for the value function. | |
template<class BV > | |
BV | approximateBoundingVolumeOctree (const Vec3T< T > &a_initialLowCorner, const Vec3T< T > &a_initialHighCorner, const unsigned int a_maxTreeDepth, const T &a_safety=0.0) const noexcept |
Compute an approximation to the bounding volume for the implicit surface, using octrees. | |
Protected Attributes | |
std::shared_ptr< ImplicitFunction< T > > | m_implicitFunction |
Underlying implicit function. | |
size_t | m_axis |
Axis to rotate about. | |
T | m_angle |
Angle to rotate. | |
T | m_cosAngle |
Parameter in rotation matrix. Stored for efficiency. | |
T | m_sinAngle |
Parameter in rotation matrix. Stored for efficiency. | |
Rotated implicit function. Rotates an implicit function about an axis.
|
noexcept |
Rounded SDF. Rounds the input SDF.
[in] | a_implicitFunction | Input implicit function. |
[in] | a_angle | Angle to rotate (in degrees) |
[in] | a_axis | Axis to rotate about |
Implementation of value function with rotation.
Implements ImplicitFunction< T >.