IntSurf
OCCT package IntSurf: IntSurf, IntSurf_Couple, IntSurf_InteriorPoint, IntSurf_InteriorPointTool, and 9 more bound classes.
IntSurf
This package provides resources for all the packages concerning the intersection between surfaces.
Constructors(1)
Static methods(2)
- MakeTransition(TgFirst: gp_Vec, TgSecond: gp_Vec, Normal: gp_Dir, TFirst: IntSurf_Transition, TSecond: IntSurf_Transition): void
Computes the transition of the intersection point between the two lines. TgFirst is the tangent vector of the first line. TgSecond is the tangent vector of the second line. Normal is the direction used to orientate the cross product TgFirst^TgSecond. TFirst is the transition of the point on the first line. TSecond is the transition of the point on the second line.
Parameters (5)TgFirstTgSecondNormalTFirst—Mutated in place; read the updated value from this argument after the call.TSecond—Mutated in place; read the updated value from this argument after the call.
- SetPeriod(theFirstSurf: Adaptor3d_Surface, theSecondSurf: Adaptor3d_Surface, theArrOfPeriod: [number, number, number, number]): void
Fills theArrOfPeriod array by the period values of theFirstSurf and theSecondSurf. [0] = U-period of theFirstSurf, [1] = V-period of theFirstSurf, [2] = U-period of theSecondSurf, [3] = V-period of theSecondSurf.
If surface is not periodic in correspond direction then its period is considered to be equal to 0.Parameters (3)theFirstSurftheSecondSurftheArrOfPeriod
IntSurf_Couple
creation d 'un couple de 2 entiers
Constructors(2)
- constructor(Index1: number, Index2: number): IntSurf_CoupleParameters (2)
Index1Index2
Instance methods(2)
IntSurf_InteriorPoint
Definition of a point solution of the intersection between an implicit an a parametrised surface. These points are passing points on the intersection lines, or starting points for the closed lines on the parametrised surface.
Constructors(2)
- constructor(P: gp_Pnt, U: number, V: number, Direc: gp_Vec, Direc2d: gp_Vec2d): IntSurf_InteriorPointParameters (5)
PUVDirecDirec2d
Instance methods(7)
- Parameters (5)
PUVDirecDirec2d
Returns the 3d coordinates of the interior point.
- Parameters(U: number, V: number): { U: number; V: number }
Returns the parameters of the interior point on the parametric surface.
Parameters (2)UV
ReturnsA result object with fields:
U: updated value from the call.V: updated value from the call.
- UParameter(): number
Returns the first parameter of the interior point on the parametric surface.
- VParameter(): number
Returns the second parameter of the interior point on the parametric surface.
Returns the tangent at the intersection in 3d space associated to the interior point.
Returns the tangent at the intersection in the parametric space of the parametric surface.
IntSurf_InteriorPointTool
This class provides a tool on the "interior point" that can be used to instantiates the Walking algorithms (see package IntWalk).
Constructors(1)
Static methods(4)
- Value3d(PStart: IntSurf_InteriorPoint): gp_Pnt
Returns the 3d coordinates of the starting point.
Parameters (1)PStart
- Value2d(PStart: IntSurf_InteriorPoint, U: number, V: number): { U: number; V: number }
Returns the <U,V> parameters which are associated with.
it's the parameters which start the marching algorithmParameters (3)PStartUV
ReturnsA result object with fields:
U: updated value from the call.V: updated value from the call.
- Direction3d(PStart: IntSurf_InteriorPoint): gp_Vec
returns the tangent at the intersection in 3d space associated to
Parameters (1)PStart
- Direction2d(PStart: IntSurf_InteriorPoint): gp_Dir2d
returns the tangent at the intersection in the parametric space of the parametrized surface.This tangent is associated to the value2d
Parameters (1)PStart
IntSurf_LineOn2S
Constructors(1)
- constructor(theAllocator?: TDF_HAllocator): IntSurf_LineOn2SParameters (1)
theAllocator
Static methods(2)
- get_type_name(): string
Instance methods(15)
- Add(P: IntSurf_PntOn2S): void
Adds a point in the line.
Parameters (1)P
- NbPoints(): number
Returns the number of points in the line.
- Value(Index: number): IntSurf_PntOn2S
Returns the point of range Index in the line.
Parameters (1)Index
- Value(Index: number, P: IntSurf_PntOn2S): void
Replaces the point of range Index in the line.
Parameters (2)IndexP
- Reverse(): void
Reverses the order of points of the line.
- Split(Index: number): IntSurf_LineOn2S
Keeps in <me> the points 1 to Index-1, and returns the items Index to the end.
Parameters (1)Index
Sets the 3D point of the Index-th PntOn2S.
Parameters (2)IndexthePnt
- SetUV(Index: number, OnFirst: boolean, U: number, V: number): void
Sets the parametric coordinates on one of the surfaces of the point of range Index in the line.
Parameters (4)IndexOnFirstUV
- Clear(): void
- InsertBefore(I: number, P: IntSurf_PntOn2S): voidParameters (2)
IP
- RemovePoint(I: number): voidParameters (1)
I
- IsOutSurf1Box(theP: gp_Pnt2d): boolean
Returns TRUE if theP is out of the box built from the points on 1st surface.
Parameters (1)theP
- IsOutSurf2Box(theP: gp_Pnt2d): boolean
Returns TRUE if theP is out of the box built from the points on 2nd surface.
Parameters (1)theP
Returns TRUE if theP is out of the box built from 3D-points.
Parameters (1)theP
IntSurf_PathPoint
Constructors(2)
- constructor(P: gp_Pnt, U: number, V: number): IntSurf_PathPointParameters (3)
PUV
Instance methods(13)
- Parameters (3)
PUV
- AddUV(U: number, V: number): voidParameters (2)
UV
- SetDirections(V: gp_Vec, D: gp_Dir2d): voidParameters (2)
VD
- SetTangency(Tang: boolean): voidParameters (1)
Tang
- SetPassing(Pass: boolean): voidParameters (1)
Pass
- Value2d(U: number, V: number): { U: number; V: number }Parameters (2)
UV
- IsPassingPnt(): boolean
- IsTangent(): boolean
- Multiplicity(): number
- Parameters(Index: number, U: number, V: number): { U: number; V: number }Parameters (3)
IndexUV
IntSurf_PathPointTool
Constructors(1)
Static methods(8)
- Value3d(PStart: IntSurf_PathPoint): gp_Pnt
Returns the 3d coordinates of the starting point.
Parameters (1)PStart
- Value2d(PStart: IntSurf_PathPoint, U: number, V: number): { U: number; V: number }
Returns the <U, V> parameters which are associated with.
it's the parameters which start the marching algorithmParameters (3)PStartUV
ReturnsA result object with fields:
U: updated value from the call.V: updated value from the call.
- IsPassingPnt(PStart: IntSurf_PathPoint): boolean
Returns True if the point is a point on a non-oriented arc, which means that the intersection line does not stop at such a point but just go through such a point. IsPassingPnt is True when IsOnArc is True.
Parameters (1)PStart
- IsTangent(PStart: IntSurf_PathPoint): boolean
Returns True if the surfaces are tangent at this point. IsTangent can be True when IsOnArc is True if IsPassingPnt is True and IsTangent is True,this point is a stopped point.
Parameters (1)PStart
- Direction3d(PStart: IntSurf_PathPoint): gp_Vec
returns the tangent at the intersection in 3d space associated to
an exception is raised if IsTangent is true.Parameters (1)PStart
- Direction2d(PStart: IntSurf_PathPoint): gp_Dir2d
returns the tangent at the intersection in the parametric space of the parametrized surface.This tangent is associated to the value2d la tangente a un sens signifiant (indique le sens de chemin ement) an exception is raised if IsTangent is true.
Parameters (1)PStart
- Multiplicity(PStart: IntSurf_PathPoint): number
Returns the multiplicity of the point i-e the number of auxillar parameters associated to the point which the principal parameters are given by Value2d.
Parameters (1)PStart
- Parameters(PStart: IntSurf_PathPoint, Mult: number, U: number, V: number): { U: number; V: number }
Parametric coordinates associated to the multiplicity. An exception is raised if Mult<=0 or Mult>multiplicity.
Parameters (4)PStartMultUV
ReturnsA result object with fields:
U: updated value from the call.V: updated value from the call.
IntSurf_PntOn2S
This class defines the geometric information for an intersection point between 2 surfaces : The coordinates ( Pnt from gp ), and two parametric coordinates.
Constructors(1)
Empty constructor.
Instance methods(12)
Sets the value of the point in 3d space.
Parameters (1)Pt
- SetValue(OnFirst: boolean, U: number, V: number): void
Set the values of the point in the parametric space of one of the surface.
Parameters (3)OnFirstUV
Sets the values of the point in 3d space, and in the parametric space of one of the surface.
Parameters (4)PtOnFirstUV
- SetValue(U1: number, V1: number, U2: number, V2: number): void
Set the values of the point in the parametric space of one of the surface.
Parameters (4)U1V1U2V2
Sets the values of the point in 3d space, and in the parametric space of each surface.
Parameters (5)PtU1V1U2V2
Returns the point in 3d space.
- ValueOnSurface(OnFirst: boolean): gp_Pnt2d
Returns the point in 2d space of one of the surfaces.
Parameters (1)OnFirst
- ParametersOnS1(U1: number, V1: number): { U1: number; V1: number }
Returns the parameters of the point on the first surface.
Parameters (2)U1V1
ReturnsA result object with fields:
U1: updated value from the call.V1: updated value from the call.
- ParametersOnS2(U2: number, V2: number): { U2: number; V2: number }
Returns the parameters of the point on the second surface.
Parameters (2)U2V2
ReturnsA result object with fields:
U2: updated value from the call.V2: updated value from the call.
- ParametersOnSurface(OnFirst: boolean, U: number, V: number): { U: number; V: number }
Returns the parameters of the point in the parametric space of one of the surface.
Parameters (3)OnFirstUV
ReturnsA result object with fields:
U: updated value from the call.V: updated value from the call.
- Parameters(U1: number, V1: number, U2: number, V2: number): { U1: number; V1: number; U2: number; V2: number }
Returns the parameters of the point on both surfaces.
Parameters (4)U1V1U2V2
ReturnsA result object with fields:
U1: updated value from the call.V1: updated value from the call.U2: updated value from the call.V2: updated value from the call.
- IsSame(theOtherPoint: IntSurf_PntOn2S, theTol3D?: number, theTol2D?: number): boolean
Returns TRUE if 2D- and 3D-coordinates of theOterPoint are equal to corresponding coordinates of me (with given tolerance). If theTol2D < 0.0 we will compare 3D-points only.
Parameters (3)theOtherPointtheTol3DtheTol2D
IntSurf_Quadric
Constructors(6)
- Parameters (1)
P
- Parameters (1)
C
- Parameters (1)
S
- Parameters (1)
C
- Parameters (1)
T
Instance methods(20)
- Parameters (1)
P
- SetValue(C: gp_Cylinder): voidParameters (1)
C
- Parameters (1)
S
- Parameters (1)
C
- Parameters (1)
T
- Parameters (1)
P
- Parameters (1)
P
- ValAndGrad(P: gp_Pnt, Dist: number, Grad: gp_Vec): { Dist: number }Parameters (3)
PDistGrad
- Parameters (2)
UV
- Parameters (5)
UVPD1UD1V
- Parameters (4)
UVNuNv
- Parameters (2)
UV
- Parameters (1)
P
- Parameters(P: gp_Pnt, U: number, V: number): { U: number; V: number }Parameters (3)
PUV
IntSurf_QuadricTool
This class provides a tool on a quadric that can be used to instantiates the Walking algorithms (see package IntWalk) with a Quadric from IntSurf as implicit surface.
Constructors(1)
Static methods(4)
- Value(Quad: IntSurf_Quadric, X: number, Y: number, Z: number): number
Returns the value of the function.
Parameters (4)QuadXYZ
- Gradient(Quad: IntSurf_Quadric, X: number, Y: number, Z: number, V: gp_Vec): void
Returns the gradient of the function.
Parameters (5)QuadXYZV—Mutated in place; read the updated value from this argument after the call.
- ValueAndGradient(Quad: IntSurf_Quadric, X: number, Y: number, Z: number, Val: number, Grad: gp_Vec): { Val: number }
Returns the value and the gradient.
Parameters (6)QuadXYZValGrad—Mutated in place; read the updated value from this argument after the call.
ReturnsA result object with fields:
Val: updated value from the call.
- Tolerance(Quad: IntSurf_Quadric): number
returns the tolerance of the zero of the implicit function
Parameters (1)Quad
IntSurf_Situation
Properties(3)
IntSurf_Transition
Definition of the transition at the intersection between an intersection line and a restriction curve on a surface.
Constructors(3)
Empty constructor. Creates an UNDECIDED transition.
- constructor(Tangent: boolean, Type: IntSurf_TypeTrans): IntSurf_Transition
Create a IN or OUT transition.
Parameters (2)TangentType
- constructor(Tangent: boolean, Situ: IntSurf_Situation, Oppos: boolean): IntSurf_Transition
Create a TOUCH transition.
Parameters (3)TangentSituOppos
Instance methods(7)
- SetValue(Tangent: boolean, Type: IntSurf_TypeTrans): void
Set the values of an IN or OUT transition.
Parameters (2)TangentType
- SetValue(Tangent: boolean, Situ: IntSurf_Situation, Oppos: boolean): void
Set the values of a TOUCH transition.
Parameters (3)TangentSituOppos
- SetValue(): void
Set the values of an UNDECIDED transition.
Returns the type of Transition (in/out/touch/undecided) for the arc given by value. This the transition of the intersection line compared to the Arc of restriction, i-e when the function returns INSIDE for example, it means that the intersection line goes inside the part of plane limited by the arc of restriction.
- IsTangent(): boolean
Returns TRUE if the point is tangent to the arc given by Value. An exception is raised if TransitionType returns UNDECIDED.
Returns a significant value if TransitionType returns TOUCH. In this case, the function returns : INSIDE when the intersection line remains inside the Arc, OUTSIDE when it remains outside the Arc, UNKNOWN when the calsulus cannot give results. If TransitionType returns IN, or OUT, or UNDECIDED, a exception is raised.
- IsOpposite(): boolean
returns a significant value if TransitionType returns TOUCH. In this case, the function returns true when the 2 curves locally define two different parts of the space. If TransitionType returns IN or OUT or UNDECIDED, an exception is raised.