HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GEO_ImplicitSurfaceOps Namespace Reference

Functions

template<typename T >
T opInvert (T a)
 Invert: r = -a. More...
 
template<typename T >
T opInvert (T a, T &da)
 
template<typename T >
UT_IntervalT< T > opInvert (const UT_IntervalT< T > &a)
 
template<typename T >
T opOffset (T offset, T a)
 Offset: r = a - offset. More...
 
template<typename T >
T opOffset (T offset, T a, T &doffset, T &da)
 
template<typename T >
UT_IntervalT< T > opOffset (T offset, const UT_IntervalT< T > &a)
 
template<typename T >
T opShell (T offset, T thickness, T a)
 Shell: r = abs(a - offset) - thickness. More...
 
template<typename T >
T opShell (T offset, T thickness, T a, T &doffset, T &dthickness, T &da)
 
template<typename T >
UT_IntervalT< T > opShell (T offset, T thickness, const UT_IntervalT< T > &a)
 
template<typename T >
T opUnion (T a, T b, int a_id, int b_id, int &id)
 Union: r = min(a, b) More...
 
template<typename T >
T opUnion (T a, T b, int a_id, int b_id, int &id, T &da, T &db)
 
template<typename T >
UT_IntervalT< T > opUnion (const UT_IntervalT< T > &a, const UT_IntervalT< T > &b)
 
template<typename T >
UT_IntervalT< T > opUnion (const UT_IntervalT< T > &a, const UT_IntervalT< T > &b, GEO_ImplicitSurfaceOptFlag &can_optimize)
 
template<typename T >
T opIntersect (T a, T b, int a_id, int b_id, int &id)
 Intersect: r = max(a, b) More...
 
template<typename T >
T opIntersect (T a, T b, int a_id, int b_id, int &id, T &da, T &db)
 
template<typename T >
UT_IntervalT< T > opIntersect (const UT_IntervalT< T > &a, const UT_IntervalT< T > &b)
 
template<typename T >
UT_IntervalT< T > opIntersect (const UT_IntervalT< T > &a, const UT_IntervalT< T > &b, GEO_ImplicitSurfaceOptFlag &can_optimize)
 
template<typename T >
T opSubtract (T a, T b, int a_id, int b_id, int &id)
 Subtract: r = max(a, -b) More...
 
template<typename T >
T opSubtract (T a, T b, int a_id, int b_id, int &id, T &da, T &db)
 
template<typename T >
UT_IntervalT< T > opSubtract (const UT_IntervalT< T > &a, const UT_IntervalT< T > &b)
 
template<typename T >
UT_IntervalT< T > opSubtract (const UT_IntervalT< T > &a, const UT_IntervalT< T > &b, GEO_ImplicitSurfaceOptFlag &can_optimize)
 
template<typename T >
T opDifference (T a, T b, int a_id, int b_id, int &id)
 Difference: r = max(min(a,b), -max(a,b)) More...
 
template<typename T >
T opDifference (T a, T b, int a_id, int b_id, int &id, T &da, T &db)
 
template<typename T >
UT_IntervalT< T > opDifference (const UT_IntervalT< T > &a, const UT_IntervalT< T > &b)
 
template<typename T >
UT_IntervalT< T > opDifference (const UT_IntervalT< T > &a, const UT_IntervalT< T > &b, GEO_ImplicitSurfaceOptFlag &can_optimize)
 
template<typename T >
T opSmoothUnion (T k, T a, T b, int a_id, int b_id, int &id)
 Smooth union: polynomial smooth min. More...
 
template<typename T >
T opSmoothUnion (T k, T a, T b, int a_id, int b_id, int &id, T &dk, T &da, T &db)
 
template<typename T >
UT_IntervalT< T > opSmoothUnion (T k, const UT_IntervalT< T > &a, const UT_IntervalT< T > &b)
 
