GeomEval
OCCT package GeomEval: GeomEval_AHTBezierCurve, GeomEval_AHTBezierSurface, GeomEval_CircularHelicoidSurface, GeomEval_CircularHelixCurve, and 19 more…
GeomEval_AHTBezierCurve
3D Algebraic-Hyperbolic-Trigonometric Bezier curve. Uses a mixed basis: {1, t, ..., t^k, sinh(alphat), cosh(alphat), sin(betat), cos(betat)}. The number of basis functions = algDegree + 1 + 2*(alpha>0) + 2*(beta>0) must equal NbPoles. Parameter range: [0, 1].
Constructors(2)
- constructor(thePoles: NCollection_Array1_gp_Pnt, theAlgDegree: number, theAlpha: number, theBeta: number): GeomEval_AHTBezierCurve
Non-rational constructor.
Parameters (4)thePoles—control pointstheAlgDegree—algebraic polynomial degree (>= 0)theAlpha—hyperbolic frequency (>= 0, 0 = no hyperbolic terms)theBeta—trigonometric frequency (>= 0, 0 = no trig terms)
- constructor(thePoles: NCollection_Array1_gp_Pnt, theWeights: NCollection_Array1_double, theAlgDegree: number, theAlpha: number, theBeta: number): GeomEval_AHTBezierCurve
Rational constructor.
Parameters (5)thePoles—control pointstheWeights—weights for each pole (must be > 0)theAlgDegree—algebraic polynomial degree (>= 0)theAlpha—hyperbolic frequency (>= 0, 0 = no hyperbolic terms)theBeta—trigonometric frequency (>= 0, 0 = no trig terms)
Static methods(2)
- get_type_name(): string
Instance methods(25)
Returns the array of poles.
Returns the array of weights.
- AlgDegree(): number
Returns the algebraic polynomial degree.
- Alpha(): number
Returns the hyperbolic frequency parameter.
- Beta(): number
Returns the trigonometric frequency parameter.
- NbPoles(): number
Returns the number of poles.
- IsRational(): boolean
Returns true if the curve is rational (has explicit weights).
- StartPoint(): gp_Pnt
Returns the start point of the curve (at parameter 0).
Returns the end point of the curve (at parameter 1).
- Reverse(): void
Reversal is not supported for this eval curve.
- ReversedParameter(U: number): number
Reversal is not supported for this eval curve.
Parameters (1)U
- FirstParameter(): number
Returns the value of the first parameter: 0.0.
- LastParameter(): number
Returns the value of the last parameter: 1.0.
- IsClosed(): boolean
Returns true if the curve is closed.
- IsPeriodic(): boolean
Returns false. The AHT-Bezier curve is not periodic.
Returns GeomAbs_CN.
- IsCN(N: number): boolean
Returns true for any N. The AHT-Bezier curve is infinitely differentiable.
Parameters (1)N
Computes the point at parameter U.
Parameters (1)U
- EvalD1(U: number): Geom_Curve_ResD1
Computes the point and first derivative at parameter U.
Parameters (1)U
- EvalD2(U: number): Geom_Curve_ResD2
Computes the point and first two derivatives at parameter U.
Parameters (1)U
- EvalD3(U: number): Geom_Curve_ResD3
Computes the point and first three derivatives at parameter U.
Parameters (1)U
Computes the N-th derivative at parameter U.
Parameters (2)U—the parameter valueN—the derivative order (must be >= 1)
Returnsthe N-th derivative vector
Transformation is not supported for this eval geometry.
Parameters (1)T
Creates a new object which is a copy of this curve.
GeomEval_AHTBezierSurface
Tensor-product Algebraic-Hyperbolic-Trigonometric Bezier surface. Uses a mixed basis in each parametric direction: {1, t, ..., t^k, sinh(alphat), cosh(alphat), sin(betat), cos(betat)}.
Separate AHT parameters per direction: (algDegreeU, alphaU, betaU) and (algDegreeV, alphaV, betaV).
The number of basis functions in each direction must equal the number of poles in that direction. Parameter range: U in [0, 1], V in [0, 1].
Constructors(2)
- constructor(thePoles: NCollection_Array2_gp_Pnt, theAlgDegreeU: number, theAlgDegreeV: number, theAlphaU: number, theAlphaV: number, theBetaU: number, theBetaV: number): GeomEval_AHTBezierSurface
Non-rational constructor.
Parameters (7)thePoles—2D array of control pointstheAlgDegreeU—algebraic polynomial degree in U (>= 0)theAlgDegreeV—algebraic polynomial degree in V (>= 0)theAlphaU—hyperbolic frequency in U (>= 0)theAlphaV—hyperbolic frequency in V (>= 0)theBetaU—trigonometric frequency in U (>= 0)theBetaV—trigonometric frequency in V (>= 0)
- constructor(thePoles: NCollection_Array2_gp_Pnt, theWeights: NCollection_Array2_double, theAlgDegreeU: number, theAlgDegreeV: number, theAlphaU: number, theAlphaV: number, theBetaU: number, theBetaV: number): GeomEval_AHTBezierSurface
Rational constructor.
Parameters (8)thePoles—2D array of control pointstheWeights—2D array of weights (must be > 0)theAlgDegreeU—algebraic polynomial degree in U (>= 0)theAlgDegreeV—algebraic polynomial degree in V (>= 0)theAlphaU—hyperbolic frequency in U (>= 0)theAlphaV—hyperbolic frequency in V (>= 0)theBetaU—trigonometric frequency in U (>= 0)theBetaV—trigonometric frequency in V (>= 0)
Static methods(2)
- get_type_name(): string
Instance methods(34)
Returns the 2D array of poles.
Returns the 2D array of weights.
- AlgDegreeU(): number
Returns the algebraic polynomial degree in U.
- AlgDegreeV(): number
Returns the algebraic polynomial degree in V.
- AlphaU(): number
Returns the hyperbolic frequency in U.
- AlphaV(): number
Returns the hyperbolic frequency in V.
- BetaU(): number
Returns the trigonometric frequency in U.
- BetaV(): number
Returns the trigonometric frequency in V.
- NbPolesU(): number
Returns the number of poles in U direction.
- NbPolesV(): number
Returns the number of poles in V direction.
- IsURational(): boolean
Returns true if the surface is rational in U direction.
- IsVRational(): boolean
Returns true if the surface is rational in V direction.
- UReverse(): void
Reversal is not supported for this eval surface.
- VReverse(): void
Reversal is not supported for this eval surface.
- UReversedParameter(U: number): number
Reversal is not supported for this eval surface.
Parameters (1)U
- VReversedParameter(V: number): number
Reversal is not supported for this eval surface.
Parameters (1)V
- Bounds(U1: number, U2: number, V1: number, V2: number): { U1: number; U2: number; V1: number; V2: number }
Returns the parametric bounds.
Parameters (4)U1—lower U bound (0)U2—upper U bound (1)V1—lower V bound (0)V2—upper V bound (1)
ReturnsA result object with fields:
U1: lower U bound (0)U2: upper U bound (1)V1: lower V bound (0)V2: upper V bound (1)
- IsUClosed(): boolean
Returns false. The AHT-Bezier surface is not closed in U.
- IsVClosed(): boolean
Returns false. The AHT-Bezier surface is not closed in V.
- IsUPeriodic(): boolean
Returns false. The AHT-Bezier surface is not periodic in U.
- IsVPeriodic(): boolean
Returns false. The AHT-Bezier surface is not periodic in V.
- UIso(U: number): Geom_Curve
Isoparametric curve extraction is not supported for this eval surface.
Parameters (1)U
- VIso(V: number): Geom_Curve
Isoparametric curve extraction is not supported for this eval surface.
Parameters (1)V
Returns GeomAbs_CN.
- IsCNu(N: number): boolean
Returns true for any N.
Parameters (1)N
- IsCNv(N: number): boolean
Returns true for any N.
Parameters (1)N
Computes the point at parameters (U, V).
Parameters (2)UV
- EvalD1(U: number, V: number): Geom_Surface_ResD1
Computes the point and first partial derivatives at (U, V).
Parameters (2)UV
- EvalD2(U: number, V: number): Geom_Surface_ResD2
Computes the point and partial derivatives up to 2nd order at (U, V).
Parameters (2)UV
- EvalD3(U: number, V: number): Geom_Surface_ResD3
Computes the point and partial derivatives up to 3rd order at (U, V).
Parameters (2)UV
Computes the derivative of order Nu in U and Nv in V.
Parameters (4)U—the u parameterV—the v parameterNu—derivative order in u (must be >= 0)Nv—derivative order in v (must be >= 0)
Returnsthe derivative vector
Transformation is not supported for this eval geometry.
Parameters (1)T
Creates a new object which is a copy of this surface.
GeomEval_CircularHelicoidSurface
Describes a circular helicoid surface. A ruled surface generated by a line segment rotating uniformly about an axis while translating along it. Named "circular" because the generating line sweeps circular helices at constant radius.
The parametric equation is:
where:
- O, XDir, YDir, ZDir are from the local coordinate system (
gp_Ax3), - P is the pitch (axial advance per 2*Pi turn, must be != 0).
The parametric range is (-inf, +inf) for both u and v. The surface is neither periodic nor closed. Continuity is GeomAbs_CN.
Constructors(1)
- constructor(thePosition: gp_Ax3, thePitch: number): GeomEval_CircularHelicoidSurface
Creates a circular helicoid surface.
Parameters (2)thePosition—the local coordinate systemthePitch—the axial advance per 2*Pi turn (must be != 0)
Static methods(2)
- get_type_name(): string
Instance methods(21)
- Pitch(): number
Returns the pitch.
- SetPitch(thePitch: number): void
Sets a new pitch value.
Parameters (1)thePitch—the new pitch (must be != 0)
- UReverse(): void
Reversal is not supported for this eval surface.
- VReverse(): void
Reversal is not supported for this eval surface.
- UReversedParameter(U: number): number
Reversal is not supported for this eval surface.
Parameters (1)U
- VReversedParameter(V: number): number
Reversal is not supported for this eval surface.
Parameters (1)V
- Bounds(U1: number, U2: number, V1: number, V2: number): { U1: number; U2: number; V1: number; V2: number }
Returns infinite bounds for both parameters.
Parameters (4)U1U2V1V2
ReturnsA result object with fields:
U1: updated value from the call.U2: updated value from the call.V1: updated value from the call.V2: updated value from the call.
- IsUClosed(): boolean
Returns false.
- IsVClosed(): boolean
Returns false.
- IsUPeriodic(): boolean
Returns false.
- IsVPeriodic(): boolean
Returns false.
- UIso(U: number): Geom_Curve
Isoparametric curve extraction is not supported for this eval surface.
Parameters (1)U
- VIso(V: number): Geom_Curve
Isoparametric curve extraction is not supported for this eval surface.
Parameters (1)V
Computes the point S(U, V) on the surface.
Parameters (2)UV
- EvalD1(U: number, V: number): Geom_Surface_ResD1
Computes the point and first partial derivatives at (U, V).
Parameters (2)UV
- EvalD2(U: number, V: number): Geom_Surface_ResD2
Computes the point and partial derivatives up to 2nd order at (U, V).
Parameters (2)UV
- EvalD3(U: number, V: number): Geom_Surface_ResD3
Computes the point and partial derivatives up to 3rd order at (U, V).
Parameters (2)UV
Computes the derivative of order Nu in u and Nv in v.
Parameters (4)UVNuNv
Transformation is not supported for this eval geometry.
Parameters (1)T
Creates a new object which is a copy of this surface.
GeomEval_CircularHelixCurve
Describes a circular helix in 3D space. A circular helix is an unbounded curve defined by a radius R, a pitch P (axial advance per full 2*Pi turn), and a coordinate system.
The parametric equation is:
where:
- O, XDir, YDir, ZDir are the origin and directions of the local coordinate system,
- R is the radius (> 0),
- P is the pitch (can be negative for left-handed helix).
The parameter range is (-inf, +inf). The curve is neither periodic nor closed. Continuity is GeomAbs_CN.
Constructors(1)
- constructor(thePosition: gp_Ax2, theRadius: number, thePitch: number): GeomEval_CircularHelixCurve
Creates a circular helix with the given coordinate system, radius, and pitch.
Parameters (3)thePosition—the local coordinate systemtheRadius—the helix radius (must be > 0)thePitch—the axial advance per 2*Pi turn (can be negative)
Static methods(2)
- get_type_name(): string
Instance methods(19)
Returns the local coordinate system.
- Radius(): number
Returns the helix radius.
- Pitch(): number
Returns the pitch (axial advance per 2*Pi turn).
- Reverse(): void
Reversal of parametrization is not supported for this eval geometry.
- ReversedParameter(U: number): number
Reversal of parametrization is not supported for this eval geometry.
Parameters (1)U
- FirstParameter(): number
Returns -
Precision::Infinite(). - LastParameter(): number
Returns
Precision::Infinite(). - IsClosed(): boolean
Returns false.
- IsPeriodic(): boolean
Returns false.
Returns GeomAbs_CN.
- IsCN(N: number): boolean
Returns true for any N >= 0.
Parameters (1)N
Computes the point at parameter U.
Parameters (1)U
- EvalD1(U: number): Geom_Curve_ResD1
Computes the point and first derivative at parameter U.
Parameters (1)U
- EvalD2(U: number): Geom_Curve_ResD2
Computes the point and first two derivatives at parameter U.
Parameters (1)U
- EvalD3(U: number): Geom_Curve_ResD3
Computes the point and first three derivatives at parameter U.
Parameters (1)U
Computes the N-th derivative at parameter U.
Parameters (2)U—the parameter valueN—the derivative order (must be >= 1)
Returnsthe N-th derivative vector
Transformation is not supported for this eval geometry.
Parameters (1)T
Creates a new object which is a copy of this curve.
GeomEval_EllipsoidSurface
Describes a triaxial ellipsoid surface. An ellipsoid is defined by three semi-axes A, B, C (all > 0) and is positioned in space by a coordinate system (a gp_Ax3 object), the origin of which is the center of the ellipsoid.
The parametric equation of the ellipsoid is:
where:
- O, XDir, YDir and ZDir are respectively the origin, the "X Direction", the "Y Direction" and the "Z Direction" of its local coordinate system, and
- A, B, C are the three semi-axes.
The parametric range is: - [0, 2*Pi] for u, and
- [-Pi/2, Pi/2] for v.
When A == B the surface degenerates to a spheroid (ellipsoid of revolution).
The implicit equation in local coordinates is:
Constructors(1)
- constructor(thePosition: gp_Ax3, theA: number, theB: number, theC: number): GeomEval_EllipsoidSurface
Creates a triaxial ellipsoid surface with the given local coordinate system and three semi-axes.
Parameters (4)thePosition—the local coordinate systemtheA—the semi-axis along XDir (must be > 0)theB—the semi-axis along YDir (must be > 0)theC—the semi-axis along ZDir (must be > 0)
Static methods(2)
- get_type_name(): string
Instance methods(26)
- SemiAxisA(): number
Returns the semi-axis A (along XDir).
- SemiAxisB(): number
Returns the semi-axis B (along YDir).
- SemiAxisC(): number
Returns the semi-axis C (along ZDir).
- SetSemiAxisA(theA: number): void
Assigns the value theA to the semi-axis A.
Parameters (1)theA—the new semi-axis value (must be > 0)
- SetSemiAxisB(theB: number): void
Assigns the value theB to the semi-axis B.
Parameters (1)theB—the new semi-axis value (must be > 0)
- SetSemiAxisC(theC: number): void
Assigns the value theC to the semi-axis C.
Parameters (1)theC—the new semi-axis value (must be > 0)
- UReverse(): void
Reversal is not supported for this eval surface.
- VReverse(): void
Reversal is not supported for this eval surface.
- UReversedParameter(U: number): number
Reversal is not supported for this eval surface.
Parameters (1)U
- VReversedParameter(V: number): number
Reversal is not supported for this eval surface.
Parameters (1)V
- Bounds(U1: number, U2: number, V1: number, V2: number): { U1: number; U2: number; V1: number; V2: number }
Returns the parametric bounds U1, U2, V1 and V2 of this ellipsoid.
Parameters (4)U1—lower U bound (0)U2—upper U bound (2*Pi)V1—lower V bound (-Pi/2)V2—upper V bound (Pi/2)
ReturnsA result object with fields:
U1: lower U bound (0)U2: upper U bound (2*Pi)V1: lower V bound (-Pi/2)V2: upper V bound (Pi/2)
- IsUClosed(): boolean
Returns True. The ellipsoid is closed in U (period 2*Pi).
- IsVClosed(): boolean
Returns False.
- IsUPeriodic(): boolean
Returns True. The ellipsoid is periodic in U (period 2*Pi).
- IsVPeriodic(): boolean
Returns False.
- UIso(U: number): Geom_Curve
Computes the U isoparametric curve. For a triaxial ellipsoid, the U isoparametric curve is not a standard
Geom_Curvetype.Parameters (1)U
- VIso(V: number): Geom_Curve
Computes the V isoparametric curve. For a triaxial ellipsoid, the V isoparametric curve is not a standard
Geom_Curvetype (it is an ellipse only when A == B).Parameters (1)V
Computes the point P(U, V) on the surface.
Parameters (2)UV
- EvalD1(U: number, V: number): Geom_Surface_ResD1
Computes the point and the first partial derivatives at (U, V).
Parameters (2)UV
- EvalD2(U: number, V: number): Geom_Surface_ResD2
Computes the point and partial derivatives up to 2nd order at (U, V).
Parameters (2)UV
- EvalD3(U: number, V: number): Geom_Surface_ResD3
Computes the point and partial derivatives up to 3rd order at (U, V).
Parameters (2)UV
Computes the derivative of order Nu in the direction u and Nv in the direction v.
Parameters (4)U—the u parameterV—the v parameterNu—derivative order in u (must be >= 0)Nv—derivative order in v (must be >= 0)
Returnsthe derivative vector
Transformation is not supported for this eval geometry.
Parameters (1)T
Creates a new object which is a copy of this ellipsoid.
- Coefficients(A1: number, A2: number, A3: number, B1: number, B2: number, B3: number, C1: number, C2: number, C3: number, D: number): { A1: number; A2: number; A3: number; B1: number; B2: number; B3: number; C1: number; C2: number; C3: number; D: number }
Returns the coefficients of the implicit equation of the quadric in the absolute Cartesian coordinate system:
In local coordinates the equation is: X^2/A^2 + Y^2/B^2 + Z^2/C^2 - 1 = 0.
Parameters (10)A1A2A3B1B2B3C1C2C3D
ReturnsA result object with fields:
A1: updated value from the call.A2: updated value from the call.A3: updated value from the call.B1: updated value from the call.B2: updated value from the call.B3: updated value from the call.C1: updated value from the call.C2: updated value from the call.C3: updated value from the call.D: updated value from the call.
GeomEval_HyperboloidSurface
Describes a hyperboloid of revolution surface (one-sheet or two-sheet).
A hyperboloid is defined by two semi-axis radii R1 and R2, a sheet mode, and is positioned in space by a coordinate system (a gp_Ax3 object), the origin of which is the center of the hyperboloid.
One-sheet parametrization:
Implicit equation in local coordinates:
Two-sheet parametrization (covers one sheet only):
Implicit equation in local coordinates:
The second sheet is not represented by this class.
The parametric range is:
- [0, 2*Pi] for u (periodic, closed), and
- (-inf, +inf) for v (not periodic, not closed).
Constructors(1)
- constructor(thePosition: gp_Ax3, theR1: number, theR2: number, theMode?: GeomEval_HyperboloidSurface_SheetMode): GeomEval_HyperboloidSurface
Creates a hyperboloid surface with the given local coordinate system, semi-axis radii, and sheet mode.
Parameters (4)thePosition—local coordinate systemtheR1—first semi-axis radius (must be > 0)theR2—second semi-axis radius (must be > 0)theMode—one-sheet or two-sheet mode
Static methods(2)
- get_type_name(): string
Instance methods(26)
- R1(): number
Returns the first semi-axis radius.
- R2(): number
Returns the second semi-axis radius.
- Mode(): GeomEval_HyperboloidSurface_SheetMode
Returns the sheet mode.
- SetR1(theR1: number): void
Assigns the value theR1 to the first semi-axis radius.
Parameters (1)theR1—the new first semi-axis radius (must be > 0)
- SetR2(theR2: number): void
Assigns the value theR2 to the second semi-axis radius.
Parameters (1)theR2—the new second semi-axis radius (must be > 0)
- SetMode(theMode: GeomEval_HyperboloidSurface_SheetMode): void
Sets the sheet mode.
Parameters (1)theMode—one-sheet or two-sheet mode
- UReverse(): void
Reversal is not supported for this eval surface.
- VReverse(): void
Reversal is not supported for this eval surface.
- UReversedParameter(U: number): number
Reversal is not supported for this eval surface.
Parameters (1)U
- VReversedParameter(V: number): number
Reversal is not supported for this eval surface.
Parameters (1)V
- Bounds(U1: number, U2: number, V1: number, V2: number): { U1: number; U2: number; V1: number; V2: number }
Returns the parametric bounds U1, U2, V1 and V2 of this hyperboloid.
Parameters (4)U1—lower U bound (0)U2—upper U bound (2*Pi)V1—lower V bound (-Precision::Infinite())V2—upper V bound (Precision::Infinite())
ReturnsA result object with fields:
U1: lower U bound (0)U2: upper U bound (2*Pi)V1: lower V bound (-Precision::Infinite())V2: upper V bound (Precision::Infinite())
- IsUClosed(): boolean
Returns True. The hyperboloid is closed in U (period 2*Pi).
- IsVClosed(): boolean
Returns False.
- IsUPeriodic(): boolean
Returns True. The hyperboloid is periodic in U (period 2*Pi).
- IsVPeriodic(): boolean
Returns False.
- UIso(U: number): Geom_Curve
Computes the U isoparametric curve. For a hyperboloid, no standard
Geom_Curverepresentation is available.Parameters (1)U
- VIso(V: number): Geom_Curve
Computes the V isoparametric curve. For a hyperboloid, no standard
Geom_Curverepresentation is available.Parameters (1)V
Computes the point P(U, V) on the surface.
Parameters (2)UV
- EvalD1(U: number, V: number): Geom_Surface_ResD1
Computes the point and the first partial derivatives at (U, V).
Parameters (2)UV
- EvalD2(U: number, V: number): Geom_Surface_ResD2
Computes the point and partial derivatives up to 2nd order at (U, V).
Parameters (2)UV
- EvalD3(U: number, V: number): Geom_Surface_ResD3
Computes the point and partial derivatives up to 3rd order at (U, V).
Parameters (2)UV
Computes the derivative of order Nu in the direction u and Nv in the direction v.
Parameters (4)U—the u parameterV—the v parameterNu—derivative order in u (must be >= 0)Nv—derivative order in v (must be >= 0)
Returnsthe derivative vector
Transformation is not supported for this eval geometry.
Parameters (1)T
Creates a new object which is a copy of this hyperboloid.
- Coefficients(A1: number, A2: number, A3: number, B1: number, B2: number, B3: number, C1: number, C2: number, C3: number, D: number): { A1: number; A2: number; A3: number; B1: number; B2: number; B3: number; C1: number; C2: number; C3: number; D: number }
Returns the coefficients of the implicit equation of the quadric in the absolute Cartesian coordinate system:
For one-sheet (local): X^2/R1^2 + Y^2/R1^2 - Z^2/R2^2 - 1 = 0. For two-sheet (local): X^2/R2^2 + Y^2/R2^2 - Z^2/R1^2 + 1 = 0.
Parameters (10)A1A2A3B1B2B3C1C2C3D
ReturnsA result object with fields:
A1: updated value from the call.A2: updated value from the call.A3: updated value from the call.B1: updated value from the call.B2: updated value from the call.B3: updated value from the call.C1: updated value from the call.C2: updated value from the call.C3: updated value from the call.D: updated value from the call.
GeomEval_HypParaboloidSurface
Describes a hyperbolic paraboloid (saddle surface).
A hyperbolic paraboloid is defined by two semi-axis lengths A and B, and is positioned in space by a coordinate system (a gp_Ax3 object), the origin of which is the saddle point.
The parametric equation (rectangular parametrization) is:
where:
- O, XDir, YDir and ZDir are respectively the origin, the "X Direction", the "Y Direction" and the "Z Direction" of its local coordinate system, and
- A and B are the semi-axis lengths (both > 0).
The parametric range is: - (-inf, +inf) for u, and
- (-inf, +inf) for v.
The surface is doubly ruled, not periodic, and not closed.
The implicit equation in local coordinates is:
Constructors(1)
- constructor(thePosition: gp_Ax3, theA: number, theB: number): GeomEval_HypParaboloidSurface
Creates a hyperbolic paraboloid surface with the given local coordinate system and semi-axis lengths.
Parameters (3)thePosition—the local coordinate systemtheA—the first semi-axis length (must be > 0)theB—the second semi-axis length (must be > 0)
Static methods(2)
- get_type_name(): string
Instance methods(24)
- SemiAxisA(): number
Returns the first semi-axis length A.
- SemiAxisB(): number
Returns the second semi-axis length B.
- SetSemiAxisA(theA: number): void
Assigns the value theA to the first semi-axis length.
Parameters (1)theA—the new first semi-axis length (must be > 0)
- SetSemiAxisB(theB: number): void
Assigns the value theB to the second semi-axis length.
Parameters (1)theB—the new second semi-axis length (must be > 0)
- UReverse(): void
Reversal is not supported for this eval surface.
- VReverse(): void
Reversal is not supported for this eval surface.
- UReversedParameter(U: number): number
Reversal is not supported for this eval surface.
Parameters (1)U
- VReversedParameter(V: number): number
Reversal is not supported for this eval surface.
Parameters (1)V
- Bounds(U1: number, U2: number, V1: number, V2: number): { U1: number; U2: number; V1: number; V2: number }
Returns the parametric bounds U1, U2, V1 and V2 of this surface.
Parameters (4)U1—lower U bound (-Precision::Infinite())U2—upper U bound (Precision::Infinite())V1—lower V bound (-Precision::Infinite())V2—upper V bound (Precision::Infinite())
ReturnsA result object with fields:
U1: lower U bound (-Precision::Infinite())U2: upper U bound (Precision::Infinite())V1: lower V bound (-Precision::Infinite())V2: upper V bound (Precision::Infinite())
- IsUClosed(): boolean
Returns False. The hyperbolic paraboloid is not closed in U.
- IsVClosed(): boolean
Returns False. The hyperbolic paraboloid is not closed in V.
- IsUPeriodic(): boolean
Returns False. The hyperbolic paraboloid is not periodic in U.
- IsVPeriodic(): boolean
Returns False. The hyperbolic paraboloid is not periodic in V.
- UIso(U: number): Geom_Curve
Computes the U isoparametric curve. For a hyperbolic paraboloid, no standard
Geom_Curverepresentation is available.Parameters (1)U
- VIso(V: number): Geom_Curve
Computes the V isoparametric curve. For a hyperbolic paraboloid, no standard
Geom_Curverepresentation is available.Parameters (1)V
Computes the point P(U, V) on the surface.
Parameters (2)UV
- EvalD1(U: number, V: number): Geom_Surface_ResD1
Computes the point and the first partial derivatives at (U, V).
Parameters (2)UV
- EvalD2(U: number, V: number): Geom_Surface_ResD2
Computes the point and partial derivatives up to 2nd order at (U, V).
Parameters (2)UV
- EvalD3(U: number, V: number): Geom_Surface_ResD3
Computes the point and partial derivatives up to 3rd order at (U, V).
Parameters (2)UV
Computes the derivative of order Nu in the direction u and Nv in the direction v.
Parameters (4)U—the u parameterV—the v parameterNu—derivative order in u (must be >= 0)Nv—derivative order in v (must be >= 0)
Returnsthe derivative vector
Transformation is not supported for this eval geometry.
Parameters (1)T
Creates a new object which is a copy of this hyperbolic paraboloid.
- Coefficients(A1: number, A2: number, A3: number, B1: number, B2: number, B3: number, C1: number, C2: number, C3: number, D: number): { A1: number; A2: number; A3: number; B1: number; B2: number; B3: number; C1: number; C2: number; C3: number; D: number }
Returns the coefficients of the implicit equation of the quadric in the absolute Cartesian coordinate system:
In local coordinates the equation is: X^2/A^2 - Y^2/B^2 - Z = 0.
Parameters (10)A1A2A3B1B2B3C1C2C3D
ReturnsA result object with fields:
A1: updated value from the call.A2: updated value from the call.A3: updated value from the call.B1: updated value from the call.B2: updated value from the call.B3: updated value from the call.C1: updated value from the call.C2: updated value from the call.C3: updated value from the call.D: updated value from the call.
GeomEval_ParaboloidSurface
Describes a circular paraboloid surface of revolution. A paraboloid is defined by its focal distance and is positioned in space by a coordinate system (a gp_Ax3 object), the origin of which is the vertex of the paraboloid.
The parametric equation of the paraboloid is:
where:
- O, XDir, YDir and ZDir are respectively the origin, the "X Direction", the "Y Direction" and the "Z Direction" of its local coordinate system, and
- F is the focal distance.
The parametric range is: - [0, 2*Pi] for u, and
- (-inf, +inf) for v.
The implicit equation in local coordinates is:
Constructors(1)
- constructor(thePosition: gp_Ax3, theFocal: number): GeomEval_ParaboloidSurface
Creates a paraboloid surface with the given local coordinate system and focal distance.
Parameters (2)thePosition—the local coordinate systemtheFocal—the focal distance (must be > 0)
Static methods(2)
- get_type_name(): string
Instance methods(22)
- Focal(): number
Returns the focal distance of this paraboloid.
- SetFocal(theFocal: number): void
Assigns the value theFocal to the focal distance of this paraboloid.
Parameters (1)theFocal—the new focal distance (must be > 0)
- UReverse(): void
Reversal is not supported for this eval surface.
- VReverse(): void
Reversal is not supported for this eval surface.
- UReversedParameter(U: number): number
Reversal is not supported for this eval surface.
Parameters (1)U
- VReversedParameter(V: number): number
Reversal is not supported for this eval surface.
Parameters (1)V
- Bounds(U1: number, U2: number, V1: number, V2: number): { U1: number; U2: number; V1: number; V2: number }
Returns the parametric bounds U1, U2, V1 and V2 of this paraboloid.
Parameters (4)U1—lower U bound (0)U2—upper U bound (2*Pi)V1—lower V bound (-Precision::Infinite())V2—upper V bound (Precision::Infinite())
ReturnsA result object with fields:
U1: lower U bound (0)U2: upper U bound (2*Pi)V1: lower V bound (-Precision::Infinite())V2: upper V bound (Precision::Infinite())
- IsUClosed(): boolean
Returns True. The paraboloid is closed in U (period 2*Pi).
- IsVClosed(): boolean
Returns False.
- IsUPeriodic(): boolean
Returns True. The paraboloid is periodic in U (period 2*Pi).
- IsVPeriodic(): boolean
Returns False.
- UIso(U: number): Geom_Curve
Computes the U isoparametric curve. For a paraboloid, the U isoparametric curve is a parabola, which is not a standard
Geom_Curvetype.Parameters (1)U
- VIso(V: number): Geom_Curve
Computes the V isoparametric curve. For a paraboloid, the V isoparametric curve is a circle of radius |v|, which degenerates to a point at v=0.
Parameters (1)V
Computes the point P(U, V) on the surface.
Parameters (2)UV
- EvalD1(U: number, V: number): Geom_Surface_ResD1
Computes the point and the first partial derivatives at (U, V).
Parameters (2)UV
- EvalD2(U: number, V: number): Geom_Surface_ResD2
Computes the point and partial derivatives up to 2nd order at (U, V).
Parameters (2)UV
- EvalD3(U: number, V: number): Geom_Surface_ResD3
Computes the point and partial derivatives up to 3rd order at (U, V).
Parameters (2)UV
Computes the derivative of order Nu in the direction u and Nv in the direction v.
Parameters (4)U—the u parameterV—the v parameterNu—derivative order in u (must be >= 0)Nv—derivative order in v (must be >= 0)
Returnsthe derivative vector
Transformation is not supported for this eval geometry.
Parameters (1)T
Creates a new object which is a copy of this paraboloid.
- Coefficients(A1: number, A2: number, A3: number, B1: number, B2: number, B3: number, C1: number, C2: number, C3: number, D: number): { A1: number; A2: number; A3: number; B1: number; B2: number; B3: number; C1: number; C2: number; C3: number; D: number }
Returns the coefficients of the implicit equation of the quadric in the absolute Cartesian coordinate system:
In local coordinates the equation is: X^2 + Y^2 - 4FZ = 0.
Parameters (10)A1A2A3B1B2B3C1C2C3D
ReturnsA result object with fields:
A1: updated value from the call.A2: updated value from the call.A3: updated value from the call.B1: updated value from the call.B2: updated value from the call.B3: updated value from the call.C1: updated value from the call.C2: updated value from the call.C3: updated value from the call.D: updated value from the call.
GeomEval_RepCurveDesc_Base
Static methods(2)
- get_type_name(): string
Instance methods(2)
- GetKind(): GeomEval_RepCurveDesc_Base_Kind
Properties(1)
GeomEval_RepCurveDesc_DerivBounded
Constructors(1)
Static methods(2)
- get_type_name(): string
Instance methods(2)
- GetKind(): GeomEval_RepCurveDesc_Base_Kind
Properties(1)
GeomEval_RepCurveDesc_Domain1d
Constructors(1)
Instance methods(1)
- Contains(theU: number): booleanParameters (1)
theU
Properties(2)
GeomEval_RepCurveDesc_Full
Constructors(1)
Static methods(2)
- get_type_name(): string
Instance methods(2)
- GetKind(): GeomEval_RepCurveDesc_Base_Kind
GeomEval_RepCurveDesc_Map1d
Constructors(1)
Instance methods(3)
- IsIdentity(): boolean
- IsValid(): boolean
- Map(theU: number): numberParameters (1)
theU
Properties(2)
GeomEval_RepCurveDesc_Mapped
Constructors(1)
Static methods(2)
- get_type_name(): string
Instance methods(2)
- GetKind(): GeomEval_RepCurveDesc_Base_Kind
Properties(3)
GeomEval_RepSurfaceDesc_Base
Static methods(2)
- get_type_name(): string
Instance methods(2)
- GetKind(): GeomEval_RepSurfaceDesc_Base_Kind
Properties(1)
GeomEval_RepSurfaceDesc_DerivBounded
Constructors(1)
Static methods(2)
- get_type_name(): string
Instance methods(2)
- GetKind(): GeomEval_RepSurfaceDesc_Base_Kind
Properties(1)
GeomEval_RepSurfaceDesc_Domain2d
Constructors(1)
Instance methods(1)
- Contains(theU: number, theV: number): booleanParameters (2)
theUtheV
Properties(4)
GeomEval_RepSurfaceDesc_Full
Constructors(1)
Static methods(2)
- get_type_name(): string
Instance methods(2)
- GetKind(): GeomEval_RepSurfaceDesc_Base_Kind
GeomEval_RepSurfaceDesc_Map2d
Constructors(1)
Instance methods(3)
- IsIdentity(): boolean
- IsValid(): boolean
- Map(theU: number, theV: number, theURep: number, theVRep: number): { theURep: number; theVRep: number }Parameters (4)
theUtheVtheUReptheVRep
Properties(5)
GeomEval_RepSurfaceDesc_Mapped
Constructors(1)
Static methods(2)
- get_type_name(): string
Instance methods(2)
- GetKind(): GeomEval_RepSurfaceDesc_Base_Kind
Properties(3)
GeomEval_SineWaveCurve
Describes a 3D sine wave curve. The curve lies in the plane defined by the local coordinate system, oscillating along YDir with propagation along XDir.
The parametric equation is:
where:
- O, XDir, YDir are from the local coordinate system,
- A is the amplitude (> 0),
- omega is the angular frequency (> 0),
- phi is the phase shift.
The parameter range is (-inf, +inf). The curve is not periodic.
Constructors(1)
- constructor(thePosition: gp_Ax2, theAmplitude: number, theOmega: number, thePhase?: number): GeomEval_SineWaveCurve
Creates a 3D sine wave curve.
Parameters (4)thePosition—the local coordinate systemtheAmplitude—the wave amplitude (must be > 0)theOmega—the angular frequency (must be > 0)thePhase—the phase shift (default 0)
Static methods(2)
- get_type_name(): string
Instance methods(20)
Returns the local coordinate system.
- Amplitude(): number
Returns the amplitude.
- Omega(): number
Returns the angular frequency.
- Phase(): number
Returns the phase shift.
- Reverse(): void
Reversal is not supported for this eval curve.
- ReversedParameter(U: number): number
Reversal is not supported for this eval curve.
Parameters (1)U
- FirstParameter(): number
Returns -
Precision::Infinite(). - LastParameter(): number
Returns
Precision::Infinite(). - IsClosed(): boolean
Returns false.
- IsPeriodic(): boolean
Returns false.
Returns GeomAbs_CN.
- IsCN(N: number): boolean
Returns true for any N >= 0.
Parameters (1)N
Computes the point at parameter U.
Parameters (1)U
- EvalD1(U: number): Geom_Curve_ResD1
Computes the point and first derivative at parameter U.
Parameters (1)U
- EvalD2(U: number): Geom_Curve_ResD2
Computes the point and first two derivatives at parameter U.
Parameters (1)U
- EvalD3(U: number): Geom_Curve_ResD3
Computes the point and first three derivatives at parameter U.
Parameters (1)U
Computes the N-th derivative at parameter U.
Parameters (2)UN
Transformation is not supported for this eval geometry.
Parameters (1)T
Creates a new object which is a copy of this curve.
GeomEval_TBezierCurve
3D Trigonometric Bezier curve. Uses a trigonometric Bernstein-like basis over the space {1, sin(alphat), cos(alphat), ..., sin(nalphat), cos(nalphat)}.
The parameter domain is [0, Pi/alpha]. The number of control points is 2*n + 1 for order n.
The alpha parameter controls the frequency of the trigonometric basis. A T-Bezier curve of order n with poles P_0, P_1, ..., P_{2n} is:
where:
- T_0(t) = 1
- T_{2k-1}(t) = sin(k * alpha * t), for k = 1..n
- T_{2k}(t) = cos(k * alpha * t), for k = 1..n
For rational curves, each pole is weighted:
Constructors(2)
- constructor(thePoles: NCollection_Array1_gp_Pnt, theAlpha: number): GeomEval_TBezierCurve
Constructs a non-rational T-Bezier curve from poles and alpha.
Parameters (2)thePoles—control points (1-based, size must be odd >= 3)theAlpha—frequency parameter (must be > 0)
- constructor(thePoles: NCollection_Array1_gp_Pnt, theWeights: NCollection_Array1_double, theAlpha: number): GeomEval_TBezierCurve
Constructs a rational T-Bezier curve.
Parameters (3)thePoles—control points (1-based, size must be odd >= 3)theWeights—weights (same size as poles, all > 0)theAlpha—frequency parameter (must be > 0)
Static methods(2)
- get_type_name(): string
Instance methods(24)
Returns the poles array.
Returns the weights array (empty if non-rational).
- Alpha(): number
Returns the frequency parameter alpha.
- NbPoles(): number
Returns the number of poles.
- Order(): number
Returns the trigonometric order n (NbPoles = 2*n + 1).
- IsRational(): boolean
Returns true if the curve is rational.
- StartPoint(): gp_Pnt
Returns the start point C(0).
Returns the end point C(Pi/alpha).
- Reverse(): void
Reversal is not supported for this eval curve.
- ReversedParameter(U: number): number
Reversal is not supported for this eval curve.
Parameters (1)U
- FirstParameter(): number
Returns the first parameter value: 0.0.
- LastParameter(): number
Returns the last parameter value: Pi/alpha.
- IsClosed(): boolean
Returns true if StartPoint and EndPoint coincide.
- IsPeriodic(): boolean
Returns false. T-Bezier curves are not periodic.
Returns GeomAbs_CN. T-Bezier curves are infinitely differentiable.
- IsCN(N: number): boolean
Returns true for all N. T-Bezier curves are infinitely differentiable.
Parameters (1)N
Computes the point C(U).
Parameters (1)U
- EvalD1(U: number): Geom_Curve_ResD1
Computes the point and first derivative at U.
Parameters (1)U
- EvalD2(U: number): Geom_Curve_ResD2
Computes the point and first two derivatives at U.
Parameters (1)U
- EvalD3(U: number): Geom_Curve_ResD3
Computes the point and first three derivatives at U.
Parameters (1)U
Computes the N-th derivative at U.
Parameters (2)U—parameter valueN—derivative order (must be >= 1)
Returnsthe N-th derivative vector
Transformation is not supported for this eval geometry.
Parameters (1)T
Creates a new object which is a copy of this T-Bezier curve.
GeomEval_TBezierSurface
Tensor-product Trigonometric Bezier surface. Uses trigonometric Bernstein-like bases in both U and V directions over the space {1, sin(alphat), cos(alphat), ..., sin(nalphat), cos(nalphat)}.
Parameter domain: U in [0, Pi/alphaU], V in [0, Pi/alphaV]. Number of control points: (2nU + 1) x (2nV + 1) for orders nU, nV.
The surface is:
where Bu_i and Bv_j are trigonometric basis functions in U and V respectively.
For rational surfaces:
Constructors(2)
- constructor(thePoles: NCollection_Array2_gp_Pnt, theAlphaU: number, theAlphaV: number): GeomEval_TBezierSurface
Constructs a non-rational T-Bezier surface from poles and alpha parameters.
Parameters (3)thePoles—control points grid (row count and col count must be odd >= 3)theAlphaU—frequency parameter in U direction (must be > 0)theAlphaV—frequency parameter in V direction (must be > 0)
- constructor(thePoles: NCollection_Array2_gp_Pnt, theWeights: NCollection_Array2_double, theAlphaU: number, theAlphaV: number): GeomEval_TBezierSurface
Constructs a rational T-Bezier surface.
Parameters (4)thePoles—control points gridtheWeights—weights grid (same dimensions as poles, all > 0)theAlphaU—frequency parameter in U direction (must be > 0)theAlphaV—frequency parameter in V direction (must be > 0)
Static methods(2)
- get_type_name(): string
Instance methods(31)
Returns the poles grid.
Returns the weights grid (empty if non-rational).
- AlphaU(): number
Returns the frequency parameter alpha in the U direction.
- AlphaV(): number
Returns the frequency parameter alpha in the V direction.
- NbUPoles(): number
Returns the number of poles in the U direction.
- NbVPoles(): number
Returns the number of poles in the V direction.
- OrderU(): number
Returns the trigonometric order in U (NbUPoles = 2*nU + 1).
- OrderV(): number
Returns the trigonometric order in V (NbVPoles = 2*nV + 1).
- IsRational(): boolean
Returns true if the surface is rational.
- UReverse(): void
Reversal is not supported for this eval surface.
- UReversedParameter(U: number): number
Reversal is not supported for this eval surface.
Parameters (1)U
- VReverse(): void
Reversal is not supported for this eval surface.
- VReversedParameter(V: number): number
Reversal is not supported for this eval surface.
Parameters (1)V
- Bounds(U1: number, U2: number, V1: number, V2: number): { U1: number; U2: number; V1: number; V2: number }
Returns the parametric bounds.
Parameters (4)U1—lower U bound (0)U2—upper U bound (Pi/alphaU)V1—lower V bound (0)V2—upper V bound (Pi/alphaV)
ReturnsA result object with fields:
U1: lower U bound (0)U2: upper U bound (Pi/alphaU)V1: lower V bound (0)V2: upper V bound (Pi/alphaV)
- IsUClosed(): boolean
Returns true if the surface is closed in U.
- IsVClosed(): boolean
Returns true if the surface is closed in V.
- IsUPeriodic(): boolean
Returns false. T-Bezier surfaces are not periodic in U.
- IsVPeriodic(): boolean
Returns false. T-Bezier surfaces are not periodic in V.
Returns GeomAbs_CN. T-Bezier surfaces are infinitely differentiable.
- IsCNu(N: number): boolean
Returns true for all N. T-Bezier surfaces are infinitely differentiable in U.
Parameters (1)N
- IsCNv(N: number): boolean
Returns true for all N. T-Bezier surfaces are infinitely differentiable in V.
Parameters (1)N
- UIso(U: number): Geom_Curve
Isoparametric curve extraction is not supported for this eval surface.
Parameters (1)U
- VIso(V: number): Geom_Curve
Isoparametric curve extraction is not supported for this eval surface.
Parameters (1)V
Computes the point S(U, V).
Parameters (2)UV
- EvalD1(U: number, V: number): Geom_Surface_ResD1
Computes the point and first partial derivatives at (U, V).
Parameters (2)UV
- EvalD2(U: number, V: number): Geom_Surface_ResD2
Computes the point and partial derivatives up to 2nd order at (U, V).
Parameters (2)UV
- EvalD3(U: number, V: number): Geom_Surface_ResD3
Computes the point and partial derivatives up to 3rd order at (U, V).
Parameters (2)UV
Computes the derivative of order Nu in U and Nv in V.
Parameters (4)U—the u parameterV—the v parameterNu—derivative order in U (must be >= 0)Nv—derivative order in V (must be >= 0)
Returnsthe derivative vector
Transformation is not supported for this eval geometry.
Parameters (1)T
Creates a new object which is a copy of this T-Bezier surface.