PAL10403: pb with GetEdgeNearPoint()

This commit is contained in:
jfa 2005-10-27 08:57:18 +00:00
parent 163fb83e85
commit 387a0fd3bc

View File

@ -508,7 +508,7 @@ Handle(GEOM_Object) GEOMImpl_IBlocksOperations::MakeBlockCompound
//=============================================================================
/*!
* GetEdge
* GetPoint
*/
//=============================================================================
Handle(GEOM_Object) GEOMImpl_IBlocksOperations::GetPoint
@ -528,13 +528,7 @@ Handle(GEOM_Object) GEOMImpl_IBlocksOperations::GetPoint
TopoDS_Shape aBlockOrComp = theShape->GetValue();
if (aBlockOrComp.IsNull()) {
SetErrorCode("Block or compound is null");
return NULL;
}
if (aBlockOrComp.ShapeType() != TopAbs_SOLID &&
aBlockOrComp.ShapeType() != TopAbs_COMPOUND &&
aBlockOrComp.ShapeType() != TopAbs_COMPSOLID) {
SetErrorCode("Shape is neither a block, nor a compound of blocks");
SetErrorCode("Given shape is null");
return NULL;
}
@ -614,13 +608,7 @@ Handle(GEOM_Object) GEOMImpl_IBlocksOperations::GetEdge
TopoDS_Shape aBlockOrComp = theShape->GetValue();
if (aBlockOrComp.IsNull()) {
SetErrorCode("Block or compound is null");
return NULL;
}
if (aBlockOrComp.ShapeType() != TopAbs_SOLID &&
aBlockOrComp.ShapeType() != TopAbs_COMPOUND &&
aBlockOrComp.ShapeType() != TopAbs_COMPSOLID) {
SetErrorCode("Shape is neither a block, nor a compound of blocks");
SetErrorCode("Given shape is null");
return NULL;
}
@ -737,13 +725,7 @@ Handle(GEOM_Object) GEOMImpl_IBlocksOperations::GetEdgeNearPoint
TopoDS_Shape aBlockOrComp = theShape->GetValue();
if (aBlockOrComp.IsNull()) {
SetErrorCode("Block or compound is null");
return NULL;
}
if (aBlockOrComp.ShapeType() != TopAbs_SOLID &&
aBlockOrComp.ShapeType() != TopAbs_COMPOUND &&
aBlockOrComp.ShapeType() != TopAbs_COMPSOLID) {
SetErrorCode("Shape is neither a block, nor a compound of blocks");
SetErrorCode("Given shape is null");
return NULL;
}
@ -773,6 +755,11 @@ Handle(GEOM_Object) GEOMImpl_IBlocksOperations::GetEdgeNearPoint
}
}
if (nbEdges == 0) {
SetErrorCode("Given shape contains no edges");
return NULL;
}
mapShape.Clear();
Standard_Integer ind = 1;
TopTools_Array1OfShape anEdges (1, nbEdges);
@ -873,12 +860,6 @@ Handle(GEOM_Object) GEOMImpl_IBlocksOperations::GetFaceByPoints
SetErrorCode("Block or compound is null");
return NULL;
}
if (aBlockOrComp.ShapeType() != TopAbs_SOLID &&
aBlockOrComp.ShapeType() != TopAbs_COMPOUND &&
aBlockOrComp.ShapeType() != TopAbs_COMPSOLID) {
SetErrorCode("Shape is neither a block, nor a compound of blocks");
return NULL;
}
TopoDS_Shape anArg1 = thePoint1->GetValue();
TopoDS_Shape anArg2 = thePoint2->GetValue();