Version: 9.12.0
AdvancedEngine_IOperations Class Referenceabstract

#include <AdvancedEngine_IOperations.hxx>

Inheritance diagram for AdvancedEngine_IOperations:
Inheritance graph

Public Member Functions

 AdvancedEngine_IOperations (GEOM_Engine *theEngine)
 
 ~AdvancedEngine_IOperations ()
 
 Handle (TColStd_HSequenceOfTransient) MakePipeTShape(double theR1
 
 Handle (TColStd_HSequenceOfTransient) MakePipeTShapeWithPosition(double theR1
 
double double double double double double double double double double double double double double double double double bool Handle (GEOM_Object) P1=0
 
double double double double double double double double double double double double double double double double double bool Handle (GEOM_Object) P2=0
 
double double double double double double double double double double double double double double double double double bool Handle (GEOM_Object) P3=0)
 
 Handle (TColStd_HSequenceOfTransient) MakePipeTShapeChamfer(double theR1
 
 Handle (TColStd_HSequenceOfTransient) MakePipeTShapeChamferWithPosition(double theR1
 
double double double double double double double double double double double double double double double double double double double bool Handle (GEOM_Object) P1=0
 
double double double double double double double double double double double double double double double double double double double bool Handle (GEOM_Object) P2=0
 
double double double double double double double double double double double double double double double double double double double bool Handle (GEOM_Object) P3=0)
 
 Handle (TColStd_HSequenceOfTransient) MakePipeTShapeFillet(double theR1
 
 Handle (TColStd_HSequenceOfTransient) MakePipeTShapeFilletWithPosition(double theR1
 
double double double double double double double double double double double double double double double double double double bool Handle (GEOM_Object) P1=0
 
double double double double double double double double double double double double double double double double double double bool Handle (GEOM_Object) P2=0
 
double double double double double double double double double double double double double double double double double double bool Handle (GEOM_Object) P3=0)
 
 Handle (GEOM_Object) MakeDividedDisk(double theR
 
 Handle (GEOM_Object) MakeDividedDiskPntVecR(Handle(GEOM_Object) thePnt
 
 Handle (GEOM_Object) theVec
 
 Handle (GEOM_Object) MakeDividedCylinder(double theR
 
- Public Member Functions inherited from GEOM_IOperations
Standard_EXPORT GEOM_IOperations (GEOM_Engine *theEngine)
 
Standard_EXPORT ~GEOM_IOperations ()
 
Standard_EXPORT void StartOperation ()
 
Standard_EXPORT void FinishOperation ()
 
Standard_EXPORT void AbortOperation ()
 
Standard_EXPORT bool IsDone ()
 
Standard_EXPORT void SetNotDone ()
 
Standard_EXPORT void SetErrorCode (const TCollection_AsciiString &theErrorCode)
 
Standard_EXPORT char * GetErrorCode ()
 
Standard_EXPORT GEOM_EngineGetEngine ()
 
Standard_EXPORT GEOM_SolverGetSolver ()
 

Static Public Member Functions

static TopoDS_Shape MakePipeTShapeThicknessReduction (TopoDS_Shape theShape, double r1, double w1, double l1, double r2, double w2, double l2, double rL, double wL, double ltransL, double lthinL, double rR, double wR, double ltransR, double lthinR, double rI, double wI, double ltransI, double lthinI, bool fuseReductions)
 Add three thickness reductions at the open ends of the pipe T-Shape. More...
 
static TopoDS_Shape MakeThicknessReduction (gp_Ax2 theAxes, const double R, const double W, const double Rthin, const double Wthin, const double Ltrans, const double Lthin, bool fuse)
 Create one thickness reduction element. More...
 

Public Attributes

double theW1
 
double double theL1
 
double double double theR2
 
double double double double theW2
 
double double double double double theL2
 
double double double double double double theRL
 
double double double double double double double theWL
 
double double double double double double double double theLtransL
 
double double double double double double double double double theLthinL
 
double double double double double double double double double double theRR
 
double double double double double double double double double double double theWR
 
double double double double double double double double double double double double theLtransR
 
double double double double double double double double double double double double double theLthinR
 
double double double double double double double double double double double double double double theRI
 
double double double double double double double double double double double double double double double theWI
 
double double double double double double double double double double double double double double double double theLtransI
 
double double double double double double double double double double double double double double double double double theLthinI
 
double double double double double double double double double double double double double double double double double bool theHexMesh = true)
 
double double double double double double double double double double double double double double double double double double theH
 
double double double double double double double double double double double double double double double double double double double theW
 
double double double double double double double double double double double double double double double double double double double bool theHexMesh = true)
 
double double double double double double theH
 
double double double double double double double theW
 
double double double double double double double double theRL
 
double double double double double double double double double theWL
 
double double double double double double double double double double theLtransL
 
double double double double double double double double double double double theLthinL
 
double double double double double double double double double double double double theRR
 
double double double double double double double double double double double double double theWR
 
double double double double double double double double double double double double double double theLtransR
 
double double double double double double double double double double double double double double double theLthinR
 
double double double double double double double double double double double double double double double double theRI
 
double double double double double double double double double double double double double double double double double theWI
 
double double double double double double double double double double double double double double double double double double theLtransI
 
double double double double double double double double double double double double double double double double double double double theLthinI
 
double double double double double double double double double double double double double double double double double double theRF
 
double double double double double double double double double double double double double double double double double double bool theHexMesh = true)
 
double theRatio
 
double int theOrientation
 
double int int thePattern
 
double theR
 
double double theRatio
 
double double int thePattern
 
double theH
 
double int thePattern
 

Private Member Functions

bool MakePipeTShapePartition (Handle(GEOM_Object) theShape, double theR1, double theW1, double theL1, double theR2, double theW2, double theL2, double theH=0, double theW=0, double theRF=0, bool isNormal=true)
 
bool MakePipeTShapeMirrorAndGlue (Handle(GEOM_Object) theShape, double theR1, double theW1, double theL1, double theR2, double theW2, double theL2)
 
bool MakePipeTShapeThicknessReduction (Handle(GEOM_Object) theShape, double theR1, double theW1, double theL1, double theR2, double theW2, double theL2, double theRL, double theWL, double theLtransL, double theLthinL, double theRR, double theWR, double theLtransR, double theLthinR, double theRI, double theWI, double theLtransI, double theLthinI)
 
bool MakeGroups (Handle(GEOM_Object) theShape, int shapType, double theR1, double theW1, double theL1, double theR2, double theW2, double theL2, double theH, double theW, double theRF, Handle(TColStd_HSequenceOfTransient) theSeq, gp_Trsf aTrsf)
 
bool GetFacesOnSurf (const TopoDS_Shape &theShape, const Handle(Geom_Surface)&theSurface, const Standard_Real theTolerance, TopTools_ListOfShape &theFaces)
 
TopoDS_Shape MakeConicalFace (const gp_Ax2 &theAxis, const double theRadius, const double theRadiusThin, const double theHeight, const gp_Trsf &theTrsf)
 
bool MakeInternalGroup (const Handle(GEOM_Object) &theShape, const double theR1, const double theLen1, const double theR2, const double theLen2, const double theRL, const double theTransLenL, const double theRR, const double theTransLenR, const double theRI, const double theTransLenI, const Handle(TColStd_HSequenceOfTransient) &theSeq, const gp_Trsf &theTrsf)
 
gp_Trsf GetPositionTrsf (double theL1, double theL2, Handle(GEOM_Object) P1=0, Handle(GEOM_Object) P2=0, Handle(GEOM_Object) P3=0)
 
bool CheckCompatiblePosition (double &theL1, double &theL2, Handle(GEOM_Object) theP1, Handle(GEOM_Object) theP2, Handle(GEOM_Object) theP3, double theTolerance)
 

Private Attributes

GEOMImpl_IBasicOperationsmyBasicOperations
 
GEOMImpl_IBooleanOperationsmyBooleanOperations
 
GEOMImpl_IShapesOperationsmyShapesOperations
 
GEOMImpl_ITransformOperationsmyTransformOperations
 
GEOMImpl_IBlocksOperationsmyBlocksOperations
 
GEOMImpl_I3DPrimOperationsmy3DPrimOperations
 
GEOMImpl_ILocalOperationsmyLocalOperations
 
GEOMImpl_IHealingOperationsmyHealingOperations
 
GEOMImpl_IGroupOperationsmyGroupOperations
 

Constructor & Destructor Documentation

◆ AdvancedEngine_IOperations()

◆ ~AdvancedEngine_IOperations()

Member Function Documentation

◆ CheckCompatiblePosition()

bool AdvancedEngine_IOperations::CheckCompatiblePosition ( double &  theL1,
double &  theL2,
Handle(GEOM_Object)  theP1,
Handle(GEOM_Object)  theP2,
Handle(GEOM_Object)  theP3,
double  theTolerance 
)
private

CheckCompatiblePosition

References KO, OK, GEOM_IOperations::SetErrorCode(), theL1, and theL2.

◆ GetFacesOnSurf()

◆ GetPositionTrsf()

gp_Trsf AdvancedEngine_IOperations::GetPositionTrsf ( double  theL1,
double  theL2,
Handle(GEOM_Object)  theP1 = 0,
Handle(GEOM_Object)  theP2 = 0,
Handle(GEOM_Object)  theP3 = 0 
)
private

SetPosition

References theL1, and theL2.

◆ Handle() [1/19]

AdvancedEngine_IOperations::Handle ( GEOM_Object  )

◆ Handle() [2/19]

AdvancedEngine_IOperations::Handle ( GEOM_Object  )

◆ Handle() [3/19]

AdvancedEngine_IOperations::Handle ( GEOM_Object  )

◆ Handle() [4/19]

double double double double double double double double double double double double double double double double double bool AdvancedEngine_IOperations::Handle ( GEOM_Object  )
pure virtual

◆ Handle() [5/19]

double double double double double double double double double double double double double double double double double double double bool AdvancedEngine_IOperations::Handle ( GEOM_Object  )
pure virtual

◆ Handle() [6/19]

double double double double double double double double double double double double double double double double double double bool AdvancedEngine_IOperations::Handle ( GEOM_Object  )
pure virtual

◆ Handle() [7/19]

double double double double double double double double double double double double double double double double double bool AdvancedEngine_IOperations::Handle ( GEOM_Object  )
pure virtual

◆ Handle() [8/19]

double double double double double double double double double double double double double double double double double double double bool AdvancedEngine_IOperations::Handle ( GEOM_Object  )
pure virtual

◆ Handle() [9/19]

double double double double double double double double double double double double double double double double double double bool AdvancedEngine_IOperations::Handle ( GEOM_Object  )
pure virtual

◆ Handle() [10/19]

double double double double double double double double double double double double double double double double double bool AdvancedEngine_IOperations::Handle ( GEOM_Object  )
pure virtual

◆ Handle() [11/19]

double double double double double double double double double double double double double double double double double double double bool AdvancedEngine_IOperations::Handle ( GEOM_Object  )
pure virtual

◆ Handle() [12/19]

double double double double double double double double double double double double double double double double double double bool AdvancedEngine_IOperations::Handle ( GEOM_Object  )
pure virtual

◆ Handle() [13/19]

AdvancedEngine_IOperations::Handle ( GEOM_Object  )

◆ Handle() [14/19]

AdvancedEngine_IOperations::Handle ( TColStd_HSequenceOfTransient  )

◆ Handle() [15/19]

AdvancedEngine_IOperations::Handle ( TColStd_HSequenceOfTransient  )

◆ Handle() [16/19]

AdvancedEngine_IOperations::Handle ( TColStd_HSequenceOfTransient  )

◆ Handle() [17/19]

AdvancedEngine_IOperations::Handle ( TColStd_HSequenceOfTransient  )

◆ Handle() [18/19]

AdvancedEngine_IOperations::Handle ( TColStd_HSequenceOfTransient  )

◆ Handle() [19/19]

AdvancedEngine_IOperations::Handle ( TColStd_HSequenceOfTransient  )

◆ MakeConicalFace()

TopoDS_Shape AdvancedEngine_IOperations::MakeConicalFace ( const gp_Ax2 &  theAxis,
const double  theRadius,
const double  theRadiusThin,
const double  theHeight,
const gp_Trsf &  theTrsf 
)
private

Creates and returns conical face.

References aResult.

◆ MakeGroups()

bool AdvancedEngine_IOperations::MakeGroups ( Handle(GEOM_Object)  theShape,
int  shapeType,
double  theR1,
double  theW1,
double  theL1,
double  theR2,
double  theW2,
double  theL2,
double  theH,
double  theW,
double  theRF,
Handle(TColStd_HSequenceOfTransient)  theSeq,
gp_Trsf  aTrsf 
)
private

◆ MakeInternalGroup()

bool AdvancedEngine_IOperations::MakeInternalGroup ( const Handle(GEOM_Object) &  theShape,
const double  theR1,
const double  theLen1,
const double  theR2,
const double  theLen2,
const double  theRL,
const double  theTransLenL,
const double  theRR,
const double  theTransLenR,
const double  theRI,
const double  theTransLenI,
const Handle(TColStd_HSequenceOfTransient) &  theSeq,
const gp_Trsf &  theTrsf 
)
private

◆ MakePipeTShapeMirrorAndGlue()

bool AdvancedEngine_IOperations::MakePipeTShapeMirrorAndGlue ( Handle(GEOM_Object)  theShape,
double  theR1,
double  theW1,
double  theL1,
double  theR2,
double  theW2,
double  theL2 
)
private

◆ MakePipeTShapePartition()

bool AdvancedEngine_IOperations::MakePipeTShapePartition ( Handle(GEOM_Object)  theShape,
double  theR1,
double  theW1,
double  theL1,
double  theR2,
double  theW2,
double  theL2,
double  theH = 0,
double  theW = 0,
double  theRF = 0,
bool  isNormal = true 
)
private

◆ MakePipeTShapeThicknessReduction() [1/2]

bool AdvancedEngine_IOperations::MakePipeTShapeThicknessReduction ( Handle(GEOM_Object)  theShape,
double  theR1,
double  theW1,
double  theL1,
double  theR2,
double  theW2,
double  theL2,
double  theRL,
double  theWL,
double  theLtransL,
double  theLthinL,
double  theRR,
double  theWR,
double  theLtransR,
double  theLthinR,
double  theRI,
double  theWI,
double  theLtransI,
double  theLthinI 
)
private

◆ MakePipeTShapeThicknessReduction() [2/2]

TopoDS_Shape AdvancedEngine_IOperations::MakePipeTShapeThicknessReduction ( TopoDS_Shape  theShape,
double  r1,
double  w1,
double  l1,
double  r2,
double  w2,
double  l2,
double  rL,
double  wL,
double  ltransL,
double  lthinL,
double  rR,
double  wR,
double  ltransR,
double  lthinR,
double  rI,
double  wI,
double  ltransI,
double  lthinI,
bool  fuseReductions 
)
static
Parameters
theShape- the pipe T-Shape
r1- the internal radius of main pipe
w1- the thickness of main pipe
l1- the half-length of main pipe
r2- the internal radius of incident pipe
w2- the thickness of incident pipe
l2- the half-length of main pipe
r*,w*,ltrans*and lthin* - internal radius, thickness, length of transition part and length of thin part of left(L), right(R) and incident(I) thickness reduction correspondingly
fuseReductions- boolean flag (use true to generate single solid, false to obtain parts, useful for hexameshing)
Return values
TopoDS_Shape- Resulting shape

References GEOMUtils::AddSimpleShapes(), aResult, and MakeThicknessReduction().

◆ MakeThicknessReduction()

TopoDS_Shape AdvancedEngine_IOperations::MakeThicknessReduction ( gp_Ax2  theAxes,
const double  R,
const double  W,
const double  Rthin,
const double  Wthin,
const double  Ltrans,
const double  Lthin,
bool  fuse 
)
static

This method is called three times from MakePipeTShapeThicknessReduction to create three thickness reductions (one per each open end of a pipe T-Shape)

Parameters
theAxes- the position
R- the internal radius of main pipe
W- the thickness of main pipe
Rthin- the internal radius of thin part
Wthin- the thickness of thin part
Ltrans- the length of transition part
Lthin- the length of thin part
fuse- boolean flag (use true to generate single solid, false to obtain parts, useful for hexameshing)
Return values
TopoDS_Shape- Resulting shape

References GEOMAlgo_Splitter::AddTool(), and GEOMAlgo_Splitter::SetLimit().

Member Data Documentation

◆ my3DPrimOperations

GEOMImpl_I3DPrimOperations* AdvancedEngine_IOperations::my3DPrimOperations
private

◆ myBasicOperations

GEOMImpl_IBasicOperations* AdvancedEngine_IOperations::myBasicOperations
private

◆ myBlocksOperations

GEOMImpl_IBlocksOperations* AdvancedEngine_IOperations::myBlocksOperations
private

◆ myBooleanOperations

GEOMImpl_IBooleanOperations* AdvancedEngine_IOperations::myBooleanOperations
private

◆ myGroupOperations

GEOMImpl_IGroupOperations* AdvancedEngine_IOperations::myGroupOperations
private

◆ myHealingOperations

GEOMImpl_IHealingOperations* AdvancedEngine_IOperations::myHealingOperations
private

◆ myLocalOperations

GEOMImpl_ILocalOperations* AdvancedEngine_IOperations::myLocalOperations
private

◆ myShapesOperations

GEOMImpl_IShapesOperations* AdvancedEngine_IOperations::myShapesOperations
private

◆ myTransformOperations

GEOMImpl_ITransformOperations* AdvancedEngine_IOperations::myTransformOperations
private

◆ theH [1/3]

double double double double double double double double double double double double double double double double double double AdvancedEngine_IOperations::theH

◆ theH [2/3]

double double double double double double AdvancedEngine_IOperations::theH

◆ theH [3/3]

double AdvancedEngine_IOperations::theH

◆ theHexMesh [1/3]

double double double double double double double double double double double double double double double double double double bool AdvancedEngine_IOperations::theHexMesh = true)

◆ theHexMesh [2/3]

double double double double double double double double double double double double double double double double double double double bool AdvancedEngine_IOperations::theHexMesh = true)

◆ theHexMesh [3/3]

double double double double double double double double double double double double double double double double double double bool AdvancedEngine_IOperations::theHexMesh = true)

