|
Blob 1.0
|
Generic warping node. More...
#include <blobtree.h>
Public Member Functions | |
| TreeWarp (TreeNode *=nullptr) | |
| Create a warping node. | |
| virtual | ~TreeWarp () |
| Recursively destroys the structure. | |
| virtual Color | GetMaterial (const Vector &, const Vector &=Vector::Null) const =0 |
| Gets the color of a node at a point. | |
Public Member Functions inherited from TreeUnary | |
| TreeUnary (TreeNode *) | |
| Create a generic warping node. | |
| virtual | ~TreeUnary () |
| Recursively destroys the structure. | |
| virtual int | Memory () const |
| Compute the size of the sub-tree. | |
| virtual int | Nodes () const |
| Compute the number of nodes of the sub-tree. | |
| virtual int | Depth () const |
| Compute the dpeth of the sub-tree. | |
| virtual void | SetThreshold (const double &) |
| Recursively setup the threshold value. | |
Public Member Functions inherited from TreeOperator | |
| TreeOperator () | |
| Creates an operator node. | |
| virtual | ~TreeOperator () |
| Destroys an operator. | |
Public Member Functions inherited from TreeNode | |
| TreeNode () | |
| Create a virtual node of the Blob-Tree structure. | |
| virtual | ~TreeNode () |
| Destroys a node. | |
| virtual double | Intensity (const Vector &) const =0 |
| Compute the field function value at a given point in space. | |
| virtual double | Omega (const Vector &) const |
| Return the squared distance to the compact support of the node. | |
| virtual void | IntensityGradient (const Vector &, double &, Vector &) const |
| Computes the field value and the gradient at a given point in space. | |
| virtual Vector | Gradient (const Vector &) const |
| Computes the gradient of the field function at a given point in space. | |
| virtual TreeNode * | Blend (TreeNode *) |
| Insert a blending node that blends the old and the new sub-tree together. | |
| virtual TreeNode * | Union (TreeNode *) |
| Insert a union node that unions the old and the new sub-tree together. | |
| virtual TreeNode * | Difference (TreeNode *) |
| Insert a difference node. | |
| virtual TreeNode * | Translate (const Vector &) |
| Insert a translation node. | |
| virtual TreeNode * | Rotate (const Matrix &) |
| Insert a rotation node. | |
| virtual TreeNode * | Scale (const Vector &) |
| Insert a scaling node. | |
| virtual TreeNode * | Copy () const =0 |
| Creates a deep copy of the node, recursively traversing the whole structure. | |
| virtual double | K () const =0 |
| Compute the Lipschitz constant of the node. | |
| virtual double | K (const Box &) const =0 |
| Compute the local Lipschitz constant in a box. | |
| virtual double | K (const Ray &) const =0 |
| Compute the local Lipschitz along a ray. | |
| virtual double | K (const Segment &) const |
| Compute the Lipschitz constant along a segment. | |
| virtual double | K (const RayStep &) const |
| Compute the Lipschitz constant along an optimized ray-stepping segment. | |
| virtual double | K (const Sphere &) const |
| Compute the Lipschitz constant in a sphere. | |
| Box | GetBox () const |
| Return the bounding box of the node. | |
| virtual TreeNode * | Cut (const Box &) const =0 |
| Cuts the node to simplify its structure inside a box. | |
| virtual QString | Show (int=0) const |
| Show the tree hierarchy. | |
| virtual Vector | Dichotomy (Vector, Vector, double, double, double, const double &=1.0e-4) |
| Compute the intersection between the implicit surface and a segment. | |
Additional Inherited Members | |
Protected Attributes inherited from TreeNode | |
| Box | box = Box::Null |
| Bounding box of the node. | |
| double | T = 0.5 |
| Threshold value. | |
Static Protected Attributes inherited from TreeNode | |
| static const double | Epsilon = 1e-6 |
| Epsilon value for gradient computation. | |
Generic warping node.
This class implements the generic warping node model. In contrast to most other nodes, warpings are always unary nodes.
,
|
explicit |
Create a warping node.
| node | Child node. |
|
virtual |
Recursively destroys the structure.
Implicitly calls TreeUnary::~TreeUnary().
|
pure virtual |
Gets the color of a node at a point.
This function returns a default black material.
Reimplemented from TreeNode.
Implemented in TreeFrame, TreeRotate, TreeScale, TreeTaper, TreeTranslate, and TreeTwist.