Builders

Builders construct, modify, or evaluate analytic functions. They are utility classes and do not form part of the analytic-function inheritance hierarchy.

class float_scaOneDPoint

Samples a scalar function uniformly over its normalized unit interval.

Public Functions

float_scaOneDPoint(scaOneD const *const s1d, dtInt const &nPoints)
Parameters:
  • s1d – Scalar function to sample.

  • nPoints – Number of uniformly spaced samples from zero through one.

std::vector<dtReal> result(void)

Return the sampled scalar values.

class dtPoint3_vec3dTwoD

Samples a surface mapping on a regular normalized parameter grid.

Public Functions

dtPoint3_vec3dTwoD(vec3dTwoD const *const v3d, dtInt const &nU, dtInt const &nV)
Parameters:
  • v3d – Surface mapping to sample.

  • nU – Number of samples in the first parameter direction.

  • nV – Number of samples in the second parameter direction.

twoDArrayHandling<dtPoint3> result(void)

Return the sampled three-dimensional point grid.

class vec3dTransVolThreeD_skinBSplineSurfaces

Builds a transfinite volume by skinning the boundaries of B-spline surfaces.

Public Functions

vec3dTransVolThreeD_skinBSplineSurfaces(vectorHandling<analyticFunction const*> const *const aF)
Parameters:

aF – Surface functions defining the sequence of B-spline sections.

vec3dTransVolThreeD *result(void) const

Return a cloned transfinite volume built from the supplied surfaces.

class vec3dTwoD_closeArithmetic

Closes gaps between surface mappings with arithmetic surface correction.

Public Functions

vec3dTwoD_closeArithmetic(ptrVectorHandling<vec3dTwoD> const &v3d, dtInt const &dir, dtInt const &nSegments)
Parameters:
  • v3d – Surface mappings whose underlying geometry is corrected.

  • dir – Surface parameter direction containing the gaps.

  • nSegments – Number of arithmetic correction segments.

ptrVectorHandling<vec3dTwoD> result(void)

Return the corrected surface mappings.

class vec3dTwoD_normalOffset

Builds a B-spline surface offset along projected base-surface normals.

Public Functions

vec3dTwoD_normalOffset(vec3dTwoD const *const v3d, vec3dTwoD const *const thick, dtVector3 const &nf, dtInt const &nU, dtInt const &nV, dtInt const &order, dtInt const &skinOrderMin, dtInt const &skinOrderMax, dtInt const &skinNIterations, bool const &closeU = false, dtReal const &closeSmooth = -1.)
Parameters:
  • v3d – Base surface mapping.

  • thick – Mapping whose x component is offset magnitude and y/z components are base-surface parameters.

  • nf – Reference vector used to project the surface normal.

  • nU – Number of samples in the first parameter direction.

  • nV – Number of samples in the second parameter direction.

  • order – B-spline order of generated section curves.

  • skinOrderMin – Minimum skinning order.

  • skinOrderMax – Maximum skinning order.

  • skinNIterations – Number of skinning iterations.

  • closeU – Whether to join the first and last sample rows.

  • closeSmooth – Optional seam-smoothing factor.

vec3dTwoD *result(void) const

Return a clone of the generated offset surface.

ptrVectorHandling<vec3dOneD> resultWire(void) const

Return the generated B-spline section curves.