Go Namespace Reference

The Go namespace is the common namespace for all GoTools modules. More...


Classes

class  BernsteinMulti
 Class that implements bivariate tensor product Bernstein polynomials on the domain [0,1]x[0,1]. More...
class  BernsteinPoly
 Class that implements Bernstein polynomials on the interval [0,1]. More...
class  BernsteinTetrahedralPoly
 Class that implements Bernstein polynomials on a tetrahedron. More...
class  BernsteinTriangularPoly
 Class that implements Bernstein polynomials on a triangle. More...
class  BezierTriangle
 Not documented. More...
class  Binomial
 Class that computes the binomial coefficients. More...
class  ImplicitizeCurveAlgo
 Class that implements an implicitization algorithm for spline curves. More...
class  ImplicitizeCurveAndVectorAlgo
 Class that implements an algorithm for finding an implicit ruled surface defined by a curve and a vector. More...
class  ImplicitizePointCloudAlgo
 Class that implements an algorithm for finding an implicit surface from a 3D point cloud. More...
class  ImplicitizeSurfaceAlgo
 Class that implements an implicitization algorithm for spline surfaces. More...

Functions

BernsteinMulti operator * (const BernsteinMulti &m1, const BernsteinMulti &m2)
 Multiplication of two polynomials.
BernsteinMulti operator * (const BernsteinMulti &m1, double c)
 Multiplication of a polynomial with a scalar.
BernsteinMulti operator * (double c, const BernsteinMulti &m1)
 Multiplication of a scalar with a polynomial.
BernsteinMulti operator+ (const BernsteinMulti &m1, const BernsteinMulti &m2)
 Addition of two polynomials.
BernsteinMulti operator+ (const BernsteinMulti &m, double c)
 Addition of a polynomial with a scalar.
BernsteinMulti operator+ (double c, const BernsteinMulti &m)
 Addition of a scalar with a polynomial.
BernsteinMulti operator- (const BernsteinMulti &m1, const BernsteinMulti &m2)
 Subtraction of two polynomials.
BernsteinMulti operator- (const BernsteinMulti &m, double c)
 Subtraction of a scalar from a polynomial.
BernsteinMulti operator- (double c, const BernsteinMulti &m)
 Subtraction of a polynomial from a scalar.
BernsteinMulti operator/ (const BernsteinMulti &m, double c)
 Division of a polynomial with a scalar.
BernsteinPoly operator * (const BernsteinPoly &p1, const BernsteinPoly &p2)
 Multiplication of two polynomials.
BernsteinPoly operator * (const BernsteinPoly &p, double c)
 Multiplication of a polynomial with a scalar.
BernsteinPoly operator * (double c, const BernsteinPoly &p)
 Multiplication of a scalar with a polynomial.
BernsteinPoly operator+ (const BernsteinPoly &p1, const BernsteinPoly &p2)
 Addition of two polynomials.
BernsteinPoly operator+ (double c, const BernsteinPoly &p)
 Addition of a scalar with a polynomial.
BernsteinPoly operator+ (const BernsteinPoly &p, double c)
 Addition of a polynomial with a scalar.
BernsteinPoly operator- (const BernsteinPoly &p1, const BernsteinPoly &p2)
 Subtraction of two polynomials.
BernsteinPoly operator- (double c, const BernsteinPoly &p)
 Subtraction of a polynomial from a scalar.
BernsteinPoly operator- (const BernsteinPoly &p, double c)
 Subtraction of a scalar from a polynomial.
BernsteinPoly operator/ (const BernsteinPoly &p, double c)
 Division of a polynomial with a scalar.
BernsteinTetrahedralPoly operator * (const BernsteinTetrahedralPoly &p1, const BernsteinTetrahedralPoly &p2)
 Multiplication of two polynomials.
BernsteinTetrahedralPoly operator * (const BernsteinTetrahedralPoly &p, double c)
 Multiplication of a polynomial with a scalar.
BernsteinTetrahedralPoly operator * (double c, const BernsteinTetrahedralPoly &p)
 Multiplication of a scalar with a polynomial.
BernsteinTetrahedralPoly operator+ (const BernsteinTetrahedralPoly &p1, const BernsteinTetrahedralPoly &p2)
 Addition of two polynomials.
BernsteinTetrahedralPoly operator+ (double c, const BernsteinTetrahedralPoly &p)
 Addition of a scalar with a polynomial.
BernsteinTetrahedralPoly operator+ (const BernsteinTetrahedralPoly &p, double c)
 Addition of a polynomial with a scalar.
BernsteinTetrahedralPoly operator- (const BernsteinTetrahedralPoly &p1, const BernsteinTetrahedralPoly &p2)
 Subtraction of two polynomials.
BernsteinTetrahedralPoly operator- (double c, const BernsteinTetrahedralPoly &p)
 Subtraction of a polynomial from a scalar.
BernsteinTetrahedralPoly operator- (const BernsteinTetrahedralPoly &p, double c)
 Subtraction of a scalar from a polynomial.
BernsteinTetrahedralPoly operator/ (const BernsteinTetrahedralPoly &p, double c)
 Division of a polynomial with a scalar.
std::istream & operator>> (std::istream &is, Go::BernsteinTetrahedralPoly &p)
 Read BernsteinTetrahedralPoly from input stream.
std::ostream & operator<< (std::ostream &os, const Go::BernsteinTetrahedralPoly &p)
 Write BernsteinTetrahedralPoly to output stream.
BernsteinTriangularPoly operator * (const BernsteinTriangularPoly &p1, const BernsteinTriangularPoly &p2)
 Multiplication of two polynomials.
BernsteinTriangularPoly operator * (const BernsteinTriangularPoly &p, double c)
 Multiplication of a polynomial with a scalar.
