X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FSMESH_SWIG%2FStdMeshersBuilder.py;h=beea2de8dd50cf27c54944cf9c8f66ad5e1736f2;hp=35e43e551ba6d5b8ce79acfb63de41e21cfb4fec;hb=05318c85be12a7a78e955fa9f9390c0a4895f8ca;hpb=a17b36970bc61da1d664453c615754997c925b18 diff --git a/src/SMESH_SWIG/StdMeshersBuilder.py b/src/SMESH_SWIG/StdMeshersBuilder.py index 35e43e551..beea2de8d 100644 --- a/src/SMESH_SWIG/StdMeshersBuilder.py +++ b/src/SMESH_SWIG/StdMeshersBuilder.py @@ -21,6 +21,8 @@ # @package StdMeshersBuilder # Python API for the standard meshing plug-in module. +LIBRARY = "libStdMeshersEngine.so" + from salome.smesh.smesh_algorithm import Mesh_Algorithm import StdMeshers @@ -261,7 +263,7 @@ class StdMeshersBuilder_Segment(Mesh_Algorithm): # on curve from 0 to 1 (additionally it is neecessary to check # orientation of edges and create list of reversed edges if it is # needed) and sets numbers of segments between given points (default - # values are equals 1 + # values are 1) # @param points defines the list of parameters on curve # @param nbSegs defines the list of numbers of segments # @param reversedEdges is a list of edges to mesh using reversed orientation. @@ -379,7 +381,8 @@ class StdMeshersBuilder_Segment(Mesh_Algorithm): pass # 0D algorithm if self.geom is None: - raise RuntimeError, "Attemp to create SegmentAroundVertex_0D algoritm on None shape" + self.geom = store_geom + raise RuntimeError, "Attempt to create SegmentAroundVertex_0D algorithm on None shape" from salome.smesh.smeshBuilder import AssureGeomPublished, GetName, TreatHypoStatus AssureGeomPublished( self.mesh, self.geom ) name = GetName(self.geom) @@ -950,6 +953,10 @@ class StdMeshersBuilder_Prism3D(Mesh_Algorithm): ## doc string of the method # @internal docHelper = "Creates prism 3D algorithm for volumes" + ## flag pointing whether this algorithm should be used by default in dynamic method + # of smeshBuilder.Mesh class + # @internal + isDefault = True ## Private constructor. # @param mesh parent mesh object algorithm is assigned to @@ -961,10 +968,8 @@ class StdMeshersBuilder_Prism3D(Mesh_Algorithm): shape = geom if not shape: shape = mesh.geom - from salome.geom import geomBuilder - nbSolids = len( geomBuilder.geom.SubShapeAll( shape, geomBuilder.geomBuilder.ShapeType["SOLID"] )) - nbShells = len( geomBuilder.geom.SubShapeAll( shape, geomBuilder.geomBuilder.ShapeType["SHELL"] )) - if nbSolids == 0 or nbSolids == nbShells: + isRadial = mesh.smeshpyD.IsApplicable("RadialPrism_3D", LIBRARY, shape, False ) + if not isRadial: self.Create(mesh, geom, "Prism_3D") pass else: @@ -1469,7 +1474,7 @@ class StdMeshersBuilder_Cartesian_3D(Mesh_Algorithm): # several functions, they must be accompanied by relative coordinates of # points dividing the whole shape into ranges where the functions apply; points # coodrinates should vary within (0.0, 1.0) range. Parameter \a t of the spacing - # function f(t) varies from 0.0 to 1.0 witin a shape range. + # function f(t) varies from 0.0 to 1.0 within a shape range. # Examples: # - "10.5" - defines a grid with a constant spacing # - [["1", "1+10*t", "11"] [0.1, 0.6]] - defines different spacing in 3 ranges. @@ -1565,7 +1570,7 @@ class StdMeshersBuilder_Cartesian_3D(Mesh_Algorithm): pass # end of StdMeshersBuilder_Cartesian_3D class ## Defines a stub 1D algorithm, which enables "manual" creation of nodes and -# segments usable by 2D algoritms +# segments usable by 2D algorithms # # It is created by calling smeshBuilder.Mesh.UseExistingSegments(geom=0) # @@ -1593,7 +1598,7 @@ class StdMeshersBuilder_UseExisting_1D(Mesh_Algorithm): pass # end of StdMeshersBuilder_UseExisting_1D class ## Defines a stub 2D algorithm, which enables "manual" creation of nodes and -# faces usable by 3D algoritms +# faces usable by 3D algorithms # # It is created by calling smeshBuilder.Mesh.UseExistingFaces(geom=0) #