Fix regressions

1D_mesh_LocalLength_00/A4
bugs_03/D5,D6
bugs_05/F8
bugs_19/X1
This commit is contained in:
eap 2014-08-26 15:58:38 +04:00
parent 2eeec022d2
commit 05a38ac54e
3 changed files with 9 additions and 4 deletions

View File

@ -385,7 +385,7 @@ class StdMeshersBuilder_Segment(Mesh_Algorithm):
algo = self.mesh.smeshpyD.CreateHypothesis("SegmentAroundVertex_0D", "libStdMeshersEngine.so") algo = self.mesh.smeshpyD.CreateHypothesis("SegmentAroundVertex_0D", "libStdMeshersEngine.so")
pass pass
status = self.mesh.mesh.AddHypothesis(self.geom, algo) status = self.mesh.mesh.AddHypothesis(self.geom, algo)
TreatHypoStatus(status, "SegmentAroundVertex_0D", name, True) TreatHypoStatus(status, "SegmentAroundVertex_0D", name, True, self.mesh)
# #
from salome.smesh.smeshBuilder import IsEqual from salome.smesh.smeshBuilder import IsEqual
comFun = lambda hyp, args: IsEqual(hyp.GetLength(), args[0]) comFun = lambda hyp, args: IsEqual(hyp.GetLength(), args[0])

View File

@ -1596,7 +1596,7 @@ class Mesh:
AssureGeomPublished( self, geom, "shape for %s" % hyp.GetName()) AssureGeomPublished( self, geom, "shape for %s" % hyp.GetName())
status = self.mesh.AddHypothesis(geom, hyp) status = self.mesh.AddHypothesis(geom, hyp)
else: else:
status = HYP_BAD_GEOMETRY status = HYP_BAD_GEOMETRY,""
hyp_name = GetName( hyp ) hyp_name = GetName( hyp )
geom_name = "" geom_name = ""
if geom: if geom:
@ -1876,6 +1876,11 @@ class Mesh:
# @ingroup l2_grps_create # @ingroup l2_grps_create
def MakeGroupByIds(self, groupName, elementType, elemIDs): def MakeGroupByIds(self, groupName, elementType, elemIDs):
group = self.mesh.CreateGroup(elementType, groupName) group = self.mesh.CreateGroup(elementType, groupName)
if hasattr( elemIDs, "GetIDs" ):
if hasattr( elemIDs, "SetMesh" ):
elemIDs.SetMesh( self.GetMesh() )
group.AddFrom( elemIDs )
else:
group.Add(elemIDs) group.Add(elemIDs)
return group return group

View File

@ -553,7 +553,7 @@ namespace {
const TopoDS_Shape& srcV = srcExp.Current(); const TopoDS_Shape& srcV = srcExp.Current();
const TopoDS_Shape& tgtV = shape2ShapeMap( srcV, /*isSrc=*/true ); const TopoDS_Shape& tgtV = shape2ShapeMap( srcV, /*isSrc=*/true );
const SMDS_MeshNode* srcN = SMESH_Algo::VertexNode( TopoDS::Vertex( srcV ), srcMeshDS ); const SMDS_MeshNode* srcN = SMESH_Algo::VertexNode( TopoDS::Vertex( srcV ), srcMeshDS );
const SMDS_MeshNode* tgtN = SMESH_Algo::VertexNode( TopoDS::Vertex( tgtV ), srcMeshDS ); const SMDS_MeshNode* tgtN = SMESH_Algo::VertexNode( TopoDS::Vertex( tgtV ), tgtMeshDS );
if ( !srcN ) if ( !srcN )
continue; continue;
if ( !tgtN || tgtV.ShapeType() != TopAbs_VERTEX ) if ( !tgtN || tgtV.ShapeType() != TopAbs_VERTEX )