CGAL 6.0 - 3D Isosurfacing
|
#include <CGAL/Isosurfacing_3/Dual_contouring_domain_3.h>
A domain that can be used as input in the Dual Contouring algorithm.
IsosurfacingDomainWithGradient_3
This class is essentially a wrapper around the different bricks provided by its template parameters: Partition
provides the spatial partitioning, ValueField
and GradientField
the values and gradients that define the isosurface. The optional template parameter EdgeIntersectionOracle
gives control over the method used to compute edge-isosurface intersection points.
Partition | must be a model of IsosurfacingPartition_3 |
ValueField | must be a model of IsosurfacingValueField_3 |
GradientField | must be a model of IsosurfacingGradientField_3 |
EdgeIntersectionOracle | must be a model of IsosurfacingEdgeIntersectionOracle_3 |
Public Member Functions | |
Dual_contouring_domain_3 (const Partition &partition, const ValueField &values, const GradientField &gradients, const EdgeIntersectionOracle &intersection_oracle=EdgeIntersectionOracle()) | |
constructs a domain that can be used with the Dual Contouring algorithm. | |
CGAL::Isosurfacing::Dual_contouring_domain_3< Partition, ValueField, GradientField, EdgeIntersectionOracle >::Dual_contouring_domain_3 | ( | const Partition & | partition, |
const ValueField & | values, | ||
const GradientField & | gradients, | ||
const EdgeIntersectionOracle & | intersection_oracle = EdgeIntersectionOracle() |
||
) |
constructs a domain that can be used with the Dual Contouring algorithm.
partition | the space partitioning data structure |
values | a continuous field of scalar values, defined over the geometric span of partition |
gradients | a continuous field of normalized vectors, defined over the geometric span of partition |
intersection_oracle | the oracle for edge-isosurface intersection computation |
partition
, values
and gradients
objects. As such, users must ensure that the lifetimes of these objects exceed that of the domain object.