BernsteinTriangularPoly operator * (double c, const BernsteinTriangularPoly &p)
 Multiplication of a scalar with a polynomial.
BernsteinTriangularPoly operator+ (const BernsteinTriangularPoly &p1, const BernsteinTriangularPoly &p2)
 Addition of two polynomials.
BernsteinTriangularPoly operator+ (double c, const BernsteinTriangularPoly &p)
 Addition of a scalar with a polynomial.
BernsteinTriangularPoly operator+ (const BernsteinTriangularPoly &p, double c)
 Addition of a polynomial with a scalar.
BernsteinTriangularPoly operator- (const BernsteinTriangularPoly &p1, const BernsteinTriangularPoly &p2)
 Subtraction of two polynomials.
BernsteinTriangularPoly operator- (double c, const BernsteinTriangularPoly &p)
 Subtraction of a polynomial from a scalar.
BernsteinTriangularPoly operator- (const BernsteinTriangularPoly &p, double c)
 Subtraction of a scalar from a polynomial.
BernsteinTriangularPoly operator/ (const BernsteinTriangularPoly &p, double c)
 Division of a polynomial with a scalar.
std::istream & operator>> (std::istream &is, Go::BernsteinTriangularPoly &p)
 Read BernsteinTriangularPoly from input stream.
std::ostream & operator<< (std::ostream &os, const Go::BernsteinTriangularPoly &p)
 Write BernsteinTriangularPoly to output stream.
void spline_to_bernstein (const SplineCurve &seg, int dd, BernsteinPoly &bp)
 Takes a segment (defined as having numCoefs() == order() and an order()-regular knot vector) and returns a bernstein polynomial equal to the curve's coordinate number dd.
void spline_to_bernstein (const SplineSurface &pat, int dd, BernsteinMulti &bm)
 Converts the dd-component of a surface patch on SplineSurface form to a BernsteinMulti.
void spline_to_bernstein (const SplineCurve &seg, std::vector< BernsteinPoly > &seg_bp)
 Converts a curve segment on SplineCurve form to a vector of BernsteinPolys.
void spline_to_bernstein (const SplineSurface &pat, std::vector< BernsteinMulti > &pat_bm)
 Converts a surface patch on SplineSurface form to a vector of BernsteinMultis.
template<int Ndim>
void splineToBernstein (const SplineCurve &segment, Array< BernsteinPoly, Ndim > &curve_bp)
 Converts a Bezier curve segment on SplineCurve form to an Array of Ndim BernsteinPolys.
template<int Ndim>
void splineToBernstein (const SplineSurface &patch, Array< BernsteinMulti, Ndim > &surface_bm)
 Converts a Bezier surface patch on SplineSurface form to an Array of Ndim BernsteinMultis.
template<int Ndim>
void bernsteinToSpline (const Array< BernsteinPoly, Ndim > &curve_bp, bool rational, SplineCurve &segment)
 Converts an Array of Ndim BernsteinPolys to a SplineCurve segment.
template<int Ndim>
void bernsteinToSpline (const Array< BernsteinMulti, Ndim > &surface_bm, bool rational, SplineSurface &patch)
 Converts an Array of Ndim BernsteinMultis to a SplineSurface patch.
void create_bary_coord_system2D (const SplineCurve &curve, BaryCoordSystem2D &bc)
 Creates a barycentric coordinate system from a given spline curve.
void create_bary_coord_system3D (const SplineCurve &curve, BaryCoordSystem3D &bc)
 Creates a barycentric coordinate system from a given 3D spline curve.
void create_bary_coord_system3D (const SplineSurface &surface, BaryCoordSystem3D &bc)
 Creates a barycentric coordinate system from a given spline surface.
void create_bary_coord_system3D (const PointCloud3D &cloud, BaryCoordSystem3D &bc)
 Creates a barycentric coordinate system from a point cloud.
void create_bary_coord_system3D (const BoundingBox &box, BaryCoordSystem3D &bc)
 Creates a barycentric coordinate system from a bounding box.
void cart_to_bary (const SplineCurve &cv, const BaryCoordSystem2D &bc, SplineCurve &cv_bc)
 Creates a new curve with control points in 3 barycentric coordinates from the 2D input curve.
void cart_to_bary (const SplineCurve &cv, const BaryCoordSystem3D &bc, SplineCurve &cv_bc)
 Creates a new curve with control points in 4 barycentric coordinates from the 3D input curve.
void cart_to_bary (const SplineSurface &sf, const BaryCoordSystem3D &bc, SplineSurface &sf_bc)
 Creates a new surface with control points in 4 barycentric coordinates from the 3D input surface.
void cart_to_bary (const PointCloud3D &cloud, const BaryCoordSystem3D &bc, PointCloud4D &cloud_bc)
 Creates a new point cloud in 4 barycentric coordinates from the 3D input cloud.
void make_matrix (const SplineCurve &curve, int deg, std::vector< std::vector< double > > &mat)
 Make the matrix D.
void make_matrix (const SplineSurface &surf, int deg, std::vector< std::vector< double > > &mat)
 Make the matrix D.
void make_matrix (const PointCloud4D &cloud, int deg, std::vector< std::vector< double > > &mat)
 Make the matrix D.
void make_implicit_svd (std::vector< std::vector< double > > &mat, std::vector< double > &b, double &sigma_min)
 Performs implicitization using SVD.
void make_implicit_gauss (std::vector< std::vector< double > > &mat, std::vector< double > &b)
 Performs implicitization using Gaussian elimination.


Detailed Description

The Go namespace is the common namespace for all GoTools modules.
Generated on Mon Jun 11 15:13:16 2007 for GoTools Implicitization Library by  doxygen 1.5.1