Rounding operator.
More...
#include <sdf.h>
|
| SDFRound (SDFNode *, const double &) |
| Create a rounding node. More...
|
|
virtual | ~SDFRound () |
| Destructor.
|
|
virtual double | Signed (const Vector &) const |
| Compute the signed distance. More...
|
|
int | Memory () const |
| Return the size of a sub-tree. More...
|
|
virtual SDFNode * | Copy () const |
| Deep copy.
|
|
| SDFUnary (SDFNode *) |
| Create an unary node. More...
|
|
virtual | ~SDFUnary () |
| Destroy the sub-tree.
|
|
virtual double | K (const Box &) const |
| Return the local Lipschitz constant. More...
|
|
virtual int | Nodes () const |
| Compute the number of nodes in the sub-tree. More...
|
|
| SDFNode () |
| Create a generic node.
|
|
virtual | ~SDFNode () |
| Destructor.
|
|
virtual Vector | Gradient (const Vector &) const |
| Compute the gradient of the field. More...
|
|
virtual bool | Inside (const Vector &) const |
| Check if a point is inside or outside. More...
|
|
virtual double | K () const |
| Return the Lipschitz constant of the node. More...
|
|
Box | GetBox () const |
| Return the bounding box of the node.
|
|
|
double | r |
| Radius.
|
|
SDFNode * | e = nullptr |
| Sub-tree.
|
|
Box | box |
| Box bounding the surface.
|
|
double | k |
| Lipschitz constant.
|
|
|
static double | SmoothingPolynomialCubic (double d1, double d2, double sr) |
| Generalized C2 polynomial smoothing function between two distances. More...
|
|
static double | SmoothingPolynomial (double d1, double d2, double sr) |
| Generalized C1 polynomial smoothing function between two distances. More...
|
|
static double | SmoothingQuilez (double d1, double d2, double sr) |
| Generalized polynomial smoothing function between two distances. More...
|
|
static double | SmoothingExp (double d1, double d2, double sr) |
| Generalized exponential smoothing function between two distances. More...
|
|
static SDFNode * | Stalactite (const Vector &p, const double &h, const double &r, bool noise=true, Random &random=Random::R239, const double &largeur=0.25, const double &espacement=0.61) |
| Procedural parameterized stalactite. More...
|
|
static SDFNode * | SpherePieces () |
| Sphere carved, placed on a cylinder. Nice scene for testing sharp features reconstruction.
|
|
static constexpr double | Epsilon = 0.01 |
| Small constant used for bounding volumes.
|
|
Rounding operator.
Adds an offset to the argument scalar field. When applied to Euclidean signed distance functions, it produces a rounded shape defined as the Minkowski sum between the object and a sphere.
- See also
- Specific scalar functions that are signed Euclidiean distance fields.
◆ SDFRound()
SDFRound::SDFRound |
( |
SDFNode * |
n, |
|
|
const double & |
r |
|
) |
| |
|
explicit |
Create a rounding node.
- Parameters
-
◆ Memory()
int SDFRound::Memory |
( |
| ) |
const |
|
virtual |
Return the size of a sub-tree.
Reimplemented from SDFNode.
◆ Signed()
double SDFRound::Signed |
( |
const Vector & |
p | ) |
const |
|
virtual |
Compute the signed distance.
- Parameters
-
This operator preserves the Euclidean distance.
Reimplemented from SDFUnary.