|
| Noise (bool=false) |
| Create a noise function.
|
|
| ~Noise () |
| Empty.
|
|
Vector | Gradient (const Vector &) const |
| Compute the gradient of the noise function at a given point.
|
|
double | AtGradient (const Vector &, Vector &) const |
| Compute the gradient of the noise function at a given point.
|
|
Vector | AtVector (const Vector &) const |
| Vector version of Perlin-style noise function.
|
|
bool | Find (Vector &, bool, const Box &, int=10000, Random &=Random::R239) const |
| Find a random sample point inside or outside the surface.
|
|
| AnalyticScalarField (bool=true) |
| Constructor.
|
|
Matrix | Hessian (const Vector &) const |
| Compute the Hessian symmetric matrix of the field function.
|
|
virtual Vector | Normal (const Vector &) const |
| Compute the normal to the surface.
|
|
bool | Inside (const double &) const |
| Check if the value is considered as inside or outside.
|
|
virtual Color | GetMaterial (const Vector &, const Vector &=Vector::Null) const |
| Compute the color.
|
|
virtual Box | GetBox () const |
| Compute the bounding box of the scalar field.
|
|
void | Curvature (const Vector &, double &, double &) const |
| Compute the gaussian and mean curvatures.
|
|
Vector | Cast (const Vector &, const double &, const double &=1e-6, int n=100) const |
| Given a starting vertex x, project it onto the implicit surface following the gradient.
|
|
Vector | Dichotomy (Vector, Vector, double, double, double, const double &=1.0e-4) const |
| Compute the intersection between a segment and an implicit surface.
|
|
virtual bool | GetSample (Vector &, const Box &, Random &=Random::R239) const |
| Find a point sample on the implicit surface.
|
|
virtual int | GetSamples (QVector< Vector > &, const Box &, int, Random &=Random::R239) const |
| Find a set of random sample points on the implicit surface.
|
|
virtual QVector< Vector > | Poisson (double, int, Random &=Random::R239) const |
| Compute a Poisson sphere distribution on an implicit surface.
|
|
virtual ScalarField2 | Sample (const Rectangles &, int, int) const |
| Compute the field function at the vertices a lattice.
|
|
virtual ScalarField2 | Sample (const Quadrangle &, int) const |
| Sample the scalar field on a quadrangle.
|
|
virtual ScalarField | Sample (const Box &, int) const |
| Sample the implicit surface to get a scalar field.
|
|
int | Roots (const Ray &, const double &, const double &, const double &, double *, int=1, const double &=1.0e-4) const |
| Find the intersections between a ray and an implicit surface on a given interval.
|
|
int | Roots (const Ray &, const double &, const double &, const double &, const double &, const double &, double *, int=1, const double &=1.0e-4) const |
| This functions searches the intersections between a ray and an implicit surface on a given interval.
|
|
virtual double | K (const Box &) const |
| Compute the local Lipschitz constant inside a box.
|
|
virtual double | K (const Sphere &) const |
| Compute the local Lipschitz constant inside a box.
|
|
virtual double | K (const Segment &) const |
| Compute the local Lipschitz constant along a segment.
|
|
virtual void | Polygonize (int, Mesh &, const Box &, const double &=1e-4) const |
| Compute the polygonal mesh approximating the implicit surface.
|
|
virtual void | PolygonizeLucie (const Box &, Mesh &, bool, bool) const |
| Implementation of the original continuation polygonization method.
|
|
virtual void | PolygonizeLucie (const double &, Mesh &, bool, bool) const |
| Wyvill's original marching cubes algorithm.
|
|
virtual void | Dual (int, Mesh &, const Box &) const |
| Dual polygonization.
|
|
virtual bool | SphereTrace (const Ray &, const double &, const double &, const double &, double &, int &, const double &=1e-4) const |
| Find the first intersection between a ray and an implicit surface on a given interval, using sphere tracing.
|
|
virtual void | Polygonize (const Box &, QVector< Triangle > &, const double &=1e-4, bool=false) const |
| Polygonize a cube.
|
|
virtual void | Polygonize (const Tetrahedra &, QVector< Triangle > &, const double &=1e-4) const |
| Polygonize a tetrahedral cell.
|
|
virtual Mesh | PolygonizeOctree (const Box &, int, const double &=1e-4) const |
| Compute the polygonal mesh approximating the implicit surface using an octree decomposition of space.
|
|
virtual void | Voxelize (const Box &, int, Box &, QVector< Vector > &) const |
| Voxelize the scalar field.
|
|
virtual void | Voxelize (int, Voxel &, const Box &) const |
| Voxelization.
|
|
virtual double | Volume (int=5) const |
| Computes the volume of the BlobTree.
|
|
virtual double | Volume (const Box &, int) const |
| Compute the volume of a BlobTree object.
|
|
virtual double | Volume (const Box &, int, double &) const |
| Compute the volume of an implicit surface.
|
|
virtual double | StochasticVolume (const Box &, int) const |
| Compute the volume of an implicit surface.
|
|
virtual Sphere | Center (int) const |
| Computes the gravity center of the BlobTree.
|
|
virtual Sphere | Center (const Box &, int) const |
| Compute the center of gravity of the BlobTree.
|
|
virtual void | Colorize (const Mesh &, MeshColor &) const |
| Colorize the vertexes of a mesh according to the analytic scalar field.
|
|
static int | Cubes () |
| Get the number of cubes processed.
|
|
Turbulence computed from a modified noise function.
A turbulence field is characterized by the number of octaves, the attenuation of the amplitude of the noise summed at every step, and by the amplification of the wavelength.