AppParCurves
OCCT package AppParCurves: AppParCurves, AppParCurves_Constraint, AppParCurves_ConstraintCouple, AppParCurves_MultiBSpCurve, and 2 more bound classes.
AppParCurves
Parallel Approximation in n curves. This package gives all the algorithms used to approximate a MultiLine described by the tool MLineTool. The result of the approximation will be a MultiCurve.
Constructors(1)
Static methods(4)
- BernsteinMatrix(NbPoles: number, U: math_Vector, A: math_Matrix): voidParameters (3)
NbPolesUA
- Bernstein(NbPoles: number, U: math_Vector, A: math_Matrix, DA: math_Matrix): voidParameters (4)
NbPolesUADA
- SecondDerivativeBernstein(U: number, DDA: math_Vector): voidParameters (2)
UDDA
- SplineFunction(NbPoles: number, Degree: number, Parameters: math_Vector, FlatKnots: math_Vector, A: math_Matrix, DA: math_Matrix, Index: math_IntegerVector): voidParameters (7)
NbPolesDegreeParametersFlatKnotsADAIndex
AppParCurves_Constraint
Properties(4)
AppParCurves_ConstraintCouple
associates an index and a constraint for an object. This couple is used by AppDef_TheVariational when performing approximations.
Constructors(2)
returns an indefinite ConstraintCouple.
- constructor(TheIndex: number, Cons: AppParCurves_Constraint): AppParCurves_ConstraintCouple
Create a couple the object <Index> will have the constraint <Cons>.
Parameters (2)TheIndexCons
Instance methods(4)
- Index(): number
returns the index of the constraint object.
returns the constraint of the object.
- SetIndex(TheIndex: number): void
Changes the index of the constraint object.
Parameters (1)TheIndex
- SetConstraint(Cons: AppParCurves_Constraint): void
Changes the constraint of the object.
Parameters (1)Cons
AppParCurves_MultiBSpCurve
This class describes a MultiBSpCurve approximating a Multiline. Just as a Multiline is a set of a given number of lines, a MultiBSpCurve is a set of a specified number of bsplines defined by:
- A specified number of MultiPoints - the poles of a specified number of curves
- The degree of approximation identical for each of the specified number of curves.
Example of a MultiBSpCurve composed of a specified number of MultiPoints:
P1______P2_____P3______P4________........PNbMPoints
Q1______Q2_____Q3______Q4___........QNbMPoints . . . . . . R1______R2_____R3______R4___........_____RNbMPoints
Pi, Qi, ..., Ri are points of dimension 2 or 3.
(Pi, Qi, ...Ri), i= 1,...NbPoles are MultiPoints. each MultiPoint has got NbPol Poles. MultiBSpCurves are created by the SplineValue method in the ComputeLine class, and by the Value method in TheVariational class. MultiBSpCurve provides the information required to create the BSpline defined by the approximation.
Constructors(4)
returns an indefinite MultiBSpCurve.
- constructor(NbPol: number): AppParCurves_MultiBSpCurve
creates a MultiBSpCurve, describing BSpline curves all containing the same number of MultiPoint. An exception is raised if Degree < 0.
Parameters (1)NbPol
- constructor(tabMU: NCollection_Array1_AppParCurves_MultiPoint, Knots: NCollection_Array1_double, Mults: NCollection_Array1_int): AppParCurves_MultiBSpCurve
creates a MultiBSpCurve, describing BSpline curves all containing the same number of MultiPoint. Each MultiPoint must have NbCurves Poles.
Parameters (3)tabMUKnotsMults
- constructor(SC: AppParCurves_MultiCurve, Knots: NCollection_Array1_double, Mults: NCollection_Array1_int): AppParCurves_MultiBSpCurve
creates a MultiBSpCurve, describing BSpline curves, taking control points from <SC>.
Parameters (3)SCKnotsMults
Instance methods(12)
- SetKnots(theKnots: NCollection_Array1_double): void
Knots of the multiBSpCurve are assigned to <theknots>.
Parameters (1)theKnots
- SetMultiplicities(theMults: NCollection_Array1_int): void
Multiplicities of the multiBSpCurve are assigned to <theMults>.
Parameters (1)theMults
Returns an array of Reals containing the multiplicities of curves resulting from the approximation.
Returns an array of Reals containing the multiplicities of curves resulting from the approximation.
- Degree(): number
returns the degree of the curve(s).
returns the value of the point with a parameter U on the BSpline curve number CuIndex. An exception is raised if CuIndex <0 or > NbCurves. An exception is raised if the curve dimension is 2d.
Parameters (3)CuIndexUPt—Mutated in place; read the updated value from this argument after the call.
returns the value of the point with a parameter U on the BSpline curve number CuIndex. An exception is raised if CuIndex <0 or > NbCurves. An exception is raised if the curve dimension is 3d.
Parameters (3)CuIndexUPt—Mutated in place; read the updated value from this argument after the call.
- Value(Index: number): AppParCurves_MultiPoint
returns the value of the point with a parameter U on the BSpline curve number CuIndex. An exception is raised if CuIndex <0 or > NbCurves. An exception is raised if the curve dimension is 2d.
Parameters (1)Index
returns the value of the point with a parameter U on the BSpline curve number CuIndex. An exception is raised if CuIndex <0 or > NbCurves. An exception is raised if the curve dimension is 3d.
Parameters (4)CuIndexUPt—Mutated in place; read the updated value from this argument after the call.V1—Mutated in place; read the updated value from this argument after the call.
returns the value of the point with a parameter U on the BSpline curve number CuIndex. An exception is raised if CuIndex <0 or > NbCurves. An exception is raised if the curve dimension is 2d.
Parameters (4)CuIndexUPt—Mutated in place; read the updated value from this argument after the call.V1—Mutated in place; read the updated value from this argument after the call.
returns the value of the point with a parameter U on the BSpline curve number CuIndex. An exception is raised if CuIndex <0 or > NbCurves. An exception is raised if the curve dimension is 3d.
Parameters (5)CuIndexUPt—Mutated in place; read the updated value from this argument after the call.V1—Mutated in place; read the updated value from this argument after the call.V2—Mutated in place; read the updated value from this argument after the call.
returns the value of the point with a parameter U on the BSpline curve number CuIndex. An exception is raised if CuIndex <0 or > NbCurves. An exception is raised if the curve dimension is 2d.
Parameters (5)CuIndexUPt—Mutated in place; read the updated value from this argument after the call.V1—Mutated in place; read the updated value from this argument after the call.V2—Mutated in place; read the updated value from this argument after the call.
AppParCurves_MultiCurve
This class describes a MultiCurve approximating a Multiline. As a Multiline is a set of n lines, a MultiCurve is a set of n curves. These curves are Bezier curves. A MultiCurve is composed of m MultiPoint. The approximating degree of these n curves is the same for each one.
Example of a MultiCurve composed of MultiPoints:
P1______P2_____P3______P4________........PNbMPoints
Q1______Q2_____Q3______Q4___........QNbMPoints . . . . . . R1______R2_____R3______R4___........_____RNbMPoints
Pi, Qi, ..., Ri are points of dimension 2 or 3.
(Pi, Qi, ...Ri), i= 1,...NbPoles are MultiPoints. each MultiPoint has got NbPol Poles.
Constructors(3)
returns an indefinite MultiCurve.
- constructor(NbPol: number): AppParCurves_MultiCurve
creates a MultiCurve, describing Bezier curves all containing the same number of MultiPoint. An exception is raised if Degree < 0.
Parameters (1)NbPol
creates a MultiCurve, describing Bezier curves all containing the same number of MultiPoint. Each MultiPoint must have NbCurves Poles.
Parameters (1)tabMU
Instance methods(19)
- SetNbPoles(nbPoles: number): void
The number of poles of the MultiCurve will be set to <nbPoles>.
Parameters (1)nbPoles
- SetValue(Index: number, MPoint: AppParCurves_MultiPoint): void
sets the MultiPoint of range Index to the value <MPoint>. An exception is raised if Index <0 or Index >NbMPoint.
Parameters (2)IndexMPoint
- NbCurves(): number
Returns the number of curves resulting from the approximation of a MultiLine.
- NbPoles(): number
Returns the number of poles on curves resulting from the approximation of a MultiLine.
- Degree(): number
returns the degree of the curves.
- Dimension(CuIndex: number): number
returns the dimension of the CuIndex curve. An exception is raised if CuIndex<0 or CuIndex>NbCurves.
Parameters (1)CuIndex
- Curve(CuIndex: number, TabPnt: NCollection_Array1_gp_Pnt): void
returns the Pole array of the curve of range CuIndex. An exception is raised if the dimension of the curve is 2d.
Parameters (2)CuIndexTabPnt—Mutated in place; read the updated value from this argument after the call.
- Curve(CuIndex: number, TabPnt: NCollection_Array1_gp_Pnt2d): void
returns the Pole array of the curve of range CuIndex. An exception is raised if the dimension of the curve is 3d.
Parameters (2)CuIndexTabPnt—Mutated in place; read the updated value from this argument after the call.
- Value(Index: number): AppParCurves_MultiPoint
returns the Index MultiPoint. An exception is raised if Index <0 or Index >Degree+1.
Parameters (1)Index
returns the value of the point with a parameter U on the Bezier curve number CuIndex. An exception is raised if CuIndex <0 or > NbCurves. An exception is raised if the curve dimension is 2d.
Parameters (3)CuIndexUPt—Mutated in place; read the updated value from this argument after the call.
returns the value of the point with a parameter U on the Bezier curve number CuIndex. An exception is raised if CuIndex <0 or > NbCurves. An exception is raised if the curve dimension is 3d.
Parameters (3)CuIndexUPt—Mutated in place; read the updated value from this argument after the call.
returns the Nieme pole of the CuIndex curve. the curve must be a 3D curve.
Parameters (2)CuIndexNieme
returns the Nieme pole of the CuIndex curve. the curve must be a 2D curve.
Parameters (2)CuIndexNieme
- Transform(CuIndex: number, x: number, dx: number, y: number, dy: number, z: number, dz: number): void
Applies a transformation to the curve of range <CuIndex>. newx = x + dxoldx newy = y + dyoldy for all points of the curve. newz = z + dz*oldz.
Parameters (7)CuIndexxdxydyzdz
- Transform2d(CuIndex: number, x: number, dx: number, y: number, dy: number): void
Applies a transformation to the Curve of range <CuIndex>. newx = x + dxoldx newy = y + dyoldy for all points of the curve.
Parameters (5)CuIndexxdxydy
returns the value of the point with a parameter U on the Bezier curve number CuIndex. An exception is raised if CuIndex <0 or > NbCurves. An exception is raised if the curve dimension is 3d.
Parameters (4)CuIndexUPt—Mutated in place; read the updated value from this argument after the call.V1—Mutated in place; read the updated value from this argument after the call.
returns the value of the point with a parameter U on the Bezier curve number CuIndex. An exception is raised if CuIndex <0 or > NbCurves. An exception is raised if the curve dimension is 2d.
Parameters (4)CuIndexUPt—Mutated in place; read the updated value from this argument after the call.V1—Mutated in place; read the updated value from this argument after the call.
returns the value of the point with a parameter U on the Bezier curve number CuIndex. An exception is raised if CuIndex <0 or > NbCurves. An exception is raised if the curve dimension is 3d.
Parameters (5)CuIndexUPt—Mutated in place; read the updated value from this argument after the call.V1—Mutated in place; read the updated value from this argument after the call.V2—Mutated in place; read the updated value from this argument after the call.
returns the value of the point with a parameter U on the Bezier curve number CuIndex. An exception is raised if CuIndex <0 or > NbCurves. An exception is raised if the curve dimension is 2d.
Parameters (5)CuIndexUPt—Mutated in place; read the updated value from this argument after the call.V1—Mutated in place; read the updated value from this argument after the call.V2—Mutated in place; read the updated value from this argument after the call.
AppParCurves_MultiPoint
This class describes Points composing a MultiPoint. These points can be 2D or 3D. The user must first give the 3D Points and then the 2D Points. They are Poles of a Bezier Curve. This class is used either to define data input or results when performing the approximation of several lines in parallel.
Constructors(5)
creates an indefinite MultiPoint.
creates a MultiPoint only composed of 3D points.
Parameters (1)tabP
creates a MultiPoint only composed of 2D points.
Parameters (1)tabP2d
- constructor(NbPoints: number, NbPoints2d: number): AppParCurves_MultiPoint
constructs a set of Points used to approximate a Multiline. These Points can be of 2 or 3 dimensions. Points will be initialized with SetPoint and SetPoint2d. NbPoints is the number of 3D Points. NbPoints2d is the number of 2D Points.
Parameters (2)NbPointsNbPoints2d
- constructor(tabP: NCollection_Array1_gp_Pnt, tabP2d: NCollection_Array1_gp_Pnt2d): AppParCurves_MultiPoint
constructs a set of Points used to approximate a Multiline. These Points can be of 2 or 3 dimensions. Points will be initialized with SetPoint and SetPoint2d. NbPoints is the total number of Points.
Parameters (2)tabPtabP2d
Instance methods(9)
the 3d Point of range Index of this MultiPoint is set to <Point>. An exception is raised if Index < 0 or Index > number of 3d Points.
Parameters (2)IndexPoint
returns the 3d Point of range Index. An exception is raised if Index < 0 or Index < number of 3d Points.
Parameters (1)Index
- SetPoint2d(Index: number, Point: gp_Pnt2d): void
The 2d Point of range Index is set to <Point>. An exception is raised if Index > 3d Points or Index > total number of Points.
Parameters (2)IndexPoint
returns the 2d Point of range Index. An exception is raised if index <= number of 3d Points or Index > total number of Points.
Parameters (1)Index
- Dimension(Index: number): number
returns the dimension of the point of range Index. An exception is raised if Index <0 or Index > NbCurves.
Parameters (1)Index
- NbPoints(): number
returns the number of points of dimension 3D.
- NbPoints2d(): number
returns the number of points of dimension 2D.
- Transform(CuIndex: number, x: number, dx: number, y: number, dy: number, z: number, dz: number): void
Applies a transformation to the curve of range <CuIndex>. newx = x + dxoldx newy = y + dyoldy for all points of the curve. newz = z + dz*oldz.
Parameters (7)CuIndexxdxydyzdz
- Transform2d(CuIndex: number, x: number, dx: number, y: number, dy: number): void
Applies a transformation to the Curve of range <CuIndex>. newx = x + dxoldx newy = y + dyoldy for all points of the curve.
Parameters (5)CuIndexxdxydy