OCC.Core.BSplSLib module¶
BSplSLib module, see official documentation at https://www.opencascade.com/doc/occt-7.4.0/refman/html/package_bsplslib.html
-
class
BSplSLib_Cache
(*args)¶ Bases:
OCC.Core.Standard.Standard_Transient
- Constructor for caching of the span for the surface param theDegreeU degree along the first parameter (U) of the surface param thePeriodicU identify the surface is periodical along U axis param theFlatKnotsU knots of the surface (with repetition) along U axis param theDegreeV degree alogn the second parameter (V) of the surface param thePeriodicV identify the surface is periodical along V axis param theFlatKnotsV knots of the surface (with repetition) along V axis param theWeights array of weights of corresponding poles
- param theDegreeU
- type theDegreeU
int
- param thePeriodicU
- type thePeriodicU
bool
- param theFlatKnotsU
- type theFlatKnotsU
TColStd_Array1OfReal
- param theDegreeV
- type theDegreeV
int
- param thePeriodicV
- type thePeriodicV
bool
- param theFlatKnotsV
- type theFlatKnotsV
TColStd_Array1OfReal
- param theWeights
default value is NULL
- type theWeights
TColStd_Array2OfReal *
- rtype
None
-
BuildCache
()¶ - Recomputes the cache data. Does not verify validity of the cache param theParameterU the parametric value on the U axis to identify the span param theParameterV the parametric value on the V axis to identify the span param theDegreeU degree along U axis param thePeriodicU identify whether the surface is periodic along U axis param theFlatKnotsU flat knots of the surface along U axis param theDegreeV degree along V axis param thePeriodicV identify whether the surface is periodic along V axis param theFlatKnotsV flat knots of the surface along V axis param thePoles array of poles of the surface param theWeights array of weights of corresponding poles
- param theParameterU
- type theParameterU
float
- param theParameterV
- type theParameterV
float
- param theFlatKnotsU
- type theFlatKnotsU
TColStd_Array1OfReal
- param theFlatKnotsV
- type theFlatKnotsV
TColStd_Array1OfReal
- param thePoles
- type thePoles
TColgp_Array2OfPnt
- param theWeights
default value is NULL
- type theWeights
TColStd_Array2OfReal *
- rtype
None
-
D0
()¶ - Calculates the point on the surface for specified parameters param[in] theU first parameter for calculation of the value param[in] theV second parameter for calculation of the value param[out] thePoint the result of calculation (the point on the surface)
- param theU
- type theU
float
- param theV
- type theV
float
- param thePoint
- type thePoint
gp_Pnt
- rtype
None
-
D1
()¶ - Calculates the point on the surface and its first derivative param[in] theU first parameter of calculation of the value param[in] theV second parameter of calculation of the value param[out] thePoint the result of calculation (the point on the surface) param[out] theTangentU tangent vector along U axis in the calculated point param[out] theTangentV tangent vector along V axis in the calculated point
- param theU
- type theU
float
- param theV
- type theV
float
- param thePoint
- type thePoint
gp_Pnt
- param theTangentU
- type theTangentU
gp_Vec
- param theTangentV
- type theTangentV
gp_Vec
- rtype
None
-
D2
()¶ - Calculates the point on the surface and derivatives till second order param[in] theU first parameter of calculation of the value param[in] theV second parameter of calculation of the value param[out] thePoint the result of calculation (the point on the surface) param[out] theTangentU tangent vector along U axis in the calculated point param[out] theTangentV tangent vector along V axis in the calculated point param[out] theCurvatureU curvature vector (2nd derivative on U) along U axis param[out] theCurvatureV curvature vector (2nd derivative on V) along V axis param[out] theCurvatureUV 2nd mixed derivative on U anv V
- param theU
- type theU
float
- param theV
- type theV
float
- param thePoint
- type thePoint
gp_Pnt
- param theTangentU
- type theTangentU
gp_Vec
- param theTangentV
- type theTangentV
gp_Vec
- param theCurvatureU
- type theCurvatureU
gp_Vec
- param theCurvatureV
- type theCurvatureV
gp_Vec
- param theCurvatureUV
- type theCurvatureUV
gp_Vec
- rtype
None
-
static
DownCast
(t)¶
-
IsCacheValid
()¶ - Verifies validity of the cache using parameters of the point param theParameterU first parameter of the point placed in the span param theParameterV second parameter of the point placed in the span
- param theParameterU
- type theParameterU
float
- param theParameterV
- type theParameterV
float
- rtype
bool
-
property
thisown
¶ The membership flag
-
class
SwigPyIterator
(*args, **kwargs)¶ Bases:
object
-
advance
()¶
-
copy
()¶
-
decr
()¶
-
distance
()¶
-
equal
()¶
-
incr
()¶
-
next
()¶
-
previous
()¶
-
property
thisown
¶ The membership flag
-
value
()¶
-
-
class
bsplslib
¶ Bases:
object
-
static
BuildCache
()¶ - Perform the evaluation of the Taylor expansion of the Bspline normalized between 0 and 1. If rational computes the homogeneous Taylor expension for the numerator and stores it in CachePoles
- param U
- type U
float
- param V
- type V
float
- param USpanDomain
- type USpanDomain
float
- param VSpanDomain
- type VSpanDomain
float
- param UPeriodicFlag
- type UPeriodicFlag
bool
- param VPeriodicFlag
- type VPeriodicFlag
bool
- param UDegree
- type UDegree
int
- param VDegree
- type VDegree
int
- param UIndex
- type UIndex
int
- param VIndex
- type VIndex
int
- param UFlatKnots
- type UFlatKnots
TColStd_Array1OfReal
- param VFlatKnots
- type VFlatKnots
TColStd_Array1OfReal
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Weights
- type Weights
TColStd_Array2OfReal *
- param CachePoles
- type CachePoles
TColgp_Array2OfPnt
- param CacheWeights
- type CacheWeights
TColStd_Array2OfReal *
- rtype
void* Perform the evaluation of the Taylor expansion of the Bspline normalized between 0 and 1. Structure of result optimized for BSplSLib_Cache.
- param theU
- type theU
float
- param theV
- type theV
float
- param theUSpanDomain
- type theUSpanDomain
float
- param theVSpanDomain
- type theVSpanDomain
float
- param theUPeriodic
- type theUPeriodic
bool
- param theVPeriodic
- type theVPeriodic
bool
- param theUDegree
- type theUDegree
int
- param theVDegree
- type theVDegree
int
- param theUIndex
- type theUIndex
int
- param theVIndex
- type theVIndex
int
- param theUFlatKnots
- type theUFlatKnots
TColStd_Array1OfReal
- param theVFlatKnots
- type theVFlatKnots
TColStd_Array1OfReal
- param thePoles
- type thePoles
TColgp_Array2OfPnt
- param theWeights
- type theWeights
TColStd_Array2OfReal *
- param theCacheArray
- type theCacheArray
TColStd_Array2OfReal
- rtype
void
-
static
CacheD0
()¶ - Perform the evaluation of the of the cache the parameter must be normalized between the 0 and 1 for the span. The Cache must be valid when calling this routine. Geom Package will insure that. and then multiplies by the weights this just evaluates the current point the CacheParameter is where the Cache was constructed the SpanLength is to normalize the polynomial in the cache to avoid bad conditioning effects
- param U
- type U
float
- param V
- type V
float
- param UDegree
- type UDegree
int
- param VDegree
- type VDegree
int
- param UCacheParameter
- type UCacheParameter
float
- param VCacheParameter
- type VCacheParameter
float
- param USpanLenght
- type USpanLenght
float
- param VSpanLength
- type VSpanLength
float
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Weights
- type Weights
TColStd_Array2OfReal *
- param Point
- type Point
gp_Pnt
- rtype
void
-
static
CacheD1
()¶ - Perform the evaluation of the of the cache the parameter must be normalized between the 0 and 1 for the span. The Cache must be valid when calling this routine. Geom Package will insure that. and then multiplies by the weights this just evaluates the current point the CacheParameter is where the Cache was constructed the SpanLength is to normalize the polynomial in the cache to avoid bad conditioning effects
- param U
- type U
float
- param V
- type V
float
- param UDegree
- type UDegree
int
- param VDegree
- type VDegree
int
- param UCacheParameter
- type UCacheParameter
float
- param VCacheParameter
- type VCacheParameter
float
- param USpanLenght
- type USpanLenght
float
- param VSpanLength
- type VSpanLength
float
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Weights
- type Weights
TColStd_Array2OfReal *
- param Point
- type Point
gp_Pnt
- param VecU
- type VecU
gp_Vec
- param VecV
- type VecV
gp_Vec
- rtype
void
-
static
CacheD2
()¶ - Perform the evaluation of the of the cache the parameter must be normalized between the 0 and 1 for the span. The Cache must be valid when calling this routine. Geom Package will insure that. and then multiplies by the weights this just evaluates the current point the CacheParameter is where the Cache was constructed the SpanLength is to normalize the polynomial in the cache to avoid bad conditioning effects
- param U
- type U
float
- param V
- type V
float
- param UDegree
- type UDegree
int
- param VDegree
- type VDegree
int
- param UCacheParameter
- type UCacheParameter
float
- param VCacheParameter
- type VCacheParameter
float
- param USpanLenght
- type USpanLenght
float
- param VSpanLength
- type VSpanLength
float
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Weights
- type Weights
TColStd_Array2OfReal *
- param Point
- type Point
gp_Pnt
- param VecU
- type VecU
gp_Vec
- param VecV
- type VecV
gp_Vec
- param VecUU
- type VecUU
gp_Vec
- param VecUV
- type VecUV
gp_Vec
- param VecVV
- type VecVV
gp_Vec
- rtype
void
-
static
CoefsD0
()¶ - Calls CacheD0 for Bezier Surfaces Arrays computed with the method PolesCoefficients. Warning: To be used for BezierSurfaces ONLY!!!
- param U
- type U
float
- param V
- type V
float
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Weights
- type Weights
TColStd_Array2OfReal *
- param Point
- type Point
gp_Pnt
- rtype
None
-
static
CoefsD1
()¶ - Calls CacheD0 for Bezier Surfaces Arrays computed with the method PolesCoefficients. Warning: To be used for BezierSurfaces ONLY!!!
- param U
- type U
float
- param V
- type V
float
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Weights
- type Weights
TColStd_Array2OfReal *
- param Point
- type Point
gp_Pnt
- param VecU
- type VecU
gp_Vec
- param VecV
- type VecV
gp_Vec
- rtype
None
-
static
CoefsD2
()¶ - Calls CacheD0 for Bezier Surfaces Arrays computed with the method PolesCoefficients. Warning: To be used for BezierSurfaces ONLY!!!
- param U
- type U
float
- param V
- type V
float
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Weights
- type Weights
TColStd_Array2OfReal *
- param Point
- type Point
gp_Pnt
- param VecU
- type VecU
gp_Vec
- param VecV
- type VecV
gp_Vec
- param VecUU
- type VecUU
gp_Vec
- param VecUV
- type VecUV
gp_Vec
- param VecVV
- type VecVV
gp_Vec
- rtype
None
-
static
D0
()¶ - Parameters
U –
- type U
float
- param V
- type V
float
- param UIndex
- type UIndex
int
- param VIndex
- type VIndex
int
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Weights
- type Weights
TColStd_Array2OfReal *
- param UKnots
- type UKnots
TColStd_Array1OfReal
- param VKnots
- type VKnots
TColStd_Array1OfReal
- param UMults
- type UMults
TColStd_Array1OfInteger *
- param VMults
- type VMults
TColStd_Array1OfInteger *
- param UDegree
- type UDegree
int
- param VDegree
- type VDegree
int
- param URat
- type URat
bool
- param VRat
- type VRat
bool
- param UPer
- type UPer
bool
- param VPer
- type VPer
bool
- param P
- type P
gp_Pnt
- rtype
void
-
static
D1
()¶ - Parameters
U –
- type U
float
- param V
- type V
float
- param UIndex
- type UIndex
int
- param VIndex
- type VIndex
int
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Weights
- type Weights
TColStd_Array2OfReal *
- param UKnots
- type UKnots
TColStd_Array1OfReal
- param VKnots
- type VKnots
TColStd_Array1OfReal
- param UMults
- type UMults
TColStd_Array1OfInteger *
- param VMults
- type VMults
TColStd_Array1OfInteger *
- param Degree
- type Degree
int
- param VDegree
- type VDegree
int
- param URat
- type URat
bool
- param VRat
- type VRat
bool
- param UPer
- type UPer
bool
- param VPer
- type VPer
bool
- param P
- type P
gp_Pnt
- param Vu
- type Vu
gp_Vec
- param Vv
- type Vv
gp_Vec
- rtype
void
-
static
D2
()¶ - Parameters
U –
- type U
float
- param V
- type V
float
- param UIndex
- type UIndex
int
- param VIndex
- type VIndex
int
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Weights
- type Weights
TColStd_Array2OfReal *
- param UKnots
- type UKnots
TColStd_Array1OfReal
- param VKnots
- type VKnots
TColStd_Array1OfReal
- param UMults
- type UMults
TColStd_Array1OfInteger *
- param VMults
- type VMults
TColStd_Array1OfInteger *
- param UDegree
- type UDegree
int
- param VDegree
- type VDegree
int
- param URat
- type URat
bool
- param VRat
- type VRat
bool
- param UPer
- type UPer
bool
- param VPer
- type VPer
bool
- param P
- type P
gp_Pnt
- param Vu
- type Vu
gp_Vec
- param Vv
- type Vv
gp_Vec
- param Vuu
- type Vuu
gp_Vec
- param Vvv
- type Vvv
gp_Vec
- param Vuv
- type Vuv
gp_Vec
- rtype
void
-
static
D3
()¶ - Parameters
U –
- type U
float
- param V
- type V
float
- param UIndex
- type UIndex
int
- param VIndex
- type VIndex
int
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Weights
- type Weights
TColStd_Array2OfReal *
- param UKnots
- type UKnots
TColStd_Array1OfReal
- param VKnots
- type VKnots
TColStd_Array1OfReal
- param UMults
- type UMults
TColStd_Array1OfInteger *
- param VMults
- type VMults
TColStd_Array1OfInteger *
- param UDegree
- type UDegree
int
- param VDegree
- type VDegree
int
- param URat
- type URat
bool
- param VRat
- type VRat
bool
- param UPer
- type UPer
bool
- param VPer
- type VPer
bool
- param P
- type P
gp_Pnt
- param Vu
- type Vu
gp_Vec
- param Vv
- type Vv
gp_Vec
- param Vuu
- type Vuu
gp_Vec
- param Vvv
- type Vvv
gp_Vec
- param Vuv
- type Vuv
gp_Vec
- param Vuuu
- type Vuuu
gp_Vec
- param Vvvv
- type Vvvv
gp_Vec
- param Vuuv
- type Vuuv
gp_Vec
- param Vuvv
- type Vuvv
gp_Vec
- rtype
void
-
static
DN
()¶ - Parameters
U –
- type U
float
- param V
- type V
float
- param Nu
- type Nu
int
- param Nv
- type Nv
int
- param UIndex
- type UIndex
int
- param VIndex
- type VIndex
int
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Weights
- type Weights
TColStd_Array2OfReal *
- param UKnots
- type UKnots
TColStd_Array1OfReal
- param VKnots
- type VKnots
TColStd_Array1OfReal
- param UMults
- type UMults
TColStd_Array1OfInteger *
- param VMults
- type VMults
TColStd_Array1OfInteger *
- param UDegree
- type UDegree
int
- param VDegree
- type VDegree
int
- param URat
- type URat
bool
- param VRat
- type VRat
bool
- param UPer
- type UPer
bool
- param VPer
- type VPer
bool
- param Vn
- type Vn
gp_Vec
- rtype
void
-
static
FunctionMultiply
()¶ - this will multiply a given BSpline numerator N(u,v) and denominator D(u,v) defined by its U/VBSplineDegree and U/VBSplineKnots, and U/VMults. Its Poles and Weights are arrays which are coded as array2 of the form [1..UNumPoles][1..VNumPoles] by a function a(u,v) which is assumed to satisfy the following1. a(u,v) * N(u,v) and a(u,v) * D(u,v) is a polynomial BSpline that can be expressed exactly as a BSpline of degree U/VNewDegree on the knots U/VFlatKnots 2. the range of a(u,v) is the same as the range of N(u,v) or D(u,v) —Warning: it is the caller’s responsability to insure that conditions 1. and 2. above are satisfiedno check whatsoever is made in this method – theStatus will return 0 if OK else it will return the pivot index – of the matrix that was inverted to compute the multiplied – BSplinethe method used is interpolation at Schoenenberg – points of a(u,v)* N(u,v) and a(u,v) * D(u,v) theStatus will return 0 if OK else it will return the pivot index of the matrix that was inverted to compute the multiplied BSplinethe method used is interpolation at Schoenenberg points of a(u,v)*F(u,v) –
- param Function
- type Function
BSplSLib_EvaluatorFunction
- param UBSplineDegree
- type UBSplineDegree
int
- param VBSplineDegree
- type VBSplineDegree
int
- param UBSplineKnots
- type UBSplineKnots
TColStd_Array1OfReal
- param VBSplineKnots
- type VBSplineKnots
TColStd_Array1OfReal
- param UMults
- type UMults
TColStd_Array1OfInteger *
- param VMults
- type VMults
TColStd_Array1OfInteger *
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Weights
- type Weights
TColStd_Array2OfReal *
- param UFlatKnots
- type UFlatKnots
TColStd_Array1OfReal
- param VFlatKnots
- type VFlatKnots
TColStd_Array1OfReal
- param UNewDegree
- type UNewDegree
int
- param VNewDegree
- type VNewDegree
int
- param NewNumerator
- type NewNumerator
TColgp_Array2OfPnt
- param NewDenominator
- type NewDenominator
TColStd_Array2OfReal
- param theStatus
- type theStatus
int
- rtype
void
-
static
GetPoles
()¶ - Get from FP the coordinates of the poles.
- param FP
- type FP
TColStd_Array1OfReal
- param Poles
- type Poles
TColgp_Array2OfPnt
- param UDirection
- type UDirection
bool
- rtype
void* Get from FP the coordinates of the poles.
- param FP
- type FP
TColStd_Array1OfReal
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Weights
- type Weights
TColStd_Array2OfReal
- param UDirection
- type UDirection
bool
- rtype
void
-
static
HomogeneousD0
()¶ - Makes an homogeneous evaluation of Poles and Weights any and returns in P the Numerator value and in W the Denominator value if Weights are present otherwise returns 1.0e0
- param U
- type U
float
- param V
- type V
float
- param UIndex
- type UIndex
int
- param VIndex
- type VIndex
int
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Weights
- type Weights
TColStd_Array2OfReal *
- param UKnots
- type UKnots
TColStd_Array1OfReal
- param VKnots
- type VKnots
TColStd_Array1OfReal
- param UMults
- type UMults
TColStd_Array1OfInteger *
- param VMults
- type VMults
TColStd_Array1OfInteger *
- param UDegree
- type UDegree
int
- param VDegree
- type VDegree
int
- param URat
- type URat
bool
- param VRat
- type VRat
bool
- param UPer
- type UPer
bool
- param VPer
- type VPer
bool
- param W
- type W
float
- param P
- type P
gp_Pnt
- rtype
void
-
static
HomogeneousD1
()¶ - Makes an homogeneous evaluation of Poles and Weights any and returns in P the Numerator value and in W the Denominator value if Weights are present otherwise returns 1.0e0
- param U
- type U
float
- param V
- type V
float
- param UIndex
- type UIndex
int
- param VIndex
- type VIndex
int
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Weights
- type Weights
TColStd_Array2OfReal *
- param UKnots
- type UKnots
TColStd_Array1OfReal
- param VKnots
- type VKnots
TColStd_Array1OfReal
- param UMults
- type UMults
TColStd_Array1OfInteger *
- param VMults
- type VMults
TColStd_Array1OfInteger *
- param UDegree
- type UDegree
int
- param VDegree
- type VDegree
int
- param URat
- type URat
bool
- param VRat
- type VRat
bool
- param UPer
- type UPer
bool
- param VPer
- type VPer
bool
- param N
- type N
gp_Pnt
- param Nu
- type Nu
gp_Vec
- param Nv
- type Nv
gp_Vec
- param D
- type D
float
- param Du
- type Du
float
- param Dv
- type Dv
float
- rtype
void
-
static
IncreaseDegree
()¶ - Parameters
UDirection –
- type UDirection
bool
- param Degree
- type Degree
int
- param NewDegree
- type NewDegree
int
- param Periodic
- type Periodic
bool
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Weights
- type Weights
TColStd_Array2OfReal *
- param Knots
- type Knots
TColStd_Array1OfReal
- param Mults
- type Mults
TColStd_Array1OfInteger
- param NewPoles
- type NewPoles
TColgp_Array2OfPnt
- param NewWeights
- type NewWeights
TColStd_Array2OfReal *
- param NewKnots
- type NewKnots
TColStd_Array1OfReal
- param NewMults
- type NewMults
TColStd_Array1OfInteger
- rtype
void
-
static
InsertKnots
()¶ - Parameters
UDirection –
- type UDirection
bool
- param Degree
- type Degree
int
- param Periodic
- type Periodic
bool
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Weights
- type Weights
TColStd_Array2OfReal *
- param Knots
- type Knots
TColStd_Array1OfReal
- param Mults
- type Mults
TColStd_Array1OfInteger
- param AddKnots
- type AddKnots
TColStd_Array1OfReal
- param AddMults
- type AddMults
TColStd_Array1OfInteger *
- param NewPoles
- type NewPoles
TColgp_Array2OfPnt
- param NewWeights
- type NewWeights
TColStd_Array2OfReal *
- param NewKnots
- type NewKnots
TColStd_Array1OfReal
- param NewMults
- type NewMults
TColStd_Array1OfInteger
- param Epsilon
- type Epsilon
float
- param Add
default value is Standard_True
- type Add
bool
- rtype
void
-
static
Interpolate
()¶ - Performs the interpolation of the data points given in the Poles array in the form [1,…,RL][1,…,RC][1…PolesDimension] . The ColLength CL and the Length of UParameters must be the same. The length of VFlatKnots is VDegree + CL + 1. //! The RowLength RL and the Length of VParameters must be the same. The length of VFlatKnots is Degree + RL + 1. //! Warning: the method used to do that interpolation is gauss elimination WITHOUT pivoting. Thus if the diagonal is not dominant there is no guarantee that the algorithm will work. Nevertheless for Cubic interpolation at knots or interpolation at Scheonberg points the method will work. The InversionProblem will report 0 if there was no problem else it will give the index of the faulty pivot
- param UDegree
- type UDegree
int
- param VDegree
- type VDegree
int
- param UFlatKnots
- type UFlatKnots
TColStd_Array1OfReal
- param VFlatKnots
- type VFlatKnots
TColStd_Array1OfReal
- param UParameters
- type UParameters
TColStd_Array1OfReal
- param VParameters
- type VParameters
TColStd_Array1OfReal
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Weights
- type Weights
TColStd_Array2OfReal
- param InversionProblem
- type InversionProblem
int
- rtype
void* Performs the interpolation of the data points given in the Poles array. The ColLength CL and the Length of UParameters must be the same. The length of VFlatKnots is VDegree + CL + 1. //! The RowLength RL and the Length of VParameters must be the same. The length of VFlatKnots is Degree + RL + 1. //! Warning: the method used to do that interpolation is gauss elimination WITHOUT pivoting. Thus if the diagonal is not dominant there is no guarantee that the algorithm will work. Nevertheless for Cubic interpolation at knots or interpolation at Scheonberg points the method will work. The InversionProblem will report 0 if there was no problem else it will give the index of the faulty pivot
- param UDegree
- type UDegree
int
- param VDegree
- type VDegree
int
- param UFlatKnots
- type UFlatKnots
TColStd_Array1OfReal
- param VFlatKnots
- type VFlatKnots
TColStd_Array1OfReal
- param UParameters
- type UParameters
TColStd_Array1OfReal
- param VParameters
- type VParameters
TColStd_Array1OfReal
- param Poles
- type Poles
TColgp_Array2OfPnt
- param InversionProblem
- type InversionProblem
int
- rtype
void
-
static
IsRational
()¶ - Returns False if all the weights of the array <Weights> in the area [I1,I2] * [J1,J2] are identic. Epsilon is used for comparing weights. If Epsilon is 0. the Epsilon of the first weight is used.
- param Weights
- type Weights
TColStd_Array2OfReal
- param I1
- type I1
int
- param I2
- type I2
int
- param J1
- type J1
int
- param J2
- type J2
int
- param Epsilon
default value is 0.0
- type Epsilon
float
- rtype
bool
-
static
Iso
()¶ - Computes the poles and weights of an isoparametric curve at parameter <Param> (UIso if <IsU> is True, VIso else).
- param Param
- type Param
float
- param IsU
- type IsU
bool
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Weights
- type Weights
TColStd_Array2OfReal *
- param Knots
- type Knots
TColStd_Array1OfReal
- param Mults
- type Mults
TColStd_Array1OfInteger *
- param Degree
- type Degree
int
- param Periodic
- type Periodic
bool
- param CPoles
- type CPoles
TColgp_Array1OfPnt
- param CWeights
- type CWeights
TColStd_Array1OfReal *
- rtype
void
-
static
MovePoint
()¶ - Find the new poles which allows an old point (with a given u,v as parameters) to reach a new position UIndex1,UIndex2 indicate the range of poles we can move for U (1, UNbPoles-1) or (2, UNbPoles) -> no constraint for one side in U (2, UNbPoles-1) -> the ends are enforced for U don’t enter (1,NbPoles) and (1,VNbPoles) -> error: rigid move if problem in BSplineBasis calculation, no change for the curve and UFirstIndex, VLastIndex = 0 VFirstIndex, VLastIndex = 0
- param U
- type U
float
- param V
- type V
float
- param Displ
- type Displ
gp_Vec
- param UIndex1
- type UIndex1
int
- param UIndex2
- type UIndex2
int
- param VIndex1
- type VIndex1
int
- param VIndex2
- type VIndex2
int
- param UDegree
- type UDegree
int
- param VDegree
- type VDegree
int
- param Rational
- type Rational
bool
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Weights
- type Weights
TColStd_Array2OfReal
- param UFlatKnots
- type UFlatKnots
TColStd_Array1OfReal
- param VFlatKnots
- type VFlatKnots
TColStd_Array1OfReal
- param UFirstIndex
- type UFirstIndex
int
- param ULastIndex
- type ULastIndex
int
- param VFirstIndex
- type VFirstIndex
int
- param VLastIndex
- type VLastIndex
int
- param NewPoles
- type NewPoles
TColgp_Array2OfPnt
- rtype
void
-
static
NoWeights
()¶ - Used as argument for a non rational curve.
- rtype
TColStd_Array2OfReal *
-
static
PolesCoefficients
()¶ - Warning! To be used for BezierSurfaces ONLY!!!
- param Poles
- type Poles
TColgp_Array2OfPnt
- param CachePoles
- type CachePoles
TColgp_Array2OfPnt
- rtype
None* Encapsulation of BuildCache to perform the evaluation of the Taylor expansion for beziersurfaces at parameters 0.,0.; Warning: To be used for BezierSurfaces ONLY!!!
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Weights
- type Weights
TColStd_Array2OfReal *
- param CachePoles
- type CachePoles
TColgp_Array2OfPnt
- param CacheWeights
- type CacheWeights
TColStd_Array2OfReal *
- rtype
void
-
static
RationalDerivative
()¶ - this is a one dimensional function typedef void (*EvaluatorFunction) ( Standard_Integer // Derivative Request Standard_Real * // StartEnd[2][2] // [0] = U // [1] = V // [0] = start // [1] = end Standard_Real // UParameter Standard_Real // VParamerer Standard_Real & // Result Standard_Integer &) ;// Error Code serves to multiply a given vectorial BSpline by a function Computes the derivatives of a ratio of two-variables functions x(u,v) / w(u,v) at orders <N,M>, x(u,v) is a vector in dimension <3>. //! <Ders> is an array containing the values of the input derivatives from 0 to Min(<N>,<UDeg>), 0 to Min(<M>,<VDeg>). For orders higher than <UDeg,VDeg> the input derivatives are assumed to be 0. //! The <Ders> is a 2d array and the dimension of the lines is always (<VDeg>+1) * (<3>+1), even if <N> is smaller than <Udeg> (the derivatives higher than <N> are not used). //! Content of <Ders>//! x(i,j)[k] meansthe composant k of x derivated (i) times in u and (j) times in v. //! … First line … //! x[1],x[2],…,x[3],w x(0,1)[1],…,x(0,1)[3],w(1,0) … x(0,VDeg)[1],…,x(0,VDeg)[3],w(0,VDeg) //! … Then second line … //! x(1,0)[1],…,x(1,0)[3],w(1,0) x(1,1)[1],…,x(1,1)[3],w(1,1) … x(1,VDeg)[1],…,x(1,VDeg)[3],w(1,VDeg) //! … //! … Last line … //! x(UDeg,0)[1],…,x(UDeg,0)[3],w(UDeg,0) x(UDeg,1)[1],…,x(UDeg,1)[3],w(UDeg,1) … x(Udeg,VDeg)[1],…,x(UDeg,VDeg)[3],w(Udeg,VDeg) //! If <All> is false, only the derivative at order <N,M> is computed. <RDers> is an array of length 3 which will contain the result//! x(1)/w , x(2)/w , … derivated <N> <M> times //! If <All> is true multiples derivatives are computed. All the derivatives (i,j) with 0 <= i+j <= Max(N,M) are computed. <RDers> is an array of length 3 * (<N>+1) * (<M>+1) which will contains//! x(1)/w , x(2)/w , … x(1)/w , x(2)/w , … derivated <0,1> times x(1)/w , x(2)/w , … derivated <0,2> times … x(1)/w , x(2)/w , … derivated <0,N> times //! x(1)/w , x(2)/w , … derivated <1,0> times x(1)/w , x(2)/w , … derivated <1,1> times … x(1)/w , x(2)/w , … derivated <1,N> times //! x(1)/w , x(2)/w , … derivated <N,0> times …. Warning: <RDers> must be dimensionned properly.
- param UDeg
- type UDeg
int
- param VDeg
- type VDeg
int
- param N
- type N
int
- param M
- type M
int
- param Ders
- type Ders
float
- param RDers
- type RDers
float
- param All
default value is Standard_True
- type All
bool
- rtype
void
-
static
RemoveKnot
()¶ - Parameters
UDirection –
- type UDirection
bool
- param Index
- type Index
int
- param Mult
- type Mult
int
- param Degree
- type Degree
int
- param Periodic
- type Periodic
bool
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Weights
- type Weights
TColStd_Array2OfReal *
- param Knots
- type Knots
TColStd_Array1OfReal
- param Mults
- type Mults
TColStd_Array1OfInteger
- param NewPoles
- type NewPoles
TColgp_Array2OfPnt
- param NewWeights
- type NewWeights
TColStd_Array2OfReal *
- param NewKnots
- type NewKnots
TColStd_Array1OfReal
- param NewMults
- type NewMults
TColStd_Array1OfInteger
- param Tolerance
- type Tolerance
float
- rtype
bool
-
static
Resolution
()¶ - Given a tolerance in 3D space returns two tolerances, one in U one in V such that for all (u1,v1) and (u0,v0) in the domain of the surface f(u,v) we have| u1 - u0 | < UTolerance and | v1 - v0 | < VTolerance we have |f (u1,v1) - f (u0,v0)| < Tolerance3D
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Weights
- type Weights
TColStd_Array2OfReal *
- param UKnots
- type UKnots
TColStd_Array1OfReal
- param VKnots
- type VKnots
TColStd_Array1OfReal
- param UMults
- type UMults
TColStd_Array1OfInteger
- param VMults
- type VMults
TColStd_Array1OfInteger
- param UDegree
- type UDegree
int
- param VDegree
- type VDegree
int
- param URat
- type URat
bool
- param VRat
- type VRat
bool
- param UPer
- type UPer
bool
- param VPer
- type VPer
bool
- param Tolerance3D
- type Tolerance3D
float
- param UTolerance
- type UTolerance
float
- param VTolerance
- type VTolerance
float
- rtype
void
-
static
Reverse
()¶ - Reverses the array of poles. Last is the Index of the new first Row( Col) of Poles. On a non periodic surface Last is Poles.Upper(). On a periodic curve last is (number of flat knots - degree - 1) or (sum of multiplicities(but for the last) + degree - 1)
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Last
- type Last
int
- param UDirection
- type UDirection
bool
- rtype
void* Reverses the array of weights.
- param Weights
- type Weights
TColStd_Array2OfReal
- param Last
- type Last
int
- param UDirection
- type UDirection
bool
- rtype
void
-
static
SetPoles
()¶ - Copy in FP the coordinates of the poles.
- param Poles
- type Poles
TColgp_Array2OfPnt
- param FP
- type FP
TColStd_Array1OfReal
- param UDirection
- type UDirection
bool
- rtype
void* Copy in FP the coordinates of the poles.
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Weights
- type Weights
TColStd_Array2OfReal
- param FP
- type FP
TColStd_Array1OfReal
- param UDirection
- type UDirection
bool
- rtype
void
-
static
Unperiodize
()¶ - Parameters
UDirection –
- type UDirection
bool
- param Degree
- type Degree
int
- param Mults
- type Mults
TColStd_Array1OfInteger
- param Knots
- type Knots
TColStd_Array1OfReal
- param Poles
- type Poles
TColgp_Array2OfPnt
- param Weights
- type Weights
TColStd_Array2OfReal *
- param NewMults
- type NewMults
TColStd_Array1OfInteger
- param NewKnots
- type NewKnots
TColStd_Array1OfReal
- param NewPoles
- type NewPoles
TColgp_Array2OfPnt
- param NewWeights
- type NewWeights
TColStd_Array2OfReal *
- rtype
void
-
property
thisown
¶ The membership flag
-
static