template<typename T >
UT_IntervalT< T > opSmoothUnion (T k, const UT_IntervalT< T > &a, const UT_IntervalT< T > &b, GEO_ImplicitSurfaceOptFlag &can_optimize)
 
template<typename T >
T opSmoothRepulsiveUnion (T k, T repulsion, T a, T b, int a_id, int b_id, int &id)
 Smooth repulsive union. More...
 
template<typename T >
T opSmoothRepulsiveUnion (T k, T repulsion, T a, T b, int a_id, int b_id, int &id, T &dk, T &drepulsion, T &da, T &db)
 
template<typename T >
UT_IntervalT< T > opSmoothRepulsiveUnion (T k, T repulsion, const UT_IntervalT< T > &a, const UT_IntervalT< T > &b)
 
template<typename T >
UT_IntervalT< T > opSmoothRepulsiveUnion (T k, T repulsion, const UT_IntervalT< T > &a, const UT_IntervalT< T > &b, GEO_ImplicitSurfaceOptFlag &can_optimize)
 
template<typename T >
T opSmoothIntersect (T k, T a, T b, int a_id, int b_id, int &id)
 Smooth intersect: -smooth_union(-a, -b) More...
 
template<typename T >
T opSmoothIntersect (T k, T a, T b, int a_id, int b_id, int &id, T &dk, T &da, T &db)
 
template<typename T >
UT_IntervalT< T > opSmoothIntersect (T k, const UT_IntervalT< T > &a, const UT_IntervalT< T > &b)
 
template<typename T >
UT_IntervalT< T > opSmoothIntersect (T k, const UT_IntervalT< T > &a, const UT_IntervalT< T > &b, GEO_ImplicitSurfaceOptFlag &can_optimize)
 
template<typename T >
T opSmoothSubtract (T k, T a, T b, int a_id, int b_id, int &id)
 Smooth subtract: smooth_intersect(a, -b) More...
 
template<typename T >
T opSmoothSubtract (T k, T a, T b, int a_id, int b_id, int &id, T &dk, T &da, T &db)
 
template<typename T >
UT_IntervalT< T > opSmoothSubtract (T k, const UT_IntervalT< T > &a, const UT_IntervalT< T > &b)
 
template<typename T >
UT_IntervalT< T > opSmoothSubtract (T k, const UT_IntervalT< T > &a, const UT_IntervalT< T > &b, GEO_ImplicitSurfaceOptFlag &can_optimize)
 
template<typename T >
T opSmoothDifference (T k, T a, T b, int a_id, int b_id, int &id)
 Smooth difference. More...
 
template<typename T >
T opSmoothDifference (T k, T a, T b, int a_id, int b_id, int &id, T &dk, T &da, T &db)
 
template<typename T >
UT_IntervalT< T > opSmoothDifference (T k, const UT_IntervalT< T > &a, const UT_IntervalT< T > &b)
 
template<typename T >
UT_IntervalT< T > opSmoothDifference (T k, const UT_IntervalT< T > &a, const UT_IntervalT< T > &b, GEO_ImplicitSurfaceOptFlag &can_optimize)
 
template<typename T >
T opRoundUnion (T k, T a, T b, int a_id, int b_id, int &id)
 Round union. More...
 
template<typename T >
T opRoundUnion (T k, T a, T b, int a_id, int b_id, int &id, T &dk, T &da, T &db)
 
template<typename T >
UT_IntervalT< T > opRoundUnion (T k, const UT_IntervalT< T > &a, const UT_IntervalT< T > &b)
 
template<typename T >
UT_IntervalT< T > opRoundUnion (T k, const UT_IntervalT< T > &a, const UT_IntervalT< T > &b, GEO_ImplicitSurfaceOptFlag &can_optimize)
 
template<typename T >
T opRoundIntersect (T k, T a, T b, int a_id, int b_id, int &id)
 Round intersect. More...
 
template<typename T >
T opRoundIntersect (T k, T a, T b, int a_id, int b_id, int &id, T &dk, T &da, T &db)
 