◆ theL1

double double AdvancedEngine_IOperations::theL1

◆ theL2

double double double double double AdvancedEngine_IOperations::theL2

◆ theLthinI [1/2]

double double double double double double double double double double double double double double double double double AdvancedEngine_IOperations::theLthinI

◆ theLthinI [2/2]

double double double double double double double double double double double double double double double double double double double AdvancedEngine_IOperations::theLthinI

◆ theLthinL [1/2]

double double double double double double double double double AdvancedEngine_IOperations::theLthinL

◆ theLthinL [2/2]

double double double double double double double double double double double AdvancedEngine_IOperations::theLthinL

◆ theLthinR [1/2]

double double double double double double double double double double double double double AdvancedEngine_IOperations::theLthinR

◆ theLthinR [2/2]

double double double double double double double double double double double double double double double AdvancedEngine_IOperations::theLthinR

◆ theLtransI [1/2]

double double double double double double double double double double double double double double double double AdvancedEngine_IOperations::theLtransI

◆ theLtransI [2/2]

double double double double double double double double double double double double double double double double double double AdvancedEngine_IOperations::theLtransI

◆ theLtransL [1/2]

double double double double double double double double AdvancedEngine_IOperations::theLtransL

◆ theLtransL [2/2]

double double double double double double double double double double AdvancedEngine_IOperations::theLtransL

