Signed Distance Fields 1.0
|
Unary planar nodes. More...
#include <sdf.h>
Public Member Functions | |
SDFUnary2 (SDFNode2 *) | |
Create an unary planar node. More... | |
virtual | ~SDFUnary2 () |
Destroy the sub-tree. | |
virtual double | Signed (const Vector2 &) const |
Compute the signed distance. More... | |
virtual double | K () const |
Return the Lipschitz constant of the node. More... | |
virtual int | Nodes () const |
Compute the number of nodes in the sub-tree. More... | |
Public Member Functions inherited from SDFNode2 | |
SDFNode2 () | |
Create a generic node. More... | |
virtual | ~SDFNode2 () |
Destructor. | |
virtual int | Memory () const |
Return the size of a sub-tree. | |
Box2 | GetBox () const |
Return the bounding box of the node. | |
Protected Attributes | |
SDFNode2 * | e = nullptr |
Sub-tree. | |
Protected Attributes inherited from SDFNode2 | |
Box2 | box |
Box bounding the surface. | |
double | k |
Lipschitz constant. | |
Additional Inherited Members | |
Static Protected Attributes inherited from SDFNode2 | |
static constexpr double | Epsilon = 0.01 |
Small constant used for bounding volumes. | |
Unary planar nodes.
|
explicit |
Create an unary planar node.
Default Lipschitz constant and box are computed from the sub-tree.
n | The sub-tree. |
|
virtual |
Return the Lipschitz constant of the node.
By default, nodes are considered as signed Euclidean distance functions, and the Lipschitz consistant is λ=1.
Reimplemented from SDFNode2.
|
virtual |
Compute the number of nodes in the sub-tree.
Reimplemented from SDFNode2.
|
virtual |
Compute the signed distance.
p | Point. |
Reimplemented from SDFNode2.
Reimplemented in SDFNoise2, SDFTurbulence2, SDFThickSurface2, SDFRound2, SDFRotate2, SDFTranslate2, SDFScale2, SDFUniformScale2, and SDFPlanarSymmetry2.