mirror of
https://git.salome-platform.org/gitpub/modules/geom.git
synced 2025-04-08 18:37:28 +05:00
Mantis issue 0020998: EDF 1572 GEOM: Some limitations to the PipeTShape.
This commit is contained in:
parent
a1c82891d9
commit
a9b4c10985
@ -90,6 +90,7 @@ GEOMImpl_IAdvancedOperations::GEOMImpl_IAdvancedOperations(GEOM_Engine* theEngin
|
|||||||
myBlocksOperations = new GEOMImpl_IBlocksOperations(GetEngine(), GetDocID());
|
myBlocksOperations = new GEOMImpl_IBlocksOperations(GetEngine(), GetDocID());
|
||||||
my3DPrimOperations = new GEOMImpl_I3DPrimOperations(GetEngine(), GetDocID());
|
my3DPrimOperations = new GEOMImpl_I3DPrimOperations(GetEngine(), GetDocID());
|
||||||
myLocalOperations = new GEOMImpl_ILocalOperations(GetEngine(), GetDocID());
|
myLocalOperations = new GEOMImpl_ILocalOperations(GetEngine(), GetDocID());
|
||||||
|
myHealingOperations = new GEOMImpl_IHealingOperations(GetEngine(), GetDocID());
|
||||||
}
|
}
|
||||||
|
|
||||||
//=============================================================================
|
//=============================================================================
|
||||||
@ -107,6 +108,7 @@ GEOMImpl_IAdvancedOperations::~GEOMImpl_IAdvancedOperations()
|
|||||||
delete myBlocksOperations;
|
delete myBlocksOperations;
|
||||||
delete my3DPrimOperations;
|
delete my3DPrimOperations;
|
||||||
delete myLocalOperations;
|
delete myLocalOperations;
|
||||||
|
delete myHealingOperations;
|
||||||
}
|
}
|
||||||
|
|
||||||
//=============================================================================
|
//=============================================================================
|
||||||
@ -1884,9 +1886,7 @@ GEOMImpl_IAdvancedOperations::MakePipeTShapeFillet(double theR1, double theW1, d
|
|||||||
// END of fillet
|
// END of fillet
|
||||||
|
|
||||||
// BEGIN: Limit tolerances (debug)
|
// BEGIN: Limit tolerances (debug)
|
||||||
GEOMImpl_IHealingOperations myHealingOperations (GetEngine(), GetDocID());
|
Handle(GEOM_Object) aCorr1 = myHealingOperations->LimitTolerance(aShape, 1e-07);
|
||||||
|
|
||||||
Handle(GEOM_Object) aCorr1 = myHealingOperations.LimitTolerance(aShape, 1e-07);
|
|
||||||
TopoDS_Shape aCorr1Shape = aCorr1->GetValue();
|
TopoDS_Shape aCorr1Shape = aCorr1->GetValue();
|
||||||
aShape->GetLastFunction()->SetValue(aCorr1Shape);
|
aShape->GetLastFunction()->SetValue(aCorr1Shape);
|
||||||
aCorr1->GetLastFunction()->SetDescription("");
|
aCorr1->GetLastFunction()->SetDescription("");
|
||||||
@ -2086,9 +2086,7 @@ GEOMImpl_IAdvancedOperations::MakePipeTShapeFilletWithPosition(double theR1, dou
|
|||||||
// END of fillet
|
// END of fillet
|
||||||
|
|
||||||
// BEGIN: Limit tolerances (debug)
|
// BEGIN: Limit tolerances (debug)
|
||||||
GEOMImpl_IHealingOperations myHealingOperations (GetEngine(), GetDocID());
|
Handle(GEOM_Object) aCorr1 = myHealingOperations->LimitTolerance(aShape, 1e-07);
|
||||||
|
|
||||||
Handle(GEOM_Object) aCorr1 = myHealingOperations.LimitTolerance(aShape, 1e-07);
|
|
||||||
TopoDS_Shape aCorr1Shape = aCorr1->GetValue();
|
TopoDS_Shape aCorr1Shape = aCorr1->GetValue();
|
||||||
aShape->GetLastFunction()->SetValue(aCorr1Shape);
|
aShape->GetLastFunction()->SetValue(aCorr1Shape);
|
||||||
aCorr1->GetLastFunction()->SetDescription("");
|
aCorr1->GetLastFunction()->SetDescription("");
|
||||||
|
@ -16,10 +16,9 @@
|
|||||||
//
|
//
|
||||||
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||||
//
|
//
|
||||||
|
|
||||||
// File : GEOMImpl_IAdvancedOperations.hxx
|
// File : GEOMImpl_IAdvancedOperations.hxx
|
||||||
// Author : Vadim SANDLER, Open CASCADE S.A.S. (vadim.sandler@opencascade.com)
|
// Author : Vadim SANDLER, Open CASCADE S.A.S. (vadim.sandler@opencascade.com)
|
||||||
//
|
|
||||||
#ifndef _GEOMImpl_IAdvancedOperations_HXX_
|
#ifndef _GEOMImpl_IAdvancedOperations_HXX_
|
||||||
#define _GEOMImpl_IAdvancedOperations_HXX_
|
#define _GEOMImpl_IAdvancedOperations_HXX_
|
||||||
|
|
||||||
@ -35,31 +34,32 @@ class GEOMImpl_ITransformOperations;
|
|||||||
class GEOMImpl_IBlocksOperations;
|
class GEOMImpl_IBlocksOperations;
|
||||||
class GEOMImpl_I3DPrimOperations;
|
class GEOMImpl_I3DPrimOperations;
|
||||||
class GEOMImpl_ILocalOperations;
|
class GEOMImpl_ILocalOperations;
|
||||||
|
class GEOMImpl_IHealingOperations;
|
||||||
|
|
||||||
class GEOMImpl_IAdvancedOperations: public GEOM_IOperations {
|
class GEOMImpl_IAdvancedOperations: public GEOM_IOperations {
|
||||||
private:
|
private:
|
||||||
bool MakePipeTShapePartition(Handle(GEOM_Object) theShape,
|
bool MakePipeTShapePartition(Handle(GEOM_Object) theShape,
|
||||||
double theR1, double theW1, double theL1,
|
double theR1, double theW1, double theL1,
|
||||||
double theR2, double theW2, double theL2,
|
double theR2, double theW2, double theL2,
|
||||||
double theH = 0, double theW = 0,
|
double theH = 0, double theW = 0,
|
||||||
double theRF = 0, bool isNormal = true);
|
double theRF = 0, bool isNormal = true);
|
||||||
bool MakePipeTShapeMirrorAndGlue(Handle(GEOM_Object) theShape,
|
bool MakePipeTShapeMirrorAndGlue(Handle(GEOM_Object) theShape,
|
||||||
double theR1, double theW1, double theL1,
|
double theR1, double theW1, double theL1,
|
||||||
double theR2, double theW2, double theL2);
|
double theR2, double theW2, double theL2);
|
||||||
bool MakeGroups(Handle(GEOM_Object) theShape, int shapType,
|
bool MakeGroups(Handle(GEOM_Object) theShape, int shapType,
|
||||||
double theR1, double theW1, double theL1,
|
double theR1, double theW1, double theL1,
|
||||||
double theR2, double theW2, double theL2,
|
double theR2, double theW2, double theL2,
|
||||||
Handle(TColStd_HSequenceOfTransient) theSeq,
|
Handle(TColStd_HSequenceOfTransient) theSeq,
|
||||||
gp_Trsf aTrsf);
|
gp_Trsf aTrsf);
|
||||||
gp_Trsf GetPositionTrsf(double theL1, double theL2,
|
gp_Trsf GetPositionTrsf(double theL1, double theL2,
|
||||||
Handle(GEOM_Object) P1 = 0,
|
Handle(GEOM_Object) P1 = 0,
|
||||||
Handle(GEOM_Object) P2 = 0,
|
Handle(GEOM_Object) P2 = 0,
|
||||||
Handle(GEOM_Object) P3 = 0);
|
Handle(GEOM_Object) P3 = 0);
|
||||||
bool CheckCompatiblePosition(double& theL1, double& theL2,
|
bool CheckCompatiblePosition(double& theL1, double& theL2,
|
||||||
Handle(GEOM_Object) theP1,
|
Handle(GEOM_Object) theP1,
|
||||||
Handle(GEOM_Object) theP2,
|
Handle(GEOM_Object) theP2,
|
||||||
Handle(GEOM_Object) theP3,
|
Handle(GEOM_Object) theP3,
|
||||||
double theTolerance);
|
double theTolerance);
|
||||||
private:
|
private:
|
||||||
GEOMImpl_IBasicOperations* myBasicOperations;
|
GEOMImpl_IBasicOperations* myBasicOperations;
|
||||||
GEOMImpl_IBooleanOperations* myBooleanOperations;
|
GEOMImpl_IBooleanOperations* myBooleanOperations;
|
||||||
@ -68,6 +68,7 @@ private:
|
|||||||
GEOMImpl_IBlocksOperations* myBlocksOperations;
|
GEOMImpl_IBlocksOperations* myBlocksOperations;
|
||||||
GEOMImpl_I3DPrimOperations* my3DPrimOperations;
|
GEOMImpl_I3DPrimOperations* my3DPrimOperations;
|
||||||
GEOMImpl_ILocalOperations* myLocalOperations;
|
GEOMImpl_ILocalOperations* myLocalOperations;
|
||||||
|
GEOMImpl_IHealingOperations* myHealingOperations;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
Standard_EXPORT GEOMImpl_IAdvancedOperations(GEOM_Engine* theEngine, int theDocID);
|
Standard_EXPORT GEOMImpl_IAdvancedOperations(GEOM_Engine* theEngine, int theDocID);
|
||||||
@ -75,39 +76,39 @@ public:
|
|||||||
|
|
||||||
Standard_EXPORT Handle(TColStd_HSequenceOfTransient)
|
Standard_EXPORT Handle(TColStd_HSequenceOfTransient)
|
||||||
MakePipeTShape(double theR1, double theW1, double theL1,
|
MakePipeTShape(double theR1, double theW1, double theL1,
|
||||||
double theR2, double theW2, double theL2,
|
double theR2, double theW2, double theL2,
|
||||||
bool theHexMesh = true);
|
bool theHexMesh = true);
|
||||||
Standard_EXPORT Handle(TColStd_HSequenceOfTransient)
|
Standard_EXPORT Handle(TColStd_HSequenceOfTransient)
|
||||||
MakePipeTShapeWithPosition(double theR1, double theW1, double theL1,
|
MakePipeTShapeWithPosition(double theR1, double theW1, double theL1,
|
||||||
double theR2, double theW2, double theL2,
|
double theR2, double theW2, double theL2,
|
||||||
bool theHexMesh = true,
|
bool theHexMesh = true,
|
||||||
Handle(GEOM_Object) P1 = 0,
|
Handle(GEOM_Object) P1 = 0,
|
||||||
Handle(GEOM_Object) P2 = 0,
|
Handle(GEOM_Object) P2 = 0,
|
||||||
Handle(GEOM_Object) P3 = 0);
|
Handle(GEOM_Object) P3 = 0);
|
||||||
Standard_EXPORT Handle(TColStd_HSequenceOfTransient)
|
Standard_EXPORT Handle(TColStd_HSequenceOfTransient)
|
||||||
MakePipeTShapeChamfer(double theR1, double theW1, double theL1,
|
MakePipeTShapeChamfer(double theR1, double theW1, double theL1,
|
||||||
double theR2, double theW2, double theL2,
|
double theR2, double theW2, double theL2,
|
||||||
double theH, double theW,
|
double theH, double theW,
|
||||||
bool theHexMesh = true);
|
bool theHexMesh = true);
|
||||||
Standard_EXPORT Handle(TColStd_HSequenceOfTransient)
|
Standard_EXPORT Handle(TColStd_HSequenceOfTransient)
|
||||||
MakePipeTShapeChamferWithPosition(double theR1, double theW1, double theL1,
|
MakePipeTShapeChamferWithPosition(double theR1, double theW1, double theL1,
|
||||||
double theR2, double theW2, double theL2,
|
double theR2, double theW2, double theL2,
|
||||||
double theH, double theW,
|
double theH, double theW,
|
||||||
bool theHexMesh = true,
|
bool theHexMesh = true,
|
||||||
Handle(GEOM_Object) P1 = 0,
|
Handle(GEOM_Object) P1 = 0,
|
||||||
Handle(GEOM_Object) P2 = 0,
|
Handle(GEOM_Object) P2 = 0,
|
||||||
Handle(GEOM_Object) P3 = 0);
|
Handle(GEOM_Object) P3 = 0);
|
||||||
Standard_EXPORT Handle(TColStd_HSequenceOfTransient)
|
Standard_EXPORT Handle(TColStd_HSequenceOfTransient)
|
||||||
MakePipeTShapeFillet(double theR1, double theW1, double theL1,
|
MakePipeTShapeFillet(double theR1, double theW1, double theL1,
|
||||||
double theR2, double theW2, double theL2,
|
double theR2, double theW2, double theL2,
|
||||||
double theRF, bool theHexMesh = true);
|
double theRF, bool theHexMesh = true);
|
||||||
Standard_EXPORT Handle(TColStd_HSequenceOfTransient)
|
Standard_EXPORT Handle(TColStd_HSequenceOfTransient)
|
||||||
MakePipeTShapeFilletWithPosition(double theR1, double theW1, double theL1,
|
MakePipeTShapeFilletWithPosition(double theR1, double theW1, double theL1,
|
||||||
double theR2, double theW2, double theL2,
|
double theR2, double theW2, double theL2,
|
||||||
double theRF, bool theHexMesh = true,
|
double theRF, bool theHexMesh = true,
|
||||||
Handle(GEOM_Object) P1 = 0,
|
Handle(GEOM_Object) P1 = 0,
|
||||||
Handle(GEOM_Object) P2 = 0,
|
Handle(GEOM_Object) P2 = 0,
|
||||||
Handle(GEOM_Object) P3 = 0);
|
Handle(GEOM_Object) P3 = 0);
|
||||||
/*@@ insert new functions before this line @@ do not remove this line @@*/
|
/*@@ insert new functions before this line @@ do not remove this line @@*/
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
x
Reference in New Issue
Block a user