mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-04-07 18:30:55 +03:00
0024157: Parallelization of assembly part of BO
The branch deals with the parallelization of Post-Treatment part of the Builder
This commit is contained in:
parent
85bcc07243
commit
c26b5a34bc
@ -362,7 +362,6 @@ void BOPAlgo_Builder::PerformInternal(const BOPAlgo_PaveFiller& theFiller)
|
|||||||
//=======================================================================
|
//=======================================================================
|
||||||
void BOPAlgo_Builder::PostTreat()
|
void BOPAlgo_Builder::PostTreat()
|
||||||
{
|
{
|
||||||
//BRepLib::SameParameter(myShape, 1.e-7, Standard_True);
|
BOPTools_AlgoTools::CorrectTolerances(myShape, 0.05, myRunParallel);
|
||||||
BOPTools_AlgoTools::CorrectTolerances(myShape, 0.05);
|
BOPTools_AlgoTools::CorrectShapeTolerances(myShape, myRunParallel);
|
||||||
BOPTools_AlgoTools::CorrectShapeTolerances(myShape);
|
|
||||||
}
|
}
|
||||||
|
@ -46,60 +46,60 @@ uses
|
|||||||
|
|
||||||
is
|
is
|
||||||
ComputeVV(myclass;
|
ComputeVV(myclass;
|
||||||
aV1:Vertex from TopoDS;
|
aV1:Vertex from TopoDS;
|
||||||
aP2:Pnt from gp;
|
aP2:Pnt from gp;
|
||||||
aTolP2:Real from Standard)
|
aTolP2:Real from Standard)
|
||||||
returns Integer from Standard;
|
returns Integer from Standard;
|
||||||
|
|
||||||
ComputeVV(myclass;
|
ComputeVV(myclass;
|
||||||
aV1:Vertex from TopoDS;
|
aV1:Vertex from TopoDS;
|
||||||
aV2:Vertex from TopoDS)
|
aV2:Vertex from TopoDS)
|
||||||
returns Integer from Standard;
|
returns Integer from Standard;
|
||||||
|
|
||||||
MakeVertex (myclass;
|
MakeVertex (myclass;
|
||||||
aLV: out ListOfShape from BOPCol;
|
aLV: out ListOfShape from BOPCol;
|
||||||
aV : out Vertex from TopoDS);
|
aV : out Vertex from TopoDS);
|
||||||
|
|
||||||
MakeEdge(myclass;
|
MakeEdge(myclass;
|
||||||
theCurve:Curve from IntTools;
|
theCurve:Curve from IntTools;
|
||||||
theV1: Vertex from TopoDS;
|
theV1: Vertex from TopoDS;
|
||||||
theT1: Real from Standard;
|
theT1: Real from Standard;
|
||||||
theV2: Vertex from TopoDS;
|
theV2: Vertex from TopoDS;
|
||||||
theT2: Real from Standard;
|
theT2: Real from Standard;
|
||||||
theTolR3D: Real from Standard;
|
theTolR3D: Real from Standard;
|
||||||
theE :out Edge from TopoDS);
|
theE :out Edge from TopoDS);
|
||||||
|
|
||||||
MakePCurve(myclass;
|
MakePCurve(myclass;
|
||||||
theE : Edge from TopoDS;
|
theE : Edge from TopoDS;
|
||||||
theF1: Face from TopoDS;
|
theF1: Face from TopoDS;
|
||||||
theF2: Face from TopoDS;
|
theF2: Face from TopoDS;
|
||||||
theCurve:Curve from IntTools;
|
theCurve:Curve from IntTools;
|
||||||
thePC1:Boolean from Standard;
|
thePC1:Boolean from Standard;
|
||||||
thePC2:Boolean from Standard);
|
thePC2:Boolean from Standard);
|
||||||
|
|
||||||
MakeContainer(myclass;
|
MakeContainer(myclass;
|
||||||
theType:ShapeEnum from TopAbs;
|
theType:ShapeEnum from TopAbs;
|
||||||
theShape:out Shape from TopoDS);
|
theShape:out Shape from TopoDS);
|
||||||
|
|
||||||
|
|
||||||
IsHole(myclass;
|
IsHole(myclass;
|
||||||
aW: Shape from TopoDS;
|
aW: Shape from TopoDS;
|
||||||
aF: Shape from TopoDS)
|
aF: Shape from TopoDS)
|
||||||
returns Boolean from Standard;
|
returns Boolean from Standard;
|
||||||
|
|
||||||
IsSplitToReverse(myclass;
|
IsSplitToReverse(myclass;
|
||||||
theSplit : Shape from TopoDS;
|
theSplit : Shape from TopoDS;
|
||||||
theShape : Shape from TopoDS;
|
theShape : Shape from TopoDS;
|
||||||
theContext:out Context from BOPInt)
|
theContext:out Context from BOPInt)
|
||||||
---Purpose: Returns True if the shape theSplit has opposite
|
---Purpose: Returns True if the shape theSplit has opposite
|
||||||
-- direction than theShape
|
-- direction than theShape
|
||||||
-- theContext - cashed geometrical tools
|
-- theContext - cashed geometrical tools
|
||||||
returns Boolean from Standard;
|
returns Boolean from Standard;
|
||||||
|
|
||||||
IsSplitToReverse(myclass;
|
IsSplitToReverse(myclass;
|
||||||
theSplit : Face from TopoDS;
|
theSplit : Face from TopoDS;
|
||||||
theShape : Face from TopoDS;
|
theShape : Face from TopoDS;
|
||||||
theContext:out Context from BOPInt)
|
theContext:out Context from BOPInt)
|
||||||
---Purpose: Returns True if normal direction of the face
|
---Purpose: Returns True if normal direction of the face
|
||||||
-- theShape is not the same as for the face
|
-- theShape is not the same as for the face
|
||||||
-- theSplit
|
-- theSplit
|
||||||
@ -107,33 +107,33 @@ is
|
|||||||
returns Boolean from Standard;
|
returns Boolean from Standard;
|
||||||
|
|
||||||
IsSplitToReverse (myclass;
|
IsSplitToReverse (myclass;
|
||||||
aE1: Edge from TopoDS;
|
aE1: Edge from TopoDS;
|
||||||
aE2: Edge from TopoDS;
|
aE2: Edge from TopoDS;
|
||||||
aContext:out Context from BOPInt)
|
aContext:out Context from BOPInt)
|
||||||
returns Boolean from Standard;
|
returns Boolean from Standard;
|
||||||
|
|
||||||
|
|
||||||
AreFacesSameDomain(myclass;
|
AreFacesSameDomain(myclass;
|
||||||
theF1: Face from TopoDS;
|
theF1: Face from TopoDS;
|
||||||
theF2: Face from TopoDS;
|
theF2: Face from TopoDS;
|
||||||
theContext:out Context from BOPInt)
|
theContext:out Context from BOPInt)
|
||||||
returns Boolean from Standard;
|
returns Boolean from Standard;
|
||||||
|
|
||||||
CheckSameGeom (myclass;
|
CheckSameGeom (myclass;
|
||||||
theF1: Face from TopoDS;
|
theF1: Face from TopoDS;
|
||||||
theF2: Face from TopoDS;
|
theF2: Face from TopoDS;
|
||||||
theContext:out Context from BOPInt)
|
theContext:out Context from BOPInt)
|
||||||
returns Boolean from Standard;
|
returns Boolean from Standard;
|
||||||
|
|
||||||
Sense (myclass;
|
Sense (myclass;
|
||||||
theF1: Face from TopoDS;
|
theF1: Face from TopoDS;
|
||||||
theF2: Face from TopoDS)
|
theF2: Face from TopoDS)
|
||||||
returns Integer from Standard;
|
returns Integer from Standard;
|
||||||
|
|
||||||
GetEdgeOff (myclass;
|
GetEdgeOff (myclass;
|
||||||
theEdge :Edge from TopoDS;
|
theEdge :Edge from TopoDS;
|
||||||
theFace :Face from TopoDS;
|
theFace :Face from TopoDS;
|
||||||
theEdgeOff :out Edge from TopoDS)
|
theEdgeOff :out Edge from TopoDS)
|
||||||
---Purpose: Returns True if the face theFace contains
|
---Purpose: Returns True if the face theFace contains
|
||||||
-- the edge theEdge but with opposite orientation.
|
-- the edge theEdge but with opposite orientation.
|
||||||
-- If the method returns True theEdgeOff is the
|
-- If the method returns True theEdgeOff is the
|
||||||
@ -141,12 +141,12 @@ is
|
|||||||
returns Boolean from Standard;
|
returns Boolean from Standard;
|
||||||
|
|
||||||
GetFaceOff(myclass;
|
GetFaceOff(myclass;
|
||||||
theEdge :Edge from TopoDS;
|
theEdge :Edge from TopoDS;
|
||||||
theFace :Face from TopoDS;
|
theFace :Face from TopoDS;
|
||||||
theLCEF :out ListOfCoupleOfShape from BOPTools;
|
theLCEF :out ListOfCoupleOfShape from BOPTools;
|
||||||
theFaceOff :out Face from TopoDS;
|
theFaceOff :out Face from TopoDS;
|
||||||
theContext :out Context from BOPInt)
|
theContext :out Context from BOPInt)
|
||||||
returns Boolean from Standard;
|
returns Boolean from Standard;
|
||||||
|
|
||||||
---Purpose: For the face theFace and its edge theEdge
|
---Purpose: For the face theFace and its edge theEdge
|
||||||
-- finds the face suitable to produce shell.
|
-- finds the face suitable to produce shell.
|
||||||
@ -154,11 +154,11 @@ is
|
|||||||
-- from theLCEF must share edge theEdge
|
-- from theLCEF must share edge theEdge
|
||||||
|
|
||||||
IsInternalFace(myclass;
|
IsInternalFace(myclass;
|
||||||
theFace :Face from TopoDS;
|
theFace :Face from TopoDS;
|
||||||
theEdge :Edge from TopoDS;
|
theEdge :Edge from TopoDS;
|
||||||
theFace1 :Face from TopoDS;
|
theFace1 :Face from TopoDS;
|
||||||
theFace2 :Face from TopoDS;
|
theFace2 :Face from TopoDS;
|
||||||
theContext:out Context from BOPInt)
|
theContext:out Context from BOPInt)
|
||||||
---Purpose: Returns True if the face theFace is inside of the
|
---Purpose: Returns True if the face theFace is inside of the
|
||||||
-- couple of faces theFace1, theFace2.
|
-- couple of faces theFace1, theFace2.
|
||||||
-- The faces theFace, theFace1, theFace2 must
|
-- The faces theFace, theFace1, theFace2 must
|
||||||
@ -166,10 +166,10 @@ is
|
|||||||
returns Integer from Standard;
|
returns Integer from Standard;
|
||||||
|
|
||||||
IsInternalFace(myclass;
|
IsInternalFace(myclass;
|
||||||
theFace :Face from TopoDS;
|
theFace :Face from TopoDS;
|
||||||
theEdge :Edge from TopoDS;
|
theEdge :Edge from TopoDS;
|
||||||
theLF :out ListOfShape from BOPCol;
|
theLF :out ListOfShape from BOPCol;
|
||||||
theContext:out Context from BOPInt)
|
theContext:out Context from BOPInt)
|
||||||
---Purpose: Returns True if the face theFace is inside of the
|
---Purpose: Returns True if the face theFace is inside of the
|
||||||
-- appropriate couple of faces (from the set theLF) .
|
-- appropriate couple of faces (from the set theLF) .
|
||||||
-- The faces of the set theLF and theFace must
|
-- The faces of the set theLF and theFace must
|
||||||
@ -177,11 +177,11 @@ is
|
|||||||
returns Integer from Standard;
|
returns Integer from Standard;
|
||||||
|
|
||||||
IsInternalFace(myclass;
|
IsInternalFace(myclass;
|
||||||
theFace :Face from TopoDS;
|
theFace :Face from TopoDS;
|
||||||
theSolid :Solid from TopoDS;
|
theSolid :Solid from TopoDS;
|
||||||
theMEF :out IndexedDataMapOfShapeListOfShape from BOPCol;
|
theMEF :out IndexedDataMapOfShapeListOfShape from BOPCol;
|
||||||
theTol :Real from Standard;
|
theTol :Real from Standard;
|
||||||
theContext:out Context from BOPInt)
|
theContext:out Context from BOPInt)
|
||||||
---Purpose: Returns True if the face theFace is inside the
|
---Purpose: Returns True if the face theFace is inside the
|
||||||
-- solid theSolid.
|
-- solid theSolid.
|
||||||
-- theMEF - Map Edge/Faces for theSolid
|
-- theMEF - Map Edge/Faces for theSolid
|
||||||
@ -191,9 +191,9 @@ is
|
|||||||
|
|
||||||
|
|
||||||
GetEdgeOnFace (myclass;
|
GetEdgeOnFace (myclass;
|
||||||
theEdge :Edge from TopoDS;
|
theEdge :Edge from TopoDS;
|
||||||
theFace :Face from TopoDS;
|
theFace :Face from TopoDS;
|
||||||
theEdgeOnF :out Edge from TopoDS)
|
theEdgeOnF :out Edge from TopoDS)
|
||||||
---Purpose: For the face theFace gets the edge theEdgeOnF
|
---Purpose: For the face theFace gets the edge theEdgeOnF
|
||||||
-- that is the same as theEdge
|
-- that is the same as theEdge
|
||||||
-- Returns True if such edge exists
|
-- Returns True if such edge exists
|
||||||
@ -201,10 +201,10 @@ is
|
|||||||
returns Boolean from Standard;
|
returns Boolean from Standard;
|
||||||
|
|
||||||
ComputeState(myclass;
|
ComputeState(myclass;
|
||||||
thePoint :Pnt from gp;
|
thePoint :Pnt from gp;
|
||||||
theSolid :Solid from TopoDS;
|
theSolid :Solid from TopoDS;
|
||||||
theTol :Real from Standard;
|
theTol :Real from Standard;
|
||||||
theContext:out Context from BOPInt)
|
theContext:out Context from BOPInt)
|
||||||
---Purpose: Computes the 3-D state of the point thePoint
|
---Purpose: Computes the 3-D state of the point thePoint
|
||||||
-- toward solid theSolid.
|
-- toward solid theSolid.
|
||||||
-- theTol - value of precision of computation
|
-- theTol - value of precision of computation
|
||||||
@ -213,10 +213,10 @@ is
|
|||||||
returns State from TopAbs;
|
returns State from TopAbs;
|
||||||
|
|
||||||
ComputeState(myclass;
|
ComputeState(myclass;
|
||||||
theVertex:Vertex from TopoDS;
|
theVertex:Vertex from TopoDS;
|
||||||
theSolid :Solid from TopoDS;
|
theSolid :Solid from TopoDS;
|
||||||
theTol :Real from Standard;
|
theTol :Real from Standard;
|
||||||
theContext:out Context from BOPInt)
|
theContext:out Context from BOPInt)
|
||||||
---Purpose: Computes the 3-D state of the vertex theVertex
|
---Purpose: Computes the 3-D state of the vertex theVertex
|
||||||
-- toward solid theSolid.
|
-- toward solid theSolid.
|
||||||
-- theTol - value of precision of computation
|
-- theTol - value of precision of computation
|
||||||
@ -225,10 +225,10 @@ is
|
|||||||
returns State from TopAbs;
|
returns State from TopAbs;
|
||||||
|
|
||||||
ComputeState(myclass;
|
ComputeState(myclass;
|
||||||
theEdge :Edge from TopoDS;
|
theEdge :Edge from TopoDS;
|
||||||
theSolid :Solid from TopoDS;
|
theSolid :Solid from TopoDS;
|
||||||
theTol :Real from Standard;
|
theTol :Real from Standard;
|
||||||
theContext:out Context from BOPInt)
|
theContext:out Context from BOPInt)
|
||||||
---Purpose: Computes the 3-D state of the edge theEdge
|
---Purpose: Computes the 3-D state of the edge theEdge
|
||||||
-- toward solid theSolid.
|
-- toward solid theSolid.
|
||||||
-- theTol - value of precision of computation
|
-- theTol - value of precision of computation
|
||||||
@ -237,11 +237,11 @@ is
|
|||||||
returns State from TopAbs;
|
returns State from TopAbs;
|
||||||
|
|
||||||
ComputeState(myclass;
|
ComputeState(myclass;
|
||||||
theFace :Face from TopoDS;
|
theFace :Face from TopoDS;
|
||||||
theSolid :Solid from TopoDS;
|
theSolid :Solid from TopoDS;
|
||||||
theTol :Real from Standard;
|
theTol :Real from Standard;
|
||||||
theBounds:out IndexedMapOfShape from BOPCol;
|
theBounds:out IndexedMapOfShape from BOPCol;
|
||||||
theContext:out Context from BOPInt)
|
theContext:out Context from BOPInt)
|
||||||
---Purpose: Computes the 3-D state of the face theFace
|
---Purpose: Computes the 3-D state of the face theFace
|
||||||
-- toward solid theSolid.
|
-- toward solid theSolid.
|
||||||
-- theTol - value of precision of computation
|
-- theTol - value of precision of computation
|
||||||
@ -251,10 +251,10 @@ is
|
|||||||
returns State from TopAbs;
|
returns State from TopAbs;
|
||||||
|
|
||||||
ComputeStateByOnePoint(myclass;
|
ComputeStateByOnePoint(myclass;
|
||||||
theShape :Shape from TopoDS;
|
theShape :Shape from TopoDS;
|
||||||
theSolid :Solid from TopoDS;
|
theSolid :Solid from TopoDS;
|
||||||
theTol :Real from Standard;
|
theTol :Real from Standard;
|
||||||
theContext:out Context from BOPInt)
|
theContext:out Context from BOPInt)
|
||||||
---Purpose: Computes the 3-D state of the shape theShape
|
---Purpose: Computes the 3-D state of the shape theShape
|
||||||
-- toward solid theSolid.
|
-- toward solid theSolid.
|
||||||
-- theTol - value of precision of computation
|
-- theTol - value of precision of computation
|
||||||
@ -263,30 +263,32 @@ is
|
|||||||
returns State from TopAbs;
|
returns State from TopAbs;
|
||||||
|
|
||||||
MakeConnexityBlock(myclass;
|
MakeConnexityBlock(myclass;
|
||||||
theLS :out ListOfShape from BOPCol;
|
theLS :out ListOfShape from BOPCol;
|
||||||
theMapAvoid:out IndexedMapOfShape from BOPCol;
|
theMapAvoid:out IndexedMapOfShape from BOPCol;
|
||||||
theLSCB :out ListOfShape from BOPCol;
|
theLSCB :out ListOfShape from BOPCol;
|
||||||
theAllocator:BaseAllocator from BOPCol);
|
theAllocator:BaseAllocator from BOPCol);
|
||||||
---Purpose: For the list of faces theLS build block
|
---Purpose: For the list of faces theLS build block
|
||||||
-- theLSCB in terms of connexity by edges
|
-- theLSCB in terms of connexity by edges
|
||||||
-- theMapAvoid - set of edges to avoid for
|
-- theMapAvoid - set of edges to avoid for
|
||||||
-- the treatment
|
-- the treatment
|
||||||
|
|
||||||
MakeConnexityBlocks(myclass;
|
MakeConnexityBlocks(myclass;
|
||||||
theS :Shape from TopoDS;
|
theS :Shape from TopoDS;
|
||||||
theType1 :ShapeEnum from TopAbs;
|
theType1 :ShapeEnum from TopAbs;
|
||||||
theType2 :ShapeEnum from TopAbs;
|
theType2 :ShapeEnum from TopAbs;
|
||||||
theLCB :out ListOfShape from BOPCol);
|
theLCB :out ListOfShape from BOPCol);
|
||||||
---Purpose: For the compound theS build the blocks
|
---Purpose: For the compound theS build the blocks
|
||||||
-- theLCB (as list of compounds)
|
-- theLCB (as list of compounds)
|
||||||
-- in terms of connexity by the shapes of theType
|
-- in terms of connexity by the shapes of theType
|
||||||
|
|
||||||
OrientFacesOnShell (myclass;
|
OrientFacesOnShell (myclass;
|
||||||
theS :out Shape from TopoDS);
|
theS :out Shape from TopoDS);
|
||||||
|
|
||||||
CorrectTolerances (myclass;
|
CorrectTolerances (myclass;
|
||||||
theS: Shape from TopoDS;
|
theS: Shape from TopoDS;
|
||||||
theTolMax: Real from Standard =0.0001);
|
theTolMax: Real from Standard =0.0001;
|
||||||
|
theRunParallel: Boolean from Standard=Standard_False);
|
||||||
|
|
||||||
---Purpose:
|
---Purpose:
|
||||||
--- Provides valid values of tolerances for the shape <theS>
|
--- Provides valid values of tolerances for the shape <theS>
|
||||||
--- <theTolMax> is max value of the tolerance that can be
|
--- <theTolMax> is max value of the tolerance that can be
|
||||||
@ -295,15 +297,17 @@ is
|
|||||||
--- perform.
|
--- perform.
|
||||||
---
|
---
|
||||||
CorrectCurveOnSurface (myclass;
|
CorrectCurveOnSurface (myclass;
|
||||||
theS: Shape from TopoDS;
|
theS: Shape from TopoDS;
|
||||||
theTolMax: Real from Standard =0.0001);
|
theTolMax: Real from Standard =0.0001;
|
||||||
|
theRunParallel: Boolean from Standard=Standard_False);
|
||||||
---Purpose:
|
---Purpose:
|
||||||
--- Provides valid values of tolerances for the shape <theS>
|
--- Provides valid values of tolerances for the shape <theS>
|
||||||
--- in terms of BRepCheck_InvalidCurveOnSurface.
|
--- in terms of BRepCheck_InvalidCurveOnSurface.
|
||||||
---
|
---
|
||||||
CorrectPointOnCurve (myclass;
|
CorrectPointOnCurve (myclass;
|
||||||
theS: Shape from TopoDS;
|
theS: Shape from TopoDS;
|
||||||
theTolMax: Real from Standard =0.0001);
|
theTolMax: Real from Standard =0.0001;
|
||||||
|
theRunParallel: Boolean from Standard=Standard_False);
|
||||||
---Purpose:
|
---Purpose:
|
||||||
--- Provides valid values of tolerances for the shape <theS>
|
--- Provides valid values of tolerances for the shape <theS>
|
||||||
--- in terms of BRepCheck_InvalidPointOnCurve.
|
--- in terms of BRepCheck_InvalidPointOnCurve.
|
||||||
@ -312,9 +316,9 @@ is
|
|||||||
|
|
||||||
--copy from BOPTools_AlgoTools.cdl
|
--copy from BOPTools_AlgoTools.cdl
|
||||||
MakeNewVertex (myclass;
|
MakeNewVertex (myclass;
|
||||||
aP1 : Pnt from gp;
|
aP1 : Pnt from gp;
|
||||||
aTol: Real from Standard;
|
aTol: Real from Standard;
|
||||||
aNewVertex:out Vertex from TopoDS);
|
aNewVertex:out Vertex from TopoDS);
|
||||||
---Purpose:
|
---Purpose:
|
||||||
--- Make a vertex using 3D-point <aP1> and 3D-tolerance value <aTol>
|
--- Make a vertex using 3D-point <aP1> and 3D-tolerance value <aTol>
|
||||||
---
|
---
|
||||||
@ -325,74 +329,74 @@ is
|
|||||||
--- Make a vertex using couple of vertices <aV1, aV2>
|
--- Make a vertex using couple of vertices <aV1, aV2>
|
||||||
---
|
---
|
||||||
MakeNewVertex (myclass;
|
MakeNewVertex (myclass;
|
||||||
aE1: Edge from TopoDS;
|
aE1: Edge from TopoDS;
|
||||||
aP1: Real from Standard;
|
aP1: Real from Standard;
|
||||||
aE2: Edge from TopoDS;
|
aE2: Edge from TopoDS;
|
||||||
aP2: Real from Standard;
|
aP2: Real from Standard;
|
||||||
aNewVertex:out Vertex from TopoDS);
|
aNewVertex:out Vertex from TopoDS);
|
||||||
---Purpose:
|
---Purpose:
|
||||||
--- Make a vertex in place of intersection between two edges
|
--- Make a vertex in place of intersection between two edges
|
||||||
--- <aE1, aE2> with parameters <aP1, aP2>
|
--- <aE1, aE2> with parameters <aP1, aP2>
|
||||||
---
|
---
|
||||||
MakeNewVertex (myclass;
|
MakeNewVertex (myclass;
|
||||||
aE1: Edge from TopoDS;
|
aE1: Edge from TopoDS;
|
||||||
aP1: Real from Standard;
|
aP1: Real from Standard;
|
||||||
aF2: Face from TopoDS;
|
aF2: Face from TopoDS;
|
||||||
aNewVertex:out Vertex from TopoDS);
|
aNewVertex:out Vertex from TopoDS);
|
||||||
---Purpose:
|
---Purpose:
|
||||||
--- Make a vertex in place of intersection between the edge <aE1>
|
--- Make a vertex in place of intersection between the edge <aE1>
|
||||||
--- with parameter <aP1> and the face <aF2>
|
--- with parameter <aP1> and the face <aF2>
|
||||||
---
|
---
|
||||||
PointOnEdge (myclass;
|
PointOnEdge (myclass;
|
||||||
aEdge: Edge from TopoDS;
|
aEdge: Edge from TopoDS;
|
||||||
aPrm: Real from Standard;
|
aPrm: Real from Standard;
|
||||||
aP:out Pnt from gp);
|
aP:out Pnt from gp);
|
||||||
---Purpose:
|
---Purpose:
|
||||||
--- Compute a 3D-point on the edge <aEdge> at parameter <aPrm>
|
--- Compute a 3D-point on the edge <aEdge> at parameter <aPrm>
|
||||||
---
|
---
|
||||||
MakeSplitEdge (myclass;
|
MakeSplitEdge (myclass;
|
||||||
aE1: Edge from TopoDS;
|
aE1: Edge from TopoDS;
|
||||||
aV1: Vertex from TopoDS;
|
aV1: Vertex from TopoDS;
|
||||||
aP1: Real from Standard;
|
aP1: Real from Standard;
|
||||||
aV2: Vertex from TopoDS;
|
aV2: Vertex from TopoDS;
|
||||||
aP2: Real from Standard;
|
aP2: Real from Standard;
|
||||||
aNewEdge:out Edge from TopoDS);
|
aNewEdge:out Edge from TopoDS);
|
||||||
---Purpose:
|
---Purpose:
|
||||||
--- Make the edge from base edge <aE1> and two vertices <aV1,aV2>
|
--- Make the edge from base edge <aE1> and two vertices <aV1,aV2>
|
||||||
--- at parameters <aP1,aP2>
|
--- at parameters <aP1,aP2>
|
||||||
---
|
---
|
||||||
MakeSectEdge (myclass;
|
MakeSectEdge (myclass;
|
||||||
aIC: Curve from IntTools;
|
aIC: Curve from IntTools;
|
||||||
aV1: Vertex from TopoDS;
|
aV1: Vertex from TopoDS;
|
||||||
aP1: Real from Standard;
|
aP1: Real from Standard;
|
||||||
aV2: Vertex from TopoDS;
|
aV2: Vertex from TopoDS;
|
||||||
aP2: Real from Standard;
|
aP2: Real from Standard;
|
||||||
aNewEdge:out Edge from TopoDS);
|
aNewEdge:out Edge from TopoDS);
|
||||||
---Purpose:
|
---Purpose:
|
||||||
--- Make the edge from 3D-Curve <aIC> and two vertices <aV1,aV2>
|
--- Make the edge from 3D-Curve <aIC> and two vertices <aV1,aV2>
|
||||||
--- at parameters <aP1,aP2>
|
--- at parameters <aP1,aP2>
|
||||||
---
|
---
|
||||||
UpdateVertex (myclass;
|
UpdateVertex (myclass;
|
||||||
aIC: Curve from IntTools;
|
aIC: Curve from IntTools;
|
||||||
aT : Real from Standard;
|
aT : Real from Standard;
|
||||||
aV : Vertex from TopoDS);
|
aV : Vertex from TopoDS);
|
||||||
---Purpose:
|
---Purpose:
|
||||||
--- Update the tolerance value for vertex <aV>
|
--- Update the tolerance value for vertex <aV>
|
||||||
--- taking into account the fact that <aV> lays on
|
--- taking into account the fact that <aV> lays on
|
||||||
--- the curve <aIC>
|
--- the curve <aIC>
|
||||||
---
|
---
|
||||||
UpdateVertex (myclass;
|
UpdateVertex (myclass;
|
||||||
aE : Edge from TopoDS;
|
aE : Edge from TopoDS;
|
||||||
aT : Real from Standard;
|
aT : Real from Standard;
|
||||||
aV : Vertex from TopoDS);
|
aV : Vertex from TopoDS);
|
||||||
---Purpose:
|
---Purpose:
|
||||||
--- Update the tolerance value for vertex <aV>
|
--- Update the tolerance value for vertex <aV>
|
||||||
--- taking into account the fact that <aV> lays on
|
--- taking into account the fact that <aV> lays on
|
||||||
--- the edge <aE>
|
--- the edge <aE>
|
||||||
---
|
---
|
||||||
UpdateVertex (myclass;
|
UpdateVertex (myclass;
|
||||||
aVF : Vertex from TopoDS;
|
aVF : Vertex from TopoDS;
|
||||||
aVN : Vertex from TopoDS);
|
aVN : Vertex from TopoDS);
|
||||||
---Purpose:
|
---Purpose:
|
||||||
--- Update the tolerance value for vertex <aVN>
|
--- Update the tolerance value for vertex <aVN>
|
||||||
--- taking into account the fact that <aVN> should
|
--- taking into account the fact that <aVN> should
|
||||||
@ -400,62 +404,63 @@ is
|
|||||||
---
|
---
|
||||||
|
|
||||||
CorrectRange (myclass;
|
CorrectRange (myclass;
|
||||||
aE1: Edge from TopoDS;
|
aE1: Edge from TopoDS;
|
||||||
aE2: Edge from TopoDS;
|
aE2: Edge from TopoDS;
|
||||||
aSR: Range from IntTools;
|
aSR: Range from IntTools;
|
||||||
aNewSR:out Range from IntTools);
|
aNewSR:out Range from IntTools);
|
||||||
---Purpose:
|
---Purpose:
|
||||||
--- Correct shrunk range <aSR> taking into account 3D-curve
|
--- Correct shrunk range <aSR> taking into account 3D-curve
|
||||||
--- resolution and corresp. tolerances' values of <aE1>, <aE2>
|
--- resolution and corresp. tolerances' values of <aE1>, <aE2>
|
||||||
---
|
---
|
||||||
CorrectRange (myclass;
|
CorrectRange (myclass;
|
||||||
aE: Edge from TopoDS;
|
aE: Edge from TopoDS;
|
||||||
aF: Face from TopoDS;
|
aF: Face from TopoDS;
|
||||||
aSR: Range from IntTools;
|
aSR: Range from IntTools;
|
||||||
aNewSR:out Range from IntTools);
|
aNewSR:out Range from IntTools);
|
||||||
---Purpose:
|
---Purpose:
|
||||||
--- Correct shrunk range <aSR> taking into account 3D-curve
|
--- Correct shrunk range <aSR> taking into account 3D-curve
|
||||||
--- resolution and corresp. tolerances' values of <aE>, <aF>
|
--- resolution and corresp. tolerances' values of <aE>, <aF>
|
||||||
---
|
---
|
||||||
|
|
||||||
IsBlockInOnFace(myclass;
|
IsBlockInOnFace(myclass;
|
||||||
aShR : Range from IntTools;
|
aShR : Range from IntTools;
|
||||||
aF : Face from TopoDS;
|
aF : Face from TopoDS;
|
||||||
aE : Edge from TopoDS;
|
aE : Edge from TopoDS;
|
||||||
aContext:out Context from BOPInt)
|
aContext:out Context from BOPInt)
|
||||||
returns Boolean from Standard;
|
returns Boolean from Standard;
|
||||||
---Purpose:
|
---Purpose:
|
||||||
--- Returns TRUE if PaveBlock <aPB> lays on the face <aF>, i.e
|
--- Returns TRUE if PaveBlock <aPB> lays on the face <aF>, i.e
|
||||||
--- the <PB> is IN or ON in 2D of <aF>
|
--- the <PB> is IN or ON in 2D of <aF>
|
||||||
|
|
||||||
IsMicroEdge(myclass;
|
IsMicroEdge(myclass;
|
||||||
theEdge : Edge from TopoDS;
|
theEdge : Edge from TopoDS;
|
||||||
theContext : Context from BOPInt)
|
theContext : Context from BOPInt)
|
||||||
returns Boolean from Standard;
|
returns Boolean from Standard;
|
||||||
---Purpose:
|
---Purpose:
|
||||||
--- Checks if it is possible to compute shrunk range for the edge <aE>.
|
--- Checks if it is possible to compute shrunk range for the edge <aE>.
|
||||||
---
|
---
|
||||||
|
|
||||||
CorrectShapeTolerances (myclass;
|
CorrectShapeTolerances (myclass;
|
||||||
theS: Shape from TopoDS);
|
theS: Shape from TopoDS;
|
||||||
|
theRunParallel: Boolean from Standard=Standard_False);
|
||||||
---Purpose:
|
---Purpose:
|
||||||
--- Corrects tolerance values of the sub-shapes of the shape <theS> if needed.
|
--- Corrects tolerance values of the sub-shapes of the shape <theS> if needed.
|
||||||
---
|
---
|
||||||
|
|
||||||
Dimension(myclass;
|
Dimension(myclass;
|
||||||
theS:Shape from TopoDS)
|
theS:Shape from TopoDS)
|
||||||
returns Integer from Standard;
|
returns Integer from Standard;
|
||||||
---Purpose:
|
---Purpose:
|
||||||
--- Retutns dimension of the shape <theS>.
|
--- Retutns dimension of the shape <theS>.
|
||||||
|
|
||||||
IsOpenShell(myclass;
|
IsOpenShell(myclass;
|
||||||
theShell:Shell from TopoDS)
|
theShell:Shell from TopoDS)
|
||||||
returns Boolean from Standard;
|
returns Boolean from Standard;
|
||||||
---Purpose: Returns true if the shell <theShell> is open
|
---Purpose: Returns true if the shell <theShell> is open
|
||||||
|
|
||||||
IsInvertedSolid(myclass;
|
IsInvertedSolid(myclass;
|
||||||
theSolid:Solid from TopoDS)
|
theSolid:Solid from TopoDS)
|
||||||
returns Boolean from Standard;
|
returns Boolean from Standard;
|
||||||
---Purpose: Returns true if the solid <theSolid> is inverted
|
---Purpose: Returns true if the solid <theSolid> is inverted
|
||||||
|
|
||||||
end AlgoTools;
|
end AlgoTools;
|
||||||
|
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user