◆ theLtransR [1/2]

double double double double double double double double double double double double AdvancedEngine_IOperations::theLtransR

◆ theLtransR [2/2]

double double double double double double double double double double double double double double AdvancedEngine_IOperations::theLtransR

◆ theOrientation

double int AdvancedEngine_IOperations::theOrientation

◆ thePattern [1/3]

double int int AdvancedEngine_IOperations::thePattern

◆ thePattern [2/3]

double double int AdvancedEngine_IOperations::thePattern

◆ thePattern [3/3]

double int AdvancedEngine_IOperations::thePattern

◆ theR

double AdvancedEngine_IOperations::theR

◆ theR2

double double double AdvancedEngine_IOperations::theR2

◆ theRatio [1/2]

double AdvancedEngine_IOperations::theRatio

◆ theRatio [2/2]

double double AdvancedEngine_IOperations::theRatio

◆ theRF

double double double double double double double double double double double double double double double double double double AdvancedEngine_IOperations::theRF

◆ theRI [1/2]

double double double double double double double double double double double double double double AdvancedEngine_IOperations::theRI

◆ theRI [2/2]

double double double double double double double double double double double double double double double double AdvancedEngine_IOperations::theRI

◆ theRL [1/2]

double double double double double double AdvancedEngine_IOperations::theRL