template<typename T >
UT_IntervalT< T > opRoundIntersect (T k, const UT_IntervalT< T > &a, const UT_IntervalT< T > &b)
 
template<typename T >
UT_IntervalT< T > opRoundIntersect (T k, const UT_IntervalT< T > &a, const UT_IntervalT< T > &b, GEO_ImplicitSurfaceOptFlag &can_optimize)
 
template<typename T >
T opRoundSubtract (T k, T a, T b, int a_id, int b_id, int &id)
 Round subtract. More...
 
template<typename T >
T opRoundSubtract (T k, T a, T b, int a_id, int b_id, int &id, T &dk, T &da, T &db)
 
template<typename T >
UT_IntervalT< T > opRoundSubtract (T k, const UT_IntervalT< T > &a, const UT_IntervalT< T > &b)
 
template<typename T >
UT_IntervalT< T > opRoundSubtract (T k, const UT_IntervalT< T > &a, const UT_IntervalT< T > &b, GEO_ImplicitSurfaceOptFlag &can_optimize)
 
template<typename T >
T opRoundDifference (T k, T a, T b, int a_id, int b_id, int &id)
 Round difference. More...
 
template<typename T >
T opRoundDifference (T k, T a, T b, int a_id, int b_id, int &id, T &dk, T &da, T &db)
 
template<typename T >
UT_IntervalT< T > opRoundDifference (T k, const UT_IntervalT< T > &a, const UT_IntervalT< T > &b)
 
template<typename T >
UT_IntervalT< T > opRoundDifference (T k, const UT_IntervalT< T > &a, const UT_IntervalT< T > &b, GEO_ImplicitSurfaceOptFlag &can_optimize)
 
template<typename T >
T opChamferUnion (T k, T a, T b, int a_id, int b_id, int &id)
 Chamfer union. More...
 
template<typename T >
T opChamferUnion (T k, T a, T b, int a_id, int b_id, int &id, T &dk, T &da, T &db)
 
template<typename T >
UT_IntervalT< T > opChamferUnion (T k, const UT_IntervalT< T > &a, const UT_IntervalT< T > &b)
 
template<typename T >
UT_IntervalT< T > opChamferUnion (T k, const UT_IntervalT< T > &a, const UT_IntervalT< T > &b, GEO_ImplicitSurfaceOptFlag &can_optimize)
 
template<typename T >
T opChamferIntersect (T k, T a, T b, int a_id, int b_id, int &id)
 Chamfer intersect. More...
 
template<typename T >
T opChamferIntersect (T k, T a, T b, int a_id, int b_id, int &id, T &dk, T &da, T &db)
 
template<typename T >
UT_IntervalT< T > opChamferIntersect (T k, const UT_IntervalT< T > &a, const UT_IntervalT< T > &b)
 
template<typename T >
UT_IntervalT< T > opChamferIntersect (T k, const UT_IntervalT< T > &a, const UT_IntervalT< T > &b, GEO_ImplicitSurfaceOptFlag &can_optimize)
 
template<typename T >
T opChamferSubtract (T k, T a, T b, int a_id, int b_id, int &id)
 Chamfer subtract. More...
 
template<typename T >
T opChamferSubtract (T k, T a, T b, int a_id, int b_id, int &id, T &dk, T &da, T &db)
 
template<typename T >
UT_IntervalT< T > opChamferSubtract (T k, const UT_IntervalT< T > &a, const UT_IntervalT< T > &b)
 
template<typename T >
UT_IntervalT< T > opChamferSubtract (T k, const UT_IntervalT< T > &a, const UT_IntervalT< T > &b, GEO_ImplicitSurfaceOptFlag &can_optimize)
 
template<typename T >
T opChamferDifference (T k, T a, T b, int a_id, int b_id, int &id)
 Chamfer difference. More...
 
template<typename T >
T opChamferDifference (T k, T a, T b, int a_id, int b_id, int &id, T &dk, T &da, T &db)
 
template<typename T >
UT_IntervalT< T > opChamferDifference (T k, const UT_IntervalT< T > &a, const UT_IntervalT< T > &b)
 
template<typename T >
UT_IntervalT< T > opChamferDifference (T k, const UT_IntervalT< T > &a, const UT_IntervalT< T > &b, GEO_ImplicitSurfaceOptFlag &can_optimize)
 

Function Documentation

template<typename T >
T GEO_ImplicitSurfaceOps::opChamferDifference ( T  k,
T  a,
T  b,
int  a_id,
int  b_id,
int &  id 
)

Chamfer difference.

template<typename T >
T GEO_ImplicitSurfaceOps::opChamferDifference ( T  k,
T  a,
T  b,
int  a_id,
int  b_id,
int &  id,
T &  dk,
T &  da,
T &  db 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opChamferDifference ( T  k,
const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opChamferDifference ( T  k,
const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b,
GEO_ImplicitSurfaceOptFlag &  can_optimize 
)
template<typename T >
T GEO_ImplicitSurfaceOps::opChamferIntersect ( T  k,
T  a,
T  b,
int  a_id,
int  b_id,
int &  id 
)

Chamfer intersect.

template<typename T >
T GEO_ImplicitSurfaceOps::opChamferIntersect ( T  k,
T  a,
T  b,
int  a_id,
int  b_id,
int &  id,
T &  dk,
T &  da,
T &  db 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opChamferIntersect ( T  k,
const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opChamferIntersect ( T  k,
const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b,
GEO_ImplicitSurfaceOptFlag &  can_optimize 
)
template<typename T >
T GEO_ImplicitSurfaceOps::opChamferSubtract ( T  k,
T  a,
T  b,
int  a_id,
int  b_id,
int &  id 
)

Chamfer subtract.

template<typename T >
T GEO_ImplicitSurfaceOps::opChamferSubtract ( T  k,
T  a,
T  b,
int  a_id,
int  b_id,
int &  id,
T &  dk,
T &  da,
T &  db 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opChamferSubtract ( T  k,
const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opChamferSubtract ( T  k,
const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b,
GEO_ImplicitSurfaceOptFlag &  can_optimize 
)
template<typename T >
T GEO_ImplicitSurfaceOps::opChamferUnion ( T  k,
T  a,
T  b,
int  a_id,
int  b_id,
int &  id 
)

Chamfer union.

template<typename T >
T GEO_ImplicitSurfaceOps::opChamferUnion ( T  k,
T  a,
T  b,
int  a_id,
int  b_id,
int &  id,
T &  dk,
T &  da,
T &  db 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opChamferUnion ( T  k,
const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opChamferUnion ( T  k,
const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b,
GEO_ImplicitSurfaceOptFlag &  can_optimize 
)
template<typename T >
T GEO_ImplicitSurfaceOps::opDifference ( T  a,
T  b,
int  a_id,
int  b_id,
int &  id 
)

Difference: r = max(min(a,b), -max(a,b))

template<typename T >
T GEO_ImplicitSurfaceOps::opDifference ( T  a,
T  b,
int  a_id,
int  b_id,
int &  id,
T &  da,
T &  db 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opDifference ( const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opDifference ( const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b,
GEO_ImplicitSurfaceOptFlag &  can_optimize 
)
template<typename T >
T GEO_ImplicitSurfaceOps::opIntersect ( T  a,
T  b,
int  a_id,
int  b_id,
int &  id 
)

Intersect: r = max(a, b)

template<typename T >
T GEO_ImplicitSurfaceOps::opIntersect ( T  a,
T  b,
int  a_id,
int  b_id,
int &  id,
T &  da,
T &  db 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opIntersect ( const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opIntersect ( const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b,
GEO_ImplicitSurfaceOptFlag &  can_optimize 
)
template<typename T >
T GEO_ImplicitSurfaceOps::opInvert ( T  a)

Invert: r = -a.

template<typename T >
T GEO_ImplicitSurfaceOps::opInvert ( T  a,
T &  da 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opInvert ( const UT_IntervalT< T > &  a)
template<typename T >
T GEO_ImplicitSurfaceOps::opOffset ( T  offset,
T  a 
)

Offset: r = a - offset.

template<typename T >
T GEO_ImplicitSurfaceOps::opOffset ( T  offset,
T  a,
T &  doffset,
T &  da 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opOffset ( T  offset,
const UT_IntervalT< T > &  a 
)
template<typename T >
T GEO_ImplicitSurfaceOps::opRoundDifference ( T  k,
T  a,
T  b,
int  a_id,
int  b_id,
int &  id 
)

Round difference.

template<typename T >
T GEO_ImplicitSurfaceOps::opRoundDifference ( T  k,
T  a,
T  b,
int  a_id,
int  b_id,
int &  id,
T &  dk,
T &  da,
T &  db 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opRoundDifference ( T  k,
const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opRoundDifference ( T  k,
const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b,
GEO_ImplicitSurfaceOptFlag &  can_optimize 
)
template<typename T >
T GEO_ImplicitSurfaceOps::opRoundIntersect ( T  k,
T  a,
T  b,
int  a_id,
int  b_id,
int &  id 
)

Round intersect.

template<typename T >
T GEO_ImplicitSurfaceOps::opRoundIntersect ( T  k,
T  a,
T  b,
int  a_id,
int  b_id,
int &  id,
T &  dk,
T &  da,
T &  db 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opRoundIntersect ( T  k,
const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opRoundIntersect ( T  k,
const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b,
GEO_ImplicitSurfaceOptFlag &  can_optimize 
)
template<typename T >
T GEO_ImplicitSurfaceOps::opRoundSubtract ( T  k,
T  a,
T  b,
int  a_id,
int  b_id,
int &  id 
)

Round subtract.

template<typename T >
T GEO_ImplicitSurfaceOps::opRoundSubtract ( T  k,
T  a,
T  b,
int  a_id,
int  b_id,
int &  id,
T &  dk,
T &  da,
T &  db 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opRoundSubtract ( T  k,
const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opRoundSubtract ( T  k,
const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b,
GEO_ImplicitSurfaceOptFlag &  can_optimize 
)
template<typename T >
T GEO_ImplicitSurfaceOps::opRoundUnion ( T  k,
T  a,
T  b,
int  a_id,
int  b_id,
int &  id 
)

Round union.

template<typename T >
T GEO_ImplicitSurfaceOps::opRoundUnion ( T  k,
T  a,
T  b,
int  a_id,
int  b_id,
int &  id,
T &  dk,
T &  da,
T &  db 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opRoundUnion ( T  k,
const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opRoundUnion ( T  k,
const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b,
GEO_ImplicitSurfaceOptFlag &  can_optimize 
)
template<typename T >
T GEO_ImplicitSurfaceOps::opShell ( T  offset,
T  thickness,
T  a 
)

Shell: r = abs(a - offset) - thickness.

template<typename T >
T GEO_ImplicitSurfaceOps::opShell ( T  offset,
T  thickness,
T  a,
T &  doffset,
T &  dthickness,
T &  da 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opShell ( T  offset,
T  thickness,
const UT_IntervalT< T > &  a 
)
template<typename T >
T GEO_ImplicitSurfaceOps::opSmoothDifference ( T  k,
T  a,
T  b,
int  a_id,
int  b_id,
int &  id 
)

Smooth difference.

template<typename T >
T GEO_ImplicitSurfaceOps::opSmoothDifference ( T  k,
T  a,
T  b,
int  a_id,
int  b_id,
int &  id,
T &  dk,
T &  da,
T &  db 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opSmoothDifference ( T  k,
const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opSmoothDifference ( T  k,
const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b,
GEO_ImplicitSurfaceOptFlag &  can_optimize 
)
template<typename T >
T GEO_ImplicitSurfaceOps::opSmoothIntersect ( T  k,
T  a,
T  b,
int  a_id,
int  b_id,
int &  id 
)

Smooth intersect: -smooth_union(-a, -b)

template<typename T >
T GEO_ImplicitSurfaceOps::opSmoothIntersect ( T  k,
T  a,
T  b,
int  a_id,
int  b_id,
int &  id,
T &  dk,
T &  da,
T &  db 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opSmoothIntersect ( T  k,
const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opSmoothIntersect ( T  k,
const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b,
GEO_ImplicitSurfaceOptFlag &  can_optimize 
)
template<typename T >
T GEO_ImplicitSurfaceOps::opSmoothRepulsiveUnion ( T  k,
T  repulsion,
T  a,
T  b,
int  a_id,
int  b_id,
int &  id 
)

Smooth repulsive union.

template<typename T >
T GEO_ImplicitSurfaceOps::opSmoothRepulsiveUnion ( T  k,
T  repulsion,
T  a,
T  b,
int  a_id,
int  b_id,
int &  id,
T &  dk,
T &  drepulsion,
T &  da,
T &  db 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opSmoothRepulsiveUnion ( T  k,
T  repulsion,
const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opSmoothRepulsiveUnion ( T  k,
T  repulsion,
const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b,
GEO_ImplicitSurfaceOptFlag &  can_optimize 
)
template<typename T >
T GEO_ImplicitSurfaceOps::opSmoothSubtract ( T  k,
T  a,
T  b,
int  a_id,
int  b_id,
int &  id 
)

Smooth subtract: smooth_intersect(a, -b)

template<typename T >
T GEO_ImplicitSurfaceOps::opSmoothSubtract ( T  k,
T  a,
T  b,
int  a_id,
int  b_id,
int &  id,
T &  dk,
T &  da,
T &  db 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opSmoothSubtract ( T  k,
const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opSmoothSubtract ( T  k,
const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b,
GEO_ImplicitSurfaceOptFlag &  can_optimize 
)
template<typename T >
T GEO_ImplicitSurfaceOps::opSmoothUnion ( T  k,
T  a,
T  b,
int  a_id,
int  b_id,
int &  id 
)

Smooth union: polynomial smooth min.

template<typename T >
T GEO_ImplicitSurfaceOps::opSmoothUnion ( T  k,
T  a,
T  b,
int  a_id,
int  b_id,
int &  id,
T &  dk,
T &  da,
T &  db 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opSmoothUnion ( T  k,
const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opSmoothUnion ( T  k,
const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b,
GEO_ImplicitSurfaceOptFlag &  can_optimize 
)
template<typename T >
T GEO_ImplicitSurfaceOps::opSubtract ( T  a,
T  b,
int  a_id,
int  b_id,
int &  id 
)

Subtract: r = max(a, -b)

template<typename T >
T GEO_ImplicitSurfaceOps::opSubtract ( T  a,
T  b,
int  a_id,
int  b_id,
int &  id,
T &  da,
T &  db 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opSubtract ( const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opSubtract ( const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b,
GEO_ImplicitSurfaceOptFlag &  can_optimize 
)
template<typename T >
T GEO_ImplicitSurfaceOps::opUnion ( T  a,
T  b,
int  a_id,
int  b_id,
int &  id 
)

Union: r = min(a, b)

template<typename T >
T GEO_ImplicitSurfaceOps::opUnion ( T  a,
T  b,
int  a_id,
int  b_id,
int &  id,
T &  da,
T &  db 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opUnion ( const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b 
)
template<typename T >
UT_IntervalT<T> GEO_ImplicitSurfaceOps::opUnion ( const UT_IntervalT< T > &  a,
const UT_IntervalT< T > &  b,
GEO_ImplicitSurfaceOptFlag &  can_optimize 
)