gCAD3D 2.40
Go to the documentation of this file.
1 /***************************************************************************
2  ubssur.h - bspline surfaces
3  ---------------------------
4  begin : Sat Apr 28 2007
5  copyright : (C) 2007 by Thomas Backmeister
6  email : t.backmeister@gmx.at
8 ***************************************************************************/
12 // ------------- Geometric Objects ------------------------
13 //
16 // ------------- Constants defined in ubssur.c ------------
17 //
18 extern double UT_TOL_0Cos;
21 // ------------- inline functions -------------------------
22 //
25 // ------------- Prototypes -------------------------------
26 //
28 int USBS_DegElevBspSur (SurBSpl*, Memspc*, SurBSpl*, int, int);
29 int USBS_DerivBspSur (SurBSpl*, Memspc*, SurBSpl*, int);
30 int USBS_DifKntsKntVecBspSur (int*, double**, Memspc*, int, double*,
31  SurBSpl*, int);
32 int USBS_DirIndSdBspSur (double**, double**, long*, Point**, Memspc*,
33  double**, double**, long*, Point**, Memspc*,
34  int, double*, double*, int, int, Point*, int,
35  double, int);
36 int USBS_EvPtBspSur (Point*, SurBSpl*, double, double, Memspc*);
37 int USBS_GordSurBspCrvNet (SurBSpl*, Memspc*, int, CurvBSpl**, int, CurvBSpl**,
38  int, int, Memspc*, Memspc*);
39 int USBS_IntpolBspSur (SurBSpl*, Memspc*, int, int, Point*, int, int,
40  double*, double*, int, Memspc*);
41 int USBS_IntsectLnBspSur (int*, Point*, int, Line*, SurBSpl*, void*, int,
42  Memspc *memSegT[4], Memspc*);
43 int USBS_LinCombBspSurs (SurBSpl*, Memspc*, int, SurBSpl*, double*);
44 int USBS_MkeCmpBspSurs (SurBSpl*, Memspc*, int, SurBSpl**, int, int, Memspc*);
45 int USBS_MrgKntVecBspSurs (int*, double**, Memspc*, int, SurBSpl*, int, Memspc*);
46 int USBS_NxtPtBdryBspSur (Point*, double*, SurBSpl*, int, Point*, Memspc*);
47 int USBS_NxtPtBspSur (Point*, double*, double*, SurBSpl*, int, int, Point*,
48  int, int, Memspc*);
49 int USBS_NvPtBspSur (Vector*, SurBSpl*, Point*, Memspc *memSegT[4], Memspc*);
50 int USBS_RefKntVecBspSur (SurBSpl*, Memspc*, SurBSpl*, int, double*, int);
51 int USBS_SkinSurBspCrvs (SurBSpl*, Memspc*, int, CurvBSpl*, int, int, double*,
52  int, Memspc*);
54  double, int);
57 int USBS_TgVecIsoBspSur (Vector*, SurBSpl*, double, double, int, Memspc*);
58 int USBS_UVPtBspSur (double*, double*, double*, double*, SurBSpl*, void*,
59  int, Point*, double, Memspc *memSegT[4], Memspc*);
60 int USBS_4QuBspSur (SurBSpl *surT[4], Memspc *memsurT[4], SurBSpl*,
61  double, double, Memspc*);
62 // ------------- EOF --------------------------------------
int USBS_SkinSurBspCrvs(SurBSpl *sks, Memspc *memSeg, int ncv, CurvBSpl *bspTab, int deg, int dirUV, double *parT, int usep, Memspc *workSeg)
Definition: ubssur.c:2513
int USBS_NxtPtBspSur(Point *PP, double *ppu, double *ppv, SurBSpl *sur, int clu, int clv, Point *P, int nu, int nv, Memspc *workSeg)
Definition: ubssur.c:370
int USBS_LinCombBspSurs(SurBSpl *suro, Memspc *memSeg, int srNr, SurBSpl *surTi, double *aT)
Definition: ubssur.c:1232
int USBS_DirIndSdBspSur(double **kvTabS1, double **kvTabN1, long *ptNNr1, Point **cpTab1, Memspc *memSeg1, double **kvTabS2, double **kvTabN2, long *ptNNr2, Point **cpTab2, Memspc *memSeg2, int deg, double *kvTabS, double *kvTabN, int ptNrS, int ptNrN, Point *cpTab, int m, double t, int uv)
Definition: ubssur.c:2709
3D-line, Typ_LN
Definition: ut_geo.h:367
int USBS_IntsectLnBspSur(int *nxp, Point *xptab, int xpSiz, Line *ln, SurBSpl *sur, void *memStart, int mi, Memspc *memSegT[4], Memspc *workSeg)
Definition: ubssur.c:150
int USBS_4QuBspSur(SurBSpl *surT[4], Memspc *memsurT[4], SurBSpl *sur, double u, double v, Memspc *workSeg)
Definition: ubssur.c:2896
double UT_TOL_0Cos
tolerance for zero cosine
Definition: ut_tol_const.h:40
int USBS_DegElevBspSur(SurBSpl *suro, Memspc *memSeg, SurBSpl *suri, int dup, int dirUV)
Definition: ubssur.c:1983
int USBS_CpyBspSur(SurBSpl *suro, Memspc *memSeg, SurBSpl *suri)
Definition: ubssur.c:1375
int USBS_TestPatsBspSur(SurBSpl *sur, Memspc *workSeg)
Definition: ubssur.c:853
int USBS_DifKntsKntVecBspSur(int *nk, double **nkTab, Memspc *memSeg, int mk, double *mkTab, SurBSpl *sur, int dirUV)
Definition: ubssur.c:1430
int USBS_RefKntVecBspSur(SurBSpl *suro, Memspc *memSeg, SurBSpl *suri, int nk, double *nkTab, int dirUV)
Definition: ubssur.c:1773
int USBS_EvPtBspSur(Point *pt, SurBSpl *sur, double u, double v, Memspc *workSeg)
Definition: ubssur.c:911
Curve: B-spline Typ_CVBSP.
Definition: ut_geo.h:513
int USBS_UVPtBspSur(double *pu, double *pv, double *useg, double *vseg, SurBSpl *sur, void *memStart, int mi, Point *pt, double tol, Memspc *memSegT[4], Memspc *workSeg)
Definition: ubssur.c:2955
3D-point, Typ_PT
Definition: tessbug1.c:66
3D-vector, Typ_VC
Definition: tst_glDrawElements1.c:58
int USBS_TgVecIsoBspSur(Vector *tg, SurBSpl *sur, double t1, double t2, int uv, Memspc *workSeg)
Definition: ubssur.c:3129
int USBS_GordSurBspCrvNet(SurBSpl *gsur, Memspc *memSeg, int cvNrU, CurvBSpl **cvTU, int cvNrV, CurvBSpl **cvTV, int degU, int degV, Memspc *work1Seg, Memspc *work2Seg)
Definition: ubssur.c:983
int USBS_NvPtBspSur(Vector *nv, SurBSpl *sur, Point *pt, Memspc *memSegT[4], Memspc *workSeg)
Definition: ubssur.c:3067
int USBS_DerivBspSur(SurBSpl *dsur, Memspc *memSeg, SurBSpl *sur, int uv)
Definition: ubssur.c:729
int USBS_SwUVBspSur(SurBSpl *suro, Memspc *memSeg, SurBSpl *suri)
Definition: ubssur.c:1307
int USBS_IntpolBspSur(SurBSpl *sur, Memspc *memSeg, int npu, int npv, Point *pTab, int degU, int degV, double *pvTU, double *pvTV, int usep, Memspc *workSeg)
Definition: ubssur.c:2368
int USBS_SubDivBspSur(SurBSpl *sur1, Memspc *memSeg1, SurBSpl *sur2, Memspc *memSeg2, SurBSpl *sur, double t, int uv)
Definition: ubssur.c:2822
int USBS_MkeCmpBspSurs(SurBSpl *surTo, Memspc *memSeg, int srNr, SurBSpl **surTi, int degU, int degV, Memspc *workSeg)
Definition: ubssur.c:1615
int USBS_MrgKntVecBspSurs(int *mk, double **mkTab, Memspc *memSeg, int nsr, SurBSpl *surTab, int dirUV, Memspc *workSeg)
Definition: ubssur.c:1507
Typ_Memspc (a class for variable-length-records in memory)
Definition: ut_umem.h:32
int USBS_NxtPtBdryBspSur(Point *Pn, double *tn, SurBSpl *sur, int bd, Point *P, Memspc *workSeg)
Definition: ubssur.c:309
Area: B-Spline-Surf Typ_SURBSP.
Definition: ut_geo.h:708