class Intersection from IntPatch
- ---Purpose: This class provides a generic algorithm to intersect
+ ---Purpose: This class provides a generic algorithm to intersect
-- 2 surfaces.
uses
- HVertex from Adaptor3d,
- HCurve2d from Adaptor2d,
- HSurface from Adaptor3d,
- Point from IntPatch,
+ HVertex from Adaptor3d,
+ HCurve2d from Adaptor2d,
+ HSurface from Adaptor3d,
+ Point from IntPatch,
SequenceOfPoint from IntPatch,
- TopolTool from Adaptor3d,
- SequenceOfLine from IntPatch,
- Line from IntPatch,
- --amv
- ListOfPntOn2S from IntSurf
+ TopolTool from Adaptor3d,
+ SequenceOfLine from IntPatch,
+ Line from IntPatch,
+ SurfaceType from GeomAbs,
+ ListOfPntOn2S from IntSurf
raises NotDone from StdFail,
OutOfRange from Standard,
S2: HSurface from Adaptor3d; D2: TopolTool from Adaptor3d;
TolArc,TolTang: Real from Standard)
- returns Intersection from IntPatch
-
- raises ConstructionError from Standard;
+ returns Intersection from IntPatch
+ raises ConstructionError from Standard;
Create (S1: HSurface from Adaptor3d; D1: TopolTool from Adaptor3d;
TolArc,TolTang: Real from Standard)
- returns Intersection from IntPatch
-
- raises ConstructionError from Standard;
+ returns Intersection from IntPatch
+ raises ConstructionError from Standard;
SetTolerances(me : in out;
TolArc : Real from Standard;
- TolTang : Real from Standard;
- UVMaxStep: Real from Standard;
- Fleche : Real from Standard)
+ TolTang : Real from Standard;
+ UVMaxStep: Real from Standard;
+ Fleche : Real from Standard)
- ---Purpose: Set the tolerances used by the algorithms:
- -- --- Implicit - Parametric
- -- --- Parametric - Parametric
- -- --- Implicit - Implicit
- --
- -- TolArc is used to compute the intersections
- -- between the restrictions of a surface and a
- -- walking line.
- --
- -- TolTang is used to compute the points on a walking
- -- line, and in geometric algorithms.
- --
- -- Fleche is a parameter used in the walking
- -- algorithms to provide small curvatures on a line.
- --
- -- UVMaxStep is a parameter used in the walking
- -- algorithms to compute the distance between to
- -- points in their respective parametrtic spaces.
- --
- is static;
-
- Perform (me: in out;
- S1: HSurface from Adaptor3d; D1: TopolTool from Adaptor3d;
- S2: HSurface from Adaptor3d; D2: TopolTool from Adaptor3d;
- TolArc,TolTang: Real from Standard)
+ ---Purpose: Set the tolerances used by the algorithms:
+ -- --- Implicit - Parametric
+ -- --- Parametric - Parametric
+ -- --- Implicit - Implicit
+ --
+ -- TolArc is used to compute the intersections
+ -- between the restrictions of a surface and a
+ -- walking line.
+ --
+ -- TolTang is used to compute the points on a walking
+ -- line, and in geometric algorithms.
+ --
+ -- Fleche is a parameter used in the walking
+ -- algorithms to provide small curvatures on a line.
+ --
+ -- UVMaxStep is a parameter used in the walking
+ -- algorithms to compute the distance between to
+ -- points in their respective parametrtic spaces.
+ --
+
+ is static;
- raises ConstructionError from Standard
-
- is static;
-
- --amv
Perform (me: in out;
S1: HSurface from Adaptor3d; D1: TopolTool from Adaptor3d;
S2: HSurface from Adaptor3d; D2: TopolTool from Adaptor3d;
TolArc,TolTang: Real from Standard;
- LOfPnts: in out ListOfPntOn2S from IntSurf;
- RestrictLine: Boolean from Standard = Standard_True)
-
- raises ConstructionError from Standard
-
- is static;
-
- Perform (me: in out;
- S1: HSurface from Adaptor3d; D1: TopolTool from Adaptor3d;
- S2: HSurface from Adaptor3d; D2: TopolTool from Adaptor3d;
- U1,V1,U2,V2 : Real from Standard;
- TolArc,TolTang: Real from Standard)
+ isGeomInt : Boolean from Standard = Standard_True)
- raises ConstructionError from Standard
-
- is static;
+ raises ConstructionError from Standard
+ is static;
+
+ --amv
+ Perform ( me: in out;
+ S1: HSurface from Adaptor3d; D1: TopolTool from Adaptor3d;
+ S2: HSurface from Adaptor3d; D2: TopolTool from Adaptor3d;
+ TolArc,TolTang: Real from Standard;
+ LOfPnts: in out ListOfPntOn2S from IntSurf;
+ RestrictLine: Boolean from Standard = Standard_True;
+ isGeomInt : Boolean from Standard = Standard_True)
+
+ ---Purpose: If isGeomInt == Standard_False, then method
+ -- Param-Param intersection will be used.
+
+ raises ConstructionError from Standard
+ is static;
+
+ Perform ( me: in out;
+ S1: HSurface from Adaptor3d; D1: TopolTool from Adaptor3d;
+ S2: HSurface from Adaptor3d; D2: TopolTool from Adaptor3d;
+ U1,V1,U2,V2 : Real from Standard;
+ TolArc,TolTang: Real from Standard)
+
+ raises ConstructionError from Standard
+ is static;
Perform (me: in out;
S1: HSurface from Adaptor3d; D1: TopolTool from Adaptor3d;
TolArc,TolTang: Real from Standard)
-
- raises ConstructionError from Standard
-
- is static;
-
-
+
+ raises ConstructionError from Standard
+ is static;
+
+ ParamParamPerfom( me: in out;
+ S1: HSurface from Adaptor3d; D1: TopolTool from Adaptor3d;
+ S2: HSurface from Adaptor3d; D2: TopolTool from Adaptor3d;
+ TolArc,TolTang: Real from Standard;
+ LOfPnts: in out ListOfPntOn2S from IntSurf;
+ RestrictLine: Boolean from Standard;
+ typs1, typs2: SurfaceType from GeomAbs)
+
+ is private;
+
+ GeomGeomPerfom( me: in out;
+ S1: HSurface from Adaptor3d; D1: TopolTool from Adaptor3d;
+ S2: HSurface from Adaptor3d; D2: TopolTool from Adaptor3d;
+ TolArc,TolTang: Real from Standard;
+ LOfPnts: in out ListOfPntOn2S from IntSurf;
+ RestrictLine: Boolean from Standard;
+ typs1, typs2: SurfaceType from GeomAbs)
+
+ is private;
+
+ GeomParamPerfom(me: in out;
+ S1: HSurface from Adaptor3d; D1: TopolTool from Adaptor3d;
+ S2: HSurface from Adaptor3d; D2: TopolTool from Adaptor3d;
+ isNotAnalitical: Boolean from Standard;
+ typs1, typs2: SurfaceType from GeomAbs)
+
+ is private;
+
IsDone(me)
---Purpose: Returns True if the calculus was succesfull.
returns Boolean from Standard
- ---C++: inline
-
+ ---C++: inline
+
is static;
IsEmpty(me)
-
- ---Purpose: Returns true if the is no intersection.
-
- returns Boolean from Standard
- ---C++: inline
-
- raises NotDone from StdFail
-
- is static;
+ ---Purpose: Returns true if the is no intersection.
+ ---C++: inline
+ returns Boolean from Standard
+ raises NotDone from StdFail
+ is static;
TangentFaces(me)
-
- ---Purpose: Returns True if the two patches are considered as
- -- entierly tangent, i-e every restriction arc of one
- -- patch is inside the geometric base of the other patch.
-
- returns Boolean from Standard
- ---C++: inline
-
- raises NotDone from StdFail
-
- is static;
-
-
+ ---Purpose: Returns True if the two patches are considered as
+ -- entierly tangent, i-e every restriction arc of one
+ -- patch is inside the geometric base of the other patch.
+ ---C++: inline
+
+ returns Boolean from Standard
+ raises NotDone from StdFail
+ is static;
+
OppositeFaces(me)
-
- ---Purpose: Returns True when the TangentFaces returns True and the
- -- normal vectors evaluated at a point on the first and the
- -- second surface are opposite.
- -- The exception DomainError is raised if TangentFaces
- -- returns False.
+ ---Purpose: Returns True when the TangentFaces returns True and the
+ -- normal vectors evaluated at a point on the first and the
+ -- second surface are opposite.
+ -- The exception DomainError is raised if TangentFaces
+ -- returns False.
+ ---C++: inline
returns Boolean from Standard
- ---C++: inline
-
- raises NotDone from StdFail,
- DomainError from Standard
-
- is static;
+ raises NotDone from StdFail,
+ DomainError from Standard
+ is static;
NbPnts(me)
-
- ---Purpose: Returns the number of "single" points.
+ ---Purpose: Returns the number of "single" points.
+ ---C++: inline
returns Integer from Standard
- ---C++: inline
-
raises NotDone from StdFail
-
is static;
---Purpose: Returns the point of range Index.
-- An exception is raised if Index<=0 or Index>NbPnt.
+ ---C++: return const&
+ ---C++: inline
returns Point from IntPatch
- ---C++: return const&
- ---C++: inline
-
- raises NotDone from StdFail,
- OutOfRange from Standard
+ raises NotDone from StdFail,
+ OutOfRange from Standard
is static;
NbLines(me)
-
- ---Purpose: Returns the number of intersection lines.
-
- returns Integer from Standard
- ---C++: inline
-
- raises NotDone from StdFail
-
- is static;
-
-
+ ---Purpose: Returns the number of intersection lines.
+ ---C++: inline
+
+ returns Integer from Standard
+ raises NotDone from StdFail
+ is static;
+
Line(me; Index: Integer from Standard)
-
- ---Purpose: Returns the line of range Index.
+ ---Purpose: Returns the line of range Index.
-- An exception is raised if Index<=0 or Index>NbLine.
+ ---C++: return const&
+ ---C++: inline
returns Line from IntPatch
- ---C++: return const&
- ---C++: inline
-
- raises NotDone from StdFail,
- OutOfRange from Standard
+ raises NotDone from StdFail,
+ OutOfRange from Standard
+
+ is static;
+
+ SequenceOfLine(me)
+ ---C++: return const&
+
+ returns SequenceOfLine from IntPatch
+ raises NotDone from StdFail
+ is static;
- is static;
-
- SequenceOfLine(me)
- returns SequenceOfLine from IntPatch
- ---C++: return const&
- raises NotDone from StdFail
- is static;
-
- Dump(me; Mode: Integer from Standard;
- S1: HSurface from Adaptor3d; D1: TopolTool from Adaptor3d;
- S2: HSurface from Adaptor3d; D2: TopolTool from Adaptor3d)
+ Dump(me; Mode : Integer from Standard;
+ S1 : HSurface from Adaptor3d; D1: TopolTool from Adaptor3d;
+ S2 : HSurface from Adaptor3d; D2: TopolTool from Adaptor3d)
---Purpose: Dump of each result line.
--- Mode for more accurate dumps.
--