CagdCrvStruct *BspCrvBlossomMult(const CagdCrvStruct *Crv1,
const CagdCrvStruct *Crv2)
CagdCrvStruct *BspCrvMult(const CagdCrvStruct *CCrv1,
const CagdCrvStruct *CCrv2)
BspMultComputationMethodType BspMultComputationMethod(
BspMultComputationMethodType BspMultMethod)
CagdSrfStruct *BspSrfBlossomMult(const CagdSrfStruct *Srf1,
const CagdSrfStruct *Srf2)
CagdSrfStruct *BspSrfFactorBilinear(const CagdSrfStruct *Srf,
const CagdRType *A)
CagdSrfStruct *BspSrfFactorUMinusV(const CagdSrfStruct *Srf)
CagdSrfStruct *BspSrfMult(const CagdSrfStruct *CSrf1,
const CagdSrfStruct *CSrf2)
CagdCrvStruct *BzrComposeCrvCrv(const CagdCrvStruct *Crv1,
const CagdCrvStruct *Crv2)
CagdCrvStruct *BzrComposeSrfCrv(const CagdSrfStruct *Srf,
const CagdCrvStruct *Crv)
CagdSrfStruct *BzrComposeSrfSrf(const CagdSrfStruct *Srf1,
const CagdSrfStruct *Srf2)
CagdCrvStruct *BzrCrvFactor1MinusT(const CagdCrvStruct *Crv)
CagdCrvStruct *BzrCrvFactorT(const CagdCrvStruct *Crv)
CagdCrvStruct *BzrCrvMult(const CagdCrvStruct *CCrv1,
const CagdCrvStruct *CCrv2)
CagdCrvStruct *BzrCrvMultList(const CagdCrvStruct *Crv1Lst,
const CagdCrvStruct *Crv2Lst)
void BzrCrvMultPtsVecs(const CagdRType *Pts1,
int Order1,
const CagdRType *Pts2,
int Order2,
CagdRType *ProdPts)
CagdSrfStruct *BzrSrfFactorBilinear(const CagdSrfStruct *Srf,
const CagdRType *A)
CagdSrfStruct *BzrSrfFactorExtremeRowCol(const CagdSrfStruct *Srf,
CagdSrfBndryType Bndry)
void BzrSrfFactorLowOrders(const CagdSrfStruct *Srf,
CagdSrfStruct **S11,
CagdSrfStruct **S12,
CagdSrfStruct **S21,
CagdSrfStruct **S22)
CagdSrfStruct *BzrSrfFactorUMinusV(const CagdSrfStruct *Srf)
CagdSrfStruct *BzrSrfMult(const CagdSrfStruct *CSrf1,
const CagdSrfStruct *CSrf2)
CagdSrfStruct *BzrSrfSubdivAtCurve(const CagdSrfStruct *Srf,
const CagdCrvStruct *DivCrv)
CagdSrfStruct *Symb2DCrvParamerize2Prms(const CagdCrvStruct *Crv,
CagdRType T1,
CagdRType T2,
int Dir,
CagdRType *Error)
CagdSrfStruct *Symb2DCrvParameterizeDomain(const CagdCrvStruct *UVCrv,
CagdRType Eps)
CagdSrfStruct *Symb2DCrvParameterizing2Crvs(const CagdCrvStruct *Crv1,
const CagdCrvStruct *Crv2,
int Dir,
CagdBType ForceMatch)
CagdSrfStruct *Symb2DSrfJacobian(const CagdSrfStruct *Srf)
CagdCrvStruct *SymbAdapIsoExtract(SymbAdapIsoGenInfoStruct *GI,
const CagdSrfStruct *Srf,
const CagdSrfStruct *NSrf,
SymbAdapIsoDistSqrFuncType AdapIsoDistFunc,
CagdSrfDirType Dir,
CagdRType Eps,
CagdBType FullIso,
CagdBType SinglePath)
void SymbAdapIsoExtractFree(SymbAdapIsoGenInfoStruct *GI)
SymbAdapIsoGenInfoStruct *SymbAdapIsoExtractInit(void)
IPObjectStruct *SymbAdapIsoExtractRectRgns(SymbAdapIsoGenInfoStruct *GI,
const CagdSrfStruct *Srf,
CagdSrfDirType Dir,
CagdRType Size,
int Smoothing,
int OutputType)
int SymbAdapIsoSetExtractMinLevel(SymbAdapIsoGenInfoStruct *GI, int MinLevel)
void SymbAdapIsoSetWeightPt(SymbAdapIsoGenInfoStruct *GI,
CagdRType *Pt,
CagdRType Scale,
CagdRType Width)
CagdCrvStruct *SymbAdapIsoSkewDistSqr(int Level,
CagdCrvStruct *Crv1,
CagdCrvStruct *NCrv1,
CagdCrvStruct *Crv2,
CagdCrvStruct *NCrv2)
CagdSrfStruct *SymbAlgebraicProdSrf(const CagdCrvStruct *Crv1,
const CagdCrvStruct *Crv2)
CagdSrfStruct *SymbAlgebraicSumSrf(const CagdCrvStruct *Crv1,
const CagdCrvStruct *Crv2)
CagdSrfStruct *SymbAllPrisaSrfs(const CagdSrfStruct *Srfs,
int SamplesPerCurve,
CagdRType Epsilon,
CagdSrfDirType Dir,
const CagdVType Space)
CagdCrvStruct *SymbApproxCrvAsBzrCubics(const CagdCrvStruct *Crv,
CagdRType Tol,
CagdRType MaxLen)
CagdCrvStruct *SymbApproxCrvAsBzrQuadratics(const CagdCrvStruct *CCrv,
CagdRType Tol,
CagdRType MaxLen)
void SymbArcArrayFree(SymbArcStruct *ArcArray, int Size)
SymbArcStruct *SymbArcArrayNew(int Size)
SymbArcStruct *SymbArcCopy(SymbArcStruct *Arc)
SymbArcStruct *SymbArcCopyList(SymbArcStruct *ArcList)
void SymbArcFree(SymbArcStruct *Arc)
void SymbArcFreeList(SymbArcStruct *ArcList)
SymbArcStruct *SymbArcNew(int Arc)
CagdCrvStruct *SymbArcs2Crvs(const SymbArcStruct *Arcs)
CagdRType SymbBspBasisInnerProd(int Index1, int Index2,
CagdCrvStruct *InnerProdCrv1,
CagdCrvStruct *InnerProdCrv2)
CagdRType SymbBspBasisInnerProd2(const CagdRType *KV,
int Len,
int Order1,
int Order2,
int Index1,
int Index2)
CagdRType **SymbBspBasisInnerProdMat(const CagdRType *KV,
int Len,
int Order1,
int Order2)
void SymbBspBasisInnerProdPrep(const CagdRType *KV,
int Len,
int Order1,
int Order2,
CagdCrvStruct **InnerProdCrv1,
CagdCrvStruct **InnerProdCrv2)
void SymbBspBasisInnerProdPrep2(const CagdRType *KV1,
const CagdRType *KV2,
int Len1,
int Len2,
int Order1,
int Order2,
CagdCrvStruct **InnerProdCrv1,
CagdCrvStruct **InnerProdCrv2)
CagdCrvStruct *SymbBzrDegReduce(const CagdCrvStruct *Crv, CagdRType Eps)
CagdCrvStruct *SymbCanonicBzrCrv(const CagdCrvStruct *Crv, CagdRType Eps)
CagdPtStruct *SymbCircTanTo2Crvs(const CagdCrvStruct *Crv1,
const CagdCrvStruct *Crv2,
CagdRType Radius,
CagdRType Tol)
CagdCrvStruct *SymbClipCrvToSrfDomain(const CagdSrfStruct *Srf,
const CagdCrvStruct *UVCrv)
CagdCrvStruct *SymbComposeCrvCrv(const CagdCrvStruct *Crv1,
const CagdCrvStruct *Crv2)
CagdCrvStruct *SymbComposePeriodicCrvCrv(const CagdCrvStruct *CCrv1,
const CagdCrvStruct *CCrv2,
CagdRType Epsilon)
CagdCrvStruct *SymbComposePeriodicSrfCrv(const CagdSrfStruct *Srf,
const CagdCrvStruct *Crv,
CagdRType Epsilon)
void SymbComposeSrfClrCache(const CagdSrfStruct *Srf)
CagdCrvStruct *SymbComposeSrfCrv(const CagdSrfStruct *Srf,
const CagdCrvStruct *Crv,
int EvalLinCrvsDirectly)
CagdCrvStruct *SymbComposeSrfCrv2(const CagdSrfStruct *Srf,
const CagdCrvStruct *Crv)
CagdSrfStruct *SymbComposeSrfPatch(const CagdSrfStruct *Srf,
const CagdUVType UV00,
const CagdUVType UV01,
const CagdUVType UV10,
const CagdUVType UV11)
int SymbComposeSrfSetCache(int Cache)
CagdSrfStruct *SymbComposeSrfSrf(const CagdSrfStruct *Srf1,
const CagdSrfStruct *Srf2)
IPObjectStruct *SymbComposeTileObjectInSrf(const IPObjectStruct *PTile,
const CagdSrfStruct *DeformSrf,
IrtRType UTimes,
IrtRType VTimes,
int FitObj)
CagdSrfStruct *SymbConeConeBisect(const CagdVType Cone1Dir,
CagdRType Cone1Angle,
const CagdVType Cone2Dir,
CagdRType Cone2Angle,
CagdRType Size)
CagdSrfStruct *SymbConeConeBisect2(const CagdVType Cone1Pos,
const CagdVType Cone1Dir,
CagdRType Cone1Angle,
const CagdVType Cone2Pos,
const CagdVType Cone2Dir,
CagdRType Cone2Angle)
CagdSrfStruct *SymbConeCylinBisect(const CagdVType Cone1Pos,
const CagdVType Cone1Dir,
CagdRType Cone1Angle,
const CagdVType Cyl2Pos,
const CagdVType Cyl2Dir,
CagdRType Cyl2Rad)
CagdSrfStruct *SymbConeLineBisect(const CagdVType ConeDir,
CagdRType ConeAngle,
const CagdVType LineDir,
CagdRType Size)
CagdSrfStruct *SymbConePlaneBisect(const CagdPType ConeApex,
const CagdVType ConeDir,
CagdRType ConeAngle,
CagdRType Size)
CagdSrfStruct *SymbConePointBisect(const CagdPType ConeApex,
const CagdVType ConeDir,
CagdRType ConeAngle,
const CagdPType Pt,
CagdRType Size)
CagdSrfStruct *SymbConeSphereBisect(const CagdPType ConeApex,
const CagdVType ConeDir,
CagdRType ConeAngle,
const CagdPType SprCntr,
CagdRType SprRad,
CagdRType Size)
CagdSrfStruct *SymbConicDistCrvCrv(const CagdCrvStruct *CCrv1,
const CagdCrvStruct *CCrv2,
CagdRType Dist)
CagdCrvStruct *SymbCrv2DCurvatureSign(const CagdCrvStruct *Crv)
CagdCrvStruct *SymbCrv2DCurvatureSqr(const CagdCrvStruct *Crv)
CagdPtStruct *SymbCrv2DInflectionPts(const CagdCrvStruct *Crv,
CagdRType Epsilon)
CagdCrvStruct *SymbCrv2DUnnormNormal(const CagdCrvStruct *Crv)
CagdPolylineStruct *SymbCrv2Polyline(const CagdCrvStruct *Crv,
CagdRType TolSamples,
SymbCrvApproxMethodType Method,
CagdBType OptiLin)
SymbCrv2PolylineTlrncErrorFuncType SymbCrv2PolylineSetTlrncErrorFunc(
SymbCrv2PolylineTlrncErrorFuncType ErrorFunc)
CagdCrvStruct *SymbCrv3DCurvatureNormal(const CagdCrvStruct *Crv)
CagdCrvStruct *SymbCrv3DCurvatureSqr(const CagdCrvStruct *Crv)
CagdCrvStruct *SymbCrv3DRadiusNormal(const CagdCrvStruct *Crv)
CagdCrvStruct *SymbCrvAdapOffset(const CagdCrvStruct *OrigCrv,
CagdRType OffsetDist,
CagdRType OffsetError,
SymbOffCrvFuncType OffsetAprxFunc,
CagdBType BezInterp)
CagdCrvStruct *SymbCrvAdapOffsetTrim(const CagdCrvStruct *OrigCrv,
CagdRType OffsetDist,
CagdRType OffsetError,
SymbOffCrvFuncType OffsetAprxFunc,
CagdBType BezInterp)
CagdCrvStruct *SymbCrvAdapVarOffset(const CagdCrvStruct *OrigCrv,
const CagdCrvStruct *VarOffsetDist,
CagdRType OffsetError,
SymbVarOffCrvFuncType VarOffsetAprxFunc,
CagdBType BezInterp)
CagdCrvStruct *SymbCrvAdd(const CagdCrvStruct *Crv1,
const CagdCrvStruct *Crv2)
CagdRType SymbCrvArcLen(const CagdCrvStruct *Crv, CagdRType Epsilon)
CagdRType SymbCrvArcLen2(const CagdCrvStruct *Crv, CagdRType Epsilon)
CagdCrvStruct *SymbCrvArcLenCrv(const CagdCrvStruct *Crv,
CagdRType Fineness,
int Order)
CagdCrvStruct *SymbCrvArcLenSclrCrv(const CagdCrvStruct *Crv,
CagdRType Epsilon)
CagdPtStruct *SymbCrvArcLenSteps(const CagdCrvStruct *Crv,
CagdRType Length,
CagdRType Epsilon)
SymbArcStruct *SymbCrvBiArcApprox(const CagdCrvStruct *Crv,
CagdRType Tolerance,
CagdRType MaxAngle)
SymbArcStruct *SymbCrvBiArcApproxC1(const CagdCrvStruct *CCrv,
CagdRType Tolerance,
CagdRType MaxAngle)
CagdCrvStruct *SymbCrvBisectors(const CagdCrvStruct *Crv,
int BisectFunc,
CagdRType SubdivTol,
CagdBType NumerImprove,
CagdBType SameNormal,
CagdBType SupportPrms)
CagdSrfStruct *SymbCrvBisectorsSrf(const CagdCrvStruct *Crv, int BisectFunc)
CagdSrfStruct *SymbCrvBisectorsSrf2(const CagdCrvStruct *Crv)
CagdSrfStruct *SymbCrvBisectorsSrf3(const CagdCrvStruct *Crv)
CagdCrvStruct *SymbCrvCnvxHull(const CagdCrvStruct *Crv, CagdRType SubdivTol)
CagdPtStruct *SymbCrvConstSet(const CagdCrvStruct *Crv,
int Axis,
CagdRType Epsilon,
CagdRType ConstVal,
CagdBType NoSolsOnEndPts)
CagdCrvStruct *SymbCrvCrossProd(const CagdCrvStruct *CCrv1,
const CagdCrvStruct *CCrv2)
CagdSrfStruct *SymbCrvCrvBisectOnSphere(const CagdCrvStruct *CCrv1,
const CagdCrvStruct *CCrv2)
CagdCrvStruct *SymbCrvCrvBisectOnSphere2(const CagdCrvStruct *Crv1,
const CagdCrvStruct *Crv2,
CagdRType SubdivTol)
CagdSrfStruct *SymbCrvCrvBisectOnSphere3(const CagdCrvStruct *CCrv1,
const CagdCrvStruct *CCrv2)
CagdSrfStruct *SymbCrvCrvBisectorSrf3D(const CagdCrvStruct *CCrv1,
const CagdCrvStruct *CCrv2,
CagdRType Alpha)
CagdCrvStruct *SymbCrvCrvConvolution(CagdCrvStruct *Crv1,
CagdCrvStruct *Crv2,
CagdRType OffsetDist,
CagdRType Tolerance)
CagdPtStruct *SymbCrvCrvInter(const CagdCrvStruct *Crv1,
const CagdCrvStruct *Crv2,
CagdRType CCIEpsilon,
CagdBType SelfInter)
CagdCrvStruct *SymbCrvCrvtrTrim(const CagdCrvStruct *Crv,
CagdRType Dist,
CagdRType Eps)
CagdCrvStruct *SymbCrvCubicApprox(const CagdCrvStruct *Crv,
CagdRType Tolerance)
CagdCrvStruct *SymbCrvDeriveRational(const CagdCrvStruct *Crv)
CagdCrvStruct *SymbCrvDeterminant2(const CagdCrvStruct *Crv11,
const CagdCrvStruct *Crv12,
const CagdCrvStruct *Crv21,
const CagdCrvStruct *Crv22)
CagdCrvStruct *SymbCrvDeterminant3(const CagdCrvStruct *Crv11,
const CagdCrvStruct *Crv12,
const CagdCrvStruct *Crv13,
const CagdCrvStruct *Crv21,
const CagdCrvStruct *Crv22,
const CagdCrvStruct *Crv23,
const CagdCrvStruct *Crv31,
const CagdCrvStruct *Crv32,
const CagdCrvStruct *Crv33)
IPPolygonStruct *SymbCrvDiameter(const CagdCrvStruct *Crv,
CagdRType SubdivTol)
CagdRType *SymbCrvDiameterMinMaxMalloc(const CagdCrvStruct *Crv,
IPPolygonStruct *Cntrs,
int Min)
CagdRType *SymbCrvDiameterMinMaxToData(const CagdCrvStruct *Crv,
IPPolygonStruct *Cntrs,
int Min,
CagdRType *Params)
CagdCrvStruct *SymbCrvDotProd(const CagdCrvStruct *Crv1,
const CagdCrvStruct *Crv2)
CagdCrvStruct *SymbCrvDual(const CagdCrvStruct *Crv)
CagdCrvStruct *SymbCrvEnclosedArea(const CagdCrvStruct *Crv)
CagdRType SymbCrvEnclosedAreaEval(const CagdCrvStruct *Crv)
CagdPtStruct *SymbCrvExtremCrvtrPts(const CagdCrvStruct *Crv,
CagdRType Epsilon,
CagdBType Crv2D)
CagdPtStruct *SymbCrvExtremCrvtrPts2(const CagdCrvStruct *Crv,
CagdRType Epsilon,
CagdBType Crv2D)
CagdPtStruct *SymbCrvExtremSet(const CagdCrvStruct *Crv,
int Axis,
CagdRType Epsilon,
CagdBType NoSolsOnEndPts)
CagdCrvStruct *SymbCrvGenSignedCrvtr(const CagdCrvStruct *CCrv,
int Samples,
int Order,
int ArcLen)
CagdCrvStruct *SymbCrvInvert(const CagdCrvStruct *Crv)
CagdCrvStruct *SymbCrvLeastSquarOffset(const CagdCrvStruct *Crv,
CagdRType OffsetDist,
int NumOfSamples,
int NumOfDOF,
int Order,
CagdRType *Tolerance)
CagdCrvStruct *SymbCrvListCnvxHull(CagdCrvStruct *Crvs, CagdRType SubdivTol)
CagdCrvStruct *SymbCrvLstSqrAprxPlln(const CagdCtlPtStruct *Polyline,
CagdRType ExpectedError,
int Order,
CagdRType NumericTol,
CagdBType ForceC1Continuity,
CagdRType C1DiscontThresh,
SymbCrvLSErrorMeasureType ErrMeasure)
CagdCrvStruct *SymbCrvMatchingOffset(CagdCrvStruct *Crv,
CagdRType OffsetDist,
CagdRType Tolerance)
CagdCrvStruct *SymbCrvMergeScalar(const CagdCrvStruct *CrvW,
const CagdCrvStruct *CrvX,
const CagdCrvStruct *CrvY,
const CagdCrvStruct *CrvZ)
CagdCrvStruct *SymbCrvMergeScalarN(CagdCrvStruct * const *CrvVec,
int NumCrvs)
int SymbCrvMonotoneCtlPt(const CagdCrvStruct *Crv, int Axis)
CagdCrvStruct *SymbCrvMult(const CagdCrvStruct *Crv1,
const CagdCrvStruct *Crv2)
CagdCrvStruct *SymbCrvMultScalar(const CagdCrvStruct *Crv1,
const CagdCrvStruct *Crv2)
CagdCrvStruct *SymbCrvMultiResBWavelet(CagdRType *KV,
int Order,
int Len,
int KnotIndex)
CagdCrvStruct *SymbCrvMultiResCompos(const SymbMultiResCrvStruct *MRCrv)
CagdCrvStruct *SymbCrvMultiResComposAtT(const SymbMultiResCrvStruct *MRCrv,
CagdRType T)
SymbMultiResCrvStruct *SymbCrvMultiResCopy(const SymbMultiResCrvStruct
*MRCrvOrig)
SymbMultiResCrvStruct *SymbCrvMultiResDecomp(const CagdCrvStruct *Crv,
CagdBType Discont)
SymbMultiResCrvStruct *SymbCrvMultiResDecomp2(const CagdCrvStruct *Crv,
CagdBType Discont,
CagdBType SameSpace)
void SymbCrvMultiResEdit(const SymbMultiResCrvStruct *MRCrv,
CagdRType t,
const CagdVType TransDir,
CagdRType Level,
CagdRType FracLevel)
void SymbCrvMultiResFree(SymbMultiResCrvStruct *MRCrv)
CagdBType SymbCrvMultiResKVBuild(const CagdCrvStruct *Crv,
CagdBType Discont,
CagdRType ***KVList,
int **KVListSizes,
int *KVListSize)
SymbMultiResCrvStruct *SymbCrvMultiResNew(int Levels, CagdBType Periodic)
CagdRType *SymbCrvMultiResRefineLevelMalloc(SymbMultiResCrvStruct *MRCrv,
CagdRType T,
CagdBType SpanDiscont)
CagdRType *SymbCrvMultiResRefineLevelToData(SymbMultiResCrvStruct *MRCrv,
CagdRType T,
CagdBType SpanDiscont,
CagdRType *Domain)
CagdCrvStruct *SymbCrvOffset(const CagdCrvStruct *CCrv,
CagdRType OffsetDist,
CagdBType BezInterp)
CagdCrvStruct *SymbCrvOffset2CrvsJoint(CagdCrvStruct *OrigCrv1,
CagdCrvStruct *OrigCrv2,
CagdCrvStruct **OffCrv1,
CagdCrvStruct **OffCrv2)
CagdCrvStruct *SymbCrvOrthotomic(const CagdCrvStruct *Crv,
const CagdPType P,
CagdRType K)
int SymbCrvPointInclusion(const CagdCrvStruct *CCrv,
const CagdPType Pt,
CagdRType Epsilon)
CagdBType SymbCrvPosNegWeights(const CagdCrvStruct *Crv)
CagdCrvStruct *SymbCrvPtBisectorCrv2D(const CagdCrvStruct *CCrv,
const CagdPType Pt,
CagdRType Alpha)
CagdSrfStruct *SymbCrvPtBisectorSrf3D(const CagdCrvStruct *CCrv,
const CagdPType Pt,
CagdRType RulingScale)
CagdPtStruct *SymbCrvPtTangents(const CagdCrvStruct *CCrv,
const CagdPType Pt,
CagdRType Tolerance)
CagdPtStruct *SymbCrvRayInter(const CagdCrvStruct *Crv,
const CagdPType RayPt,
const CagdVType RayDir,
CagdRType Epsilon)
CagdCrvStruct *SymbCrvRtnlMult(const CagdCrvStruct *Crv1X,
const CagdCrvStruct *Crv1W,
const CagdCrvStruct *Crv2X,
const CagdCrvStruct *Crv2W,
CagdBType OperationAdd)
CagdCrvStruct *SymbCrvScalarScale(const CagdCrvStruct *Crv, CagdRType Scale)
CagdCrvStruct *SymbCrvSliceCrvsByPrllLines(const CagdCrvStruct *Crvs,
int Axis,
CagdRType Epsilon,
CagdVType Range)
CagdCrvStruct *SymbCrvSplitPoleParams(const CagdCrvStruct *CCrv,
CagdRType Eps,
CagdRType OutReach)
void SymbCrvSplitScalar(const CagdCrvStruct *Crv,
CagdCrvStruct **CrvW,
CagdCrvStruct **CrvX,
CagdCrvStruct **CrvY,
CagdCrvStruct **CrvZ)
void SymbCrvSplitScalarN(const CagdCrvStruct *Crv, CagdCrvStruct **Crvs)
CagdCrvStruct *SymbCrvSqrtScalar(const CagdCrvStruct *OrigCrv,
CagdRType Epsilon)
CagdCrvStruct *SymbCrvSub(const CagdCrvStruct *Crv1, const CagdCrvStruct *Crv2)
CagdCrvStruct *SymbCrvSubdivOffset(const CagdCrvStruct *CCrv,
CagdRType OffsetDist,
CagdRType Tolerance,
CagdBType BezInterp)
CagdCrvStruct *SymbCrvTrimGlblOffsetSelfInter(const CagdCrvStruct *Crv,
const CagdCrvStruct *OffCrv,
CagdRType SubdivTol,
CagdRType TrimAmount,
CagdRType NumerTol)
CagdCrvStruct *SymbCrvUnitLenCtlPts(const CagdCrvStruct *CCrv)
CagdCrvStruct *SymbCrvUnitLenScalar(const CagdCrvStruct *OrigCrv,
CagdBType Mult,
CagdRType Epsilon)
CagdCrvStruct *SymbCrvVarOffset(const CagdCrvStruct *CCrv,
const CagdCrvStruct *VarOffsetDist,
CagdBType BezInterp)
CagdCrvStruct *SymbCrvVecCrossProd(const CagdCrvStruct *Crv,
const CagdVType Vec)
CagdCrvStruct *SymbCrvVecDotProd(const CagdCrvStruct *Crv,
const CagdRType *Vec)
CagdPtStruct *SymbCrvZeroSet(const CagdCrvStruct *Crv,
int Axis,
CagdRType Epsilon,
CagdBType NoSolsOnEndPts)
SymbCrvRelType SymbCrvsCompare(const CagdCrvStruct *Crv1,
const CagdCrvStruct *Crv2,
CagdRType Eps,
CagdRType *StartOvrlpPrmCrv1,
CagdRType *EndOvrlpPrmCrv1,
CagdRType *StartOvrlpPrmCrv2,
CagdRType *EndOvrlpPrmCrv2)
CagdCrvStruct *SymbCrvsLowerEnvelop(const CagdCrvStruct *CCrvs,
CagdRType *Pt,
CagdRType Eps)
CagdCrvStruct *SymbCrvsSplitPoleParams(const CagdCrvStruct *Crvs,
CagdRType Eps,
CagdRType OutReach)
CagdBType SymbCubicBspInjective(CagdRType x[4][4], CagdRType y[4][4])
CagdSrfStruct *SymbCylinCylinBisect(const CagdVType Cyl1Pos,
const CagdVType Cyl1Dir,
CagdRType Cyl1Rad,
const CagdVType Cyl2Pos,
const CagdVType Cyl2Dir,
CagdRType Cyl2Rad)
CagdSrfStruct *SymbCylinPlaneBisect(const CagdPType CylPt,
const CagdVType CylDir,
CagdRType CylRad,
CagdRType Size)
CagdSrfStruct *SymbCylinPointBisect(const CagdPType CylPt,
const CagdVType CylDir,
CagdRType CylRad,
const CagdPType Pt,
CagdRType Size)
CagdSrfStruct *SymbCylinSphereBisect(const CagdPType CylPt,
const CagdVType CylDir,
CagdRType CylRad,
const CagdPType SprCntr,
CagdRType SprRad,
CagdRType Size)
CagdCrvStruct *SymbDecomposeCrvCrv(CagdCrvStruct *Crv)
const char *SymbDescribeError(SymbFatalErrorType ErrorNum)
const SymbNormalConeStruct *SymbDirectionsConeAvgToData(
const CagdRType * const *Pts,
int NumPts,
CagdPointType PType,
SymbNormalConeStruct *NormalCone)
const SymbNormalConeStruct *SymbDirectionsConeOptToData(
const CagdRType * const *Pts,
int NumPts,
CagdPointType PType,
SymbNormalConeStruct *NormalCone)
const SymbNormalConeStruct *SymbDirectionsConeToData(
const CagdRType * const *Pts,
int NumPts,
CagdPointType PType,
SymbNormalConeStruct *NormalCone)
CagdRType SymbDistBuildMapToCrv(const CagdCrvStruct *Crv,
CagdRType Tolerance,
CagdRType *XDomain,
CagdRType *YDomain,
CagdRType **DiscMap,
CagdRType DiscMapXSize,
CagdRType DiscMapYSize)
CagdRType SymbDistCrvLine(const CagdCrvStruct *Crv,
const CagdLType Line,
CagdBType MinDist,
CagdRType Epsilon)
CagdRType SymbDistCrvPoint(const CagdCrvStruct *Crv,
void *CrvPtPrepHandle,
const CagdRType *Pt,
CagdBType MinDist,
CagdRType Epsilon,
CagdPointType DistSpace)
void SymbDistCrvPointFree(void *CrvPtPrepHandle)
void *SymbDistCrvPointPrep(const CagdCrvStruct *CCrv)
IrtRType *SymbDistPoint1DWithEnergy(int N,
IrtRType XMin,
IrtRType XMax,
CagdCrvStruct *CrvtrCrv,
CagdCrvStruct *Deriv1MagSqrCrv,
int Resolution,
SymbDistEnergy1DFuncType EnergyFunc)
CagdSrfStruct *SymbEnvOffsetFromCrv(const CagdCrvStruct *Crv,
CagdRType Height,
CagdRType Tolerance)
void SymbEvalCrvCurvPrep(const CagdCrvStruct *Crv, CagdBType Init)
void SymbEvalCrvCurvTN(CagdVType Nrml,
CagdVType Tan,
CagdVType BiNrml,
int Normalize)
CagdBType SymbEvalCrvCurvature(const CagdCrvStruct *Crv, CagdRType t,
CagdRType *k,
CagdVType Tan,
CagdVType BiNrml)
int SymbEvalSrfAsympDir(const CagdSrfStruct *Srf,
CagdRType U,
CagdRType V,
CagdBType DirInUV,
CagdVType AsympDir1,
CagdVType AsympDir2)
void SymbEvalSrfCurvPrep(const CagdSrfStruct *Srf, CagdBType Init)
CagdBType SymbEvalSrfCurvature(const CagdSrfStruct *Srf,
CagdRType U,
CagdRType V,
CagdBType DirInUV,
CagdRType *K1,
CagdRType *K2,
CagdVType D1,
CagdVType D2)
CagdRType *SymbExtremumCntPtValsMalloc(CagdRType * const *Points,
int Length,
CagdBType FindMinimum)
CagdRType *SymbExtremumCntPtValsToData(CagdRType * const *Points,
int Length,
CagdBType FindMinimum,
CagdRType *Extremum)
void SymbFatalError(SymbFatalErrorType ErrID)
int SymbGet2CrvsInterDAreaDCtlPts(CagdCrvStruct *Crv1,
CagdCrvStruct *Crv2,
CagdRType Eps,
CagdRType **InterDomains,
CagdRType **dAreadPts)
CagdRType SymbGet2CrvsIntersectionAreas(const CagdCrvStruct *Crv1,
const CagdCrvStruct *Crv2,
CagdRType Eps)
CagdCrvStruct *SymbGet2CrvsIntersectionRegions(const CagdCrvStruct *Crv1,
const CagdCrvStruct *Crv2,
CagdRType Eps)
CagdRType *SymbGetCrvSubRegionAlphaMatrix(const CagdCrvStruct *Crv,
CagdRType t1,
CagdRType t2,
int *Dim)
CagdRType SymbHausDistBySamplesCrvCrv(const CagdCrvStruct *Crv1,
const CagdCrvStruct *Crv2,
int Samples,
int HDistSide)
CagdRType SymbHausDistBySamplesCrvSrf(const CagdCrvStruct *Crv1,
const CagdSrfStruct *Srf2,
int Samples,
int HDistSide)
CagdRType SymbHausDistBySamplesSrfSrf(const CagdSrfStruct *Srf1,
const CagdSrfStruct *Srf2,
int Samples,
int HDistSide)
CagdRType SymbHausDistOfSamplefPts(CagdPType * const V1,
CagdPType * const V2,
int V1Size,
int V2Size,
int HDistSide)
void SymbHighlightLnFree(CagdSrfStruct *Srf)
CagdSrfStruct *SymbHighlightLnGen(CagdSrfStruct *Srf,
const CagdPType LnPt,
const CagdVType LnDir)
void SymbHighlightLnPrepSrf(CagdSrfStruct *Srf, const CagdVType LnDir)
CagdPtStruct *SymbHugeCrv2Polyline(const CagdCrvStruct *Crv,
int Samples,
CagdBType AddFirstPt,
CagdBType AddLastPt,
CagdBType AddParamVals)
CagdPtStruct *SymbInsertNewParam2(CagdPtStruct *PtList, CagdRType t)
CagdBType SymbIsCircularCrv(const CagdCrvStruct *Crv,
CagdPType Center,
CagdRType *Radius,
CagdRType Eps)
CagdBType SymbIsConstCrv(const CagdCrvStruct *CCrv,
CagdCtlPtStruct *ConstVal,
CagdRType Eps)
CagdBType SymbIsConstSrf(const CagdSrfStruct *CSrf,
CagdCtlPtStruct *ConstVal,
CagdRType Eps)
CagdBType SymbIsDevelopSrf(const CagdSrfStruct *Srf, CagdRType Eps)
int SymbIsExtrusionSrf(const CagdSrfStruct *Srf,
CagdCrvStruct **Crv,
CagdVType ExtDir,
CagdRType Eps)
CagdBType SymbIsLineCrv(const CagdCrvStruct *Crv,
CagdPType LnPos,
CagdVType LnDir,
CagdRType Eps)
CagdBType SymbIsOffsetLclSelfInters(CagdCrvStruct *Crv,
CagdCrvStruct *OffCrv,
CagdPtStruct **SIDmns)
CagdBType SymbIsPlanarSrf(const CagdSrfStruct *Srf,
IrtPlnType Plane,
CagdRType Eps)
int SymbIsRuledSrf(const CagdSrfStruct *Srf,
CagdCrvStruct **Crv1,
CagdCrvStruct **Crv2,
CagdRType Eps)
CagdBType SymbIsSphericalSrf(const CagdSrfStruct *Srf,
CagdPType Center,
CagdRType *Radius,
CagdRType Eps)
CagdBType SymbIsSrfOfRevSrf(const CagdSrfStruct *Srf,
CagdCrvStruct **CrossSec,
CagdPType AxisPos,
CagdVType AxisDir,
CagdRType Eps)
CagdBType SymbIsZeroCrv(const CagdCrvStruct *Crv, CagdRType Eps)
CagdBType SymbIsZeroSrf(const CagdSrfStruct *Srf, CagdRType Eps)
CagdPtStruct *SymbLclDistCrvLine(const CagdCrvStruct *Crv,
const CagdLType Line,
CagdRType Epsilon,
CagdBType InterPos,
CagdBType ExtremPos)
CagdPtStruct *SymbLclDistCrvPoint(const CagdCrvStruct *CCrv,
void *CrvPtPrepHandle,
const CagdRType *Pt,
CagdRType Epsilon)
CagdCrvStruct *SymbMakePosCrvCtlPolyPos(const CagdCrvStruct *OrigCrv)
CagdCrvStruct *SymbMapUVCrv2E3(const CagdCrvStruct *Crv,
const CagdSrfStruct *Srf,
CagdBType Compose)
void SymbMeshAddSub(CagdRType **DestPoints,
CagdRType * const *Points1,
CagdRType * const *Points2,
CagdPointType PType,
int Size,
CagdBType OperationAdd)
void SymbMeshAddSubTo(CagdRType **DestPoints,
CagdRType * const *Points2,
CagdPointType PType,
int Size,
CagdBType OperationAdd)
CagdBType SymbNormal2ConesForSrf(const CagdSrfStruct *Srf,
CagdRType ExpandingFactor,
SymbNormalConeStruct *Cone1,
SymbNormalConeStruct *Cone2)
const SymbNormalConeStruct *SymbNormalConeForSrfAvgToData(const CagdSrfStruct
*Srf,
SymbNormalConeStruct
*NormalCone)
int SymbNormalConeForSrfDoOptimal(int Optimal)
const SymbNormalConeStruct *SymbNormalConeForSrfMainAxisToData(
const CagdSrfStruct *Srf,
CagdVType MainAxis,
SymbNormalConeStruct *Cone)
const SymbNormalConeStruct *SymbNormalConeForSrfOptToData(const CagdSrfStruct
*Srf,
SymbNormalConeStruct
*NormalCone)
const SymbNormalConeStruct *SymbNormalConeForSrfToData(const CagdSrfStruct
*Srf,
SymbNormalConeStruct
*NormalCone)
CagdBType SymbNormalConeOverlap(const SymbNormalConeStruct *NormalCone1,
const SymbNormalConeStruct *NormalCone2)
SymbNormalConeStruct *SymbNormalConvexHullConeForSrf(const CagdSrfStruct *Srf,
CagdRType ***CH,
int *NPts)
CagdBType SymbNormalConvexHullConeOverlap(const SymbNormalConeStruct
*NormalCone1,
const CagdRType **CH1,
int NPts1,
const SymbNormalConeStruct
*NormalCone2,
const CagdRType **CH2,
int NPts2)
CagdSrfStruct *SymbOrthoNetSrf(const CagdCrvStruct *Crv1,
const CagdCrvStruct *Crv2,
int FrontSamples,
int LayerSamples)
CagdSrfStruct *SymbPiecewiseRuledSrfApprox(const CagdSrfStruct *CSrf,
CagdBType ConsistentDir,
CagdRType Epsilon,
CagdSrfDirType Dir)
CagdSrfStruct *SymbPlaneLineBisect(const CagdVType LineDir, CagdRType Size)
CagdSrfStruct *SymbPlanePointBisect(const CagdPType Pt, CagdRType Size)
CagdCrvStruct *SymbPrisaGetCrossSections(const CagdSrfStruct *RSrfs,
CagdSrfDirType Dir,
const CagdVType Space)
CagdCrvStruct *SymbPrisaGetOneCrossSection(const CagdSrfStruct *RSrf,
CagdSrfDirType Dir,
CagdBType Starting,
CagdBType Ending)
CagdSrfStruct *SymbPrisaRuledSrf(const CagdSrfStruct *Srf,
int SamplesPerCurve,
CagdRType Space,
CagdVType Offset)
CagdCrvStruct *SymbPrmtSclrCrvTo2D(const CagdCrvStruct *Crv,
CagdRType Min,
CagdRType Max)
CagdSrfStruct *SymbPrmtSclrSrfTo3D(const CagdSrfStruct *Srf,
CagdRType UMin,
CagdRType UMax,
CagdRType VMin,
CagdRType VMax)
CagdCrvStruct *SymbPtCrvBisectOnSphere(const CagdPType Pt,
const CagdCrvStruct *CCrv)
CagdCrvStruct *SymbPtCrvBisectOnSphere2(const CagdPType Pt,
const CagdCrvStruct *CCrv,
CagdRType SubdivTol)
void SymbRflctCircFree(CagdSrfStruct *Srf)
CagdSrfStruct *SymbRflctCircGen(CagdSrfStruct *Srf,
const CagdVType ViewDir,
const CagdPType SprCntr,
CagdRType ConeAngle)
void SymbRflctCircPrepSrf(CagdSrfStruct *Srf,
const CagdVType ViewDir,
const CagdPType SprCntr)
void SymbRflctLnFree(CagdSrfStruct *Srf)
CagdSrfStruct *SymbRflctLnGen(CagdSrfStruct *Srf,
const CagdVType ViewDir,
const CagdPType LnPt,
const CagdVType LnDir)
void SymbRflctLnPrepSrf(CagdSrfStruct *Srf,
const CagdVType ViewDir,
const CagdVType LnDir)
CagdCrvStruct *SymbRingRingIntersection(CagdCrvStruct *C1,
CagdCrvStruct *r1,
CagdCrvStruct *C2,
CagdCrvStruct *r2,
CagdRType SubdivTol,
CagdCrvStruct **PCrvs1,
CagdCrvStruct **PCrvs2)
CagdSrfStruct *SymbRingRingZeroSetFunc(CagdCrvStruct *C1,
CagdCrvStruct *r1,
CagdCrvStruct *C2,
CagdCrvStruct *r2)
CagdCrvStruct *SymbRmKntBspCrvCleanKnots(const CagdCrvStruct *Crv)
CagdCrvStruct *SymbRmKntBspCrvRemoveKnots(const CagdCrvStruct *CCrv,
CagdRType Tolerance)
CagdSrfStruct *SymbRmKntBspSrfCleanKnots(const CagdSrfStruct *Srf)
CagdSrfStruct *SymbRmKntBspSrfRemoveKnots(const CagdSrfStruct *CSrf,
CagdRType Tolerance)
CagdSrfStruct *SymbRmKntBspSrfRemoveKnotsDir(const CagdSrfStruct *CSrf,
CagdSrfDirType Dir,
CagdRType Tolerance)
CagdCrvStruct *SymbRuledRuledIntersection(CagdCrvStruct *C1,
CagdCrvStruct *C2,
CagdCrvStruct *D1,
CagdCrvStruct *D2,
CagdRType SubdivTol,
CagdCrvStruct **PCrvs1,
CagdCrvStruct **PCrvs2)
CagdSrfStruct *SymbRuledRuledZeroSetFunc(CagdCrvStruct *C1,
CagdCrvStruct *C2,
CagdCrvStruct *D1,
CagdCrvStruct *D2)
CagdCrvStruct *SymbRuledSelfIntersection(CagdCrvStruct *C1,
CagdCrvStruct *C2,
CagdRType SubdivTol,
CagdCrvStruct **PCrvs1,
CagdCrvStruct **PCrvs2)
CagdPtStruct *SymbScalarCrvLowDegZeroSet(CagdCrvStruct *Crv)
SymbSetErrorFuncType SymbSetFatalErrorFunc(SymbSetErrorFuncType ErrorFunc)
CagdSrfStruct *SymbShapeBlendOnSrf(CagdSrfStruct *Srf,
CagdCrvStruct *UVCrv,
const CagdCrvStruct *CrossSecShape,
CagdRType TanScale,
CagdRType Width,
const CagdCrvStruct *WidthField,
CagdRType Height,
const CagdCrvStruct *HeightField)
CagdSrfStruct *SymbShapeBlendSrf(const CagdCrvStruct *Pos1Crv,
const CagdCrvStruct *Pos2Crv,
const CagdCrvStruct *CDir1Crv,
const CagdCrvStruct *CDir2Crv,
const CagdCrvStruct *CrossSecShape,
const CagdCrvStruct *Normal)
CagdCrvStruct *SymbSignedCrvtrGenCrv(const CagdCrvStruct *Crvtr,
CagdRType Tol,
int Order,
CagdBType Periodic)
CagdSrfStruct *SymbSphereLineBisect(const CagdPType SprCntr,
CagdRType SprRad,
CagdRType Size)
CagdSrfStruct *SymbSpherePlaneBisect(const CagdPType SprCntr,
CagdRType SprRad,
CagdRType Size)
CagdSrfStruct *SymbSpherePointBisect(const CagdPType SprCntr,
CagdRType SprRad,
const CagdPType Pt)
CagdSrfStruct *SymbSphereSphereBisect(const CagdVType SprCntr1,
CagdRType SprRad1,
const CagdVType SprCntr2,
CagdRType SprRad2)
CagdCrvStruct *SymbSplitCrvsAtExtremums(const CagdCrvStruct *CCrvs,
int Axis,
const CagdPType Pt,
CagdRType Eps)
CagdPtStruct *SymbSplitRationalCrvsPoles(const CagdCrvStruct *Crv,
CagdRType Epsilon)
CagdCrvStruct *SymbSrf2Curves(const CagdSrfStruct *Srf, int NumOfIsocurves[2])
IPPolygonStruct *SymbSrf2Polygons(const CagdSrfStruct *Srf,
int FineNess,
CagdBType ComputeNormals,
CagdBType FourPerFlat,
CagdBType ComputeUV)
CagdPolylineStruct *SymbSrf2Polylines(const CagdSrfStruct *Srf,
int NumOfIsocurves[2],
CagdRType TolSamples,
SymbCrvApproxMethodType Method)
CagdSrfStruct *SymbSrfAdd(const CagdSrfStruct *Srf1,
const CagdSrfStruct *Srf2)
int SymbSrfCalcAsympDirsCoeffs(const CagdSrfStruct *SffMatrix[3],
IrtRType *AsympLimits,
SymbSrfAsympBoundsMethod *ChosenMethod)
CagdSrfStruct *SymbSrfCloseParallelSrfs2Shell(const CagdSrfStruct *Srf1,
const CagdSrfStruct *Srf2)
CagdSrfStruct *SymbSrfCrossProd(const CagdSrfStruct *Srf1,
const CagdSrfStruct *Srf2)
void SymbSrfCrvtrBndsCalcBnds(const SymbSrfCrvtrBndsInfoStructPtr Info,
IrtRType *K1Limits,
IrtRType *K2Limits)
void SymbSrfCrvtrBndsCalcBnds2(const SymbSrfCrvtrBndsInfoStructPtr Info,
int Count,
IrtRType ValMin,
IrtRType ValMax,
IrtRType ValRes,
IrtRType *K1Limits,
IrtRType *K2Limits)
void SymbSrfCrvtrBndsInfoClear(SymbSrfCrvtrBndsInfoStruct *Info)
SymbSrfCrvtrBndsInfoStruct *SymbSrfCrvtrBndsInfoCreate(const CagdSrfStruct
*Srf)
void SymbSrfCrvtrBndsInfoFree(SymbSrfCrvtrBndsInfoStruct *Info)
void SymbSrfCrvtrBndsSplitInfo(const SymbSrfCrvtrBndsInfoStructPtr Info,
SymbSrfCrvtrBndsInfoStructPtr Ret,
CagdSrfDirType Dir)
SymbSrfCrvtrBndsInfoStructPtr SymbSrfCrvtrBndsSubInfo(
const SymbSrfCrvtrBndsInfoStructPtr Info,
IrtRType UMin,
IrtRType UMax,
IrtRType VMin,
IrtRType VMax)
CagdSrfStruct *SymbSrfCurvatureUpperBound(const CagdSrfStruct *Srf)
CagdSrfStruct *SymbSrfDeriveRational(const CagdSrfStruct *Srf,
CagdSrfDirType Dir)
CagdSrfStruct *SymbSrfDeterminant2(const CagdSrfStruct *Srf11,
const CagdSrfStruct *Srf12,
const CagdSrfStruct *Srf21,
const CagdSrfStruct *Srf22)
CagdSrfStruct *SymbSrfDeterminant3(const CagdSrfStruct *Srf11,
const CagdSrfStruct *Srf12,
const CagdSrfStruct *Srf13,
const CagdSrfStruct *Srf21,
const CagdSrfStruct *Srf22,
const CagdSrfStruct *Srf23,
const CagdSrfStruct *Srf31,
const CagdSrfStruct *Srf32,
const CagdSrfStruct *Srf33)
CagdSrfStruct *SymbSrfDevelopableCrvOnSrf(const CagdSrfStruct *Srf,
const CagdCrvStruct *Crv,
IrtRType Scale)
CagdSrfStruct *SymbSrfDevelopableSrfBetweenFrames(const CagdVType Frame1Pos,
const CagdVType Frame1Tan,
const CagdVType Frame1Nrml,
const CagdVType Frame2Pos,
const CagdVType Frame2Tan,
const CagdVType Frame2Nrml,
CagdRType OtherScale,
CagdRType Tension)
CagdSrfStruct *SymbSrfDevelopableSrfBetweenFrames2(const CagdVType Frame1Pos,
const CagdVType Frame1Tan,
const CagdVType Frame1Nrml,
const CagdVType Frame2Pos,
const CagdVType Frame2Tan,
const CagdVType Frame2Nrml,
CagdRType OtherScale,
CagdRType Tension,
int DOFs)
CagdSrfStruct *SymbSrfDistCrvCrv(const CagdCrvStruct *Crv1,
const CagdCrvStruct *Crv2,
int DistType)
CagdPtStruct *SymbSrfDistFindPoints(const CagdSrfStruct *CSrf,
CagdRType Epsilon,
CagdBType SelfInter)
CagdSrfStruct *SymbSrfDotProd(const CagdSrfStruct *Srf1,
const CagdSrfStruct *Srf2)
CagdSrfStruct *SymbSrfDual(const CagdSrfStruct *Srf)
void SymbSrfFff(const CagdSrfStruct *Srf,
CagdSrfStruct **DuSrf,
CagdSrfStruct **DvSrf,
CagdSrfStruct **FffG11,
CagdSrfStruct **FffG12,
CagdSrfStruct **FffG22)
CagdRType SymbSrfFirstMoment(const CagdSrfStruct *Srf, int Axis)
CagdSrfStruct *SymbSrfFirstMomentSrf(const CagdSrfStruct *Srf,
int Axis,
CagdBType Integrate)
CagdSrfStruct *SymbSrfGaussCurvature(const CagdSrfStruct *Srf,
CagdBType NumerOnly)
CagdSrfStruct *SymbSrfInvert(const CagdSrfStruct *Srf)
CagdSrfStruct *SymbSrfIsoDirNormalCurvatureBound(const CagdSrfStruct *Srf,
CagdSrfDirType Dir)
CagdSrfStruct *SymbSrfIsoFocalSrf(const CagdSrfStruct *Srf,
CagdSrfDirType Dir)
IPPolygonStruct *SymbSrfIsocline(const CagdSrfStruct *Srf,
const CagdVType VDir,
CagdRType Theta,
CagdRType SubdivTol,
CagdBType Euclidean)
CagdRType SymbSrfJacobianImprove(CagdSrfStruct *Srf,
CagdRType StepSize,
int MaxIter)
CagdSrfStruct *SymbSrfMeanCurvatureSqr(const CagdSrfStruct *Srf)
CagdSrfStruct *SymbSrfMeanEvolute(const CagdSrfStruct *Srf)
CagdSrfStruct *SymbSrfMeanNumer(const CagdSrfStruct *Srf)
CagdSrfStruct *SymbSrfMergeScalar(const CagdSrfStruct *SrfW,
const CagdSrfStruct *SrfX,
const CagdSrfStruct *SrfY,
const CagdSrfStruct *SrfZ)
CagdSrfStruct *SymbSrfMergeScalarN(CagdSrfStruct * const *SrfVec,
int NumSrfs)
CagdSrfStruct *SymbSrfMult(const CagdSrfStruct *Srf1,
const CagdSrfStruct *Srf2)
CagdSrfStruct *SymbSrfMultScalar(const CagdSrfStruct *Srf1,
const CagdSrfStruct *Srf2)
CagdSrfStruct *SymbSrfNormalSrf(const CagdSrfStruct *Srf)
CagdSrfStruct *SymbSrfNormalSrfReversed(const CagdSrfStruct *Srf)
CagdSrfStruct *SymbSrfOffset(const CagdSrfStruct *CSrf, CagdRType OffsetDist)
CagdSrfStruct *SymbSrfOrthotomic(const CagdSrfStruct *Srf,
const CagdPType P,
CagdRType K)
IPPolygonStruct *SymbSrfPolarSilhouette(const CagdSrfStruct *Srf,
const CagdVType VDir,
CagdRType SubdivTol,
CagdBType Euclidean)
CagdSrfStruct *SymbSrfPtBisectorSrf3D(const CagdSrfStruct *CSrf,
const CagdPType Pt)
CagdSrfStruct *SymbSrfRtnlMult(const CagdSrfStruct *Srf1X,
const CagdSrfStruct *Srf1W,
const CagdSrfStruct *Srf2X,
const CagdSrfStruct *Srf2W,
CagdBType OperationAdd)
CagdSrfStruct *SymbSrfScalarScale(const CagdSrfStruct *Srf, CagdRType Scale)
CagdRType SymbSrfSecondMoment(const CagdSrfStruct *Srf, int Axis1, int Axis2)
CagdSrfStruct *SymbSrfSecondMomentSrf(const CagdSrfStruct *Srf,
int Axis1,
int Axis2,
CagdBType Integrate)
void SymbSrfSff(const CagdSrfStruct *DuSrf,
const CagdSrfStruct *DvSrf,
CagdSrfStruct **SffL11,
CagdSrfStruct **SffL12,
CagdSrfStruct **SffL22,
CagdSrfStruct **SNormal)
IPPolygonStruct *SymbSrfSilhouette(const CagdSrfStruct *Srf,
const CagdVType VDir,
CagdRType SubdivTol,
CagdBType Euclidean)
void SymbSrfSmoothInternalCtlPts(CagdSrfStruct *Srf, CagdRType Weight)
void SymbSrfSplitScalar(const CagdSrfStruct *Srf,
CagdSrfStruct **SrfW,
CagdSrfStruct **SrfX,
CagdSrfStruct **SrfY,
CagdSrfStruct **SrfZ)
void SymbSrfSplitScalarN(const CagdSrfStruct *Srf,
CagdSrfStruct *Srfs[CAGD_MAX_PT_SIZE])
CagdSrfStruct *SymbSrfSub(const CagdSrfStruct *Srf1,
const CagdSrfStruct *Srf2)
CagdSrfStruct *SymbSrfSubdivOffset(const CagdSrfStruct *CSrf,
CagdRType OffsetDist,
CagdRType Tolerance)
void SymbSrfTff(const CagdSrfStruct *Srf,
CagdSrfStruct **TffL11,
CagdSrfStruct **TffL12,
CagdSrfStruct **TffL22)
CagdSrfStruct *SymbSrfVecCrossProd(const CagdSrfStruct *Srf,
const CagdVType Vec)
CagdSrfStruct *SymbSrfVecDotProd(const CagdSrfStruct *Srf,
const CagdVType Vec)
CagdRType SymbSrfVolume1(const CagdSrfStruct *Srf)
CagdSrfStruct *SymbSrfVolume1Srf(const CagdSrfStruct *Srf, CagdBType Integrate)
CagdRType SymbSrfVolume2(const CagdSrfStruct *Srf)
CagdSrfStruct *SymbSrfVolume2Srf(const CagdSrfStruct *Srf,
CagdBType Integrate)
CagdSrfStruct *SymbSwungAlgSumSrf(const CagdCrvStruct *Crv1,
const CagdCrvStruct *Crv2)
const SymbNormalConeStruct *SymbTangentConeForCrvMalloc(const CagdCrvStruct
*Crv,
CagdBType Planar)
const SymbNormalConeStruct *SymbTangentConeForCrvToData(const CagdCrvStruct
*Crv,
CagdBType Planar,
SymbNormalConeStruct
*TangentCone)
CagdPtStruct *SymbTangentToCrvAtTwoPts(const CagdCrvStruct *CCrv,
CagdRType SubdivTol)
CagdSrfStruct *SymbTorusPointBisect(const CagdVType TrsCntr,
const CagdVType TrsDir,
CagdRType TrsMajorRad,
CagdRType TrsMinorRad,
const CagdPType Pt)
CagdSrfStruct *SymbTorusSphereBisect(const CagdVType TrsCntr,
const CagdVType TrsDir,
CagdRType TrsMajorRad,
CagdRType TrsMinorRad,
const CagdVType SprCntr,
CagdRType SprRad)
CagdSrfStruct *SymbTorusTorusBisect(const CagdVType Trs1Cntr,
const CagdVType Trs1Dir,
CagdRType Trs1MajorRad,
const CagdVType Trs2Cntr,
const CagdVType Trs2Dir,
CagdRType Trs2MajorRad,
CagdRType Alpha)
CagdCrvStruct *SymbTwoCrvsMorphing(const CagdCrvStruct *Crv1,
const CagdCrvStruct *Crv2,
CagdRType Blend)
CagdCrvStruct *SymbTwoCrvsMorphingCornerCut(const CagdCrvStruct *Crv1,
const CagdCrvStruct *Crv2,
CagdRType MinDist,
CagdBType SameLength,
CagdBType FilterTangencies)
CagdCrvStruct *SymbTwoCrvsMorphingMultiRes(const CagdCrvStruct *Crv1,
const CagdCrvStruct *Crv2,
CagdRType BlendStep)
CagdSrfStruct *SymbTwoSrfsMorphing(const CagdSrfStruct *Srf1,
const CagdSrfStruct *Srf2,
CagdRType Blend)
CagdRType *SymbUniformAprxPtOnCrvDistrib(const CagdCrvStruct *Crv,
CagdBType ParamUniform,
int n)
CagdUVType *SymbUniformAprxPtOnSrfDistrib(
const CagdSrfStruct *Srf,
CagdBType ParamUniform,
int n,
SymbUniformAprxSrfPtImportanceFuncType EvalImportance)
CagdUVType *SymbUniformAprxPtOnSrfGetDistrib(const CagdSrfStruct *Srf,
CagdUVType *DistUV,
CagdRType *DistProb,
int DistSize,
int *n)
void SymbUniformAprxPtOnSrfPrepDistrib(const CagdSrfStruct *Srf,
CagdUVType **DistUV,
CagdRType **DistProb,
int *DistSize,
int n)