◆ theRL [2/2]

double double double double double double double double AdvancedEngine_IOperations::theRL

◆ theRR [1/2]

double double double double double double double double double double AdvancedEngine_IOperations::theRR

◆ theRR [2/2]

double double double double double double double double double double double double AdvancedEngine_IOperations::theRR

◆ theW [1/2]

double double double double double double double double double double double double double double double double double double double AdvancedEngine_IOperations::theW

◆ theW [2/2]

double double double double double double double AdvancedEngine_IOperations::theW

◆ theW1

double AdvancedEngine_IOperations::theW1

◆ theW2

double double double double AdvancedEngine_IOperations::theW2

◆ theWI [1/2]

double double double double double double double double double double double double double double double AdvancedEngine_IOperations::theWI

◆ theWI [2/2]

double double double double double double double double double double double double double double double double double AdvancedEngine_IOperations::theWI

◆ theWL [1/2]

double double double double double double double AdvancedEngine_IOperations::theWL

◆ theWL [2/2]

double double double double double double double double double AdvancedEngine_IOperations::theWL

◆ theWR [1/2]

double double double double double double double double double double double AdvancedEngine_IOperations::theWR

◆ theWR [2/2]

double double double double double double double double double double double double double AdvancedEngine_IOperations::theWR

The documentation for this class was generated from the following files: